1 Revision history for SQL::Abstract
3 revision 1.66 2010-04-27 02:44 (UTC)
4 ----------------------------
5 - Optimized the quoting mechanism, winning nearly 10%
6 speedup on repeatable sql generation
8 revision 1.65 2010-04-11 19:59 (UTC)
9 ----------------------------
10 - Rerelease last version to not include .svn files
11 and grab MANIFEST.SKIP from DBIx::Class so it
14 revision 1.64 2010-04-11 16:58 (UTC)
15 ----------------------------
16 - Fix multiple generic op handling regressions by
17 reverting the auto-equality assumption (turned out
18 to be a very very bad idea)
20 revision 1.63 2010-03-24 09:56 (UTC)
21 ----------------------------
22 - Add ILIKE to the core list of comparision ops
24 revision 1.62 2010-03-15 11:06 (UTC)
25 ----------------------------
26 - Fixed open outer parens for a multi-line literal
27 - Allow recursively-nested column-functions in WHERE
28 - Bumped minimum perl to 5.6.2 and changed tests to
29 rely on core dependencies
31 revision 1.61 2010-02-05 16:28 (UTC)
32 ----------------------------
33 - Allow INSERT to take additional attributes
34 - Support for INSERT ... RETURNING
35 - Another iteration of SQL::Abstract::Test fixes and improvements
37 revision 1.60 2009-09-22 11:03 (UTC)
38 ----------------------------
39 - fix a well masked error in the sql-test tokenizer
41 revision 1.59 2009-09-22 08:39 (UTC)
42 ----------------------------
43 - fixed a couple of untrapped undefined warnings
44 - allow -in/-between to accept literal sql in all logical
45 variants - see POD for details
46 - unroll multiple parenthesis around IN arguments to accomodate
49 revision 1.58 2009-09-04 15:20 (UTC)
50 ----------------------------
51 - expanded the scope of -bool and -not_bool operators
52 - added proper testing support
54 revision 1.57 2009-09-03 20:18 (UTC)
55 ----------------------------
56 - added -bool and -not_bool operators
58 revision 1.56 2009-05-30 16:31 (UTC)
59 ----------------------------
60 - support for \[$sql, @bind] in order_by clauses e.g.:
61 { -desc => \['colA LIKE ?', 'somestring'] }
63 revision 1.55 2009-05-17 22:54 (UTC)
64 ----------------------------
65 - make sure that sql generation does not mutate the supplied
66 where condition structure
68 revision 1.54 2009-05-07 17:23 (UTC)
69 ----------------------------
70 - allow special_operators to take both code refs and method names
71 (makes it possible to properly subclass the builtin ones)
73 revision 1.53 2009-04-30 14:58 (UTC)
74 ----------------------------
75 - make sure hash keys are sorted in all search sub-conditions
76 - switch installer from EU::MM to M::I
78 revision 1.52 2009-04-28 23:14 (UTC)
79 ----------------------------
80 - allow -between to handle [\"", \""] and \["", @bind]
81 - allow order_by to handle -asc|desc => [qw/colA colB/] (artifact from DBIx::Class)
82 - more tests and clearing up of some corner cases
83 - t/10test.t does not run by default (developer only, too cpu intensive)
85 ----------------------------
86 revision 1.51 2009-03-28 10:00 (UTC)
87 - fixed behavior of [-and => ... ] depending on the current
88 condition scope. This introduces backwards comp with 1.24
90 ----------------------------
91 revision 1.50 2009-03-10 12:30 (UTC)
92 - fixed the problem with values() not behaving the same as the rest of the code (RT#43483)
93 - fixed interjecting arrayrefref into a where clause
94 - added value-only insert test with a literal SQL snippet
95 - cleanup and enhancement of t/03values.t
96 - better handling of borked SQL in tests
97 - deal properly with parentheses in is_same_sql_bind()
98 - fixed test subs (is_same_*) in SQL::Abstract::Test to return the correct test value
99 - do not version MANIFEST
101 Version 1.50 was a major internal refactoring of SQL::Abstract.
102 Great care has been taken to preserve the published behavior
103 documented in previous versions in the 1.* family; however,
104 some features that were previously undocumented, or behaved.
105 differently from the documentation, had to be changed in order
106 to clarify the semantics. Hence, client code that was relying
107 on some dark areas of SQL::Abstract v1.* might behave differently
110 ----------------------------
111 revision 1.49_04 2009-03-03
112 - add support for a [\%column_meta => value] bind value format
114 ----------------------------
115 revision 1.49_03 2009-02-17
116 - clarify syntax of \['...', @bind] when used with a bindtype
119 ----------------------------
120 revision 1.49_02 2009-02-16
121 - added an AST-aware SQL::Abstract::Test library for sql syntax tests
122 - vastly expanded test coverage
123 - support for the { operator => \'...'|\['...', @bind] } syntax
124 allowing to embed arbitrary operators on the LHS
125 - fixed multiple regressions wrt DBIx::Class
127 ----------------------------
128 revision 1.49_01 2009-02-11
129 - support for literal SQL through the [$sql, bind] syntax.
130 - added -nest1, -nest2 or -nest_1, -nest_2, ...
131 - optional support for array datatypes
132 - defensive programming : check arguments to functions/methods
133 - fixed bug with global logic of -and/-or (no side-effects any more)
134 - changed logic for distributing an op over arrayrefs
135 - fixed semantics of _bindtype on array args
136 - dropped the _anoncopy of the %where tree. No longer necessary.
137 - dropped the _modlogic function
138 - Make col => [] and col => {$op => [] } DTRT or die instead of generating
139 broken SQL. Added tests for this.
140 - Added { -desc => 'column' } order by support
141 - Tiny "$_"-related fix for { -desc => 'columns'} order by support
144 ----------------------------
146 date: 2005/08/18 18:41:58; author: nwiger; state: Exp; lines: +104 -50
147 - added patch from Dan Kubb enabling quote_char and name_sep options
148 - added patch from Andy Grundman to enhance _anoncopy for deep refs
149 ----------------------------
151 date: 2005/04/29 18:20:30; author: nwiger; state: Exp; lines: +34 -20
152 added _anoncopy to prevent destroying original; updated docs
153 ----------------------------
155 date: 2005/03/07 20:14:12; author: nwiger; state: Exp; lines: +201 -65
156 added support for -and, -or, and -nest; see docs for details
157 ----------------------------
159 date: 2004/08/25 20:11:27; author: nwiger; state: Exp; lines: +58 -46
160 added patch from Eric Kolve to iterate over all hashref elements
161 ----------------------------
163 date: 2004/06/10 17:20:01; author: nwiger; state: Exp; lines: +178 -12
164 added bindtype param to allow this to work with Orasuck 9+
165 ----------------------------
167 date: 2003/11/05 23:40:40; author: nwiger; state: Exp; lines: +18 -6
168 several bugfixes, including _convert being applied wrong and
169 the edge case field => { '!=', [qw/this that/] } not working
170 ----------------------------
172 date: 2003/11/04 21:20:33; author: nwiger; state: Exp; lines: +115 -34
173 added patch from Philip Collins, and also added 'convert' option
174 ----------------------------
176 date: 2003/05/21 17:22:29; author: nwiger; state: Exp; lines: +230 -74
177 added "IN" and "BETWEEN" operator support, as well as "NOT"
178 modified where() to support ORDER BY, and fixed some bugs too
179 added PERFORMANCE and FORMBUILDER doc sections
180 fixed several bugs in _recurse_where(), it now works as expected
181 added test suite, many thanks to Chas Owens
182 modified all hash access to return keys sorted, to allow cached queries
183 ----------------------------
185 date: 2003/05/08 20:10:56; author: nwiger; state: Exp; lines: +181 -96
186 1.11 interim checking; major bugfixes and order_by, 1.12 will go to CPAN
187 ----------------------------
189 date: 2003/05/02 00:07:30; author: nwiger; state: Exp; lines: +52 -12
190 many minor enhancements to add querying flexibility
191 ----------------------------
193 date: 2002/09/27 18:06:25; author: nwiger; state: Exp; lines: +6 -2
194 added precatch for messed up where string
195 ----------------------------
197 date: 2002/08/29 18:04:35; author: nwiger; state: Exp; lines: +4 -3
199 ----------------------------
201 date: 2001/11/07 22:18:12; author: nwiger; state: Exp; lines: +31 -14
202 added embedded SCALAR ref capability to insert() and update()
203 ----------------------------
205 date: 2001/11/07 01:23:28; author: nwiger; state: Exp; lines: +3 -3
207 ----------------------------
209 date: 2001/11/06 21:09:44; author: nwiger; state: Exp; lines: +14 -6
210 oops, had to actually *implement* the order by for select()!
211 ----------------------------
213 date: 2001/11/06 03:13:16; author: nwiger; state: Exp; lines: +43 -4
215 ----------------------------
217 date: 2001/11/06 03:07:42; author: nwiger; state: Exp; lines: +16 -7
218 added extra layer of ()'s to ensure correct semantics on AND
219 ----------------------------
221 date: 2001/11/06 01:16:31; author: nwiger; state: Exp; lines: +11 -10
222 updated all statements so that they use wantarray to just return SQL if asked
223 ----------------------------
225 date: 2001/10/26 22:23:46; author: nwiger; state: Exp; lines: +112 -15
226 added scalar ref for SQL verbatim in where, fixed bugs, array ref, docs
227 ----------------------------
229 date: 2001/10/24 00:26:43; author: nwiger; state: Exp;