will_paginateのインストール方法が変わっていた

知らないうちに、will_paginateのインストール方法が変わっていたようだ。その昔書いたエントリのやり方は、もはや古い。
当初、will_paginateはRailsプラグインとしてインストールするようになっていた。

$ ruby script/plugin install will_paginate

しかし、しばらくしてrubygemsで管理するよう変更された。

$ sudo gem install will_paginate

その後、今度はwill_paginateの管理をGitHubで行うようになったため、またまた変更になった。

今回触れるのは、現時点(バージョン2.3.1)で最新のインストール手順だ。ちなみに、英語のドキュメントを読める人は、rdocwikiの通りにやれば解決。

インストール

まず、rubygemsGitHubリポジトリとして追加する。

$ sudo gem sources -a http://gems.github.com/

次に、いつもどおりにgemコマンドでインストール。ただし、パッケージ名が変わっているので注意。

$ sudo gem install mislav-will_paginate

設定

config/environment.rbの最後(Rails::Initializer.run do |config| … end の外)に、次の2行を追加する。

gem 'mislav-will_paginate', '~> 2.2'
require 'will_paginate'

gemメソッドの'~> 2.2'という書き方は初めて見た。wikiによれば、この書き方で"バージョン2.2以降、3未満"という指定になるそうだ。また、README.rdocにはこうしろと書いてあるのだが、wikiによると'= 2.3.1'だろうが'>= 2.2'だろうが自分の都合に合わせて好きにすればよいみたいだ。

追記Rails 2.1.0から、もっと便利な書き方ができるようになっている

ここまででインストール完了。使い方は以前書いたエントリと変わりない。

微妙に気になっていること

パッケージ名が変わったことはやはり気になる。mislav-will_paginateって、名前を見た感じでは、"mislav氏によるwill_paginateのブランチ"に見えて仕方が無い。

しかし、will_paginateのバージョンが2.2.2で止まっているのに対して、mislav-will_paginateはそれを引き継いで2.2.3からスタートして2.3.1まで進んでいる(CHANGELOGにも書いてある)。そして何より今回のインストール手順は、GitHub移行前の環境で移行先として明記してあるサイトから持ってきている。だから、こいつがwill_paginate最新版と考えてたぶん間違いない。

なんで名前変えたのだろう?