Browse Source

Moves datastructures back to celery.datastructures to ensure compat with extensions

Ask Solem 12 years ago
parent
commit
578663306f

+ 1 - 2
celery/__init__.py

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

+ 2 - 2
celery/app/utils.py

@@ -12,9 +12,9 @@ import os
 import platform as _platform
 import platform as _platform
 import re
 import re
 
 
-from celery.platforms import pyimplementation
+from celery.datastructures import ConfigurationView
 from celery.five import items
 from celery.five import items
-from celery.utils.datastructures import ConfigurationView
+from celery.platforms import pyimplementation
 from celery.utils.text import pretty
 from celery.utils.text import pretty
 from celery.utils.imports import qualname
 from celery.utils.imports import qualname
 
 

+ 1 - 1
celery/bin/graph.py

@@ -10,8 +10,8 @@ from __future__ import absolute_import, unicode_literals
 
 
 from operator import itemgetter
 from operator import itemgetter
 
 
+from celery.datastructures import DependencyGraph, GraphFormatter
 from celery.five import items
 from celery.five import items
-from celery.utils.datastructures import DependencyGraph, GraphFormatter
 
 
 from .base import Command
 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.common import ignore_errors
 from kombu.utils import symbol_by_name
 from kombu.utils import symbol_by_name
 
 
+from .datastructures import DependencyGraph, GraphFormatter
 from .five import values, with_metaclass
 from .five import values, with_metaclass
-from .utils.datastructures import DependencyGraph, GraphFormatter
 from .utils.imports import instantiate, qualname
 from .utils.imports import instantiate, qualname
 from .utils.log import get_logger
 from .utils.log import get_logger
 from .utils.threads import default_socket_timeout
 from .utils.threads import default_socket_timeout

+ 3 - 4
celery/utils/datastructures.py → celery/datastructures.py

@@ -1,7 +1,7 @@
 # -*- coding: utf-8 -*-
 # -*- coding: utf-8 -*-
 """
 """
-    celery.utils.datastructures
-    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
+    celery.datastructures
+    ~~~~~~~~~~~~~~~~~~~~~
 
 
     Custom types and data structures.
     Custom types and data structures.
 
 
@@ -21,8 +21,7 @@ from kombu.utils.encoding import safe_str
 from kombu.utils.limits import TokenBucket  # noqa
 from kombu.utils.limits import TokenBucket  # noqa
 
 
 from celery.five import items
 from celery.five import items
