Skip to content
This repository

Invalid Gemspec for Rails 3.2 #4559

Closed
derekprior opened this Issue · 17 comments

8 participants

Derek Prior Xavier Noria Aaron Patterson Mario Olivio Flores Slobodan Erak Brian Cardarella Philip Arndt Mina Naguib
Derek Prior

It seems the 3.2 release has issues with some of the compiled gemspecs. I've seen elsewhere that updating to the latest rubygems fixes this, but there was no notation of that in the release notes. The default version of rubygems with REE is 1.6.2. Is support for only newer versions of rubygems intentional?

I've seen mention that building the gems with 1.9.x causes the issue, but I don't particularly understand it myself. Would rebuilding and re-publishing the gems with 1.8.7 fix the issue?

Updating rubygems locally is not an issue. Updating it on deployed environments may be for many people (myself included).

Invalid gemspec in [/Users/dprior/.rbenv/versions/ree-1.8.7-2010.02/lib/ruby/gems/1.8/specifications/actionmailer-3.2.0.gemspec]: Illformed requirement ["#<YAML::Syck::DefaultKey:0x1035ce190> 3.2.0"]
Invalid gemspec in [/Users/dprior/.rbenv/versions/ree-1.8.7-2010.02/lib/ruby/gems/1.8/specifications/actionpack-3.2.0.gemspec]: Illformed requirement ["#<YAML::Syck::DefaultKey:0x1034bb410> 3.2.0"]
Invalid gemspec in [/Users/dprior/.rbenv/versions/ree-1.8.7-2010.02/lib/ruby/gems/1.8/specifications/activemodel-3.2.0.gemspec]: Illformed requirement ["#<YAML::Syck::DefaultKey:0x1035597a0> 3.2.0"]
Invalid gemspec in [/Users/dprior/.rbenv/versions/ree-1.8.7-2010.02/lib/ruby/gems/1.8/specifications/activerecord-3.2.0.gemspec]: Illformed requirement ["#<YAML::Syck::DefaultKey:0x1034ad540> 3.2.0"]
Invalid gemspec in [/Users/dprior/.rbenv/versions/ree-1.8.7-2010.02/lib/ruby/gems/1.8/specifications/activeresource-3.2.0.gemspec]: Illformed requirement ["#<YAML::Syck::DefaultKey:0x1035948c8> 3.2.0"]
Invalid gemspec in [/Users/dprior/.rbenv/versions/ree-1.8.7-2010.02/lib/ruby/gems/1.8/specifications/rails-3.2.0.gemspec]: Illformed requirement ["#<YAML::Syck::DefaultKey:0x1036031d8> 3.2.0"]
Invalid gemspec in [/Users/dprior/.rbenv/versions/ree-1.8.7-2010.02/lib/ruby/gems/1.8/specifications/railties-3.2.0.gemspec]: Illformed requirement ["#<YAML::Syck::DefaultKey:0x1036e7748> 3.2.0"]
Xavier Noria
Owner
fxn commented

It is not in the release notes because it was not in the plan. Problem is 3.2.0 was packaged using Ruby 1.9.

A note has been added to the blog post.

Xavier Noria fxn closed this
Aaron Patterson
Owner

If we're going to require a particular version of RubyGems to install rails, then we should set it in the gemspec. Either way, we have one of these bugs:

  • We're OK with any version of RG, in which case not being able to install on a particular version is a bug
  • We depend on a newer version of RG, but fail to declare our dependency on that version
Derek Prior

I agree. Doesn't seem like a closed issue until either of those is addressed. It sounds like the first to me. Can we re-open it, @fxn ?

Mario Olivio Flores

I agree with @tenderlove and @derekprior.

Aaron Patterson tenderlove reopened this
Xavier Noria
Owner
fxn commented

I closed the issue meaning nothing can be done for 3.2.0. If discussion about what do in 3.2.1 happens here that's perfect.

Aaron Patterson
Owner

To fix this, we'll release 3.2.1 with Ruby 1.8. But I do think we should start specifying a minimum rubygems version in our gemspec. For now I think Rubygems 1.3.7 should be fine, and then require the default RG that ships with 1.9 for Rails 4.0.

Slobodan Erak

Is there any info when will 3.2.1 be released? I have this issue and I don't have root access to the server, can't update rubygems. I guess there are a lot of other people who have the same need :)

Xavier Noria
Owner
fxn commented

@orthodoX the plan is to publish 3.2.1 really soon.

Brian Cardarella

Is bumping the required rubygems to 1.8.11 going to cause issues with TravisCI?

Derek Prior

I don't think so...

travis-ci.org provides exactly the same versions of rubygems RVM and various Ruby implementations/versions ship with. If REE 2011.12 ships with version 1.8.9, it will be 1.8.9 on travis-ci.org. However, if your project or one of its dependencies needs a more recent version of rubygems, you can upgrade them...

Source

4.0 will support, 1.9.3 or higher. RG 1.8.11 is included with 1.9.3 out of the box, so it should "just work". The change above was only committed to master.

Brian Cardarella

Ok, it seems TravisCI will be fine.

However, this will most likely mess with SlimGems. There are a lot of people using SlimGems instead of Rubygems (myself included).

Philip Arndt

When's 3.2.1 due to fix this? I'm having a hard time with most of these builds failing because of invalid gemspec: http://travis-ci.org/#!/resolve/refinerycms/builds/575693

Thanks for your time, everyone.

Philip Arndt

OK I'm working around my issue with TravisCI with this before_install hook which updates rubygems. resolve/refinerycms@b6c0cab

Mina Naguib

FWIW, it seems that rubygems 1.3.7 is the latest "stable" currently available on at least 2 environments I use:

For those who prefer software is installed via a package manager (myself included), it's not currently trivial to upgrade rubygems on at least 2 configurations.

Granted there's always been friction when a package manager is used to install another package manager, so I understand the slowness on the distro's ends to adapt.

Xavier Noria
Owner
fxn commented

@derekprior does 3.2.1 fix this for you?

Derek Prior

Yup. All set now.

Derek Prior derekprior closed this
Slobodan Erak

thanks rails team! :D

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.