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