Browse Source

Reference cosmetics

Ask Solem 14 years ago
parent
commit
9888558eeb
88 changed files with 344 additions and 607 deletions
  1. 2 1
      celery/app/__init__.py
  2. 6 17
      celery/decorators.py
  3. 144 0
      celery/signals.py
  4. 15 3
      celery/states.py
  5. 68 1
      celery/task/__init__.py
  6. 16 10
      celery/task/base.py
  7. 2 0
      contrib/release/doc4allmods
  8. 5 1
      docs/index.rst
  9. 1 1
      docs/internals/reference/celery.backends.amqp.rst
  10. 1 1
      docs/internals/reference/celery.backends.base.rst
  11. 1 1
      docs/internals/reference/celery.backends.cache.rst
  12. 1 1
      docs/internals/reference/celery.backends.cassandra.rst
  13. 1 1
      docs/internals/reference/celery.backends.database.rst
  14. 1 1
      docs/internals/reference/celery.backends.mongodb.rst
  15. 1 1
      docs/internals/reference/celery.backends.pyredis.rst
  16. 1 1
      docs/internals/reference/celery.backends.rst
  17. 1 1
      docs/internals/reference/celery.backends.tyrant.rst
  18. 1 1
      docs/internals/reference/celery.beat.rst
  19. 1 1
      docs/internals/reference/celery.concurrency.base.rst
  20. 1 1
      docs/internals/reference/celery.concurrency.evg.rst
  21. 1 1
      docs/internals/reference/celery.concurrency.evlet.rst
  22. 1 1
      docs/internals/reference/celery.concurrency.processes.pool.rst
  23. 1 1
      docs/internals/reference/celery.concurrency.processes.rst
  24. 1 1
      docs/internals/reference/celery.concurrency.rst
  25. 1 1
      docs/internals/reference/celery.concurrency.threads.rst
  26. 1 1
      docs/internals/reference/celery.db.models.rst
  27. 1 1
      docs/internals/reference/celery.db.session.rst
  28. 1 1
      docs/internals/reference/celery.events.cursesmon.rst
  29. 1 1
      docs/internals/reference/celery.events.dumper.rst
  30. 1 1
      docs/internals/reference/celery.events.snapshot.rst
  31. 1 1
      docs/internals/reference/celery.execute.trace.rst
  32. 1 1
      docs/internals/reference/celery.log.rst
  33. 1 1
      docs/internals/reference/celery.platforms.rst
  34. 1 1
      docs/internals/reference/celery.routes.rst
  35. 1 1
      docs/internals/reference/celery.utils.compat.rst
  36. 1 1
      docs/internals/reference/celery.utils.dispatch.rst
  37. 1 1
      docs/internals/reference/celery.utils.dispatch.saferef.rst
  38. 1 1
      docs/internals/reference/celery.utils.dispatch.signal.rst
  39. 1 1
      docs/internals/reference/celery.utils.functional.rst
  40. 1 1
      docs/internals/reference/celery.utils.mail.rst
  41. 1 1
      docs/internals/reference/celery.utils.patch.rst
  42. 1 1
      docs/internals/reference/celery.utils.rst
  43. 3 3
      docs/internals/reference/celery.utils.serialization.rst
  44. 1 1
      docs/internals/reference/celery.utils.term.rst
  45. 1 1
      docs/internals/reference/celery.utils.timer2.rst
  46. 1 1
      docs/internals/reference/celery.utils.timeutils.rst
  47. 1 1
      docs/internals/reference/celery.worker.buckets.rst
  48. 1 1
      docs/internals/reference/celery.worker.consumer.rst
  49. 0 12
      docs/internals/reference/celery.worker.control.builtins.rst
  50. 0 11
      docs/internals/reference/celery.worker.control.registry.rst
  51. 0 11
      docs/internals/reference/celery.worker.control.rst
  52. 1 1
      docs/internals/reference/celery.worker.controllers.rst
  53. 1 1
      docs/internals/reference/celery.worker.heartbeat.rst
  54. 1 1
      docs/internals/reference/celery.worker.job.rst
  55. 1 1
      docs/internals/reference/celery.worker.rst
  56. 1 1
      docs/internals/reference/celery.worker.state.rst
  57. 2 5
      docs/internals/reference/index.rst
  58. 1 1
      docs/reference/celery.app.defaults.rst
  59. 1 1
      docs/reference/celery.apps.beat.rst
  60. 1 1
      docs/reference/celery.apps.worker.rst
  61. 1 1
      docs/reference/celery.bin.base.rst
  62. 1 1
      docs/reference/celery.bin.camqadm.rst
  63. 1 1
      docs/reference/celery.bin.celerybeat.rst
  64. 1 1
      docs/reference/celery.bin.celeryd.rst
  65. 1 1
      docs/reference/celery.bin.celeryd_multi.rst
  66. 1 1
      docs/reference/celery.bin.celeryev.rst
  67. 0 304
      docs/reference/celery.conf.rst
  68. 1 1
      docs/reference/celery.contrib.abortable.rst
  69. 0 11
      docs/reference/celery.decorators.rst
  70. 1 1
      docs/reference/celery.events.rst
  71. 1 1
      docs/reference/celery.events.state.rst
  72. 1 1
      docs/reference/celery.exceptions.rst
  73. 1 1
      docs/reference/celery.loaders.app.rst
  74. 1 1
      docs/reference/celery.loaders.base.rst
  75. 1 1
      docs/reference/celery.loaders.default.rst
  76. 1 1
      docs/reference/celery.loaders.rst
  77. 1 1
      docs/reference/celery.registry.rst
  78. 1 1
      docs/reference/celery.result.rst
  79. 1 1
      docs/reference/celery.schedules.rst
  80. 1 135
      docs/reference/celery.signals.rst
  81. 2 5
      docs/reference/celery.states.rst
  82. 2 2
      docs/reference/celery.task.base.rst
  83. 1 1
      docs/reference/celery.task.builtins.rst
  84. 1 1
      docs/reference/celery.task.control.rst
  85. 1 1
      docs/reference/celery.task.http.rst
  86. 7 5
      docs/reference/celery.task.rst
  87. 1 1
      docs/reference/celery.task.sets.rst
  88. 1 2
      docs/reference/index.rst

