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