123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164 |
- .. _changelog:
- ================
- Change history
- ================
- This document contains change notes for bugfix releases in
- the 4.0.x series (latentcall), please see :ref:`whatsnew-4.0` for
- an overview of what's new in Celery 4.0.
- .. _version-4.0.1:
- 4.0.1
- =====
- :release-date: TBA
- :release-by: Ask Solem
- - **Tasks**: Added new method to register class-based tasks (Issue #3615).
- To register a class based task you should now call ``app.register_task``:
- .. code-block:: python
- from celery import Celery, Task
- app = Celery()
- class CustomTask(Task):
- def run(self):
- return 'hello'
- app.register_task(CustomTask())
- - **Tasks**: The ``task-sent`` event was not being sent even if
- configured to do so (Issue #3646).
- - **Worker**: Fixed AMQP heartbeat support for eventlet/gevent pools
- (Issue #3649).
- - **App**: ``app.conf.humanize()`` would not work if configuration
- not finalized (Issue #3652).
- - **Utils**: ``saferepr`` attempted to show iterables as lists
- and mappings as dicts.
- - **Utils**: ``saferepr`` did not handle unicode-errors
- when attempting to format ``bytes`` on Python 3 (Issue #3610).
- - **Utils**: ``saferepr`` should now properly represent byte strings
- with non-ascii characters (Issue #3600).
- - **Results**: Fixed bug in elasticsearch where _index method missed
- the body argument (Issue #3606).
- Fix contributed by **何翔宇** (Sean Ho).
- - **Canvas**: Fixed :exc:`ValueError` in chord with single task header
- (Issue #3608).
- Fix contributed by **Viktor Holmqvist**.
- - **Task**: Ensure class-based task has name prior to registration
- (Issue #3616).
- Fix contributed by **Rick Wargo**.
- - **Beat**: Fixed problem with strings in shelve (Issue #3644).
- Fix contributed by **Alli**.
- - **Worker**: Fixed :exc:`KeyError` in ``inspect stats`` when ``-O`` argument
- set to something other than ``fast`` or ``fair`` (Issue #3621).
- - **Task**: Retried tasks were no longer sent to the original queue
- (Issue #3622).
- - **Worker**: Python 3: Fixed None/int type comparison in
- :file:`apps/worker.py` (Issue #3631).
- - **Results**: Redis has a new :setting:`redis_socket_connect_timeout`
- setting.
- - **Results**: Redis result backend passed the ``socket_connect_timeout``
- argument to UNIX socket based connections by mistake, causing a crash.
- - **Worker**: Fixed missing logo in worker splash screen when running on
- Python 3.x (Issue #3627).
- Fix contributed by **Brian Luan**.
- - **Deps**: Fixed ``celery[redis]`` bundle installation (Issue #3643).
- Fix contributed by **Rémi Marenco**.
- - **Deps**: Bundle ``celery[sqs]`` now also requires :pypi:`pycurl`
- (Issue #3619).
- - **Worker**: Hard time limits were no longer being respected (Issue #3618).
- - **Worker**: Soft time limit log showed ``Trues`` instead of the number
- of seconds.
- - **App**: ``registry_cls`` argument no longer had any effect (Issue #3613).
- - **Worker**: Event producer now uses ``connection_for_Write`` (Issue #3525).
- - **Results**: Redis/memcache backends now uses :setting:`result_expires`
- to expire chord counter (Issue #3573).
- Contributed by **Tayfun Sen**.
- - **Django**: Fixed command for upgrading settings with Django (Issue #3563).
- Fix contributed by **François Voron**.
- - **Testing**: Added a ``celery_parameters`` test fixture to be able to use
- customized ``Celery`` init parameters. (#3626)
- Contributed by **Steffen Allner**.
- - Documentation improvements contributed by
- - :github_user:`csfeathers`
- - **Moussa Taifi**
- - **Yuhannaa**
- - **Laurent Peuch**
- - **Christian**
- - **Bruno Alla**
- - **Steven Johns**
- - :github_user:`tnir`
- - **GDR!**
- .. _version-4.0.0:
- 4.0.0
- =====
- :release-date: 2016-11-04 02:00 P.M PDT
- :release-by: Ask Solem
- See :ref:`whatsnew-4.0` (in :file:`docs/whatsnew-4.0.rst`).
- .. _version-4.0.0rc7:
- 4.0.0rc7
- ========
- :release-date: 2016-11-02 01:30 P.M PDT
- Important notes
- ---------------
- - Database result backend related setting names changed from
- ``sqlalchemy_*`` -> ``database_*``.
- The ``sqlalchemy_`` named settings won't work at all in this
- version so you need to rename them. This is a last minute change,
- and as they were not supported in 3.1 we will not be providing
- aliases.
- - ``chain(A, B, C)`` now works the same way as ``A | B | C``.
- This means calling ``chain()`` might not actually return a chain,
- it can return a group or any other type depending on how the
- workflow can be optimized.
|