3 years agocatch another weird edge case in _order_by
Matt S Trout [Sun, 24 Feb 2019 20:46:29 +0000]
catch another weird edge case in _order_by

3 years agoadditional fixups for top-level-ness and oddities
Matt S Trout [Sat, 23 Feb 2019 20:52:54 +0000]
additional fixups for top-level-ness and oddities

3 years agoensure _order_by_chunks returns what it used to
Matt S Trout [Fri, 22 Feb 2019 18:09:27 +0000]
ensure _order_by_chunks returns what it used to

3 years agoshort circuit empty components faster
Matt S Trout [Wed, 20 Feb 2019 19:21:46 +0000]
short circuit empty components faster

3 years agodon't parenthesise single clause and/or because, well, don't be silly
Matt S Trout [Sat, 16 Feb 2019 03:06:34 +0000]
don't parenthesise single clause and/or because, well, don't be silly

3 years agoI have no idea why I inlined the bindval assertion but it was stupid
Matt S Trout [Fri, 15 Feb 2019 23:03:33 +0000]
I have no idea why I inlined the bindval assertion but it was stupid

3 years agotweak special op handling and prefix op versus func heuristics
Matt S Trout [Fri, 15 Feb 2019 22:57:56 +0000]
tweak special op handling and prefix op versus func heuristics

3 years agorestore exact whitespace because DBIC t/storage/debug.t relies on it
Matt S Trout [Fri, 15 Feb 2019 21:57:19 +0000]
restore exact whitespace because DBIC t/storage/debug.t relies on it

3 years ago_order_by_chunks fuckery to help DBIC not confuse itself
Matt S Trout [Fri, 15 Feb 2019 21:53:13 +0000]
_order_by_chunks fuckery to help DBIC not confuse itself

3 years agomake the DBIC required warning scoped
Matt S Trout [Wed, 13 Feb 2019 03:01:48 +0000]
make the DBIC required warning scoped

3 years agosingle fire -nest warning because DBIC expects it, fix an order_by bug
Matt S Trout [Tue, 12 Feb 2019 19:39:44 +0000]
single fire -nest warning because DBIC expects it, fix an order_by bug

3 years agohandle scalar arg to _recurse_where correctly
Matt S Trout [Tue, 12 Feb 2019 18:54:52 +0000]
handle scalar arg to _recurse_where correctly

3 years agodbic uses _order_by_chunks, unsure how to unit test
Matt S Trout [Sun, 28 Oct 2018 00:36:11 +0000]
dbic uses _order_by_chunks, unsure how to unit test

3 years agofor compat, single select arg doesnt quote
Matt S Trout [Sun, 28 Oct 2018 00:31:54 +0000]
for compat, single select arg doesnt quote

3 years agofix undef (null) values passed to update
Matt S Trout [Thu, 25 Oct 2018 22:31:05 +0000]
fix undef (null) values passed to update

3 years agoalso barf on arrayref based order_by with the same problem
Matt S Trout [Wed, 17 Oct 2018 22:59:14 +0000]
also barf on arrayref based order_by with the same problem

3 years agorestore _order_by exception on nonsense asc+desc input
Matt S Trout [Wed, 17 Oct 2018 22:44:29 +0000]
restore _order_by exception on nonsense asc+desc input

3 years agoswitch back to original key for special_ops since things poke at it
Matt S Trout [Sun, 14 Oct 2018 18:50:57 +0000]
switch back to original key for special_ops since things poke at it

3 years agorestore unary op functionality
Matt S Trout [Sun, 14 Oct 2018 18:46:29 +0000]
restore unary op functionality

3 years agoswitch to expand_unary hashref, maybe scalar default propagate
Matt S Trout [Fri, 21 Sep 2018 00:11:02 +0000]
switch to expand_unary hashref, maybe scalar default propagate

3 years agoallow arrayref ident values for multi-part ident
Matt S Trout [Thu, 20 Sep 2018 22:13:03 +0000]
allow arrayref ident values for multi-part ident

3 years agomake node_types a (currently unexposed) hashref
Matt S Trout [Thu, 20 Sep 2018 21:21:21 +0000]
make node_types a (currently unexposed) hashref

3 years agoquote code supports multi-part idents
Matt S Trout [Tue, 18 Sep 2018 03:29:58 +0000]
quote code supports multi-part idents

3 years agoset values in update via expand/render
Matt S Trout [Tue, 18 Sep 2018 02:13:37 +0000]
set values in update via expand/render

