========================================================================= == Release Notes for ActiveMQ CPP 2.1 == ========================================================================= == Overview == This version includes several bugfixes, as well as some new features. Also a lot of work has been done on performance and memory leaks. One new feature that has been highly anticipated is that we now build both shared and static libraries. NOTE: Compatable with ActiveMQ Broker version >= 4.0.2 == Issues Resolved == Bug * [AMQCPP-104] - Enabling async send prevents program from terminating properly on Windows * [AMQCPP-119] - getClientID segfaults is called after connection has been closed * [AMQCPP-120] - Possible memory leak in StompConnector * [AMQCPP-121] - Possible memory leak in activemq::transport::IOTransport::run * [AMQCPP-122] - Crash on Windows when rapidly creating and destroying connections * [AMQCPP-126] - closing ressources after an IOException crashes the app * [AMQCPP-128] - Transacted session crashes or loses messages * [AMQCPP-131] - StompConnector doesn't rethrow UnsupportedOperationException * [AMQCPP-132] - Unsubscribe of durable subscription fails * [AMQCPP-133] - Receive of plain Message with Openwire returns null * [AMQCPP-134] - Compiler warnings have returned for tests on gcc Improvement * [AMQCPP-65] - Refactor transport creation * [AMQCPP-66] - Refactor the Async send to happen in an Async Transport instead of in ActiveMQSession * [AMQCPP-108] - Make stomp connector more generic * [AMQCPP-110] - Create activemqcpp-openwire-generator build in our pom.xml, move code to src/main/java * [AMQCPP-116] - quick improvements to CMS example code * [AMQCPP-118] - Provide a way to allocate and free with the same allocator * [AMQCPP-123] - Link error when trying to link another shared library against AMQCPP on 64-bit Linux * [AMQCPP-127] - ResponseCorrelator doesn't have a way to set max timeot from the properties uri. * [AMQCPP-130] - Enhance the DummyTransport and rename it to MockTransport New Feature * [AMQCPP-125] - Decaf: Random Task * [AMQCPP-106] - reorganize subversion * [AMQCPP-115] - Change build to create dynamic libraries ========================================================================= == Release Notes for ActiveMQ CPP 2.0.1 == ========================================================================= == Overview == This version is a bug fix release for issues that were found in the 2.0 release NOTE: Compatable with ActiveMQ Broker version >= 4.0.2 == Issues Resolved == Bug * [AMQCPP-105] - Openwire ActiveMQMessage sets Persistant flag incorrectly * [AMQCPP-107] - SocketInputStream::read() doesn't check for EINTR error * [AMQCPP-109] - Exception when acknowledging null messages, originating from the receipt of an ObjectMessage * [AMQCPP-112] - Openwire Experiation Integration tests fail when fixed to actually use Openwire Improvement * [AMQCPP-101] - Add the Ability to set the TcpNoDelay flag of a TCP Socket * [AMQCPP-102] - Create a Tag for CMS ========================================================================= == Release Notes for ActiveMQ CPP 2.0 == ========================================================================= == Overview == This version is a major release containing new features and bug fixes. * Full OpenWire v2 support! * You can switch between openwire and stomp via the connection URL * Temporary destinations when using OpenWire * Added support for asynchronous send * Fixed client acknowledge * Resolved some memory leaks * Sessions are now single threaded NOTE: Compatable with ActiveMQ Broker version >= 4.0.2 == Issues Resolved == Bug * [AMQCPP-38] - Async error on broker when running integration tests * [AMQCPP-44] - Reason for socket errors not reported correctly on Windows * [AMQCPP-46] - ActiveMQConnection doesn't propagate exception listener to underlying connector * [AMQCPP-51] - Autoconf is not properly setting CXXFLAGS on Linux * [AMQCPP-52] - Valgrind reports memory leaks when running PrimitiveMapTest * [AMQCPP-53] - Declaration of extern int errno after including errno.h doesn't compile * [AMQCPP-54] - Build broken due to autoconf problem? * [AMQCPP-55] - Need close() to propagate to child resources * [AMQCPP-56] - GCC warnings and possible SocketFactory bug on 64-bit Linux * [AMQCPP-58] - Possible memory leak when reestablishing connection * [AMQCPP-59] - Exception is thrown when destroying consumer after connection failure * [AMQCPP-60] - message information is lost from stomp message to jms * [AMQCPP-61] - CMSException::what returns c_str of temporary std::string * [AMQCPP-62] - Broken CLIENT_ACKNOWLEDGE * [AMQCPP-64] - Inconsistency in topic names when creating topics * [AMQCPP-75] - setCMSReplyTo with null destination segfaults when using Openwire wire format * [AMQCPP-76] - Integer property not propagated when using Openwire * [AMQCPP-77] - Inconsistency when getting string property between Stomp and Openwire * [AMQCPP-78] - session tries to destroy already destroyed temporary queue * [AMQCPP-80] - sending with explicit message id hangs * [AMQCPP-81] - openwire consumer never receives messages already in queue * [AMQCPP-83] - Integration tests fail for openwire * [AMQCPP-85] - activemq/util/Character.h not being installed by automake * [AMQCPP-86] - Valgrind reports memory leaks in unit tests * [AMQCPP-87] - ActiveMQConnectionFactory creates only one unique clientId * [AMQCPP-90] - Openwire Session doesn't run its MessageListeners from a single thread * [AMQCPP-91] - A few more Openwire memory leaks * [AMQCPP-92] - memory leak in openwire session info Improvement * [AMQCPP-40] - A few stray unix and sun defines * [AMQCPP-47] - MapMessage getters should be const * [AMQCPP-48] - Fix compilation with Visual Studio .NET 2003 * [AMQCPP-49] - Add -W -Wall compile options * [AMQCPP-50] - Derive cms::CMSException from std::exception * [AMQCPP-57] - Typo in names of delivery modes * [AMQCPP-79] - allow createProducer to accept null destination * [AMQCPP-89] - Case of cms::Message getter and setter names are not consistent with case of JMS Message getter and setter names * [AMQCPP-94] - StompConnector should use Long::toString instead of Integer::toString New Feature * [AMQCPP-30] - Add support to activemq-cpp to support the openwire protocol * [AMQCPP-63] - asynchronous send Task * [AMQCPP-82] - Make openwire the default protocol * [AMQCPP-84] - add unit/integration tests * [AMQCPP-88] - Remove setCMSMessageId from CMS API * [AMQCPP-95] - Perform Memory Leak testing on 2.0 codebase ========================================================================= == Release Notes for ActiveMQ CPP 1.1 == ========================================================================= == Overview == This version fixes several bugs and adds a few new features. * Updated interface for cms::BytesMessage - more JMS-like. * Updated the MessageProducer interface to add multiple versions of the send method * Fixed several memory leaks * Now run on linux, win32, OS X, and Solaris * Persistence is fixed * Fixed deadlocks when closing a connection * Fixed message expiration NOTE: Compatable with ActiveMQ Broker version >= 4.0.2 == Issues Resolved == Bug * [AMQCPP-3] - Receiving a BytesMessage sent from Java using CMS listener causes exception thrown in class BufferedInputStream * [AMQCPP-14] - CMSExpiration not handled properly in ActiveMQProducer * [AMQCPP-18] - ActiveMQConnection.close() causes app to crash * [AMQCPP-20] - Deadlock when in stomp connector close * [AMQCPP-22] - Use common name for ActiveMQ C++ library on Windows and Linux * [AMQCPP-23] - active-cpp persistent problem * [AMQCPP-25] - Bus error on Solaris OS from DataInput and DataOutput streams * [AMQCPP-26] - Memory leaks reported by Rational Purify when running unit tests * [AMQCPP-27] - Issues reported by Valgrind when running unit tests * [AMQCPP-28] - Purify and Valgrind warnings when running integration tests * [AMQCPP-29] - Projects in MSVC build building on top of one another * [AMQCPP-35] - Stomp content-length header not being set on BytesMessage * [AMQCPP-39] - Some AMQCPP includes not installed when doing make install on Linux * [AMQCPP-41] - Byte swap on float and double truncates values * [AMQCPP-43] - Crash when getting string property that doesn't exist Improvement * [AMQCPP-16] - CMS API needs updates to more closely follow JMS API * [AMQCPP-33] - Integration tests crash if broker isn't running * [AMQCPP-36] - Cleanup whitespace and member function definitions in header files * [AMQCPP-42] - A few more strict aliasing warnings New Feature * [AMQCPP-15] - Add other versions of send method to CMS MessageProducer * [AMQCPP-37] - readUTF and writeUTF for BytesMessage Task * [AMQCPP-45] - Update configure.ac with release version Wish * [AMQCPP-31] - Consider giving the unix #define a more unique name * [AMQCPP-32] - Stomp messages don't preserve property types: please document this behaviour