Hello everyone,
With permission from Erik Huelsmann, I'm pleased to release USOCKET 0.5.1
The major point in this release is the availability of UDP protocol support on GNU CLISP, and we have implemented too versions: the FFI version and the RAWSOCK verion. The FFI version will be useful for those who cannot use RAWSOCK (i.e. default installation on MacOS/Fink and most Linux distributions)
There're also some important fixes since the 0.5.0 release, especially for SBCL.
Major changes since 0.5.0:
* New feature: [CLISP] UDP (Datagram) support based on FFI (Win/Mac/Linux), no RAWSOCK needed. * Enhancement: SOCKET-SERVER return a second value (socket) when calling in new-thread mode. * Enhancement: [CLISP] Full support of DNS helper functions (GET-HOST-BY-NAME, ...) added. * Enhancement: [CLISP] Better network error type detection based on OS error code. * Enhancement: [LispWorks] Better network error type detection based on OS error code. * Bugfix: Fixed wrong macro expansions of {IP|PORT}-{FROM|TO}-OCTET-BUFFER functions (since 0.4.0) * Bugfix: SOCKET-CONNECT didn't set CONNECTED-P for datagram usockets on most backends. * Bugfix: [SBCL] Fixes for "SBCL/Win32: finalizer problem, etc", by Anton Kovalenko anton@sw4me.com * Bugfix: [SBCL] Fixed SOCKET-SERVER (UDP) on SBCL due to a issue in SOCKET-CONNECT when HOST is NIL. * Bugfix: [SBCL] SOCKET-CONNECT's TIMEOUT argument now works as a "connection timeout", thanks to Nikodemus Siivola. * Bugfix: [CMUCL] Fixed SOCKET-SEND on unconnected usockets under Unicode version of CMUCL. * Bugfix: [CLISP] Fixed and confirmed UDP (Datagram) support (RAWSOCK version).
We special thanks to:
Anton Kovalenko anton@sw4me.com
for his professional fix on the issue "SBCL/Win32: finalizer problem, etc" [1].
If you want to download this release, please check out
http://common-lisp.net/project/usocket/releases/
The API documentation page on the website is actually quite new:
http://common-lisp.net/project/usocket/api-docs.shtml
As usual, I hope more and more people use USOCKET as part of their Lisp applications, and any feedback - bugs or hugs - is greatly appreciated. If you use USOCKET, please let us know what for.
And, if there's any historical issue which haven't been solved, please feel free to remind me.
And below is a roadmap for future USOCKET releases (ignore the order):
* Add UDP (Datagram) support for Digitool MCL; * The DFFI version of ECL backend without calling C compilers; * New backend: Symbolics Lisp Machine (because ASDF support it now); * New backend: XCL (is it ready?!); * New backend: IOlib; * New API: SOCKET-OPTION for setting/getting various socket options.
Let me know if you have other ideas...
Regards,
Chun Tian (binghe)