Hi all,

I've just made the appropriate changes to bring the engines plugin into compatibility with Rails 2.3, and the engine features it implements. You can find these changes in the 'edge' branch of the git repository, which I'm currently working on now.

The most notable change within your engine plugins is that I've removed the custom routes handling from the engines plugin, in favour of the implementation supplied by Rails itself. This means that your routes should now be in config/routes.rb, rather than the plugin root, and that map.from_plugin is no longer implemented.

The main reason for removing this is that I'm not very comfortable patching Rails to change existing behaviour like this; it was simpler when Rails didn't provide any plugin routing, but I'm keen not to result in two kinds of engine plugins - ones that require the engines plugin itself, and others that work with Rails out-of-the-box.

If the community feels that controlling the positioning of the routes is necessary, we should be pursuing this as part of the Rails core implementation, i.e. with tickets and patches and +1s.

I've also properly removed support for 'code_paths' in the plugin - there are simpler and more obvious ways to support this.

I am keen to smoothly transition as much of the key functionality as possible from the engines plugin into Rails itself. What remains, IMHO, is the following:

  * a Rails.plugins map of loaded plugins
  * Migrations support
  * Public asset support

The major feature missing here is the 'code-mixing', which is basically a short cut for requiring a controller/helper from the plugin before reopening the class again in the application.

There's already been some discussion on the Rails lighthouse instance about migrations, but without any suitable resolution. I'd be grateful to hear any ideas or thoughts you might have, either specifically about these features, or about this process in general.

Thanks again for your support,

James
_______________________________________________
Engine-Users mailing list
[email protected]
http://lists.rails-engines.org/listinfo.cgi/engine-users-rails-engines.org

Reply via email to