Package: ruby
Version: 1:2.7
Severity: important

I ran apt update recently, and got ruby 2.7, but now gem seems to have been 
broken.  
Ruby itself continues to work: however, all gems using native extensions seem to
have been broken.
Intrestingly, bundle install fetched and succsessfully installed several gems,
untill it reached one with native extensions, at which point it died 
dramatically.

Any call to 'gem', regardless of subcommands or options, returns this:

calum@CalumsDebianSupreme:~$ gem
Ignoring bigdecimal-2.0.0 because its extensions are not built. Try: gem 
pristine bigdecimal --version 2.0.0
Ignoring bigdecimal-1.4.4 because its extensions are not built. Try: gem 
pristine bigdecimal --version 1.4.4
Ignoring commonmarker-0.21.0 because its extensions are not built. Try: gem 
pristine commonmarker --version 0.21.0
Ignoring commonmarker-0.17.13 because its extensions are not built. Try: gem 
pristine commonmarker --version 0.17.13
Ignoring date-3.0.0 because its extensions are not built. Try: gem pristine 
date --version 3.0.0
Ignoring etc-1.1.0 because its extensions are not built. Try: gem pristine etc 
--version 1.1.0
Ignoring eventmachine-1.2.7 because its extensions are not built. Try: gem 
pristine eventmachine --version 1.2.7
Ignoring ffi-1.12.2 because its extensions are not built. Try: gem pristine ffi 
--version 1.12.2
Ignoring ffi-1.12.1 because its extensions are not built. Try: gem pristine ffi 
--version 1.12.1
Ignoring ffi-1.11.3 because its extensions are not built. Try: gem pristine ffi 
--version 1.11.3
Ignoring ffi-1.11.1 because its extensions are not built. Try: gem pristine ffi 
--version 1.11.1
Ignoring ffi-1.9.18 because its extensions are not built. Try: gem pristine ffi 
--version 1.9.18
Ignoring http_parser.rb-0.6.0 because its extensions are not built. Try: gem 
pristine http_parser.rb --version 0.6.0
Ignoring io-console-0.5.6 because its extensions are not built. Try: gem 
pristine io-console --version 0.5.6
Ignoring io-console-0.5.5 because its extensions are not built. Try: gem 
pristine io-console --version 0.5.5
Ignoring io-console-0.5.2 because its extensions are not built. Try: gem 
pristine io-console --version 0.5.2
Ignoring json-2.3.0 because its extensions are not built. Try: gem pristine 
json --version 2.3.0
Ignoring nokogiri-1.10.9 because its extensions are not built. Try: gem 
pristine nokogiri --version 1.10.9
Ignoring nokogiri-1.10.7 because its extensions are not built. Try: gem 
pristine nokogiri --version 1.10.7
Ignoring nokogiri-1.8.0 because its extensions are not built. Try: gem pristine 
nokogiri --version 1.8.0
Ignoring nokogumbo-2.0.2 because its extensions are not built. Try: gem 
pristine nokogumbo --version 2.0.2
Ignoring psych-3.1.0 because its extensions are not built. Try: gem pristine 
psych --version 3.1.0
Ignoring sassc-2.2.1 because its extensions are not built. Try: gem pristine 
sassc --version 2.2.1
Ignoring stringio-0.1.0 because its extensions are not built. Try: gem pristine 
stringio --version 0.1.0
Ignoring strscan-1.0.3 because its extensions are not built. Try: gem pristine 
strscan --version 1.0.3
Ignoring unicode-0.4.4.4 because its extensions are not built. Try: gem 
pristine unicode --version 0.4.4.4
Ignoring zlib-1.1.0 because its extensions are not built. Try: gem pristine 
zlib --version 1.1.0
/usr/lib/ruby/2.7.0/yaml.rb:3: warning: It seems your ruby installation is 
missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.
Traceback (most recent call last):
        14: from /usr/bin/gem:21:in `<main>'
        13: from /usr/lib/ruby/2.7.0/rubygems/gem_runner.rb:44:in `run'
        12: from /usr/lib/ruby/2.7.0/rubygems/gem_runner.rb:79:in 
`do_configuration'
        11: from /usr/lib/ruby/2.7.0/rubygems/gem_runner.rb:79:in `new'
        10: from /usr/lib/ruby/2.7.0/rubygems/config_file.rb:182:in `initialize'
         9: from /usr/lib/ruby/2.7.0/rubygems/config_file.rb:332:in `load_file'
         8: from /usr/lib/ruby/2.7.0/rubygems.rb:710:in `load_yaml'
         7: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in 
`require'
         6: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in 
`require'
         5: from /usr/lib/ruby/2.7.0/yaml.rb:4:in `<top (required)>'
         4: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in 
`require'
         3: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in 
`require'
         2: from /home/calum/gems/gems/psych-3.1.0/lib/psych.rb:14:in `<top 
(required)>'
         1: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in 
`require'
/usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require': cannot 
load such file -- 2.7/psych.so (LoadError)
        15: from /usr/bin/gem:21:in `<main>'
        14: from /usr/lib/ruby/2.7.0/rubygems/gem_runner.rb:44:in `run'
        13: from /usr/lib/ruby/2.7.0/rubygems/gem_runner.rb:79:in 
`do_configuration'
        12: from /usr/lib/ruby/2.7.0/rubygems/gem_runner.rb:79:in `new'
        11: from /usr/lib/ruby/2.7.0/rubygems/config_file.rb:182:in `initialize'
        10: from /usr/lib/ruby/2.7.0/rubygems/config_file.rb:332:in `load_file'
         9: from /usr/lib/ruby/2.7.0/rubygems.rb:710:in `load_yaml'
         8: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in 
`require'
         7: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in 
`require'
         6: from /usr/lib/ruby/2.7.0/yaml.rb:4:in `<top (required)>'
         5: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in 
`require'
         4: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in 
`require'
         3: from /home/calum/gems/gems/psych-3.1.0/lib/psych.rb:13:in `<top 
(required)>'
         2: from /home/calum/gems/gems/psych-3.1.0/lib/psych.rb:16:in `rescue 
in <top (required)>'
         1: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in 
`require'
/usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require': 
libruby-2.5.so.2.5: cannot open shared object file: No such file or directory - 
/home/calum/gems/gems/psych-3.1.0/lib/psych.so (LoadError)

I initially had both ruby 2.5 and 2.7 installed, but removing 2.7 did not fix 
the error.
I considered reinstalling ruby, but apt would then have removed a whole chain 
of other programs.
Further, I shouldnt need to reinstall ruby: rebuilding native extensions should
be done by the upgrade script.

Any help in making gem usable again, both for me and for anyone else who 
encounters this,
would be much appreciated!

-- System Information:
Debian Release: bullseye/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 5.4.0-4-amd64 (SMP w/8 CPU cores)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, 
TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages ruby depends on:
ii  ruby2.7  2.7.0-4

ruby recommends no packages.

Versions of packages ruby suggests:
ii  ri        1:2.7
ii  ruby-dev  1:2.7

-- no debconf information

Reply via email to