Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Branch: master
Fetching contributors…

Cannot retrieve contributors at this time

101 lines (66 sloc) 2.993 kB
0MQ version 3.0.0 (alpha), released on 2011/07/12
New functionality
* POSIX-compliant zmq_send and zmq_recv introduced (uses raw buffer
instead of message object).
* ZMQ_MULTICAST_HOPS socket option added. Sets the appropriate field in
IP headers of PGM packets.
* Subscription forwarding. Instead of filtering on consumer, the
subscription is moved as far as possible towards the publisher and
filtering is done there.
* ZMQ_XPUB, ZMQ_XSUB introduced. Allow to create subscription-
forwarding-friendly intermediate devices.
* Add sockopt ZMQ_RCVTIMEO/ZMQ_SNDTIMEO. Allow to set timeout for
blocking send/recv calls.
* A new LABEL flag was added to the wire format. The flag distinguishes
message parts used by 0MQ (labels) from user payload message parts.
* There is a new wire format for the REQ/REP pattern. First, the empty
bottom-of-the-stack message part is not needed any more, the LABEL
flag is used instead. Secondly, peer IDs are 32-bit integers rather
than 17-byte UUIDs.
* The REQ socket now drops duplicate replies.
* Outstanding requests & replies associated with a client are dropped
when the clients dies. This is a performance optimisation.
* Introduced ZMQ_ROUTER and ZMQ_DEALER sockets. These mimic the
functionality of ZMQ_ROUTER and ZMQ_DEALER in 0MQ/2.1.x. Guarantees
backward compatibility for exsiting code.
* Removed dependency on OS socketpair buffer size. No more asserts in
mailbox.cpp because of low system limit of sockepair buffer size.
API improvements
* Obsolete constants ZMQ_UPSTREAM and ZMQ_DOWNSTREAM removed. Use
ZMQ_PUSH and ZMQ_PULL instead.
* Timeout in zmq_poll is in milliseconds instead of microseconds. This
makes zmq_poll() compliant with POSIX poll()
* ZMQ_MCAST_LOOP removed. There's no support for multicast over
loopback any more. Use IPC or TCP isntead.
* zmq_send/zmq_recv was renamed zmq_sendmsg/zmq_recvmsg.
* ZMQ_RECOVERY_IVL and ZMQ_RECOVERY_IVL_MSEC reconciled. The new option
is named ZMQ_RECOVERY_IVL and the unit is milliseconds.
* Option types changed. Most of the numeric types are now represented
as 'int'.
* ZMQ_HWM split into ZMQ_SNDHWM and ZMQ_RCVHWM. This makes it possible
to control message flow separately for each direction.
* ZMQ_NOBLOCK renamed ZMQ_DONTWAIT. That makes it POSIX-compliant.
Less is More
* Pre-built devices and zmq_device() removed. Should be made available
as a separate project(s).
* ZMQ_SWAP removed. Writing data to disk should be done on top of 0MQ,
on inside it.
* C++ binding removed from the core. Now it's a separate project, same
as any other binding.
Bug fixes
* Many.
* Make pkg-config dependency conditional.
* Removed Debian packaging, which is now available at
or via apt-get.
Older versions
* See NEWS in 2.1.x branch.
Jump to Line
Something went wrong with that request. Please try again.