diff options
author | Yves Senn <yves.senn@gmail.com> | 2015-04-15 09:10:00 +0200 |
---|---|---|
committer | Yves Senn <yves.senn@gmail.com> | 2015-04-15 09:10:00 +0200 |
commit | 5f00ed10dd820b6802168933c2497d17c43c88f5 (patch) | |
tree | 6c667f11b0a23a5a86531c0be38e72d1b7d352ac | |
parent | 163de75707dc41924003fb938eb9db61efda9cf1 (diff) | |
download | rails-5f00ed10dd820b6802168933c2497d17c43c88f5.tar.gz rails-5f00ed10dd820b6802168933c2497d17c43c88f5.tar.bz2 rails-5f00ed10dd820b6802168933c2497d17c43c88f5.zip |
Revert "Merge pull request #19755 from yuki24/activerecord/support-for-set"
This reverts commit 524d40591eaa2f4d007409bfad386f6b107492eb, reversing
changes made to 34d3a6095100245283861ef480a54d0643bbee4c.
Reasoning behind the revert are in the PR discussion:
https://github.com/rails/rails/pull/19755
- This means that types can no longer cast to/from `Set`, and reasonably
work with `where` (we already have this problem for `array`/`json`
types on pg)
- This adds precedent for every other `Enumerable`, and we can't target
`Enumerable` directly.
- Calling `to_a` on a `Set` is reasonable.
-rw-r--r-- | activerecord/CHANGELOG.md | 4 | ||||
-rw-r--r-- | activerecord/lib/active_record/relation/predicate_builder.rb | 1 | ||||
-rw-r--r-- | activerecord/test/cases/relations_test.rb | 10 |
3 files changed, 0 insertions, 15 deletions
diff --git a/activerecord/CHANGELOG.md b/activerecord/CHANGELOG.md index 4d6be98d50..904ac5c26a 100644 --- a/activerecord/CHANGELOG.md +++ b/activerecord/CHANGELOG.md @@ -1,7 +1,3 @@ -* Add support for `Set` to `Relation#where`. - - *Yuki Nishijima* - * Fixed a bug where uniqueness validations would error on out of range values, even if an validation should have prevented it from hitting the database. diff --git a/activerecord/lib/active_record/relation/predicate_builder.rb b/activerecord/lib/active_record/relation/predicate_builder.rb index 15b850c7f2..43e9afe853 100644 --- a/activerecord/lib/active_record/relation/predicate_builder.rb +++ b/activerecord/lib/active_record/relation/predicate_builder.rb @@ -20,7 +20,6 @@ module ActiveRecord register_handler(Range, RangeHandler.new(self)) register_handler(Relation, RelationHandler.new) register_handler(Array, ArrayHandler.new(self)) - register_handler(Set, ArrayHandler.new(self)) register_handler(AssociationQueryValue, AssociationQueryHandler.new(self)) end diff --git a/activerecord/test/cases/relations_test.rb b/activerecord/test/cases/relations_test.rb index 7886d9e504..0cf44388fa 100644 --- a/activerecord/test/cases/relations_test.rb +++ b/activerecord/test/cases/relations_test.rb @@ -848,16 +848,6 @@ class RelationTest < ActiveRecord::TestCase } end - def test_find_all_using_where_with_a_set - david = authors(:david) - mary = authors(:mary) - set = Set.new([david.id, mary.id]) - - assert_queries(1) { - assert_equal [david, mary], Author.where(id: set).to_a - } - end - def test_exists davids = Author.where(:name => 'David') assert davids.exists? |