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