diff options
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 397 |
1 files changed, 2 insertions, 395 deletions
@@ -1,124 +1,6 @@ -0MQ version 2.0.6 (Beta), released on 2010/03/16 -================================================ +0MQ version 2.0.6 (Beta) was released on 2010/03/16. - -Distribution ------------- - -* The 0MQ core distribution has been slimmed down to include only the core - C library and C++ language binding. Pointers to other language bindings can - be found on the website. Examples have also been removed from the - core and can be found elsewhere. Performance tests specific to a language - binding can be found bundled with that language binding. - -* The 0MQ reference manual supplied with the distribution has been - extensively rewritten, and is now provided in HTML as well as UNIX - manpage format. - -* Commencing with this release, a 0MQ version numbering scheme has been - introduced. The numbering scheme used is MAJOR.MINOR.PATCH. The "Beta" or - "Stable" label is informative only and does not constitute - part of the library version number, therefore this release is numbered - 2.0.6 as the sixth release of 2.0. - -* The version of OpenPGM bundled with 0MQ has been updated to the stable - 2.0.24 release. - - -Building --------- - -* Many portability fixes, including support for new platforms: FreeBSD, - NetBSD, HP-UX and Cygwin. - -* Invocation of configure has been simplified, all functionality is now - built by default with the exception of OpenPGM. - - -Interface ---------- - -* The udp transport has been renamed to epgm to avoid confusion with - unreliable unicast. - -* A ZMQ_POLLERR constant has been added to allow for polling on errors on - Berkeley sockets with zmq_poll(). - -* The zmq_version() function has been introduced and returns the version - number of the 0MQ library. - -* The zmq_flush() function and ZMQ_NOFLUSH flag of zmq_send() have been - deprecated and will be removed in a future release. - - -Wire format ------------ - -* The 0MQ wire format has been changed. A flags field has been added to - allow for future extensions. - - -New functionality ------------------ - -* The experimental ZMQ_P2P socket type has been implemented. - -* Flow control has been implemented for all socket types. For details see - the ZMQ_HWM and ZMQ_LWM socket options. - -* Subscription filters are internally matched with O(1) complexity. - - -Licensing ---------- - -* iMatix corporation has granted the following exception regarding static - linking with the 0MQ library: - - As a special exception, iMatix gives you permission to link this - library with independent modules to produce an executable, - regardless of the license terms of these independent modules, and - to copy and distribute the resulting executable under terms of - your choice, provided that you also meet, for each linked - independent module, the terms and conditions of the license of - that module. An independent module is a module which is not - derived from or based on this library. If you modify this - library, you must extend this exception to your version of the - library. - - -Thanks to ---------- - -This release of 0MQ was made possible by many contributors from the community, -including: - -* Adrian von Bidder <avbidder@fortytwo.ch>, for contributing Debian packages. - -* Aleksey Yeschenko <aleksey@yeschenko.com>, for contributing a Lua binding. - -* Alessio Spadaro <alessio.spadaro@finservice.com>, for help with porting to - HP-UX. - -* Bernd Prager <bernd@prager.ws>, for help with porting to Cygwin. - -* Brian E. Granger <ellisonbg@gmail.com>, for maintaining the Python binding. - -* Martin Hurton <hurtonm@gmail.com>, for implementing flow control. - -* Martin Lucina <mato@kotelna.sk>, for rewriting the 0MQ reference manual and - many portability fixes. - -* Michael Santy <Michael.Santy@dynetics.com>, for testing this release with - Infiniband. - -* Steven McCoy <steven@miru.hk>, for help with OpenPGM. - -* Toralf Wittner <toralf.wittner@gmail.com>, for contributing a Haskell - binding. - -------------------------------------------------------------------------------- -A full list of all changes since the release of 0MQ 2.0 beta2 follows: +Changes since 2.0-beta2: commit 38c942ae648115ac10320968eb4b5e235ef15674 Author: Martin Sustrik <sustrik@250bpm.com> @@ -1499,278 +1381,3 @@ Author: Martin Sustrik <sustrik@fastmq.commkdir> Date: Sun Jan 17 17:49:34 2010 +0100 version number bumped - -------------------------------------------------------------------------------- - -Version 2.0-beta2 - -ZMQII-29 Add timeout to zmq_poll function -ZMQII-30 Build fails on MacOS X -ZMQII-31 memory leak in zmq_poll (on timeout) -ZMQII-33 zmq_poll may exceed timeout if signal interrupts the waiting -ZMQII-34 ensure that poll won't return POLLIN event when the message will be filtered out anyway -ZMQII-36 Chat example & forwarder broken because of changes subscribe semantics -ZMQII-37 SIGSEGV when polling on REQ socket -ZMQII-38 Compiler complains about missing virtual constructors -ZMQII-39 Implement IPC transport - -Version 2.0-beta1 - -ZMQII-27 Allow setting SNDBUF and RCVBUF size from 0MQ API -ZMQII-22 Deadlock on zmq_close -ZMQII-25 Implement streamed request/reply -ZMQII-24 SEGFAULT when anonymous session disconnects -ZMQII-26 Use zero-copy for large messages -ZMQII-19 add --disable-eventfd configure option - -Version 2.0-alpha3 - -ZMQII-17 Allow multiple senders for sigle mcast group aka multicast bus. -ZMQII-16 Change "struct zmq_msg_t" to "zmq_msg_t" in C binding. -ZMQII-15 Implement REQ/REP sockets. -ZMQII-14 Change default for ZMQ_MCAST_LOOP to true. - -Version 2.0-alpha2 - -ZMQII-11 Implement forwarder device -ZMQII-10 Make connections interrupted during the init phase be closed silently -ZMQII-8 Failure during orphan pipe deallocation -ZMQII-7 Pipe detach fails on shutdown -ZMQII-6 connection refused in tcp_connecter::connect leads to assert -ZMQII-5 Only one consumer in a process gets the message -ZMQII-4 Failure in dev/poll poller -ZMQII-3 Implement message filtering -ZMQII-2 SIGSEGV in zmq_connecter_init_t::read -ZMQII-1 Win32 - failure on shutdown - -Version 2.0-alpha1 - -Large scale refactoring of the code and new socket-like API. - -Version 1.0.1 - -ZMQ-289 Return -1 from bind when remote object is not registered in zmq_server -ZMQ-288 Return -1 from create_exchange /queue when object can not be created -ZMQ-287 Disabling receiving messages from queue -ZMQ-286 create handle_t class with == and != operators -ZMQ-285 multiple listeners listening on the same machine with UDP encap. -ZMQ-284 mask function inaccessible via Java on Windows -ZMQ-283 Lua binding for 0MQ -ZMQ-282 Cannot send message containing zero byte via Ruby -ZMQ-281 Publisher restart fails on PGM and Win/Linux -ZMQ-280 Broken build using MSVC 2005 -ZMQ-278 Load-balancing exchange doesn't load balance -ZMQ-277 TCL binding -ZMQ-276 Check for pkg-config in autogen.sh script -ZMQ-275 Check for eventfd by running test program during ./configure -ZMQ-274 can not compile estimate_cpu_freq with PERF_CPU_FREQUENCY set -ZMQ-273 gcc (GCC) 4.4.0 invalid conversion from const char* to char* -ZMQ-272 make sure message content is created properly - -Version 1.0.0 - -ZMQ-271 Build OpenPGM with 0MQ build system -ZMQ-270 0MQ windows pgm support -ZMQ-269 Constness is better for the zmq_send data_ argument -ZMQ-267 assert in api_thread.cpp384 void zmqapi_thread_tprocess_command -ZMQ-266 Memory coruption in api_thread_tcreate -ZMQ-265 Missing librbzmq.vcproj file -ZMQ-264 Java examples can not be run on OpenVMS -ZMQ-263 Warning preventing compilation of chat example -ZMQ-262 CLONE -QNX port -- working in 6.4.0? -ZMQ-261 add --with-rubydir configure option -ZMQ-260 syntax error caught by gcc 4.4 -ZMQ-253 Allow to establish arbitrary AMQP wiring on connection startup -ZMQ-249 Handle EAGAIN and EWOULDBLOCK as the same error -ZMQ-248 Call in/out events directly from I/O thread -ZMQ-247 Move physical thread from poller to individual I/O threads -ZMQ-240 Pack Java classes into a .jar -ZMQ-239 make --with-clr imply --with-c -ZMQ-237 Java extension not working with Win32 package -ZMQ-235 JAVA build fails if PATH is not set to JDK/bin -ZMQ-228 Make java documentation via JavaDoc -ZMQ-226 Move Jzmq to org.zmq package -ZMQ-204 Use non-blocking accept -ZMQ-130 Optimise mux_t for large number of idle connections - -Version 0.6.1 - -ZMQ-254 Race condition in pipe_twriter_terminated -ZMQ-255 Python perf tests broken -ZMQ-257 pgm build fails various declared errors -ZMQ-259 Ruby extension for libzmq - -Version 0.6 - -ZMQ-73 Redesign MT throughput test -ZMQ-102 Move load-balancing functionality from 0.3.3 branch to the trunk -ZMQ-136 Check I/O threads for rm_fd(x) followed by add_fd(x) behavior -ZMQ-138 Avoid exporting 0MQ symbols from libs using 0MQ on Windows -ZMQ-147 Python app hang-up, unresponsive to Ctrl+C -ZMQ-164 Add reconnection functionality to PGM -ZMQ-166 Slow down the reconnection process -ZMQ-176 Update examples to reflect the auto-reconnect feature -ZMQ-179 Implement OS-agnostic time measurement -ZMQ-180 What happens if queue is full & disconnection occurs? -ZMQ-183 Change OpenPGM to PGM in build options -ZMQ-185 Move msg_store to the trunk -ZMQ-186 Write an example to demonstrate load-balancing -ZMQ-187 Declaring same object (exchange, queue) twice doesn't fail -ZMQ-188 Schemas used by global object URIs don't conform to RFC3986 -ZMQ-190 Compile libdnzmq with /clr support (no old syntax) -ZMQ-193 Reconnect on Solaris platform not working -ZMQ-194 Let sender use RDTSC mechanism for command throttling in MSVC build -ZMQ-195 Failure during fg -ZMQ-196 System out of sockets after number of reconnections -ZMQ-197 Offload signal handling from I/O threads -ZMQ-198 Timers can never expire -ZMQ-199 Make receive in libczmq zero-copy -ZMQ-200 Virtualise global locator -ZMQ-202 Check out SCTP support on QNX -ZMQ-203 Add auto-reconnect to AMQP engine -ZMQ-205 Check handling of async errors on a socket -ZMQ-206 Make zmq_server not to drop the endpoint info on service disconnect -ZMQ-207 zmq_server should be able to read endpoint info from XML file -ZMQ-210 Switch perf tests to load-balancing mode -ZMQ-211 Port Data Dam functionality to Win32 -ZMQ-212 Integrate add and inc in atomic_counter into a single function -ZMQ-213 When 0MQ infrastructure is terminated, sockets are not closed correctly -ZMQ-215 Java on Win32 platform not stopping in case of assertion -ZMQ-217 zmq_server can be crashed by incorect input data -ZMQ-218 C# integration not working anymore -ZMQ-219 Change .NET extesnsion to use CamelCase -ZMQ-220 Check whether individual APIs conforms to API guidelines document -ZMQ-221 Allow to create global object w/o specifying the location -ZMQ-222 SPARC code for atomic_counter broken -ZMQ-223 Rename czmq/jzmq/dnzmq etc. to simple "zmq" -ZMQ-225 Application fails when it's connected from telnet - -Version 0.5 - -ZMQ-17 look at pgm_transport_set_recv_only and ...send_only -ZMQ-26 Allow for "any" network interface -ZMQ-31 Implement SCTP support -ZMQ-45 Normalise API vs. I/O thread -ZMQ-78 Make connection establishment asynchronous -ZMQ-79 Refactor handling of broken connections -ZMQ-100 Move flow control and queue limits from 0.3.3 branch to the trunk -ZMQ-101 Move reconnection functionality from 0.3.3 branch to the trunk -ZMQ-112 build via cmake (makefile generator) -ZMQ-115 Identify SPARC V9 microarc and/or availability of CAS instruction -ZMQ-116 Implement .NET extension -ZMQ-129 Make engine_source part of the polling object -ZMQ-139 /dev/poll introduces latency on Solaris -ZMQ-144 Investigate latency impact of using eventfd instead of socketpair on Linux -ZMQ-146 Check whether i386 and x86_64 in atomic_ptr can be unified -ZMQ-148 Change watermarks from int to uint64_t -ZMQ-149 Virtualise creation of 0MQ connections -ZMQ-150 Negative numbers in unsigned type in atomic_counter -ZMQ-151 Modify build system to build SCTP extension -ZMQ-152 Merge BP/PGM functionality into the trunk -ZMQ-153 compiler warnings on solaris -ZMQ-155 Build libzmq with sctp support witch cmake -ZMQ-160 Get rid of create functions in engines -ZMQ-162 CMakeLists.txt files not updated with latest changes -ZMQ-165 Implement reconnection notifications -ZMQ-169 Return queue id from receive function in libpyzmq -ZMQ-171 Add AMQP support to 0MQ -ZMQ-173 Throughput test should accept 2 interface specifications -ZMQ-174 When application is killed on Win32, zmq_server fails -ZMQ-175 Chatroom example doesn't pass messages after reconnection -ZMQ-177 Update language extensions to take advantage of auto-reconnect -ZMQ-181 Rafactor the code to support multiple notification types - -Version 0.4 - -ZMQ-21 Clean up the command passing code -ZMQ-36 autogen/configure fails on Solaris -ZMQ-39 Check whether using CAS for btsr and izte on x86 platform improves latency -ZMQ-40 Check autogen on FreeBSD -ZMQ-41 Check autogen on OS X -ZMQ-43 Use +m instead of memory in atomic operations -ZMQ-46 Get rid of administrative pseudo-thread -ZMQ-63 -mcpu=v9 CPPFLAG should be used only at sparc achitecture -ZMQ-64 gcc 3.4.3 on opensolaris complains about -mcpu flag -ZMQ-65 No error report when host name resolving fails -ZMQ-66 Several files use atoi without including stdlib.h -ZMQ-69 Make stdint.hpp hand-written rather than generated -ZMQ-71 Virtualise thread management -ZMQ-72 Remove platform.hpp -ZMQ-74 Implement win32 version of tcp_socket and tcp_listener -ZMQ-75 Virtualise mutexes -ZMQ-76 Implement win32 version of ysemaphore_t -ZMQ-80 Virtualise polling mechanisms -ZMQ-81 Implement 'select' polling mechanism -ZMQ-82 Rename i_context to i_thread -ZMQ-83 "Resource temporarily unavailable" when running on 266MHz box -ZMQ-84 zmq_server stops to respond -ZMQ-89 Make i_pollable derived from i_engine -ZMQ-94 Report error when malloc fails -ZMQ-95 Add /dev/poll method of polling -ZMQ-96 Add support for kqueue method of polling -ZMQ-97 OpenBSD port -ZMQ-98 QNX port -ZMQ-99 use pyexec_LTLIBRARIES primary for libpyzmq -ZMQ-103 Use non blocking sockets -ZMQ-106 memory leak when sending message from Java -ZMQ-111 Get rid of speculative operations -ZMQ-113 Windows compiler (_MSC_VER 1310) doesn't support strncpy_s function -ZMQ-117 select_thread doesn't implement rm_fd function -ZMQ-119 select thread fails on shudown -ZMQ-121 Fix all I/O threads to handle rm_fd correctly -ZMQ-124 include gaurd is wrong -ZMQ-126 Refactor I/O threads implementation to avoid duplication of common functionality. -ZMQ-131 select_thread fails on Windows -ZMQ-132 Pointer to poller_t is used before it is fully initialised -ZMQ-134 Thread management in constructors/destructors -ZMQ-135 Move retired list to the polling strategy-specific object -ZMQ-137 Assertion fails at bp_engine, line 132, error_handler is not set - -Version 0.3.2 - -ZMQ-54 Test programs are compiled with --rpath - -Version 0.3.1 - -ZMQ-25 Allow to use network interface name instead of IP address -ZMQ-29 Implement speculative write to socket -ZMQ-33 Assign ports to global objects automatically -ZMQ-34 Message size of zero causes application to hang up -ZMQ-42 Change locators to deal with a single object type -ZMQ-44 Some of the objects have non-functional auto-generated copy constructors -ZMQ-47 Camera example is broken -ZMQ-48 Sender fails when receiver disconnects -ZMQ-50 Warning in chat example -ZMQ-51 Make it possible to use single include (zmq.hpp) for client apps -ZMQ-53 Segmentation fault when binding to non-existent queue -ZMQ-55 raw_message_init (data,size,ffn) allocates more memory than needed -ZMQ-56 zmq_server fails if too many apps disconnect abruptly -ZMQ-58 Implement C binding for 0MQ -ZMQ-59 Implement Java binding for 0MQ -ZMQ-60 Implement Python binding for 0MQ -ZMQ-62 Write man pages - -Version 0.3 - -ZMQ-1 poll_thread hangs in destructor -ZMQ-4 Missing -D_REENTRANT command line parameter while compiling 0MQ -ZMQ-5 Check for buffer overflows in AMQP/0-9 marshaller/unmarshaller -ZMQ-6 Allow dynamic adding of engines to poll_thread -ZMQ-7 Implement dynamic assignment of engine IDs to engines -ZMQ-9 Implement event batching in ysocketpair -ZMQ-10 Remove remaining references to HAVE_CONFIG_H from the code -ZMQ-11 Move 'alive' flag to the dispatcher -ZMQ-12 Move dispatcher signalers into a separate array -ZMQ-13 Allow up to 63 threads on x86_64 platform -ZMQ-14 Implement new type of lock-free pipe -ZMQ-15 Implement an infrastructure to pass arbitrary commands between threads -ZMQ-16 missing stats_raw_den.R, stats_raw_lat.R in dist package -ZMQ-20 Sync problem with ypollset/atomic_bitmap -ZMQ-24 Redundant poll -ZMQ-30 Implement epoll suport -ZMQ-37 Identify SPARC V9 microarc and/or availability of CAS instruction - -Version 0.2 - -ZMQ-2 Failure when mutexes are used atomic_uint32 -ZMQ-3 socket hangup at OS X |