[ANN] JRuby 9.2.18.0 Released

The JRuby community is pleased to announce the release of JRuby 9.2.18.0

    Homepage: http://www.jruby.org/
    Download: http://www.jruby.org/download

JRuby 9.2.x is compatible with Ruby 2.5.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. All users are encouraged to upgrade.

As we are still actively working on 9.3.0.0 we decided to put out another
9.2.x release to fix some of the more recently reported issues.

Special thanks to our external contributors this release: @ahorek,
@xaptronic

Compatibility

- Improved support for subprocess launching on pure-Java environments
(primarily Windows). (#6654, #6655, #6678, #6685)
- Concurrency fixes for last match ($~) under concurrent access. Still
somewhat unpredictable but behavior matches CRuby. (#6640, #6644, #6647)

Standard Library

- The socket library from master (JRuby 9.3) has been backported with
all recent fixes, improving compatibility and feature coverage. (#3883,
#5148, #6126, #6128, #6156, #6274, #6366, #6372, #6384, #6389, #6399,
#6400, #6541, #6542, #6595, #6664)
- Improved support for Open3 on Windows. #6291, (#6648, #6649)

Java Integration

- The bash script and native executable now detect Java module support
more robustly. (#6637, #6638, #6639, #6689, #6701)

Native Integration

- Improved native support for exotic Linux platforms (mips64el, ppc64,
s390x, aarch64). #6674, #6675, #6705

- 40 issues fixed for 9.2.18.0

Github Issues resolved for 9.2.18.0

    #3883 - Rinda:RingServer not working (used for spork)
    #5148 - Data read from a UDP socket retains buffer size causing large
memory overhead
    #6126 - Socket#connect is not interrupted by Timeout#timeout and
Thread#kill
    #6128 - Do all socket connects nonblocking for interrupts
    #6156 - Socket.gethostname encoding still platform specific
    #6274 - Always encode gethostname result as UTF-8
    #6291 - Failed to install bindex on a Windows 10 PC
    #6366 - Add support for TCP_CORK (experimental)
    #6372 - move socket message to constants
    #6384 - [socket] add constants for reserverd ports
    #6389 - [socket] remove misused SOL_ constants
    #6399 - Missing TCP_INFO support
    #6400 - basic TCP_INFO support
    #6541 - Errno::ENOPROTOOPT when connecting to Redis with JRuby-9.2.14.0
    #6542 - [socket] improve keep alive support
    #6595 - Accept numeric host
    #6637 - Fix issue with JAVA_HOME not being set
    #6638 - Restore quotes around module detection JAVA_HOME
    #6639 - Resolve symlinked java command to find home
    #6640 - java.lang.ClassCastException: org.jruby.RubyNil cannot be cast
to org.jruby.RubyMatchData
    #6644 - Reduce backref usage in split
    #6647 - Improve concurrency of $~ adjacent methods
    #6648 - JRuby 9.2.17.0 fails to install sassc on Windows
    #6649 - Compatibility fixes for open3 on Windows
    #6654 - Kernel.system leaks ENV on JRuby + Windows
    #6655 - Do not merge extra env with current env
    #6664 - Copy 9.3 socket implementation to 9.2
    #6668 - Comparators (==, <, >, <=, >=) of subclassed Time instance do
not call cmp defined on the subclass
    #6670 - Handle possible ArithmeticException when extending byte store
for String
    #6671 - Array max size auditing and fixes
    #6674 - Latest JNR libraries for 9.2
    #6675 - JNR updates
    #6678 - Regression on Windows test:jruby
test_system_with_conflicting_dir
    #6685 - Also use shell for commands with a space
    #6689 - Failure to RVM-install JRuby 9.2.{13,17},0 on Ubuntu 20 with
JDK 8
    #6692 - Getting Java::JavaLang::ArrayIndexOutOfBoundsException in
compiler internals
    #6700 - Use cached UTF8 single-char bytelists here
    #6701 - Update jruby.exe
    #6704 - Fixes #6692. AIOOBE on evals overflowing closure ids.
    #6705 - Update JNR deps

···

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