Agile Web Development

Build it. Launch it. Love it.

Gems

This is a small plugin that helps with Ruby Gem management for your application. It will automatically include all gem/lib paths into the $LOAD_PATH on startup.

To freeze gems:

  $ rake gems:freeze GEM=tzinfo
  (in /path/to/app)
  rm -rf vendor/tzinfo-0.1.2
  cd /path/to/app/config/../vendor
  mkdir -p tzinfo-0.1.2
  Unpacked tzinfo 0.1.2 to 'tzinfo-0.1.2'
  cd -

Be sure to require them in your environment.rb if you want them available.

  $ script/console
  Loading development environment.
  >> TZInfo
  NameError: uninitialized constant TZInfo
  >> require 'Tzinfo'
  => true
  >> TZInfo
  => TZInfo

You can also freeze specific versions:

  rake gems:freeze GEM=tzinfo VERSION=0.1.2

Vitals

Repository http://svn.techno-weenie.net/projects/plugins/gems/
License Rails' (MIT)
Rating (6 votes)
Owner Rick Olson
Created 19 June 2006

Comments

  • Ian
    12 September 2007

    If you need to freeze two different gem versions (e.g. hpricot for OS x on dev, Hpricot for linux on prod) check out http://agilewebdevelopment.com/plugins/gemswitharchitecture

  • Avatar
    Andrew
    24 November 2007

    I'm trying to use this to freeze the bcrypt-ruby gem. Whenever I try to require 'Bcrypt' I get the following:

    MissingSourceFile: no such file to load -- Bcrypt

    I changed the require statement to use the whole path, but then another require in the bcrypt library broke... do I have to go through and change every require to have a full path? Or is there some automagical locating done by require that I am missing?

Add a comment