Changes for version 1.03
- 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 _isa_committing_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.
Modules
talks to your database and gives you a few helper database methods.
A non transactional database driver.
used to define database tables, ways to load that data into memory and build queries based upon the table information
used to define virtual views to your objects.
Logger object. Writes things to files.
used to state machines
used to create machine states.
used to notify other objects of interesting things
used to create objects
used to read conf files
subclass of Basset::Object that allows objects to be easily stored into a relational database. Presently only supports MySQL, but that may change in the future.
my templating system
Provides
in lib/Basset/Container/Hash.pm
in lib/Basset/Test.pm
in lib/Basset/Test/More.pm
in lib/Basset/Test.pm