Skip to content

Test against JRuby 10.0.1.0 #299

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

chadlwilson
Copy link
Contributor

@chadlwilson chadlwilson commented Jul 18, 2025

  • Needs new version of setup-ruby action with JRuby 10.0.1.0 enumerated

I removed the locked bundler versions as the bundler-maven-plugin seems to have issues switching bundler versions dynamically when run within GitHub Actions in some cases, which only seems to happen when the default jruby bundler version is different to that locked in the lockfile. Errors are like the below (changed as default bundler version packaged with jruby 10.0.1.0 moved to 2.6.9)

Since I can't find a way to "fix" this, easier to just remove the locked versions and use the versions implied by the JRuby version under test.

Errno::ENOENT: No such file or directory - /usr/lib/jvm/temurin-21-jdk-amd64/bin/java -cp /home/runner/.m2/repository/org/jruby/jruby-complete/10.0.1.0/jruby-complete-10.0.1.0.jar:/home/runner/work/jruby-rack/jruby-rack/target/test-classes:/home/runner/work/jruby-rack/jruby-rack/target/classes:/home/runner/.m2/repository/org/jruby/jruby-core/10.0.1.0/jruby-core-10.0.1.0.jar:/home/runner/.m2/repository/javax/servlet/javax.servlet-api/3.0.1/javax.servlet-api-3.0.1.jar:/home/runner/.m2/repository/jakarta/servlet/jsp/jakarta.servlet.jsp-api/2.3.6/jakarta.servlet.jsp-api-2.3.6.jar:/home/runner/.m2/repository/commons-logging/commons-logging/1.3.5/commons-logging-1.3.5.jar:/home/runner/.m2/repository/org/slf4j/slf4j-api/2.0.17/slf4j-api-2.0.17.jar:/home/runner/.m2/repository/org/slf4j/slf4j-simple/2.0.17/slf4j-simple-2.0.17.jar:/home/runner/.m2/repository/org/springframework/spring-web/4.3.30.RELEASE/spring-web-4.3.30.RELEASE.jar:/home/runner/.m2/repository/org/springframework/spring-aop/4.3.30.RELEASE/spring-aop-4.3.30.RELEASE.jar:/home/runner/.m2/repository/org/springframework/spring-beans/4.3.30.RELEASE/spring-beans-4.3.30.RELEASE.jar:/home/runner/.m2/repository/org/springframework/spring-context/4.3.30.RELEASE/spring-context-4.3.30.RELEASE.jar:/home/runner/.m2/repository/org/springframework/spring-expression/4.3.30.RELEASE/spring-expression-4.3.30.RELEASE.jar:/home/runner/.m2/repository/org/springframework/spring-core/4.3.30.RELEASE/spring-core-4.3.30.RELEASE.jar:/home/runner/.m2/repository/org/springframework/spring-test/4.3.30.RELEASE/spring-test-4.3.30.RELEASE.jar:/home/runner/.m2/repository/jakarta/el/jakarta.el-api/3.0.3/jakarta.el-api-3.0.3.jar:/home/runner/.m2/repository/org/jruby/jruby-complete/10.0.1.0/jruby-complete-10.0.1.0.jar org.jruby.Main
  org/jruby/RubyKernel.java:1957:in '_exec_internal'
          <internal:uri:classloader:/jruby/kernel/kernel.rb>:3:in 'exec'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/self_manager.rb:93:in 'block in restart_with'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler.rb:393:in 'block in with_original_env'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler.rb:696:in 'with_env'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler.rb:393:in 'with_original_env'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/self_manager.rb:92:in 'restart_with'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/self_manager.rb:62:in 'install_and_restart_with'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/self_manager.rb:28:in 'install_locked_bundler_and_restart_with_it_if_needed'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/cli/install.rb:18:in 'run'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/cli.rb:247:in 'block in install'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/settings.rb:159:in 'temporary'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/cli.rb:246:in 'install'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/vendor/thor/lib/thor/command.rb:28:in 'run'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/vendor/thor/lib/thor/invocation.rb:127:in 'invoke_command'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/vendor/thor/lib/thor.rb:538:in 'dispatch'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/cli.rb:35:in 'dispatch'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/vendor/thor/lib/thor/base.rb:584:in 'start'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/cli.rb:29:in 'start'
          uri:classloader:/META-INF/jruby.home/lib/ruby/gems/shared/gems/bundler-2.6.9/exe/bundle:28:in 'block in <main>'
          uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/bundler/friendly_errors.rb:117:in 'with_friendly_errors'
          uri:classloader:/META-INF/jruby.home/lib/ruby/gems/shared/gems/bundler-2.6.9/exe/bundle:20:in '<main>'
          org/jruby/RubyKernel.java:1212:in 'load'
          uri:classloader:/META-INF/jruby.home/bin/bundle:25:in '<main>'

@chadlwilson chadlwilson marked this pull request as ready for review July 22, 2025 11:08
@chadlwilson chadlwilson force-pushed the jruby-10-0-1 branch 3 times, most recently from 9452793 to 68d3cd6 Compare July 22, 2025 11:40
@chadlwilson
Copy link
Contributor Author

@kares This is passing now; since I updated with the new setup-ruby action version. :-)

@kares
Copy link
Member

kares commented Jul 22, 2025

nice, off-topic but how so that those:

BUNDLED WITH

directives went away, do you happen to know?

@chadlwilson
Copy link
Contributor Author

directives went away, do you happen to know?

Yeah, I updated the description to try and explain why I removed them.

Basically the bundler version switches (JRuby default vs lockfile) are not working properly via the setup here. I don't know what the issue is, perhaps something specific to the GHA and/or setup-java environment. If you have an idea how to resolve it (see actions runs like this)

It was working before because all JRuby 9.4 and 10 versions were using bundler 2.6.3. But JRuby 10.0.1.0 moved to bundler 2.6.9 causing a need for a bundler version switch.

@chadlwilson
Copy link
Contributor Author

It looks to me like the old problem of having to create some dummy script file to set to the RUBY env var which invokes JRuby via java -cp jruby-complete-xxx.jar to stop bundler interpreting Gem.ruby as something which can be directly executed "spaces and all". But I am not sure why I could not immediately replicate the issue locally (on MacOS).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants