Revision history for SQL::Abstract
+1.86 - 2018-07-09
+ - Remove obsolete documentation about arrayrefref as the $source
+ argument for ->select (removed in version 1.74)
+ - Factor out the field list part of SELECT for subclassability (GH#13)
+ - Do not replace literal '0' with empty string in WHERE clauses (GH#14)
+
+1.85 - 2018-01-27
+ - Restore perl version requirement missed in the Distar port
+ - Factor out the SET ... part of UPDATE for subclassability (GH#12)
+
+1.84 - 2017-04-03
+ - Restore 'dynamic_config => 0' missed in the Distar port
+
+1.83 - 2017-04-03
+ - Support for DELETE ... RETURNING (GH#9)
+ - Port to Distar
+
+revision 1.82 2017-03-20
+-------------------------
+ - Add explicit dependency on Sub::Quote (GH#8)
+ - Fix syntax errors in ORDER BY docs (GH#7)
+
+revision 1.81_01 2017-02-28
+----------------------------
+ - Fix order clauses with bind parameters in ->where
+ - Fix ->insert($table, \@values) with >26 values (RT#112684)
+ - Teach ::Tree that ILIKE (PostgreSQL) and REGEXP (MySQL) are binary ops
+ - Support for UPDATE ... RETURNING
+ - Documentation improvements for ORDER BY
+
+revision 1.81 2014-10-25
+----------------------------
+ - Fix overly-enthusiastic parenthesis unroller (RT#99503)
+
+revision 1.80 2014-10-05
+----------------------------
+ - Fix erroneous behavior of is_literal_value($) wrt { -ident => ... }
+ - Explicitly croak on top-level special ops (they didn't work anyway)
+
+revision 1.79 2014-09-25
+----------------------------
+ - New exportable functions: is_literal_value($) and is_plain_value($)
+ - New attribute 'escape_char' allowing for proper escape of quote_chars
+ present in an identifier
+ - Deprecate { "" => \... } constructs
+ - Treat { -value => undef } as plain undef in all cases
+ - Explicitly throw on { -ident => undef }
+
+revision 1.78 2014-05-28
+----------------------------
+ - Fix parsing of binary ops to correctly take up only a single LHS
+ element, instead of gobbling up the entire parse-to-date
+ - Explicitly handle ROW_NUMBER() OVER as the snowflake-operator it is
+ - Improve signatures/documentation of is_same_sql_bind / eq_sql_bind
+ - Retire script/format-sql - the utility needs more work to be truly
+ end-user convenient
+
+revision 1.77 2014-01-17
+----------------------------
+ - Reintroduce { -not => undef } column operator (regression from 1.75)
+
+revision 1.75 2013-12-27
+----------------------------
+ - *UPCOMING INCOMPATIBLE BUGFIX*: SQLA used to generate incorrect SQL
+ on undef-containing lists fed to -in and -not_in. An exception will
+ be raised for a while before properly fixing this, to avoid quiet
+ but subtle changes to query results in production
+ - Deprecate and warn when supplying an empty arrayref to like/not_like
+ operators (likely to be removed before 2.0)
+
+ - Warn when using an inequality operator with a multi-value array to
+ arrive at what amounts to a 1=1 condition (no pre-2.0 plans to fix
+ this behavior due to backwards comp concerns)
+ - Fix false negative comparison of ORDER BY <function> ASC
+ - More improvements of incorrect parsing (placeholder at end of list
+ element)
+ - Fix typos in POD and comments (RT#87776)
+ - Augment -not_bool example with nesting (RT#89601)
+
+revision 1.74 2013-06-04
+----------------------------
+ - Fix insufficient parenthesis unroll during operator comparison
+ - 'ORDER BY foo' and 'ORDER BY foo ASC' are now considered equal
+ by default (with a switch to reenable old behavior when necessary)
+ - Change parser to not eagerly slurp RHS expressions it doesn't recognize
+
+revision 1.73 2012-07-10
+----------------------------
+ - Fix parsing of ORDER BY foo + ?
+ - Stop filling in placeholders in `format-sql` since it does not support
+ passing values for them anyway
- Fix parsing of NOT EXISTS
- Fix over-eager parenthesis unrolling
- Fix deep recursion warnings while parsing obnoxiously long sql statements