+ 2 - 1
celery/app/__init__.py

@@ -105,6 +105,7 @@ class App(base.BaseApp):
         def inner_create_task_cls(**options):
 
             def _create_task_cls(fun):
+                options.setdefault("accept_magic_kwargs", False)
                 base = options.pop("base", None) or self.create_task_cls()
 
                 @wraps(fun, assigned=("__module__", "__name__"))
@@ -125,7 +126,7 @@ class App(base.BaseApp):
             return _create_task_cls
 
         if len(args) == 1 and callable(args[0]):
-            return inner_create_task_cls()(*args)
+            return inner_create_task_cls(**options)(*args)
         return inner_create_task_cls(**options)
 
     def __reduce__(self):

+ 6 - 17
celery/decorators.py

@@ -3,27 +3,16 @@
 Decorators
 
 """
-from celery.app import app_or_default
-from celery.task.base import PeriodicTask
+from celery import task as _task
 
 
 def task(*args, **kwargs):
-    return app_or_default().task(*args, **kwargs)
+    kwargs.setdefault("accept_magic_kwargs", True)
+    return _task.task(*args, **kwargs)
 
 
-def periodic_task(**options):
-    """Task decorator to create a periodic task.
+def periodic_task(*args, **kwargs):
+    kwargs.setdefault("accept_magic_kwargs", True)
+    return _task.periodic_task(*args, **kwargs)
 
-    Example task, scheduling a task once every day:
 
-    .. code-block:: python
-
-        from datetime import timedelta
-
-        @periodic_task(run_every=timedelta(days=1))
-        def cronjob(**kwargs):
-            logger = cronjob.get_logger(**kwargs)
-            logger.warn("Task running...")
-
-    """
-    return task(**dict({"base": PeriodicTask}, **options))

+ 144 - 0
celery/signals.py

@@ -1,3 +1,147 @@
+"""
+celery.signals
+==============
+
+Signals allows decoupled applications receive notifications when actions
+occur elsewhere in the framework.
+
+:copyright: (c) 2009 - 2010 by Ask Solem.
+:license: BSD, see LICENSE for more details.
+
+.. contents::
+    :local:
+
+.. _signal-basics:
+
+Basics
+------
+
+Several kinds of events trigger signals, you can connect to these signals
+to perform actions as they trigger.
+
+Example connecting to the :data:`task_sent` signal:
+
+.. code-block:: python
+
+    from celery.signals import task_sent
+
+    def task_sent_handler(sender=None, task_id=None, task=None, args=None,
+                          kwargs=None, **kwds):
+        print("Got signal task_sent for task id %s" % (task_id, ))
+
+    task_sent.connect(task_sent_handler)
+
+
+Some signals also have a sender which you can filter by. For example the
+:data:`task_sent` signal uses the task name as a sender, so you can
+connect your handler to be called only when tasks with name `"tasks.add"`
+has been sent by providing the `sender` argument to
+:class:`~celery.utils.dispatch.signal.Signal.connect`:
+
+.. code-block:: python
+
+    task_sent.connect(task_sent_handler, sender="tasks.add")
+
+.. _signal-ref:
+
+Signals
+-------
+
+Task Signals
+~~~~~~~~~~~~
+
+.. data:: task_sent
+
+    Dispatched when a task has been sent to the broker.
+    Note that this is executed in the client process, the one sending
+    the task, not in the worker.
+
+    Sender is the name of the task being sent.
+
+    Provides arguments:
+
+    * task_id
+        Id of the task to be executed.
+
+    * task
+        The task being executed.
+
+    * args
+        the tasks positional arguments.
+
+    * kwargs
+        The tasks keyword arguments.
+
+    * eta
+        The time to execute the task.
+
+    * taskset
+        Id of the taskset this task is part of (if any).
+
+.. data:: task_prerun
+
+    Dispatched before a task is executed.
+
+    Sender is the task class being executed.
+
+    Provides arguments:
+
+    * task_id
+        Id of the task to be executed.
+
+    * task
+        The task being executed.
+
+    * args
+        the tasks positional arguments.
+
+    * kwargs
+        The tasks keyword arguments.
+
+.. data:: task_postrun
+
+    Dispatched after a task has been executed.
+
+    Sender is the task class executed.
+
+    Provides arguments:
+
+    * task_id
+        Id of the task to be executed.
+
+    * task
+        The task being executed.
+
+    * args
+        The tasks positional arguments.
+
+    * kwargs
+        The tasks keyword arguments.
+
+    * retval
+
+        The return value of the task.
+
+Worker Signals
+~~~~~~~~~~~~~~
+
+.. data:: worker_init
+
+    Dispatched before the worker is started.
+
+.. data:: worker_ready
+
+    Dispatched when the worker is ready to accept work.
+
+.. data:: worker_process_init
+
+    Dispatched by each new pool worker process when it starts.
+
+.. data:: worker_shutdown
+
+    Dispatched when the worker is about to shut down.
+
+"""
 from celery.utils.dispatch import Signal
 
 task_sent = Signal(providing_args=["task_id", "task",

+ 15 - 3
celery/states.py

@@ -1,4 +1,12 @@
 """
+celery.states
+=============
+
+Built-in Task States.
+
+:copyright: (c) 2009 - 2010 by Ask Solem.
+:license: BSD, see LICENSE for more details.
+
 
 .. _states:
 
@@ -46,11 +54,15 @@ ALL_STATES
 
 Set of all possible states.
 
