Vote #81546
完了Bundler fails to install globalid when using Ruby < 2.6.0
0%
説明
The latest version of "globalid":https://rubygems.org/gems/globalid, 0.5.1, reqruies Ruby 2.6 or later (see https://github.com/rails/globalid/commit/5b255ffd7cdb335febe6fa0f3847a39b3161a9bb). Therefore, if you are using Ruby 2.5 or earlier, bundle install
will fail to resolve the dependency and abort in some environments.
https://www.redmine.org/builds/logs/build_4.2-stable_sqlite3_ruby-2.5_38.html
Fetching globalid 0.5.1 (was 0.4.2) Installing globalid 0.5.1 (was 0.4.2) Gem::RuntimeRequirementNotMetError: globalid requires Ruby version >= 2.6.0. The current ruby version is 2.6.0.rc1. An error occurred while installing globalid (0.5.1), and Bundler cannot continue. Make sure that `gem install globalid -v '0.5.1' --source 'https://rubygems.org/'` succeeds before bundling. In Gemfile: rails was resolved to 5.2.6, which depends on actionmailer was resolved to 5.2.6, which depends on activejob was resolved to 5.2.6, which depends on globalid Build step 'Execute shell' marked build as failure Finished: FAILURE
journals
The following patch fixes the issue. It avoids @Gem::RuntimeRequirementNotMetError@ by enforcing Bundler to install globalid 0.4.2 if Ruby version is < 2.6.0 (including Ruby 2.6.0-rc1 and 2.6.0-rc2 too).
<pre><code class="diff">
diff --git a/Gemfile b/Gemfile
index 984cc078a..8474da345 100644
--- a/Gemfile
+++ b/Gemfile
@@ -4,6 +4,7 @@ ruby '>= 2.5.0', '< 3.1.0'
gem 'bundler', '>= 1.12.0'
gem 'rails', '6.1.4'
+gem 'globalid', '~> 0.4.2' if Gem.ruby_version < Gem::Version.new('2.6.0')
gem 'rouge', '~> 3.26.0'
gem 'request_store', '~> 1.5.0'
gem 'mini_mime', '~> 1.1.0'
</code></pre>
--------------------------------------------------------------------------------
Committed the fix.
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------