JRuby Released

Wednesday, October 18 2023

The JRuby community is pleased to announce the release of JRuby

JRuby 9.4.x targets Ruby 3.1 compatibility.

Thank you to our contributors this release, you help keep JRuby moving forward! @ahorek, @chadlwilson, @k77ch7, @kares, @mrnoname1000, @ntkme, @skmp

Ruby Compatibility

Standard Library

  • Default gem updates:
    • jruby-openssl 0.14.2. #7886
    • psych is updated to, which uses SnakeYAML and exposes Psych::Parser.code_point_limit= for globally setting the code point limit.
    • bigdecimal is now a default gem (3.1.4) for the pure-Ruby portions; the extension remains part of JRuby itself. #7925
    • stringio is updated to 3.0.8. #7881

Platform Support

  • This release includes native support for Windows on the AArch64 (ARM64) platform. #7843, #7936, #7937, #7941, #7945, #7960
  • The jruby shell script gains support for ksh93, meaning that essentially all Bourne-compatible shells can run it. #7870

JVM Integration

  • Virtual thread use in Fiber can now be disabled using the jruby.fiber.vthread=false property (or JRuby flag -Xfiber.vthread=false). #7907
  • Multiple small bugs in JVM bytecode generation and invokedynamic logic were discovered and fixed. #7913

Build and Distribution

  • The JRuby/Maven stack of plugins used to integrate Ruby and Maven artifacts have been updated to the latest versions, now using JRuby for builds and avoiding the use of deprecated rubygems.org APIs. #7872


  • Conditional assignment of instance variables now requires only a single lookup, and optimizes to a simple read after assignment. #7891, #7896

78 Github Issues and PRs resolved for