3 years agoexpand values for insert
Matt S Trout [Tue, 18 Sep 2018 01:44:05 +0000]
expand values for insert

3 years agoRETURNING using render/expand
Matt S Trout [Tue, 18 Sep 2018 01:24:08 +0000]
RETURNING using render/expand

3 years agoselect fields now handled by expand/render code
Matt S Trout [Tue, 18 Sep 2018 01:16:13 +0000]
select fields now handled by expand/render code

3 years agoonly maybe list expand if <1 thing
Matt S Trout [Tue, 18 Sep 2018 01:15:43 +0000]
only maybe list expand if <1 thing

3 years agoextract _expand_maybe_list_expr
Matt S Trout [Tue, 18 Sep 2018 01:08:55 +0000]
extract _expand_maybe_list_expr

3 years agomake _table use expand/render code
Matt S Trout [Tue, 18 Sep 2018 01:03:25 +0000]
make _table use expand/render code

3 years agono space to the LHS of a comma
Matt S Trout [Mon, 17 Sep 2018 23:09:17 +0000]
no space to the LHS of a comma

3 years agoremove vestigial _order_by_chunks method
Matt S Trout [Mon, 17 Sep 2018 23:06:33 +0000]
remove vestigial _order_by_chunks method

3 years agoadd custom expansions, convert order_by
Matt S Trout [Mon, 17 Sep 2018 23:05:50 +0000]
add custom expansions, convert order_by

3 years agoadd default for ident vs. value
Matt S Trout [Mon, 17 Sep 2018 23:03:45 +0000]
add default for ident vs. value

3 years agoremove last references to _nested_func_lhs
Matt S Trout [Mon, 17 Sep 2018 03:33:47 +0000]
remove last references to _nested_func_lhs

3 years agolift undef checking out of _order_by_chunks
Matt S Trout [Mon, 17 Sep 2018 03:32:02 +0000]
lift undef checking out of _order_by_chunks

3 years agostreamline order_by processing
Matt S Trout [Mon, 17 Sep 2018 02:58:41 +0000]
streamline order_by processing

3 years agoorder_by done sanely; cut 1
Matt S Trout [Mon, 17 Sep 2018 02:49:06 +0000]
order_by done sanely; cut 1

3 years agoswitch over to expr-render based generation
Matt S Trout [Mon, 17 Sep 2018 02:10:05 +0000]
switch over to expr-render based generation

3 years agodecomplect _IDENT
Matt S Trout [Mon, 17 Sep 2018 02:05:54 +0000]
decomplect _IDENT

3 years agoremove most of the crud from the VALUE op
Matt S Trout [Mon, 17 Sep 2018 02:02:44 +0000]
remove most of the crud from the VALUE op

3 years agotemporarily kill unary_ops feature
Matt S Trout [Mon, 17 Sep 2018 01:54:57 +0000]
temporarily kill unary_ops feature

3 years agoburn unneccessary _where_ methods
Matt S Trout [Mon, 17 Sep 2018 01:50:28 +0000]
burn unneccessary _where_ methods

3 years agonuke a bunch of _where_ methods
Matt S Trout [Mon, 17 Sep 2018 01:46:52 +0000]
nuke a bunch of _where_ methods

3 years agoswitch update to using _render_expr
Matt S Trout [Mon, 17 Sep 2018 01:46:00 +0000]
switch update to using _render_expr

3 years agoswitch between to render_expr
Matt S Trout [Mon, 17 Sep 2018 01:34:00 +0000]
switch between to render_expr

3 years agoconvert -in to render_expr
Matt S Trout [Mon, 17 Sep 2018 01:33:02 +0000]
convert -in to render_expr

3 years agohave func use render_expr
Matt S Trout [Mon, 17 Sep 2018 01:31:02 +0000]
have func use render_expr

3 years agoremove vestigial ANDOR op
Matt S Trout [Mon, 17 Sep 2018 01:29:49 +0000]
remove vestigial ANDOR op

3 years agomove _OP over to _render_expr
Matt S Trout [Mon, 17 Sep 2018 01:29:00 +0000]
move _OP over to _render_expr

3 years agoinitial introduction of render_expr, make sql(true|false) into methods
Matt S Trout [Mon, 17 Sep 2018 01:23:38 +0000]
initial introduction of render_expr, make sql(true|false) into methods