+
+Misc.
+-----
+
 """
 
-## State precedence.
-# None represents the precedence of an unknown state.
-# Lower index means higher precedence.
+#: State precedence.
+#: None represents the precedence of an unknown state.
+#: Lower index means higher precedence.
 PRECEDENCE = ["SUCCESS",
               "FAILURE",
               None,

+ 68 - 1
celery/task/__init__.py

@@ -5,14 +5,80 @@ Working with tasks and task sets.
 """
 import warnings
 
+from celery.app import app_or_default
 from celery.task.base import Task, PeriodicTask
 from celery.task.sets import TaskSet, subtask
-from celery.task.builtins import PingTask
 from celery.task.control import discard_all
 
 __all__ = ["Task", "TaskSet", "PeriodicTask", "subtask", "discard_all"]
 
 
+def task(*args, **kwargs):
+    """Decorator to create a task class out of any callable.
+
+    .. admonition:: Examples
+
+        .. code-block:: python
+
+            @task()
+            def refresh_feed(url):
+                return Feed.objects.get(url=url).refresh()
+
+        With setting extra options and using retry.
+
+        .. code-block:: python
+
+            @task(exchange="feeds")
+            def refresh_feed(url, **kwargs):
+                try:
+                    return Feed.objects.get(url=url).refresh()
+                except socket.error, exc:
+                    refresh_feed.retry(args=[url], kwargs=kwargs, exc=exc)
+
+        Calling the resulting task:
+
+            >>> refresh_feed("http://example.com/rss") # Regular
+            <Feed: http://example.com/rss>
+            >>> refresh_feed.delay("http://example.com/rss") # Async
+            <AsyncResult: 8998d0f4-da0b-4669-ba03-d5ab5ac6ad5d>
+    """
+    kwargs.setdefault("accept_magic_kwargs", False)
+    return app_or_default().task(*args, **kwargs)
+
+
+def periodic_task(*args, **options):
+    """Decorator to create a task class out of any callable.
+
+        .. admonition:: Examples
+
+            .. code-block:: python
+
+                @task()
+                def refresh_feed(url):
+                    return Feed.objects.get(url=url).refresh()
+
+            With setting extra options and using retry.
+
+            .. code-block:: python
+
+                @task(exchange="feeds")
+                def refresh_feed(url, **kwargs):
+                    try:
+                        return Feed.objects.get(url=url).refresh()
+                    except socket.error, exc:
+                        refresh_feed.retry(args=[url], kwargs=kwargs, exc=exc)
+
+            Calling the resulting task:
+
+                >>> refresh_feed("http://example.com/rss") # Regular
+                <Feed: http://example.com/rss>
+                >>> refresh_feed.delay("http://example.com/rss") # Async
+                <AsyncResult: 8998d0f4-da0b-4669-ba03-d5ab5ac6ad5d>
+
+    """
+    return task(**dict({"base": PeriodicTask}, **options))
+
+
 def ping():
     """Deprecated and scheduled for removal in Celery 2.3.
 
@@ -22,4 +88,5 @@ def ping():
     warnings.warn(DeprecationWarning(
         "The ping task has been deprecated and will be removed in Celery "
         "v2.3.  Please use inspect.ping instead."))
+    from celery.task.builtins import PingTask
     return PingTask.apply_async().get()

+ 16 - 10
celery/task/base.py

@@ -125,7 +125,8 @@ class BaseTask(object):
     abstract = True
 
     #: If disabled the worker will not forward magic keyword arguments.
-    accept_magic_kwargs = True
+    #: Depracted and scheduled for removal in v3.0.
+    accept_magic_kwargs = False
 
     #: Current request context (when task is executed).
     request = Context()
@@ -248,7 +249,7 @@ class BaseTask(object):
 
             * `task_id`
             * `task_name`
-            * `task_retries
+            * `task_retries`
             * `task_is_eager`
             * `logfile`
             * `loglevel`
@@ -316,14 +317,17 @@ class BaseTask(object):
     def get_consumer(self, connection=None, connect_timeout=None):
         """Get message consumer.
 
-        :rtype :class:`~celery.app.amqp.TaskConsumer`:
+        :rtype :class:`kombu.messaging.Consumer`:
 
-        Please be sure to close the AMQP connection when you're done
-        with this object.  Example::
+        .. warning::
+
+            Please be sure to close the AMQP connection when you're done
+            with this object.  Example::
 
