On Sun, Mar 26, 2017 at 06:29:04PM +0300, Frederick Muriithi wrote:
> I don't really see a reason why not. I have to point out though, that when
> writing the definition, I found python-pytest-2.9.2 also defined, with a
> note that it's there until all packages can be upgraded to use a more
> recent pytest.
> 
> Since I don't know what the progress on that is, I decided to err on the
> side of caution, and just add it with a note on why it's needed.

I added pytest 2.9.2 when I realized that many packages are picky about
which version of pytest they can use.

I checked, and all the packages that are using pytest 2.9.2 can use
pytest 3.0.7 instead.

So, here's a patch that updates the newer pytest across the board. It
goes after your patch series, unless you want to rebase your patches on
to it.

Soon we'll do a "python-updates" branch where we try to default to the
newer pytest, and keep an older one around for the outliers.
From f44c8d0dec2af7677ad16cfad877fb73407b6c30 Mon Sep 17 00:00:00 2001
From: Leo Famulari <l...@famulari.name>
Date: Mon, 27 Mar 2017 03:10:53 -0400
Subject: [PATCH] gnu: python-pytest-2.9.2: Replace with python-pytest-3.0.

* gnu/packages/python.scm (python-pytest-2.9.2): Replace with ...
(python-pytest-3.0): ... new variable.
(python2-pytest-3.0): New variable.
(python-cryptography, python2-cryptography)[native-inputs]: Replace
python-pytest-2.9.2 with python-pytest-3.0.
* gnu/packages/backup.scm (borg)[native-inputs]: Likewise.
gnu/packages/calendar.scm (khal)[native-inputs]: Likewise.
---
 gnu/packages/backup.scm   |  2 +-
 gnu/packages/calendar.scm |  2 +-
 gnu/packages/python.scm   | 40 +++++++++++++++++-----------------------
 3 files changed, 19 insertions(+), 25 deletions(-)

diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index 7e9ae18f3..8e1f19515 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -529,7 +529,7 @@ detection, and lossless compression.")
        ("python-setuptools-scm" ,python-setuptools-scm)
        ;; Borg 1.0.8's test suite uses 'tmpdir_factory', which was introduced 
in
        ;; pytest 2.8.
-       ("python-pytest" ,python-pytest-2.9.2)
+       ("python-pytest" ,python-pytest-3.0)
        ;; For generating the documentation.
        ("python-sphinx" ,python-sphinx)
        ("python-sphinx-rtd-theme" ,python-sphinx-rtd-theme)))
diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm
index 1e9a93ca9..977111bfe 100644
--- a/gnu/packages/calendar.scm
+++ b/gnu/packages/calendar.scm
@@ -113,7 +113,7 @@ data units.")
             (zero? (system* "py.test" "tests")))))))
     (native-inputs
       ;; XXX Uses tmpdir_factory, introduced in pytest 2.8.
-     `(("python-pytest" ,python-pytest-2.9.2)
+     `(("python-pytest" ,python-pytest-3.0)
        ("python-pytest-cov" ,python-pytest-cov)
        ("python-setuptools-scm" ,python-setuptools-scm)
        ;; Required for tests
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 8788e9d77..12d298bbd 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -1818,19 +1818,18 @@ and many external plugins.")
 (define-public python2-pytest
   (package-with-python2 python-pytest))
 
-;; This package is used by Borg until we can upgrade all our Python packages to
-;; use a more recent pytest.
-(define-public python-pytest-2.9.2
+;; Some packages require a newer pytest.
+(define-public python-pytest-3.0
   (package
     (inherit python-pytest)
     (name "python-pytest")
-    (version "2.9.2")
+    (version "3.0.7")
     (source (origin
               (method url-fetch)
               (uri (pypi-uri "pytest" version))
               (sha256
                (base32
-                "1n6igbc1b138wx1q5gca4pqw1j6nsyicfxds5n0b5989kaxqmh8j"))))
+                "1asc4b2nd2a4f0g3r12y97rslq5wliji7b73wwkvdrm5s7mrc1mp"))))
     (arguments
      `(#:phases
        (modify-phases %standard-phases
@@ -1841,25 +1840,20 @@ and many external plugins.")
                 (string-append "@pytest.mark.skip"
                                "(reason=\"Assumes that /usr exists.\")\n    "
                                line)))
-             #t)))))))
-
-;; This package is used by Sphinx version 1.5.2 and up
-(define-public python-pytest-3.0.7
-  (package
-    (inherit python-pytest-2.9.2)
-    (name "python-pytest")
-    (version "3.0.7")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (pypi-uri "pytest" version))
-       (sha256
-        (base32
-         "1asc4b2nd2a4f0g3r12y97rslq5wliji7b73wwkvdrm5s7mrc1mp"))))
+             #t)))))
     (native-inputs
      `(("python-nose" ,python-nose)
        ("python-mock" ,python-mock)
-       ("python-hypothesis" ,python-hypothesis)))))
+       ("python-hypothesis" ,python-hypothesis)))
+    (properties `((python2-variant . ,(delay python2-pytest-3.0))))))
+
+(define-public python2-pytest-3.0
+  (let ((base (package-with-python2
+                (strip-python2-variant python-pytest-3.0))))
+    (package (inherit base)
+      (native-inputs
+        `(("python2-enum34" ,python2-enum34)
+          ,@(package-native-inputs base))))))
 
 (define-public python-pytest-cov
   (package
@@ -3119,7 +3113,7 @@ sources.")
        ("python-html5lib" ,python-html5lib)
        ("python-mock" ,python-mock)
        ("python-nose" ,python-nose)
-       ("python-pytest" ,python-pytest-3.0.7)))))
+       ("python-pytest" ,python-pytest-3.0)))))
 
 (define-public python-sphinx-1.5.3
   (package
@@ -7331,7 +7325,7 @@ responses, rather than doing any computation.")
        ("python-pyasn1" ,python-pyasn1)
        ("python-pyasn1-modules" ,python-pyasn1-modules)
        ("python-pytz" ,python-pytz)
-       ("python-pytest" ,python-pytest-2.9.2)))
+       ("python-pytest" ,python-pytest-3.0)))
     (home-page "https://github.com/pyca/cryptography";)
     (synopsis "Cryptographic recipes and primitives for Python")
     (description
-- 
2.12.0

Attachment: signature.asc
Description: PGP signature

Reply via email to