Releases: kohlschutter/junixsocket
Releases · kohlschutter/junixsocket
junixsocket 2.10.1
- Fix left-over temporary library files on Windows
- Fix duplicate file descriptors being received sporadically for non-blocking sockets and upon error
- Fix a flaky selftest when VSOCK is not supported
- Fix a flaky selftest with GraalvM 17
- Fix a flaky selftest with old-style finalizers
- Improve interoperability with exotic Linux/Java combinations
- Add support for loongarch64 Linux
- Add more tests
- Code cleanup
junixsocket 2.10.0
- Fix compatibility with Java 7
- Fix error handling for non-blocking operations on Windows
- Fix interoperability of junixsocket-mysql and GraalVM native-image
- Fix socket-closed state upon exceptions indicating a closed socket descriptor
- Fix exceptions for channels: Throw ClosedChannelException instead of SocketClosedException, etc.
- Fix a flaky selftest when VSOCK is not supported
- Improve compatibility and performance with Virtual Threads in Java 21 or newer (JEP 444)
- Improve interopability with Java 15 UnixDomainSocketAddress and StandardProtocolFamily.UNIX
- Improve selftest stability and logging, more tests
- Add support for ServerSocketChannel.bind(null) for AF_UNIX socket addresses.
- Add more tests for mysql interoperability, optionally include mysql tests in selftest
- Add NotConnectedSocketException, NotBoundSocketException
- Building now requires Java 21, Maven 3.8.8 or newer
- Update build-time dependencies
- Code cleanup
junixsocket 2.9.1
- Fix ignored timeouts for Mysql-specific AFUNIXDatabaseSocketFactoryCJ
- Fix GraalVM configuration, support AFUNIXSocketFactory for native-image
- Fix compatibility with jetty 12.0.7
- Fix unnecessary failures in some tests, error handling in selftest
- Improve SocketException handling (throw SocketClosedException subclass upon accept error)
- Make native library code compile on Minix
- Add availability check of abstract namespace on emulated Linux environments (BSD)
- Add junixsocket-demo-jpackagejlink artifact to show how to use jpackage/jlink with junixsocket
- Update crossclang scripts, fix compatibility with Xcode 15.3
- Code cleanup
junixsocket 2.9.0
- Add generic socket fallback for FileDescriptors received from other processes
- Add "dup"/"dup2" support via FileDescriptorCast.duplicating
- Add listen/accept support to AFDatagramSocket, so we can serve SEQPACKETs
- Add more SocketException subclasses (such as BrokenPipe-/ConnectionResetSocketException)
- Add support to make shutdown-upon-close configurable
- Add support for undocumented "ECLOSED" (errno 3417) condition on IBM i PASE
- Add test for the "close-during-accept" condition
- Fix native library loading for AIX/IBM i on Java 15 and newer
- Fix blocking state when using FileDescriptorCast
- Fix module-info.java: Don't mark requirements transient (annotations, mysql connector)
- Fix TIPC tests on some old environments (which didn't time out)
- Fix compilation for z/OS 32-bit
- Fix AFServerSocketChannel.getLocalAddress to return AFSocketAddress subclass
- Fix unnecessary failures in some tests, error handling in selftest
- Fix "force override" path parsing for native library on Windows
- Update build/plugin/test/demo dependencies
- Update crossclang scripts; no longer requires root to install Xcode components
- Improve error handling on broken Java VMs (e.g., IBM Semeru 8.0.7 and older)
- Improve demo code, use slf4j-simple for logging
- Code cleanup
Backwards-incompatible change: Some AFSocket classes are now final or no longer declare constructor exceptions.
junixsocket 2.8.3
- Fix concurrency issue with AFSocketServerConnector, AFSelectionKey; take two
- Fix regression introduced in 2.8.2 that leaked FileDescriptors
- Reduce allocation overhead during select
junixsocket 2.8.2
Fix concurrency issue with AFSocketServerConnector, AFSelectionKey
junixsocket 2.8.1
- Fix UnsatisfiedLinkError with noexec temporary directory on RHEL 9 and others
junixsocket 2.8.0
- Java 7 support is back! (junixsocket-common only, as it was before version 2.5.0)
- Fix AFSocket shutdown to ignore InvalidSocketException upon setTimeout
- Fix two potential hangs in selftest
- Fix loading of the native library when running under macOS Rosetta 2
- Fix a potential exception when trying to serialize an AFRMISocketFactory
- Fix a potential race condition when working with native addresses
- Fix a potential crash in TIPC code when compiling the native library against an old Linux SDK
- Improve AFSocketServer, add new methods
- Improve crossclang to support Xcode 15
- Enable RMI support for GraalVM native-image; selftest now passes without issues
- Add junixsocket-ssl, to simplify securing junixsocket connections
- Requires Java 17 to build (and JDK 8 if Java 7 support is desired); build instructions have changed
junixsocket 2.7.2
- Fix SelectionKey logic (regression introduced in 2.7.1)
- Fix selftest-android dependency (some tests would always fail)
- Improve AFSocketAddress creation, skip DNS resolution on Android
- Add demo code for interacting with Apache Mina and Netty
- Code cleanup
junixsocket 2.7.1
- Fix openDatagramChannelPair (was using STREAM instead of DGRAM), add AFSocketType support
- Fix availability of AF_SYSTEM capability on Darwin
- Improve exception handling for "EPROTOTYPE" error on z/OS
- Improve SelectionKey logic, reduce locking/GC overhead
- Improve "unsupported operation" handling in native code
- Improve handling of "test aborted, but not really an issue"
- Add unit tests for Jetty 12
- Code cleanup, update dependencies