Matthew Simon Cavalletto


DBIx::SQLEngine::Docs::Changes - Revision history for DBIx::SQLEngine.


Version 0.026

2004-04-16 Released as DBIx-SQLEngine-0.026.

2004-04-15 Added subclasses to Driver::Mysql for various versions.

2004-04-15 Added Driver::Sybase and Driver::Sybase::MSSQL.

2004-04-15 Added Driver::Trait::DatabaseFlavors, Driver::Trait::NoPlaceholders.

2004-04-15 Minor bits of documentation cleanup.

2004-04-14 Fixed missing import of clone_with_parameters for interpret_named_connection(); thanks to Ron Savage for the bug report.

2004-04-14 Documentation fixes in Record::Trait::Cache POD.

2004-04-14 Added new makefile targets for development convenience; the following are now all supported:

  make everything    - clean build with testsuite 
  make again         - rebuilds Makefile and blib
  make cleandist     - clean build with manifest, docs, and dist 
  make cleanmanifest - rebuilds MANIFEST
  make docs          - runs pod2text on SQLEngine/Docs/*.pod files
  make compile       - makes sure that all of the modules compile
  make testsuite     - runs tests against multiple data sources
  make t/*.t         - runs whichever test scripts you name
  make cover         - runs testsuite under Devel::Cover with report

Version 0.025

2004-04-14 Released as DBIx-SQLEngine-0.025.

2004-04-14 Fixed undocumented (and un-necessary) dependency on String::Escape in Record::Trait::Cache which was causing a test failure. Thanks to the folks running automated cpan smokers, which caught this a few hours after I posted it.

Version 0.024

2004-04-14 Released as DBIx-SQLEngine-0.024.

2004-04-13 Fixed support for literal SQL in Schema::Table, Record::Trait::Cache.

2004-04-13 Added a few more methods to Record::Trait::Extras for compatibility with older DBO classes.

2004-04-11 Fixed a few problems in Record::Trait::Cache and Cache::TrivialCache. Added initial test script for record caching.

Version 0.023

2004-04-10 Released as DBIx-SQLEngine-0.023.

2004-04-10 Added feature matrix to Docs::Related. Added Docs::Comparison.

2004-04-10 Fixed test crasher in visit_select for Driver::Trait::NoUnions.

Version 0.022

2004-04-09 Released as DBIx-SQLEngine-0.022.

2004-04-09 Merged many methods from DBIx::DBO2::RecordSet into Record::Set.

2004-04-09 Added Record::Trait::Accessors and increased the minimum version of Class::MakeMethods to 1.006 to get the Autoload interface it uses.

2004-04-09 Added Record::Trait::Cached based on DBIx::DBO2::Record::Cached. Added cache packages DBIx::SQLEngine::Cache::TrivialCache and DBIx::SQLEngine::Cache::BasicCache.

2004-04-09 Added Record::Trait::Hooks based on DBIx::DBO2::Record and built a few tests.

2004-04-09 Initial working support for multiply-combinable Record class traits. Moved traits into nested namespaces Driver::Trait and Record::Trait.

2004-04-09 Revised synopsis and description to include more recent features.

2004-04-09 Added support for sql_select( columns => \%colnames_as_aliases ) and sql_select( tables => { "table1.column1" => "table2.column2" } ), both inspired by the interface described in the Sql::Simple documentation.

2004-04-08 Fixed tight loop detection (self-reference) in CloneWithParameters.

2004-04-06 Beginning support for multiply-combinable Record class traits.

Version 0.021

2004-04-05 Released as DBIx-SQLEngine-0.021.

2004-04-05 Doc adjustments. Additional work on Record classes.

Version 0.020

2004-04-05 Released as DBIx-SQLEngine-0.020.

2004-04-05 Added initial Row classes.

2004-04-04 Added named_connection interface.

2004-04-04 Migrated clone function to new Utility::CloneWithParams package. Generalized string substitution. Added more tests and documentation.

2004-04-04 Renamed Mixin::* packages to DriverTrait::*.

2004-04-04 Added "where" as a synonym for "criteria" in sql_* methods and changed documentation to use it instead. Added "distinct" support to sql_select.

Version 0.019

2004-04-04 Released as DBIx-SQLEngine-0.019.

2004-04-03 Added initial support for constructing complex joins and Mixin::NoComplexJoins to provide emulation for the simplest inside joins.

2004-04-03 Added Mixin::NoUnions to provide emulation of unions where needed.

2004-04-02 Added initial support for selects with unions.

Version 0.018

2004-03-30 Released as DBIx-SQLEngine-0.018.

2004-03-30 Fixed sequential type in Driver::SQLite to say "integer" not "int".

2004-03-30 Removed driver for DBD::File, which isn't intended to be used directly.

2004-03-30 Changed Criteria::HashGroup to asciibetically sort the hash keys, so that criteria are predictable for testing and better statement handle caching.

2004-03-26 Fixed Mixin::SeqTable's seq_fetch_current, which returned undef due to scope confusion with return inside an eval block.

2004-03-26 Minor cleanup to Schema::Table to improve documentation.

2004-03-26 Fixed Schema::Column's new_from_hash() and type() methods.

Version 0.017

2004-03-26 Released as DBIx-SQLEngine-0.017.

2004-03-26 Fixed parens in Oracle's sql_limit, with apologies to Michael Kroll.

2004-03-25 Brough Schema::Table up to workable condition and added basic tests.

2004-03-25 Added simple last_query method to NullP for faster testing.

2004-03-23 Added fetch_select_rows() and visit_select_rows().

2004-03-23 Re-ordered a few chunks of code so that the POD pages are clearer.

Version 0.016

2004-03-23 Released as DBIx-SQLEngine-0.016.

2004-03-23 Fixed files missing from manifest.

Version 0.015

2004-03-22 Released as DBIx-SQLEngine-0.015.

2004-03-22 Added some database capability methods inspired by DBIx::Compat.

2004-03-22 Added create_ and drop_index methods inspired by DBIx::Renderer.

2004-03-22 Added create_ and drop_database methods inspired by DBIx::DataSource.

2004-03-22 Removed do_ prefix from create_ and drop_table methods, with aliases for backwards compatibility.

2004-03-22 Added initial interface for DBMS stored procedures.

2004-03-22 Added NullP subclass and null.t test with basic SQL generation and named query tests.

2004-03-22 Added named_query interface to support libraries of named queries.

2004-03-22 Added visit_sql_rows.

2004-03-22 Applied patch to Driver::Oracle's sql_limit() from Michael Kroll.

2004-03-22 Incorporated support for mixing explicit SQL and additional criteria by having sql_where() splice them together, based on a patch from Michael Kroll.

Version 0.014

2004-03-14 Released as DBIx-SQLEngine-0.014.

2004-03-13 Fixed spacing problem for long column names in sql_create_columns, curtesy of a patch from Ron Savage.

2004-03-13 Ported schema classes from DBO2 to DBIx::SQLEngine::Schema namespace. These are not yet in use, but will be supported through additions to the SQLEngine interface in upcoming versions in a way that should not break any existing code.

Version 0.013

2004-03-12 Released as DBIx-SQLEngine-0.013.

2004-03-12 Fixed another minor POD error.

Version 0.012

2004-03-11 Released as DBIx-SQLEngine-0.012.

2004-03-11 Fixed several minor POD errors. Adjusted checking of wantarray to preserve its value across eval{} boudaries.

Version 0.011

2004-03-10 Released as DBIx-SQLEngine-0.011.

2004-03-10 Moved driver-specific subclasses to a new Driver:: namespace and added documentation to each of them. The external public interface is identical, but this may break naughty code that checked ref() or isa(); however the fix is straightforward and this keeps our namespaces clearer. If your code was negatively impacted by this, let me know for future reference!

2004-02-24 Integrated some patches from Michael Kroll, including new Oracle subclass, and created a new Criteria::StringComparison class as an alternate way of addressing an issue raised in email.

Version 0.010

2003-09-07 Released as DBIx-SQLEngine-0.010.

Version 0.009

2003-02-02 Released as DBIx-SQLEngine-0.009.

2003-02-02 Merged the "Default" class used by AnyDBD into base class via stash aliasing, simplifying documentation.

Version 0.008

2002-11-02 Released as DBIx-SQLEngine-0.008.

2002-11-02 Added basic subclass for MSSQL.

2002-11-02 Added "is null" support based on patches from Michael Kroll at University of Innsbruck.

2002-11-02 Added some introductory documentation to Criteria::Comparison.

2002-11-02 For compatibility with the CPAN installer and automated testing tools, the Makefile.PL now suggests that you set your environment's DBI_DSN, rather than prompting you to enter it interactively in

2002-11-02 Refactored test script into several separate files.

2002-11-02 Added initial basic transaction support.

Version 0.007

2002-05-24 Minor error-handling improvements.

2002-05-24 Collect and return the results from visit_* methods.

2002-05-24 Added DBIx::SQLEngine::Criteria::Not, contributed by Christian Glahn at University of Innsbruck.

2002-04-10 Added "fetch without execute" to the catch_query_exception handler for MySQL and Pg.

Version 0.006

2002-03-23 Released as DBIx-SQLEngine-0.006.

2002-03-23 Added basic support for passing SQL functions and expressions to SQLEngine::Default and SQLEngine::Critera::Comparison in a way that allows them to be used directly, rather than being treated as literals and bound to placeholders.

2002-03-01 Fixed syntax errors in MySQL subclass. Fixed suspected Perl-version dependency (return from inside eval) in Default detect_any.

Version 0.005

2002-03-01 Released as DBIx-SQLEngine-0.005.

2002-02-19 Simon: Added Pg catch_query_exception REDO for "out of range 0..-1". I don't know what this error means but it always seems to succeed when we retry.

2002-02-10 Simon: Modified format of error messages in

2002-02-02 Eliminated complaint about empty subclauses in Criteria::Compound

2002-01-31 Extracted Default sql_* criteria handling into DBIx::SQLEngine::Criteria->auto* methods.

2002-01-31 Added catch_query_exception to Pg subclass for automatic reconnection.

2002-01-31 Created new Criteria::LiteralSQL package. Remove redundant parentheses around single-item list in Criteria::Compound.

Version 0.004

2002-01-30 Released as DBIx-SQLEngine-0.004.

2002-01-30 Expanded Pg subclass. Fixed Default's type_info handling to not fall over when a type has multiple info hashes (needed for Pg). Adjusted error handling to call $sth->finish() if there's an exception after we prepare but before we complete retrieving the results.

2002-01-27 Filled out documentation, especially of the public interface in Added skeletal Pg subclass.

Version 0.003

2002-01-25 Released as DBIx-SQLEngine-0.003

2002-01-21 Fixed AnyData sql_create_column_text_long_type.

2002-01-20 Fixed typo in sql_drop_table. Added detect_any and detect_table methods.

2002-01-15 Improvements to sql_create_table to support primary key declarations. Completed DBIx::SQLEngine::Mixin::SeqTable. Added DBIx::SQLEngine::CSV.

2002-01-14 Added initial version of DBIx::SQLEngine::Mixin::SeqTable.

2002-01-14 Fixed bug in test script; user and password were not used! (Bug report from Terrence Brannon.)

Version 0.002

2002-01-14 Released as DBIx-SQLEngine-0.002

2002-01-13 Fixed logging scope errors. Filled in several mising chunks of documentation. Makefile.PL touchups for distribution.

2001-12-01 Separated from object-relational mapping functionality. Moved to DBIx::SQLEngine namespace.

2001-11-30 Began adjusting namespace for CPAN distribution. Fixed use of AnyDBD to not require non-standard patch.

Version 0.001

2001-06-28 Use DBIx::AnyDBD for platform-specific issues. Moved SQL-generation code from Table to SQLEngine.

2001-06-28 Ported some Criteria classes from earlier code into the new SQLEngine class hierarchy.

2001-06-27 New version moved into separate DBIx::DBO2 namespace. Renamed Adaptor to SQLEngine. Flattened class hierarchy; we're only going to support DBI. Expunged old code. Switched to new Class::MakeMethods distribution.



2001-02-14 Reversed boolean sense of 'nullable' to 'required'.

2001-01-29 Fixed code to detect length and nullable column information.

2001-01-29 Added boolean required to store whether column is nullable.

2001-01-13 Added retry on "Lost connection to MySQL" errors

2000-12-22 Added new_with_contents constructor to Criteria::Compound.

2000-11-29 Switched to use of Class::MethodMaker 2.0 features.

2000-03-31 Added SQL-string to execution failure.

2000-03-03 Adjusted clear_connection.

1999-08-18 Added MySQL tinyint column code

1999-07-27 Added use of DBO::Column package.

1999-04-21 Added explicit disconnect if existing connection's ping fails.

1999-04-05 Added reconnect if can't ping server behaviour; add'l type codes

1998-12-08 Cleanup of logging.

1998-12-08 Added parameter handling and on-demand class loading.

1998-11-01 Changed importing style for Class::MethodMaker.

1998-10-05 Revised. Rewrote POD.

1998-05-09 Moved connection behaviour from SQL Table into Adaptor classes.

1998-03-16 DBAdaptor package (and subpackages) renamed to DBO::Table.

1997-11-18 Simon: Updated to current practice.


1997-09-24 IntraNetics97 Version 1.00.000

1997-08-20 Eric: Extracted DBAdaptor class from prior code.