The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
0.65 (01.27.2006) - John Siracusa <siracusa@mindspring.com>

    * More MySQL 5 bitfield fixes.  (Reported by Svilen Ivanov)
      Important note: if you are using MySQL 5.0.3 or later and you
      have one or more BIT columns in a given table, you MUST call
      meta->allow_inline_column_values(1) when setting up the 
      Rose::DB::Object-derived class that fronts the table.
    * Added missing "use ..." statements to the code generated by
      perl_class_definition().
    * Fixed a bug that prevented certain kinds of self-referential
      relationships from being initialized properly.  (Reported by
      Bruno Czekay)

0.64 (01.19.2006) - John Siracusa <siracusa@mindspring.com>

    * Worked around yet more SQLite ORDER BY bugs.
    * Improved the column trigger implementation.
    * Added support for MySQL 5's brain-dead new BIT column type.  Classes
      must allow_inline_column_values(1) to use it due to the inability of
      DBD::mysql to bind BIT values correctly without explicit calls to
      DBI's bind_param() method.
    * Use alternate strategies for extracting foreign key information from
      MySQL 5 because the old way no longer works reliably.

0.63 (01.15.2006) - John Siracusa <siracusa@mindspring.com>

    * Made the with_map_records Manager argument work in the
      manager_args list for relationships.
    * Added the generate_manager_class_name() method to the loader.
    * Added the auto_manager_class_name() method to convention manager, 
      and made the loader delegate to it.

0.62 (01.06.2006) - John Siracusa <siracusa@mindspring.com>

    * Fixed a make_modules() bug that caused incorrect init_db() methods
      to be created in some cases.  (Reported by Sean Davis)

0.61 (01.05.2006) - John Siracusa <siracusa@mindspring.com>

    * Added "select" parameter to the Manager which accetps an explicit
      list of columns to be selected.
    * It's now possible to filter based on columns that are not selected
      as part of a Manager query.
    * Extra parameters can now be passed to the method created by
      make_manager_method_from_sql()
    * Fixed several bitfield column accessor method bugs.  (Reported by 
      Svilen Ivanov)
    * The loader's make_modules() method now correctly creates *.pm files
      for auto-generated base classes.  (Reported by Sean Davis)

0.601 (01.01.2006) - John Siracusa <siracusa@mindspring.com>

    * Fixed some incorrect deep join tests.
    * Reduced the number of Postgres database connections used in the test
      suite in order to avoid hitting Postgres's default connection limit.
    * Fixed the DBI benchmark tests broken by the last release.
    * Uncommented some sections of the benchmark script that were
      accidentally left commented-out in the last release.

0.60 (12.31.2005) - John Siracusa <siracusa@mindspring.com>

    * Added arbitrary-depth auto-joins to the Manager using a "dot-chained"
      syntax (e.g., vendor.regions.code)
    * Added make_modules() method to the loader.
    * Added pre_init_hook() method to metadata objects and the loader.
    * Added overflow attribute to control the behavior when a scalar, 
      character, or varchar column value is too long.  Possible values
      are "fatal" (the default), "truncate", and "warn".
    * Serial columns are now detected correctly even when DBI returns a 
      column type of integer or bigint.  (Reported by Cees Hek)
    * Added support for bigserial columns.
    * Enum columns now have their list of valid values printed correctly
      by the perl_hash_definition() method.  (Reported by Juan Camacho)      
    * Fixed a bug that caused the loader to trip over mixed-case unique 
      keys in MySQL databases. (Reported by Juan Camacho)
    * Force MDY dates in Postgres in the test suite, just in case the user
      has European dates configured.  (Reported by Cees Hek)
    * Fixed numerous Postgres 7.x bugs.  (Reported by Cees Hek)
    * Modified the benchmark suite to further confine each module to its
      own private set of database rows in order to eliminate the influence
      of run order during the tests.
    * Worked around SQLite ORDER BY bugs in order to make the test suite
      function correctly.

0.59 (12.19.2005) - John Siracusa <siracusa@mindspring.com>

    * Added in_array, any_in_array, and all_in_array query operators
      for filtering on Postgres array columns.
    * Fixed a bug that caused certain method overrides to fail when
      using a custom metadata class with the auto-initialize feature.
      (Reported by Svilen Ivanov)

