s// does not return the modified string, $_ does
[scpubgit/Q-Branch.git] / Changes
CommitLineData
41751122 1Revision history for SQL::Abstract
e3dd5e89 2
4d3dc03a 3 - Switch the tokenizer to precompiled regexes (massive speedup)
4 - Rudimentary handling of quotes ( 'WHERE' vs WHERE )
0336eddb 5 - Fix extended argument parsing by IN/BETWEEN
4d3dc03a 6
4ee5e99c 7revision 1.68 2010-09-16
8----------------------------
ee4227a7 9 - Document methods on Tree
9d11f0d4 10 - Add affordances for color coding placeholders
ee4227a7 11 - Change ::Tree::whitespace to whitespace_keyword
12
c22f502d 13revision 1.67_03 2010-09-11
fb272e73 14----------------------------
c22f502d 15 - Add docs for SQL::Abstract::Tree->new
2fed0b4b 16 - correcty merge profile and parameters
fb272e73 17 - added fill_in_placeholders option for excellent copy/pasta
18
ba0151e5 19revision 1.67_02 2010-09-08
20----------------------------
0d5df7d6 21 - rename DBIx::Class::Storage::PrettyPrinter to DBIx::Class::Storage::Debug::PrettyPrint
ba0151e5 22 - decreased a lot of indentation from ::Tree
0d5df7d6 23 - cleaned up handling of newlines inside of parens
ba0151e5 24
25revision 1.67_01 2010-09-06
26----------------------------
27 - Add SQL::Abstract::Tree
28 - Add unindexed DBIx::Class::Storage::PrettyPrinter
b864ba9b 29 - Better documentation of undef/NULL in where clause
b66dea8d 30 - Depend on bugfixed Module::Install (now again installs
31 on old < 5.8.3 perls)
b864ba9b 32
6262db95 33revision 1.67 2010-05-31 14:21 (UTC)
34----------------------------
54629227 35 - Fix SQL::Test failure when first chunk is an unrecognized
36 literal
37 - Generic -not operator tests
c178aa6c 38 - More columns-bindtype assertion checks
54629227 39
4414eec5 40revision 1.66 2010-04-27 02:44 (UTC)
41----------------------------
955e77ca 42 - Optimized the quoting mechanism, winning nearly 10%
43 speedup on repeatable sql generation
44
f3e44aee 45revision 1.65 2010-04-11 19:59 (UTC)
46----------------------------
47 - Rerelease last version to not include .svn files
48 and grab MANIFEST.SKIP from DBIx::Class so it
49 won't happen again
50
9d48860e 51revision 1.64 2010-04-11 16:58 (UTC)
52----------------------------
953d164e 53 - Fix multiple generic op handling regressions by
54 reverting the auto-equality assumption (turned out
55 to be a very very bad idea)
56
c167ebd8 57revision 1.63 2010-03-24 09:56 (UTC)
58----------------------------
2d2df6ba 59 - Add ILIKE to the core list of comparision ops
60
8d3bb2b1 61revision 1.62 2010-03-15 11:06 (UTC)
62----------------------------
3080e415 63 - Fixed open outer parens for a multi-line literal
f2532629 64 - Allow recursively-nested column-functions in WHERE
75151f36 65 - Bumped minimum perl to 5.6.2 and changed tests to
66 rely on core dependencies
171a709f 67
e6ea8200 68revision 1.61 2010-02-05 16:28 (UTC)
69----------------------------
fee677ba 70 - Allow INSERT to take additional attributes
71 - Support for INSERT ... RETURNING
b9a4fdae 72 - Another iteration of SQL::Abstract::Test fixes and improvements
73
0f2b8636 74revision 1.60 2009-09-22 11:03 (UTC)
75----------------------------
30d09fa9 76 - fix a well masked error in the sql-test tokenizer
77
2de6e226 78revision 1.59 2009-09-22 08:39 (UTC)
79----------------------------
80 - fixed a couple of untrapped undefined warnings
81 - allow -in/-between to accept literal sql in all logical
e41c3bdd 82 variants - see POD for details
2de6e226 83 - unroll multiple parenthesis around IN arguments to accomodate
e41c3bdd 84 crappy databases
bd6a65ca 85
277b5d3f 86revision 1.58 2009-09-04 15:20 (UTC)
87----------------------------
88 - expanded the scope of -bool and -not_bool operators
89 - added proper testing support
90
91revision 1.57 2009-09-03 20:18 (UTC)
92----------------------------
93 - added -bool and -not_bool operators
94
a120d3e3 95revision 1.56 2009-05-30 16:31 (UTC)
96----------------------------
97 - support for \[$sql, @bind] in order_by clauses e.g.:
98 { -desc => \['colA LIKE ?', 'somestring'] }
99
54871ee9 100revision 1.55 2009-05-17 22:54 (UTC)
101----------------------------
ce261791 102 - make sure that sql generation does not mutate the supplied
103 where condition structure
104
73081069 105revision 1.54 2009-05-07 17:23 (UTC)
106----------------------------
107 - allow special_operators to take both code refs and method names
108 (makes it possible to properly subclass the builtin ones)
109
4f0516bc 110revision 1.53 2009-04-30 14:58 (UTC)
111----------------------------
112 - make sure hash keys are sorted in all search sub-conditions
113 - switch installer from EU::MM to M::I
114
e965ac5d 115revision 1.52 2009-04-28 23:14 (UTC)
116----------------------------
9d48860e 117 - allow -between to handle [\"", \""] and \["", @bind]
e965ac5d 118 - allow order_by to handle -asc|desc => [qw/colA colB/] (artifact from DBIx::Class)
119 - more tests and clearing up of some corner cases
120 - t/10test.t does not run by default (developer only, too cpu intensive)
39ae3a83 121
22f1a437 122----------------------------
ef8c0c94 123revision 1.51 2009-03-28 10:00 (UTC)
e965ac5d 124 - fixed behavior of [-and => ... ] depending on the current
ef8c0c94 125 condition scope. This introduces backwards comp with 1.24
126
127----------------------------
22f1a437 128revision 1.50 2009-03-10 12:30 (UTC)
e9c9f6ee 129 - fixed the problem with values() not behaving the same as the rest of the code (RT#43483)
130 - fixed interjecting arrayrefref into a where clause
131 - added value-only insert test with a literal SQL snippet
132 - cleanup and enhancement of t/03values.t
133 - better handling of borked SQL in tests
134 - deal properly with parentheses in is_same_sql_bind()
135 - fixed test subs (is_same_*) in SQL::Abstract::Test to return the correct test value
136 - do not version MANIFEST
137
22f1a437 138 Version 1.50 was a major internal refactoring of SQL::Abstract.
139 Great care has been taken to preserve the published behavior
140 documented in previous versions in the 1.* family; however,
141 some features that were previously undocumented, or behaved.
142 differently from the documentation, had to be changed in order
143 to clarify the semantics. Hence, client code that was relying
144 on some dark areas of SQL::Abstract v1.* might behave differently
145 in v1.50.
146
e9c9f6ee 147----------------------------
a1450b90 148revision 1.49_04 2009-03-03
149 - add support for a [\%column_meta => value] bind value format
150
151----------------------------
152revision 1.49_03 2009-02-17
153 - clarify syntax of \['...', @bind] when used with a bindtype
154 of 'columns'
155
156----------------------------
157revision 1.49_02 2009-02-16
158 - added an AST-aware SQL::Abstract::Test library for sql syntax tests
159 - vastly expanded test coverage
160 - support for the { operator => \'...'|\['...', @bind] } syntax
161 allowing to embed arbitrary operators on the LHS
edbb91b5 162 - fixed multiple regressions wrt DBIx::Class
a1450b90 163
e3f9dff4 164----------------------------
a1450b90 165revision 1.49_01 2009-02-11
166 - support for literal SQL through the [$sql, bind] syntax.
e3f9dff4 167 - added -nest1, -nest2 or -nest_1, -nest_2, ...
168 - optional support for array datatypes
169 - defensive programming : check arguments to functions/methods
170 - fixed bug with global logic of -and/-or (no side-effects any more)
171 - changed logic for distributing an op over arrayrefs
172 - fixed semantics of _bindtype on array args
a1450b90 173 - dropped the _anoncopy of the %where tree. No longer necessary.
174 - dropped the _modlogic function
8a68b5be 175 - Make col => [] and col => {$op => [] } DTRT or die instead of generating
a1450b90 176 broken SQL. Added tests for this.
22f1a437 177 - Added { -desc => 'column' } order by support
a1450b90 178 - Tiny "$_"-related fix for { -desc => 'columns'} order by support
22f1a437 179 tests + docs
86298391 180
e3dd5e89 181----------------------------
182revision 1.20
183date: 2005/08/18 18:41:58; author: nwiger; state: Exp; lines: +104 -50
184- added patch from Dan Kubb enabling quote_char and name_sep options
185- added patch from Andy Grundman to enhance _anoncopy for deep refs
186----------------------------
187revision 1.19
188date: 2005/04/29 18:20:30; author: nwiger; state: Exp; lines: +34 -20
189added _anoncopy to prevent destroying original; updated docs
190----------------------------
191revision 1.18
192date: 2005/03/07 20:14:12; author: nwiger; state: Exp; lines: +201 -65
193added support for -and, -or, and -nest; see docs for details
194----------------------------
195revision 1.17
196date: 2004/08/25 20:11:27; author: nwiger; state: Exp; lines: +58 -46
197added patch from Eric Kolve to iterate over all hashref elements
198----------------------------
199revision 1.16
200date: 2004/06/10 17:20:01; author: nwiger; state: Exp; lines: +178 -12
201added bindtype param to allow this to work with Orasuck 9+
202----------------------------
203revision 1.15
204date: 2003/11/05 23:40:40; author: nwiger; state: Exp; lines: +18 -6
205several bugfixes, including _convert being applied wrong and
206the edge case field => { '!=', [qw/this that/] } not working
207----------------------------
208revision 1.14
209date: 2003/11/04 21:20:33; author: nwiger; state: Exp; lines: +115 -34
210added patch from Philip Collins, and also added 'convert' option
211----------------------------
212revision 1.13
213date: 2003/05/21 17:22:29; author: nwiger; state: Exp; lines: +230 -74
214added "IN" and "BETWEEN" operator support, as well as "NOT"
215modified where() to support ORDER BY, and fixed some bugs too
216added PERFORMANCE and FORMBUILDER doc sections
217fixed several bugs in _recurse_where(), it now works as expected
218added test suite, many thanks to Chas Owens
219modified all hash access to return keys sorted, to allow cached queries
220----------------------------
221revision 1.12
222date: 2003/05/08 20:10:56; author: nwiger; state: Exp; lines: +181 -96
2231.11 interim checking; major bugfixes and order_by, 1.12 will go to CPAN
224----------------------------
225revision 1.11
226date: 2003/05/02 00:07:30; author: nwiger; state: Exp; lines: +52 -12
227many minor enhancements to add querying flexibility
228----------------------------
229revision 1.10
230date: 2002/09/27 18:06:25; author: nwiger; state: Exp; lines: +6 -2
231added precatch for messed up where string
232----------------------------
233revision 1.9
234date: 2002/08/29 18:04:35; author: nwiger; state: Exp; lines: +4 -3
235CPAN
236----------------------------
237revision 1.8
238date: 2001/11/07 22:18:12; author: nwiger; state: Exp; lines: +31 -14
239added embedded SCALAR ref capability to insert() and update()
240----------------------------
241revision 1.7
242date: 2001/11/07 01:23:28; author: nwiger; state: Exp; lines: +3 -3
243damn uninit warning
244----------------------------
245revision 1.6
246date: 2001/11/06 21:09:44; author: nwiger; state: Exp; lines: +14 -6
247oops, had to actually *implement* the order by for select()!
248----------------------------
249revision 1.5
250date: 2001/11/06 03:13:16; author: nwiger; state: Exp; lines: +43 -4
251lots of docs
252----------------------------
253revision 1.4
254date: 2001/11/06 03:07:42; author: nwiger; state: Exp; lines: +16 -7
255added extra layer of ()'s to ensure correct semantics on AND
256----------------------------
257revision 1.3
258date: 2001/11/06 01:16:31; author: nwiger; state: Exp; lines: +11 -10
259updated all statements so that they use wantarray to just return SQL if asked
260----------------------------
261revision 1.2
262date: 2001/10/26 22:23:46; author: nwiger; state: Exp; lines: +112 -15
263added scalar ref for SQL verbatim in where, fixed bugs, array ref, docs
264----------------------------
265revision 1.1
266date: 2001/10/24 00:26:43; author: nwiger; state: Exp;
267Initial revision