InfoQ

InfoQ

News

My Bookmarks

Login or Register to enable bookmarks for unlimited time.

The content has been bookmarked!

There was an error bookmarking this content! Please retry.

Ruby 1.9 Roundup: State Of i18n and Unicode, Feature Freeze for 1.9.1, Gems 1.3

Posted by Werner Schuster on Sep 30, 2008

Sections
Development
Topics
RubyGems ,
Runtimes ,
Ruby
Tags
i18n ,
RubyGems ,
Testing ,
Ruby1.9 ,
Unicode
Character encodings and Unicode have long been reason for discussions in the Ruby space. Unlike languages like Java, Ruby does not use Unicode for strings internally. Unicode doesn't support all scripts and characters, eg for Asian languages, so local encodings are still necessary.
Tim Bray notes a new change in the Ruby 1.9.x trunk - Matz has now added String#each_codepoint, as a result of a lengthy discussion on ruby-core. String#each_codepoint allows to iterate over every codepoint in a string object.

String#each_codepoint is one of the features to appear in future 1.9.x versions, such as 1.9.1 which is scheduled to be released in December 2008. The feature freeze for 1.9.1 was on 25th September. Ruby 1.9.0-5, the next milestone before the release candidates is on the way and should be released soon (All changes in the Ruby 1.9.x trunk).

One of the latest changes is Ruby Gems 1.3, which was included just before the feature freeze. Ruby Gems 1.3 has also just been released for Ruby 1.8.x. The major changes in Gems 1.3:
* RubyGems doesn't print LOCAL/REMOTE titles for `gem query` and friends if stdout is not a TTY, except with --both
* Added Gem.find_files, allows a gem to discover features provided by other gems.
* Added pre/post (un)install hooks for packagers of RubyGems. (Not for gem themselves).
* RubyGems now installs gems into ~/.gem if GEM_HOME is not writable. Use --no-user-install command-line switch to disable this behavior.
* Fetching specs for update now uses If-Modified-Since requests.
* RubyGems now updates the ri cache when the rdoc gem is installed and documentation is generated.

No comments

Watch Thread Reply

Educational Content

Transactions without Transactions

Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.

Attila Szegedi on JVM and GC Performance Tuning at Twitter

Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.

10 tips on how to prevent business value risk

One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.

Interview: Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives

InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.

Beauty Is in the Eye of the Beholder

Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.

Architecting Visa for Massive Scale and Continuous Innovation

John Davies examines Visa’s architecture and shows how enterprises have architected complex integrations incorporating Hadoop, memcached, Ruby on Rails, and others to deliver innovative solutions.

Max Protect: Scalability and Caching at ESPN.com

Sean Comerford unveils ESPN.com’s architecture, what components are used and why, and the current changes the website goes through.

The Seven Deadly Sins of Enterprise Agile Adoption

Are there repeated patterns of failure on Enterprise Agile Enablement efforts? Sanjiv and Arlen discuss Seven Deadly Sins to avoid when adopting Agile in an enterprise.