Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Backend Dependencies Update] Update celery to 5.1.0 #1049

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

pyup-bot
Copy link
Collaborator

This PR updates celery from 4.3.1 to 5.1.0.

Changelog

5.1.0

=====
:release-date: 2021-05-23 7:00 P.M UTC+3:00
:release-by: Omer Katz

- Fix queue names special characters replacement for Azure Service Bus. (1324)
- Add support for SQLAlchemy 1.4. (1328)
- Coerce seconds argument to a floating point number in ``Timer.enter_after``. (1330)
- Add accept parameter to SimpleQueue class. (1140)
- ``prepare_accept_content()`` now raises ``SerializerNotInstalled`` instead of ``KeyError``. (1343)

.. _version-5.1.0b1:

5.1.0rc1

========
:release-date: 2021-05-02 16.06 P.M UTC+3:00
:release-by: Omer Katz

- Celery Mailbox accept and serializer parameters are initialized from configuration. (6757)
- Error propagation and errback calling for group-like signatures now works as expected. (6746)
- Fix sanitization of passwords in sentinel URIs. (6765)
- Add LOG_RECEIVED to customize logging. (6758)

.. _version-5.1.0b2:

5.1.0b2

=======
:release-date: 2021-05-02 16.06 P.M UTC+3:00
:release-by: Omer Katz

