JRuby 9.3.8.0 Released
Tuesday, September 13 2022
The JRuby community is pleased to announce the release of JRuby 9.3.8.0
- Homepage: https://www.jruby.org/
- Download: https://www.jruby.org/download
JRuby 9.3.x is compatible with Ruby 2.6.x and stays in sync with C Ruby. As always there is a mix of miscellaneous fixes so be sure to read the issue list below.
Thanks to our contributors this cycle for helping to improve stability and compatibility of JRuby 9.3: @ahorek, @ccutrer, @evaniainbrooks, @naveensrinivasan
Ruby Compatibility
- Altering the visibility of an included module method no longer changes what super method gets called. (#7240, #7343, #7344, #7356)
- Thread termination at shutdown is more robust and visits all non-main threads. (#7351)
Standard Library
- csv has been updated to 3.2.5 to pick up a fix that eliminates fiber use for simple parse_line calls. (#7346, #7348)
- psych has been updated to 3.3.3 to address CVE-2022-25857, an element-nesting DoS. (#7342)
Experimental Features
- Fibers can now be configured to use OpenJDK Project Loom’s virtual threads, which are lightweight and do not consume a native platform thread. Virtual threads make it possible for JRuby applications to create thousands of concurrently-executing fibers. Enable this feature on Java 19 using the JVM flag
--enable-preview
. (#7328)
27 Github Issues resolved for 9.3.8.0
- #7240 - Changing method visibility changes behavior for module-inherited methods
- #7257 - chore: Set permissions for GitHub actions
- #7262 - jar-dependencies cannot be updated out-of-band from jruby
- #7265 - Time.at argument handling
- #7303 - Fix included_modules method to not return wrapped modules
- #7316 - Incompatible error when nested
LoadError
- #7317 - Oddity with the jruby parser: it warns me about “warning: found = in conditional, should be ==”
- #7321 - Fix issue #7316 runtime error when nested raise
- #7324 - Time::at with BigDecimal emits Java Negative Exponent exception
- #7325 - Fix negative scale BigDecimal#to_r
- #7326 - sum method - undefined method ‘last’ for 1:Integer
- #7328 - Use vthreads when available
- #7332 - defined reified classes with their parent class’s classloader as parent
- #7333 - fix Enumberable sum when elements are array
- #7334 - fix zlib encoding
- #7338 - InstanceConfiguration extra loaders not thread safe
- #7342 - Update SnakeYaml to 1.31+ due to CVE-2022-25857
- #7343 - Fix for changing method visibility changes behavior for module-inherited methods
- #7344 - Changing method visibility changes super_method for module-inherited methods
- #7345 - Use thread-safe COW lists here
- #7346 - Iterating over
CSV.parse_line
causes an explosion of threads/fibers
- #7348 - Update CSV to 3.2.5
- #7351 - Avoid accidentally killing the teardown thread
- #7354 - Fix 7317 it warns me about “warning: found = in conditional, should be ==”
- #7356 - Fix for method visibility changes super_method for module-inherited methods
- #7358 - Update polyglot-maven and commit updated XMLs
- #7359 - Fixes Time.at argument handling (#7265)
The JRuby community is pleased to announce the release of JRuby 9.3.8.0
- Homepage: https://www.jruby.org/
- Download: https://www.jruby.org/download
JRuby 9.3.x is compatible with Ruby 2.6.x and stays in sync with C Ruby. As always there is a mix of miscellaneous fixes so be sure to read the issue list below.
Thanks to our contributors this cycle for helping to improve stability and compatibility of JRuby 9.3: @ahorek, @ccutrer, @evaniainbrooks, @naveensrinivasan
Ruby Compatibility
- Altering the visibility of an included module method no longer changes what super method gets called. (#7240, #7343, #7344, #7356)
- Thread termination at shutdown is more robust and visits all non-main threads. (#7351)
Standard Library
- csv has been updated to 3.2.5 to pick up a fix that eliminates fiber use for simple parse_line calls. (#7346, #7348)
- psych has been updated to 3.3.3 to address CVE-2022-25857, an element-nesting DoS. (#7342)
Experimental Features
- Fibers can now be configured to use OpenJDK Project Loom’s virtual threads, which are lightweight and do not consume a native platform thread. Virtual threads make it possible for JRuby applications to create thousands of concurrently-executing fibers. Enable this feature on Java 19 using the JVM flag
--enable-preview
. (#7328)
27 Github Issues resolved for 9.3.8.0
- #7240 - Changing method visibility changes behavior for module-inherited methods
- #7257 - chore: Set permissions for GitHub actions
- #7262 - jar-dependencies cannot be updated out-of-band from jruby
- #7265 - Time.at argument handling
- #7303 - Fix included_modules method to not return wrapped modules
- #7316 - Incompatible error when nested
LoadError
- #7317 - Oddity with the jruby parser: it warns me about “warning: found = in conditional, should be ==”
- #7321 - Fix issue #7316 runtime error when nested raise
- #7324 - Time::at with BigDecimal emits Java Negative Exponent exception
- #7325 - Fix negative scale BigDecimal#to_r
- #7326 - sum method - undefined method ‘last’ for 1:Integer
- #7328 - Use vthreads when available
- #7332 - defined reified classes with their parent class’s classloader as parent
- #7333 - fix Enumberable sum when elements are array
- #7334 - fix zlib encoding
- #7338 - InstanceConfiguration extra loaders not thread safe
- #7342 - Update SnakeYaml to 1.31+ due to CVE-2022-25857
- #7343 - Fix for changing method visibility changes behavior for module-inherited methods
- #7344 - Changing method visibility changes super_method for module-inherited methods
- #7345 - Use thread-safe COW lists here
- #7346 - Iterating over
CSV.parse_line
causes an explosion of threads/fibers - #7348 - Update CSV to 3.2.5
- #7351 - Avoid accidentally killing the teardown thread
- #7354 - Fix 7317 it warns me about “warning: found = in conditional, should be ==”
- #7356 - Fix for method visibility changes super_method for module-inherited methods
- #7358 - Update polyglot-maven and commit updated XMLs
- #7359 - Fixes Time.at argument handling (#7265)