5 years agoextract remaining insert clause expansion handling to methods
Matt S Trout [Thu, 18 Apr 2019 18:43:13 +0000]
extract remaining insert clause expansion handling to methods

5 years agoimprove infinite recursion debugging, fix infinite recursion bug
Matt S Trout [Thu, 18 Apr 2019 18:34:52 +0000]
improve infinite recursion debugging, fix infinite recursion bug

5 years agomurder AUTOLOAD by default because I keep getting confused by it while debugging
Matt S Trout [Thu, 18 Apr 2019 13:46:31 +0000]
murder AUTOLOAD by default because I keep getting confused by it while debugging

5 years agothere is a lurking infinite loop in 01generate inserts but this is still better
Matt S Trout [Thu, 18 Apr 2019 03:08:36 +0000]
there is a lurking infinite loop in 01generate inserts but this is still better

5 years agoswitch Abstract.pm renderers to using join_query_parts
Matt S Trout [Thu, 18 Apr 2019 02:32:54 +0000]
switch Abstract.pm renderers to using join_query_parts

5 years agocompact andor
Matt S Trout [Thu, 18 Apr 2019 02:26:29 +0000]
compact andor

5 years agocleanup andor
Matt S Trout [Thu, 18 Apr 2019 02:15:17 +0000]
cleanup andor

5 years agobetween and in cleanup
Matt S Trout [Thu, 18 Apr 2019 02:05:29 +0000]
between and in cleanup

5 years agomake join_query_parts handle scalars
Matt S Trout [Thu, 18 Apr 2019 02:00:53 +0000]
make join_query_parts handle scalars

5 years agofirst keyword move
Matt S Trout [Thu, 18 Apr 2019 02:00:33 +0000]
first keyword move

5 years agomove format_keyword into base sqla
Matt S Trout [Thu, 18 Apr 2019 01:57:42 +0000]
move format_keyword into base sqla

5 years agorow and between
Matt S Trout [Thu, 18 Apr 2019 01:56:10 +0000]
row and between

5 years agomove func rendering over to join_query_parts
Matt S Trout [Thu, 18 Apr 2019 01:45:44 +0000]
move func rendering over to join_query_parts

5 years agotake advantage of join_query_parts to clean up
Matt S Trout [Thu, 18 Apr 2019 01:23:49 +0000]
take advantage of join_query_parts to clean up

5 years agomake the legacy convert feature its own node
Matt S Trout [Thu, 18 Apr 2019 01:14:58 +0000]
make the legacy convert feature its own node

5 years agomore use cleanup, add hashref to join_sql_parts
Matt S Trout [Thu, 18 Apr 2019 01:07:17 +0000]
more use cleanup, add hashref to join_sql_parts

5 years agorename join_clauses to join_query_parts
Matt S Trout [Thu, 18 Apr 2019 00:55:58 +0000]
rename join_clauses to join_query_parts

5 years agoeliminate vestigial length checks
Matt S Trout [Thu, 18 Apr 2019 00:39:14 +0000]
eliminate vestigial length checks

5 years agofixup sigil usage
Matt S Trout [Wed, 17 Apr 2019 02:13:45 +0000]
fixup sigil usage

5 years agoAdded the sql expr scripts I've been using to test
Matt S Trout [Wed, 17 Apr 2019 02:12:28 +0000]
Added the sql expr scripts I've been using to test

5 years agostatement_list and test
Matt S Trout [Wed, 17 Apr 2019 02:01:55 +0000]
statement_list and test

5 years agowrap expander and expander list
Matt S Trout [Wed, 17 Apr 2019 01:32:39 +0000]
wrap expander and expander list

5 years agoconsolidate with_recursive
Matt S Trout [Wed, 17 Apr 2019 01:08:52 +0000]
consolidate with_recursive

5 years agomove setop expansion to generic rather than loop
Matt S Trout [Wed, 17 Apr 2019 01:03:35 +0000]
move setop expansion to generic rather than loop

