Merb 1.0 RC3 Released!

We released Merb 1.0 RC3 today, inching a bit closer to a 1.0 final, which we intend to release at RubyConf. RC3 is mostly bugfixes, but there are some items of note:

  • Since we intend to support webrat as a primary mode of testing in 1.0 final, we've restructured the testing helpers to make that possible. No testing API changes at this time.
  • In 1.0 final, get/post/put/delete will be aliases for request(). At this time, they're still aliased to the old pre-1.0 request()-helper. To help ease the transition, we will probably provide a use_legacy_request_helper! method.
  • There was a bug in request testing that preventing sessions from persisting for more than 2 requests. We have implemented a cookie jar, so sessions now persist properly (basically, we emulate a real browser).
  • As a result, you can now pass a :jar parameter to request(), which will allow you to test multiple sessions in the same test. If you specify no :jar parameter, all request() operations will use a :default jar. The syntax is request("/foo", :jar => :my_jar). request("/foo") is the same as request("/foo", :jar => :default).
  • merb-action-args works with ParseTree 2.x and 3.x.
  • merb-auth had a few bugs around redirecting back and retrying failed logins that were resolved.
  • The final, good API for dependency is solidified. A few things that you can do now: dependency "parse_tree", :require_as => "ParseTree" { # do stuff after the gem is loaded }. You can also pass :immediate => true to have the gem load immediately, instead of being deferred until the framework is set up (the default).
  • We should now fully support Windows.
  • Seamless JRuby support is coming via Glassfish. RC3 has some fixes to make it simpler for Glassfish to hook in.

Good night and good luck!