+1 monkeying with gem versions is largely redundant with bundler now so I think it's best to take it out (assume read-only, like you said) and leave it to the more sophisticated tool.
alex On Tuesday, July 26, 2011, Rhett Sutphin <rh...@detailedbalance.net> wrote: > Hi Peter, > > On Jul 26, 2011, at 7:11 AM, Peter Donald wrote: > >> Hi, >> >> I am looking at upgrading buildrs dependency on rubygems to a later version >> and being more explicit about the version. i.e. Something like >> >> spec.add_dependency 'rubygems-update', '>= 1.8.6' > > Good idea, though the gemspec line you want is something like this: > > s.required_rubygems_version = ">= 1.8.6" > > Is 1.8.6 specifically required? I would ask that you try to make this as loose as possible. Many releases in the 1.7 and 1.8 line have been broken or unreasonably noisy, so I have been conservative about upgrading. (I'm still mostly using 1.6.2.) > >> >> However as I was going through this I noticed we are using a whole whackload >> of deprecated features that is planned to be remove from rubygems in the >> next few months, in particular "Gem:SourceIndex". We mostly use the plugin >> to ensure the build has necessary dependencies before it rus (i.e. if you >> have added it to build.yaml) and to install gems as part of :gem packaging. >> As both of these features were broken up until a few releases ago I would >> guess they are barely used. In some environments some of these features >> continue to be broken (in particular installing of gems). > > Yes, automatically installing gems from build.yml has been broken for a long time. I've tried patching it a few times, but never come up with a solution inside buildr that works consistently. Eventually I gave up and added a script like this > > https://github.com/NUBIC/psc-mirror/blob/trunk/install_gems.rb > > in each of my projects that uses buildr. > >> >> The ruby world seems to be going in a few different directions to manage >> dependencies (i.e. rvm, bundler, ...) but most of them involve the runtime >> managing them. >> >> So I propose that we remove all the usage of these features and just >> consider the rubygems library as a read-only interface. We could change the >> startup scanning of build.yaml and rather than trying to install missing >> dependencies just print an error on the console and exit. For the :install >> phase of gem package I think it would be best to let people manage it in a >> way that makes sense in their environment. We could add documentation to >> fill this gap. >> >> Thoughts? > > This makes sense to me. I've explained my feelings about the gem installer. I don't use the gem package type nor do I recall anyone ever asking a question about it on the mailing list. > > Rhett > >> >> -- >> Cheers, >> >> Peter Donald > >