This repository has been archived by the owner on Mar 30, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 37
/
CHANGELOG
90 lines (75 loc) · 4.32 KB
/
CHANGELOG
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
Changes since 1.0.2 (2011-02-09):
* Fix eager loading with order values supplied
Changes since 1.0.1 (2011-01-18):
* Fix *_all behavior to not result in ORs when collapse_wheres is called
* Add support for NOT operator (-) on hashes, conditions, and compound
conditions. Unary NOTs the condition, binary does an AND NOT between
on the second condition.
Changes since 1.0.0 (2011-01-17):
* Update polymorphic join support to play nicely with MetaSearch
Changes since 0.9.10 (2011-01-06):
* Doc updates only, and a version change to 1.0.0.
Changes since 0.9.9 (2010-11-15):
* Multiple conditions on the same column with the same predicate will be "OR"ed
instead of dropping all but the last one. This tracks the same behavior in
Rails 3-0-stable.
* You can specify a polymorphic belongs_to join via something like:
Model.joins(:joinable.type(PolymorphicClass))
* You can specify ActiveRecord objects as values:
Developer.joins(:projects).where(:projects => Project.first) is the same as
Developer.joins(:projects).where(:projects => {:id => Project.first.id}), but
less hashy.
Changes since 0.9.6 (2010-09-30):
* ARel 2.x and Rails 3.0.2 compatibility
* Allow MetaWhere::And and MetaWhere::Or on the value side of a condition hash
to trigger treatment of key as an association.
ex: :comments => (:created_at.lt % 1.day.ago | :body.matches % '%hey%')
* Support for selecting join type: :association.outer / :association.inner results
in an outer or inner join.
* Having clauses are now fully MetaWhere-enabled.
* SQL functions are now supported. :concat.func(val1, val2) will result in an
SQL concat() call, with two parameters. If you've enabled Symbol operators, then
you can also just do :concat[val1, val2].
Changes since 0.9.5 (2010-09-27):
* Don't skip adding condition if an empty array is supplied
Changes since 0.9.4 (2010-09-23):
* Fix those fun problems with cache_classes.
Changes since 0.9.3 (2010-09-08):
* alias :& to :merge in singleton to work properly with Ruby 1.8.7.
* Fix merge to only use associations if not against the same base class. (STI)
Changes since 0.9.2 (2010-08-26):
* Updated gemspec to require Rails 3.0.0 final.
Changes since 0.9.1 (2010-08-25):
* Fix missing .any? on method chain in check for mw in association macros.
Changes since 0.9.0 (2010-08-24):
* Check for use of MetaWhere in association macros. This won't work as expected
so it's better to raise a helpful error than create a potentially confusing
behavior.
Changes since 0.5.2 (2010-07-09):
* Removed autojoin. Inner joins have side-effects. Newbies are the ones who aremost
likely to use autojoin, and they're also the ones least likely to understand why
certain rows stop being returned. Better to force a small learning curve. I've
decided against leaving it in with deprecation since Rails 3 isn't final yet.
Decided to get it out before it's "too late" to do so without impacting code running
on a stable version of Rails.
* Refactored build_arel to more closely mirror the refactoring that's been going on
to the method in Rails edge.
* Improved merge functonality. It shouldn't have ever required someone to do an
autojoin to begin with. Now it just works. If you're merging two relations, you
should expect to only get results that have a match on both sides.
* Attempt to gracefully degrade in the case where a MetaWhere::Column is expected
to be a normal symbol. Return the column name in #to_s.
* Fix order clauses when constructing a limited_ids_condition for postgresql.
* Fix problems with cache_classes == false on certain server configurations. Also
handle self-join with a merge of two identical classes and a second param.
* Drop ActiveSupport::Concern and only use alias_method_chain when needed.
Changes since 0.5.1 (2010-06-22):
* Added debug_sql method to Relations. Lets you see the actual SQL that
will be run against the database without having to resort to the
development.log. Differs from to_sql because that doesn't (and can't,
by necessity) handle eager loading.
Changes since 0.5.0 (2010-06-08):
* Track Emilio Tagua's performance enhancements in build_arel from edge.
Changes since 0.3.3 (2010-04-30):
* Lots. See http://metautonomo.us/2010/06/08/metasearch-and-metawhere-0-5-0-released/
for a summary.