Hacker News new | past | comments | ask | show | jobs | submit login
Ruby Version Manager: Easily Use Multiple Ruby Versions At Once (rubyinside.com)
25 points by sant0sk1 on Aug 26, 2009 | hide | past | favorite | 17 comments



I've been sitting in #rvm all night helping the author with bugs and stuff. There are a few snafus here and there but nothing fatal. Things like making it work with TextMate properly, packages needed on Ubuntu when you install certan versions with RVM, etc. I'm putting any fixes I come across as comments on the Ruby Inside post :)

Basically, it's worth persevering with. Or at least going on #rvm on irc.freenode.net and bugging the creator about ;-)


Thanks for your effort. When I retire, I envisage spending my time a little like you do - trying to help the communities I love.


This is freaking awesome.

update: This is really, really great. Thanks to the author, and to Peter for spreading the word. I can't believe how seamless and convenient it is. This kind of shit is why the Ruby community kicks ass over everyone else. Wayne Seguin - you rock.


This is exactly what I was looking for last weekend when we tried to build our rails rumble app with Ruby 1.9!

I'm installing now and excited to start building 1.9 apps at home without interrupting development on the 1.8 apps at work


How'd you go with that? I was going to use 1.9 but chickened out at the last minute and went with 1.8


This looks like a pretty useful project. If you're using a Debian-based Linux distro, you also already have "alternatives," which is a pretty powerful framework for doing almost this exact thing.


Except that Debian's packaging policy shits all over how people actually use and distribute libraries in languages that have native packaging systems -- in my experience both Ruby and Haskell are totally fucked, and Python is done pretty decently considering.

The glacial release cycles and pointless package freezing don't help, nor does their anal-retentive insistence on rearranging everything to fit just-so into their standard filesystem layout. It infuriates them that gems are intended to be self-contained and allow multiple versions to be installed with no symlink assery.


As far as glacial release cycles are concerned, use Ubuntu, not Debian. Problem solved.

And about packages getting rearranged, yeah, I like FreeBSD's ports better too, but you really should be using apt-get only to install rubygems and then use gem rather than apt to install the gems.


Using Ubuntu doesn't always, as Canonical just reuses Debian's crap for a ton of stuff, and if they're nearing a 'release' even everything in testing freezes for fucking forever.

It's much worse with Haskell than any other language I know of -- last I checked there were two broken+old builds of ghc with different names and mutually-exclusive sets of packages that depended on them. On top of that the version of cabal (Haskell's packaging tool) in the repository was so far out of date that you couldn't use it to build anything remotely recent (including useful versions of itself), nor could you use it with anything in Hackage (the central repo).


Amen to that.

And since we're on a Ruby thread, Ubuntu's Ruby 1.9 is 1.9.0 which is (1) buggy (2) broken (3) more than a year old. It is fucking ridiculous, no-one with any sense is using that. This version manager is actually better than apt-get for managing your Ruby installs. Go figure.


Last I checked, Debian was still working on their own elaborate scheme to have 1.8 and 1.9 coexist, without the involvement of the Ruby community. Meanwhile, the latest apt version is a useless 1.9.0 that's at least a year old.

This looks far superior to what they were cooking up, or to the ad hoc shellscripts I've been using. I wonder how well it handles gem binaries, which I found to be the trickiest aspect.


Maybe this is a stupid question but do people switch between vm's a lot?


Anybody that writes Gem's will cry when they can test multiple versions without useing multiple computers or VMWare. Imagine if you could only test your work with one version of Ruby how many bugs you'd miss/hit.


For now, yeah, because 1.9 is still fairly new and not 100% compatible with older Ruby code. I imagine in a year or so everyone will be on 1.9 and this sort of thing will not be need by most people for a while.


We're using 1.9 for new work, but I still need to switch back to 1.8.7 for maintenance work


rvm Keeps everything separated from the system in ~/.rvm

version 0.0.25 coming out in a day or so will have support for: * Named releases, named svn tags, svn revisions, svn head for 1.[8-9].X * Rubinius, jRuby, REE * Named Gem Sets (eg, being able to test different sets of gems against a single version of ruby) * And much, much more... Hop on in #rvm for more or visit http://rvm.beginrescueend.com/ once 0.0.25 is out.


Great for comparing performance and testing compatibility!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: