aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib
Commit message (Collapse)AuthorAgeFilesLines
* Use a type object for type casting behavior on SQLite3Sean Griffin2014-07-011-13/+37
| | | | | Note: I'm not sure we actually need to be logging when this happens. This code would be a fair bit cleaner if we didn't need to log it.
* Don't add a second method for attribute existenceSean Griffin2014-06-301-6/+1
| | | | | We already had one in the public API that people can use more easily for the transition
* Move STI docs off of the main Base document, leaving a noteSean Griffin2014-06-302-28/+34
|
* Update documentation on STI change handlingjamesprior2014-06-301-0/+9
| | | Documenting a potential source of confusion about how STI classes handle changes.
* Merge pull request #15981 from sgrif/sg-simplify-defaultsRafael Mendonça França2014-06-293-21/+9
|\ | | | | Simplify creation of default attributes on AR instance
| * Simplify creation of default attributes on AR instanceSean Griffin2014-06-294-21/+10
| | | | | | | | `AttributeSet#dup` has all the behavior we need.
* | Merge pull request #15977 from sgrif/sg-remove-array-hackGodfrey Chan2014-06-291-24/+0
|\ \ | | | | | | Remove array workaround in PG quoting
| * | Remove array workaround in PG quotingSean Griffin2014-06-291-24/+0
| | | | | | | | | | | | | | | We no longer need to do fancy legwork to make sure arrays use a type object, now that schema methods use a real type object.
* | | Remove unused `array_member` from PG quoting for HStore columnsSean Griffin2014-06-292-12/+9
|/ / | | | | | | | | Hstore no longer needs additional quoting to be used in an array, the array type handles it sufficiently.
* | Merge pull request #15983 from sgrif/sg-inline-pointGodfrey Chan2014-06-293-19/+9
|\ \ | | | | | | Use the type object when sending point columns to the DB
| * | Use the type object when sending point columns to the DBSean Griffin2014-06-293-19/+9
| | |
* | | Merge pull request #15976 from sgrif/sg-attribute-existsGodfrey Chan2014-06-291-2/+7
|\ \ \ | |/ / |/| | Don't encourage usage of `columns_hash`
| * | Don't encourage usage of `columns_hash`Sean Griffin2014-06-291-2/+7
| |/ | | | | | | | | | | | | | | | | As discussed in https://github.com/plataformatec/simple_form/pull/1094, we should not encourage usage of `columns_hash`, and instead provide an alternate method to determine whether or not an attribute exists. The language `attribute` was chosen over `column` since these are in the `AttributeMethods` module.
* | Merge pull request #15982 from sgrif/sg-attr-set-map-valuesGodfrey Chan2014-06-292-7/+4
|\ \ | | | | | | Use `Hash#transform_values` to clean up `AttributeSet`
| * | Use `Hash#transform_values` to clean up `AttributeSet`Sean Griffin2014-06-292-7/+4
| |/
* / Use the type object for sending JSON to the databaseSean Griffin2014-06-293-22/+10
|/
* Always pass a column with a type object to quoteSean Griffin2014-06-286-15/+23
| | | | | | | | The only case where we got a column that was not `nil`, but did not respond to `cast_type` was when type casting the default value during schema creation. We can look up the cast type, and add that object to the column definition. Will allow us to consistently rely on the type objects for type casting in all directions.
* rename sequence only if it existsAbdelkader Boudih2014-06-271-3/+3
|
* Merge pull request #12450 from iantropov/masterRafael Mendonça França2014-06-273-5/+16
|\ | | | | | | | | | | | | | | | | Fix bug, when ':dependent => :destroy' violates foreign key constraints Conflicts: activerecord/CHANGELOG.md activerecord/lib/active_record/associations/builder/association.rb activerecord/lib/active_record/associations/builder/has_one.rb
| * Fix bug, when ':dependent => :destroy' option violates foreign key ↵Ivan Antropov2013-10-263-9/+18
| | | | | | | | constraints, issue #12380
* | Merge pull request #15788 from sgrif/sg-mutable-stringsRafael Mendonça França2014-06-271-1/+16
|\ \ | | | | | | | | | Detect in-place modifications on Strings
| * | Detect in-place modifications on StringsSean Griffin2014-06-171-1/+16
| | |
* | | Merge pull request #8639 from bogdan/valid-with-bangRafael Mendonça França2014-06-271-1/+17
|\ \ \ | | | | | | | | | | | | Add AR::Base#valid! method
| * | | Add AR::Base#validate! methodBogdan Gusiev2014-06-231-1/+17
| | | | | | | | | | | | | | | | | | | | Acts same as valid? but raises AR::RecordInvalid exception if validation fails
* | | | Merge pull request #15940 from DNNX/databases-rake-refactoringRafael Mendonça França2014-06-273-31/+37
|\ \ \ \ | | | | | | | | | | databases.rake refactoring
| * | | | Use AR::SchemaMigration.table_exists? call instead of longish AR::Base...etc,etcViktar Basharymau2014-06-271-1/+1
| | | | |
| * | | | Extract AR::SchemaMigration.normalized_versions methodViktar Basharymau2014-06-272-2/+5
| | | | |
| * | | | db:migrate:status refactoring: Rewrite hand-crafted SQL query with ↵Viktar Basharymau2014-06-271-1/+1
| | | | | | | | | | | | | | | | | | | | ActiveRecord#pluck
| * | | | Use Array#flat_map and Array#grep in db:migrate:status taskViktar Basharymau2014-06-271-10/+10
| | | | | | | | | | | | | | | | | | | | It allows the code to be more declarative and elegant.
| * | | | Add explaining variables to db:migrate:statusViktar Basharymau2014-06-271-2/+2
| | | | |
| * | | | Replace String index juggling with Pathname goodness in db:fixtures:loadViktar Basharymau2014-06-271-1/+1
| | | | |
| * | | | db:fixtures:load refactoring: remove unnecessary loopViktar Basharymau2014-06-271-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | `ActiveRecord::FixtureSet.create_fixtures` can accept an array of fixture_files.
| * | | | Extract `fixture_files` variable in fixtures:load rake taskViktar Basharymau2014-06-271-1/+7
| | | | |
| * | | | Replace a bit of cryptic code in fixtures:load rake task with plain stupid RubyViktar Basharymau2014-06-271-1/+5
| | | | |
| * | | | Get rid of duplication in db:fixtures:{identify,load}Viktar Basharymau2014-06-272-12/+7
| | | | |
| * | | | db:fixtures:{identify,load} tasks respect AR::Tasks::DatabaseTasks.rootViktar Basharymau2014-06-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this commit, if `ENV['FIXTURES_PATH']` was set, then `Rails.root` was used, otherwise the app used `ActiveRecord::Tasks::DatabaseTasks.root`. Now it is consistent.
| * | | | Simplify complex code in databases.rakeViktar Basharymau2014-06-271-2/+2
| | | | |
* | | | | Stop using instance exec for type decoratorsSean Griffin & Sean Doyle2014-06-273-17/+38
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | We are moving this behavior out to an object that we would like to keep separated from `ActiveRecord::Base`, which means not passing the class object to it. As such, we need to stop using `instance_exec`, and instead close over the subclass on global type decorators that are applied in `Base`.
* | | | Change method visibilityRafael Mendonça França2014-06-261-2/+2
| | | |
* | | | Add nodoc to internal class [ci skip]Rafael Mendonça França2014-06-261-1/+1
| | | |
* | | | fk: add docsYves Senn2014-06-261-0/+58
| | | |
* | | | fk: review corrections: indent, visibility, syntax, wording.Yves Senn2014-06-265-52/+53
| | | |
* | | | fk: use random digest namesYves Senn2014-06-264-13/+36
| | | | | | | | | | | | | | | | | | | | | | | | The name of the foreign key is not relevant from a users perspective. Using random names resolves the urge to rename the foreign key when the respective table or column is renamed.
* | | | fk: raise for invalid :on_update / :on_delete valuesYves Senn2014-06-261-3/+8
| | | |
* | | | fk: `add/remove_foreign_key` are noop for adapters that don't support fkYves Senn2014-06-261-0/+4
| | | |
* | | | fk: dump foreign keys at the bottom to make sure tables exist.Yves Senn2014-06-261-6/+9
| | | |
* | | | fk: raise when identifiers are longer than `allowed_index_name_length`.Yves Senn2014-06-261-1/+5
| | | |
* | | | fk: support for on_updateYves Senn2014-06-266-16/+33
| | | |
* | | | fk: rename `dependent` to `on_delete`Yves Senn2014-06-266-14/+13
| | | |
* | | | fk: infere column name from table names.Yves Senn2014-06-262-5/+17
| | | | | | | | | | | | | | | | This allows to create and remove foreign keys without specifying a column.