It has been five years since Ruby saw a major stable update, with Ruby 1.9 appearing in December 2007. But today, that streak is over with the release of Ruby 2.0.

As with any major language release, there are a number of new features. The language now supports keyword arguments that replace the argument hashing that used to appear throughout Ruby; an array literal, %i, has been introduced; and by default, Ruby’s encoding is now UTF-8. A more comprehensive list of new features and examples is now also available.

On the debugging side, DTrace is now supported, or if you want to debug the “ruby-way”, then TracePoint is available, too.

Documentation for the new release is improved, with 75 percent of the platform documented in rdoc, up from 60 percent in 1.9.3.

Five incompatibilities exist in Ruby 2.0 for 1.9 code, but it is noted that the switch from 1.9 to 2.0 should be easier than the 1.8 to 1.9 switch.

Tarballs can be downloaded from