Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Note that `_will_change!` is no longer needed for AR instances | Sean Griffin | 2014-06-27 | 1 | -3/+5 |
| | | | | | | | Leave the note for `ActiveModel`, since it can't yet detect mutations (hopefully we can change this in time for 4.2). However, we now detect mutations on all supported types in `ActiveRecord`, so we can note that `_will_change!` is no longer needed there. | ||||
* | Talk about config.assts.version move too | Rafael Mendonça França | 2014-06-27 | 1 | -1/+1 |
| | | | | Closes #15942 | ||||
* | Merge pull request #12450 from iantropov/master | Rafael Mendonça França | 2014-06-27 | 5 | -5/+59 |
|\ | | | | | | | | | | | | | | | | | 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 Antropov | 2013-10-26 | 5 | -9/+61 |
| | | | | | | | | constraints, issue #12380 | ||||
* | | Merge pull request #15788 from sgrif/sg-mutable-strings | Rafael Mendonça França | 2014-06-27 | 5 | -13/+77 |
|\ \ | | | | | | | | | | Detect in-place modifications on Strings | ||||
| * | | Detect in-place modifications on Strings | Sean Griffin | 2014-06-17 | 4 | -13/+55 |
| | | | |||||
* | | | Merge pull request #8639 from bogdan/valid-with-bang | Rafael Mendonça França | 2014-06-27 | 3 | -1/+36 |
|\ \ \ | | | | | | | | | | | | | Add AR::Base#valid! method | ||||
| * | | | Add AR::Base#validate! method | Bogdan Gusiev | 2014-06-23 | 2 | -1/+31 |
| | | | | | | | | | | | | | | | | | | | | Acts same as valid? but raises AR::RecordInvalid exception if validation fails | ||||
* | | | | Merge pull request #15940 from DNNX/databases-rake-refactoring | Rafael Mendonça França | 2014-06-27 | 4 | -31/+52 |
|\ \ \ \ | | | | | | | | | | | databases.rake refactoring | ||||
| * | | | | Use AR::SchemaMigration.table_exists? call instead of longish AR::Base...etc,etc | Viktar Basharymau | 2014-06-27 | 1 | -1/+1 |
| | | | | | |||||
| * | | | | Extract AR::SchemaMigration.normalized_versions method | Viktar Basharymau | 2014-06-27 | 2 | -2/+5 |
| | | | | | |||||
| * | | | | Add a test for db:migrate:status to check missing file scenario | Viktar Basharymau | 2014-06-27 | 1 | -0/+15 |
| | | | | | |||||
| * | | | | db:migrate:status refactoring: Rewrite hand-crafted SQL query with ↵ | Viktar Basharymau | 2014-06-27 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | | | | | ActiveRecord#pluck | ||||
| * | | | | Use Array#flat_map and Array#grep in db:migrate:status task | Viktar Basharymau | 2014-06-27 | 1 | -10/+10 |
| | | | | | | | | | | | | | | | | | | | | It allows the code to be more declarative and elegant. | ||||
| * | | | | Add explaining variables to db:migrate:status | Viktar Basharymau | 2014-06-27 | 1 | -2/+2 |
| | | | | | |||||
| * | | | | Replace String index juggling with Pathname goodness in db:fixtures:load | Viktar Basharymau | 2014-06-27 | 1 | -1/+1 |
| | | | | | |||||
| * | | | | db:fixtures:load refactoring: remove unnecessary loop | Viktar Basharymau | 2014-06-27 | 1 | -3/+1 |
| | | | | | | | | | | | | | | | | | | | | | | | | | `ActiveRecord::FixtureSet.create_fixtures` can accept an array of fixture_files. | ||||
| * | | | | Extract `fixture_files` variable in fixtures:load rake task | Viktar Basharymau | 2014-06-27 | 1 | -1/+7 |
| | | | | | |||||
| * | | | | Replace a bit of cryptic code in fixtures:load rake task with plain stupid Ruby | Viktar Basharymau | 2014-06-27 | 1 | -1/+5 |
| | | | | | |||||
| * | | | | Get rid of duplication in db:fixtures:{identify,load} | Viktar Basharymau | 2014-06-27 | 2 | -12/+7 |
| | | | | | |||||
| * | | | | db:fixtures:{identify,load} tasks respect AR::Tasks::DatabaseTasks.root | Viktar Basharymau | 2014-06-27 | 1 | -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.rake | Viktar Basharymau | 2014-06-27 | 1 | -2/+2 |
| | | | | | |||||
* | | | | | Merge pull request #15938 from sgrif/sg-stop-instance-execing | Rafael Mendonça França | 2014-06-27 | 3 | -17/+38 |
|\ \ \ \ \ | |/ / / / |/| | | | | Stop using instance exec for type decorators | ||||
| * | | | | Stop using instance exec for type decorators | Sean Griffin & Sean Doyle | 2014-06-27 | 3 | -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`. | ||||
* | | | | Follow-up to #15215 [ci skip] | Robin Dupret | 2014-06-27 | 3 | -10/+12 |
| | | | | |||||
* | | | | credit Matthew Higgins for the integration of foreign keys. [ci skip] | Yves Senn | 2014-06-27 | 1 | -0/+3 |
| | | | | |||||
* | | | | Tiny follow-up to 1a69112 | Robin Dupret | 2014-06-27 | 1 | -3/+7 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Wrap list items to 80 chars and avoid relying on NOTE inside an item since they are meant to be parsed in paragraphs, not lists. [ci skip] | ||||
* | | | | Merge pull request #14247 from robin850/inflections-with-uncountables | Rafael Mendonça França | 2014-06-26 | 3 | -5/+18 |
|\ \ \ \ | | | | | | | | | | | Make the apply_inflections method case-sensitive | ||||
| * | | | | Make the apply_inflections method case-sensitive | Robin Dupret | 2014-06-26 | 3 | -5/+18 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since d3071db1, the apply_inflections method check if the downcased version of a string is contained inside the "whitelist" of uncountable words. However, if the word is composed of capital letters, it won't be matched in the list while it should. We can't simply revert to the previous behavior as there is a performance concern (benchmarked over /usr/share/dict/words): Before d3071db1 135.610000 0.290000 135.900000 (137.807081) Since d3071db1 22.170000 0.020000 22.190000 ( 22.530005) With the patch 22.060000 0.020000 22.080000 ( 22.125771) Benchmarked with http://git.io/aFnWig This way, the solution is to put the down-case version of words inside the @uncountables array. | ||||
* | | | | | Change method visibility | Rafael Mendonça França | 2014-06-26 | 1 | -2/+2 |
| | | | | | |||||
* | | | | | Add nodoc to internal class [ci skip] | Rafael Mendonça França | 2014-06-26 | 1 | -1/+1 |
| | | | | | |||||
* | | | | | Merge pull request #15606 from senny/ar/foreign_key_support | Rafael Mendonça França | 2014-06-26 | 20 | -70/+739 |
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | Basic support for adding and removing foreign keys | ||||
| * | | | | | fk: add docs | Yves Senn | 2014-06-26 | 4 | -58/+166 |
| | | | | | | |||||
| * | | | | | fk: review corrections: indent, visibility, syntax, wording. | Yves Senn | 2014-06-26 | 5 | -52/+53 |
| | | | | | | |||||
| * | | | | | fk: use random digest names | Yves Senn | 2014-06-26 | 8 | -33/+59 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 values | Yves Senn | 2014-06-26 | 2 | -3/+18 |
| | | | | | | |||||
| * | | | | | fk: `add/remove_foreign_key` are noop for adapters that don't support fk | Yves Senn | 2014-06-26 | 2 | -0/+28 |
| | | | | | | |||||
| * | | | | | fk: dump foreign keys at the bottom to make sure tables exist. | Yves Senn | 2014-06-26 | 2 | -6/+16 |
| | | | | | | |||||
| * | | | | | fk: raise when identifiers are longer than `allowed_index_name_length`. | Yves Senn | 2014-06-26 | 2 | -1/+14 |
| | | | | | | |||||
| * | | | | | fk: support for on_update | Yves Senn | 2014-06-26 | 7 | -19/+46 |
| | | | | | | |||||
| * | | | | | fk: rename `dependent` to `on_delete` | Yves Senn | 2014-06-26 | 7 | -27/+26 |
| | | | | | | |||||
| * | | | | | fk: infere column name from table names. | Yves Senn | 2014-06-26 | 4 | -7/+46 |
| | | | | | | | | | | | | | | | | | | | | | | | | This allows to create and remove foreign keys without specifying a column. | ||||
| * | | | | | fk: make `add_foreign_key` reversible. | Yves Senn | 2014-06-26 | 3 | -1/+55 |
| | | | | | | |||||
| * | | | | | fk: support dependent option (:delete, :nullify and :restrict). | Yves Senn | 2014-06-26 | 7 | -4/+83 |
| | | | | | | |||||
| * | | | | | fk: dump foreign keys to schema.rb | Yves Senn | 2014-06-26 | 4 | -2/+43 |
| | | | | | | | | | | | | | | | | | | | | | | | | respect `table_name_prefix` and `table_name_suffix`. | ||||
| * | | | | | fk: `:primary_key` option for non-standard pk's. | Yves Senn | 2014-06-26 | 3 | -3/+25 |
| | | | | | | |||||
| * | | | | | fk: generalize using `AlterTable` and `SchemaCreation`. | Yves Senn | 2014-06-26 | 6 | -49/+64 |
| | | | | | | |||||
| * | | | | | fk: `foreign_keys`, `add_foreign_key` and `remove_foreign_key` for MySQL | Yves Senn | 2014-06-26 | 6 | -21/+70 |
| | | | | | | |||||
| * | | | | | fk: add `foreign_keys` for PostgreSQL adapter. | Yves Senn | 2014-06-26 | 3 | -7/+65 |
| | | | | | | |||||
| * | | | | | fk: `add_foreign_key` and `remove_foreign_key` for PostgreSQL adapter. | Yves Senn | 2014-06-26 | 4 | -0/+85 |
|/ / / / / |