This week in open source
We have officially stopped maintaining the following open source products: limerick_rake, trout, shoulda-context, and jester. Do you want to take over any of them? Let us know!
The kumade Heroku deployer now has a rake task hook for running code before the deployment (8bd2824). This was done by Joshua Clayton (joshuaclayton) in the new version: 0.8.2 (52a9348).
The paul_revere notification gem has this sweet button to hide a notification. Ben Orenstein (r00k) changed the duration of this hiding from one day to one year (5a773d4).
Phil LaPier (plapier) has released version 1.3.1 of bourbon, the much-loved collection of sass mixins (e90113c). In this version we have a new syntax for animation shorthands, which means the old shorthands are deprecated (e6dcbf5, a6d3a32, 89cc340). Get it while it's hot!
We have a gem that generates scopes for ActiveRecord objects, named pacecar, which you would love if you also love methods that magically appear. Matt Jankowski (mjankowski) released version 1.5.3 (06b5e8e) with support for Rails 3.1.3 and 3.0.11 (dcc30d4) and which treats decimals as numeric column types, giving you all the methods that you need for those, too (ff7bc67).
The oft-used paperclip file uploader gem hit version 2.5.0 (071c938) with a NEWS file describing the changes,
Jim Ryan (jimryan) changed paperclip to process any
:original style before all others, which can be useful in case order matters (f56e863 and d3db7a1).
Nathan Hyde gave us a performance gain by only generating the file's fingerprint if it can be persisted (9fb9255 and 4e07681).
Alexander Greim (iltempo) landed a feature on us: S3 headers can be set at runtime by passing a block as the value of the headers instead of a static hash (a83de65 and 7a8d1e6).
Steve Madsen (sjmadsen) found an edge case where if you set an attachment, save it, set a new atachment, save it, then refresh the missing styles using the rake task, it will crash. And he fixed it (<a href="http://github.com/thoughtbot/paperclip/commit/dc53432b3166a1cc711a526e1057931881babf7d" title="Don't crash when a new attachment is added. If a model has an existing attachment and styles, and later a new attachment is added (not just new styles), "rake paperclip:refresh:missing_styles" would crash with "TypeError: can't convert nil into Array".">dc53432).
And Jon Yurek (jyurek) finally fixed
Paperclip::Attachment such that it no longer overrides the Ruby
hash method with an unrelated one (3fd4c96).
As usual, factory_girl got way more commits than I want to read over in one sitting. For example: Simone Carletti (weppos) added a ruby version dependency to the Gemspec (e6e4d8b). He also fixed the link to our blog (11a79a0 and 30e13dd).
Things like that.
So on the feature front, Evan Larkin (elarkin) made it such that factories still work if you define a class that overrides the
to_s class method (8b3ee85). Dmytrii Nagirniak (dnagir) added support for neo4j (5246fda and 591ec7a). Joshua Clayton (joshuaclayton) made it such that you can call methods that are on the object from within a factory definition (d918c1d).
More wishy-washily, Josh made a bunch of refactorings, the most important of which speeds up the whole product (f2e4138). You can read the rest of the refactorings as code with good commit messages: 2e2d490, 40242e9, 32ff41f, ac1df1d, <a href="http://github.com/thoughtbot/factory_girl/commit/a022dda8f81daf2dc1a32117879002980fa18503" title="Revert "Don't cache build class" This reverts commit 845a76a59522b116065203e167be66ae771fb73a.">a022dda, 1c7eab1, d9e0372, and b734b58.
The README was improved with the status of all the dependent gems (768dfaa), by Steve Richert (laserlemon). Daniel Schierbeck (dasch) fixed the formatting of sample code (1e82889).
In the end, Josh released version 2.4.0 (69957ea).
Matthew Mongeau (halogenandtoast) had fun taking in pull requests on capybara-webkit. Joe Fiorini (joefiorini) added the
requested_url method that produces the URL after a
pushState (7f907a0). Niklas Baumstark (niklasb) added
path methods (352823d, d07cf3d, 21f4b84, <a href="http://github.com/thoughtbot/capybara-webkit/commit/83905bb48cbb376fceb07c1ae1f60f15a5b35ffb" title="add "submit" method to Node that allows to submit a form node without clicking a button">83905bb, <a href="http://github.com/thoughtbot/capybara-webkit/commit/4ceb8740faa453740a958d5c38ac56361b55bb5b" title="implement "path" method for Node">4ceb874).
John Hume (duelinmarkers) added support for JRuby (0979db4). Pete Gieser (pgieser) fixed a double-escaping bug in URLs (fccb444).
Matthew Mongeau (halogenandtoast) fixed the link to the Capybara README (e2c103c) and linked to the mailing list (d8c640d), and Jo Liss (joliss) recommended
bundle exec in more places (<a href="http://github.com/thoughtbot/capybara-webkit/commit/7fe06e966dfa8d9d17cae03d2c4c1639a7c3c469" title="Recommend using "bundle exec" just in case
This avoids issues like this one: https://github.com/jnicklas/capybara/issues/585">7fe06e9).
Our authentication system aptly named clearance got some love from Chad Pytel (cpytel) and Joe Ferris (jferris), resulting in the release of clearance 0.14.0 (5471159, 214d1dd, and 0dc43a6). The big deal is that the
deny_access RSpec match and the flash messages were totally borked. They fixed it (2085f03, 23df300, and 160366e).
Version 0.1.1 of fake_braintree was released, in which Gabe Berke-Williams (gabebw) fixed a bug in the failure message for the
have_accessor_for matcher (9d97aa6) and also refactored everything (0a45900, 59a7b60, 3daf2aa, 0f955c6, 3e8745f, bb1f339, 6d7d90c, ac0d550, d2f470e, 3c66129, 8cf7d9c, 157b2a7, 8f21376, 29429ef, e4cef67, 9928436, 94cca24, 7bd4e20, 2dde9ed, e775167, a72e31b, 57f3623, d580024, ad82f0e, 3385e12, cacb537, ae86ebe, c6cead6, a352f33, f7a6cf5, 9f1fb3b, 124706d, ef8b13a, and b20e318).