5 years agomove clause rendering to better calling convention
Matt S Trout [Wed, 17 Apr 2019 00:46:00 +0000]
move clause rendering to better calling convention

5 years agoclean up calling code w/new render convention
Matt S Trout [Tue, 16 Apr 2019 03:52:42 +0000]
clean up calling code w/new render convention

5 years agoclean up calling convention
Matt S Trout [Tue, 16 Apr 2019 03:48:34 +0000]
clean up calling convention

5 years agofix up with clause code - got the parens wrong
Matt S Trout [Tue, 16 Apr 2019 02:14:23 +0000]
fix up with clause code - got the parens wrong

5 years agowith recursive test and bugfixes
Matt S Trout [Tue, 16 Apr 2019 02:10:00 +0000]
with recursive test and bugfixes

5 years agobasic with support
Matt S Trout [Mon, 15 Apr 2019 20:21:59 +0000]
basic with support

5 years agorefactor to add the rest of the setops
Matt S Trout [Mon, 15 Apr 2019 17:28:51 +0000]
refactor to add the rest of the setops

5 years agoLHS of as is interpreted as ident so this is more correct
Matt S Trout [Mon, 15 Apr 2019 16:45:35 +0000]
LHS of as is interpreted as ident so this is more correct

5 years agoswitch keyword formatting to method, fix clause order, add setop infra
Matt S Trout [Mon, 15 Apr 2019 16:34:07 +0000]
switch keyword formatting to method, fix clause order, add setop infra

5 years agopromote _join_parts to public method join_clauses
Matt S Trout [Mon, 15 Apr 2019 02:18:45 +0000]
promote _join_parts to public method join_clauses

5 years agointroduce keyword concept to avoid private methods
Matt S Trout [Mon, 15 Apr 2019 02:14:51 +0000]
introduce keyword concept to avoid private methods

5 years agoclauses transforms
Matt S Trout [Mon, 15 Apr 2019 02:03:18 +0000]
clauses transforms

5 years agofurther APIfication
Matt S Trout [Mon, 15 Apr 2019 01:45:26 +0000]
further APIfication

5 years agomove more stuff to method calls
Matt S Trout [Mon, 15 Apr 2019 01:41:58 +0000]
move more stuff to method calls

5 years agobetter extension api
Matt S Trout [Mon, 15 Apr 2019 01:27:04 +0000]
better extension api

5 years agoclean up op expansion
Matt S Trout [Mon, 15 Apr 2019 01:02:36 +0000]
clean up op expansion

5 years agoclean up from_list
Matt S Trout [Mon, 15 Apr 2019 00:43:46 +0000]
clean up from_list

5 years agomove to default registration
Matt S Trout [Mon, 15 Apr 2019 00:38:07 +0000]
move to default registration

5 years agoinitial extension api
Matt S Trout [Mon, 15 Apr 2019 00:18:09 +0000]
initial extension api

5 years agodemonstrate adding clauses with no special expand/render
Matt S Trout [Sun, 14 Apr 2019 19:58:05 +0000]
demonstrate adding clauses with no special expand/render

5 years agoverify "col = (SELECT ...)" works
Matt S Trout [Sun, 14 Apr 2019 19:16:56 +0000]
verify "col = (SELECT ...)" works

5 years agoclean up op/func handling, add exists, add de-inconsistency switch
Matt S Trout [Sun, 14 Apr 2019 19:08:58 +0000]
clean up op/func handling, add exists, add de-inconsistency switch

5 years agointroduce "top level" concept, move -values to Clauses to use it
Matt S Trout [Sun, 14 Apr 2019 18:01:25 +0000]
introduce "top level" concept, move -values to Clauses to use it

5 years agosugar for select and multi-row insert
Matt S Trout [Sun, 14 Apr 2019 02:36:20 +0000]
sugar for select and multi-row insert

5 years agomake INSERT SELECT work
Matt S Trout [Sat, 13 Apr 2019 18:39:27 +0000]
make INSERT SELECT work

5 years agosubselect in from renders ok
Matt S Trout [Sat, 13 Apr 2019 17:21:52 +0000]
subselect in from renders ok

