From: Brian Candler Date: 2012-05-16T22:02:02+09:00 Subject: Re: A million reasons why Encoding was a mistake I will add that the OP is not entirely alone in his opinion. The issue is not so much that radiant is broken, but that ruby 1.9 is. It has both a broken philosophy (that strings of bytes should always be treated as characters in some dynamic encoding) and a half-baked implementation (e.g. which can't convert accented characters from uppercase to lowercase). There also remains a total lack of official specification or documentation. I speak as someone who has attempted to reverse-engineer it. As for "there is a set of simple rules to make your work on 1.9.3 painless", what this really is saying is "to make your program run reliably under ruby 1.9 you have to do magic incantations W, X, Y and Z", none of which was necessary in ruby 1.8. What's worse is that without these incantations, your app or library or test suite may run just fine on your machine, but crash on someone else's, as illustrated by the OP. With ruby 1.9, writing correct programs and giving them sufficient test coverage is more work than it was before. Do you run your test suite multiple times with different settings of LC_ALL in the environment? If not, you should. -- Posted via http://www.ruby-forum.com/.