Skip to content

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).

@chadlwilson chadlwilson merged commit 520163a into jruby:master Jul 22, 2025
33 checks passed
@chadlwilson chadlwilson deleted the jruby-10-0-1 branch July 22, 2025 14:17
@chadlwilson
Copy link
Contributor Author

Will merge and then we can add back if you have an idea what the issue is so I can look into it.🙏

@kares
Copy link
Member

kares commented Jul 22, 2025

👍 looked into Bundler source for a bit, no ideas on my part...

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