tl;dr IdotabaのGemfileは"全プレ"になりました。ご笑納ください。→ Gemfile
rebuild.fmのep36でお知らせさせていただきました、Idobataの最新版Gemfileプレゼントをお届けいたします。 過日はIdobata会議01への多数のご参加ありがとうございました。おかげさまで盛況なミートアップとなりました。 (当日会場を提供いただいたEngine Yardさまのブログにて、Idobata会議01当日の様子がまとめられています。ありがとうございます!)
さて、肝心のGemfileですが、Engine Yard Cloudのstable-v4スタックでRuby 2.1.2が利用可能になるのを待ちつつ、2.1.2対応をしていたら、Gemfileをお届けするのが随分と遅くなってしまいました。
プレゼントが届くことを楽しみにしていただいた応募者の皆さまの気分を害してしまい、申し訳ございませんでした。 そのお詫びというわけではありませんが、Gemfileは応募者全員プレゼントといたします。ご笑納ください。
本Gemfileは、2014/05/28未明のメンテナンスにて本番環境にデプロイされたコードベースのものです。
新しく追加するgemをどこに入れるのか悩む時間を減らします。
バージョンを指定するのは、最新のバージョンでアプリケーションが動かなくなる場合のみ。 ライブラリ側を直す必要があるならPull Request。
バージョンを指定する際には、バージョンを指定した理由を添えることを心がけます (とはいえ、Railsやらbootstrapのメジャーバージョンは指定しております 😤)。
:test用の目的で使う意図で追加してるんだけど、:developmentでも動作の都合上必要なgemは 次のように、ハッシュで「サブグループ」的にグループを指定します。
group :test do
...
gem 'rspec-rails', '~> 3.0.0.beta', group: 'development'
...
end
同様に:development用なのだけれども、:testでも必要になるものは:
group :development do
...
gem 'tapp-awesome_print', group: 'test'
...
end
といった形式で指定しています。
- html-pipeline: idobataだとメッセージを様々に整形する必要があるため、とても助かっています。
- action_args: controllerで自明な内容をDRYにできる、べんりなライブラリ。Ruby 1.9 のリリース後のAsakusa.rbでMethod#parammetersが話題になりました。当時、界隈ではこのテクニックを「メソパラ」と呼んだりもしていました。
- database_rewinder: こちらはテスト用のライブラリですが、"database_rewinder is a minimalist's tiny and ultra-fast database cleaner." 速いです。
地元で作られているgemも積極的に使っています。
それではお楽しみくださいませ。