Dependency Changes
- Drop official Python 3.4 and 3.5 support
- Bump the pika requirement to 1.0.1+
API Changes
- Move all APIs to use the Twisted-managed connection. There are a few minor changes here which slightly change the APIs:
- Publishing now raises a PublishTimeout when the timeout is reached (30 seconds by default).
- Previously, the Twisted consume API did not validate arguments like the synchronous version did, so it now raises a ValueError on invalid arguments instead of crashing in some undefined way.
- Calling publish from the Twisted reactor thread now raises an exception instead of blocking the reactor thread.
Features
- The fedora-messaging cli now has 2 new sub-commands: publish and record. (PR#43)
- Log the failure traceback on connection ready failures.
Bug Fixes
- Fix an issue where reconnection to the server would fail. (#208)
- Don't declare exchanges when consuming. (#171)
- Fix Twisted legacy logging (it does not accept format parameters).
- Handle ConnectionLost errors in the v2 Factory.
Development Changes
- Many Twisted-related tests were added.
- Include tests for sample schema package.
- Update the dumps and loads functions for a new message format.
Documentation Improvements
- Document that logging is only set up for consumers.
- Update the six intersphinx URL to fix the docs build.
- Add the "conf" and "DEFAULTS" variables to the API documentation.
- Update example config: extra properties, logging.
- Document a quick way to setup logging.
- Document the sent-at header in messages.
- Create a quick-start guide.
- Clarify queues are only deleted if unused.
- Wire-format: improve message properties documentation.
- Note the addition client properties in the config docs.
Contributors
Many thanks to the contributors of bug reports, pull requests, and pull request
reviews for this release:
- Aurélien Bompard
- Adam Williamson
- dvejmz
- Jeremy Cline
- Randy Barlow
- Shraddha Agrawal
- Sebastian Wojciechowski