The Push to Ruby 1.9
2009 / 02 / 06 — 1.9.x, bdd, debian, gist, github, install, isitruby19, rspec, ruby, ruby19, rubygems, script, shell, tdd, test, unit
So you probably heard that Ruby 1.9.1 has been released. That's right, no more testing release candidates, Ruby 1.9.1 has been marked stable. The 1.9.x series of Ruby comes with improved encoding support, includes RubyGems by default and has merged with YARV.
Including RubyGems was a good move, since it's always been a pain dealing with out-dated Debian packages of RubyGems, setting RUBYOPT or having gem update --system conflict with the customized Debian version of RubyGems. The inclusion of YARV, which implements a byte-code VM for Ruby, has brought considerable performance increases to Ruby. I've been having fun using the 1.9.1 release candidates to brute-force Project Euler problems.
So here's the catch, most of the RubyGems for Ruby do not work properly with the 1.9.x series and it's minor API changes. This poses a good dev challenge to the Ruby community: test, fix, fork or rewrite the offending RubyGems.
Also, a handy site just popped up today, Is it Ruby 1.9: Community-powered gem compatibility for Ruby 1.9. People can search for RubyGems and add testing information to them.
To help with the push to Ruby 1.9.1, I threw together a shell script that installs Ruby 1.9.1 alongside 1.8.x. It's hosted on gist.github.com, so feel free to fork it.
#!/bin/sh mkdir -p /usr/local/src && cd /usr/local/src wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p0.tar.bz2 tar -xjvf ruby-1.9.1-p0.tar.bz2 cd ruby-1.9.1-p0 ./configure --prefix=/usr --program-suffix=19 --enable-shared make && make install