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