5 years agodelete from, update using, join using
Matt S Trout [Sat, 13 Apr 2019 04:16:38 +0000]
delete from, update using, join using

5 years agoadd, expand, and use in from, VALUES
Matt S Trout [Sat, 13 Apr 2019 02:54:04 +0000]
add, expand, and use in from, VALUES

5 years agovalues clause
Matt S Trout [Sat, 13 Apr 2019 02:19:07 +0000]
values clause

5 years agoadd as support
Matt S Trout [Sat, 13 Apr 2019 01:54:51 +0000]
add as support

5 years agoclauses test (xt/ because extra deps)
Matt S Trout [Fri, 12 Apr 2019 20:50:38 +0000]
clauses test (xt/ because extra deps)

5 years agojoin support
Matt S Trout [Fri, 12 Apr 2019 20:45:58 +0000]
join support

5 years agoadd group_by and having in ExtraClauses
Matt S Trout [Thu, 11 Apr 2019 17:49:31 +0000]
add group_by and having in ExtraClauses

5 years agoexpand function arguments
Matt S Trout [Thu, 11 Apr 2019 01:30:51 +0000]
expand function arguments

5 years agomake non-ascii operators work
Matt S Trout [Thu, 11 Apr 2019 01:17:40 +0000]
make non-ascii operators work

5 years agowantarray cleanup and hashref query expressions
Matt S Trout [Wed, 10 Apr 2019 03:40:06 +0000]
wantarray cleanup and hashref query expressions

5 years agoclean up naming and provide aliases
Matt S Trout [Wed, 10 Apr 2019 02:15:18 +0000]
clean up naming and provide aliases

5 years agoinclude MRO::Compat for 5.8 perls
Matt S Trout [Wed, 10 Apr 2019 01:55:40 +0000]
include MRO::Compat for 5.8 perls

5 years agoclean up fields handling
Matt S Trout [Wed, 10 Apr 2019 01:50:31 +0000]
clean up fields handling

5 years agoexpand , args while not doubling listification
Matt S Trout [Wed, 10 Apr 2019 01:32:48 +0000]
expand , args while not doubling listification

5 years agoPass all expression stability tests. Verified by:
Matt S Trout [Wed, 10 Apr 2019 01:12:50 +0000]
Pass all expression stability tests. Verified by:

SQL_ABSTRACT_TEST_AGAINST=SQL::Abstract::Clauses \
  SQL_ABSTRACT_TEST_EXPAND_STABILITY=1 \
  PERL5OPT=-MDevel::Dwarn \
  prove -j8 -lr t

5 years agoclean up fields/values expansion for insert
Matt S Trout [Tue, 9 Apr 2019 17:14:53 +0000]
clean up fields/values expansion for insert

5 years agoconvert delete to extended clauses system
Matt S Trout [Tue, 9 Apr 2019 00:36:25 +0000]
convert delete to extended clauses system

5 years agoexpand update expansion
Matt S Trout [Tue, 9 Apr 2019 00:18:28 +0000]
expand update expansion

5 years agoswitch select over to "real" clauses
Matt S Trout [Tue, 9 Apr 2019 00:08:57 +0000]
switch select over to "real" clauses

5 years agogive insert fields a real name
Matt S Trout [Mon, 8 Apr 2019 00:55:11 +0000]
give insert fields a real name

5 years agoclean up expansion
Matt S Trout [Sun, 7 Apr 2019 23:45:01 +0000]
clean up expansion

5 years agoswitch insert to clauses system
Matt S Trout [Sat, 6 Apr 2019 03:28:33 +0000]
switch insert to clauses system

5 years agodelete as clauses
Matt S Trout [Sat, 6 Apr 2019 02:25:09 +0000]
delete as clauses

5 years agoadd update to clauses
Matt S Trout [Sat, 6 Apr 2019 02:07:58 +0000]
add update to clauses

