External Publication
Visit Post

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

Ruby Mailing List Mirror [Unofficial] March 4, 2026
Source

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: Downloads — JRuby.org

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

··· (click for more details)

Discussion in the ATmosphere

Loading comments...