The JRuby community is pleased to announce the release of JRuby 10.0.3.0.
- Homepage: https://www.jruby.org/
- Download: Downloads — JRuby.org
JRuby 10.0.3.x targets Ruby 3.4 compatibility.
Thank you to our contributors this release, you help keep JRuby moving
forward! @mrnoname1000, @ngr-ilmarh, @Earlopain, @philr, @jotamartos,
@kares, @aleksandrs-ledovskis, @trinistr, @katafrakt, @chadlwilson,
@khasinski, @evaniainbrooks
Compatibility
- JRuby now reports RbConfig::CONFIG['arch'] without a version number,
as universal-java. This allows using different JDK versions without
triggering RubyGems missing extension warnings for installed gems. The host
Java version is still available as RbConfig::CONFIG['arch_version']. #9107
Standard Library
- The non-gem standard library is upgraded to Ruby 3.4.5 #8967
- rexml is updated to 3.4.4 to address CVE-2025-58767. #9011
- syslog is moved to a default gem at version 0.4.0. The syslog gem now
includes JRuby support. #9109, ruby/syslog#1
- strscan is updated to 3.1.7. #9159
Documentation
- Ruby ri documentation for core and standard library are now included
in the release distribution. #9049, #9052
All Issues/PRs
#8707 WARNING: A terminally deprecated method in sun.misc.Unsafe has
been called
#8727 Cannot install latest rubocop
#8730 Launcher: Defensive fixes
#8758 Require is not working for .class file if the class is inside a
module since 9.3.0
#8810 Possible fix for 8809
#8923 NameError for autoloaded constant with private_constant
#8934 JRuby under Java 22+ always thinks it's running under a TTY
#8940 Verify to_s is string or fall back on anyToString
#8947 New check for System.console tty on JDK 22+
#8955 Range#count always returns size for Integer bounds
#8956 Handle argument or block passed to Range#count
#8958 Concurrent requires can lead to StringIndexOutOfBoundsException
#8960 Fix index -1 error while searching for feature path
#8962 Upgrade polyglot and remove openssl lib hack
#8967 Update stdlib to 3.4.5 and clean up old files
#8975 Use RuboCop to clean up poms (10.x)
#8976 Regression in keyword argument matching in JRuby v10.0.1.0
#8978 Additional fixes for scheme-based globbing
#8984 glob refactoring
#8985 Fix language spec where error string changed
#8987 InvokeDynamicSupport.findVirtual fails with
IllegalAccessException: symbolic reference class is not accessible
#8989 Explicitly request access before Lookup.find*
#8994 autoload + private_constant do not play well together
#8995 private_constant should just update existing autoload
#8996 Avoid binding unreadable modules' classes
#8998 Time#localtime incorrectly treats zero offset as UTC (regression
in v10.0.2.0)
#9006 Consider .class a source extension during search
#9007 Handle warn(foo, uplevel: nil)
#9009 Encoding a string with undefined chars fails with NoMethodError
#9010 Fix "+00:00" and 0 being treated as UTC by Time#localtime and
Time.at
#9011 Update rexml gem to solve CVE-2025-58767
#9016 [fix] regression calling static hash() method on Java proxy
#9017 can not use Java class with static hash() method
#9018 Parser does not convert newlines reading \r\n on Windows
#9019 We need to remove \r from heredoc strings
#9021 Retire safe double processing utilities
#9024 Move all main classes to org.jruby.main package
#9027 Add "since" to bare Deprecated annotations
#9035 IO#read does not clear code-range for buffer argument
#9036 fix: clear code-range when re-using a string buffer
#9038 Add opens and native access to all jar manifests
#9039 Update all jnr dependencies
#9041 Migrate .java-version contents to .jruby.release
#9049 ri docs are not available for core
#9050 Marshal fails to load an encoding with an encoding ivar
#9051 Ignore encoding when unmarshaling an Encoding
#9052 Download and include in dist CRuby's rdoc data
#9058 Implement efficient unshifting
#9059 Reserve extra space before elements when unshifting
#9063 Hash’s compare_by_identity state does not marshal
#9065 Preserve compare_by_identity for marshaled Hash
#9068 Windows CI spec runs
#9073 fix: Permit overriding of JSA file location using ENV variable
#9084 object_id improvements
#9094 Implement GC.config [Ruby 3.4]
#9097 Update jruby-openssl to v0.15.5 to resolve BouncyCastle 1.79
vulnerability (sonatype-2025-001911).
#9098 Fix CoverageData.mergeLines when coverage increases
#9101 Cached fixnums for immediate values
#9103 Update jruby-openssl to 0.15.5
#9106 Use smaller default size for many collections
#9107 Separate Java version out of rbconfig 'arch'
#9108 Tidy up default gems
#9109 Switch to syslog gem
#9110 Calling inspect on proc resets line in source_location
#9112 Prevent modifying state in RubyProc
#9117 Add file path to error message when unlinking non-existing file
#9122 Unexpected jruby.sh error messages on Windows
#9127 fix(launcher): correct parsing of java release files under
Bash/msys2 etc on Windows
#9138 Copy Data type's var table manager with new realClass
#9141 refactorings and cleanup motivated by error-prone
#9142 Change GC's methods from module_function to metaclass methods
#9145 Never trust external content for FString
#9152 Marshal.dump corruption for large Array structures
#9157 bump included gems
#9158 Use same key match for containsKey
#9159 Update strscan to 3.1.7
#9182 Fix NoMethodError when encoding with invalid: :replace option
#9188 Different arguments for each.map vs each and map alone (10.0)
#9189 Fixes #8952. Nest it should be different its
#9190 Backport implicit local variable fixes from 10.1
#9191 Fixes #8952. Nested 'it' behavior broken
#9192 Stab at Fixing #8976
#9194 BigDecimal#+, #-, #add, #sub always try to cast result of
coercion to RubyBigDecimal
#9196 require "bigdecimal" does not install BigDecimal() if it was
called previously
#9199 Output formatting differences between jRuby 10.0.0.1 and Ruby 3.4
when converting Float to JSON
#9200 Extract float formatting into a static method to use with to_json
#9203 Invalidate method caches from generated populators
#9204 Fix BigDecimal#+, #-, #add, #sub failing when coercing doesn’t
return a BigDecimal
#9205 Fix encoding fallback error handling and error message formatting
···
--
blog: http://blog.enebo.com twitter: tom_enebo
mail: tom.enebo@gmail.com