* Extra checks of search arguments for possible SQL injection attacks
* Remove excess parentheses in debug SQL
* Fix parsing of foo.* in SQLA::Tree
* Fix bindtype fail when using -between with arrayrefref literals
* Add handling for NULL for -in
* The -nest operator has entered semi-deprecated status and has been
undocumented. Please do not use it in new code
pkgsrc changes:
- adjusting dependencies
Upstream changes:
revision 1.68 2010-09-16
----------------------------
- Document methods on Tree
- Add affordances for color coding placeholders
- Change ::Tree::whitespace to whitespace_keyword
revision 1.67_03 2010-09-11
----------------------------
- Add docs for SQL::Abstract::Tree->new
- correcty merge profile and parameters
- added fill_in_placeholders option for excellent copy/pasta
revision 1.67_02 2010-09-08
----------------------------
- rename DBIx::Class::Storage::PrettyPrinter to
DBIx::Class::Storage::Debug::PrettyPrint
- decreased a lot of indentation from ::Tree
- cleaned up handling of newlines inside of parens
revision 1.67_01 2010-09-06
----------------------------
- Add SQL::Abstract::Tree
- Add unindexed DBIx::Class::Storage::PrettyPrinter
- Better documentation of undef/NULL in where clause
- Depend on bugfixed Module::Install (now again installs
on old < 5.8.3 perls)
to trigger/signal a rebuild for the transition 5.10.1 -> 5.12.1.
The list of packages is computed by finding all packages which end
up having either of PERL5_USE_PACKLIST, BUILDLINK_API_DEPENDS.perl,
or PERL5_PACKLIST defined in their make setup (tested via
"make show-vars VARNAMES=..."), minus the packages updated after
the perl package update.
sno@ was right after all, obache@ kindly asked and he@ led the
way. Thanks!
Upstream changes:
revision 1.67 2010-05-31 14:21 (UTC)
----------------------------
- Fix SQL::Test failure when first chunk is an unrecognized
literal
- Generic -not operator tests
- More columns-bindtype assertion checks
revision 1.66 2010-04-27 02:44 (UTC)
----------------------------
- Optimized the quoting mechanism, winning nearly 10%
speedup on repeatable sql generation
revision 1.65 2010-04-11 19:59 (UTC)
----------------------------
- Rerelease last version to not include .svn files
and grab MANIFEST.SKIP from DBIx::Class so it
won't happen again
revision 1.64 2010-04-11 16:58 (UTC)
----------------------------
- Fix multiple generic op handling regressions by
reverting the auto-equality assumption (turned out
to be a very very bad idea)
revision 1.63 2010-03-24 09:56 (UTC)
----------------------------
- Add ILIKE to the core list of comparision ops
Upstream changes:
revision 1.61 2010-02-05 16:28 (UTC)
----------------------------
- Allow INSERT to take additional attributes
- Support for INSERT ... RETURNING
- Another iteration of SQL::Abstract::Test fixes and improvements
Upstream changes:
revision 1.60 2009-09-22 11:03 (UTC)
----------------------------
- fix a well masked error in the sql-test tokenizer
revision 1.59 2009-09-22 08:39 (UTC)
----------------------------
- fixed a couple of untrapped undefined warnings
- allow -in/-between to accept literal sql in all logical
variants - see POD for details
- unroll multiple parenthesis around IN arguments to accomodate
crappy databases
- Updating package of p5 module for SQL::Abstract from 1.55 to 1.56
- Adjusting build type to Module::Install
Upstream changes:
revision 1.56 2009-05-30 16:31 (UTC)
----------------------------
- support for \[$sql, @bind] in order_by clauses e.g.:
{ -desc => \['colA LIKE ?', 'somestring'] }
- Updating package for p5 module SQL::Abstract from 1.53 to 1.55
- Adjusting dependencies (and arrange them to alphabetical order)
Upstream changes:
revision 1.55 2009-05-17 22:54 (UTC)
----------------------------
- make sure that sql generation does not mutate the supplied
where condition structure
revision 1.54 2009-05-07 17:23 (UTC)
----------------------------
- allow special_operators to take both code refs and method names
(makes it possible to properly subclass the builtin ones)
- Updating package for p5 module SQL::Abstract from 1.51 to 1.53
- Setting license to gnu-gpl-v2
Upstream changes:
revision 1.53 2009-04-30 14:58 (UTC)
----------------------------
- make sure hash keys are sorted in all search sub-conditions
- switch installer from EU::MM to M::I
revision 1.52 2009-04-28 23:14 (UTC)
----------------------------
- allow -between to handle [\"", \""] and \["", @bind]
- allow order_by to handle -asc|desc => [qw/colA colB/] (artifact from DBIx::Class)
- more tests and clearing up of some corner cases
- t/10test.t does not run by default (developer only, too cpu intensive)
revision 1.51 2009-03-28 10:00 (UTC)
- fixed behavior of [-and => ... ] depending on the current
condition scope. This introduces backwards comp with 1.24
Approved by MAINTAINER.
Pkgsrc changes:
- Adjust dependencies
- Prevent installation of a temporary file included in the upstream
tarball
Upstream changes:
revision 1.50 2009-03-10 12:30 (UTC)
- fixed the problem with values() not behaving the same as the rest of the code (RT#43483)
- fixed interjecting arrayrefref into a where clause
- added value-only insert test with a literal SQL snippet
- cleanup and enhancement of t/03values.t
- better handling of borked SQL in tests
- deal properly with parentheses in is_same_sql_bind()
- fixed test subs (is_same_*) in SQL::Abstract::Test to return the correct test value
- do not version MANIFEST
Version 1.50 was a major internal refactoring of SQL::Abstract.
Great care has been taken to preserve the published behavior
documented in previous versions in the 1.* family; however,
some features that were previously undocumented, or behaved.
differently from the documentation, had to be changed in order
to clarify the semantics. Hence, client code that was relying
on some dark areas of SQL::Abstract v1.* might behave differently
in v1.50.
----------------------------
revision 1.49_04 2009-03-03
- add support for a [\%column_meta => value] bind value format
----------------------------
revision 1.49_03 2009-02-17
- clarify syntax of \['...', @bind] when used with a bindtype
of 'columns'
----------------------------
revision 1.49_02 2009-02-16
- added an AST-aware SQL::Abstract::Test library for sql syntax tests
- vastly expanded test coverage
- support for the { operator => \'...'|\['...', @bind] } syntax
allowing to embed arbitrary operators on the LHS
- fixed multiple regressions wrt DBIx::Class
----------------------------
revision 1.49_01 2009-02-11
- support for literal SQL through the [$sql, bind] syntax.
- added -nest1, -nest2 or -nest_1, -nest_2, ...
- optional support for array datatypes
- defensive programming : check arguments to functions/methods
- fixed bug with global logic of -and/-or (no side-effects any more)
- changed logic for distributing an op over arrayrefs
- fixed semantics of _bindtype on array args
- dropped the _anoncopy of the %where tree. No longer necessary.
- dropped the _modlogic function
- Make col => [] and col => {$op => [] } DTRT or die instead of generating
broken SQL. Added tests for this.
- Added { -desc => 'column' } order by support
- Tiny "$_"-related fix for { -desc => 'columns'} order by support
tests + docs
to trigger/signal a rebuild for the transition 5.8.8 -> 5.10.0.
The list of packages is computed by finding all packages which end
up having either of PERL5_USE_PACKLIST, BUILDLINK_API_DEPENDS.perl,
or PERL5_PACKLIST defined in their make setup (tested via
"make show-vars VARNAMES=...").
1.24 2008-07-09
- Ripped out all 1.23 changes
- Re-releasing 1.22 with DBIx::Class as maintainer
1.23 ????-??-??
1) Large patch by Laurent Dami to add all of the
following functionality:
- support for nested subqueries (see the doc for explanations)
- +/- prefixes in C<@order> columns, meaning 'ASC' or 'DESC'
- documentation :
- added an explanation about flexibility of argument types
(passing scalars instead of hashrefs/arrayrefs)
- added an example of a boolean column (through ref to empty
string)
- mentioned that select() can take an arrayref of tables
- added explanation of +/- prefixes in C<@order>
- WHERE section structured into subsections
- new subsection for nested queries
- suppressed the NOTES section about Morgan laws, because
subqueries provide support for compound logic statements.
These changes enable additional functionality in DBIx::DataModel
as well.
2) Patch by Robbie Bow to enable "quote_char" to take
an array ref. This fixes an issue to MS SQL Server,
since it requires that columns and tables be quoted with
surrounding [square brackets]
3) Patch by Norbert BUCHMULLER to enable the use of
the old-school-SQL operator for not-equal ('<>')
could be used for the 'IS NOT NULL' expression:
foo => { '<>' => undef }
This now properly generates:
foo IS NOT NULL
1.22 changes unknown (1.22 changelog empty)
Description:
This module was inspired by the excellent the DBIx::Abstract manpage.
However, in using that module I found that what I really wanted to do
was generate SQL, but still retain complete control over my statement
handles and use the DBI interface. So, I set out to create an abstract
SQL generation module.