Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Three "final" versions of Ruby?

Tags:

ruby

I've played around with IronRuby lately, but I would like to install the reference implementation also. Needless to say, I'm a noob when it comes to Ruby, so I have a very stupid question.

On the RubyForge download page, there are three different final versions of the Ruby installer (for Windows):

  • rubyinstaller-1.8.6-p398.exe
  • rubyinstaller-1.8.7-p249.exe
  • rubyinstaller-1.9.1-p378.exe

I don't understand how there can be three different final releases. I can understand that there is one 1.8 release, and one 1.9 release, but why can I choose between 1.8.6 and 1.8.7?

What I really would like to know is what version is the "best one" ? If the answer is "1.9.1", why would one choose 1.8.6 or 1.8.7 ?

I'm confused...

like image 298
Philippe Leybaert Avatar asked Jun 20 '10 16:06

Philippe Leybaert


2 Answers

The reasoning behind 3 different versions of the final installers is based on the following criteria:

1.8.6 has been the most widespread version, used in production servers, so the release has been made for compatibility with these cases

1.8.7 is the newer stable standard defined by Ruby-Core, and is the one mostly likely receive attention from Ruby developers for 1.8 branch

1.9.1 is the newer version of Ruby, based on a new Virtual Machine called YARV. This branch (1.9) is the one taking most of the time attention from Ruby-Core developers.

The reason of the packages is that, be able to satisfy 3 different type of users. Ones trying to mimic production environments, ones starting with 1.8 work and ones using newer features.

There is also 1.9.2-preview3, which is one of the version candidates with newer features set to release by August.

Hope that helps.

-

like image 133
Luis Lavena Avatar answered Nov 15 '22 06:11

Luis Lavena


1.9.1 is the latest release ruby, not the "best". Typically bleading-edge releases contain incompatibilities with previous releases as well as new functionality. This makes newer release NOT backward compatible with older releases. The bottom line is that you want the "older" releases if you plan on running code that was written based on those releases.

Also, one release, usually older, is unofficially recognized as the "stable" and "portable" release. In ruby's case I believe it is the 1.8.7 release. I good way of checking this is to see what the latest versions of linux or os x have as the pre-installed ruby release.

These are just some of the factors you need to consider when choosing which release to install. Note that you can have multiple versions of ruby on the same box. A decent tool for doing this is rvm.

like image 24
ennuikiller Avatar answered Nov 15 '22 07:11

ennuikiller