# Zend Framework 0.8

When upgrading from a previous release to Zend Framework 0.8 or higher you should note the following migration notes.

## Zend_Controller

Per previous changes, the most basic usage of the MVC components remains the same:

    Zend_Controller_Front::run('/path/to/controllers');

However, the directory structure underwent an overhaul, several components were removed, and several others either renamed or added. Changes include:

- `Zend_Controller_Router` was removed in favor of the rewrite router.

- `Zend_Controller_RewriteRouter` was renamed to `Zend_Controller_Router_Rewrite`, and promoted to the standard router shipped with the framework; `Zend_Controller_Front` will use it by default if no other router is supplied.

- A new route class for use with the rewrite router was introduced, `Zend_Controller_Router_Route_Module`; it covers the default route used by the MVC, and has support for controller modules.

- `Zend_Controller_Router_StaticRoute` was renamed to `Zend_Controller_Router_Route_Static`.

- `Zend_Controller_Dispatcher` was renamed `Zend_Controller_Dispatcher_Standard`.

- `Zend_Controller_Action::_forward()`'s arguments have changed. The signature is now:

      final protected function _forward($action,
                                        $controller = null,
                                        $module = null,
                                        array $params = null);

  `$action` is always required; if no controller is specified, an action in the current controller is assumed. `$module` is always ignored unless `$controller` is specified. Finally, any `$params` provided will be appended to the request object. If you do not require the controller or module, but still need to pass parameters, simply specify `NULL` for those values.