* Thu Jan 31 2019 email@example.com
- Updated to 4.2.2.post1:
- Support both Redis client version 2.x and version 3.x.
* Wed Aug 15 2018 firstname.lastname@example.org
- Updated to 4.2.1
* The 4.2.0 release contained remains of the ``async`` module by accident.
This is now fixed.
* Handle librabbitmq fileno raising a ValueError when socket is not
* Now passing ``max_retries``, ``interval_start``,
``interval_step``, ``interval_max`` parameters from broker
:meth:`~kombu.Connection.ensure_connection` when returning
:meth:`~kombu.Connection.default_connection` (Issue #765).
* Qpid: messages are now durable by default
* Kombu now requires version 2.10.4 or greater of the redis
library, in line with Celery
* Fixed ImportError in some environments with outdated simplejson
* MongoDB: fixed failure on MongoDB versions with an "-rc" tag
* Ensure periodic polling frequency does not exceed timeout in
* Fixed string handling when using python-future module
* Replaced "async" with "asynchronous" in preparation for Python
* Allow removing pool size limit when in use
* Codebase improvements and fixes
* Documentation improvements
- added python as requirement for ssl module is needed by amqp
* Wed May 23 2018 email@example.com
- Clean up SPEC and obsolete python-carrot
- Remove superfluous python-devel
* Tue Jan 30 2018 firstname.lastname@example.org
- update to 4.1.0:
- RabbitMQ: Ensured safer encoding of queue arguments.
- Added fallback to :func:``uuid.uuid5`` in :func:``generate_oid`` if
- Added Python 3.6 to CI testing
- Fixed bug around modifying dictionary size while iterating over it
* Wed Jun 28 2017 email@example.com
- convert the package to singlespec
- import changes from python3-kombu:
* add AUTHORS to the package documentation
* use a more precise file list
- drop test BuildRequires mock, nose-cover3 and unittest2:
not needed anymore
- add fdupes as BuildRequires and call it after install
- skip the tests for python3 since they fail with python 3.6 (#675)
* Thu Mar 16 2017 firstname.lastname@example.org
- update to 4.0.2:
- Now depends on :mod:`amqp` 2.0.
The new py-amqp version have been refactored for better performance,
using modern Python socket conventions, and API consistency.
- No longer depends on :mod:`anyjson`.
Kombu will now only choose between :pypi:`simplejson` and the built-in
- Removed transports that are no longer supported in this version:
- Django ORM transport
- SQLAlchemy ORM transport
- Beanstalk transport
- ZeroMQ transport
- amqplib transport (use pyamqp).
* Mon Nov 14 2016 email@example.com
- update to 3.0.35:
- msgpack: msgpack support now requires msgpack-python > 0.4.7.
- Redis: TimeoutError was no longer handled as a recoverable error.
- msgpack: Fixes support for binary/unicode data
- Qpid: Adds async error handling.
- msgpack: Use binary encoding instead of utf-8 (Issue #570).
* Wed Jan 13 2016 firstname.lastname@example.org
- Update to 3.0.33:
* Now depends on :mod:`amqp` 1.4.9
* Redis: Fixed problem with auxilliary connections causing the
main consumer connection to be closed (Issue #550)
* Qpid: No longer uses threads to operate, to ensure
compatibility with all environments (Issue #531)
- See /usr/share/doc/packages/python-kombu/Changelog for changes
introduced between 3.0.27 and 3.0.32
- Remove fix-tests.patch
* Mon Sep 14 2015 email@example.com
- Add fix-tests.patch to fix testcases with newer python-mock.
* Fri Jul 24 2015 firstname.lastname@example.org
- fix non-SUSE build by conditionalizing Suggests: tag
* Thu May 07 2015 email@example.com
- update to 3.0.26:
* Fixed compatibility with py-redis versions before 2.10.3
- update project URL
- set a minimum version for python-anyjson in BuildRequires
- add back python-msgpack-python as test requirement
- pass -q to test to avoid spamming the build log
* Wed Apr 22 2015 firstname.lastname@example.org
- update to 3.0.25:
- pyamqp/librabbitmq now uses 5671 as default port when SSL is enabled
- Redis: Now supports passwords in ``redis+socket://:pass@host:port`` URLs
- ``Producer.publish`` now defines the ``expiration`` property in support
of the `RabbitMQ per-message TTL extension`_.
- Connection transport attribute now set correctly for all transports.
- qpid: Fixed bug where the connectionw as not being closed properly.
- :class:`~kombu.entity.bindings` is now JSON serializable (Issue #453).
- Fixed typo in error when yaml is not installed (said ``msgpack``).
- Redis: Now properly handles ``TimeoutError raised by py-redis.
- qpid: Adds additional string to check for when connecting to qpid.
When we connect to qpid, we need to ensure that we skip to the next SASL
mechanism if the current mechanism fails. Otherwise, we will keep retrying
the connection with a non-working mech.
- qpid: Handle ``NotFound`` exceptions.
- :class:`Queue.__repr__` now makes sure return value is not unicode
- qpid: ``Queue.purge`` incorrectly raised :exc:`AttributeErrror` if the
does not exist (Issue #439).
- Linux: Now ignores permission errors on epoll unregister.
* Thu Nov 20 2014 email@example.com
- update to version 3.0.24:
- The `Qpid <http://qpid.apache.org/>`_ broker is supported for Python 2.x
environments. The Qpid transport includes full SSL support within Kombu. See
the :mod:`kombu.transport.qpid` docs for more info.
- Dependencies: extra[librabbitmq] now requires librabbitmq 1.6.0
- Docstrings for :class:`~kombu.utils.limit.TokenBucket` did not match
- :func:`~kombu.common.oid_from` accidentally called ``uuid.getnode()`` but
did not use the return value.
- Redis: Now ignores errors when cosing the underlying connection.
- Redis: Restoring messages will now use a single connection.
- ``kombu.five.monotonic``: Can now be imported even if ctypes is not
available for some reason (e.g. App Engine)
- Documentation: Improved example to use the ``declare`` argument to
``Producer`` (Issue #423).
- Django: Fixed ``app_label`` for older Django versions (``< 1.7``).
- fixed python-amqp BuildRequire
* Mon Sep 15 2014 firstname.lastname@example.org
- update to version 3.0.23:
* Django: Fixed bug in the Django 1.7 compatibility improvements related
to autocommit handling.
* Django: The Django transport models would not be created on syncdb
after app label rename (Issue #406).
* kombu.async: Min. delay between waiting for timer was always increased to
* Fixed bug in itermessages where message is received after the with
statement exits the block.
* Connection.autoretry: Now works with functions missing wrapped attributes
(``__module__``, ``__name__``, ``__doc__``). Fixes #392.
* Django: Now sets custom app label for ``kombu.transport.django`` to work
with recent changes in Django 1.7.
* SimpleQueue removed messages from the wrong end of buffer (Issue #380).
* Tests: Now using ``unittest.mock`` if available (Issue #381).
- adjust python-amqp Require
* Fri Aug 15 2014 email@example.com
- update to 3.0.21;
- see http://kombu.readthedocs.org/en/latest/changelog.html for full changelog
* Mon May 26 2014 firstname.lastname@example.org
- update to 3.0.16:
- ``kombu[librabbitmq]`` now depends on librabbitmq 1.5.1.
- Tests: Some unit tests accidentally required the `redis-py` library.
- librabbitmq: Would crash when using an older version of :mod:`librabbitmq`,
now emits warning instead.
- remove kombu-fix-redis-tests.patch: Fixed differently upstream
* Mon May 05 2014 email@example.com
- add kombu-fix-redis-tests.patch
* Add skip_if_no_module decorator
* Fri May 02 2014 firstname.lastname@example.org
- update to 3.0.15:
* Now depends on :mod:`amqp` 1.4.5.
* RabbitMQ 3.3 changes QoS semantics (Issue #339).
* Users of :mod:`librabbitmq` is encouraged to upgrade to librabbitmq 1.5.0.
* Pools: Now takes transport options into account when comparing connections
* MongoDB: Fixes Python 3 compatibility.
* Async: select: Ignore socket errors when attempting to unregister handles
from the loop.
* Pidbox: Can now be configured to use a serializer other than json,
but specifying a serializer argument to :class:`~kombu.pidbox.Mailbox`.
* Message decompression now works with Python 3.
- update to 3.0.14:
* **MongoDB**: Now endures a connection failover (Issue #123).
* **MongoDB**: Fixed ``KeyError`` when a replica set member is removed.
* **MongoDB**: Fixed MongoDB broadcast cursor re-initialization bug.
* **Async**: Fixed bug in lax semaphore implementation where in
some usage patterns the limit was not honored correctly.
* **Redis**: Fixed problem with fanout when using Python 3 (Issue #324).
* **Redis**: Fixed ``AttributeError`` from attempting to close a non-existing
connection (Issue #320).
- update to 3.0.13:
* Redis: Fixed serious race condition that could lead to data loss.
* Now depends on :mod:`amqp` 1.4.4.
* Pidbox: Now makes sure message encoding errors are handled by default,
so that a custom error handler does not need to be specified.
* Redis: The fanout exchange can now use AMQP patterns to route and filter
* Redis: Fixed ``cycle`` no such attribute error.
- update to 3.0.12:
* Now depends on :mod:`amqp` 1.4.3.
* Fixes Python 3.4 logging incompatibility (Issue #311).
* Redis: Now properly handles unknown pub/sub messages.
* amqplib: Fixed bug where more bytes were requested from the socket
- update to 3.0.11:
* Now depends on :mod:`amqp` 1.4.2.
* Now always trusts messages of type `application/data` and `application/text`
or which have an unspecified content type (Issue #306).
* Compression errors are now handled as decode errors and will trigger
the ``Consumer.on_decode_error`` callback if specified.
* New ``kombu.Connection.get_heartbeat_interval()`` method that can be
used to access the negotiated heartbeat value.
* `kombu.common.oid_for` no longer uses the MAC address of the host, but
instead uses a process*wide UUID4 as a node id.
* Hub.add: Now normalizes registered fileno.
* SQS: Fixed bug where the prefetch count limit was not respected.
* Wed Feb 19 2014 email@example.com
- Demote recommends back to suggests, it is really sufficent to document
the possible backend options. But we want to avoid they're installed
* Tue Jan 21 2014 firstname.lastname@example.org
- update to 3.0.10:
* Now depends on amqp 1.4.1.
* maybe_declare now raises a ?recoverable connection error?
if the channel is disconnected
* Redis: Consumer.cancel() is now thread safe.
* Fixed ?unhashable type? error on Python 3
* Do not attempt to unregister operations on an already closed
* Tue Jan 14 2014 email@example.com
- update to 3.0.9:
- Now depends on :mod:`amqp` 1.4.0.
- Redis: Basic cancel for fanout based queues now sends a corresponding
``UNSUBSCRIBE`` command to the server.
- MongoDB: Improved connection string and options handling
(Issue #266 + Issue #120).
- SQS: Limit the number of messages when receiving in batch to 10.
- ConsumerMixin: ``consume`` now checks heartbeat every time the
socket times out.
- Retry Policy: A max retries of 0 did not retry forever.
- Simple: If passing a Queue object the simple utils will now take
default routing key from that queue.
- Redis: The map of Redis error classes are now exposed at the module level
using the :func:`kombu.transport.redis.get_redis_error_classes` function.
- Async: ``Hub.close`` now sets ``.poller`` to None.
* Mon Jan 13 2014 firstname.lastname@example.org
- update to 3.0.8:
- Redis: Would attempt to read from the wrong connection if a select/epoll/kqueue
exception event happened.
- Redis: Disabling ack emulation now works properly.
- Redis: :exc:`IOError` and :exc:`OSError` are now treated as recoverable
- SQS: Improved performance by reading messages in bulk.
- Connection Pool: Attempting to acquire from a closed pool will now
- Changes from 3.0.7:
- Fixes Python 2.6 compatibility.
- Redis: Fixes 'bad file descriptor' issue.
* Mon Dec 09 2013 email@example.com
- Fixup amqp dependency version check