ブログ

読んで思い出す。忘れるために書く

Q. bundler のバージョンが上がってもすぐに annotate_gem を使い続けたい

エラーメッセージ: Bundler could not find compatible versions for gem "bundler" でインストールできないので、対処したい

A. つぎの patch を適用して、自分で gem をビルド・インストールする

(再び bundler のバージョンが大きく上がった場合は当該箇所をそのバージョン番号に合わせた変更をする)

:100644 100644 a070d68 0000000 M   Gemfile.lock
:100644 100644 ecce82d 0000000 M    annotate_gem.gemspec

diff --git a/Gemfile.lock b/Gemfile.lock
index a070d68..01c4782 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -2,7 +2,7 @@ PATH
   remote: .
   specs:
     annotate_gem (0.0.13)
-      bundler (~> 1.1)
+      bundler (~> 2.0)
 
 GEM
   remote: https://rubygems.org/
@@ -34,4 +34,4 @@ DEPENDENCIES
   rake (~> 10.0)
 
 BUNDLED WITH
-   1.16.1
+   2.0.2
diff --git a/annotate_gem.gemspec b/annotate_gem.gemspec
index ecce82d..87c4947 100644
--- a/annotate_gem.gemspec
+++ b/annotate_gem.gemspec
@@ -21,7 +21,7 @@ Gem::Specification.new do |spec|
   spec.test_files    = spec.files.grep(%r{^(test|spec|features)/})
   spec.require_paths = ["lib"]
 
-  spec.add_runtime_dependency "bundler", "~> 1.1"
+  spec.add_runtime_dependency "bundler", "~> 2.0"
   spec.add_development_dependency "rake", "~> 10.0"
   spec.add_development_dependency "minitest", "~> 5.0"
   spec.add_development_dependency "mocha", "~> 1.1"

予め ivantsepp/annotate_gemリポジトリgit clone しておいて、次のコマンドでビルドとインストールを実施 :

git checkout v0.0.13
patch -p1 -i my_diff.patch
gem build annotate_gem.gemspec
gem install annotate_gem-0.0.14.gem

Links