- Fix the behavior of our json serialization which regressed in 5.0. (6561)
- Add support for SQLAlchemy 1.4. (6709)
- Safeguard against schedule entry without kwargs. (6619)
- ``task.apply_async(ignore_result=True)`` now avoids persisting the results. (6713)
- Update systemd tmpfiles path. (6688)
- Ensure AMQPContext exposes an app attribute. (6741)
- Inspect commands accept arguments again (6710).
- Chord counting of group children is now accurate. (6733)
- Add a setting :setting:`worker_cancel_long_running_tasks_on_connection_loss`
to terminate tasks with late acknowledgement on connection loss. (6654)
- The ``task-revoked`` event and the ``task_revoked` signal are not duplicated
when ``Request.on_failure`` is called. (6654)
- Restore pickling support for ``Retry``. (6748)
- Add support in the redis result backend for authenticating with a username. (6750)
- The :setting:`worker_pool` setting is now respected correctly. (6711)

.. _version-5.1.0b1:

5.1.0b1

=======
:release-date: 2021-04-01 10:30 P.M UTC+6:00
:release-by: Asiff Saif Uddin

- Wheels are no longer universal.
- Revert "Added redis transport key_prefix from envvars".
- Redis Transport: Small improvements of `SentinelChannel` (1253).
- Fix pidbox not using default channels.
- Revert "on worker restart - restore visible regardless to time (905)".
- Add vine to dependencies.
- Pin urllib3<1.26 to fix failing unittests.
- Add timeout to producer publish (1269).
- Remove python2 compatibility code (1277).
- redis: Support Sentinel with SSL.
- Support for Azure Service Bus 7.0.0 (1284).
- Allow specifying session token (1283).
- kombu/asynchronous/http/curl: implement _set_timeout.
- Disable namedtuple to object feature in simplejson (1297).
- Update to tox docker 2.0.
- SQS back-off policy (1301).
- Fixed SQS unittests.
- Fix: non kombu json message decoding in SQS transport (1306).
- Add Github Actions CI (1309).
- Update default pickle protocol version to 4 (1314).
- Update connection.py (1311).
- Drop support for the lzma backport.
- Drop obsolete code importing pickle (1315).
- Update default login method for librabbitmq and pyamqp (936).
- SQS Broker - handle STS authentication with AWS (1322).
- Min py-amqp version is v5.0.6 (1325).
- Numerous docs & example fixes.
- Use a thread-safe implementation of cached_property (1316).


.. _version-5.0.2:

5.0.6

=====
:release-date: 2021-04-01 10:45 A.M. UTC+6:00
:release-by: Asif Saif Uddin

- Change the order in which context.check_hostname and context.verify_mode get set
in SSLTransport._wrap_socket_sni. Fixes bug introduced in 5.0.3 where setting
context.verify_mode = ssl.CERT_NONE would raise
"ValueError: Cannot set verify_mode to CERT_NONE when check_hostname is enabled."
Setting context.check_hostname prior to setting context.verify_mode resolves the
issue.
- Remove TCP_USER_TIMEOUT option for Solaris (355) 
- Pass long_description to setup() (353)
- Fix for tox-docker 2.0
- Moved to GitHub actions CI (359)

.. _version-5.0.5:

5.0.5

=====
:release-date: 2021-01-28 4:30 P.M UTC+6:00
:release-by: Asif Saif Uddin

-  Removed mistakenly introduced code which was causing import errors



.. _version-5.0.4:

5.0.4

=====
:release-date: 2021-01-28 2:30 P.M UTC+6:00
:release-by: Asif Saif Uddin

-  Add missing load_default_certs() call to fix a regression in v5.0.3 release. (350)


.. _version-5.0.3:

5.0.3

=====
:release-date: 2021-01-19 9:00 P.M UTC+6:00
:release-by: Asif Saif Uddin

- Change the default value of ssl_version to None. When not set, the
proper value between ssl.PROTOCOL_TLS_CLIENT and ssl.PROTOCOL_TLS_SERVER
will be selected based on the param server_side in order to create
a TLS Context object with better defaults that fit the desired
connection side.

- Change the default value of cert_reqs to None. The default value
of ctx.verify_mode is ssl.CERT_NONE, but when ssl.PROTOCOL_TLS_CLIENT
is used, ctx.verify_mode defaults to ssl.CERT_REQUIRED.

- Fix context.check_hostname logic. Checking the hostname depends on
having support of the SNI TLS extension and being provided with a
server_hostname value. Another important thing to mention is that
enabling hostname checking automatically sets verify_mode from
ssl.CERT_NONE to ssl.CERT_REQUIRED in the stdlib ssl and it cannot
be set back to ssl.CERT_NONE as long as hostname checking is enabled.

- Refactor the SNI tests to test one thing at a time and removing some
tests that were being repeated over and over.



.. _version-5.0.2:

5.0.2

=====
:release-date: 2020-09-06 6:30 P.M UTC+3:00
:release-by: Omer Katz

- Bump required amqp version to 5.0.0.

.. _version-5.0.1:

5.0.1

=====
:release-date: 2020-08-23 19:10 P.M UTC+3:00
:release-by: Omer Katz

- Removed kombu.five from the reference documentation since it no longer exists
- Adjusted the stable documentation's version in Sphinx's configuration since that was overlooked in the latest release

.. _version-5.0.0:

5.0.0

=====
:release-date: 2020-08-05 16:00 P.M UTC+3:00
:release-by: Omer Katz

- **BREAKING CHANGE**: Dropped support for Python 2 (1232)
- Add an SQS transport option for custom botocore config (1219)

.. _version-4.6.11:

5.0.0b1

=======
:release-date: 2020-09-01 6:20 P.M UTC+3:00
:release-by: Omer Katz

- Dropped Python 3.5 support.

Contributed by **Omer Katz**

- Removed additional compatibility code.

Contributed by **Omer Katz**

.. _version-5.0.0a1:

5.0.0a1

=======
:release-date: 2019-04-01 4:30 P.M UTC+3:00
:release-by: Omer Katz

- Dropped Python 2.x support.

Contributed by **Omer Katz**

- Dropped Python 3.4 support.

Contributed by **Omer Katz**

- Removed the :mod:`vine.five` module.

Contributed by **Omer Katz**

- Removed the :mod:`vine.backports.weakref_backports` module.

Contributed by **Omer Katz**

.. _version-1.3.0:

4.6.11

=======
:release-date: 2020-06-24 1.15 P.M UTC+6:00
:release-by: Asif Saif Uddin

- Revert incompatible changes in 1193 and additional improvements (1211)
- Default_channel should reconnect automatically (1209)


.. _version-4.6.10:

4.6.10

======
:release-date: 2020-06-03 10.45 A.M UTC+6:00
:release-by: Asif Saif Uddin

- Doc improvement.
- set _connection in _ensure_connection (1205)
- Fix for the issue 1172
- reuse connection [bug fix]


.. _version-4.6.9:

4.6.9

=====
:release-date: 2020-06-01 14.00 P.M UTC+6:00
:release-by: Asif Saif Uddin

- Prevent failure if AWS creds are not explicitly defined on predefined.
- Raise RecoverableConnectionError in maybe_declare with retry on and.
- Fix for the issue 1172 .
- possible fix for 1174 .
- Fix: make SQLAlchemy Channel init thread-safe
- Added integration testing infrastructure for RabbitMQ
- Initial redis integration tests implementation
- SQLAlchemy transport: Use Query.with_for_update() instead of deprecated
- Fix Consumer Encoding
- Added Integration tests for direct, topic and fanout exchange types
- Added TTL integration tests
- Added integration tests for priority queues
- fix 100% cpu usage on linux while using sqs
- Modified Mutex to use redis LuaLock implementation
- Fix: eliminate remaining race conditions from SQLAlchemy Channel
- Fix connection imaybe_declare (1196)
- Fix for issue 1198: Celery crashes in cases where there aren’t enough
- Ensure connection when connecting to broker
- update pyamqp to 2.6 with optional cythonization

.. _version-4.6.8:

4.6.8

=====
:release-date: 2020-03-29 20:45 A.M UTC+6:00
:release-by: Asif Saif Uddin

- Added support for health_check_interval option in broker_transport_options (1145)
- Added retry_on_timeout parameter to Redis Channel (1150)
- Added support for standard values for ssl_cert_reqs query parameter for Redis (1139)
- Added predefined_queues option to SQS transport (1156)
- Added ssl certificate verification against ca certificates when amqps is used for pyamqp transport (1151)
- Fix issue (701) where kombu.transport.redis.Mutex is broken in python 3 (1141)
- Fix brop error in Redis Channel (1144)

.. _version-4.6.7:

4.6.7

=====
:release-date: 2019-12-07 20:45 A.M UTC+6:00
:release-by: Asif Saif Uddin

- Use importlib.metadata from the standard library on Python 3.8+ (1086).
- Add peek lock settings to be changed using transport options (1119).
- Fix redis health checks (1122).
- Reset ready before execute callback (1126).
- Add missing parameter queue_args in kombu.connection.SimpleBuffer (1128)

.. _version-4.6.6:

4.6.6

=====
:release-date: 2019-11-11 00:15 A.M UTC+6:00
:release-by: Asif Saif Uddin

- Revert _lookup_direct and related changes of redis.
- Python 3.8 support
- Fix 'NoneType' object has no attribute 'can_read' bug of redis transport
- Issue 1019 Fix redis transport socket timeout
- Add wait timeout settings to receive queue message (1110)
- Bump py-amqp to 2.5.2

.. _version-4.6.5:

4.6.5

=====
:release-date: 2019-09-30 19:30 P.M UTC+6:00
:release-by: Asif Saif Uddin

- Revert _lookup api and correct redis implemetnation.
- Major overhaul of redis test cases by adding more full featured fakeredis module.
- Add more test cases to boost coverage of kombu redis transport.
- Refactor the producer consumer test cases to be based on original mocks and be passing
- Fix lingering line length issue in test.
- Sanitise url when include_password is false
- Pinned pycurl to 7.43.0.2 as it is the latest build with wheels provided
- Bump py-amqp to 2.5.2


.. _version-4.6.4:

4.6.4

=====
:release-date: 2019-08-14 22:45 P.M UTC+6:00
:release-by: Asif Saif Uddin

- Use importlib-metadata instead of pkg_resources for better performance
- Allow users to switch URLs while omitting the resource identifier (1032)
- Don't stop receiving tasks on 503 SQS error. (1064)
- Fix maybe declare (1066)
- Revert "Revert "Use SIMEMBERS instead of SMEMBERS to check for queue (Redis Broker)
- Fix MongoDB backend to work properly with TTL (1076)
- Make sure that max_retries=0 is treated differently than None (1080)
- Bump py-amqp to 2.5.1


.. _version-4.6.3:

4.6.3

=====
:release-date: 2019-06-15 12:45 A.M UTC+6:00
:release-by: Asif Saif Uddin

- Revert FastUUID for kombu 4.6


.. _version-4.6.2:

4.6.2

=====
:release-date: 2019-06-15 12:45 A.M UTC+6:00
:release-by: Asif Saif Uddin

- Fix sbugs and regressions


.. _version-4.6.1:

4.6.1

=====
:release-date: 2019-06-06 10:30 A.M UTC+6:00
:release-by: Asif Saif Uddin

- Fix some newly introduced bug in kombu 4.6

.. _version-4.6.0:

4.6.0

=====
:release-date: 2019-05-30 15:30 P.M UTC+6:00
:release-by: Asif Saif Uddin

- Dropped python 3.4

- Bump py-amqp to 2.5.0

- Use SIMEMBERS instead of SMEMBERS to check for queue (redis broker)

* Add `_lookup_direct` method to virtual channel. (994)

Add possibility to optimize lookup for queue in direct
exchange set.

* Add `_lookup_direct` method to redis virtual channel. (994)

Use `SISMEMBER` instead of `SMEMBERS` command to check if queue
exists in a set. Time complexity is increased from O(N) to O(1)
where N is the set cardinality.

Contributed by **Stevan Milic** and **Asif Saif Uddin**

- Include priority in properties only if it's not None.
Since we attempt to serialize the priority property if it exists
in the dictionary it must be an integer.

Contributed by **Omer Katz**

- Removed dangerous default mutable arguments from function
definitions where appropriate.

Contributed by **Todd Cook**

- Codebase improvements and fixes by:

- **Omer Katz**
- **Asif Saif Uddin**

.. _version-4.5.0:

4.5.0

=====
:release-date: 2019-03-3 18:30 P.M UTC+3:00
:release-by: Omer Katz

- The Redis transport now supports a custom separator for keys.

Previously when storing a key in Redis which represents a queue
we used the hardcored value ``\x06\x16`` separator to store
different attributes of the queue in the queue's name.

The separator is now configurable using the sep
transport option:

.. code-block:: python

 with Connection('redis://', transport_options={
         'sep': ':',
     }):
      ...
     pass

Contributed by **Joris Beckers**

- When the SQS server returns a timeout we ignore it and keep trying
instead of raising an error.

This will prevent Celery from raising an error and hanging.

Contributed by **Erwin Rossen**

- Properly declare async support for the Qpid transport.

If you are using this transport we strongly urge you to upgrade.

Contributed by **Rohan McGovern**

- Revert `celery/kombu906 <https://github.com/celery/kombu/pull/906>`_ and
introduce unique broadcast queue names as an optional keyword argument.