0.58 (12.16.2005) - John Siracusa <siracusa@mindspring.com>

    * Added auto-detection of multiple sequence-based primary 
      key columns and primary keys with one or more non-sequence-
      based columns.
    * Added support for schema and catalog overrides.
    * Added tests for db migration with forced and default schemas,
      multiple sequence-based primary key columns, and primary keys
      with one or more non-sequence-based columns, migrating to and
      from databases with and without sequence support.  (Whew!)
    * Added a summary of the default conventions to the 
      Rose::DB::Object::ConventionManager documentation.

0.57 (12.04.2005) - John Siracusa <siracusa@mindspring.com>

    * Fixed broken custom convention manager support in the loader.

0.56 (12.03.2005) - John Siracusa <siracusa@mindspring.com>

    * Updated required Rose::DB version.  The 0.55 release was incorrect.

0.55 (12.03.2005) - John Siracusa <siracusa@mindspring.com>

    * Added get_objects_from_sql() and make_manager_method_from_sql()
      Manager methods.
    * Made the use of prepare_cached() optional everywhere.  It's on
      by default in Rose::DB::Object, but off by default in Manager.
      Class data determines the defaults.
    * Added enum column type.

0.54 (11.30.2005) - John Siracusa <siracusa@mindspring.com>

    * Added SQLite support.
    * Improved auto-detection of primary key sequence names.
    * Made primary key sequence names configurable.
    * Added the "with_map_records" Manager parameter used to fetch map
      records when auto-joining through a "many to many" relationship.
    * Fixed a bug in the MySQL foreign key auto-init system.
      (Reported by Bernhard Graf)
    * Fixed a bug in the column type class customization system that
      caused it to fail when combined with auto-initialization.
      (Reported by Bernhard Graf)
    * DBI 1.40 or later is now required.

0.53 (11.22.2005) - John Siracusa <siracusa@mindspring.com>

    * Improved handling of table and column names that use 
      reserved words.

0.52 (11.21.2005) - John Siracusa <siracusa@mindspring.com>

    * Fixed bugs in loader when using a DSN instead of a db.

0.51 (11.20.2005) - John Siracusa <siracusa@mindspring.com>

    * Added auto-initialization of relationships.
    * Added loader.

0.50 (11.17.2005) - John Siracusa <siracusa@mindspring.com>

    * Added optional lazy-loading of column values.
    * Long-overdue version number bump.

0.081 (11.15.2005) - John Siracusa <siracusa@mindspring.com>

    * Tutorial added.

0.080 (11.14.2005) - John Siracusa <siracusa@mindspring.com>

    * Added column triggers for get, set, load, save, inflate, and deflate.
    * Added support for new argument types to relationship methods.
    * Added a named, configurable map for convention manager classes.
    * Added perl_manager_class() and make_manager_class() meta methods.
    * Many bug fixes to datetime column methods, cross-database migration,
      and the auto-init system.

0.079 (10.25.2005) - John Siracusa <siracusa@mindspring.com>

    * Fixed bugs that caused auto-inited many-to-many relationships
      to be inadequately fleshed-out under some circumstances.

0.078 (10.24.2005) - John Siracusa <siracusa@mindspring.com>

    * Added page and per_page manager parameters for the truly lazy.
    * Fixed a bug caused by a conflict between the convention manager
      and the legacy foreign key name generator.

0.077 (10.20.2005) - John Siracusa <siracusa@mindspring.com>

    * Added convention manager.
    * Added "distinct" and "fetch_only" manager parameters.
    * Added support for foreign key and relationship names as
      column prefixes in manager query parameters and sort_by
      arguments.
    * Changed manager and query builder to default unprefixed
      ambiguous columns to belong to the primary table ("t1").
    * Fixed a bug that caused make_methods() to fail for "... to one"
      relationships that have no corresponding foreign key.
    * Fixed a bug in QueryBuilder that prevented the ability to check
      for null columns.
    * Added the ability to query columns that are not SELECTed.

0.076 (10.05.2005) - John Siracusa <siracusa@mindspring.com>

    * Fixed a bug that caused incorrect counts in get_objects_count()
      when using the require_object parameter with "... to many" 
      relationships.
    * Added bulk update and delete methods to Manager.
    * Added cascaded delete, plus a plea in the documentation for users
      to do this in the database instead.
    * Added "many to one" relationship and made it the new default
      relationship type for foreign keys.
    * Added *_now and *_on_save method types for foreign keys and
      "... to one" relationships.
    * Made get_set_on_save and delete_on_save the default auto method 
      types for foreign keys and "... to one" relationships.
    * load() now returns the object itself on success, which allows
      for the convenient $obj = MyObject->new(id => 123)->load;
    * save() now returns the object itself on success, which allows
      for the convenient $obj = MyObject->new(id => 123)->save;

