aboutsummaryrefslogtreecommitdiffstats
path: root/History.txt
blob: 71c8a815141f3fd4a7a17e925e7c41df01c18109 (plain) (blame)
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
== 4.0.1 / 2013-10-22

* Enhancements

  * Cache visitor dispatch on a per-visitor basis
  * Improve performance of #uniq across a large number of nodes

* Bug Fixes

  * Make visitors threadsafe by removing @last_column
  * Support `columns_for_distinct` with Oracle adapter

== 2.2.1 / 2011-09-15

* Enhancements

  * Added UpdateManager#key to access the key value
  * Added SelectManager#projections= to override any existing projections
  * Added SelectManager#source to get the source of the last select core in the AST

== 2.2.0 / 2011-08-09

* Bug Fixes

  * The database connection caches visitors for generating SQL.
  * FALSE and TRUE nodes can be constructed.
  * Fixed ORDER BY / LIMIT clauses for UPDATE statements in Oracle.

== 2.1.4 / 2011-07-25

* Bug Fixes

  * Fix depth-first traversal to understand ascending / descending nodes.
  * Parenthesis are suppressed with nested unions in MySQL. Thanks jhtwong!

== 2.1.3 / 2011-06-27

* Bug Fixes

  * Fixed broken gem build.

== 2.1.2 / 2011-06-27

* Bug Fixes

  * Visitors can define their own cache strategy so caches are not shared.
    Fixes #57
  * Informix support fixed.  Thanks Khronos.
  * Ordering nodes broken to subclasses.  Thanks Ernie Miller!
  * Reversal supported in ordering nodes.  Thanks Ernie Miller!

== 2.1.1 / 2011/05/14

* Bug fixes

  * Fixed thread safety bug in ToSql visitor.  Thanks Damon McCormick and
    Cameron Walters!

== 2.1.0 / 2011/04/30

* Enhancements

  * AST is now Enumerable
  * AND nodes are now n-ary nodes
  * SQL Literals may be used as Attribute names
  * Added Arel::Nodes::NamedFunction for representing generic SQL functions
  * Add Arel::SelectManager#limit=
  * Add Arel::SelectManager#offset
  * Add Arel::SelectManager#offset=
  * Added Arel::SelectManager#create_insert for building an insert manager.
  * SQL Literals are allowed for values in INSERT statements.
  * Math operations have been added to attributes, thanks to
    Vladimir Meremyanin.

* Bug fixes

  * MSSQL adds TOP to sub selects
  * Assigning nil to take() removes LIMIT from statement.
  * Assigning nil to offset() removes OFFSET from statement.
  * TableAlias leg ordering fixed

* Deprecations

  * Calls to `insert` are deprecated. Please use `compile_insert` then call
  `to_sql` on the resulting object and execute that SQL.

  * Calls to `update` are deprecated. Please use `compile_update` then call
  `to_sql` on the resulting object and execute that SQL.

  * Calls to `delete` are deprecated. Please use `compile_delete` then call
  `to_sql` on the resulting object and execute that SQL.

  * Arel::Table#joins is deprecated and will be removed in 3.0.0 with no
  replacement.

  * Arel::Table#columns is deprecated and will be removed in 3.0.0 with no
  replacement.

  * Arel::Table.table_cache is deprecated and will be removed in 3.0.0 with no
  replacement.

  * Arel::Nodes::And.new takes a single list instead of left and right.

  * Arel::Table#primary_key is deprecated and will be removed in 3.0.0 with no
  replacement.

  * Arel::SelectManager#where_clauses is deprecated and will be removed in
  3.0.0 with no replacement.

  * Arel::SelectManager#wheres is deprecated and will be removed in
  3.0.0 with no replacement.

== 2.0.9  / 2010/02/25

* Bug Fixes

  * Custom LOCK strings are allowed. Fixes LH # 6399
    https://rails.lighthouseapp.com/projects/8994/tickets/6399-allow-database-specific-locking-clauses-to-be-used

  * Strings passed to StringManager#on will be automatically tagged as SQL
    literals. Fixes Rails LH #6384
    https://rails.lighthouseapp.com/projects/8994/tickets/6384-activerecord-303-and-3-0-stable-generate-invalid-sql-for-has_many-through-association-with-conditions

== 2.0.8  / 2010/02/08

* Bug Fixes

  * Added set operation support
  * Fixed problems with *_any / *_all methods.

== 2.0.7

* Bug Fixes

  * Limit members are visited
  * Fixing MSSQL TOP support

== 2.0.6 12/01/2010

* Bug Fixes

  * Rails 3.0.x does not like that Node is Enumerable, so removing for now.

== 2.0.5 11/30/2010

* Enhancements

  * Arel::Visitors::DepthFirst can walk your AST depth first
  * Arel::Nodes::Node is enumerable, depth first

* Bug fixes

  * #lock will lock SELECT statements "FOR UPDATE" on mysql
  * Nodes::Node#not factory method added for creating Nodes::Not nodes
  * Added an As node

* Deprecations

  * Support for Subclasses of core classes will be removed in Arel version
    2.2.0

== 2.0.4

* Bug fixes

  * Speed improvements for Range queries.  Thanks Rolf Timmermans!

== 2.0.3

* Bug fixes

  * Fixing Oracle support
  * Added a visitor for "Class" objects

== 2.0.2

* Bug fixes

  * MySQL selects from DUAL on empty FROM
  * Visitor translates nil to NULL
  * Visitor translates Bignum properly

== 2.0.1

* Bug fixes

== 2.0.0 / 2010-08-01
* Enhancements

  * Recreate library using the Visitor pattern.
    http://en.wikipedia.org/wiki/Visitor_pattern

== 0.3.0 / 2010-03-10

* Enhancements

  * Introduced "SQL compilers" for query generation.
  * Added support for Oracle (Raimonds Simanovskis) and IBM/DB (Praveen Devarao).
  * Improvements to give better support to Active Record.

== 0.2.1 / 2010-02-05

* Enhancements

  * Bump dependency version of activesupport to 3.0.0.beta

== 0.2.0 / 2010-01-31

  * Ruby 1.9 compatibility
  * Many improvements to support the Arel integration into Active Record (see `git log v0.1.0..v0.2.0`)
  * Thanks to Emilio Tagua and Pratik Naik for many significant contributions!

== 0.1.0 / 2009-08-06

* 1 major enhancement

  * Birthday!