Another week of Sass mixins known as bourbon. Phil LaPier (plapier) gave the
background-image mixin support for linear and radial gradients (f54da8f, 5e4cea2, b5d42a7, 36b678e, and a63dade). Sean Lynch fixed the webkit gradients on older devices (e46ba1e).
Matthew Burket (Mab879) fixed the README to point out that Rails 3.0.x is up to 3.0.10 now (098ef82). Matt Jankowski (mjankowski) added a bunch of people to the authors line of the gemspec (72cf1e7) and fixed an interpolation bug in the radial gradient (1fe6fce).
More pull requests and refactoring for capybara-webkit over the past week. Joe Ferris (jferris) simplified the
Connection class by introducing a command factory and parser (b4708b2). Lake Denman (ldenman) spelled the word “version” correctly in the README ([25ff48a](http://github.com/thoughtbot/capybara-webkit/commit/25ff48a08a0d14112668a6439a4907d058e7ba3e “Merge pull request #186 from ldenman/master
Busy week for the clearance user auth engine! On the documentation side, Dan Croak (croaky) updated the copyright out to 2011 (8001a77), updated the CHANGELOG (644421f), mentioned all possible override points (26933c5), and got explict about the dependencies you need to integrate the Cucumber tests in your app (d4df728). Neil Parikh (neilparikh) rewrote history, claiming the Clearance was extracted from Airbrake instead of Hoptoad (ff404c8). Gabe “typo fixer” Berke-Williams (gabebw) fixed the word “dependent” in the README (bb2e919).
Dan also took note of Cucumber’s removal of
web_steps.rb, which many people think is fantastic, and removed mention of any steps defined there (ece4b10, e01f366, and [fef1fae](http://github.com/thoughtbot/clearance/commit/fef1fae52b7a503cd000ebfbd44ee244416c21b6 “Removing the dependency on:
The reason is Cucumber 1.1.0 removes these. They have their own reasons, which are solid:
https://github.com/cucumber/cucumber-rails/commit/f027440965b96b780e84e50dd47203a2838e8d7d”)). Keeping up with the rubygems gem he switched from
rubygems/package_task (6759d6d). He also tried to start a fight over how appraisal functions by asking about ignoring appraised gemfile locks (8dde7b0). To finish it off, Dan released verion 0.13.0 of Clearance (b2995c8).
We had a Sprinkle script for setting up a continuous integration server, named continuous_sprinkles appropriately enough. We don’t use this, so Mike Burns (mike-burns) deprecated it (c7dab0a). Before doing so he pulled in a patch from Ezra Spier (ahhrrr) to update the RVM setup (2f1b8b).
There’s a whole blog post on factory_bot version 2.2 so I’ll be brief: Joshua Clayton (joshuaclayton) removed a bunch of unnecessary public methods such as
#callbacks (7f42abe), and
#attribute_defined? (39caed0). He refactored the
#add_attribute method on a definition proxy (a50adda), standardized deprecation warnings (0c84876), moved the exception class definitions around (1153783), and allowed no block to be passed to the
#ignore block (eb21a44). Justin Ko (justinko) rocked our faces with some test cleanups, including removing redundant “should"s in behavior descriptions (334b8a9), then followed up with the equally pleasing feature that removes the need to call
#tap in order to modify your generated object with a block (f32651d). Vasiliy Ermolovich (nashby) updated the supplied step definitions to use
FactoryBot.create_list instead of
Fixnum#times (9fcd0b6). Joe Ferris (jferris) attempted to fix the link to the getting started documentation (f4ee363). Jeff Dutil (jdutil) cleaned up whitespace made by the fixture generator (d364e83).
Big refactoring on our Heroku deployer, kumade. Gabe Berke-Williams (gabebw) added an
Outputter class, which knows how to output things. After much discussion he made this a part of the configuration and used the well-blogged-about dependency injection pattern to simplify tests. This outputter means that you could potentially add a GUI or Web outputter! Imagine the possibilities! JSON! AJAX! XMPP! BBQ! (342082a, bb95538, 3af22ce, 6d7c867, 92a4add). Along the way he fixed a failing spec (6359702), only deleted branches if they exist (f260e9e), and showed an error message when the deployment fails (c27f13f).
Our collection of ActiveRecord scopes is pacecar. Ryan Sonnek (wireframe) fixed deprecation warnings that appear when you leave space between a method and the open parenthesis (bdca580 and 199ad67). Matt Jankowski (mjankowski) tested it on Rails 3.1.1 (3be3ad5) and then released version 1.5.2 of pacecar (f838a84).
Ah paperclip, the file uploader gem for Rails. In the housekeeping area, Prem Sichanugrist (sikachu) fixed some stray whitespace (7ab5ba6) and regenerated the appraisal gemfiles (47a56c2); trafnar (trafnar) added more about URI obfuscation to the README (2b8526b); and Nick Quaranto (qrush) noted that
Feature-wise, Prem removed the Rails root from the default S3 storage ([4ecd5b1](http://github.com/thoughtbot/paperclip/commit/4ecd5b1d0568029209d8574819f1535b4729bf74 "Remove :rails_root/public/system from default URL of S3 storage
So instead of having:
because default path has the :rails_root, now you”)) and added an
InterpolatedString class to handle URL escaping ([56e4135](http://github.com/thoughtbot/paperclip/commit/56e413590c9e9d7fc62311863295b779b55be071 “Avoid calling URI.escape in #url method, and use Paperclip::InterpolatedString
Paperclip::InterpolatedString will ensure that we”) and db60516).
I finally got our collection of RSpec matchers to pass on my laptop: shoulda-matchers. So from Håkon Lerring (Hakon) we have a matcher for the
:conditions option for associations (293b8aa); from Jeff Dutil (jdutil) we have a documentation fix for the
have_readonly_attribute matcher (ea477b8); from Light Year Software, LLC (lightyear) we got a fix for
validations_uniqueness_of with a non-string value (21fa1f1); and from Shalva Usubov (shaliko) we got another documentation fix to remove some duplication for the
route matcher (3ee5e5f).
The Rails template we use for starting new apps is suspenders. Harold Giménez (hgimenez) updated it to use Rails 3.1.1 (0504fa2) and along the way used the Ruby
REPO command-line variable is undocumented so he added it himself to the CONTRIBUTING documentation (4025029).