NOTE: do not merge this file but DELETE IT on merge New in this branch: * Converted test cases to use SQL::Abstract::Test if available. * created DBIC::SqlMakerTest and DBIC::DebugObj helper modules * that way the number of extra parens does not matter * test cases still pass with SQLA 1.24, but also with 1.50RC * those tests that make no sense with older SQLA are skipped * Added dependency for Test::Deep (used when emulating SQL::Abstract::Test::eq_bind when SQLA is older than 1.50) * Removed a wrong TODO test: 95sql_maker_quote.t/"order_by with quoting needs fixing (ash/castaway)" * it never passed and never will (SQLA should not parse the strings in order_by) * asked by mst * Made a TODO test non-TODO: 95sql_maker_quote.t/"select attr with star needs fixing (mst/nate)" * this works with SQLA 1.50 * Removed dead code from DBI::Class::Storage::DBI (sub _RowNumberOver). * neither DBIC, nor SQLA, nor SQLA::Limit uses this (in any version supported by DBIC) * Added test cases for every supported order_by syntax. * Made DBIC::SQL::Abstract pass on order_by hashref ({-desc => 'colname'}) to SQL::Abstract. * this is the blessed way of doing order by * new SQLA supports it * formerly DBIC considered this as an error * Documented using order_by hashref in DBIx::Class::ResultSet. * Added test cases to test if arrayref bind values in insert/update are passed through sql_maker intact. * Added test cases to test if arrayref bind values work with a PostgreSQL array type. * Added 'array_datatypes' parameter to the sql_maker constructor. * formerly SQLA considered these as literal SQL with bind values, now that is \['literal SQL', @bind] * the new syntax is consistent (works the same in insert/update and where conditions) * fortunately 'array_datatypes' was simply ignored by old SQLA (at least with current version..) * DBD::Pg can use arrayref bind values for PostgreSQL array types * Documented using PostgreSQL arrays (in Cookbook). * Fixed/improved a few skip and diag messages.