jquery-railsデフォルトの設定ではjQuery1系しか読み込まない

jquery-railsで読み込まれているjQueryを何気なく見たら1.11.2を使用していて2系にバージョンアップするにはどうしたらいいのか調べたら公式に書いてあった。

If you want to use jQuery 2, you can require jquery2 instead:

//= require jquery2
//= require jquery_ujs
GitHub - rails/jquery-rails: A gem to automate using jQuery with Rails

Asset Pipelineで特定のファイルを除外する「stub」ディレクティブ

sprocketsというgemが担っている部分なのでsprocketsのstubディレクティブの説明になる。
stubディレクティブはsprockets v2.2.0から実装された機能。

Railsだと下記の様な記述があって/app/assets/javascripts/以下のファイルを全てコンパイルして使用するようになっている。

//= require_tree .

今回html5shiv-printshiv.jsを特定のブラウザの時だけ読み込みたいがjsは/app/assets/javascripts/にまとめて入れておきたいという時に使った。

//= stub html5shiv-printshiv
//= require_tree .

ただstubディレクティブに記載するとprecompile対象から外れてしまいjavascript_include_tagで呼べなくなるのでconfig/initializers/assets.rbに追加しておく。

Rails.application.config.assets.precompile += %w( html5shiv-printshiv.js )