If you want each broadcast queue to have a unique name specify `unique=True`:

.. code-block:: pycon

 >>> from kombu.common import Broadcast
 >>> q = Broadcast(queue='foo', unique=True)
 >>> q.name
 'foo.7ee1ac20-cda3-4966-aaf8-e7a3bb548688'
 >>> q = Broadcast(queue='foo')
 >>> q.name
 'foo'

- Codebase improvements and fixes by:

- **Omer Katz**

.. _version-4.4.0:

4.4.0

=====
:release-date: 2019-03-3 9:00 P.M UTC+2:00
:release-by: Omer Katz

- Restore bz2 import checks in compression module.

The checks were removed in `celery/kombu938 <https://github.com/celery/kombu/pull/938>`_ due to assumption that it only affected Jython.
However, bz2 support can be missing in Pythons built without bz2 support.

Contributed by **Patrick Woods**

- Fix regression that occurred in 4.3.0
when parsing  Redis Sentinel master URI containing password.

Contributed by **Peter Lithammer**

- Handle the case when only one Redis Sentinel node is provided.

Contributed by **Peter Lithammer**

- Support SSL URL parameters correctly for `rediss://`` URIs.

Contributed by **Paul Bailey**

- Revert `celery/kombu954 <https://github.com/celery/kombu/pull/954>`_.
Instead bump the required redis-py dependency to 3.2.0
to include this fix `andymccurdy/redis-py4e1e748 <https://github.com/andymccurdy/redis-py/commit/4e1e74809235edc19e03edb79c97c80a3e4e9eca>`_.

Contributed by **Peter Lithammer**

- Added support for broadcasting using a regular expression pattern
or a glob pattern to multiple Pidboxes.

Contributed by **Jason Held**

.. _version-4.3.0:
Links

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant