[bug#33702,2/2] gnu: python-celery: Update to 4.2.1.

Message ID 20181211170956.9381-2-mail@cbaines.net
State Accepted
Headers show
Series None | expand

Checks

Context Check Description
cbaines/applying patch success Successfully applied

Commit Message

Christopher Baines Dec. 11, 2018, 5:09 p.m. UTC
This is an attempt to get the package building after the update to Python
3.7. I'm not sure this totally works, as the tests detect an incompatibility
with Python 3.7 due to use of "async". But with the tests disabled, you can at
least import the celery module, which is a start.

* gnu/packages/python.scm (python-celery): Update to 4.2.1.
[arguments]: Switch to py.test, from nose, disable the tests and loosen the
requirements on pytest.
[native-inputs]: Remove python-nose, add python-pytest and python-case.
[home-page]: Change from HTTP to HTTPS.
---
 gnu/packages/python.scm | 24 ++++++++++++++----------
 1 file changed, 14 insertions(+), 10 deletions(-)

Patch

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 709916d42c..1e0af3ff6b 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -8419,31 +8419,35 @@  Python 2.4 and 2.5, and will draw its fixes/improvements from python-trunk.")
 (define-public python-celery
   (package
     (name "python-celery")
-    (version "3.1.24")
+    (version "4.2.1")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "celery" version))
        (sha256
         (base32
-         "0yh2prhdnx2dgkb67a5drj12hh2zvzx5f611p7mqqg01ydghif4r"))))
+         "0y66rz7z8dfcgs3s0qxmdddlaq57bzbgxgfz896nbp14grkv9nkp"))))
     (build-system python-build-system)
     (arguments
-     `(#:phases
+     '(;; TODO The tests fail with Python 3.7
+       ;; https://github.com/celery/celery/issues/4849
+       #:tests? #f
+       #:phases
        (modify-phases %standard-phases
-         ;; These tests break with Python 3.5:
-         ;; https://github.com/celery/celery/issues/2897#issuecomment-253066295
-         (replace 'check
+         (add-after 'unpack 'patch-requirements
            (lambda _
-             (zero?
-               (system* "nosetests" "--exclude=^test_safe_to_remove.*")))))))
+             (substitute* "requirements/test.txt"
+               (("pytest>=3\\.0,<3\\.3")
+                "pytest>=3.0"))
+             #t)))))
     (native-inputs
-     `(("python-nose" ,python-nose)))
+     `(("python-case" ,python-case)
+       ("python-pytest" ,python-pytest)))
     (propagated-inputs
      `(("python-pytz" ,python-pytz)
        ("python-billiard" ,python-billiard)
        ("python-kombu" ,python-kombu)))
-    (home-page "http://celeryproject.org")
+    (home-page "https://celeryproject.org")
     (synopsis "Distributed Task Queue")
     (description "Celery is an asynchronous task queue/job queue based on
 distributed message passing.  It is focused on real-time operation, but