Michael Koziarski wrote: > We're definitely not going to go down the route of a massive > dependency system of our own. Rubygems does this kind of thing > already, and perhaps we just need to go down the plugins-as-gems > approach.
I just want to add my +1 to this comment. It seems like plugins are trying to solve all the same problems RubyGems is trying to solve. But plugins are just doing it badly while RubyGems is doing better (not perfect but much better). In my mind plugins should be deprecated and eventually removed. Having a "gem" route and a "plugin" route is just too confusing. To me if I want to enhance Rails to have the functionality of acts_as_paranoid then I should just: 1. gem install acts_as_paranoid 2. Add "require acts_as_paranoid" in my environment.rb. If I care about binding it to a specific version of acts_as_paranoid I would instead put "require_gem 'acts_as_versioned', '0.3'" Then I'm done. This would remove a lot of code from Rails core making it simpler but it would give us the following benefits we don't currently have: 1. Distribution - yes I know "./script/plugin install blah" but it is crappy. Requires SVN to be laid out in a non-standard way, has a flaky way of finding the package so you pretty much always have to get the SVN URL and has problems with some repositories (SSL, etc). Gem is quick, simple and works. 2. Versioning - This ensures stability. The plugin route has nothing for this other than bringing it into your own repository and then having to use third party tools like piston to allow updates when desired. 3. Dependencies - Specifying a load order is just archane. Yes it works but as I user of acts_as_paraniod I shouldn't have to care if it has a dependency. When I install acts_as_paranoid it should tell rubygems its dependencies and all I have to do is say install with all dependencies. 4. Simplicity - No more spending hours tracking to load order dependency problems. Reduction of Rails core code. Eric --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Core" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/rubyonrails-core?hl=en -~----------~----~----~----~------~----~------~--~---
