[ruby-talk:444457] [ANN] JRuby 9.4.7.0 Released

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

  - Homepage: https://www.jruby.org/
  - Download: Downloads — JRuby.org

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

···

--
blog: http://blog.enebo.com twitter: tom_enebo
mail: tom.enebo@gmail.com