FreeBSD - メンテナンス・トラブルシュート - ruby - ruby32-gems-3.6.2 → 3.6.3

 クラウディア
1. 概要
2. 状況
3. 対策

1. 概要

 発生は、2025年2月4日です。

2. 状況

 下記の状態です。

$ portversion -v | grep '<'
[Reading data from pkg(8) ... - 650 packages found - done]
ruby32-gems-3.6.2           <  needs updating (port has 3.6.3)
rubygem-psych-5.2.2         <  needs updating (port has 5.2.3)
rubygem-rdoc-6.10.0         <  needs updating (port has 6.11.0)
 環境によっては、「ruby32-gems」が依存する、もっとたくさんのものがアップグレード対象になっています。  それで、アップグレードしようとすると。

portupgrade -rR ruby32-gems

[Reading data from pkg(8) ... - 650 packages found - done]
[Gathering depends for devel/ruby-gems ................................................................ done]
[Gathering depends for devel/rubygem-rdoc ............ done]
[Gathering depends for textproc/rubygem-asciidoctor .. done]
[Exclude up-to-date packages ............................. done]
--->  Upgrading 'ruby32-gems-3.6.2' to 'ruby32-gems-3.6.3' (devel/ruby-gems)
--->  Building '/usr/ports/devel/ruby-gems'

・・・	略	・・・

Installing ri documentation for rubygems-3.6.3
ERROR:  While executing gem ... (NameError)
    uninitialized constant RDoc::Markup::Parser::SPACE_SEPARATED_LETTER_CLASS
        /usr/local/lib/ruby/gems/3.2/gems/rdoc-6.10.0/lib/rdoc/markup/parser.rb:221:in 'block in build_paragraph'
        /usr/local/lib/ruby/gems/3.2/gems/rdoc-6.10.0/lib/rdoc/markup/parser.rb:221:in 'build_paragraph'
        /usr/local/lib/ruby/gems/3.2/gems/rdoc-6.10.0/lib/rdoc/markup/parser.rb:407:in 'parse_text'

・・・	略	・・・

        /usr/ports/devel/ruby-gems/work/rubygems-3.6.3/lib/rubygems/command_manager.rb:194:in 'process_args'
        /usr/ports/devel/ruby-gems/work/rubygems-3.6.3/lib/rubygems/command_manager.rb:152:in 'run'
        /usr/ports/devel/ruby-gems/work/rubygems-3.6.3/lib/rubygems/gem_runner.rb:57:in 'run'
        setup.rb:36:in '<main>'
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/devel/ruby-gems
*** Error code 1

Stop.
make: stopped in /usr/ports/devel/ruby-gems
egrep: empty (sub)expression
** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portupgrade20250204-13834-cd0i7h env UPGRADE_TOOL=portupgrade UPGRADE_PORT=ruby32-gems-3.6.2 UPGRADE_PORT_VER=3.6.2 make
** Fix the problem and try again.
--->  Skipping 'textproc/rubygem-psych' (rubygem-psych-5.2.2) because a requisite package 'ruby32-gems-3.6.2' (devel/ruby-gems) failed (specify -k to force)
--->  Skipping 'devel/rubygem-rdoc' (rubygem-rdoc-6.10.0) because a requisite package 'rubygem-psych-5.2.2' (textproc/rubygem-psych) failed (specify -k to force)
** Listing the failed packages (-:ignored / *:skipped / !:failed)
        ! devel/ruby-gems (ruby32-gems-3.6.2)   (unknown build error)
        * textproc/rubygem-psych (rubygem-psych-5.2.2)
        * devel/rubygem-rdoc (rubygem-rdoc-6.10.0)
 てなことになるのです。

3. 対策

 あれこれやったのですが・・・。  最終的に。

Installing ri documentation for rubygems-3.6.3
ERROR:  While executing gem ... (NameError)
 の時点で、エラーになることに着目して。

cd /usr/ports/devel/ruby-gems
make config
「/usr/ports/devel/ruby-gems」-「make config」

 上記のチェックを外します。
 ドキュメントなくても、実害はないでしょ。


cd /usr/ports/devel/ruby-gems
make clean
make
make reinstall
 後は、依存するものをアップグレードして、とりあえず、落ち着きました。
ハイスピードプラン