aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord
Commit message (Collapse)AuthorAgeFilesLines
* Refactor determination of whether the field has changedSean Griffin2014-06-036-36/+39
| | | | | The types know more about what is going on than the dirty module. Let's ask them!
* pg, preserve point type when schema dumping.Yves Senn2014-06-036-11/+24
|
* pg test, examples for default values and schema dumping of point types.Yves Senn2014-06-032-0/+32
| | | | /cc @sgrif
* fix polymorphic? method and reuse iteileencodes2014-06-024-11/+11
| | | | | | Fix polymorphic to check for `options[:polymorphic]` instead of `options.key? :polymorphic` and then reuse the method `polymorphic?` method instead of constantly checking the same `options[:polymorphic]`.
* Merge pull request #15475 from sgrif/sg-initialize-attributesGuillermo Iguaran2014-06-023-11/+3
|\ | | | | Remove unused `initialize_attributes` method
| * Remove unused `initialize_attributes` methodSean Griffin2014-06-023-11/+3
| | | | | | | | | | This was previously a hook for a special case related to `serialize`, which has since been removed.
* | Add missing colon to internalSean Griffin2014-06-021-1/+1
|/
* just use `assert`Aaron Patterson2014-06-021-1/+1
|
* docs, fix typo [ci skip]Yves Senn2014-06-021-2/+2
|
* test pg, add basic test cases for point datatype.Yves Senn2014-06-021-0/+45
|
* pg, inline casting methods into `OID::Type` objects.Yves Senn2014-06-024-44/+25
| | | | | | | | This inlines casting for the most obvious types. The rest will follow eventually. I need to put some tests in place, to make sure that the inlining is not causing regressions. /cc @sgrif
* Feature requests should be made on the mailing list, not submitted toZachary Scott2014-06-011-1/+6
| | | | the issue tracker. See also #15455 [ci skip]
* New records should remain new after yaml serializationSean Griffin2014-06-014-2/+28
|
* Remove most code related to serialized propertiesSean Griffin2014-06-0112-103/+30
| | | | | | | | | | | Nearly completely implemented in terms of custom properties. `_before_type_cast` now stores the raw serialized string consistently, which removes the need to keep track of "state". The following is now consistently true: - `model.serialized == model.reload.serialized` - A model can be dumped and loaded infinitely without changing - A model can be saved and reloaded infinitely without changing
* Merge pull request #15432 from sgrif/sg-coder-type-castingYves Senn2014-06-014-23/+14
|\ | | | | Don't change values in `@raw_attributes` during serialization
| * Don't change values in `@raw_attributes` during serializationSean Griffin2014-06-014-23/+14
| | | | | | | | | | | | During `init_with`, the attributes given to the coder will be placed into `@raw_attributes`. As such, we should read from `@raw_attributes` when encoding, rather than `@attributes`, which has been type cast.
* | Merge branch 'master' of github.com:rails/docrailsVijay Dev2014-06-012-5/+5
|\ \ | |/ |/|
| * [ci skip] add created_at and updated_at to exampleschneems2014-05-291-2/+2
| |
| * :scissors:Zachary Scott2014-05-121-3/+3
| |
* | Merge pull request #15434 from sgrif/sg-clear-cachesYves Senn2014-05-312-3/+27
|\ \ | | | | | | Clear all caches calculated based on `@columns` when `@columns` changes
| * | Clear all caches calculated based on `@columns` when `@columns` changesSean Griffin2014-05-312-3/+27
| | |
* | | Add missing test case for writing unknown attributesSean Griffin2014-05-301-0/+2
|/ /
* | Update some bad test cases for serialized columnsSean Griffin2014-05-301-53/+17
| | | | | | | | | | | | | | | | | | | | | | | | The first case was not testing what the issue mentioned actually was (A subclass of a class with serialized attributes does not serialize when they come from the database). The second case was a bad coder. It would fail if the model was `dup`ed, or if the the model was loaded from the database and then saved again. The third case wasn't testing anything that wasn't covered by the second (and was also a bad coder for the same reasons as the second).
* | Merge pull request #15427 from sgrif/sg-rename-attribute-ivarsRafael Mendonça França2014-05-3013-44/+44
|\ \ | | | | | | Rename attribute related instance variables to better express intent
| * | Rename attribute related instance variables to better express intentSean Griffin2014-05-3013-44/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | `@attributes` was actually used for `_before_type_cast` and friends, while `@attributes_cache` is the type cast version (and caching is the wrong word there, but I'm working on removing the conditionals around that). I opted for `@raw_attributes`, because `_before_type_cast` is also semantically misleading. The values in said hash are in the state given by the form builder or database, so raw seemed to be a good word.
* | | Allow specifying a default value in overloaded propertiesSean Griffin2014-05-303-6/+19
|/ /
* | refactor, introduce `Type#type_cast_for_schema` to cast for schema.rbYves Senn2014-05-308-26/+33
| | | | | | | | | | | | | | This removes the case statement in `SchemaDumper` and gives every `Type` the possibility to control the SchemaDumper default value output. /cc @sgrif
* | pg, support default values for enum types. Closes #7814.Yves Senn2014-05-304-2/+24
| | | | | | | | | | This is an intermediate solution. It is related to the refactoring @sgrif is making and will change in the future.
* | pg, `default_sequence_name` respects schema. Closes #7516.Yves Senn2014-05-303-10/+12
| |
* | Merge pull request #11896 from nkondratyev/fix_pg_columns_for_distinctYves Senn2014-05-303-1/+17
|\ \ | | | | | | | | | | | | | | | | | | Fixed #columns_for_distinct of postgresql adapter Conflicts: activerecord/CHANGELOG.md
| * | Fixed `columns_for_distinct` of postgresql adapterNikolay Kondratyev2013-08-153-1/+17
| | |
* | | pg, `reset_pk_sequence!` respects schemas. Closes #14719.Yves Senn2014-05-305-11/+34
| | |
* | | pg, `PostgreSQL::Name` to hold schema qualified names.Yves Senn2014-05-304-19/+96
| | |
* | | Don't reference comments that do not existSean Griffin2014-05-291-2/+0
| | |
* | | Move `type_cast_for_write` behavior over to the serialized type objectSean Griffin2014-05-296-86/+47
| | |
* | | Refactor serialized types to be partially defined as custom propertiesSean Griffin2014-05-2910-50/+52
| | | | | | | | | | | | | | | | | | | | | Many of the methods defined in `AttributeMethods::Serialization` can be refactored onto this type as well, but this is a reasonable small step. Removes the `Type` class, and the need for `decorate_columns` to handle serialized types.
* | | Result sets never override a model's column typeSean Griffin2014-05-293-1/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MySQL and PostgreSQL provide a column type override in order to properly type cast computed columns included in a result set. This should never override the known types of full fledged columns. In addition to messing up computed properties, this would have led to inconsistent behavior between a record created with `new`, and a record created with `last` on the mysql adapter in the following cases: - `tinyint(1)` with `emulate_booleans` set to `false` - `text`, `string`, `binary`, and `decimal` columns
* | | Merge pull request #15397 from sgrif/sg-column-classYves Senn2014-05-295-6/+15
|\ \ \ | | | | | | | | Ensure we always use instances of the adapter specific column class
| * | | Ensure we always use instances of the adapter specific column classSean Griffin2014-05-285-6/+15
| | | | | | | | | | | | | | | | | | | | | | | | - Create a consistent API across adapters for building new columns - Use it for custom properties so we don't get `UndefinedMethodError`s in stuff I'm implementing elsewhere.
* | | | Use github url for homepage of log4r [ci skip]Zachary Scott2014-05-281-1/+1
|/ / /
* | | Merge pull request #15392 from arthurnn/move_open_transactionsRafael Mendonça França2014-05-282-4/+4
|\ \ \ | | | | | | | | Keep closer to other methods that touch @transaction
| * | | Keep closer to other methods that touch @transactionArthur Neves2014-05-282-4/+4
| | | |
* | | | Maintain column order when overriding existing columnsSean Griffin2014-05-282-3/+13
|/ / / | | | | | | | | | | | | | | | Working towards re-implementing serialized attributes to use the properties API exposed the need for this, as serializing a column shouldn't change the order of the columns.
* | | Merge pull request #15389 from sgrif/sg-property-inheritanceRafael Mendonça França2014-05-282-5/+26
|\ \ \ | | | | | | | | Ensure custom properties work correctly with inheritance
| * | | Ensure custom properties work correctly with inheritanceSean Griffin2014-05-282-5/+26
| | | |
* | | | Merge pull request #15370 from sgrif/sg-type-namespaceRafael Mendonça França2014-05-2841-643/+592
|\ \ \ \ | | | | | | | | | | Move types to the top level `ActiveRecord` namespace
| * | | | Move types to the top level `ActiveRecord` namespaceSean Griffin2014-05-2741-643/+592
| | | | | | | | | | | | | | | | | | | | | | | | | `ActiveRecord::ConnectionAdapters::Type::Value` => `ActiveRecord::Type::Value`
* | | | | Formatting of content from b1db615 [ci skip]Zachary Scott2014-05-281-3/+7
| | | | |
* | | | | Merge pull request #15380 from Gaurav2728/gaurav-transaction_isolation_errorZachary Scott2014-05-281-0/+3
|\ \ \ \ \ | |_|/ / / |/| | | | Initial doc for TransactionIsolationError [ci skip]
| * | | | Initial doc for TransactionIsolationError [ci skip]Gaurav Sharma2014-05-281-0/+3
| | | | |