123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214 |
- .. _changelog-2.5:
- ===============================
- Change history for Celery 2.5
- ===============================
- This document contains change notes for bugfix releases in the 2.5.x series,
- please see :ref:`whatsnew-2.5` for an overview of what's
- new in Celery 2.5.
- If you're looking for versions prior to 2.5 you should visit our
- :ref:`history` of releases.
- .. contents::
- :local:
- .. _version-2.5.5:
- 2.5.5
- =====
- :release-date: 2012-06-06 04:00 P.M BST
- :release-by: Ask Solem
- This is a dummy release performed for the following goals:
- - Protect against force upgrading to Kombu 2.2.0
- - Version parity with django-celery
- .. _version-2.5.3:
- 2.5.3
- =====
- :release-date: 2012-04-16 07:00 P.M BST
- :release-by: Ask Solem
- * A bug causes messages to be sent with UTC timestamps even though
- :setting:`CELERY_ENABLE_UTC` was not enabled (Issue #636).
- * celerybeat: No longer crashes if an entry's args is set to None
- (Issue #657).
- * Autoreload did not work if a module's ``__file__`` attribute
- was set to the modules '.pyc' file. (Issue #647).
- * Fixes early 2.5 compatibility where __package__ does not exist
- (Issue #638).
- .. _version-2.5.2:
- 2.5.2
- =====
- :release-date: 2012-04-13 04:30 P.M GMT
- :release-by: Ask Solem
- .. _v252-news:
- News
- ----
- - Now depends on Kombu 2.1.5.
- - Django documentation has been moved to the main Celery docs.
- See :ref:`django`.
- - New :signal:`celeryd_init` signal can be used to configure workers
- by hostname.
- - Signal.connect can now be used as a decorator.
- Example:
- .. code-block:: python
- from celery.signals import task_sent
- @task_sent.connect
- def on_task_sent(**kwargs):
- print("sent task: %r" % (kwargs, ))
- - Invalid task messages are now rejected instead of acked.
- This means that they will be moved to the dead-letter queue
- introduced in the latest RabbitMQ version (but must be enabled
- manually, consult the RabbitMQ documentation).
- - Internal logging calls has been cleaned up to work
- better with tools like Sentry.
- Contributed by David Cramer.
- - New method ``subtask.clone()`` can be used to clone an existing
- subtask with augmented arguments/options.
- Example:
- .. code-block:: python
- >>> s = add.subtask((5, ))
- >>> new = s.clone(args=(10, ), countdown=5})
- >>> new.args
- (10, 5)
- >>> new.options
- {"countdown": 5}
- - Chord callbacks are now triggered in eager mode.
- .. _v252-fixes:
- Fixes
- -----
- - Programs now verifies that the pidfile is actually written correctly
- (Issue #641).
- Hopefully this will crash the worker immediately if the system
- is out of space to store the complete pidfile.
- In addition, we now verify that existing pidfiles contain
- a new line so that a partially written pidfile is detected as broken,
- as before doing:
- echo -n "1" > celeryd.pid
- would cause the worker to think that an existing instance was already
- running (init has pid 1 after all).
- - Fixed 2.5 compatibility issue with use of print_exception.
- Fix contributed by Martin Melin.
- - Fixed 2.5 compatibility issue with imports.
- Fix contributed by Iurii Kriachko.
- - All programs now fix up ``__package__`` when called as main.
- This fixes compatibility with Python 2.5.
- Fix contributed by Martin Melin.
- - [celery control|inspect] can now be configured on the command-line.
- Like with the worker it is now possible to configure celery settings
- on the command-line for celery control|inspect
- .. code-block:: bash
- $ celery inspect -- broker.pool_limit=30
- - Version dependency for python-dateutil fixed to be strict.
- Fix contributed by Thomas Meson.
- - ``Task.__call__`` is now optimized away in the task tracer
- rather than when the task class is created.
- This fixes a bug where a custom __call__ may mysteriously disappear.
- - Autoreload's inotify support has been improved.
- Contributed by Mher Movsisyan.
- - The Django broker documentation has been improved.
- - Removed confusing warning at top of routing user guide.
- .. _version-2.5.1:
- 2.5.1
- =====
- :release-date: 2012-03-01 01:00 P.M GMT
- :release-by: Ask Solem
- .. _v251-fixes:
- Fixes
- -----
- * Eventlet/Gevent: A small typo caused the worker to hang when eventlet/gevent
- was used, this was because the environment was not monkey patched
- early enough.
- * Eventlet/Gevent: Another small typo caused the mediator to be started
- with eventlet/gevent, which would make the worker sometimes hang at shutdown.
- * Mulitprocessing: Fixed an error occurring if the pool was stopped
- before it was properly started.
- * Proxy objects now redirects ``__doc__`` and ``__name__`` so ``help(obj)``
- works.
- * Internal timer (timer2) now logs exceptions instead of swallowing them
- (Issue #626).
- * celery shell: can now be started with :option:`--eventlet` or
- :option:`--gevent` options to apply their monkey patches.
- .. _version-2.5.0:
- 2.5.0
- =====
- :release-date: 2012-02-24 04:00 P.M GMT
- :release-by: Ask Solem
- See :ref:`whatsnew-2.5`.
- Since the changelog has gained considerable size, we decided to
- do things differently this time: by having separate "what's new"
- documents for major version changes.
- Bugfix releases will still be found in the changelog.
|