Bug #21541
openmake install is failing due to using rdoc repo
Description
Currently, ruby-dev-builder & ruby-loco are failing due to https://github.com/ruby/ruby/commit/8f6f9e88c70bbae, which changed the rdoc 'bundled gem' install from using a released gem to the repo. This results in an invalid rdoc installation.
RDoc contains *.ry and *.kpeg source files that need to be 'compiled' into *.rb files with racc and kpeg.
These *.rb files are not contained in the rdoc repo.
One possible change would be to have rdoc include the compiled *.rb files in its repo. Puma has a similar issue with ragel files. A GHA workflow (https://github.com/puma/puma/blob/master/.github/workflows/ragel.yml) checks that the compiled *.c file matches its respective *.rl source file.
Otherwise, a bit of code would be required in Ruby (and install of kpeg), or, rdoc must be installed from a released gem.
Updated by Eregon (Benoit Daloze) about 11 hours ago
@MSP-Greg Could you make a PR adding a CI job to ruby/ruby that make install
+ run that cli_test.rb, like in https://github.com/ruby/ruby-dev-builder/actions/runs/16946820401/job/48029817265 ?
Then we should catch these issues directly in ruby/ruby which is better.
There is maybe/probably already a CI workflow doing make install
, in that case just alter that one to run that extra test.
I think it should be generally agreed that executables shipped with Ruby should work and are worth checking in CI.
Maybe that test could even be part of ruby/spec (and potentially skipped if not make install
-ed if that's a problem), but doesn't have to be. Could also be part of test-all under test/ruby or so.
FWIW we already have a similar test in truffleruby: https://github.com/oracle/truffleruby/blob/6e50bca7441b728207c2fb2bfaa51ae93830f475/spec/truffle/launcher_spec.rb#L20-L35
Updated by Eregon (Benoit Daloze) about 11 hours ago
One idea: probably I should add failures from ruby/ruby-dev-builder as notification to the CRuby Slack in the CI alerts channel, that might be a good way to notice this kind of problem early.
When ruby/ruby-dev-builder fails, in most cases it's an issue in ruby/ruby.
Updated by MSP-Greg (Greg L) about 6 hours ago
I'll look at adding a CLI check to CI.