Rake tasks and generators from vendorized gems (aka gem-plugins)

When moving plugins over to gem-plugins or when creating new gem- plugins a difficulty I found in embracing this new approach was not being able to easily add generators and rake tasks that can be available in a project's scope. So I've proposed a patch on Lighthouse to handle this: http://rails.lighthouseapp.com/projects/8994-ruby-on-rails/tickets/441

Generators are searched for in the gems "rails/generators" directory. Rake tasks are searched for in the gems "rails/tasks" directory.

I also have this as a branch on github: http://github.com/brianjlandau/rails/commits/add_more_vendor_gem_support

I'm seeking feedback: comments, +1's, discussion, whatever.

Thanks, Brian

Count me in. Recently I submitted two patches in the same area:

http://rails.lighthouseapp.com/projects/8994/tickets/515-make-plugin-generator-create-rails-init-rb#ticket-515-1 http://rails.lighthouseapp.com/projects/8994/tickets/272-make-plugins-also-initialize-form-rails-init-rb#ticket-272-1

Also looking for discussion and plus-ones.

Cheers,

Jacek

Also see this related ticket on loading rake tasks for gems:

http://rails.lighthouseapp.com/projects/8994/tickets/59

As I posted there, I would like to see gems behave the same way whether they are frozen into the vendor directory or not. Having specific rails/tasks and rails/generators directories which only get loaded for vendored gems would require me to freeze a gem in order to get the functionality. I would prefer the gem does not require this.

For generators, gems already have the rails_generators directory they can use. For rake tasks, I would recommend the user adds a 'require' statement to their Rakefile to include them.

Currently, I don't think the rails_generators directory is searched for frozen gems, so that part of the patch I like.

Regards,

Ryan