Thanks to Southwest delaying my 1.5 hour flight to Portland by 2 hours I’ve finally gotten time to package up the latest release of Framework. I jumped ahead to 0.4.0 from the 0.2.x series due to the fact that 0.4.0 isn’t really 100% backwards compatible and because I felt it was a major enough release to skip ahead a number. Lots of bug fixes, features, etc.
The biggest enhancements are that I switched to a pure exception model for error handling. I even went so far to switch the default PEAR_Error handler to throw Framework_Exception’s. Also, as asked by a ton of people I’ve created the ability to change your DB abstraction layers or not use one at all.
I won’t be talking about Framework much here any more, but I did want to mention that I released Framework 0.1.8 and that it’s now installable via my very own PEAR channel at http://pear.joestump.net.
$ pear channel-discover pear.joestump.net
$ pear install --alldeps joestump/Framework
I’ve finally gotten around to creating a home for Framework. I’ve installed Trac, imported the repository into SVN, tagged various releases, etc. Please feel free to submit bugs and write some documentation for me.
This is a fairly major upgrade for the little framework that could. I haven’t stopped developing Framework. Quite the contrary, I’ve been working on it extensively as I’m starting to build sites utilizing it. Other than the extensive changes, fixes, etc. anybody wishing to try this out will be pleasantly surprised that there is now an example document root in the examples.
- Added
Framework_Exception
- Added
Framework_Template for unified templating in modules
- Added
__sleep() and __wakeup() to Framework_Object and Framework_Object_DB
- Added
$this->template->plugins_dir = array('plugins',$path.'/'.'plugins') to Framework_Presenter_Smarty
- Added
Framework_Auth_ACL to handle Access Control Lists based on module/event pairings
- Added
Framework_Request
- Added
Framework_User::__isset()
- Added
Framework_Site_Common::stop() which is ran from Framework::stop() when processing has completed
- Added
config.xml for site configuration data
- Added
Framework_Presenter_JSON which utilizes php-json
- Fixed a bug when creating custom user classes in
Framework_Uset::singleton()
- Fixed how
Framework_User::__construct() detected the userField from Framework_Session
- Fixed misspelled function call in
Framework_User
- Fixed a bug where
Framework_Object was attempting to create a log file before Framework_Site_Common had been created
- Fixed mispelled return code in
Framework::start()
- Fixed a bug where a module’s event was running before the session/user had been authenticated
- Changed
Framework_Presenter_REST to include XML_Serializer options
- Changed all
Exception’s to Framework_Exception
Changed Framework_Object::__construct() to use Framework_Site_Common::$logFile to create instance of PEAR Log in Framework::$log
- Removed a few references to deprecated constants in
Framework_Presenter_Module
- Deprecated
Framework_User::$userTable, Framework_User::$userField, Framework_User::$defaultUser, Framework_User::$userClass (see config.xml)