JRuby 10.0.5.0 Released
Monday, April 06 2026
The JRuby community is pleased to announce the release of JRuby 10.0.5.0.
- Homepage: https://www.jruby.org/
- Download: https://www.jruby.org/download
JRuby 10.0.5.x targets Ruby 3.4 compatibility.
Thank you to our contributors this release, you help keep JRuby moving forward! @evaniainbrooks, @kares, @chadlwilson, #jimtng
Compatibility
- Fixed: Two bugs in the JIT compiler that broke certain super calls and defined_method yields. (#8944, #8946, #9310, #9349)
- Fixed: Fiber#raise left the fiber in an resumable state by not correctly transfering control. (#9297, #9356)
- Fixed: Connecting a socket using nonblocking operations failed to complete the establishment of the connection. This affected Redis users, among other cases. (#9304, #9305)
- Fixed: Process#detach raised a NullPointerException if called from a non-main thread. (#9314, #9311)
JVM Integration
- Java 26 is officially supported. (#9332)
Platform Integration
- New platform support: The native library backend for JRuby, JNR, has been updated to include support for the RISCv64 architecture.
- Fixed on Windows: File#flock used unsupported native operations on Windows, causing it to raise errors. This affected the “logger” library, among other cases. (#9347, #9348)
- Fixed on Windows: IO#popen failed to pass keyword arguments if also given a leading environment hash. (#9351, #9352)
Stability
- Fixed: Several memory leaks that affected users running multiple JRuby instances in a single process. (#9070, #9092, #9187, #9359)
43 Issues and PRs resolved for 10.0.5.0
- #4213 squiggly heredoc strip space between interpolation and line connector by mistake
- #8944 Double unresolved super from aliased method when compiled with indy
- #8946 define_method conversion fails to yield after indy JIT
- #9070 Memory leak in jruby within openhab
- #9092 ThreadLocal Memory Leak in JRuby 10.0.2.0 with ScriptingContainer
- #9187 Memory leak running RubyGems in separate runtimes in a loop
- #9261 Fix Time subsecond precision loss from floating point arithmetic
- #9292 Reduce BigInteger construction
- #9293 Incorrect caller_locations line for multi-line call with unless
- #9297 Different behaviour than MRI on Fiber#raise
- #9302 review call-info reset
- #9304 Socket.tcp does not complete connection
- #9305 Ensure connectable sockets finish
- #9307 Time being returned as ASCII-8BIT encoding in JRuby 10
- #9310 [fix] define_method captured block propagation in JIT mode
- #9311 Push a frame for thread toplevel
- #9312 Construct xmlschema string as US-ASCII
- #9314
Process.detach raises ArrayIndexOutOfBoundsException if called from a thread that is not the main thread
- #9316 [10.0] build: bump maven from 3.9.11 to 3.9.14 via script-only style
- #9317 [10.0] build: improve build/maven consistency / bump github actions
- #9322 Fix prepended module initialize not called for Ruby classes rooted in a Java superclass
- #9323 [deps] bump jruby-openssl to latest
- #9324 NPE retrieving IO channel
- #9326 [fix] NullPointerException from closed IO
- #9330 Sync with prism update so we can compile jruby-prism using 10.0
- #9332 Support Java 26
- #9334 [fix] Exception#dup: copy cause to the duplicated exception
- #9335 [fix] MatchData#deconstruct_keys: include non-participating captures
- #9336 [fix] Bignum#eql?: use type-strict comparison (not ==)
- #9337 [fix] Bignum comparison with Float in <=> and ==
- #9338 [fix] Bignum: use correct site for coerced comparisons
- #9339 [fix] IO#reopen: copy encoding from source IO
- #9340 Hash#rehash corrupts insertion-order when deduplicating keys
- #9341 [fix] Hash#rehash: fix deduplicating keys (#9340)
- #9343 [compat] Thread#native_thread_id: using Java thread-id
- #9344 [fix] Digest::Base: synchronize MessageDigest mutation
- #9345 [fix] Encoding.compatible?: check when swapping args
- #9347 Use JDK for File#flock on Windows
- #9348 ruby/logger gem broken after version 1.6.3 using JRuby on Windows
- #9349 Disable AliasMethod direct binding for now
- #9352 Issue with calling IO.popen(env, cmd, opts) on Windows
- #9351 Fix non-native IO.popen env + kwargs handling
- #9354 Update JNR dependencies
- #9355 Propagate newline from if to bodies
- #9356 Properly complete Fiber#raise transfer
- #9359 Leak fixes redux
- #9364 [fix] TCPServer#initialize: close channel on bind/init failure
The JRuby community is pleased to announce the release of JRuby 10.0.5.0.
- Homepage: https://www.jruby.org/
- Download: https://www.jruby.org/download
JRuby 10.0.5.x targets Ruby 3.4 compatibility.
Thank you to our contributors this release, you help keep JRuby moving forward! @evaniainbrooks, @kares, @chadlwilson, #jimtng
Compatibility
- Fixed: Two bugs in the JIT compiler that broke certain super calls and defined_method yields. (#8944, #8946, #9310, #9349)
- Fixed: Fiber#raise left the fiber in an resumable state by not correctly transfering control. (#9297, #9356)
- Fixed: Connecting a socket using nonblocking operations failed to complete the establishment of the connection. This affected Redis users, among other cases. (#9304, #9305)
- Fixed: Process#detach raised a NullPointerException if called from a non-main thread. (#9314, #9311)
JVM Integration
- Java 26 is officially supported. (#9332)
Platform Integration
- New platform support: The native library backend for JRuby, JNR, has been updated to include support for the RISCv64 architecture.
- Fixed on Windows: File#flock used unsupported native operations on Windows, causing it to raise errors. This affected the “logger” library, among other cases. (#9347, #9348)
- Fixed on Windows: IO#popen failed to pass keyword arguments if also given a leading environment hash. (#9351, #9352)
Stability
- Fixed: Several memory leaks that affected users running multiple JRuby instances in a single process. (#9070, #9092, #9187, #9359)
43 Issues and PRs resolved for 10.0.5.0
- #4213 squiggly heredoc strip space between interpolation and line connector by mistake
- #8944 Double unresolved super from aliased method when compiled with indy
- #8946 define_method conversion fails to yield after indy JIT
- #9070 Memory leak in jruby within openhab
- #9092 ThreadLocal Memory Leak in JRuby 10.0.2.0 with ScriptingContainer
- #9187 Memory leak running RubyGems in separate runtimes in a loop
- #9261 Fix Time subsecond precision loss from floating point arithmetic
- #9292 Reduce BigInteger construction
- #9293 Incorrect caller_locations line for multi-line call with unless
- #9297 Different behaviour than MRI on Fiber#raise
- #9302 review call-info reset
- #9304 Socket.tcp does not complete connection
- #9305 Ensure connectable sockets finish
- #9307 Time being returned as ASCII-8BIT encoding in JRuby 10
- #9310 [fix] define_method captured block propagation in JIT mode
- #9311 Push a frame for thread toplevel
- #9312 Construct xmlschema string as US-ASCII
- #9314
Process.detachraises ArrayIndexOutOfBoundsException if called from a thread that is not the main thread - #9316 [10.0] build: bump maven from 3.9.11 to 3.9.14 via script-only style
- #9317 [10.0] build: improve build/maven consistency / bump github actions
- #9322 Fix prepended module initialize not called for Ruby classes rooted in a Java superclass
- #9323 [deps] bump jruby-openssl to latest
- #9324 NPE retrieving IO channel
- #9326 [fix] NullPointerException from closed IO
- #9330 Sync with prism update so we can compile jruby-prism using 10.0
- #9332 Support Java 26
- #9334 [fix] Exception#dup: copy cause to the duplicated exception
- #9335 [fix] MatchData#deconstruct_keys: include non-participating captures
- #9336 [fix] Bignum#eql?: use type-strict comparison (not ==)
- #9337 [fix] Bignum comparison with Float in <=> and ==
- #9338 [fix] Bignum: use correct site for coerced comparisons
- #9339 [fix] IO#reopen: copy encoding from source IO
- #9340 Hash#rehash corrupts insertion-order when deduplicating keys
- #9341 [fix] Hash#rehash: fix deduplicating keys (#9340)
- #9343 [compat] Thread#native_thread_id: using Java thread-id
- #9344 [fix] Digest::Base: synchronize MessageDigest mutation
- #9345 [fix] Encoding.compatible?: check when swapping args
- #9347 Use JDK for File#flock on Windows
- #9348 ruby/logger gem broken after version 1.6.3 using JRuby on Windows
- #9349 Disable AliasMethod direct binding for now
- #9352 Issue with calling IO.popen(env, cmd, opts) on Windows
- #9351 Fix non-native IO.popen env + kwargs handling
- #9354 Update JNR dependencies
- #9355 Propagate newline from if to bodies
- #9356 Properly complete Fiber#raise transfer
- #9359 Leak fixes redux
- #9364 [fix] TCPServer#initialize: close channel on bind/init failure