Describe the problem as clearly as you can
gem update --system fails on ruby 2.7, or at least on ruby 2.7 as installed by ruby/setup-ruby. Specifically, this is causing CI failures for gems that still support older rubies.
See e.g: https://github.com/ruby/net-imap/actions/runs/7273131765/job/19916818198?pr=251
Did you try upgrading RubyGems?
This is, in fact, the problem. 😉
Post steps to reproduce the problem
I assume this is happening for other gems supporting older versions of ruby as well. The workflow file is fairly standard.
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
rubygems: latest
Which command did you run?
/opt/hostedtoolcache/Ruby/2.7.8/x64/bin/gem --version
3.1.6
Default RubyGems version is 3.1.6
Updating RubyGems to latest version
/opt/hostedtoolcache/Ruby/2.7.8/x64/bin/gem update --system
ERROR: Error installing rubygems-update:
There are no versions of rubygems-update (= 3.5.3) compatible with your Ruby & RubyGems
rubygems-update requires Ruby version >= 3.0.0. The current ruby version is 2.7.8.[22](https://github.com/ruby/net-imap/actions/runs/7273131765/job/19916818198?pr=251#step:3:27)5.
ERROR: While executing gem ... (NoMethodError)
undefined method `version' for nil:NilClass
Updating rubygems-update
Took 14.85 seconds
Error: The process '/opt/hostedtoolcache/Ruby/2.7.8/x64/bin/gem' failed with exit code 1
What were you expecting to happen?
The latest (compatible) version would be installed.
What actually happened?
The command failed.
Misc
Perhaps this is related to #7310? For purposes of passing CI, the simple workaround is to set a version constraint rather than use latest. Still, it would be nice if that were unnecessary. 🙂
Describe the problem as clearly as you can
gem update --systemfails on ruby 2.7, or at least on ruby 2.7 as installed byruby/setup-ruby. Specifically, this is causing CI failures for gems that still support older rubies.See e.g: https://github.com/ruby/net-imap/actions/runs/7273131765/job/19916818198?pr=251
Did you try upgrading RubyGems?
This is, in fact, the problem. 😉
Post steps to reproduce the problem
I assume this is happening for other gems supporting older versions of ruby as well. The workflow file is fairly standard.
Which command did you run?
What were you expecting to happen?
The latest (compatible) version would be installed.
What actually happened?
The command failed.
Misc
Perhaps this is related to #7310? For purposes of passing CI, the simple workaround is to set a version constraint rather than use
latest. Still, it would be nice if that were unnecessary. 🙂