BT

Ruby 1.9.1 Is Close - Time To Switch From 1.8.x?

| by Werner Schuster Follow 6 Followers on Jan 17, 2009. Estimated reading time: 1 minute |

A year after Ruby 1.9.0 was released, it hasn't seen much use yet. Some of the reasons are incompatibilities with popular libraries or frameworks, and changes in behavior in some areas. David A. Black recently blogged a few small changes in 1.9.x that developers need to be aware of and which might break software in subtle ways. (InfoQ has reported on many of Ruby 1.9's other changes).

Now Ruby 1.9.1, the first stable release, is about to be released. Ruby 1.9.1 RC1 came out a few weeks ago, and RC2 will soon be released. Currently, the final Ruby 1.9.1 is expected in late January.

A stable 1.9.1 is one reason to take a closer look at running at 1.9.x, if only for the speed improvements. Some features, such as Fibers have been used to increase scalability (eg. NeverBlock for database access or I/O) or for workarounds (eg. NeverBlock HTTP library).

Ruby 1.9.x is also the version used for projects adding new features or usage scenarios for Ruby. The recently announced Rhodes framework (Rhodes is now available in version 0.2) for mobile applications uses 1.9.x versions of Ruby on some of the supported mobile platforms.
Another example is MacRuby, which should also soon see another release. MacRuby is based on Ruby 1.9.x, and focuses on tight integration with Objective-C, to the point where object such as Strings are actually Objective-C String objects; this tight integration allows to script Objective-C APIs with little to no overhead, as well as making use of Objective-C's Garbage Collector (the Objective-C GC (Autozone) was recently open sourced).

While JRuby is aiming to support 1.9.x, with full parsing and partial library support already in place in 1.1.6, other implementations (except for MacRuby), still lag behind in 1.9.x support.

What's keeping you on Ruby 1.8.x? What Ruby 1.9.1 features (performance, Fibers, threading changes, encoding changes, etc) are reasons for switching?

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

No by Daniel Berger

If you're using 1.9.x, you're using beta software. Avoid.

I don't miss anything - yet by Hermann Schmidt

For the small scale things I do with (J)Ruby, I am happy with 1.8.6. I don't miss anything and it is very solid. Actually, the "String = byte array" concept was perfect for my applicaton.

For serious multi-language enterprise applications, encoding and scaling issues are unavoidable and would make me consider 1.9.

I think that wide-spread languages or APIs have not many chances for fundamental changes during their lifetime. Once one stable version is used all over the place, the acceptance of new features is slow. Java 5 features are an example. java.util.concurrent? XLST 2.0 anyone? The dreaded Java XML APIs (do one thing in five ways)?
It takes years to settle into the developers' minds. Why? Because they didn't miss it that much and have to work in environments, which don't keep up for a long while (some never will). I still must write Java 1.3 code in some places!

beta! by David Fu

i think 2.0 is what's gonna come down the road soon and that will actually be the prod version!

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

3 Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT