Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 676946 - dev-ruby/rubygems-3*: default gems do not work (e.g. irb26 broken)
Summary: dev-ruby/rubygems-3*: default gems do not work (e.g. irb26 broken)
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All All
: Normal normal (vote)
Assignee: Gentoo Ruby Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-01-30 19:55 UTC by Arfrever Frehtes Taifersar Arahesis
Modified: 2021-05-13 17:28 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Arfrever Frehtes Taifersar Arahesis 2019-01-30 19:55:48 UTC
irb26 is broken, while irb25 still works.

$ irb25
irb(main):001:0> 
$ irb26
Traceback (most recent call last):
        2: from /usr/bin/irb26:23:in `<main>'
        1: from /usr/lib64/ruby/site_ruby/2.6.0/rubygems.rb:302:in `activate_bin_path'
/usr/lib64/ruby/site_ruby/2.6.0/rubygems.rb:283:in `find_spec_for_exe': can't find gem irb (>= 0.a) with executable irb (Gem::GemNotFoundException)
$


irb files seem to be installed by dev-lang/ruby:2.6:

$ qlist dev-lang/ruby-2.6 | sort | grep irb
/usr/bin/irb26
/usr/lib64/ruby/2.6.0/irb.rb
/usr/lib64/ruby/2.6.0/irb/cmd/chws.rb
/usr/lib64/ruby/2.6.0/irb/cmd/fork.rb
/usr/lib64/ruby/2.6.0/irb/cmd/help.rb
/usr/lib64/ruby/2.6.0/irb/cmd/load.rb
/usr/lib64/ruby/2.6.0/irb/cmd/nop.rb
/usr/lib64/ruby/2.6.0/irb/cmd/pushws.rb
/usr/lib64/ruby/2.6.0/irb/cmd/subirb.rb
/usr/lib64/ruby/2.6.0/irb/completion.rb
/usr/lib64/ruby/2.6.0/irb/context.rb
/usr/lib64/ruby/2.6.0/irb/ext/change-ws.rb
/usr/lib64/ruby/2.6.0/irb/ext/history.rb
/usr/lib64/ruby/2.6.0/irb/ext/loader.rb
/usr/lib64/ruby/2.6.0/irb/ext/multi-irb.rb
/usr/lib64/ruby/2.6.0/irb/ext/save-history.rb
/usr/lib64/ruby/2.6.0/irb/ext/tracer.rb
/usr/lib64/ruby/2.6.0/irb/ext/use-loader.rb
/usr/lib64/ruby/2.6.0/irb/ext/workspaces.rb
/usr/lib64/ruby/2.6.0/irb/extend-command.rb
/usr/lib64/ruby/2.6.0/irb/frame.rb
/usr/lib64/ruby/2.6.0/irb/help.rb
/usr/lib64/ruby/2.6.0/irb/init.rb
/usr/lib64/ruby/2.6.0/irb/input-method.rb
/usr/lib64/ruby/2.6.0/irb/inspector.rb
/usr/lib64/ruby/2.6.0/irb/lc/error.rb
/usr/lib64/ruby/2.6.0/irb/lc/help-message
/usr/lib64/ruby/2.6.0/irb/lc/ja/encoding_aliases.rb
/usr/lib64/ruby/2.6.0/irb/lc/ja/error.rb
/usr/lib64/ruby/2.6.0/irb/lc/ja/help-message
/usr/lib64/ruby/2.6.0/irb/locale.rb
/usr/lib64/ruby/2.6.0/irb/magic-file.rb
/usr/lib64/ruby/2.6.0/irb/notifier.rb
/usr/lib64/ruby/2.6.0/irb/output-method.rb
/usr/lib64/ruby/2.6.0/irb/ruby-lex.rb
/usr/lib64/ruby/2.6.0/irb/ruby-token.rb
/usr/lib64/ruby/2.6.0/irb/slex.rb
/usr/lib64/ruby/2.6.0/irb/src_encoding.rb
/usr/lib64/ruby/2.6.0/irb/version.rb
/usr/lib64/ruby/2.6.0/irb/workspace.rb
/usr/lib64/ruby/2.6.0/irb/ws-for-case-2.rb
/usr/lib64/ruby/2.6.0/irb/xmp.rb
/usr/lib64/ruby/gems/2.6.0/gems/irb-1.0.0/exe/irb
/usr/lib64/ruby/gems/2.6.0/specifications/default/irb-1.0.0.gemspec
/usr/share/man/man1/irb26.1.bz2
Comment 1 Hans de Graaff gentoo-dev Security 2019-02-03 20:22:30 UTC
This turns out to be an issue with rubygems. It seems that our operating_system.rb defaults that used to work don't properly allow handling of "default" gems, and irb is now packaged as such a default gem in ruby 2.6.
Comment 2 Larry the Git Cow gentoo-dev 2019-06-02 07:41:03 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=61fb360f9ed69f19ee2d8143070602523e05bc97

commit 61fb360f9ed69f19ee2d8143070602523e05bc97
Author:     Hans de Graaff <graaff@gentoo.org>
AuthorDate: 2019-06-02 07:40:38 +0000
Commit:     Hans de Graaff <graaff@gentoo.org>
CommitDate: 2019-06-02 07:40:53 +0000

    dev-ruby/rubygems: new Gentoo defaults
    
    This revision has pretty much completely rewritten Gentoo defaults for
    ruby. The old defaults were broken with the introduction of default gems
    in rubygems 3.0.0. The new defaults should be backward compatible with
    the old defaults, but they use defined hooks for the most part to do the
    work.
    
    Bug: https://bugs.gentoo.org/676946
    Signed-off-by: Hans de Graaff <graaff@gentoo.org>
    Package-Manager: Portage-2.3.66, Repoman-2.3.11

 dev-ruby/rubygems/files/gentoo-defaults-3.rb |  57 +++++++++++++
 dev-ruby/rubygems/rubygems-3.0.3-r1.ebuild   | 120 +++++++++++++++++++++++++++
 2 files changed, 177 insertions(+)
Comment 3 Hans de Graaff gentoo-dev Security 2019-06-02 07:43:25 UTC
dev-ruby/rubygems-3.0.3-r1 has rewritten Gentoo defaults that fix this issue.

This version is currently masked for testing since the rewritten defaults may break other things. I'd be happy to get feedback on this new version.
Comment 4 Hans de Graaff gentoo-dev Security 2019-07-26 06:49:57 UTC
dev-ruby/rubygems-3.0.4-r1 contains a fix for this issue and has been unmasked.