API CHANGE! Major changes to error reporting, routing, and class naming!
Complete change of autoloading: classes are now loaded by changing underscores to slashes to create a path, eg: Controller_Admin_User would be found at classes/admin/user.php (See routing changes below for more information)
- All classes (libraries, helpers, controllers, and models) are now stored under the classes/ directory
- Controllers and models are now prefixed instead of suffixed (eg: Controller_Welcome instead of Welcome_Controller)
- All classes can now become transparently extensible by adding a "Core" suffix (eg: User_Model_Core extends Model)
- Archive module has had it's drivers updated with new paths, but other modules will need to be updated, and will be non-functional temporarily
Complete routing change: routes are now defined similar to Horde Routes (see http://dev.horde.org/routes/manual/nitty-gritty-route-setup.html ), see http://paste.isanonymo.us/Dmq6n6FYfHnFFhbFs0weS8KqfDgBiGkS for an example of new routes configuration. Official documentation to follow.
- Default route in system/config/routes.php changed
- URI class removed because all arguments are now named (eg: Router::$argumentsid? to fetch the :id arg)
- Added Router::compile to compile the regex for given route (protected)
- Added Router::keys to find the :keys from a URI string
- Added Router::uri to generate a URI from a route name and values (not complete)
Other misc changes:
- Errors and exceptions are now inline, rather than replacing the entire page. Having core.display_errors disabled has no effect (not complete)
- Added application/i18n/en_US directory for application language files (eg: Validation errors)
- UTF-8 environment check moved to bootstrap.php