|
4 | 4 | Change history |
5 | 5 | ================ |
6 | 6 |
|
| 7 | +.. _version-5.6.0rc2: |
| 8 | + |
| 9 | +5.6.0rc2 |
| 10 | +======= |
| 11 | +:release-date: 20 October, 2025 |
| 12 | +:release-by: Tomer Nosrati |
| 13 | + |
| 14 | +Key Highlights |
| 15 | +~~~~~~~~~~~~~~ |
| 16 | + |
| 17 | +QoS Max Prefetch Limit |
| 18 | +---------------------- |
| 19 | + |
| 20 | +`PR #2348 <https://github.com/celery/kombu/pull/2348>`_ |
| 21 | + |
| 22 | +Prevent Out Of Memory crashes when queues flood with ETA/countdown tasks. The new optional ``max_prefetch`` parameter caps how many messages workers hold in memory. Defaults to unlimited (``None``) to preserve existing behavior. |
| 23 | + |
| 24 | +.. code-block:: python |
| 25 | +
|
| 26 | + from kombu.common import QoS |
| 27 | +
|
| 28 | + # Limit prefetch to maximum 100 messages |
| 29 | + qos = QoS(callback=consumer.qos, initial_value=10, max_prefetch=100) |
| 30 | +
|
| 31 | +Redis Polling Interval Support |
| 32 | +------------------------------ |
| 33 | + |
| 34 | +`PR #2346 <https://github.com/celery/kombu/pull/2346>`_ |
| 35 | + |
| 36 | +Fix Redis transport to properly propagate ``polling_interval`` and ``brpop_timeout`` from ``transport_options`` to the Channel's ``_brpop_start`` timeout. |
| 37 | + |
| 38 | +.. code-block:: python |
| 39 | +
|
| 40 | + app.conf.broker_transport_options = {"polling_interval": 10} |
| 41 | +
|
| 42 | +Leave it unset to keep the familiar 1-second default, or raise it to slow down idle polling. |
| 43 | + |
| 44 | +Pidbox RabbitMQ 4.x Compatibility |
| 45 | +--------------------------------- |
| 46 | + |
| 47 | +`PR #2338 <https://github.com/celery/kombu/pull/2338>`_ |
| 48 | + |
| 49 | +Let pidbox queues work on RabbitMQ 4.x brokers that reject transient, non-exclusive queues. |
| 50 | + |
| 51 | +MongoDB Transport Improvements |
| 52 | +------------------------------ |
| 53 | + |
| 54 | +`PR #2347 <https://github.com/celery/kombu/pull/2347>`_ |
| 55 | + |
| 56 | +URI options now come through lowercase and flattened again, so settings like ``replicaSet=test_rs`` show up as ``options['replicaset']``. |
| 57 | + |
| 58 | +Resource Pool Gevent Compatibility |
| 59 | +---------------------------------- |
| 60 | + |
| 61 | +`PR #2314 <https://github.com/celery/kombu/pull/2314>`_ |
| 62 | + |
| 63 | +Restore compatibility with recent gevent releases that monkey-patch the standard library queue. |
| 64 | + |
| 65 | +Timezone-aware UTC Timestamps |
| 66 | +----------------------------- |
| 67 | + |
| 68 | +`PR #2355 <https://github.com/celery/kombu/pull/2355>`_ |
| 69 | + |
| 70 | +Replace every usage of ``datetime.utcnow()`` with ``datetime.now(timezone.utc)`` to return timezone-aware UTC datetimes. |
| 71 | + |
| 72 | +Redis Client Name Support |
| 73 | +---------------------------------- |
| 74 | + |
| 75 | +`PR #2367 <https://github.com/celery/kombu/pull/2367>`_ |
| 76 | + |
| 77 | +Support for propagating the ``client_name`` connection parameter through the Redis transport (including Sentinel) so that connections appear with meaningful names in monitoring tools. |
| 78 | + |
| 79 | +What's Changed |
| 80 | +~~~~~~~~~~~~~~ |
| 81 | + |
| 82 | +- Update Redis version constraint to <6.2 (#2377) |
| 83 | +- remove Python 3.8 from CI as EOL (#2241) |
| 84 | +- Revert "Bump pymongo from 4.10.1 to 4.15.3" (#2384) |
| 85 | +- Update requirements to remove backports.zoneinfo (#2391) |
| 86 | +- Update qpid-python and qpid-tools versions (#2392) |
| 87 | +- Remove Qpid transport from requirements of func test (#2393) |
| 88 | +- Fix comment grammar in entity_name test (#2394) |
| 89 | +- Prepare for (pre) release: v5.6.0rc2 (#2396) |
| 90 | + |
7 | 91 | .. _version-5.6.0rc1: |
8 | 92 |
|
9 | 93 | 5.6.0rc1 |
|
0 commit comments