Selaa lähdekoodia

Renames celery.datastructures -> celery.utils.datastructures

Ask Solem 11 vuotta sitten
vanhempi
commit
f5c2b546c3

+ 2 - 1
celery/__init__.py

@@ -66,7 +66,8 @@ old_module, new_module = recreate_module(  # pragma: no cover
                           'subtask', 'xmap', 'xstarmap'],
         'celery.utils': ['uuid'],
     },
-    direct={'task': 'celery.task'},
+    direct={'task': 'celery.task',
+            'datastructures': 'celery.utils.datastructures'},
     __package__='celery', __file__=__file__,
     __path__=__path__, __doc__=__doc__, __version__=__version__,
     __author__=__author__, __contact__=__contact__,

+ 5 - 4
celery/app/task.py

@@ -10,11 +10,12 @@ from __future__ import absolute_import
 
 import sys
 
+from billiard.einfo import ExceptionInfo
+
 from celery import current_app
 from celery import states
 from celery._state import get_current_worker_task, _task_stack
 from celery.canvas import subtask
-from celery.datastructures import ExceptionInfo
 from celery.exceptions import MaxRetriesExceededError, RetryTaskError
 from celery.five import class_property, items, with_metaclass
 from celery.result import EagerResult
@@ -744,7 +745,7 @@ class Task(object):
         :param args: Original arguments for the retried task.
         :param kwargs: Original keyword arguments for the retried task.
 
-        :keyword einfo: :class:`~celery.datastructures.ExceptionInfo`
+        :keyword einfo: :class:`~billiard.einfo.ExceptionInfo`
                         instance, containing the traceback.
 
         The return value of this handler is ignored.
@@ -763,7 +764,7 @@ class Task(object):
         :param kwargs: Original keyword arguments for the task
                        that failed.
 
-        :keyword einfo: :class:`~celery.datastructures.ExceptionInfo`
+        :keyword einfo: :class:`~billiard.einfo.ExceptionInfo`
                         instance, containing the traceback.
 
         The return value of this handler is ignored.
@@ -781,7 +782,7 @@ class Task(object):
         :param kwargs: Original keyword arguments for the task
                        that failed.
 
-        :keyword einfo: :class:`~celery.datastructures.ExceptionInfo`
+        :keyword einfo: :class:`~billiard.einfo.ExceptionInfo`
                         instance, containing the traceback (if any).
 
         The return value of this handler is ignored.

+ 1 - 1
celery/app/utils.py

@@ -14,7 +14,7 @@ import re
 
 from celery.platforms import pyimplementation
 from celery.five import items
-from celery.datastructures import ConfigurationView
+from celery.utils.datastructures import ConfigurationView
 from celery.utils.text import pretty
 from celery.utils.imports import qualname
 

+ 1 - 1
celery/backends/base.py

@@ -24,11 +24,11 @@ from kombu.utils.encoding import bytes_to_str, ensure_bytes, from_utf8
 
 from celery import states
 from celery.app import current_task
-from celery.datastructures import LRUCache
 from celery.exceptions import ChordError, TimeoutError, TaskRevokedError
 from celery.five import items
 from celery.result import from_serializable, GroupResult
 from celery.utils import timeutils
