[ruby-talk:444779] [ANN] JRuby 10.0.4.0 Released

0 views
Skip to first unread message

Thomas E Enebo via ruby-talk

unread,
Mar 4, 2026, 1:09:16 PMMar 4
to JRuby project mailing list, ruby-talk ML, Thomas E Enebo
JRuby 10.0.4.0 Released
Wednesday, March 04 2026

The JRuby community is pleased to announce the release of JRuby 10.0.4.0.

   - Homepage: https://www.jruby.org/
   - Download: https://www.jruby.org/download

JRuby 10.0.4.x targets Ruby 3.4 compatibility.

Thank you to our contributors this release, you help keep JRuby moving forward! @evaniainbrooks, @katafrakt, @mrnoname1000

Standard Library

   - The syslog library moves to bundled gems. (#9198)
   - The unicode_normalize library is now thread-safely loaded as an internal library (#9231, #9232)

43 Issues and PRs resolved for 10.0.4.0

    #8697 Tracing :call doesn't work if the traced code is running on a different thread
    #8876 import_methods doesn't allow calling another refined method
    #9120 File.path doesn't raise Encoding::CompatibilityError for ASCII-incompatible string
    #9195 Refactor keyword arguments logic
    #9198 Move syslog to bundled gems
    #9206 Fix exception message when calling import_methods without a Module
    #9208 Inconsistency with block parameter default value
    #9211 Fix block argument destructuring with optional parameters
    #9212 Fix method owner when using import_methods
    #9213 Make refine method of Module private
    #9214 Data.define single-attribute class rejects positional arguments
    #9215 Ignore empty kwrest in Data subtypes' constructors
    #9217 Add an error for running jruby.sh from a broken JRUBY_HOME
    #9218 JavaFX AnimationTimer + Mutex.synchronize triggers "deadlock; lock already owned by another fiber belonging to the same thread" on JRuby 10.0.3.0
    #9222 String interpolation of BasicObject object raises NameError instead of NoMethodError
    #9224 ClassCastException handling kwargs in Struct
    #9225 Expand Data initialize empty kwargs fix to Struct
    #9226 Narrow deadlock check for sibling fibers locking mutex
    #9227 Version output may not accurately represent JIT mode
    #9228 Fix version output to reflect current runtime
    #9230 Use normal call type error for missing dynamic string to_s
    #9231 Thread safety of require and implications on stdlib string.normalize()
    #9232 Internalize and threadsafetify String#unicode_normalize
    #9237 Fix for import_methods does not allow calling another refined method
    #9240 Fix for File.path doesn't raise Encoding::CompatibilityError for ASCII incompatible string
    #9241 Data#to_h and Data#deconstruct return values in wrong order when module overrides initialize in a subclassed Data class
    #9242 Spurious Struct#initialize keyword argument warning (and crash) with ... forwarding through super
    #9243 Data#==/Data#eql? and Struct#eql? return false when instances are extended in initialize
    #9244 Fix for ClassCastException inside Struct#initialize when delegating … from a prepended module
    #9247 Fix Array#slice raises a RangeError when the start index is out of range of Fixnum
    #9248 Additional fixes for import_methods with JIT
    #9252 Use prepared accessors to retrieve Data fields
    #9254 Compare "real" classes for Data#== and eql?
    #9258 Kernel#respond_to? fails if #respond_to_missing? is not defined
    #9259 Only set locking thread once successful
    #9260 Restore Cleaner API use for embedding cleanup
    #9272 Avoid passing bogus -classpath when empty
    #9280 Check if respond_to_missing? exists before respond_to?
    #9281 unexpected ArgumentError: wrong number of arguments
    #9283 Only localize TracePoint to thread if specified
    #9285 Clear callInfo so it does not taint other calls
    #9289 Include gem extension stubs in stdlib artifacts
    #9290 Improve dist verification


--
blog: http://blog.enebo.com       twitter: tom_enebo
mail: tom....@gmail.com
Reply all
Reply to author
Forward
0 new messages