3 years agomore debugging in tests
Matt S Trout [Mon, 17 Sep 2018 01:22:55 +0000]
more debugging in tests

3 years agoeliminate (I hope) last and/or case in expansion
Matt S Trout [Mon, 17 Sep 2018 00:12:41 +0000]
eliminate (I hope) last and/or case in expansion

3 years ago{ x => { -and => [ ... ] } converted to op
Matt S Trout [Mon, 17 Sep 2018 00:09:00 +0000]
{ x => { -and => [ ... ] } converted to op

3 years ago{ x => { -and => ... } } converted to op
Matt S Trout [Mon, 17 Sep 2018 00:07:25 +0000]
{ x => { -and => ... } } converted to op

3 years agofurther and/or conversion
Matt S Trout [Mon, 17 Sep 2018 00:03:36 +0000]
further and/or conversion

3 years agostart of moving and/or to ops
Matt S Trout [Sun, 16 Sep 2018 23:58:26 +0000]
start of moving and/or to ops

3 years agomake non-unops multipart
Matt S Trout [Sun, 16 Sep 2018 22:49:17 +0000]
make non-unops multipart

3 years agoeliminate (I think) -not as an expanded node type
Matt S Trout [Sun, 16 Sep 2018 22:45:12 +0000]
eliminate (I think) -not as an expanded node type

3 years agoclean up notreached code
Matt S Trout [Sun, 16 Sep 2018 22:28:51 +0000]
clean up notreached code

3 years agofixup operator + empty arrayref handling
Matt S Trout [Sun, 16 Sep 2018 21:36:15 +0000]
fixup operator + empty arrayref handling

3 years agoresolve final 02where fail by adding -func, 01generate still sad
Matt S Trout [Sun, 16 Sep 2018 20:47:11 +0000]
resolve final 02where fail by adding -func, 01generate still sad

3 years agotrap exceptions and show expr expansion in 02where
Matt S Trout [Sun, 16 Sep 2018 20:46:41 +0000]
trap exceptions and show expr expansion in 02where

3 years agoMANGLE
Matt S Trout [Sat, 15 Sep 2018 17:14:07 +0000]
MANGLE

3 years agonotreached at base of expand_expr
Matt S Trout [Wed, 12 Sep 2018 00:31:15 +0000]
notreached at base of expand_expr

3 years agoeliminate IS special op usage
Matt S Trout [Tue, 11 Sep 2018 23:14:43 +0000]
eliminate IS special op usage

3 years agoeliminated value old special op impl
Matt S Trout [Tue, 11 Sep 2018 22:31:18 +0000]
eliminated value old special op impl

3 years agoensure ident no longer uses the old code
Matt S Trout [Tue, 11 Sep 2018 22:24:13 +0000]
ensure ident no longer uses the old code

3 years agodisable IN and BETWEEN implementations
Matt S Trout [Tue, 11 Sep 2018 22:10:45 +0000]
disable IN and BETWEEN implementations

3 years agoneed to normalize op to avoid spurious use of old unary ops
Matt S Trout [Tue, 11 Sep 2018 22:07:46 +0000]
need to normalize op to avoid spurious use of old unary ops

3 years agoIN support as a custom -op type
Matt S Trout [Tue, 11 Sep 2018 21:40:56 +0000]
IN support as a custom -op type

3 years agoexpand and render BETWEEN and NOT BETWEEN
Matt S Trout [Sun, 9 Sep 2018 18:24:55 +0000]
expand and render BETWEEN and NOT BETWEEN

3 years agoLITERAL op should perform bindtype check
Matt S Trout [Sat, 8 Sep 2018 19:02:59 +0000]
LITERAL op should perform bindtype check

3 years agoregularise more code, switch one test from die to warn verification
Matt S Trout [Sat, 8 Sep 2018 18:15:00 +0000]
regularise more code, switch one test from die to warn verification

3 years agoswitch another literal case to -literal
Matt S Trout [Sat, 8 Sep 2018 16:33:52 +0000]
switch another literal case to -literal

3 years agouse -literal for top level exprs
Matt S Trout [Sat, 8 Sep 2018 01:55:26 +0000]
use -literal for top level exprs

3 years agoinitial introduction of literal op
Matt S Trout [Sat, 8 Sep 2018 01:51:55 +0000]
initial introduction of literal op

3 years agoexpand hashpair w/hash RHS
Matt S Trout [Sat, 8 Sep 2018 00:02:47 +0000]
expand hashpair w/hash RHS

3 years agoexpand top level arrays
Matt S Trout [Fri, 7 Sep 2018 23:44:57 +0000]
expand top level arrays

3 years agoinclude exception for 00new failures
Matt S Trout [Fri, 7 Sep 2018 23:43:58 +0000]
include exception for 00new failures

3 years agoadd -op and -bind, expand some cases to them
Matt S Trout [Fri, 7 Sep 2018 22:47:58 +0000]
add -op and -bind, expand some cases to them

3 years agobetter results from 01generate when a test unexpecteedly dies
Matt S Trout [Fri, 7 Sep 2018 22:47:24 +0000]
better results from 01generate when a test unexpecteedly dies

3 years agoexpand -bool, stop forbidding top-level unary ops
Matt S Trout [Tue, 4 Sep 2018 02:53:32 +0000]
expand -bool, stop forbidding top-level unary ops

3 years agonegation expansion
Matt S Trout [Tue, 4 Sep 2018 02:46:19 +0000]
negation expansion

3 years agoarrayref hashpair case
Matt S Trout [Tue, 4 Sep 2018 02:29:14 +0000]
arrayref hashpair case

3 years agorearrange hashpair expansion
Matt S Trout [Tue, 4 Sep 2018 01:39:42 +0000]
rearrange hashpair expansion

3 years agoexpander handles literal as RHS
Matt S Trout [Mon, 3 Sep 2018 22:43:09 +0000]
expander handles literal as RHS

3 years agoadd -nest to hashpair expansion
Matt S Trout [Mon, 3 Sep 2018 21:50:36 +0000]
add -nest to hashpair expansion

3 years agohashpair expansion - defaulting to $self->{cmp}
Matt S Trout [Mon, 3 Sep 2018 21:34:47 +0000]
hashpair expansion - defaulting to $self->{cmp}

3 years agoexpression expansion pass, zeroth cut
Matt S Trout [Mon, 3 Sep 2018 21:13:36 +0000]
expression expansion pass, zeroth cut

3 years agoremove another special case IS NULL rendering
Matt S Trout [Sun, 2 Sep 2018 20:45:37 +0000]
remove another special case IS NULL rendering

3 years agomake undef value use is operator
Matt S Trout [Sun, 2 Sep 2018 20:28:52 +0000]
make undef value use is operator

3 years agoexplicit defaulting of scalar-rhs hashpair
Matt S Trout [Sun, 2 Sep 2018 20:23:57 +0000]
explicit defaulting of scalar-rhs hashpair

3 years agoRelease commit for 1.87 v1.87
Dagfinn Ilmari Mannsåker [Tue, 2 Jun 2020 10:36:30 +0000]
Release commit for 1.87

3 years agoBumping version to 1.87
Dagfinn Ilmari Mannsåker [Tue, 2 Jun 2020 10:32:51 +0000]
Bumping version to 1.87

4 years agoAdd a missed fallback to the package-global $tb
Dagfinn Ilmari Mannsåker [Mon, 3 Feb 2020 11:33:02 +0000]
Add a missed fallback to the package-global $tb

4 years agoRemove explicit Exporter inheritace in SQL::Abstract::Test
Dagfinn Ilmari Mannsåker [Fri, 31 Jan 2020 17:37:11 +0000]
Remove explicit Exporter inheritace in SQL::Abstract::Test

Test:::Builder::Module is documented to inherit from Exporter.

4 years agoRe-fetch the Test::Builder object in each test function
Dagfinn Ilmari Mannsåker [Fri, 31 Jan 2020 17:29:16 +0000]
Re-fetch the Test::Builder object in each test function

Rather than stashing it in a global, as recommende in the
Test::Builder::Module documentation.  However, keep the global in case
someone is overriding it despite it not being documented.

4 years agoAdd runtime dependency on Test::Deep and Test::Builder::Module (RT#131623)
Dagfinn Ilmari Mannsåker [Fri, 31 Jan 2020 11:27:38 +0000]
Add runtime dependency on Test::Deep and Test::Builder::Module (RT#131623)

They are used by SQL::Abstract::Test, and modules that test-depend on
that shouldn't have to explicitly depend on Test::Deep themselves.

4 years agoConsistently use single quotes for deps in Makefile.PL
Dagfinn Ilmari Mannsåker [Fri, 31 Jan 2020 11:18:24 +0000]
Consistently use single quotes for deps in Makefile.PL