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