0.075 (09.19.2005) - John Siracusa <siracusa@mindspring.com>

    * Added support for "many to many" relationships to Manager's
      "with_objects" and "require_objects" parameters.
    * Corrected a bug that could cause missing sub-objects when
      using the Manager's "with_objects" and "require_objects" 
      parameters.
    * Added warning for doing multiple LEFT OUTER JOINs that could
      cause a geometric explosion of redundant rows.
    * Added the "multi_many_ok" parameter to Manager to suppress 
      the warning described above.
    * Forced inner joins when fetching foreign keys that have
      key columns that are all NOT NULL.
    * Added a few more sanity checks to class setup which, in turn,
      helped me to find and fix a few bugs in the test suite.

0.074 (09.15.2005) - John Siracusa <siracusa@mindspring.com>

    * Repurposed the "with_objects" Manager parameter to do explicit
      LEFT OUTER JOINs instead of implicit inner joins.
    * Added "require_objects" Manager parameter to fill the old role of
      the "with_objects" parameter.
    * Documented new restrictions associated with the more sensible
      "with_objects" and "require_objects" parameters.
    * Added *_sql comparison operators to QueryBuilder, allowing inline
      SQL.  (Requested by Uwe Voelker.)
    * Removed restriction on aliasing primary key columns.
    * Fixed bug in Manager that caused fetched objects to be inserted 
      instead of updated on save().  (Reported by Uwe Voelker.)
    * Corrected a misspelled method name in Rose::DB::Object::Cached.
      (Reported by David Glass)
    * Updated benchmark suite to include "one to many" search tests.

0.073 (09.09.2005) - John Siracusa <siracusa@mindspring.com>

    * Added deferred method creation for relationships and foreign
      keys in order to make "many to many" relationship setup more
      developer-friendly.
    * Renamed default auto-method type for foreign keys and relationships
      from "get" to "get_set", since technically these foreign objects
      can be set.  They just don't go into the database at that point.
      I'll probably use a different term for that process (e.g., "add")
    * Some POD and test fixes.

0.0721 (09.08.2005) - John Siracusa <siracusa@mindspring.com>

    * Fixed incorrect method names in Numeric column type.
    * Added tests to prevent the above error in the future.

0.072 (08.31.2005) - John Siracusa <siracusa@mindspring.com>

    * Added "get" and "set" interfaces to all default column method makers.
    * More POD fixes.

0.071 (08.30.2005) - John Siracusa <siracusa@mindspring.com>

    * POD fixes.

0.07 (08.30.2005) - John Siracusa <siracusa@mindspring.com>

    * Added rudimentary "many to many" relationship support.
    * Restructured method-making system to support extensible method
      types for each kind of thing that makes methods.
    * Added "get" and "set" interfaces to the scalar method maker.

0.0692 (08.20.2005) - John Siracusa <siracusa@mindspring.com>

    * POD fixes.

0.069 (08.20.2005) - John Siracusa <siracusa@mindspring.com>

    * Whoops, fixed manifest to repair a botched 0.068 release.

0.068 (08.19.2005) - John Siracusa <siracusa@mindspring.com>

    * Enabled multiple joins with the same table in the manager,
      provided that each occurrence of multi-joined table has the
      same Rose::DB::Object class fronting it.
    * Added support for the "alias" parameter to hash-style column
      definitions.
    * Added "relationship" objects.
    * Fixed a bug that caused nearly everything to fail if a 
      column_name_to_method_name_mapper was used.
    * Moved some class methods out of the object methods section of the
      documentation, where they shouldn't have been in the first place.

0.0671 (08.15.2005) - John Siracusa <siracusa@mindspring.com>

    * Fixed more MySQL case sensitivity bugs.  (Thanks Uwe!)
    * Changed objects_by_key query_args parameter to be an array ref
      instead of a hash ref to match the manager change from long ago.
    * Updated makemethods.t to use MySQL if Postgres is not available.

0.067 (08.14.2005) - John Siracusa <siracusa@mindspring.com>

    * Fixed more MySQL bugs related to foreign keys, timestamps,
      and boolean support in MySQL 4.0.x.

0.066 (08.12.2005) - John Siracusa <siracusa@mindspring.com>

    * Fixed MySQL case-sensitivity bug.
    * Added case-sensitivity tests for Postgres and MySQL.
    * Added accessor, delete, and search with limit and offset benchmarks.

