Revision history for Basset

1.04 06/08/2007

                + Basset::Template
                        - lots of modifications

1.03 04/27/2006

In addition to the usual bug fixes and optimizations and such, this stuff is important:

                + Basset::Object
                        - flipped the precedence on class attributes so that conf values take precedence over passed in values at add.
                        - No longer relies upon import to set default values
                        - added new and improved add_attr syntax
                        - added new and far more efficient accessor methods
                        - added attributes & is_attribute for introspection
                        - can no longer wrapper attributes, only methods
                        - the initializer can now take defaults from an initial hashref. Read the docs for new.
                        - added defaults to the conf file, rendering a default file unnecessary.
                        - made the inherits method obsolete
                        - removed escape_for_html (moved into Basset::Template)
                + Basset::Object::Persistent
                        - ripped out the group syntax (toldja it'd go)
                        - added primary & non primary attributes, which are experimental
                        - removed the on_load and on_commit wrappers and related miscellanea
                        - added the isacommitting_accessor in their place
                        - improved internal definition of uniqueness, useful for objects tied to multiple tables
                        - added the force_arrayref loader flag
                        - iced load_by_user
                + Basset::Machine
                        - properly subclassed from the abstract object type
                        - added the extractor component, and related methods
                + Basset::Object::Conf
                        - read_conf_files now takes key/value pairs
                        - clarifications to the grammar
                + Basset::DB
                        - now disconnects (with a warning!) when a failed transaction ends its way down to an empty stack.
                        - only wipes & disconnects if it has a handle.
                + Basset::Template
                        - updated pod to reflect new default tags
                        - added pipe_flags (yeah, yeah, deviates from pure perl)
                        - templates starting with / now are assumed to sit off the document root.
                        - removed the esape_html flag (use a pipe_flag instead)
                        - you no longer need to populate the default tags in your conf file
                        - now includes escape_for_html ( | h) and escape_for_url ( | u)
                + Basset::DB::Table
                        - now does not create attributes by default.

1.02 05/06/2005

                + Basset::DB
                        - added the recreate_handle method
                + Basset::Object::Persistent
                        - minor optimizations
                        - added a few omitted error codes
                        - newly overriden copy method
                        - fixed a bug where primary columns wouldn't always be aliased
                        - replaced explicit load_all calls with load_where calls
                        - added load_one_where
                        - driver now doesn't ping on the command line, always pings in mod_perl
                + Basset::Object
                        - minor optimizations
                        - inlined classes no longer muck up %INC
                        - pkg_for_type no longer caches
                + Basset::Template
                        - moved the default attribute definitions out of the conf file and into the module.
                          (smaller default conf file, values can still be overridden in conf)
                + Basset::Machine
                        - added
                + Basset::Machine::State
                        - added
1.01    04/20/2005
                + Basset::DB::Table
                        - added attributes_to_create, attributes_not_to_create, create_attributes flags
                        - added omit_columns_from_tables flag to multiselect_query
                        - qualify_name now accepts an array of colum names
                + Basset::Object::Persistent
                        - removed options and methods to cache objects (cache_object flag, etc.)
                        - removed perl_read_translation/perl_write_translation & import_from_db/export_to_db
                          they are replaced with wrappers.
                        - added the on_load_ and on_commit_ methods
                        - Now expects attributes to be populated from Basset::DB::Table objects
                        - cleaned up the relationship and instantiation code
                        - load now uses load_where
                        - load_all can accept the in_query flag.
                        - added the local_driver attribute
                        - has_many will now subclass rlt tables on the fly
                + Basset::Object
                        - exceptions now croak instead of dying (requires Carp)
                        - Now uses Basset::Container::Hash for hashes in trickled class attributes.
                        - New instantiator
                        - Uses an import method to read in class defaults from the conf file
                        - attributes using an internal accessor now use the attribute value itself
                          as the internal key inside the hash.
                        - error now takes a 4th argument to always die with an exception
                        - added wrappers
                        - added the load_pkg method to load up a class
                        - slightly faster initializer
                * minor bug fixes, speed boosts, tweaks

1.00 04/20/2004

Initial public release. More good things to come later.