-
-from .functional import LRUCache, first, uniq  # noqa
+from celery.utils.functional import LRUCache, first, uniq  # noqa
 
 
 DOT_HEAD = """
 DOT_HEAD = """
 {IN}{type} {id} {{
 {IN}{type} {id} {{

+ 1 - 1
celery/events/state.py

@@ -28,8 +28,8 @@ from time import time
 from kombu.utils import kwdict
 from kombu.utils import kwdict
 
 
 from celery import states
 from celery import states
+from celery.datastructures import AttributeDict
 from celery.five import items, values
 from celery.five import items, values
-from celery.utils.datastructures import AttributeDict
 from celery.utils.functional import LRUCache
 from celery.utils.functional import LRUCache
 from celery.utils.log import get_logger
 from celery.utils.log import get_logger
 
 

+ 1 - 1
celery/loaders/base.py

@@ -20,8 +20,8 @@ from datetime import datetime
 from kombu.utils import cached_property
 from kombu.utils import cached_property
 from kombu.utils.encoding import safe_str
 from kombu.utils.encoding import safe_str
 
 
+from celery.datastructures import DictAttribute
 from celery.five import reraise, string_t
 from celery.five import reraise, string_t
-from celery.utils.datastructures import DictAttribute
 from celery.utils.functional import maybe_list
 from celery.utils.functional import maybe_list
 from celery.utils.imports import (
 from celery.utils.imports import (
     import_from_cwd, symbol_by_name, NotAPackage, find_module,
     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 os
 import warnings
 import warnings
 
 
+from celery.datastructures import DictAttribute
 from celery.exceptions import NotConfigured
 from celery.exceptions import NotConfigured
 from celery.utils import strtobool
 from celery.utils import strtobool
-from celery.utils.datastructures import DictAttribute
 
 
 from .base import BaseLoader
 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 current_app
 from . import states
 from . import states
 from .app import app_or_default
 from .app import app_or_default
+from .datastructures import DependencyGraph, GraphFormatter
 from .exceptions import IncompleteStream, TimeoutError
 from .exceptions import IncompleteStream, TimeoutError
 from .five import items, range, string_t
 from .five import items, range, string_t
-from .utils.datastructures import DependencyGraph, GraphFormatter
 
 
 
 
 class ResultBase(object):
 class ResultBase(object):

+ 1 - 1
celery/schedules.py

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

+ 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 current_app
 from celery import states
 from celery import states
+from celery.datastructures import AttributeDict
 from celery.exceptions import ImproperlyConfigured
 from celery.exceptions import ImproperlyConfigured
 from celery.result import AsyncResult
 from celery.result import AsyncResult
 from celery.task import subtask
 from celery.task import subtask
-from celery.utils.datastructures import AttributeDict
 from celery.utils.timeutils import timedelta_seconds
 from celery.utils.timeutils import timedelta_seconds
 
 
 from celery.tests.case import Case
 from celery.tests.case import Case

+ 4 - 4
celery/tests/utils/test_datastructures.py

@@ -6,14 +6,14 @@ from billiard.einfo import ExceptionInfo
 from mock import Mock, patch
 from mock import Mock, patch
 from time import time
 from time import time
 
 
-from celery.five import items
-from celery.utils.datastructures import (
+from celery.datastructures import (
     LimitedSet,
     LimitedSet,
     AttributeDict,
     AttributeDict,
     DictAttribute,
     DictAttribute,
     ConfigurationView,
     ConfigurationView,
     DependencyGraph,
     DependencyGraph,
 )
 )
+from celery.five import items
 
 
 from celery.tests.case import Case, WhateverIO
 from celery.tests.case import Case, WhateverIO
 
 
@@ -209,11 +209,11 @@ class test_LimitedSet(Case):
         s = LimitedSet(maxlen=None)
         s = LimitedSet(maxlen=None)
         [s.add(i) for i in range(10)]
         [s.add(i) for i in range(10)]
         s.maxlen = 2
         s.maxlen = 2
-        with patch('celery.utils.datastructures.heappop') as hp:
+        with patch('celery.datastructures.heappop') as hp:
             hp.side_effect = IndexError()
             hp.side_effect = IndexError()
             s.purge()
             s.purge()
             hp.assert_called_with(s._heap)
             hp.assert_called_with(s._heap)
-        with patch('celery.utils.datastructures.heappop') as hp:
+        with patch('celery.datastructures.heappop') as hp:
             s._data = dict((i * 2, i * 2) for i in range(10))
             s._data = dict((i * 2, i * 2) for i in range(10))
             s.purge()
             s.purge()
             self.assertEqual(hp.call_count, 10)
             self.assertEqual(hp.call_count, 10)

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

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

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

@@ -9,10 +9,10 @@ from datetime import datetime, timedelta
 from kombu import pidbox
 from kombu import pidbox
 from mock import Mock, patch, call
 from mock import Mock, patch, call
 
 
+from celery.datastructures import AttributeDict
 from celery.five import Queue as FastQueue
 from celery.five import Queue as FastQueue
 from celery.task import task
 from celery.task import task
 from celery.utils import uuid
 from celery.utils import uuid
-from celery.utils.datastructures import AttributeDict
 from celery.utils.timer2 import Timer
 from celery.utils.timer2 import Timer
 from celery.worker import WorkController as _WC
 from celery.worker import WorkController as _WC
 from celery.worker import consumer
 from celery.worker import consumer

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

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

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

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

+ 1 - 1
celery/worker/pidbox.py

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

+ 1 - 1
celery/worker/state.py

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

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


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

@@ -35,6 +35,7 @@
     celery.task.trace
     celery.task.trace
     celery.app.annotations
     celery.app.annotations
     celery.app.routes
     celery.app.routes
+    celery.datastructures
     celery.security.certificate
     celery.security.certificate
     celery.security.key
     celery.security.key
     celery.security.serialization
     celery.security.serialization
@@ -45,7 +46,6 @@
     celery.backends.database.models
     celery.backends.database.models
     celery.backends.database.session
     celery.backends.database.session
     celery.utils
     celery.utils
-    celery.utils.datastructures
     celery.utils.functional
     celery.utils.functional
     celery.utils.objects
     celery.utils.objects
     celery.utils.term
     celery.utils.term