Author: The JRuby Team
Source
Sponsored:
Atlas of AI: Power, Politics, and the Planetary Costs of Artificial Intelligence - Audiobook

Uncover the true cost of artificial intelligence.
"Atlas of AI" by Kate Crawford exposes how power, politics, and profit extract from our planet, our labor, and our freedom.
From hidden mines to massive data empires, discover how AI is reshaping who we are—and who holds control.
Listen now, and see the system behind the screens before the future listens to you. = > Atlas of AI $0.00 with trial. Read by Larissa Gallagher
The JRuby community is pleased to announce the release of JRuby 9.4.7.0.
- Homepage: https://www.jruby.org/
- Download: https://www.jruby.org/download
JRuby 9.4.x targets Ruby 3.1 compatibility.
Thank you to our contributors this release, you help keep JRuby moving forward! @kares, @ryannevell, @jsvd
Ruby Compatibility
- Many edge cases in language compatibility have been fixed. #7440, #8128, #8192, #8193, #8195, #8197, #8198
Standard Library
- jruby-openssl is updated to 0.14.5
- rdoc is updated to 6.4.1.1
- Warnings due to method aliasing in the ostruct library have been mitigated. #8200, #8206
JVM Integration
- Ruby classes that are “reified” into a Java class and later redefined can be “re-reified” to a new Java class with an incrementing version number. #8141, #8185
- Java objects from other classloaders can pollute the
Java::namespace. This behavior can be disabled now, and will be disabled by default in JRuby 10. #8156, #8208
53 Github Issues resolved for 9.4.7.0
- #7440 Multiple assignment evaluation order consistency
- #8112 update this ancient lockfile
- #8113 Remove long dead torquebox from template Gemfile and update to newer …
- #8114 one last update to puma version for sample Gemfile
- #8119 Possible Keyword Argument Regression in 9.4.6.0
- #8121 Prepending a module to a subclass changes it representation in the superclass#subclasses array
- #8122 Handle prepend in subclasses
- #8123 lutimes was passing huge wrong values to function
- #8124 Method.clone of frozen should stay frozen
- #8125 Proc#clone of frozen proc should stay frozen
- #8126 UnboundMethod#clone of frozen UnboundMethod should stay frozen
- #8127 EncodingError should be SyntaxError for bad symbols?
- #8128 parameters value for **nil should be nokey
- #8130 Return proper encoding error string for String#to_c
- #8131 frozen error handling for remove_instance_variable
- #8132 test flags for stats need to handle file instances as well as strings
- #8133 Implement string/eval form of trace_var
- #8134 Fix various kwarg-related specs in IO#open, File#open and Kernel#open.
- #8135 Cannot install latest
rubocop - #8136 Redo java commandline calculation to work with newer Java’s
- #8138 [deps] update joda-time to 2.12.7
- #8139 to_time raise an exception. (class org.jruby.ext.date.RubyDate cannot be cast to class org.jruby.ext.date.RubyDateTime)
- #8141 can not re-reify sub-class of a Java sub-class
- #8142 Add-Opens for complete -jar runs as expected in later Java’s
- #8144 Allow extended DateTime to still be constructed using DateTime
- #8148 Profiler raises ‘wrong number of arguments for constructor (ArgumentError)’ for the march_hare gem
- #8155 Concurrently requiring a file from multiple threads may “succeed” even if the file raises an error
- #8156 JRuby adds Java proxy classes to the Java module even if they are not from JRubyClassLoader
- #8157 Incorrect case tree selection when comparing Symbols during compiled Ruby code execution
- #8167 Some simple refactoring but removing some mysterious classcast guards
- #8173 Coverage doesn’t cover
begin - #8179 Thread#pending_interupt? crashes
- #8185 [ji] support re-reifying class hierarchy
- #8186 [fix] LoadError on require should not complete load
- #8191 Rearrange cond0 to behave more like MRI did in 3.1
- #8192 lhs of compound const would crash if not a Module/Class
- #8193 side-effects in const op element assign by exec parent of lhs twice
- #8195 use left to right evaluation
- #8196 [deps] update jruby-openssl to 0.14.5
- #8197 END was not getting parents lvars
- #8198 Give same error message for duplicated case arms
- #8199 Enumerator#next_values behavior does not match MRI or docs
- #8200 Warnings emitted by requiring ‘ostruct’
- #8201 Fix issue#8199
- #8202 do not emit labels which are not used while constructing loops + IGV enhancements
- #8203 rename all closures to more closely match a name you can read vs CLOSURE_2
- #8204 bump rdoc dependency to 6.4.1.1
- #8205 begin node coverage line should not get added if it has been removed
- #8206 Mark frame-aware method names with bang suffix for ostruct
- #8207 Partially undo kwarg optz from #8095
- #8208 Only set up Java:: constants when accessed directly
- #8209 opted case needs to use updated ints when loaded into new runtime.
- #8211 Always unwrap old initialize methods
