This is awesome. On Mar 22, 5:15 pm, Jonathan Stott <[email protected]> wrote: > Merb 1.1 "Black Hole" > ===================== > > So, it's finally here. After taking longer than it probably should have done, > I'm pleased to announce the gems for merb 1.1.0 have been cut. They should be > appearing on rubygems.org soon. Merb 1.1 brings a lot of changes, but > hopefully > most of them shouldn't be too noticeable, as they're fixing bugs. That having > been said, there have been some breaking changes with regards to merb 1.0, > which > will be explained later. > > New Features > ------------ > > * Ruby 1.9 support. The big one. Merb now runs on ruby 1.9.1. This mandated > some > small changes to the internals as well as some changes to the specs. > However, > it shouldn't require any changes in your app level code, or at least the > merb > specific parts of your app level code. > > * Dependency handling with bundler[1]. This is a breaking change. But it > should be for the better. Bundler replaces the previous dependencies.rb > with a > Gemfile. It also replaces the Thor tasks for freezing gems. The Gemfile is > used to work out dependencies before any code is required. This avoids much > of > the dependency hell. > > * Unicorns! Merb is now better behaved as a rack app and works with a > config.ru > file[2]. This change should make working with whatever is the latest and > greatest ruby webserver a lot easier. > > * mongoid[3] support for merb-auth-more's SaltedUser class. Thanks to anvar > for > the patch. > > * asset timestamping for static assets. This appends a short query string to > static assets, allowing long cache expiry times to be set. Thanks for pavel > for this patch. > > * Bugfixes. So many bug fixes. As part of the release process we've done our > best to clear out many of the bugs which have been gathering dust over the > past year. Some do still remain, but those generally require a more complex > solution which needs some thought. > > Dependency handling using Bundler > --------------------------------- > > In this version we dropped the old way of loading dependencies using the > Kernel > extensions and started to use Bundler for dependency management. This allows > us to move the whole dependency handling and gem management outside the > Merb. Therefore we can simplify some internals and remove some of the Kernel > monkey patching: > > The old Kernel.dependency and Kernel.dependencies will only 'require > gem_name' or 'require require_as' when you call these methods. They will > loudly > inform you of the fact via depreciation warnings too. If you see the warning, > you should move your dependency to the Gemfile. > > Also methods: use_orm, use_test, use_testing_framework and use_template_engine > DON'T require any gems now, you must add them as dependencies in the Gemfile. > > Merb generators was changed to generate you Gemfile for your application and > settings instead of the dependencies.rb. > > So what still works? Almost everything except it doesn't defer to the Merb > start and doesn't load exact version of gem if more versions are installed: > > dependency "json" => works > dependency "rspec", :require_as => 'spec' => works try to require 'spec' > dependency "json", '1.1.6' => works unless you have > >= 1.1.6 installed > dependency "json" { } => works but doesn't yield > > For more information, check the wiki[4]. > > Bug fixes > --------- > > * [merb-assets] #859 Merb can append timestamps to static assets > * [merb-core] #1040 Allow using <%== %> escaped version of <%= %> > * [merb-core] #1068 Correctly handle HEAD requests (This requires manual > alteration of rack.rb) > * [merb-core] #1174 Merb::Config[:use_mutex] issue > * [merb-helpers] #1212 Merb::Helpers::Form::Builder Base#options doesn't > convert > 'sel' to string before comparing to string > * [merb-core] #1258 Sessions could be overwritten under certain (rare) > situations. > * [merb-core] #1288 Fix for run_later in clusters > * [merb-core] #1298 Fix potential timing attack on cookie sessions. > * [merb-core] #1304 Multipart input parsing produces wrong checkbox input > * [merb-core] #1310 Prevent mongrel bloat when streaming files > * [merb-core] #1317 Merb now returns correct cookie headers > * [merb-core] Improvements to handling of conditional validators > * And more ... checkout the repository[5] and the lighthouse[6]. > > Thanks > ------ > > Big thanks for this release have to go to Pavel Kunc[7]. Without him driving > it > forward, it probably wouldn't have happened. Additional thanks go to: > > Jacques Crocker (merbjedi) > Martin Gamsjaeger (snusnu) > Jonathan Stott (namelessjon) > > And to anyone who submitted bug reports, with or without patches. > > For the future > -------------- > > We're still not entirely sure about merb's future, beyond that we intend it to > have one! However, these are some of the things we're considering for future > releases: > > * Better rack behaviour. This includes removal of the old server adapters and > use of a config.ru file by default. > > * Removal of merb clustering from the core. This probably shouldn't have been > in > the core in the first place. There are more robust solutions out there such > as > unicorn[8], rainbows[9] and passenger[10]. Plus, of course, a merb-cluster > gem > would not be out of the question. > > * merging in of benschwarz's improvements to merb-cache[11]. These bring more > robust behaviour to merb-cache, but should be transparent to you as a > developer on merb. > > I hope the new release works for you as well as it does for us. If it > doesn't, > please let us know! > > [1] http://github.com/carlhuda/bundler > [2] http://wiki.github.com/merb/merb/howto-use-unicorn > [3] http://github.com/durran/mongoid > [4] http://wiki.github.com/merb/merb/howto-using-the-bundler > [5] http://github.com/merb/merb > [6] https://merb.lighthouseapp.com/projects/7433-merb/ > [7] http://github.com/pk > [8] http://unicorn.bogomips.org/ > [9] http://rainbows.rubyforge.org/ > [10]http://www.modrails.com/ > [11]http://github.com/benschwarz/merb-cache
-- You received this message because you are subscribed to the Google Groups "merb" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/merb?hl=en.
