|
@@ -5,16 +5,6 @@ import sys
|
|
|
import codecs
|
|
|
import platform
|
|
|
|
|
|
-extra = {}
|
|
|
-tests_require = ["nose", "nose-cover3", "sqlalchemy", "mock"]
|
|
|
-is_py3k = sys.version_info >= (3, 0)
|
|
|
-if is_py3k:
|
|
|
- extra.update(use_2to3=True)
|
|
|
-elif sys.version_info < (2, 7):
|
|
|
- tests_require.append("unittest2")
|
|
|
-elif sys.version_info <= (2, 5):
|
|
|
- tests_require.append("simplejson")
|
|
|
-
|
|
|
if sys.version_info < (2, 5):
|
|
|
raise Exception("Celery requires Python 2.5 or higher.")
|
|
|
|
|
@@ -28,7 +18,48 @@ except ImportError:
|
|
|
from setuptools import setup, find_packages # noqa
|
|
|
from setuptools.command.test import test # noqa
|
|
|
|
|
|
-# -- Parse meta
|
|
|
+NAME = "celery"
|
|
|
+entrypoints = {}
|
|
|
+extra = {}
|
|
|
+
|
|
|
+# -*- Classifiers -*-
|
|
|
+
|
|
|
+classes = """
|
|
|
+ Development Status :: 5 - Production/Stable
|
|
|
+ License :: OSI Approved :: BSD License
|
|
|
+ Topic :: System :: Distributed Computing
|
|
|
+ Topic :: Software Development :: Object Brokering
|
|
|
+ Intended Audience :: Developers
|
|
|
+ Intended Audience :: Information Technology
|
|
|
+ Intended Audience :: Science/Research
|
|
|
+ Intended Audience :: Financial and Insurance Industry
|
|
|
+ Intended Audience :: Healthcare Industry
|
|
|
+ Environment :: No Input/Output (Daemon)
|
|
|
+ Environment :: Console
|
|
|
+ Programming Language :: Python
|
|
|
+ Programming Language :: Python :: 2
|
|
|
+ Programming Language :: Python :: 2.5
|
|
|
+ Programming Language :: Python :: 2.6
|
|
|
+ Programming Language :: Python :: 2.7
|
|
|
+ Programming Language :: Python :: 3
|
|
|
+ Programming Language :: Python :: 3.2
|
|
|
+ Programming Language :: Python :: Implementation :: CPython
|
|
|
+ Programming Language :: Python :: Implementation :: PyPy
|
|
|
+ Programming Language :: Python :: Implementation :: Jython
|
|
|
+ Operating System :: OS Independent
|
|
|
+ Operating System :: POSIX
|
|
|
+ Operating System :: Microsoft :: Windows
|
|
|
+ Operating System :: MacOS :: MacOS X
|
|
|
+"""
|
|
|
+classifiers = [s.strip() for s in classes.split('\n') if s]
|
|
|
+
|
|
|
+# -*- Python 3 -*-
|
|
|
+is_py3k = sys.version_info >= (3, 0)
|
|
|
+if is_py3k:
|
|
|
+ extra.update(use_2to3=True)
|
|
|
+
|
|
|
+# -*- Distribution Meta -*-
|
|
|
+
|
|
|
import re
|
|
|
re_meta = re.compile(r'__(\w+?)__\s*=\s*(.*)')
|
|
|
re_vers = re.compile(r'VERSION\s*=\s*\((.*?)\)')
|
|
@@ -64,8 +95,8 @@ try:
|
|
|
meta.update(handler(m))
|
|
|
finally:
|
|
|
meta_fh.close()
|
|
|
-# --
|
|
|
|
|
|
+# -*- Custom Commands -*-
|
|
|
|
|
|
class quicktest(test):
|
|
|
extra_env = dict(SKIP_RLIMITS=1, QUICKTEST=1)
|
|
@@ -75,6 +106,8 @@ class quicktest(test):
|
|
|
os.environ[env_name] = str(env_value)
|
|
|
test.run(self, *args, **kwargs)
|
|
|
|
|
|
+# -*- Installation Dependencies -*-
|
|
|
+
|
|
|
install_requires = []
|
|
|
try:
|
|
|
import importlib # noqa
|
|
@@ -101,13 +134,24 @@ if is_jython:
|
|
|
install_requires.append("threadpool")
|
|
|
install_requires.append("simplejson")
|
|
|
|
|
|
+# -*- Tests Requires -*-
|
|
|
+
|
|
|
+tests_require = ["nose", "nose-cover3", "sqlalchemy", "mock"]
|
|
|
+if sys.version_info < (2, 7):
|
|
|
+ tests_require.append("unittest2")
|
|
|
+elif sys.version_info <= (2, 5):
|
|
|
+ tests_require.append("simplejson")
|
|
|
+
|
|
|
+# -*- Long Description -*-
|
|
|
+
|
|
|
if os.path.exists("README.rst"):
|
|
|
long_description = codecs.open("README.rst", "r", "utf-8").read()
|
|
|
else:
|
|
|
long_description = "See http://pypi.python.org/pypi/celery"
|
|
|
|
|
|
+# -*- Entry Points -*- #
|
|
|
|
|
|
-console_scripts = [
|
|
|
+console_scripts = entrypoints["console_scripts"] = [
|
|
|
'celerybeat = celery.bin.celerybeat:main',
|
|
|
'camqadm = celery.bin.camqadm:main',
|
|
|
'celeryev = celery.bin.celeryev:main',
|
|
@@ -119,6 +163,10 @@ if platform.system() == "Windows":
|
|
|
else:
|
|
|
console_scripts.append('celeryd = celery.bin.celeryd:main')
|
|
|
|
|
|
+# bundles: Only relevant for Celery developers.
|
|
|
+entrypoints["bundle.bundles"] = ["celery = celery.contrib.bundles:bundles"]
|
|
|
+
|
|
|
+# -*- %%% -*-
|
|
|
|
|
|
setup(
|
|
|
name="celery",
|
|
@@ -133,38 +181,9 @@ setup(
|
|
|
zip_safe=False,
|
|
|
install_requires=install_requires,
|
|
|
tests_require=tests_require,
|
|
|
- cmdclass={"test": test,
|
|
|
- "quicktest": quicktest},
|
|
|
test_suite="nose.collector",
|
|
|
- classifiers=[
|
|
|
- "Development Status :: 5 - Production/Stable",
|
|
|
- "License :: OSI Approved :: BSD License",
|
|
|
- "Topic :: System :: Distributed Computing",
|
|
|
- "Topic :: Software Development :: Object Brokering",
|
|
|
- "Intended Audience :: Developers",
|
|
|
- "Intended Audience :: Information Technology",
|
|
|
- "Intended Audience :: Science/Research",
|
|
|
- "Intended Audience :: Financial and Insurance Industry",
|
|
|
- "Intended Audience :: Healthcare Industry",
|
|
|
- "Environment :: No Input/Output (Daemon)",
|
|
|
- "Environment :: Console",
|
|
|
- "Programming Language :: Python",
|
|
|
- "Programming Language :: Python :: 2",
|
|
|
- "Programming Language :: Python :: 2.5",
|
|
|
- "Programming Language :: Python :: 2.6",
|
|
|
- "Programming Language :: Python :: 2.7",
|
|
|
- "Programming Language :: Python :: 3",
|
|
|
- "Programming Language :: Python :: 3.2",
|
|
|
- "Programming Language :: Python :: Implementation :: CPython",
|
|
|
- "Programming Language :: Python :: Implementation :: PyPy",
|
|
|
- "Programming Language :: Python :: Implementation :: Jython",
|
|
|
- "Operating System :: OS Independent",
|
|
|
- "Operating System :: POSIX",
|
|
|
- "Operating System :: Microsoft :: Windows",
|
|
|
- "Operating System :: MacOS :: MacOS X",
|
|
|
- ],
|
|
|
- entry_points={
|
|
|
- 'console_scripts': console_scripts,
|
|
|
- },
|
|
|
+ cmdclass={"quicktest": quicktest},
|
|
|
+ classifiers=classifiers,
|
|
|
+ entry_points=entrypoints,
|
|
|
long_description=long_description,
|
|
|
**extra)
|