+from celery.utils.functional import LRUCache
 from celery.utils.serialization import (
     get_pickled_exception,
     get_pickleable_exception,

+ 1 - 1
celery/backends/cache.py

@@ -10,8 +10,8 @@ from __future__ import absolute_import
 
 from kombu.utils import cached_property
 
-from celery.datastructures import LRUCache
 from celery.exceptions import ImproperlyConfigured
+from celery.utils.functional import LRUCache
 
 from .base import KeyValueStoreBackend
 

+ 1 - 1
celery/bin/graph.py

@@ -10,8 +10,8 @@ from __future__ import absolute_import, unicode_literals
 
 from operator import itemgetter
 
-from celery.datastructures import DependencyGraph, GraphFormatter
 from celery.five import items
+from celery.utils.datastructures import DependencyGraph, GraphFormatter
 
 from .base import Command
 

+ 1 - 1
celery/bootsteps.py

@@ -14,8 +14,8 @@ from threading import Event
 from kombu.common import ignore_errors
 from kombu.utils import symbol_by_name
 
-from .datastructures import DependencyGraph, GraphFormatter
 from .five import values, with_metaclass
+from .utils.datastructures import DependencyGraph, GraphFormatter
 from .utils.imports import instantiate, qualname
 from .utils.log import get_logger
 from .utils.threads import default_socket_timeout

+ 1 - 1
celery/events/dumper.py

@@ -14,7 +14,7 @@ import sys
 from datetime import datetime
 
 from celery.app import app_or_default
-from celery.datastructures import LRUCache
+from celery.utils.functional import LRUCache
 from celery.utils.timeutils import humanize_seconds
 
 TASK_NAMES = LRUCache(limit=0xFFF)

+ 2 - 1
celery/events/state.py

@@ -28,8 +28,9 @@ from time import time
 from kombu.utils import kwdict
 
 from celery import states
-from celery.datastructures import AttributeDict, LRUCache
 from celery.five import items, values
+from celery.utils.datastructures import AttributeDict
+from celery.utils.functional import LRUCache
 from celery.utils.log import get_logger
 
 # The window (in percentage) is added to the workers heartbeat

+ 1 - 1
celery/loaders/base.py

@@ -20,8 +20,8 @@ from datetime import datetime
 from kombu.utils import cached_property
 from kombu.utils.encoding import safe_str
 
-from celery.datastructures import DictAttribute
 from celery.five import reraise, string_t
+from celery.utils.datastructures import DictAttribute
 from celery.utils.functional import maybe_list
 from celery.utils.imports import (
     import_from_cwd, symbol_by_name, NotAPackage, find_module,

+ 1 - 1
celery/loaders/default.py

@@ -11,9 +11,9 @@ from __future__ import absolute_import
 import os
 import warnings
 
-from celery.datastructures import DictAttribute
 from celery.exceptions import NotConfigured
 from celery.utils import strtobool
+from celery.utils.datastructures import DictAttribute
 
 from .base import BaseLoader
 

+ 1 - 1
celery/result.py

@@ -19,9 +19,9 @@ from kombu.utils.compat import OrderedDict
 from . import current_app
 from . import states
 from .app import app_or_default
-from .datastructures import DependencyGraph, GraphFormatter
 from .exceptions import IncompleteStream, TimeoutError
 from .five import items, range, string_t
+from .utils.datastructures import DependencyGraph, GraphFormatter
 
 
 class ResultBase(object):

+ 1 - 1
celery/schedules.py

@@ -22,7 +22,7 @@ from .utils.timeutils import (
     timedelta_seconds, weekday, maybe_timedelta, remaining,
     humanize_seconds, timezone, maybe_make_aware, ffwd
 )
-from .datastructures import AttributeDict
+from .utils.datastructures import AttributeDict
 
 CRON_PATTERN_INVALID = """\
 Invalid crontab pattern. Valid range is {min}-{max}. \

+ 1 - 1
celery/task/trace.py

@@ -21,6 +21,7 @@ import sys
 
 from warnings import warn
 
+from billiard.einfo import ExceptionInfo
 from kombu.utils import kwdict
 
 from celery import current_app
@@ -28,7 +29,6 @@ from celery import states, signals
 from celery._state import _task_stack
 from celery.app import set_default_app
 from celery.app.task import Task as BaseTask, Context
-from celery.datastructures import ExceptionInfo
 from celery.exceptions import Ignore, RetryTaskError
 from celery.utils.log import get_logger
 from celery.utils.objects import mro_lookup

+ 3 - 2
celery/tests/app/test_routes.py

@@ -8,6 +8,8 @@ from kombu.utils.functional import maybe_promise
 from celery.app import routes
 from celery.exceptions import QueueNotFound
 from celery.task import task
+from celery.utils.functional import LRUCache
+
 from celery.tests.case import AppCase
 
 
@@ -149,10 +151,9 @@ class test_lookup_route(RouteCase):
 class test_prepare(AppCase):
 
     def test_prepare(self):
-        from celery.datastructures import LRUCache
         o = object()
         R = [{'foo': 'bar'},
-             'celery.datastructures.LRUCache', o]
+             'celery.utils.functional.LRUCache', o]
         p = routes.prepare(R)
         self.assertIsInstance(p[0], routes.MapRoute)
         self.assertIsInstance(maybe_promise(p[1]), LRUCache)

+ 1 - 1
celery/tests/backends/test_amqp.py

@@ -7,13 +7,13 @@ from contextlib import contextmanager
 from datetime import timedelta
 from pickle import dumps, loads
 
+from billiard.einfo import ExceptionInfo
 from mock import patch
 
 from celery import current_app
 from celery import states
 from celery.app import app_or_default
 from celery.backends.amqp import AMQPBackend
-from celery.datastructures import ExceptionInfo
 from celery.exceptions import TimeoutError
 from celery.five import Empty, Queue, range
 from celery.utils import uuid

+ 1 - 1
celery/tests/backends/test_redis.py

@@ -10,10 +10,10 @@ from kombu.utils import cached_property, uuid
 
 from celery import current_app
 from celery import states
-from celery.datastructures import AttributeDict
 from celery.exceptions import ImproperlyConfigured
 from celery.result import AsyncResult
 from celery.task import subtask
+from celery.utils.datastructures import AttributeDict
 from celery.utils.timeutils import timedelta_seconds
 
 from celery.tests.case import Case

+ 2 - 1
celery/tests/concurrency/test_pool.py

@@ -5,7 +5,8 @@ import itertools
 
 from nose import SkipTest
 
-from celery.datastructures import ExceptionInfo
+from billiard.einfo import ExceptionInfo
+
 from celery.tests.case import Case
 
 

+ 5 - 3
celery/tests/utils/test_datastructures.py

@@ -1,14 +1,16 @@
 from __future__ import absolute_import
 
-from celery.datastructures import (
-    ExceptionInfo,
+from billiard.einfo import ExceptionInfo
+
+from celery.five import items
+from celery.utils.datastructures import (
     LimitedSet,
     AttributeDict,
     DictAttribute,
     ConfigurationView,
     DependencyGraph,
 )
-from celery.five import items
+
 from celery.tests.case import Case, WhateverIO
 
 

+ 1 - 1
celery/tests/worker/test_consumer.py

@@ -8,7 +8,7 @@ from nose import SkipTest
 
 from billiard.exceptions import RestartFreqExceeded
 
-from celery.datastructures import LimitedSet
+from celery.utils.datastructures import LimitedSet
 from celery.worker import state as worker_state
 from celery.worker.consumer import (
     Consumer,

+ 3 - 2
celery/tests/worker/test_control.py

@@ -9,19 +9,20 @@ from datetime import datetime, timedelta
 from kombu import pidbox
 from mock import Mock, patch, call
 
-from celery.datastructures import AttributeDict
+from celery.five import Queue as FastQueue
 from celery.task import task
 from celery.utils import uuid
+from celery.utils.datastructures import AttributeDict
 from celery.utils.timer2 import Timer
 from celery.worker import WorkController as _WC
 from celery.worker import consumer
 from celery.worker import control
 from celery.worker import state as worker_state
-from celery.five import Queue as FastQueue
 from celery.worker.job import TaskRequest
 from celery.worker.state import revoked
 from celery.worker.control import Panel
 from celery.worker.pidbox import Pidbox, gPidbox
+
 from celery.tests.case import AppCase
 
 hostname = socket.gethostname()

+ 1 - 1
celery/tests/worker/test_request.py

@@ -10,6 +10,7 @@ import time
 
 from datetime import datetime, timedelta
 
+from billiard.einfo import ExceptionInfo
 from kombu.transport.base import Message
 from kombu.utils.encoding import from_utf8, default_encode
 from mock import Mock, patch
@@ -17,7 +18,6 @@ from nose import SkipTest
 
 from celery import states
 from celery.concurrency.base import BasePool
-from celery.datastructures import ExceptionInfo
 from celery.exceptions import (
     RetryTaskError,
     WorkerLostError,

+ 2 - 1
celery/tests/worker/test_state.py

@@ -3,9 +3,10 @@ from __future__ import absolute_import
 from mock import Mock, patch
 from time import time
 
-from celery.datastructures import LimitedSet
 from celery.exceptions import SystemTerminate
 from celery.worker import state
+from celery.utils.datastructures import LimitedSet
+
 from celery.tests.case import Case
 
 

+ 1 - 1
celery/tests/worker/test_worker.py

@@ -17,7 +17,6 @@ from mock import call, Mock, patch
 from celery.app.defaults import DEFAULTS
 from celery.bootsteps import RUN, CLOSE, TERMINATE, StartStopStep
 from celery.concurrency.base import BasePool
-from celery.datastructures import AttributeDict
 from celery.exceptions import SystemTerminate, TaskRevokedError
 from celery.five import Empty, range, Queue as FastQueue
 from celery.task import task as task_dec
@@ -30,6 +29,7 @@ from celery.worker.consumer import Consumer as __Consumer
 from celery.worker.hub import READ, ERR
 from celery.worker.job import Request
 from celery.utils import worker_direct
+from celery.utils.datastructures import AttributeDict
 from celery.utils.serialization import pickle
 from celery.utils.timer2 import Timer
 

+ 5 - 8
celery/datastructures.py → celery/utils/datastructures.py

@@ -1,7 +1,7 @@
 # -*- coding: utf-8 -*-
 """
-    celery.datastructures
-    ~~~~~~~~~~~~~~~~~~~~~
+    celery.utils.datastructures
+    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
     Custom types and data structures.
 
@@ -20,8 +20,9 @@ from billiard.einfo import ExceptionInfo  # noqa
 from kombu.utils.encoding import safe_str
 from kombu.utils.limits import TokenBucket  # noqa
 
-from .five import items
-from .utils.functional import LRUCache, first, uniq  # noqa
+from celery.five import items
+
+from .functional import LRUCache, first, uniq  # noqa
 
 DOT_HEAD = """
 {IN}{type} {id} {{
@@ -627,10 +628,6 @@ class LimitedSet(object):
     def __repr__(self):
         return 'LimitedSet(%s)' % (repr(list(self._data))[:100], )
 
-    @property
-    def chronologically(self):
-        return [value for _, value in self._heap]
-
     @property
     def first(self):
         """Get the oldest member."""

+ 1 - 1
celery/worker/job.py

@@ -14,6 +14,7 @@ import time
 import socket
 import sys
 
+from billiard.einfo import ExceptionInfo
 from datetime import datetime
 
 from kombu.utils import kwdict, reprcall
@@ -21,7 +22,6 @@ from kombu.utils.encoding import safe_repr, safe_str
 
 from celery import signals
 from celery.app import app_or_default
-from celery.datastructures import ExceptionInfo
 from celery.exceptions import (
     Ignore, TaskRevokedError, InvalidTaskError,
     SoftTimeLimitExceeded, TimeLimitExceeded,

+ 1 - 1
celery/worker/pidbox.py

@@ -6,7 +6,7 @@ import threading
 from kombu.common import ignore_errors
 from kombu.utils.encoding import safe_str
 
-from celery.datastructures import AttributeDict
+from celery.utils.datastructures import AttributeDict
 from celery.utils.log import get_logger
 
 from . import control

+ 1 - 1
celery/worker/state.py

@@ -22,7 +22,7 @@ from kombu.utils import cached_property
 from celery import __version__
 from celery.exceptions import SystemTerminate
 from celery.five import Counter
-from celery.datastructures import LimitedSet
+from celery.utils.datastructures import LimitedSet
 
 #: Worker software/platform information.
 SOFTWARE_INFO = {'sw_ident': 'py-celery',

+ 0 - 0
docs/internals/reference/celery.datastructures.rst → docs/internals/reference/celery.utils.datastructures.rst


+ 1 - 1
docs/internals/reference/index.rst

@@ -39,13 +39,13 @@
     celery.security.key
     celery.security.serialization
     celery.security.utils
-    celery.datastructures
     celery.events.snapshot
     celery.events.cursesmon
     celery.events.dumper
     celery.backends.database.models
     celery.backends.database.session
     celery.utils
+    celery.utils.datastructures
     celery.utils.functional
     celery.utils.objects
     celery.utils.term