Skip to content

[internal][recipe] Add JRuby -> Ruby mapping - #128

Merged
benjaminguttmann-avtq merged 2 commits into
mainfrom
introduce-jruby-ruby-mapping
Nov 5, 2026
Merged

benjaminguttmann-avtq merged 2 commits into
mainfrom
introduce-jruby-ruby-mapping

Conversation

@benjaminguttmann-avtq

@benjaminguttmann-avtq benjaminguttmann-avtq commented Nov 5, 2026 •

Copy link
Copy Markdown
Contributor

Add the mapping from JRuby to Ruby, so we are able to introduce new JRuby Versions:

https://www.jruby.org/download

JRuby 10.x requires Java 21+, but the recipe always used the stack's
JDK 8 and a pinned Maven 3.6.3, so builds for the newly mapped 10.0/10.1
versions would fail at compile time.

  • Select JDK and Maven per JRuby major version (jrubyToolchainFor):
    9.x keeps JDK 8 + Maven 3.6.3, 10.x uses JDK 21 + Maven 3.9.9
  • Add bootstrap.jruby_jdk21 to cflinuxfs4/cflinuxfs5 stack YAMLs and
    BootstrapConfig.JRubyJDK21 (installs to /opt/java21)
  • Derive the "supported prefixes" error message from the version map
  • Add tests for 10.0 -> 3.4, 10.1 -> 4.0, per-major toolchain selection
    and the JDK 21 stack config

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The newly accepted JRuby 10.x versions cannot compile because the build still selects JDK 8 rather than the required Java 21 or later.

1 open issue
What changed in this PR

Extends the binary builder’s JRuby-to-Ruby compatibility mapping to recognize newer JRuby series.

Changes:

  • Maps JRuby 10.0 to Ruby 3.4 and JRuby 10.1 to Ruby 4.0.
  • Preserves the existing JRuby 9.3 and 9.4 mappings.
File Description
internal/​recipe/​jruby.go Adds compatibility mappings for JRuby 10.0 and 10.1.

Review effort: Balanced

Comment thread internal/recipe/jruby.go Resolved

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Mocked downloads and command execution cannot verify the JDK 21 bootstrap checksum or establish JRuby 10.0/10.1 build and runtime compatibility, leaving real Docker/network validation on both stacks outstanding.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

@benjaminguttmann-avtq
benjaminguttmann-avtq merged commit 51a83f1 into main Nov 5, 2026
2 checks passed
@benjaminguttmann-avtq
benjaminguttmann-avtq deleted the introduce-jruby-ruby-mapping branch November 5, 2026 12:10
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.

3 participants