-            >>> consumer = self.get_consumer()
-            >>> # do something with consumer
-            >>> consumer.connection.close()
+                >>> consumer = self.get_consumer()
+                >>> # do something with consumer
+                >>> consumer.close()
+                >>> consumer.connection.close()
 
         """
         connection = connection or self.establish_connection(connect_timeout)
@@ -720,7 +724,7 @@ class BaseTask(object):
         return self.__class__.__name__
 
 
-def create_task_cls(app):
+def create_task_cls(app, **kwargs):
     apps = [app]
 
     class Task(BaseTask):
@@ -737,11 +741,13 @@ def create_task_cls(app):
         ignore_result = app.conf.CELERY_IGNORE_RESULT
         store_errors_even_if_ignored = \
                 app.conf.CELERY_STORE_ERRORS_EVEN_IF_IGNORED
+        accept_magic_kwargs = kwargs.get("accept_magic_kwargs", False)
 
     return Task
 
 
-Task = create_task_cls(app_or_default())
+Task = create_task_cls(app_or_default(), accept_magic_kwargs=True)
+
 
 
 class PeriodicTask(Task):

+ 2 - 0
contrib/release/doc4allmods

@@ -13,6 +13,8 @@ SKIP_FILES="celery.bin.rst
             celery.db.rst
             celery.messaging.rst
             celery.execute.rst
+            celery.conf.rst
+            celery.decorators.rst
             celery.db.a805d4bd.rst
             celery.db.dfd042c7.rst"
 

+ 5 - 1
docs/index.rst

@@ -18,9 +18,13 @@ Contents:
     contributing
     tutorials/index
     faq
+
+.. toctree::
+    :maxdepth: 1
+
+    changelog
     reference/index
     internals/index
-    changelog
     links
 
 

+ 1 - 1
docs/internals/reference/celery.backends.amqp.rst

@@ -1,5 +1,5 @@
 =======================================
-Backend: AMQP - celery.backends.amqp
+ celery.backends.amqp
 =======================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.backends.base.rst

@@ -1,5 +1,5 @@
 =====================================
-Backend: Base - celery.backends.base
+ celery.backends.base
 =====================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.backends.cache.rst

@@ -1,5 +1,5 @@
 ===========================================
- Backend: Memcache - celery.backends.cache
+ celery.backends.cache
 ===========================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.backends.cassandra.rst

@@ -1,5 +1,5 @@
 ================================================
- Backend: Cassandra - celery.backends.cassandra
+ celery.backends.cassandra
 ================================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.backends.database.rst

@@ -1,5 +1,5 @@
 =========================================================
- Backend: SQLAlchemy Database - celery.backends.database
+ celery.backends.database
 =========================================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.backends.mongodb.rst

@@ -1,5 +1,5 @@
 ============================================
- Backend: MongoDB - celery.backends.mongodb
+ celery.backends.mongodb
 ============================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.backends.pyredis.rst

@@ -1,5 +1,5 @@
 ==========================================
- Backend: Redis - celery.backends.pyredis
+ celery.backends.pyredis
 ==========================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.backends.rst

@@ -1,5 +1,5 @@
 ===========================
-Backends - celery.backends
+ celery.backends
 ===========================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.backends.tyrant.rst

@@ -1,5 +1,5 @@
 ===============================================
-Backend: Tokyo Tyrant - celery.backends.tyrant
+ celery.backends.tyrant
 ===============================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.beat.rst

@@ -1,5 +1,5 @@
 ========================================
-Clock Service - celery.beat
+ celery.beat
 ========================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.concurrency.base.rst

@@ -1,5 +1,5 @@
 ===============================================
- Base Pool Interface - celery.concurrency.base
+ celery.concurrency.base
 ===============================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.concurrency.evg.rst

@@ -1,5 +1,5 @@
 =============================================================
- gevent Pool Support - celery.concurrency.evg
+ celery.concurrency.evg† (*experimental*)
 =============================================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.concurrency.evlet.rst

@@ -1,5 +1,5 @@
 =============================================================
- Eventlet Pool Support - celery.concurrency.evlet
+ celery.concurrency.evlet† (*experimental*)
 =============================================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.concurrency.processes.pool.rst

@@ -1,5 +1,5 @@
 ===================================================================
- extended multiprocessing.pool - celery.concurrency.processes.pool
+ celery.concurrency.processes.pool
 ===================================================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.concurrency.processes.rst

@@ -1,5 +1,5 @@
 =============================================================
- Multiprocessing Pool Support - celery.concurrency.processes
+ celery.concurrency.processes
 =============================================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.concurrency.rst

@@ -1,5 +1,5 @@
 ==================================
- Concurrency - celery.concurrency
+ celery.concurrency
 ==================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.concurrency.threads.rst

@@ -1,5 +1,5 @@
 ===================================================================
- Thread Pool Support **EXPERIMENTAL** - celery.concurrency.threads
+ celery.concurrency.threads‡ (**minefield**)
 ===================================================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.db.models.rst

@@ -1,5 +1,5 @@
 ======================================
- SQLAlchemy Models - celery.db.models
+ celery.db.models
 ======================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.db.session.rst

@@ -1,5 +1,5 @@
 ========================================
- SQLAlchemy Session - celery.db.session
+ celery.db.session
 ========================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.events.cursesmon.rst

@@ -1,5 +1,5 @@
 ==========================================
- Curses Monitor - celery.events.cursesmon
+ celery.events.cursesmon
 ==========================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.events.dumper.rst

@@ -1,5 +1,5 @@
 ==========================================
- Event Dumper Tool - celery.events.dumper
+ celery.events.dumper
 ==========================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.events.snapshot.rst

@@ -1,5 +1,5 @@
 ==========================================
- Event Snapshots - celery.events.snapshot
+ celery.events.snapshot
 ==========================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.execute.trace.rst

@@ -1,5 +1,5 @@
 ==========================================
- Tracing Execution - celery.execute.trace
+ celery.execute.trace
 ==========================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.log.rst

@@ -1,5 +1,5 @@
 ==========================
-Logging - celery.log
+ celery.log
 ==========================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.platforms.rst

@@ -1,5 +1,5 @@
 ======================================
- Platform Specific - celery.platforms
+ celery.platforms
 ======================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.routes.rst

@@ -1,5 +1,5 @@
 =================================
- Message Routers - celery.routes
+ celery.routes
 =================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.utils.compat.rst

@@ -1,5 +1,5 @@
 ============================================
- Python Compatibility - celery.utils.compat
+ celery.utils.compat
 ============================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.utils.dispatch.rst

@@ -1,5 +1,5 @@
 =========================================
- Signal Dispatch - celery.utils.dispatch
+ celery.utils.dispatch
 =========================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.utils.dispatch.saferef.rst

@@ -1,5 +1,5 @@
 ==========================================================
- Signals: Safe References - celery.utils.dispatch.saferef
+ celery.utils.dispatch.saferef
 ==========================================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.utils.dispatch.signal.rst

@@ -1,5 +1,5 @@
 ====================================================
- Signals: Dispatcher - celery.utils.dispatch.signal
+ celery.utils.dispatch.signal
 ====================================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.utils.functional.rst

@@ -1,5 +1,5 @@
 ============================================
- functools compat - celery.utils.functional
+ celery.utils.functional
 ============================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.utils.mail.rst

@@ -1,5 +1,5 @@
 ====================================
- Sending E-mail - celery.utils.mail
+ celery.utils.mail
 ====================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.utils.patch.rst

@@ -1,5 +1,5 @@
 ============================================
- Compatibility Patches - celery.utils.patch
+ celery.utils.patch
 ============================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.utils.rst

@@ -1,5 +1,5 @@
 ==========================
- Utilities - celery.utils
+ celery.utils
 ==========================
 
 .. contents::

+ 3 - 3
docs/internals/reference/celery.serialization.rst → docs/internals/reference/celery.utils.serialization.rst

@@ -1,11 +1,11 @@
 ============================================
- Serialization Tools - celery.serialization
+ celery.utils.serialization
 ============================================
 
 .. contents::
     :local:
-.. currentmodule:: celery.serialization
+.. currentmodule:: celery.utils.serialization
 
-.. automodule:: celery.serialization
+.. automodule:: celery.utils.serialization
     :members:
     :undoc-members:

+ 1 - 1
docs/internals/reference/celery.utils.term.rst

@@ -1,5 +1,5 @@
 =====================================================
- Terminal Utilities - celery.utils.term
+ celery.utils.term
 =====================================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.utils.timer2.rst

@@ -1,5 +1,5 @@
 ==============================
- timer2 - celery.utils.timer2
+ celery.utils.timer2
 ==============================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.utils.timeutils.rst

@@ -1,5 +1,5 @@
 ==================================================
- Time and Date Utilities - celery.utils.timeutils
+ celery.utils.timeutils
 ==================================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.worker.buckets.rst

@@ -1,5 +1,5 @@
 ======================================================
- Token Bucket (rate limiting) - celery.worker.buckets
+ celery.worker.buckets
 ======================================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.worker.consumer.rst

@@ -1,5 +1,5 @@
 ==================================================
- Worker Message Consumer - celery.worker.consumer
+ celery.worker.consumer
 ==================================================
 
 .. contents::

+ 0 - 12
docs/internals/reference/celery.worker.control.builtins.rst

@@ -1,12 +0,0 @@
-===================================================================
- Built-in Remote Control Commands - celery.worker.control.builtins
-===================================================================
-
-.. contents::
-    :local:
-
-.. currentmodule:: celery.worker.control.builtins
-
-.. automodule:: celery.worker.control.builtins
-    :members:
-    :undoc-members:

+ 0 - 11
docs/internals/reference/celery.worker.control.registry.rst

@@ -1,11 +0,0 @@
-==================================================================
- Remote Control Command Registry - celery.worker.control.registry
-==================================================================
-
-.. contents::
-    :local:
-.. currentmodule:: celery.worker.control.registry
-
-.. automodule:: celery.worker.control.registry
-    :members:
-    :undoc-members:

+ 0 - 11
docs/internals/reference/celery.worker.control.rst

@@ -1,11 +0,0 @@
-========================================
- Worker Control - celery.worker.control
-========================================
-
-.. contents::
-    :local:
-.. currentmodule:: celery.worker.control
-
-.. automodule:: celery.worker.control
-    :members:
-    :undoc-members:

+ 1 - 1
docs/internals/reference/celery.worker.controllers.rst

@@ -1,5 +1,5 @@
 =======================================================
- Worker Controller Threads - celery.worker.controllers
+ celery.worker.controllers
 =======================================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.worker.heartbeat.rst

@@ -1,5 +1,5 @@
 =============================================
- Worker Heartbeats - celery.worker.heartbeat
+ celery.worker.heartbeat
 =============================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.worker.job.rst

@@ -1,5 +1,5 @@
 =====================================
- Executable Jobs - celery.worker.job
+ celery.worker.job
 =====================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.worker.rst

@@ -1,5 +1,5 @@
 ========================================
-Multiprocessing Worker - celery.worker
+ celery.worker
 ========================================
 
 .. contents::

+ 1 - 1
docs/internals/reference/celery.worker.state.rst

@@ -1,5 +1,5 @@
 ====================================
- Worker State - celery.worker.state
+ celery.worker.state
 ====================================
 
 .. contents::

+ 2 - 5
docs/internals/reference/index.rst

@@ -6,7 +6,7 @@
 :Date: |today|
 
 .. toctree::
-    :maxdepth: 2
+    :maxdepth: 1
 
     celery.worker
     celery.worker.consumer
@@ -14,9 +14,6 @@
     celery.worker.controllers
     celery.worker.buckets
     celery.worker.heartbeat
-    celery.worker.control
-    celery.worker.control.builtins
-    celery.worker.control.registry
     celery.worker.state
     celery.concurrency
     celery.concurrency.processes
@@ -36,7 +33,6 @@
     celery.backends.cassandra
     celery.backends.tyrant
     celery.execute.trace
-    celery.serialization
     celery.datastructures
     celery.routes
     celery.log
@@ -52,6 +48,7 @@
     celery.utils.mail
     celery.utils.patch
     celery.utils.functional
+    celery.utils.serialization
     celery.utils.timer2
     celery.utils.dispatch
     celery.utils.dispatch.signal

+ 1 - 1
docs/reference/celery.app.defaults.rst

@@ -1,5 +1,5 @@
 ===============================================================
- Default configuration and introspection - celery.app.defaults
+ celery.app.defaults
 ===============================================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.apps.beat.rst

@@ -1,5 +1,5 @@
 =================================================
- App: Periodic Task Scheduler - celery.apps.beat
+ celery.apps.beat
 =================================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.apps.worker.rst

@@ -1,5 +1,5 @@
 =======================================
- App: Worker Node - celery.apps.worker
+ celery.apps.worker
 =======================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.bin.base.rst

@@ -1,5 +1,5 @@
 ================================
- Base Command - celery.bin.base
+ celery.bin.base
 ================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.bin.camqadm.rst

@@ -1,5 +1,5 @@
 ===========================================================
- caqmadm: AMQP API Command-line Shell - celery.bin.camqadm
+ celery.bin.camqadm
 ===========================================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.bin.celerybeat.rst

@@ -1,5 +1,5 @@
 ===================================================
-Celery Periodic Task Server - celery.bin.celerybeat
+ celery.bin.celerybeat
 ===================================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.bin.celeryd.rst

@@ -1,5 +1,5 @@
 ==========================================
- celeryd - celery.bin.celeryd
+ celery.bin.celeryd
 ==========================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.bin.celeryd_multi.rst

@@ -1,5 +1,5 @@
 ===============================================
- Celeryd Multi Tool - celery.bin.celeryd_multi
+ celery.bin.celeryd_multi
 ===============================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.bin.celeryev.rst

@@ -1,5 +1,5 @@
 =====================================================
- celeryev: Curses Event Viewer - celery.bin.celeryev
+ celery.bin.celeryev
 =====================================================
 
 .. contents::

+ 0 - 304
docs/reference/celery.conf.rst

@@ -1,304 +0,0 @@
-============================
-Configuration - celery.conf
-============================
-
-.. contents::
-    :local:
-.. currentmodule:: celery.conf
-
-Queues
-======
-
-.. data:: QUEUES
-
-    Queue name/options mapping.
-
-.. data:: DEFAULT_QUEUE
-
-    Name of the default queue.
-
-.. data:: DEFAULT_EXCHANGE
-
-    Default exchange.
-
-.. data:: DEFAULT_EXCHANGE_TYPE
-
-    Default exchange type.
-
-.. data:: DEFAULT_DELIVERY_MODE
-
-    Default delivery mode (`"persistent"` or `"non-persistent"`).
-    Default is `"persistent"`.
-
-.. data:: DEFAULT_ROUTING_KEY
-
-    Default routing key used when sending tasks.
-
-.. data:: BROKER_CONNECTION_TIMEOUT
-
-    The timeout in seconds before we give up establishing a connection
-    to the AMQP server.
-
-.. data:: BROADCAST_QUEUE
-
-    Name prefix for the queue used when listening for
-    broadcast messages. The workers hostname will be appended
-    to the prefix to create the final queue name.
-
-    Default is `"celeryctl"`.
-
-.. data:: BROADCAST_EXCHANGE
-
-    Name of the exchange used for broadcast messages.
-
-    Default is `"celeryctl"`.
-
-.. data:: BROADCAST_EXCHANGE_TYPE
-
-    Exchange type used for broadcast messages. Default is `"fanout"`.
-
-.. data:: EVENT_QUEUE
-
-    Name of queue used to listen for event messages. Default is
-    `"celeryevent"`.
-
-.. data:: EVENT_EXCHANGE
-
-    Exchange used to send event messages. Default is `"celeryevent"`.
-
-.. data:: EVENT_EXCHANGE_TYPE
-
-    Exchange type used for the event exchange. Default is `"topic"`.
-
-.. data:: EVENT_ROUTING_KEY
-
-    Routing key used for events. Default is `"celeryevent"`.
-
-.. data:: EVENT_SERIALIZER
-
-    Type of serialization method used to serialize events. Default is
-    `"json"`.
-
-.. data:: RESULT_EXCHANGE
-
-    Exchange used by the AMQP result backend to publish task results.
-    Default is `"celeryresult"`.
-
-Sending E-Mails
-===============
-
-.. data:: CELERY_SEND_TASK_ERROR_EMAILS
-
-    If set to `True`, errors in tasks will be sent to :data:`ADMINS` by e-mail.
-
-.. data:: ADMINS
-
-    List of `(name, email_address)` tuples for the admins that should
-    receive error e-mails.
-
-.. data:: SERVER_EMAIL
-
-    The e-mail address this worker sends e-mails from.
-    Default is `"celery@localhost"`.
-
-.. data:: MAIL_HOST
-
-    The mail server to use. Default is `"localhost"`.
-
-.. data:: MAIL_HOST_USER
-
-    Username (if required) to log on to the mail server with.
-
-.. data:: MAIL_HOST_PASSWORD
-
-    Password (if required) to log on to the mail server with.
-
-.. data:: MAIL_PORT
-
-    The port the mail server is listening on. Default is `25`.
-
-Execution
-=========
-
-.. data:: ALWAYS_EAGER
-
-    Always execute tasks locally, don't send to the queue.
-
-.. data:: EAGER_PROPAGATES_EXCEPTIONS
-
-    If set to `True`, :func:`celery.execute.apply` will re-raise task exceptions.
-    It's the same as always running apply with `throw=True`.
-
-.. data:: TASK_RESULT_EXPIRES
-
-    Task tombstone expire time in seconds.
-
-.. data:: IGNORE_RESULT
-
-    If enabled, the default behavior will be to not store task results.
-
-.. data:: TRACK_STARTED
-
-    If enabled, the default behavior will be to track when tasks starts by
-    storing the :const:`STARTED` state.
-
-.. data:: ACKS_LATE
-
-    If enabled, the default behavior will be to acknowledge task messages
-    after the task is executed.
-
-.. data:: STORE_ERRORS_EVEN_IF_IGNORED
-
-    If enabled, task errors will be stored even though `Task.ignore_result`
-    is enabled.
-
-.. data:: MAX_CACHED_RESULTS
-
-    Total number of results to store before results are evicted from the
-    result cache.
-
-.. data:: TASK_SERIALIZER
-
-    A string identifying the default serialization method to use.
-
-    Can be `pickle` (default), `json`, `yaml`, `msgpack` or any custom
-    serialization methods that have been registered with
-    :mod:`kombu.serialization.registry`.
-
-.. data:: RESULT_BACKEND
-
-    The backend used to store task results (tombstones).
-
-.. data:: CELERY_CACHE_BACKEND
-
-    Celery cache backend.
-
-.. data:: SEND_EVENTS
-
-    If set, celery will send events that can be captured by monitors like
-    `celerymon`.
-    Default is: `False`.
-
-.. data:: DEFAULT_RATE_LIMIT
-
-    The default rate limit applied to all tasks which doesn't have a custom
-    rate limit defined. (Default: :const:`None`)
-
-.. data:: DISABLE_RATE_LIMITS
-
-    If `True` all rate limits will be disabled and all tasks will be executed
-    as soon as possible.
-
-Broker
-======
-
-.. data:: BROKER_CONNECTION_RETRY
-
-    Automatically try to re-establish the connection to the AMQP broker if
-    it's lost.
-
-.. data:: BROKER_CONNECTION_MAX_RETRIES
-
-    Maximum number of retries before we give up re-establishing a connection
-    to the broker.
-
-    If this is set to `0` or :const:`None`, we will retry forever.
-
-    Default is `100` retries.
-
-Celerybeat
-==========
-
-.. data:: CELERYBEAT_LOG_LEVEL
-
-    Default log level for celerybeat.
-    Default is: `INFO`.
-
-.. data:: CELERYBEAT_LOG_FILE
-
-    Default log file for celerybeat.
-    Default is: :const:`None` (stderr)
-
-.. data:: CELERYBEAT_SCHEDULE_FILENAME
-
-    Name of the persistent schedule database file.
-    Default is: `celerybeat-schedule`.
-
-.. data:: CELERYBEAT_MAX_LOOP_INTERVAL
-
-    The maximum number of seconds celerybeat is allowed to sleep between
-    checking the schedule. The default is 5 minutes, which means celerybeat can
-    only sleep a maximum of 5 minutes after checking the schedule run-times for a
-    periodic task to apply. If you change the run_times of periodic tasks at
-    run-time, you may consider lowering this value for changes to take effect
-    faster (A value of 5 minutes, means the changes will take effect in 5 minutes
-    at maximum).
-
-Celerymon
-=========
-
-.. data:: CELERYMON_LOG_LEVEL
-
-    Default log level for celerymon.
-    Default is: `INFO`.
-
-.. data:: CELERYMON_LOG_FILE
-
-    Default log file for celerymon.
-    Default is: :const:`None` (stderr)
-
-Celeryd
-=======
-
-.. data:: LOG_LEVELS
-
-    Mapping of log level names to :mod:`logging` module constants.
-
-.. data:: CELERYD_LOG_FORMAT
-
-    The format to use for log messages.
-
-.. data:: CELERYD_TASK_LOG_FORMAT
-
-    The format to use for task log messages.
-
-.. data:: CELERYD_LOG_FILE
-
-    Filename of the daemon log file.
-    Default is: :const:`None` (stderr)
-
-.. data:: CELERYD_LOG_LEVEL
-
-    Default log level for daemons. (:const:`WARN`)
-
-.. data:: CELERYD_CONCURRENCY
-
-    The number of concurrent worker processes.
-    If set to `0` (the default), the total number of available CPUs/cores
-    will be used.
-
-.. data:: CELERYD_PREFETCH_MULTIPLIER
-
-    The number of concurrent workers is multipled by this number to yield
-    the wanted AMQP QoS message prefetch count.
-    Default is: `4`
-
-.. data:: CELERYD_POOL
-
-    Name of the task pool class used by the worker.
-    Default is `"celery.concurrency.processes.TaskPool"`.
-
-.. data:: CELERYD_CONSUMER
-
-    Name of the consumer class used by the worker.
-    Default is `"celery.worker.consumer.Consumer"`.
-
-.. data:: CELERYD_MEDIATOR
-
-    Name of the mediator class used by the worker.
-    Default is `"celery.worker.controllers.Mediator"`.
-
-.. data:: CELERYD_ETA_SCHEDULER
-
-    Name of the ETA scheduler class used by the worker.
-    Default is `"celery.worker.controllers.ScheduleController"`.

+ 1 - 1
docs/reference/celery.contrib.abortable.rst

@@ -1,5 +1,5 @@
 =======================================================
- Contrib: Abortable tasks - celery.contrib.abortable
+ celery.contrib.abortable
 =======================================================
 
 .. contents::

+ 0 - 11
docs/reference/celery.decorators.rst

@@ -1,11 +0,0 @@
-=====================================
- Task Decorators - celery.decorators
-=====================================
-
-.. contents::
-    :local:
-.. currentmodule:: celery.decorators
-
-.. automodule:: celery.decorators
-    :members:
-    :undoc-members:

+ 1 - 1
docs/reference/celery.events.rst

@@ -1,5 +1,5 @@
 ========================
- Events - celery.events
+ celery.events
 ========================
 
 .. contents::

+ 1 - 1
docs/reference/celery.events.state.rst

@@ -1,5 +1,5 @@
 =================================================================
- In-memory Representation of Cluster State - celery.events.state
+ celery.events.state
 =================================================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.exceptions.rst

@@ -1,5 +1,5 @@
 ================================
- Exceptions - celery.exceptions
+ celery.exceptions
 ================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.loaders.app.rst

@@ -1,5 +1,5 @@
 =================================
- App Loader - celery.loaders.app
+ celery.loaders.app
 =================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.loaders.base.rst

@@ -1,5 +1,5 @@
 ===========================================
- Loader Base Classes - celery.loaders.base
+ celery.loaders.base
 ===========================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.loaders.default.rst

@@ -1,5 +1,5 @@
 =========================================
- Default Loader - celery.loaders.default
+ celery.loaders.default
 =========================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.loaders.rst

@@ -1,5 +1,5 @@
 ============================================
- Loaders - celery.loaders
+ celery.loaders
 ============================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.registry.rst

@@ -1,5 +1,5 @@
 ================================
-Task Registry - celery.registry
+ celery.registry
 ================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.result.rst

@@ -1,5 +1,5 @@
 =============================
-Task Result - celery.result
+ celery.result
 =============================
 
 .. contents::

+ 1 - 1
docs/reference/celery.schedules.rst

@@ -1,5 +1,5 @@
 =====================================================
- Periodic Task Schedule Behaviors - celery.schedules
+ celery.schedules
 =====================================================
 
 .. contents::

+ 1 - 135
docs/reference/celery.signals.rst

@@ -1,139 +1,5 @@
 .. _signals:
 
-========================================
-Signals - celery.signals
-========================================
-
-.. contents::
-    :local:
 .. currentmodule:: celery.signals
 
-.. _signal-basics:
-
-Basics
-======
-
-Several kinds of events trigger signals, you can connect to these signals
-to perform actions as they trigger.
-
-Example connecting to the :data:`task_sent` signal:
-
-.. code-block:: python
-
-    from celery.signals import task_sent
-
-    def task_sent_handler(sender=None, task_id=None, task=None, args=None,
-                          kwargs=None, **kwds):
-        print("Got signal task_sent for task id %s" % (task_id, ))
-
-    task_sent.connect(task_sent_handler)
-
-
-Some signals also have a sender which you can filter by. For example the
-:data:`task_sent` signal uses the task name as a sender, so you can
-connect your handler to be called only when tasks with name `"tasks.add"`
-has been sent by providing the `sender` argument to
-:class:`~celery.utils.dispatch.signal.Signal.connect`:
-
-.. code-block:: python
-
-    task_sent.connect(task_sent_handler, sender="tasks.add")
-
-.. _signal-ref:
-
-Signals
-=======
-
-Task Signals
-------------
-
-.. data:: task_sent
-
-    Dispatched when a task has been sent to the broker.
-    Note that this is executed in the client process, the one sending
-    the task, not in the worker.
-
-    Sender is the name of the task being sent.
-
-    Provides arguments:
-
-    * task_id
-        Id of the task to be executed.
-
-    * task
-        The task being executed.
-
-    * args
-        the tasks positional arguments.
-
-    * kwargs
-        The tasks keyword arguments.
-
-    * eta
-        The time to execute the task.
-
-    * taskset
-        Id of the taskset this task is part of (if any).
-
-.. data:: task_prerun
-
-    Dispatched before a task is executed.
-
-    Sender is the task class being executed.
-
-    Provides arguments:
-
-    * task_id
-        Id of the task to be executed.
-
-    * task
-        The task being executed.
-
-    * args
-        the tasks positional arguments.
-
-    * kwargs
-        The tasks keyword arguments.
-
-.. data:: task_postrun
-
-    Dispatched after a task has been executed.
-
-    Sender is the task class executed.
-
-    Provides arguments:
-
-    * task_id
-        Id of the task to be executed.
-
-    * task
-        The task being executed.
-
-    * args
-        The tasks positional arguments.
-
-    * kwargs
-        The tasks keyword arguments.
-
-    * retval
-
-        The return value of the task.
-
-Worker Signals
---------------
-
-.. data:: worker_init
-
-    Dispatched before the worker is started.
-
-.. data:: worker_ready
-
-    Dispatched when the worker is ready to accept work.
-
-.. data:: worker_process_init
-
-    Dispatched by each new pool worker process when it starts.
-
-.. data:: worker_shutdown
-
-    Dispatched when the worker is about to shut down.
+.. automodule:: celery.signals

+ 2 - 5
docs/reference/celery.states.rst

@@ -1,11 +1,8 @@
-=============================
- Task States - celery.states
-=============================
+.. currentmodule:: celery.states
 
 .. contents::
     :local:
-.. currentmodule:: celery.states
 
 .. automodule:: celery.states
     :members:
-    :undoc-members:
+

+ 2 - 2
docs/reference/celery.task.base.rst

@@ -1,5 +1,5 @@
 ===================================
- Defining Tasks - celery.task.base
+ celery.task.base
 ===================================
 
 .. contents::
@@ -7,4 +7,4 @@
 .. currentmodule:: celery.task.base
 
 .. automodule:: celery.task.base
-    :members: Task, PeriodicTask, TaskType
+    :members: create_task_cls, BaseTask, PeriodicTask, TaskType

+ 1 - 1
docs/reference/celery.task.builtins.rst

@@ -1,5 +1,5 @@
 ==============================================
- Built-in Task Classes - celery.task.builtins
+ celery.task.builtins
 ==============================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.task.control.rst

@@ -1,5 +1,5 @@
 ====================================================
- Remote Management of Workers - celery.task.control
+ celery.task.control
 ====================================================
 
 .. contents::

+ 1 - 1
docs/reference/celery.task.http.rst

@@ -1,5 +1,5 @@
 ========================================
- HTTP Callback Tasks - celery.task.http
+ celery.task.http
 ========================================
 
 .. contents::

+ 7 - 5
docs/reference/celery.task.rst

@@ -1,11 +1,13 @@
-==============================================
- Task Information and Utilities - celery.task
-==============================================
+=====================================================
+ celery.task
+=====================================================
 
 .. contents::
     :local:
 .. currentmodule:: celery.task
 
 .. automodule:: celery.task
-    :members:
-    :undoc-members:
+
+    .. autofunction:: task
+
+    .. autofunction:: periodic_task

+ 1 - 1
docs/reference/celery.task.sets.rst

@@ -1,5 +1,5 @@
 ======================================================
- Task Sets, Subtasks and Callbacks - celery.task.sets
+ celery.task.sets
 ======================================================
 
 .. contents::

+ 1 - 2
docs/reference/index.rst

@@ -11,12 +11,11 @@
     celery.app
     celery.app.amqp
     celery.app.defaults
-    celery.decorators
+    celery.task
     celery.task.base
     celery.task.sets
     celery.result
     celery.task
-    celery.conf
     celery.task.control
     celery.task.http
     celery.schedules