Today, we're releasing the final RC before 1.0 final ships at RubyConf. Again, the vast majority of the changes were bugfixes, and there were some concrete improvements as well:
The Merb spec suite was modified to run correctly on JRuby and Windows. All specs pass :)
action-argsnow has support for JRuby. Unfortunately, it doesn't work with actions defined via
define_method(this will be reported to JRuby for a fix).
Webrat support is included out of the box with Merb. It currently requires the HEAD version of webrat, but we're told they'll be releasing a new version at RubyConf. See below for some webrat examples.
We now have a nightly gem server, hosted at http://edge.merbivore.com. At the moment, we release the next version every night (for instance, last nigh we released 0.9.13), which means you need to manually remove the merb gems before updating. Soon, we'll be releasing 0.9.13.xxxx, so you'll be able to run gem cleanup to remove old nightlies.
The goal with the nightly server is for people to use nightlies for riding edge as opposed to trying to install out of git itself. Trying to install out of git has its share of issues compared with installing from rubygems. To install from the remote gem server, either do:
gem install merb -source http://edge.merbivore.com -source http://gems.rubyforge.org
- or add edge.merbivore.com to your gem sources via gem source -add.
We put some work into the bundling system (as I previewed last week). To use bundling, simply make sure you have a gems directory in your application, then run
thor merb:gem:install merb. This will install merb and all its dependencies, as well as binary scripts to work with the gems in Merb.root/gems. To run Merb, you run
bin/merb. Note that you'll probably need to install mongrel as well, via
thor merb:gem:install mongrelif you want to use the bare merb command.
The view helpers were converted to use nokogiri and fallback on rexml when nokogiri is not available.
have_selectornow will take a CSS3 compatible selector, as opposed to the somewhat buggy and non-compliant hpricot selector.
match_tagconvert the attributes to a CSS selector in the background. We left
match_tagin for backward compatibility, although, it is advisable to use
It is possible that
match_tagdo not behave exactly the same way as a few bugs in the logic were fixed by moving over to a nokogiri back end.
As a result of this work, we have now marked all test methods with their API level, which should be locked as of 1.0.