JRuby 9.2.0.0-SNAPSHOTの調査

RuboCop の Travis CI で jruby-head が落ちているのが気に掛かっていたので、少し調べようと思った。まずは環境が必要。

現在 zip のダウンロードができない問題から、普段使いの rbenv では jruby-head がインストールできないため、Travis CI のログをもとに RVM を使ってインストールする。

% rvm get stable
% rvm remove ${ruby_alias:-jruby-head} --gems
% rvm remove jruby-head --gems --fuzzy
% rvm install jruby-head --binary

絞り込んでみた Excepted と Actual は以下。後述の Issue から抜粋した振る舞いの違いとなる。

Expected Behavior

JRuby 9.1.13.0 and MRI 2.4.2 の振る舞い。

% rvm use jruby-9.1.13.0
Using /home/vagrant/.rvm/gems/jruby-9.1.13.0
% rake --version
rake, version 12.1.0
% ruby -e 'system("rake --version")'
rake, version 12.1.0

Actual Behavior

JRuby 9.2.0.0-SNAPSHOT の振る舞い。

% rvm use jruby-head
Using /home/vagrant/.rvm/gems/jruby-head
% rake --version
rake, version 12.1.0
% ruby -e 'system("rake --version")' # Do not return `rake` version

どうも system まわりが問題だと特定はできたもののよく分からない。とりあえず Issue にてレポートをした。

JRuby 9.2.0.0-SNAPSHOT does not return result of `rake` via `system` · Issue #4809 · jruby/jruby · GitHub