Skip to content

Releases: kohlschutter/junixsocket

junixsocket 2.10.1

23 Sep 14:10
Compare
Choose a tag to compare
  • 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

08 Jul 22:26
Compare
Choose a tag to compare
  • 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

05 Apr 20:04
Compare
Choose a tag to compare
  • 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

14 Feb 19:27
Compare
Choose a tag to compare
  • 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

12 Nov 13:41
Compare
Choose a tag to compare
  • 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

27 Oct 12:35
Compare
Choose a tag to compare

Fix concurrency issue with AFSocketServerConnector, AFSelectionKey

junixsocket 2.8.1

29 Sep 17:27
Compare
Choose a tag to compare
  • Fix UnsatisfiedLinkError with noexec temporary directory on RHEL 9 and others

junixsocket 2.8.0

28 Sep 21:13
Compare
Choose a tag to compare
  • 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

15 Sep 10:36
Compare
Choose a tag to compare
  • 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

09 Sep 15:34
Compare
Choose a tag to compare
  • 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