Born Too Late

Yuya's old tech blog.

Rails 4 と Coveralls で依存関係がうまく解決できないとき

2013-12-31 21:47:14

TL; DR

Gemfile に以下を追記すると解決するようになる。

gem "mime-types", "< 2"

原因

Coveralls 自体の問題ではなくて、Coveralls が依存している rest-client の問題でした。
Rails についてもそれ自体は関係無くて、actionmailer が依存している mail と rest-client で、それぞれが依存している mime-types の依存性の解決がうまくいかず、問題になっていました。

手元では以下のバージョンで問題が起こることを確認しています。

rest-client 1.6.7 が mime-types >= 1.16 に依存し、mail は mime-types ~> 1.16 に依存していることが問題になっているようでした。
とはいえ、このバージョン指定に矛盾は無いと思うので、Bundler による依存性解決のロジックに問題があるようにも思えます。

こまかくは追ってませんがとりあえずそんな感じで。
良いお年を。