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