Ruby on Rails 3.1 has been released. As well as the usual round of bug fixes, the latest version of the ever-popular web development framework has seen a few controversial features added (controversial amongst web developers at least):
- New default libraries
- HTTP streaming
- Assets pipeline
- Reversible migrations
- New minimum Ruby language requirement
Migrations is the Rails approach to updating the datastore with schema changes. Whilst Rails 3.1 will now attempt to figure out how to reverse those changes, if necessary, it’s not foolproof.
Rails 3.1 now requires at least Ruby 1.8.7 and ideally 1.9.2, if support for HTTP streaming is required.
With the twin philosophies of opinionated software and convention over configuration permeating the Ruby on Rails framework, it should come as no surprise to developers when new features are designated from above rather than discussed at length prior to inclusion.