@@ -8,6 +8,136 @@ This document contains change notes for bugfix & new features
8
8
in the main branch & 5.5.x series, please see :ref: `whatsnew-5.5 ` for
9
9
an overview of what's new in Celery 5.5.
10
10
11
+ .. _version-5.5.0rc4 :
12
+
13
+ 5.5.0rc4
14
+ ========
15
+
16
+ :release-date: 2024-12-19
17
+ :release-by: Tomer Nosrati
18
+
19
+ Celery v5.5.0 Release Candidate 4 is now available for testing.
20
+ Please help us test this version and report any issues.
21
+
22
+ Key Highlights
23
+ ~~~~~~~~~~~~~~
24
+
25
+ See :ref: `whatsnew-5.5 ` or read the main highlights below.
26
+
27
+ Using Kombu 5.5.0rc2
28
+ --------------------
29
+
30
+ The minimum required Kombu version has been bumped to 5.5.0.
31
+ Kombu is current at 5.5.0rc2.
32
+
33
+ Complete Quorum Queues Support
34
+ ------------------------------
35
+
36
+ A completely new ETA mechanism was developed to allow full support with RabbitMQ Quorum Queues.
37
+
38
+ After upgrading to this version, please share your feedback on the quorum queues support.
39
+
40
+ Relevant Issues:
41
+ `#9207 <https://github.com/celery/celery/discussions/9207 >`_,
42
+ `#6067 <https://github.com/celery/celery/discussions/6067 >`_
43
+
44
+ - New :ref: `documentation <using-quorum-queues >`.
45
+ - New :setting: `broker_native_delayed_delivery_queue_type ` configuration option.
46
+
47
+ New support for Google Pub/Sub transport
48
+ ----------------------------------------
49
+
50
+ After upgrading to this version, please share your feedback on the Google Pub/Sub transport support.
51
+
52
+ Relevant Issues:
53
+ `#9351 <https://github.com/celery/celery/pull/9351 >`_
54
+
55
+ Python 3.13 Improved Support
56
+ ----------------------------
57
+
58
+ Additional dependencies have been migrated successfully to Python 3.13, including Kombu and py-amqp.
59
+
60
+ Soft Shutdown
61
+ -------------
62
+
63
+ The soft shutdown is a new mechanism in Celery that sits between the warm shutdown and the cold shutdown.
64
+ It sets a time limited "warm shutdown" period, during which the worker will continue to process tasks that are already running.
65
+ After the soft shutdown ends, the worker will initiate a graceful cold shutdown, stopping all tasks and exiting.
66
+
67
+ The soft shutdown is disabled by default, and can be enabled by setting the new configuration option :setting: `worker_soft_shutdown_timeout `.
68
+ If a worker is not running any task when the soft shutdown initiates, it will skip the warm shutdown period and proceed directly to the cold shutdown
69
+ unless the new configuration option :setting: `worker_enable_soft_shutdown_on_idle ` is set to True. This is useful for workers
70
+ that are idle, waiting on ETA tasks to be executed that still want to enable the soft shutdown anyways.
71
+
72
+ The soft shutdown can replace the cold shutdown when using a broker with a visibility timeout mechanism, like :ref: `Redis <broker-redis >`
73
+ or :ref: `SQS <broker-sqs >`, to enable a more graceful cold shutdown procedure, allowing the worker enough time to re-queue tasks that were not
74
+ completed (e.g., ``Restoring 1 unacknowledged message(s) ``) by resetting the visibility timeout of the unacknowledged messages just before
75
+ the worker exits completely.
76
+
77
+ After upgrading to this version, please share your feedback on the new Soft Shutdown mechanism.
78
+
79
+ Relevant Issues:
80
+ `#9213 <https://github.com/celery/celery/pull/9213 >`_,
81
+ `#9231 <https://github.com/celery/celery/pull/9231 >`_,
82
+ `#9238 <https://github.com/celery/celery/pull/9238 >`_
83
+
84
+ - New :ref: `documentation <worker-stopping >` for each shutdown type.
85
+ - New :setting: `worker_soft_shutdown_timeout ` configuration option.
86
+ - New :setting: `worker_enable_soft_shutdown_on_idle ` configuration option.
87
+
88
+ REMAP_SIGTERM
89
+ -------------
90
+
91
+ The ``REMAP_SIGTERM `` "hidden feature" has been tested, :ref: `documented <worker-REMAP_SIGTERM >` and is now officially supported.
92
+ This feature allows users to remap the SIGTERM signal to SIGQUIT, to initiate a soft or a cold shutdown using :sig: `TERM `
93
+ instead of :sig: `QUIT `.
94
+
95
+ Pydantic Support
96
+ ----------------
97
+
98
+ This release introduces support for Pydantic models in Celery tasks.
99
+ For more info, see the new pydantic example and PR `#9023 <https://github.com/celery/celery/pull/9023 >`_ by @mathiasertl.
100
+
101
+ After upgrading to this version, please share your feedback on the new Pydantic support.
102
+
103
+ Redis Broker Stability Improvements
104
+ -----------------------------------
105
+ The root cause of the Redis broker instability issue has been `identified and resolved <https://github.com/celery/kombu/pull/2007 >`_
106
+ in the v5.4.0 release of Kombu, which should resolve the disconnections bug and offer additional improvements.
107
+
108
+ After upgrading to this version, please share your feedback on the Redis broker stability.
109
+
110
+ Relevant Issues:
111
+ `#7276 <https://github.com/celery/celery/discussions/7276 >`_,
112
+ `#8091 <https://github.com/celery/celery/discussions/8091 >`_,
113
+ `#8030 <https://github.com/celery/celery/discussions/8030 >`_,
114
+ `#8384 <https://github.com/celery/celery/discussions/8384 >`_
115
+
116
+ Quorum Queues Initial Support
117
+ -----------------------------
118
+ This release introduces the initial support for Quorum Queues with Celery.
119
+
120
+ See new configuration options for more details:
121
+
122
+ - :setting: `task_default_queue_type `
123
+ - :setting: `worker_detect_quorum_queues `
124
+
125
+ After upgrading to this version, please share your feedback on the Quorum Queues support.
126
+
127
+ Relevant Issues:
128
+ `#6067 <https://github.com/celery/celery/discussions/6067 >`_,
129
+ `#9121 <https://github.com/celery/celery/discussions/9121 >`_
130
+
131
+ What's Changed
132
+ ~~~~~~~~~~~~~~
133
+
134
+ - Bugfix: SIGQUIT not initiating cold shutdown when `task_acks_late=False ` (#9461)
135
+ - Fixed pycurl dep with Python 3.8 (#9471)
136
+ - Update elasticsearch requirement from <=8.16.0 to <=8.17.0 (#9469)
137
+ - Bump pytest-subtests from 0.13.1 to 0.14.1 (#9459)
138
+ - documentation: Added a type annotation to the periodic task example (#9473)
139
+ - Prepare for (pre) release: v5.5.0rc4 (#9474)
140
+
11
141
.. _version-5.5.0rc3 :
12
142
13
143
5.5.0rc3
0 commit comments