Create a Plugin or a Gem? e.g. - will_paginate

I noticed that will_paginate is now being distributed as a plugin. In the readme, it states:

"You should switch to using the gem:

  gem install will_paginate

After that, you can remove the plugin from your application and add a simple require to the end of config/environment.rb:

  require 'will_paginate'"

I am want to reuse code and am trying to understand the advantages of using a gem vs a plugin. I thought the "rails way" is to use plugins but now that I see will_paginate is using a gem, I am trying to understand what advantages gem distributions have for use in rails projects?

Thank you,


Same question here. I think plugin is better because it's 'freezed' in your code base so easier to deploy to production environment. What's the advantage of using gem?

Thanks Jan

* John Honovich <> [2008-04-19 21:01:06 +0200]: - Great for freezing gems to vendor for ease of deployment to production.