summaryrefslogtreecommitdiff
path: root/dev-python/celery
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-python/celery
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-python/celery')
-rw-r--r--dev-python/celery/Manifest12
-rw-r--r--dev-python/celery/celery-3.1.24-r1.ebuild108
-rw-r--r--dev-python/celery/celery-4.0.2.ebuild112
-rw-r--r--dev-python/celery/celery-4.1.0.ebuild108
-rw-r--r--dev-python/celery/files/celery-3.1.19-test.patch16
-rw-r--r--dev-python/celery/files/celery-4.0.2-log-endless-loop.patch22
-rw-r--r--dev-python/celery/files/celery-docs.patch19
-rw-r--r--dev-python/celery/files/celery.confd-r251
-rw-r--r--dev-python/celery/files/celery.initd-r2205
-rw-r--r--dev-python/celery/metadata.xml17
10 files changed, 670 insertions, 0 deletions
diff --git a/dev-python/celery/Manifest b/dev-python/celery/Manifest
new file mode 100644
index 000000000000..a9d9d363c8ca
--- /dev/null
+++ b/dev-python/celery/Manifest
@@ -0,0 +1,12 @@
+AUX celery-3.1.19-test.patch 767 BLAKE2B 83f9677b24a167b3183ef05376bfccbcf88af2096a83d160dcbf59ecf07b84681f99ffc32e46967fc912183626ebc1d9cdee01dba3f206d2fa4ecf6ae881ed56 SHA512 c9737f8d38bc039d88a02f3666dd872624d96fb0e0d02ceff5313d2379a708aec84755fbd9b5883766b29957838385efd5963e175a20350484d3f77e7bb6c9c7
+AUX celery-4.0.2-log-endless-loop.patch 811 BLAKE2B 084a4462225445e0a5d691c5547e00a70ee900f848a1b8c4ed3a7077f15aff9a36b9e6c3a3dce90b2e0c5b7a71d7602c34672663543ea74d7cf93b0d2378a758 SHA512 c6ddc3a5ec8f76affa953747b6f5b00627132f19cc74a89e6f9b0d24a5831722f7110d3cec7e4a4f7b58a575bcc2454406e486faa0a50c03cc80a3c82c94b282
+AUX celery-docs.patch 779 BLAKE2B 794fb995dbf4e3ea52b789c183004ef417401566604951ada10f72682264354a15c3c7bb7949e641ee93d6bfdb887bd76e79d10a18ed486772b55ba035034b8f SHA512 813d3a772ce0ab19854519915f770d5785371f9d8b0c916e93a286383c4262f0c6a9e554c5d76fc0d81e53efbdc8ed4a7a7009ae07c71489e30464d7b0de6ef1
+AUX celery.confd-r2 1442 BLAKE2B df6ab3585c12fef2272979ad3412f08827f59e9306b7b997642ee8bd0d4c84b168f32fd9b6427be3c889af411806d37673853588999d366b549908891491bd6e SHA512 ba3172e56a18df963b5886497c51b8aaf5298b5f3055214217561c8c691678b44c762d4f68f96e597807630af4d9185b7a9d557d13f7ffe25fc0092abcd09354
+AUX celery.initd-r2 4303 BLAKE2B 259821a93fc84c45580e06bcb4aa36b72a26290c917afea86b6e095489a1abde7b00f3ed91fa699452b4b7635d71bd72fd12ef9f46a3452f1f0d69c841c83b29 SHA512 722b5d526cad15589a4c26c4871c11255f8f1550b6d6a9d503962c07a6c60167d411f47135d55408acb6320636f885fff28e7691d74831ec1c2bb9d5dc48f3e2
+DIST celery-3.1.24.tar.gz 1330180 BLAKE2B 58e0643f4fcc8838cc2515e68a03c219ee7bab95bf4ecc2096ffe8ff275f2c2f0f5cb602a29c57b5e232cff8489b15143a1b76730018a5ff3d6063f5bd6f6af2 SHA512 6f2e1c5fe417183bc44f39deee669957800b805790475bea1c93d9efb37e0bb6db5aed9606ff79350f404c145908e3af6fa5ce94d86fb70238f2c2f2425ddd3c
+DIST celery-4.0.2.tar.gz 1337804 BLAKE2B b040ada555d02c2c943ac86211b06d03e738db586fc811fed5cf6c6c1a4d6945c909e04444170da4d00dfd0f874b0723bff1f18d01ab8d557f989edaadfe03c9 SHA512 1110b634cafa13f9d9ab0b0a7a17042325271bd5ea45a5f442e36e871db87b87e3f496d54b771d274a1676900d9dfdc7e21887943dfd1a299a9fcd8b3f6d2189
+DIST celery-4.1.0.tar.gz 1331689 BLAKE2B ac134d26a21bfd1172ea7a2ccc5f9934b4fdf56dccb6f840726040adf5b81ab0c675c0c93754340c0429c4eb5777a344be74415a795a9dd6654578979609cecd SHA512 5232adc43ba55d01f2b030382075750033e0c5c2abdc8308903e0cef7a465513b7765e2ae495da6555b377452ae233500530ef9d57e584a5352a54c5f4731c64
+EBUILD celery-3.1.24-r1.ebuild 3482 BLAKE2B 4538afe2f8b0e962c6145c92825badc7c77c13dfc3391e724562ec74789beddb0157932c21a765b6526426c5166efcc5b94fb7198691fa93e5b4bcae7f492f08 SHA512 8d6106606edcec4e54a0a1036b7c5c03b5017c313b9c7b9b0d959260829e4434ea7b090769bc06f57a397fd12431237fde3e1d845b4de4a1cd3db5695aebbfad
+EBUILD celery-4.0.2.ebuild 3553 BLAKE2B c4c7602e9ac2b231c9ebd7dd3c8d491d65e645413cab98b59fff3f689b89467849f46296c396f986c1f89e489a7eae96f8132da27b6d36dd9894e60a81dbef67 SHA512 b1a3ece067c63401684fe380f2078da4953b1bba7838daa4a57e85f2893508d180e483a1da1e235fa17498434ea312d278c72641f94bfd3b7dd616295fa5ab6d
+EBUILD celery-4.1.0.ebuild 3495 BLAKE2B 2f910a5e9cdcab171166bcf309799064e4b4b8434921d08db5052de064421533005655cae9091b40e4b1b22bb097a3aff6ef63b7b253bc5782236c65dd68c81b SHA512 eb670377abe1f96a5bd5a7367920a8b89e385df15353a2ed976db5bcce12c164f02183ee8c4ba406d9d53f60ef3a873f687bb960925cae6a6b63cb2c7f04a677
+MISC metadata.xml 598 BLAKE2B bc341fa57796448fd24ccdc7cc6aab80c4208fd70ed73a3d2d2387ecdcc91ecb9ef862794b204d404386e8d6508387fc5aabd0b1895674e717073c6403ef870e SHA512 3edfde62756b7f2ab3d138fd297bf7335b238d027dd1d6a261533979f48b05fa4913b0f43a766075fc106c59b1ddd43cb6ba21aaf9c67311b0ba3df00f20975c
diff --git a/dev-python/celery/celery-3.1.24-r1.ebuild b/dev-python/celery/celery-3.1.24-r1.ebuild
new file mode 100644
index 000000000000..57b09e0c912f
--- /dev/null
+++ b/dev-python/celery/celery-3.1.24-r1.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 python3_{4,5} )
+
+inherit distutils-r1 bash-completion-r1
+
+DESCRIPTION="Asynchronous task queue/job queue based on distributed message passing"
+HOMEPAGE="http://celeryproject.org/ https://pypi.org/project/celery/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 x86"
+# There are a number of other optional 'extras' which overlap with those of kombu, however
+# there has been no apparent expression of interest or demand by users for them. See requires.txt
+IUSE="doc examples redis sqs test yaml zeromq"
+
+RDEPEND="
+ <dev-python/kombu-3.1[${PYTHON_USEDEP}]
+ >=dev-python/kombu-3.0.36[${PYTHON_USEDEP}]
+ >=dev-python/anyjson-0.3.3[${PYTHON_USEDEP}]
+ >=dev-python/billiard-3.3.0.23[${PYTHON_USEDEP}]
+ <dev-python/billiard-3.4[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/greenlet[${PYTHON_USEDEP}]
+"
+
+DEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? ( ${RDEPEND}
+ dev-python/gevent[$(python_gen_usedep python2_7)]
+ >=dev-python/mock-1.0.1[${PYTHON_USEDEP}]
+ dev-python/nose-cover3[${PYTHON_USEDEP}]
+ >=dev-python/pymongo-2.6.2[${PYTHON_USEDEP}]
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.1[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ dev-python/redis-py[${PYTHON_USEDEP}]
+ >=dev-db/redis-2.8.0
+ >=dev-python/boto-2.13.3[${PYTHON_USEDEP}]
+ >=dev-python/pyzmq-13.1.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
+ )
+ doc? (
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ )"
+
+PATCHES=(
+ "${FILESDIR}"/celery-docs.patch
+ "${FILESDIR}"/${PN}-3.1.19-test.patch
+)
+
+# testsuite needs it own source
+DISTUTILS_IN_SOURCE_BUILD=1
+
+python_compile_all() {
+ if use doc; then
+ mkdir docs/.build || die
+ emake -C docs html
+ fi
+}
+
+python_test() {
+ nosetests --verbose || die "Tests failed with ${EPYTHON}"
+}
+
+python_install_all() {
+ # Main celeryd init.d and conf.d
+ newinitd "${FILESDIR}/celery.initd-r2" celery
+ newconfd "${FILESDIR}/celery.confd-r2" celery
+
+ use examples && local EXAMPLES=( examples/. )
+
+ use doc && local HTML_DOCS=( docs/.build/html/. )
+
+ newbashcomp extra/bash-completion/celery.bash ${PN}
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature "zookeper support" dev-python/kazoo
+ optfeature "msgpack support" dev-python/msgpack
+ #optfeature "rabbitmq support" dev-python/librabbitmq
+ #optfeature "slmq support" dev-python/softlayer_messaging
+ optfeature "eventlet support" dev-python/eventlet
+ #optfeature "couchbase support" dev-python/couchbase
+ optfeature "redis support" dev-db/redis dev-python/redis-py
+ optfeature "couchdb support" dev-db/couchdb dev-python/couchdb-python
+ optfeature "gevent support" dev-python/gevent
+ optfeature "auth support" dev-python/pyopenssl
+ optfeature "pyro support" dev-python/pyro:4
+ optfeature "yaml support" dev-python/pyyaml
+ optfeature "beanstalk support" dev-python/beanstalkc
+ optfeature "memcache support" dev-python/pylibmc
+ #optfeature "threads support" dev-python/threadpool
+ optfeature "mongodb support" dev-python/pymongo
+ optfeature "zeromq support" dev-python/pyzmq
+ optfeature "sqlalchemy support" dev-python/sqlalchemy
+ optfeature "sqs support" dev-python/boto
+ #optfeature "cassandra support" dev-python/pycassa
+}
diff --git a/dev-python/celery/celery-4.0.2.ebuild b/dev-python/celery/celery-4.0.2.ebuild
new file mode 100644
index 000000000000..762d6dc8a342
--- /dev/null
+++ b/dev-python/celery/celery-4.0.2.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+
+inherit distutils-r1 bash-completion-r1
+
+DESCRIPTION="Asynchronous task queue/job queue based on distributed message passing"
+HOMEPAGE="http://celeryproject.org/ https://pypi.org/project/celery/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# There are a number of other optional 'extras' which overlap with those of kombu, however
+# there has been no apparent expression of interest or demand by users for them. See requires.txt
+IUSE="doc examples redis sqs test yaml"
+
+RDEPEND="
+ <dev-python/kombu-5.0[${PYTHON_USEDEP}]
+ >=dev-python/kombu-4.0.2[${PYTHON_USEDEP}]
+ >=dev-python/billiard-3.5.0.2[${PYTHON_USEDEP}]
+ <dev-python/billiard-3.6.0[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/greenlet[${PYTHON_USEDEP}]
+ dev-python/vine[${PYTHON_USEDEP}]
+"
+
+DEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? ( ${RDEPEND}
+ >=dev-python/case-1.3.1[${PYTHON_USEDEP}]
+ dev-python/eventlet[${PYTHON_USEDEP}]
+ dev-python/gevent[$(python_gen_usedep python2_7)]
+ >=dev-python/pymongo-2.6.2[${PYTHON_USEDEP}]
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ >=dev-python/pytest-3.0[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.1[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ dev-python/redis-py[${PYTHON_USEDEP}]
+ >=dev-db/redis-2.8.0
+ >=dev-python/boto-2.13.3[${PYTHON_USEDEP}]
+ >=dev-python/pyzmq-13.1.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
+ >=dev-python/unittest2-0.5.1[${PYTHON_USEDEP}]
+ )
+ doc? (
+ dev-python/docutils[${PYTHON_USEDEP}]
+ >=dev-python/sphinx_celery-1.3[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep 'dev-python/typing[${PYTHON_USEDEP}]' python2_7 python3_4)
+ )"
+
+# testsuite needs it own source
+DISTUTILS_IN_SOURCE_BUILD=1
+
+PATCHES=(
+ "${FILESDIR}"/${P}-log-endless-loop.patch
+ )
+
+python_compile_all() {
+ if use doc; then
+ mkdir docs/.build || die
+ emake -C docs html
+ fi
+}
+
+python_test() {
+ esetup.py test
+}
+
+python_install_all() {
+ # Main celeryd init.d and conf.d
+ newinitd "${FILESDIR}/celery.initd-r2" celery
+ newconfd "${FILESDIR}/celery.confd-r2" celery
+
+ if use examples; then
+ docompress -x "/usr/share/doc/${PF}/examples"
+ docinto examples
+ dodoc -r examples/.
+ fi
+
+ use doc && local HTML_DOCS=( docs/_build/html/. )
+
+ newbashcomp extra/bash-completion/celery.bash ${PN}
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature "zookeeper support" dev-python/kazoo
+ optfeature "msgpack support" dev-python/msgpack
+ #optfeature "rabbitmq support" dev-python/librabbitmq
+ #optfeature "slmq support" dev-python/softlayer_messaging
+ optfeature "eventlet support" dev-python/eventlet
+ #optfeature "couchbase support" dev-python/couchbase
+ optfeature "redis support" dev-db/redis dev-python/redis-py
+ optfeature "couchdb support" dev-db/couchdb dev-python/couchdb-python
+ optfeature "gevent support" dev-python/gevent
+ optfeature "auth support" dev-python/pyopenssl
+ optfeature "pyro support" dev-python/pyro:4
+ optfeature "yaml support" dev-python/pyyaml
+ optfeature "memcache support" dev-python/pylibmc
+ #optfeature "threads support" dev-python/threadpool
+ optfeature "mongodb support" dev-python/pymongo
+ optfeature "sqlalchemy support" dev-python/sqlalchemy
+ optfeature "sqs support" dev-python/boto
+ #optfeature "cassandra support" dev-python/pycassa
+}
diff --git a/dev-python/celery/celery-4.1.0.ebuild b/dev-python/celery/celery-4.1.0.ebuild
new file mode 100644
index 000000000000..6ad15fdc11b6
--- /dev/null
+++ b/dev-python/celery/celery-4.1.0.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+
+inherit distutils-r1 bash-completion-r1
+
+DESCRIPTION="Asynchronous task queue/job queue based on distributed message passing"
+HOMEPAGE="http://celeryproject.org/ https://pypi.org/project/celery/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~x86"
+# There are a number of other optional 'extras' which overlap with those of kombu, however
+# there has been no apparent expression of interest or demand by users for them. See requires.txt
+IUSE="doc examples redis sqs test yaml"
+
+RDEPEND="
+ <dev-python/kombu-5.0[${PYTHON_USEDEP}]
+ >=dev-python/kombu-4.0.2[${PYTHON_USEDEP}]
+ >=dev-python/billiard-3.5.0.2[${PYTHON_USEDEP}]
+ <dev-python/billiard-3.6.0[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/greenlet[${PYTHON_USEDEP}]
+ dev-python/vine[${PYTHON_USEDEP}]
+"
+
+DEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? ( ${RDEPEND}
+ >=dev-python/case-1.3.1[${PYTHON_USEDEP}]
+ dev-python/eventlet[${PYTHON_USEDEP}]
+ dev-python/gevent[$(python_gen_usedep python2_7)]
+ >=dev-python/pymongo-2.6.2[${PYTHON_USEDEP}]
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ >=dev-python/pytest-3.0[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.1[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ dev-python/redis-py[${PYTHON_USEDEP}]
+ >=dev-db/redis-2.8.0
+ >=dev-python/boto-2.13.3[${PYTHON_USEDEP}]
+ >=dev-python/pyzmq-13.1.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
+ >=dev-python/unittest2-0.5.1[${PYTHON_USEDEP}]
+ )
+ doc? (
+ dev-python/docutils[${PYTHON_USEDEP}]
+ >=dev-python/sphinx_celery-1.3[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep 'dev-python/typing[${PYTHON_USEDEP}]' python2_7 python3_4)
+ )"
+
+# testsuite needs it own source
+DISTUTILS_IN_SOURCE_BUILD=1
+
+python_compile_all() {
+ if use doc; then
+ mkdir docs/.build || die
+ emake -C docs html
+ fi
+}
+
+python_test() {
+ esetup.py test
+}
+
+python_install_all() {
+ # Main celeryd init.d and conf.d
+ newinitd "${FILESDIR}/celery.initd-r2" celery
+ newconfd "${FILESDIR}/celery.confd-r2" celery
+
+ if use examples; then
+ docompress -x "/usr/share/doc/${PF}/examples"
+ docinto examples
+ dodoc -r examples/.
+ fi
+
+ use doc && local HTML_DOCS=( docs/_build/html/. )
+
+ newbashcomp extra/bash-completion/celery.bash ${PN}
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature "zookeeper support" dev-python/kazoo
+ optfeature "msgpack support" dev-python/msgpack
+ #optfeature "rabbitmq support" dev-python/librabbitmq
+ #optfeature "slmq support" dev-python/softlayer_messaging
+ optfeature "eventlet support" dev-python/eventlet
+ #optfeature "couchbase support" dev-python/couchbase
+ optfeature "redis support" dev-db/redis dev-python/redis-py
+ optfeature "couchdb support" dev-db/couchdb dev-python/couchdb-python
+ optfeature "gevent support" dev-python/gevent
+ optfeature "auth support" dev-python/pyopenssl
+ optfeature "pyro support" dev-python/pyro:4
+ optfeature "yaml support" dev-python/pyyaml
+ optfeature "memcache support" dev-python/pylibmc
+ #optfeature "threads support" dev-python/threadpool
+ optfeature "mongodb support" dev-python/pymongo
+ optfeature "sqlalchemy support" dev-python/sqlalchemy
+ optfeature "sqs support" dev-python/boto
+ #optfeature "cassandra support" dev-python/pycassa
+}
diff --git a/dev-python/celery/files/celery-3.1.19-test.patch b/dev-python/celery/files/celery-3.1.19-test.patch
new file mode 100644
index 000000000000..25b41456a0ce
--- /dev/null
+++ b/dev-python/celery/files/celery-3.1.19-test.patch
@@ -0,0 +1,16 @@
+https://github.com/celery/celery/commit/fb48b1f357f7a416d1413d0056158a74191185af.diff
+diff --git a/celery/tests/backends/test_mongodb.py b/celery/tests/backends/test_mongodb.py
+index f7546d3..a32d9ed 100644
+--- a/celery/tests/backends/test_mongodb.py
++++ b/celery/tests/backends/test_mongodb.py
+@@ -253,8 +253,8 @@ def test_restore_group(self, mock_get_database):
+ mock_collection.find_one.assert_called_once_with(
+ {'_id': sentinel.taskset_id})
+ self.assertItemsEqual(
+- ['date_done', 'result', 'task_id'],
+- list(ret_val.keys()),
++ list(sorted(['date_done', 'result', 'task_id'])),
++ list(sorted(ret_val.keys())),
+ )
+
+ @patch('celery.backends.mongodb.MongoBackend._get_database')
diff --git a/dev-python/celery/files/celery-4.0.2-log-endless-loop.patch b/dev-python/celery/files/celery-4.0.2-log-endless-loop.patch
new file mode 100644
index 000000000000..bf9396e45a39
--- /dev/null
+++ b/dev-python/celery/files/celery-4.0.2-log-endless-loop.patch
@@ -0,0 +1,22 @@
+From 9c950b47eca2b4e93fd2fe52cf80f158e6cf97ad Mon Sep 17 00:00:00 2001
+From: George Psarakis <giwrgos.psarakis@gmail.com>
+Date: Mon, 23 Jan 2017 11:49:38 +0200
+Subject: [PATCH] AWS DynamoDB result backend (#3736)
+
+* Fix endless loop in logger_isa (Python 3.6)
+
+https://github.com/celery/celery/pull/3736#issuecomment-274155454
+
+diff --git a/celery/utils/log.py b/celery/utils/log.py
+index 2fb15e6..00df476 100644
+--- a/celery/utils/log.py
++++ b/celery/utils/log.py
+@@ -82,7 +82,7 @@ def logger_isa(l, p, max=1000):
+ else:
+ if this in seen:
+ raise RuntimeError(
+- 'Logger {0!r} parents recursive'.format(l),
++ 'Logger {0!r} parents recursive'.format(l.name),
+ )
+ seen.add(this)
+ this = this.parent
diff --git a/dev-python/celery/files/celery-docs.patch b/dev-python/celery/files/celery-docs.patch
new file mode 100644
index 000000000000..5e09718feb2c
--- /dev/null
+++ b/dev-python/celery/files/celery-docs.patch
@@ -0,0 +1,19 @@
+# Prevent un-needed objects.inv files
+diff -ur celery-3.0.19.orig/docs/conf.py celery-3.0.19/docs/conf.py
+--- docs/conf.py 2013-04-15 22:51:46.000000000 +0800
++++ docs/conf.py 2013-04-27 21:46:25.070423582 +0800
+@@ -74,14 +74,6 @@
+ # If true, '()' will be appended to :func: etc. cross-reference text.
+ add_function_parentheses = True
+
+-intersphinx_mapping = {
+- 'python': ('http://docs.python.org/dev', None),
+- 'kombu': ('http://kombu.readthedocs.org/en/latest/', None),
+- 'djcelery': ('http://django-celery.readthedocs.org/en/latest', None),
+- 'cyme': ('http://cyme.readthedocs.org/en/latest', None),
+- 'amqp': ('http://amqp.readthedocs.org/en/latest', None),
+-}
+-
+ # The name of the Pygments (syntax highlighting) style to use.
+ pygments_style = 'colorful'
+
diff --git a/dev-python/celery/files/celery.confd-r2 b/dev-python/celery/files/celery.confd-r2
new file mode 100644
index 000000000000..d5ba2f7c9951
--- /dev/null
+++ b/dev-python/celery/files/celery.confd-r2
@@ -0,0 +1,51 @@
+# /etc/conf.d/celery
+
+##############################################################################
+# GLOBAL CONFIGURATION
+
+# User and group
+#CELERY_USER="celery"
+#CELERY_GROUP="celery"
+
+# This is generaly a good idea to set the environment correctly
+# because a lot of python package try to use HOME on init
+#export HOME="/var/lib/myproject"
+
+# Full path to the python project directory.
+#CELERY_PROJDIR="/var/lib/myproject"
+
+##############################################################################
+# CELERYD
+
+# Start the Celery worker daemon
+#CELERYD_ENABLED="yes"
+
+# celeryd notes
+#CELERYD_NODES="celery"
+
+# celeryd options
+# Example: set a 5 minute hard time limit for tasks, disable queue process prefetching and specify an app module from CELERY_PROJDIR
+#CELERYD_OPTS="--time-limit=300 -Ofair -A celeryapp"
+
+# Location and level of the celeryd log file
+#CELERYD_LOG_FILE=/var/log/celery/celeryd@%n.log
+#CELERYD_LOG_LEVEL="INFO"
+
+# Location of the celeryd pid file
+#CELERYD_PID_FILE=/run/celery/celeryd@%n.pid
+
+##############################################################################
+# CELERYBEAT
+
+# Start the Celery task scheduler daemon
+#CELERYBEAT_ENABLED="yes"
+
+# celerybeat options
+#CELERYBEAT_OPTS=""
+
+# Location and level of the celerybeat log file
+#CELERYBEAT_LOG_FILE=/var/log/celery/celerybeat.log
+#CELERYBEAT_LOG_LEVEL="INFO"
+
+# Location of the celerybeat pid file
+#CELERYBEAT_PID_FILE=/run/celery/celerybeat.pid
diff --git a/dev-python/celery/files/celery.initd-r2 b/dev-python/celery/files/celery.initd-r2
new file mode 100644
index 000000000000..f34c136691b0
--- /dev/null
+++ b/dev-python/celery/files/celery.initd-r2
@@ -0,0 +1,205 @@
+#!/sbin/openrc-run
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the BSD license
+
+extra_started_commands="reload"
+
+depend() {
+ need net
+ use rabbitmq redis logger dns
+}
+
+CELERYD_ENABLED=${CELERYD_ENABLED:-"no"}
+CELERYD_PID_FILE=${CELERYD_PID_FILE:-"/run/celery/celeryd@%n.pid"}
+CELERYD_LOG_FILE=${CELERYD_LOG_FILE:-"/var/log/celery/celeryd@%n.log"}
+CELERYD_LOG_LEVEL=${CELERYD_LOG_LEVEL:-"INFO"}
+CELERYD_NODES=${CELERYD_NODES:-"celery"}
+
+CELERYBEAT_ENABLED=${CELERYBEAT_ENABLED:-"no"}
+CELERYBEAT_PID_FILE=${CELERYBEAT_PID_FILE:-"/run/celery/celerybeat.pid"}
+CELERYBEAT_LOG_FILE=${CELERYBEAT_LOG_FILE:-"/var/log/celery/celerybeat.log"}
+CELERYBEAT_LOG_LEVEL=${CELERYBEAT_LOG_LEVEL:-"INFO"}
+
+export CELERY_LOADER
+
+CELERYD_MULTI=${CELERYD_MULTI:-"celery multi"}
+CELERYCTL=${CELERYCTL:-"celery"}
+CELERYBEAT=${CELERYBEAT:-"celery beat"}
+
+CELERYD_OPTS="${CELERYD_OPTS}"
+CELERYBEAT_OPTS="${CELERYBEAT_OPTS} -f ${CELERYBEAT_LOG_FILE} -l ${CELERYBEAT_LOG_LEVEL}"
+
+create_dirs() {
+ local logfile="${1}"
+ local pidfile="${2}"
+ local logdir=$(dirname ${logfile})
+ local piddir=$(dirname ${pidfile})
+
+ checkpath -d -q -m 0750 -o ${CELERY_USER:-"root"}:${CELERY_GROUP:-"root"} ${logdir} ${piddir}
+}
+
+[ -n "${CELERY_USER}" ] && DAEMON_OPTS="${DAEMON_OPTS} --uid=${CELERY_USER}"
+[ -n "${CELERY_GROUP}" ] && DAEMON_OPTS="${DAEMON_OPTS} --gid=${CELERY_GROUP}"
+
+checkconfig() {
+ if [ ! -c /dev/null ]; then
+ eerror "/dev/null is not a character device!"
+ return 1
+ fi
+
+ if [ -z "${CELERY_PROJDIR}" ]; then
+ eerror "Missing CELERY_PROJDIR variable"
+ return 1
+ fi
+
+ yesno "${CELERYD_ENABLED}" && \
+ create_dirs "${CELERYD_LOG_FILE}" "${CELERYD_PID_FILE}"
+
+ yesno "${CELERYBEAT_ENABLED}" && \
+ create_dirs "${CELERYBEAT_LOG_FILE}" "${CELERYBEAT_PID_FILE}"
+
+ return 0
+}
+
+celery_chdir() {
+ [ -n "${CELERY_PROJDIR}" ] && cd "${CELERY_PROJDIR}"
+}
+
+wait_pid () {
+ local pidfile=${1}
+ local timeout=${STOPTIMEOUT:-"10"}
+ local PID=$(cat "${pidfile}" 2>/dev/null)
+
+ while [ -n "${PID}" ] && [ "${timeout}" -ge 1 ]; do
+ kill -0 ${PID} 2>/dev/null || break
+ kill -TERM "${PID}"
+ timeout=$((${timeout} - 1))
+ sleep 0.5
+ done
+
+ [ "${timeout}" -lt 1 ] && return 1
+ [ -f ${pidfile} ] && rm -f ${pidfile}
+ return 0
+}
+
+# celeryd
+start_workers() {
+ yesno "${CELERYD_ENABLED}" || return 0
+
+ ${CELERYD_MULTI} start ${CELERYD_NODES} ${DAEMON_OPTS} \
+ --pidfile="${CELERYD_PID_FILE}" \
+ --logfile="${CELERYD_LOG_FILE}" \
+ --loglevel="${CELERYD_LOG_LEVEL}" \
+ ${CELERYD_OPTS}
+}
+
+stop_workers() {
+ yesno "${CELERYD_ENABLED}" || return 0
+
+ local timeout=${STOPTIMEOUT:-"10"}
+
+ ${CELERYD_MULTI} stop ${CELERYD_NODES} --pidfile="${CELERYD_PID_FILE}" || return 1
+
+ # Wait for each node
+ for node in ${CELERYD_NODES}; do
+ local pidfile=${CELERYD_PID_FILE/\%n/${node}}
+ local PID=$(cat "${pidfile}" 2>/dev/null)
+ while [ -n "${PID}" ] && [ "${timeout}" -ge 1 ]; do
+ kill -0 ${PID} 2>/dev/null || break
+ timeout=$((${timeout} - 1))
+ sleep 0.5
+ done
+ done
+
+ [ "${timeout}" -lt 1 ] && return 1
+ return 0
+}
+
+restart_workers() {
+ yesno "${CELERYD_ENABLED}" || return 0
+
+ ${CELERYD_MULTI} restart ${CELERYD_NODES} ${DAEMON_OPTS} \
+ --pidfile="${CELERYD_PID_FILE}" \
+ --logfile="${CELERYD_LOG_FILE}" \
+ --loglevel="${CELERYD_LOG_LEVEL}" \
+ ${CELERYD_OPTS}
+}
+
+# celerybeat
+start_beat() {
+ yesno "${CELERYBEAT_ENABLED}" || return 0
+
+ ebegin "Starting celerybeat"
+ ${CELERYBEAT} ${CELERYBEAT_OPTS} ${DAEMON_OPTS} --detach \
+ --pidfile="${CELERYBEAT_PID_FILE}"
+ eend ${?}
+}
+
+
+stop_beat() {
+ yesno "${CELERYBEAT_ENABLED}" || return 0
+
+ ebegin "Stopping celerybeat"
+ if [ -f "${CELERYBEAT_PID_FILE}" ]; then
+ wait_pid "${CELERYBEAT_PID_FILE}"
+ else
+ ewarn "not running"
+ fi
+ eend ${?}
+}
+
+
+start() {
+ local cr=0
+
+ checkconfig || return 1
+
+ ebegin "Starting ${SVCNAME}"
+ eindent
+
+ celery_chdir && \
+ start_workers && \
+ start_beat || cr=1
+
+ eoutdent
+ eend ${cr}
+}
+
+stop() {
+ local cr=0
+
+ checkconfig || return 1
+
+ ebegin "Stopping ${SVCNAME}"
+ eindent
+
+ celery_chdir
+ stop_workers || cr=1
+ stop_beat || cr=1
+
+ eoutdent
+ eend ${cr}
+}
+
+reload() {
+ local cr=0
+
+ checkconfig || return 1
+
+ ebegin "Restarting ${SVCNAME}"
+ eindent
+
+ celery_chdir
+ restart_workers || cr=1
+ stop_beat && start_beat || cr=1
+
+ eoutdent
+ eend ${cr}
+}
+
+status() {
+ checkconfig || return 1
+
+ celery_chdir && \
+ ${CELERYCTL} status
+}
diff --git a/dev-python/celery/metadata.xml b/dev-python/celery/metadata.xml
new file mode 100644
index 000000000000..a398d248e37d
--- /dev/null
+++ b/dev-python/celery/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ <name>Python</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">celery</remote-id>
+ </upstream>
+ <use>
+ <flag name="redis">Enables redis support</flag>
+ <flag name="sqs">Enables Amazon SQS transport module for celery</flag>
+ <flag name="zeromq">Enable logging and deployment via ZeroMQ</flag>
+ <flag name="yaml">Enable support of yaml as a configuration file format</flag>
+ </use>
+</pkgmetadata>