<div>
<div>
<span>
<div>I am pleased to announce that Pika v0.9.5 is now available for download. Pika AMQP 0-9-1/RabbitMQ 2.0+ client library for Python.</div><div><br></div><div>Pika v0.9.5 adds over 100 additional unit and functional tests covering Python 2.4 through Python 2.7 and addresses major bugs found in v0.9.4. </div><div><br></div><div>All users of the 0.9 tree of Pika are highly encouraged to upgrade to v0.9.5.</div><div><br></div><div>Pika's home has moved to https://github.com/pika and documentation is now available at http://pika.github.com.</div><div><br></div><div>Thanks to Brian K. Jones, Jason J. W. Williams, Marek Majkowski, Peter Magnusson and Samuel Stauffer for bug-fixes, suggestions and contributions to this release.</div><div><br></div><div>Pika v0.9.5 is mainly a bug fix version and is intended to be the last version in the 0.9 tree, however please report any issues at https://github.com/pika/pika/issues</div><div><br></div><div>Pika may be installed via source from http://pypi.python.org/packages/source/p/pika/pika-0.9.5.tar.gz (md5: 38527f6977bf0a0b204710b93b0c6417)</div><div><br></div><div>It is also available for installation via easy_install and pip:</div><div><br></div><div> pip install pika / easy_install pika</div><div><br></div><div><u>Changelog</u></div><div>- Scope changes with adapter IOLoops and CallbackManager allowing for cleaner, multi-threaded operation</div><div>- Add support for Confirm.Select with channel.Channel.confirm_delivery()</div><div>- Add examples of delivery confirmation to examples (demo_send_confirmed.py)</div><div>- Update uses of log.warn with warning.warn for TCP Back-pressure alerting</div><div>- License boilerplate updated to simplify license text in source files</div><div>- Increment the timeout in select_connection.SelectPoller reducing CPU utilization</div><div>- Bug fix in Heartbeat frame delivery addressing issue #35</div><div>- Remove abuse of pika.log.method_call through a majority of the code</div><div>- Rename of key modules: table to data, frames to frame</div><div>- Cleanup of frame module and related classes</div><div>- Restructure of tests and test runner</div><div>- Update functional tests to respect RABBITMQ_HOST, RABBITMQ_PORT environment variables</div><div>- Bug fixes to reconnection_strategies module</div><div>- Fix the scale of timeout for PollPoller to be specified in milliseconds</div><div>- Remove mutable default arguments in RPC calls</div><div>- Add data type validation to RPC calls</div><div>- Move optional credentials erasing out of connection.Connection into credentials module</div><div>- Add support to allow for additional external credential types</div><div>- Add a NullHandler to prevent the 'No handlers could be found for logger "pika"' error message when not using pika.log in a client app at all.</div><div>- Clean up all examples to make them easier to read and use</div><div>- Move documentation into its own repository https://github.com/pika/documentation</div><div>- channel.py:</div><div> - Move channel.MAX_CHANNELS constant from connection.CHANNEL_MAX</div><div> - Add default value of None to ChannelTransport.rpc</div><div> - Validate callback and acceptable replies parameters in ChannelTransport.RPC</div><div> - Remove unused connection attribute from Channel</div><div>- connection.py:</div><div> - Remove unused import of struct</div><div> - Remove direct import of pika.credentials.PlainCredentials</div><div> - Change to import pika.credentials</div><div> - Move CHANNEL_MAX to channel.MAX_CHANNELS</div><div> - Change ConnectionParameters initialization parameter heartbeat to boolean</div><div> - Validate all inbound parameter types in ConnectionParameters</div><div> - Remove the Connection._erase_credentials stub method in favor of letting the Credentials object deal with that itself.</div><div> - Warn if the credentials object intends on erasing the credentials and a reconnection strategy other than NullReconnectionStrategy is specified.</div><div> - Change the default types for callback and acceptable_replies in Connection._rpc</div><div> - Validate the callback and acceptable_replies data types in Connection._rpc</div><div>- adapters.blocking_connection.BlockingConnection:</div><div> - Addition of _adapter_disconnect to blocking_connection.BlockingConnection</div><div> - Add timeout methods to BlockingConnection addressing issue #41</div><div> - BlockingConnection didn't allow you register more than one consumer callback because basic_consume was overridden to block immediately. New behavior allows you to do so.</div><div> - Removed overriding of base basic_consume and basic_cancel methods. Now uses underlying Channel versions of those methods.</div><div> - Added start_consuming() method to BlockingChannel to start the consumption loop.</div><div> - Updated stop_consuming() to iterate through all the registered consumers in self._consumers and issue a basic_cancel.</div>
</span>
<span></span>
</div>
</div>