0.0651 (08.11.2005) - John Siracusa <siracusa@mindspring.com>

    * Moved benchmarks into test directory in an attempt to
      get search.cpan.org to ignore them.

0.065 (08.11.2005) - John Siracusa <siracusa@mindspring.com>

    * Improved the efficiency of manager classes.
    * Added benchmark suite.
    * More POD fixes.

0.064 (08.09.2005) - John Siracusa <siracusa@mindspring.com>

    * Duh, forgot the table name and initialize() call in 
      perl_class_definition().

0.063 (08.09.2005) - John Siracusa <siracusa@mindspring.com>

    * Added foreign key auto-initialization for Informix.

0.062 (08.08.2005) - John Siracusa <siracusa@mindspring.com>

    * Changed default error mode to "fatal" for manager class too.

0.061 (08.07.2005) - John Siracusa <siracusa@mindspring.com>

    * Added foreign key auto-initialization for MySQL.

0.06 (08.05.2005) - John Siracusa <siracusa@mindspring.com>

    * Added auto-initialization (finally).
    * Plumped-up unique and primary keys into objects.
    * Changed default error mode to "fatal"
    * Made substantial additions to the documentation.

0.052 (07.22.2005) - John Siracusa <siracusa@mindspring.com>

    * Added make_manager_methods() to Rose::DB::Object::Manager.
    * Corrected Rose::DB::Object::Manager POD.

0.052 (07.22.2005) - John Siracusa <siracusa@mindspring.com>

    * Added make_manager_methods() to Rose::DB::Object::Manager.
    * Corrected Rose::DB::Object::Manager POD.

0.051 (06.22.2005) - John Siracusa <siracusa@mindspring.com>

    * Added abstracted offset parameter to object manager.

0.05 (06.16.2005) - John Siracusa <siracusa@mindspring.com>

    * Moved object cache management further into the metadata object.
    * Enabled auto-generated primary key values for Rose::DB::Object
      objects used with the PostgreSQL database.

0.043 (06.16.2005) - John Siracusa <siracusa@mindspring.com>

    * Added time-based expiration to Rose::DB::Object::Cached.
    * Added catalog attribute to metadata objects.

0.042 (05.04.2005) - John Siracusa <siracusa@mindspring.com>

    * Added not_null attribute to column metadata objects.
    * Removed use of prepare_cached() because it can't be used
      across transactions in Informix.  Duh.

0.041 (04.22.2005) - John Siracusa <siracusa@mindspring.com>

    * Corrected typo in DatetimeYearToSecond column class.
      (Still need to add tests for those column types...)
    * Added skip_first parameter to get_object_iterator().
    * Added fix to avoid trying to format or truncate undefined 
      dates in datetime columns.

0.04 (04.01.2005) - John Siracusa <siracusa@mindspring.com>

    * Refactored column value parsing.  No, really.

0.031 (03.27.2005) - John Siracusa <siracusa@mindspring.com>

    * Corrected typos and errors in the documentation.

0.03 (03.27.2005) - John Siracusa <siracusa@mindspring.com>

    * Added error_mode methods.
0.023 (03.25.2005) - John Siracusa <siracusa@mindspring.com>

    * Added prepare_*_options (undocumented for now).

0.022 (03.18.2005) - John Siracusa <siracusa@mindspring.com>

    * Fixed POD error that was throwing off search.cpan.org.

0.021 (03.17.2005) - John Siracusa <siracusa@mindspring.com>

    * Added documentation for the "pretty" parameter to build_select()
    * Added support for column value inlining in build_select()

0.02 (03.17.2005) - John Siracusa <siracusa@mindspring.com>

    * Added support for nested boolean logic in queries.

0.013 (03.11.2005) - John Siracusa <siracusa@mindspring.com>

    * Fixed bug in Rose::DB::Object::Std::Metadata that caused the
      number of primary key columns to appear to be zero.

0.012 (03.10.2005) - John Siracusa <siracusa@mindspring.com>

    * Add tests for aliased unique key fix and primary key aliasing.
      Documented constraints on column aliasing.  Fixed version
      numbers in this file.  Deleted version 0.011.

0.011 (03.09.2005) - John Siracusa <siracusa@mindspring.com>

    * Well that was quick.  Fixed copy and paste error that caused
      a failure to load using an aliased unique key column.  Deleted
      version 0.10.

0.01 (03.09.2005) - John Siracusa <siracusa@mindspring.com>

    * Initial release.