This Week in Open Source

Gabe Berke-Williams

kumade

Lots and lots of changes to kumade this week!

Gabe Berke-Williams (gabebw - that’s me!) cleaned up the code a bit (afb29cf, fda26ee, 39c0a32, 7e255bf, and 75403a7).

I switched the order of arguments to Git#initialize to match the rest of the gem (62e9202). I made a couple of minor changes to the specs (8949cdc, f1d82ed, and 7b5e6ea). And, of course, some README fixes (1d40e91 and 2e66cb2).

I merged Marcos Tapajós’ (tapajos) pull request removing sample output, since it’s rapidly outdated (4d2b13e).

Marcos also fixed an issue where the deploy branch wasn’t deleted if the deploy failed (ba8a264). He also added Cocaine, thoughtbot’sCLIwrapper, to fix the problem of printing output to the terminal (866f946).

Harold Giménez (hgimenez) ensured good code quality and removed some mocks (bdbb486 and 28f79b2). I learned that begin/ensure will re-raise an error after the ensure block runs, while begin/rescue/end will swallow the error. Harold always brings the knowledge.

Jon Yurek (jyurek) added an awesome feature: automatic detection of an application’s stack (6bd53af and b65ca45). As of version 0.3.0, Marcos Tapajós (tapajos) removed the -c option (fbdb609) since kumade now autodetects the current stack. Jon also noticed that Travis CI doesn’t have 1.8.7-p249 and removed it (8e94343).

Joshua Clayton (joshuaclayton) sprang into action and renamed Runner to CLI (e222538). He also made kumade use autoload (c01085e). You can read more about autoload here.

Kumade development is happening fast, but that doesn’t mean you shouldn’t contribute! The fast pace means that most pull requests will get a response within a day, so whether it’s documentation or a new module, send in your changes!

suspenders

Mike Burns (mike-burns) updated suspenders for Rails 3.1.0 this week. jQuery is part of Rails 3.1.0, so he removed it (be26211). Suspenders now uses the --database option to generate a Postgres database.yml (94010c2). You can read more about the --database option at the Rails command line guide. And finally, with Rails 3.1.0 in the Gemfile (3f06a65), we’re all set for Rails 3.1.0!

paul_revere

Matt Jankowski (mjankowski) worked on paul_revere, our one off announcement plugin. It’s now tested against Rails 3.0.10 and 3.1.0 (31bdfdd). He also converted the tests from Test::Unit to RSpec in commit 447808d, certainly a welcome change.

shoulda-matchers

Mike Burns (mike-burns) told shoulda-matchers bug reporters where to stick it (0a70502).

bourbon

bourbon, our set of vanilla Sass mixins, got some love this week.

Chris Lloyd (chrislloyd) removed some Bourbon mixins that wrote Sass into files, which also fixed some @import problems with Rails 3.1 (3c3ffcd).

Jeremy Raines (jraines) added documentation on using Bourbon outside of rails (5e005b9).

Our very own Phil LaPier (plapier) released version 0.1.6 (da56992) and then version 0.1.7 the next day (7afb43c). He also updated the readme.md (a lowercase filename, in a bold departure from the thoughtbot standard) (ea553ba).

And Matt Jankowski (mjankowski) has zero tolerance for made-up words (74b4450).

high_voltage

Matt Jankowski (mjankowski) converted high_voltage’s test to RSpec (4925fd5). (cdfa644) He updated the gem authors as well (7a110f5). The tests now run using an in-memory SQLite database (a689718). And the Rails 3.1 love continues with 3.1 tests using appraisal 4dd575d) and a version bump to 1.0.

pacecar

Matt Jankowski (mjankowski) updated pacecar for Rails 3.1 (commit list) and updated the factories to use Factory Bot 2.0’s hot new syntax (f9ce3e5).

flutie

Matt Jankowski (mjankowski) did a bunch of work on flutie. He added appraisal (90aad4a) and bodyclass and pagetitle helpers (commit list). He also added a fix for Rails 3.1 stylesheet expansions (92718a0), and followed that up with a version bump to 1.2.5 (f70068e).

Matt also fixed flutie to run on Rails 3.1.0 this week. It now correctly uses the Rails 3.1 asset pipeline (commit list). Get version 1.3.1 while it’s hot!

paperclip

paperclip had a good amount of activity this week.

Gabe Berke-Williams (gabebw - me again!) fixed a typo (ae781ac).

Prem Sichanugrist (sikachu) bumped the version to 2.4.1. This version brings a basic integration test (3131601), interoperability with Factory Bot 2.0 (d639d5e), removal of a duplicate test (cb6efaa), and set the logger to a Railsy logger if in Rails (37385dd).

Chris Oliver and Prem Sichanugrist fixed an incorrect option that was being passed to file (23cd662).

factory_bot1

Gabe Berke-Williams (gabebw - me again!) made some documentation fixes to factory_bot (4d4b5d9 and db82ccc).

Stephan Eckardt and Josh Clayton added FactoryBot.modify, which allows you to re-open defined Factories (14b8245). This can be helpful when dealing with vendor-supplied factories, like from a gem.

Joshua Clayton (joshuaclayton) bumped FactoryBot to 2.1.0 (386848d). He also committed code to assign createdat for stubbed models ([00503ee](http://github.com/thoughtbot/factorybot/commit/00503eec6c11c87e842abf1c1a96a185d8c0e1d2 “When creating a stubbed model, assign created_at

Closes issue 32 from factorybotrails”)).

One very nice addition is FactoryBot.reload, which clears all defined factories and then reloads definitions (3798144).

Finally, Josh fixed up the documentation (661e8ff, 370d8a6, 7fd7d95, 1f0e2eb, 9bacd0c, and 0529a87)

dotfiles

Dan Croak (croaky) fixed up the thoughtbot dotfiles and made tmux announce itself as a 256-color terminal so that Vim color schemes look breathtakingly vibrant (dc4c65e).

clearance

Our own Dan Croak (croaky) changed clearance to put more dependencies in the gemspec (90ca670).

appraisal

Mike Burns (mike-burns) added group support to appraisal (1df64a1).

factorybotrails1

Joshua Clayton (joshuaclayton) worked on factorybotrails, bumping the version to 1.2.0 (c7d54d2) and updating its dependency to factory_bot 2.1.0 (5518b91).

Project name history can be found here.


  1. Looking for FactoryGirl? The library was renamed in 2017.