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/downloadJRuby 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