From 1830eb76f37afd1065cb6167cbc4a6eb11f13b65 Mon Sep 17 00:00:00 2001
From: Eleni Mathioulaki <emathioulaki@athenarc.gr>
Date: Tue, 2 May 2023 10:09:45 +0000
Subject: [PATCH] use .whl for py-nose to drop dependency on py-setuptools@:57
 (#31)

---
 packages/py-neo/package.py        |  7 +++----
 packages/py-nose/package.py       | 20 ++++++++++++++++++++
 packages/py-quantities/package.py |  7 +++----
 3 files changed, 26 insertions(+), 8 deletions(-)
 create mode 100644 packages/py-nose/package.py

diff --git a/packages/py-neo/package.py b/packages/py-neo/package.py
index b41b0576..fae0da21 100644
--- a/packages/py-neo/package.py
+++ b/packages/py-neo/package.py
@@ -14,10 +14,7 @@ class PyNeo(PythonPackage):
     homepage = "https://neuralensemble.org/neo"
     pypi = "neo/neo-0.4.1.tar.gz"
 
-    # temporary fix to avoid building with py-setuptools@:61, that doesn't support PEP 621
-    version('0.12.0', sha256='758f1938b6e3d1a21e465265e6859dc925cc1f0a4a347658cd4bc6293b99545d',
-            url='https://pypi.io/packages/py3/n/neo/neo-0.12.0-py3-none-any.whl', expand=False)
-    # version('0.12.0', sha256='3b6ca4fc05dfdb4e953e253e70994bfbbc8fe2e90958fbda7fa5860caf3fa63a')
+    version('0.12.0', sha256='3b6ca4fc05dfdb4e953e253e70994bfbbc8fe2e90958fbda7fa5860caf3fa63a')
     version('0.11.1', sha256='f4a206044b332ad00b10072b0dc7a70b359fa365ec786f92ab757ef4ae588474')
     version('0.11.0', sha256='cdf8e1324a3fbbd1efd5618dcd37cfc497b1997923bd710b598472c1d846674a')
     version('0.10.2', sha256='2d4218b0826daeea880e155227060029ec38a00238ceb5f097138d9467c6399b')
@@ -26,6 +23,8 @@ class PyNeo(PythonPackage):
     version('0.8.0', sha256='3382a37b24a384006238b72981f1e9259de9bfa71886f8ed564d35d254ace458')
     version('0.5.2', sha256='1de436b7d5e72a5b4f1baa68bae5b790624a9ac44b2673811cb0b6ef554d3f8b')
 
+    # py-setuptools@:61 doesn't support PEP 621
+    depends_on('py-setuptools@61:',     type='build', when='@0.12.0:')
     depends_on('py-setuptools',         type='build')
 
     depends_on('py-packaging',          type=('build', 'run'))
diff --git a/packages/py-nose/package.py b/packages/py-nose/package.py
new file mode 100644
index 00000000..1c650368
--- /dev/null
+++ b/packages/py-nose/package.py
@@ -0,0 +1,20 @@
+# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
+# Spack Project Developers. See the top-level COPYRIGHT file for details.
+#
+# SPDX-License-Identifier: (Apache-2.0 OR MIT)
+
+from spack.package import *
+
+
+class PyNose(PythonPackage):
+    """nose extends the test loading and running features of unittest,
+    making it easier to write, find and run tests."""
+
+    url = "https://pypi.org/packages/py3/n/nose/nose-1.3.7-py3-none-any.whl"
+
+    version("1.3.7", sha256="9ff7c6cc443f8c51994b34a667bbcf45afd6d945be7477b52e97516fd17c53ac", expand=False)
+    version("1.3.6", sha256="e19b4f8a495681c367ab56c3c04f8bef30ddd7907ddfd9bee663a3f3286762b6", expand=False)
+    version("1.3.4", sha256="cc8aebdec5a5fb989912f157f77b3c21a5e2f2da623af90a7b476b106a834abf", expand=False)
+
+    # no need for setuptools when using wheels
+    # depends_on("py-setuptools@:57", type="build")
diff --git a/packages/py-quantities/package.py b/packages/py-quantities/package.py
index 2e919c47..d7cccbf7 100644
--- a/packages/py-quantities/package.py
+++ b/packages/py-quantities/package.py
@@ -13,10 +13,7 @@ class PyQuantities(PythonPackage):
     pypi = "quantities/quantities-0.12.1.tar.gz"
     maintainers = ['apdavison']
 
-    # temporary fix to avoid building with py-setuptools@:61, that doesn't support PEP 621
-    version('0.14.1', sha256='b2edf67b8c2a28aa3bbe096f9fc3ec3ab83fc3192997373641cddab32bea2f72',
-            url= "https://pypi.io/packages/py3/q/quantities/quantities-0.14.1-py3-none-any.whl", expand=False)
-    # version('0.14.1', sha256='efeafffc0c0364f891a9327239cd12496bccb55cd037a6d1bf44de706f722877')
+    version('0.14.1', sha256='efeafffc0c0364f891a9327239cd12496bccb55cd037a6d1bf44de706f722877')
     version('0.13.0', sha256='0fde20115410de21cefa786f3aeae69c1b51bb19ee492190324c1da705e61a81')
     version('0.12.5', sha256='67546963cb2a519b1a4aa43d132ef754360268e5d551b43dd1716903d99812f0')
     version('0.12.4', sha256='a33d636d1870c9e1127631185d89b0105a49f827d6aacd44ad9d8f151f331d8b')
@@ -36,6 +33,8 @@ class PyQuantities(PythonPackage):
     depends_on('python@3.8:3.11', type=('build', 'run'), when='@0.14:')
 
     # pip silently replaces distutils with setuptools
+    # py-setuptools@:61 doesn't support PEP 621
+    depends_on('py-setuptools@61:', type='build', when='@0.14:')
     depends_on('py-setuptools', type='build')
     depends_on('py-setuptools-scm', type='build')
 
-- 
GitLab