Crossroads I/O release 1.0.0
[Posted March 20, 2012 by corbet]
| From: |
| Martin Sustrik <sustrik-AT-250bpm.com> |
| To: |
| crossroads-dev-AT-groups.crossroads.io |
| Subject: |
| [ANNOUNCE] Crossroads I/O release 1.0.0 |
| Date: |
| Thu, 15 Mar 2012 19:53:01 +0100 |
| Message-ID: |
| <4F623A8D.8090303@250bpm.com> |
| Cc: |
| ZeroMQ development list <zeromq-dev-AT-lists.zeromq.org>, lwn-AT-lwn.net,
Martin Lucina <martin-AT-lucina.net> |
| Archive‑link: | |
Article |
Hi all!
We would like to announce the first release of the Crossroads I/O project.
Crossroads I/O is a fork of the ZeroMQ project.
While we acknowledge forking can be a painful process, we felt the
ZeroMQ trademark policy to be overly restrictive.
Furthermore, the ZeroMQ community has also recently chosen to institute
a light review process, which we feel is at odds with the technical
quality and long-term goals we desire for the project.
The website for the project can be found here:
http://www.crossroads.io
Development of Crossroads I/O is coordinated and discussed on the
crossroads-dev@groups.crossroads.io mailing list. You can subscribe to
the list, and view previous archives, here:
http://groups.crossroads.io/
Thanks to the kind folks at behind GroupServer for sponsoring hosting of
the mailing list on OnlineGroups.net!
Release 1.0.0 of Crossroads I/O is available now, and can be downloaded at:
http://www.crossroads.io/download
This release is a direct continuation of the work since our release of
ZeroMQ 3.1.0 in December 2011. You can find the Release Notes included
in this email.
We would like to thank the ZeroMQ community for their work over the
years, and also everyone who we have discussed the fork with over the
last couple of months for their help and advice.
Regards,
Martin Sustrik
Martin Lucina
----------------------------------------------------------------------
Crossroads I/O Release Notes
----------------------------
This file documents the major changes in between releases of Crossroads
I/O. For a detailed list of changes please refer to Git history, or the
ChangeLog file included with your distribution of Crossroads.
Release 1.0.0 (15 March 2012)
-----------------------------
Initial release. Changes listed here are as compared to libzmq release
3.1.
New features:
* The io_threads argument has been removed from xs_init(), and the
default number of I/O threads per context is now 1.
* Context options added - see xs_setctxopt(3):
* The XS_IO_THREADS context option allows the user to specify the
size of the worker thread pool.
* The XS_MAX_SOCKETS context option allows the user to specify the
maximum number of sockets that can exist in parallel within a
context.
* Allow setting the source address for TCP connections - see xs_tcp(7).
* ZeroMQ drop-in compatibility mode, enabled by the --enable-libzmq
option to configure. This is a binary compatible emulation of the
ZeroMQ 2.1.11 API, for details see zmq(7).
Bugfixes:
* Fix pgm_receiver.cpp: zmq_assert (pending_bytes == 0). (LIBZMQ-205)
* Fix assertion in pgm_sender_t::plug(). (LIBZMQ-303)
* Race condition in zmq_term() fixed.
* Message loss when a SUB socket disconnects fixed.
* Fix data loss for PUB/SUB and unidirectional transports. (LIBZMQ-268)
* Bug in linger implementation fixed.
* Fix IPC transport domain socket stream file not being removed when
connection is closed.
* Removal of pipe from dist_t fixed.
* Only use AI_V4MAPPED if defined, and don't use it on FreeBSD.
Optimisation:
* Several optimisations to reduce the memory size of PUB/SUB
subscription map.
* Avoid one extra call to poll() when there are no more data to send.
Build:
* MSVC build updated to use MSVC2010 instead of MSVC2008.
* configure prints out a summary of XS configuration.
Self tests:
* Many more tests have been added, see the tests/ subdirectory.
* The self tests can now be run from a MSVC build, see the "tests"
project.