5 years agoconvert direct to literal for * and single-id select
Matt S Trout [Fri, 5 Apr 2019 22:10:57 +0000]
convert direct to literal for * and single-id select

5 years agoclean up select-hackery code
Matt S Trout [Fri, 5 Apr 2019 18:48:37 +0000]
clean up select-hackery code

5 years agoadd select method to ::Clauses and fix bugs
Matt S Trout [Fri, 5 Apr 2019 18:33:42 +0000]
add select method to ::Clauses and fix bugs

5 years agomake sketch vaguely work
Matt S Trout [Fri, 5 Apr 2019 00:00:15 +0000]
make sketch vaguely work

5 years agoinitial sketch of Clauses.pm
Matt S Trout [Thu, 4 Apr 2019 23:45:08 +0000]
initial sketch of Clauses.pm

5 years agoadd expand stability test
Matt S Trout [Wed, 10 Apr 2019 00:47:22 +0000]
add expand stability test

5 years agodon't re-expand maybe list expr when already list
Matt S Trout [Wed, 10 Apr 2019 00:35:44 +0000]
don't re-expand maybe list expr when already list

5 years agoclean up insert code more
Matt S Trout [Sat, 6 Apr 2019 02:58:06 +0000]
clean up insert code more

5 years agocentralise field and value aqts for insert
Matt S Trout [Sat, 6 Apr 2019 02:55:34 +0000]
centralise field and value aqts for insert

5 years agoclean up delete code
Matt S Trout [Sat, 6 Apr 2019 02:47:04 +0000]
clean up delete code

5 years agopass -op expansion to expand_op handler, fix in
Matt S Trout [Fri, 5 Apr 2019 21:45:16 +0000]
pass -op expansion to expand_op handler, fix in

5 years agoallow controlling SQL::Abstract class for test suite running
Matt S Trout [Fri, 5 Apr 2019 00:31:46 +0000]
allow controlling SQL::Abstract class for test suite running

5 years agoremove refkind stuff from insert
Matt S Trout [Wed, 3 Apr 2019 01:03:21 +0000]
remove refkind stuff from insert

5 years agoclarify test
Matt S Trout [Wed, 3 Apr 2019 00:08:05 +0000]
clarify test

5 years agotransplant DBIC test
Matt S Trout [Wed, 3 Apr 2019 00:00:39 +0000]
transplant DBIC test

5 years agocleanup multop rendering
Matt S Trout [Tue, 2 Apr 2019 19:53:54 +0000]
cleanup multop rendering

5 years agofix a (bizarre) compatibility issue
Matt S Trout [Tue, 2 Apr 2019 19:16:53 +0000]
fix a (bizarre) compatibility issue

5 years agono op normalization required - already happened outside
Matt S Trout [Tue, 2 Apr 2019 00:00:27 +0000]
no op normalization required - already happened outside

5 years agoswitch to explicit node type returns for non-op nodes
Matt S Trout [Mon, 1 Apr 2019 23:57:51 +0000]
switch to explicit node type returns for non-op nodes

5 years agofinish removing leading /^-/
Matt S Trout [Mon, 1 Apr 2019 05:32:39 +0000]
finish removing leading /^-/

5 years agoremove leading - from expand and render
Matt S Trout [Mon, 1 Apr 2019 05:02:14 +0000]
remove leading - from expand and render

5 years agoremove - from expand keys
Matt S Trout [Mon, 1 Apr 2019 05:00:40 +0000]
remove - from expand keys

5 years agoremove _expr_ from method names
Matt S Trout [Mon, 1 Apr 2019 04:51:08 +0000]
remove _expr_ from method names

5 years agoextract expand_bind to a method
Matt S Trout [Mon, 1 Apr 2019 04:19:02 +0000]
extract expand_bind to a method

5 years agoclean up row and op expansion to methods
Matt S Trout [Mon, 1 Apr 2019 04:16:09 +0000]
clean up row and op expansion to methods

5 years agostop treating old special ops normally
Matt S Trout [Mon, 1 Apr 2019 04:07:47 +0000]
stop treating old special ops normally