Lighthouse has a new layout. Prefer the old one? Return to the old layout, and switch back any time from the link at the top of each page.

GemInstaller fails when listing remote prerelease gems

#41

Our production environment depends on Rails 2.2.2, a version that's old old old, and that we've been installing and using for months.

Today, our scripts tried to use Geminstaller to install required gems, including Rails 2.2.2, as listed in our geminstaller.yml, on a newly provisioned box in EC2.

When geminstaller lists the available remote versions of Rails the gem list command does include version 3.0.0.beta, through no action or change on our part.

Geminstaller attempts to parse the version string, finds it unappealing, and explodes. The app server follows suit.

Reported by Chad Woolley · February 8th, 2010 @ 10:34 AM

State: invalid
Milestone: none
Assigned to: Chad Woolley Chad Woolley

Activity

  1. Chad Woolley
    Chad Woolley

    I suspect this is due to an old rubygems version which does not support prerelease gems.

    Please provide output of the following:

    • gem env
    • geminstaller -gall -rall (from project root)
    • output of manually running rubygems command that failed (should be output by -gall -rall)

    February 8th, 2010 @ 10:35 AM

  2. Chad Woolley
    Chad Woolley
    • State changed from new to hold

    February 8th, 2010 @ 10:39 AM

  3. Chad Woolley
    Chad Woolley
    • State changed from hold to invalid

    As I suspected, this was due to an old version of RubyGems which does not support prerelease gems (it was added in a 1.3.x minor release, which is kinda wack, but I digress).

    Anyway, if your RubyGems is non-prerelease-supporting, you can reproduce the error in IRB thusly:

    require 'rubygems'; Gem::Version.new('1.a')
    

    I just tested against the new RubyGems 1.3.6, and AFAIK GemInstaller is working fine against it. But you should still switch to Bundler.

    February 21st, 2010 @ 03:43 PM

Please Sign in or create a free account to add a new ticket.

With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.