Ver código fonte

Updated changelog

Ask Solem 14 anos atrás
pai
commit
ce446f6558
1 arquivos alterados com 88 adições e 1 exclusões
  1. 88 1
      Changelog

+ 88 - 1
Changelog

@@ -154,6 +154,11 @@ News
     In addition `retry`, and `retry_policy` keyword arguments have
     been added to `Task.apply_async`.
 
+    .. note::
+
+        Using the `retry` argument to `apply_async` requires you to
+        handle the publisher/connection manually.
+
 * Added support for message compression using the
   :setting:`CELERY_MESSAGE_COMPRESSION` setting, or the `compression` argument
   to `apply_async`.  This can also be set using routers.
@@ -167,9 +172,22 @@ News
     So far only supported by the AMQP result backend.  Support for memcached
     and Redis may be added later.
 
-* `celerybeat`: Now has built-in daemonization support using the `--detach``
+* Worker process PID is now sent with the task-accepted event.
+
+* The start time reported by the multiprocessing worker process is now used
+  when calculating task duration for better accuracy.
+
+    Previously the time reported by the accept callback was used.
+
+* `celerybeat`: Now has built-in daemonization support using the `--detach`
    option.
 
+* `celeryev`: Now has built-in daemonization support using the `--detach`
+   option.
+
+* `TaskSet.apply_async`: Now supports custom publishers by using the
+  `publisher` argument.
+
 * Added :setting:`CELERY_SEND_TASK_SENT_EVENT` setting.
 
     If enabled an event will be sent out with every task, so monitors can
@@ -184,6 +202,75 @@ News
 
         $ celeryd --config=celeryconfig.py --loader=myloader.Loader
 
+* Added signals: `beat_init` and `beat_embedded_init`
+
+    * :data:`celery.signals.beat_init`
+
+        Dispatched when :program:`celerybeat` starts (either standalone or
+        embedded).  Sender is the :class:`celery.beat.Service` instance.
+
+    * :data:`celery.signals.beat_embedded_init`
+
+        Dispatched in addition to the :data:`beat_init` signal when
+        :program:`celerybeat` is started as an embedded process.  Sender
+        is the :class:`celery.beat.Service` instance.
+
+
+v220-fixes:
+
+Fixes
+-----
+
+* AMQP Backend: Exceptions occurring while sending task results are now
+  propagated instead of silenced.
+
+    `celeryd` will then show the full traceback of these errors in the log.
+
+* AMQP Backend: No longer deletes the result queue after successful
+  poll, as this should be handled by the
+  :setting:`CELERY_AMQP_TASK_RESULT_EXPIRES` setting instead.
+
+* Windows: celeryd: Show error if running with `-B` option.
+
+    Running celerybeat embedded is known not to work on Windows, so
+    users are encouraged to run celerybeat as a separate service instead.
+
+* Windows: Utilities no longer output ANSI color codes on Windows
+
+* camqadm: Now properly handles Ctrl+C by simply exiting instead of showing
+  confusing traceback.
+
+* Windows: All tests are now passing on Windows.
+
+* Remove bin/ directory, and `scripts` section from setup.py.
+
+    This means we now rely completely on setuptools entrypoints.
+
+.. v220-experimental:
+
+Experimental
+------------
+
+* :class:`PublisherPool`: Experimental pool of task publishers and
+  connections to be used with the `retry` argument to `apply_async`.
+
+  The example code below will re-use connections and channels, and
+  retry sending of the task message if the connection is lost.
+
+  .. code-block:: python
+
+    from celery import current_app
+
+    # Global pool
+    pool = current_app().amqp.PublisherPool(limit=10)
+
+    def my_view(request):
+        with pool.acquire() as publisher:
+            add.apply_async((2, 2), publisher=publisher, retry=True)
+
+
+
+
 .. _version-2.1.4:
 
 2.1.4