diff options
Diffstat (limited to 'var')
6 files changed, 126 insertions, 107 deletions
diff --git a/var/spack/repos/builtin/packages/py-asgiref/package.py b/var/spack/repos/builtin/packages/py-asgiref/package.py index 076dadd88a..1d2aa90d53 100644 --- a/var/spack/repos/builtin/packages/py-asgiref/package.py +++ b/var/spack/repos/builtin/packages/py-asgiref/package.py @@ -10,24 +10,24 @@ class PyAsgiref(PythonPackage): """ASGI specification and utilities.""" homepage = "https://asgi.readthedocs.io/en/latest/" - url = "https://github.com/django/asgiref/archive/3.2.7.tar.gz" + pypi = "asgiref/asgiref-3.7.2.tar.gz" license("BSD-3-Clause") - version("3.5.2", sha256="62f04f81110898e471a7d5b37f88c923c2864d43fa6abb66a95980becb1a2ba4") + version("3.7.2", sha256="9e0ce3aa93a819ba5b45120216b23878cf6e8525eb3848653452b4192b92afed") + version("3.5.2", sha256="4a29362a6acebe09bf1d6640db38c1dc3d9217c68e6f9f6204d72667fc19a424") version("3.5.0", sha256="2f8abc20f7248433085eda803936d98992f1343ddb022065779f37c5da0181d0") - version("3.2.7", sha256="8a0b556b9e936418475f6670d59e14592c41d15d00b5ea4ad26f2b46f9f4fb9a") - version("3.2.6", sha256="29788163bdad8d494475a0137eba39b111fd86fbe825534a9376f9f2ab44251a") - version("3.2.5", sha256="eeb01ba02e86859746ee2a7bc8a75c484a006dc9575723563f24642a12b2bba8") - version("3.2.4", sha256="89e47532340338b7eafd717ab28658e8b48f4565d8384628c88d2d41565c8da0") - version("3.2.3", sha256="d38e16141c7189e23bfe03342d9cd3dbfd6baab99217892bfa7bc5646315b6bd") - version("3.2.2", sha256="47edf327aa70f317c9bc810d469ce681f1b35a7f499f68cf2b5da3ba6a651e69") - version("3.2.1", sha256="06a21df1f4456d29079f3c475c09ac31167bcc5f024c637dedf4e00d2dd9020b") - version("3.2.0", sha256="5db8c7a6c1ff54ea04a52f994d8af959427f1cab8e427aa802492a89fb0b635a") - version("3.1.4", sha256="bf01c52111ef7af2adc1e6d90282d2a32c5ebe09e84ae448389ceff7cef53fa9") - version("3.1.3", sha256="5b8bb7b3719b8c12a6c2363784a4d8c0eb5e980d8b4fdb6f38eccb52071dfab5") + version("3.2.7", sha256="8036f90603c54e93521e5777b2b9a39ba1bad05773fcf2d208f0299d1df58ce5") + version("3.2.6", sha256="63007b556233381c5f22ae4c7e4292c9f1b953dc8909ae8fd268f611dc23cbd0") + version("3.2.5", sha256="c8f49dd3b42edcc51d09dd2eea8a92b3cfc987ff7e6486be734b4d0cbfd5d315") + version("3.2.4", sha256="f07043512078c76bb28a62fd1e327876599062b5f0aea60ed1d9cabc42e95fe2") + version("3.2.3", sha256="7e06d934a7718bf3975acbf87780ba678957b87c7adc056f13b6215d610695a0") + version("3.2.2", sha256="f62b1c88ebf5fe95db202a372982970edcf375c1513d7e70717df0750f5c2b98") + version("3.2.1", sha256="57ed0d07634a23bebfa1b02a1aa05eba09c37aab3fc93893e4039e7bc2d96d9e") + version("3.2.0", sha256="cefcbd64acbfc9f38913566824ef070dd9a50e63f1b4cc5a7f1c44be809d7ff3") + version("3.1.4", sha256="865b7ccce5a6e815607b08d9059fe9c058cd75c77f896f5e0b74ff6c1ba81818") + version("3.1.3", sha256="566126b4cbf190c315121965253ecb2159499197ff4afd686e0921f4dd987999") depends_on("py-setuptools", type="build") - depends_on("python@3.5:", type=("build", "run")) - depends_on("python@3.7:", type=("build", "run"), when="@3.5.0:") - depends_on("py-typing-extensions", type=("build", "run"), when="@3.5: ^python@:3.7") + depends_on("py-typing-extensions@4:", type=("build", "run"), when="@3.7: ^python@:3.10") + depends_on("py-typing-extensions", type=("build", "run"), when="@3.5 ^python@:3.7") diff --git a/var/spack/repos/builtin/packages/py-django/package.py b/var/spack/repos/builtin/packages/py-django/package.py index 96b8e4cf73..75411a7967 100644 --- a/var/spack/repos/builtin/packages/py-django/package.py +++ b/var/spack/repos/builtin/packages/py-django/package.py @@ -10,21 +10,28 @@ class PyDjango(PythonPackage): """The Web framework for perfectionists with deadlines.""" homepage = "https://www.djangoproject.com/" - url = "https://github.com/django/django/archive/3.0.5.tar.gz" + pypi = "Django/Django-5.0.1.tar.gz" license("BSD-3-Clause") - version("3.0.5", sha256="ef2d4f26414dc9598afce9c56cee4578313b88861cedfc5b3d9a71078e5cc79b") - version("3.0.4", sha256="99699643d83acfab51d3ad73c2c2904173e03a4f59fe24c3d494e4fafc0b679f") - version("3.0.3", sha256="d953c950f0c395db065c8bc39d20e87faded376632a3aacf889ae92d5adaac8b") - version("3.0.2", sha256="ca316b1179a16931ed872ce970aabefcf3d41fe0d4b1a8e1301ec59e1e0ab45b") - version("3.0.1", sha256="85349b9366364847264b2b707ffcff5a27a022afa29aac0e904ca672cbe5ee65") - version("2.2.12", sha256="ec490c67bd2780b4ec4f5355cd99fa2fa6007f81695dd45a9e8f7ccc5ff17772") - version("2.2.11", sha256="f4274181973f0f021cc00419cfa342f1a6f862406e766ae93e7fbba9d84c680c") - version("2.2.10", sha256="3741536cf122d6695e8575b2fcf67c18812751fd3143393ea75c01a277afdacc") + version("5.0.1", sha256="8c8659665bc6e3a44fefe1ab0a291e5a3fb3979f9a8230be29de975e57e8f854") + version("3.0.5", sha256="d4666c2edefa38c5ede0ec1655424c56dc47ceb04b6d8d62a7eac09db89545c1") + version("3.0.4", sha256="50b781f6cbeb98f673aa76ed8e572a019a45e52bdd4ad09001072dfd91ab07c8") + version("3.0.3", sha256="2f1ba1db8648484dd5c238fb62504777b7ad090c81c5f1fd8d5eb5ec21b5f283") + version("3.0.2", sha256="8c3575f81e11390893860d97e1e0154c47512f180ea55bd84ce8fa69ba8051ca") + version("3.0.1", sha256="315b11ea265dd15348d47f2cbb044ef71da2018f6e582fed875c889758e6f844") + version("2.2.12", sha256="69897097095f336d5aeef45b4103dceae51c00afa6d3ae198a2a18e519791b7a") + version("2.2.11", sha256="65e2387e6bde531d3bb803244a2b74e0253550a9612c64a60c8c5be267b30f50") + version("2.2.10", sha256="1226168be1b1c7efd0e66ee79b0e0b58b2caa7ed87717909cd8a57bb13a7079a") + depends_on("python@3.10:", when="@5:", type=("build", "run")) + depends_on("py-setuptools@40.8:", when="@5:", type="build") depends_on("py-setuptools", type="build") - depends_on("python@3.6:", type=("build", "run")) - depends_on("py-pytz", type=("build", "run")) - depends_on("py-sqlparse", type=("build", "run")) + depends_on("py-asgiref@3.7:3", when="@5:", type=("build", "run")) depends_on("py-asgiref", type=("build", "run")) + depends_on("py-sqlparse@0.3.1:", when="@5:", type=("build", "run")) + depends_on("py-sqlparse", type=("build", "run")) + depends_on("py-tzdata", when="@5: platform=windows", type=("build", "run")) + + # Historical dependencies + depends_on("py-pytz", when="@:3", type=("build", "run")) diff --git a/var/spack/repos/builtin/packages/py-hypothesis/package.py b/var/spack/repos/builtin/packages/py-hypothesis/package.py index 90469c997b..e06e14ff84 100644 --- a/var/spack/repos/builtin/packages/py-hypothesis/package.py +++ b/var/spack/repos/builtin/packages/py-hypothesis/package.py @@ -14,6 +14,7 @@ class PyHypothesis(PythonPackage): license("MPL-2.0") + version("6.96.2", sha256="524a0ac22c8dfff640f21f496b85ee193a470e8570ab7707b8e3bfccd7da34a6") version("6.23.1", sha256="23a1b0488aec5719e2f9e399342e10f30d497cbb9fd39470ef0975c1b502ae35") version("5.3.0", sha256="c9fdb53fe3bf1f8e7dcca1a7dd6e430862502f088aca2903d141511212e79429") version("4.57.1", sha256="3c4369a4b0a1348561048bcda5f1db951a1b8e2a514ea8e8c70d36e656bf6fa0") @@ -22,42 +23,31 @@ class PyHypothesis(PythonPackage): version("4.7.2", sha256="87944c6379f77634474b88abbf1e5ed5fe966637cc926131eda5e2af5b54a608") version("3.7.0", sha256="0fea49d08f2d5884f014151a5af6fb48d862f6ad567ffc4a2e84abf2f186c423") - depends_on("python@2.7:2.8,3.5:", type=("build", "run")) - depends_on("python@3.6:", type=("build", "run"), when="@6:") - depends_on("py-setuptools@36.2:", type=("build")) - depends_on("py-attrs@19.2.0:", when="@4.38.2:", type=("build", "run")) - depends_on("py-attrs@16.0.0:", when="@3.44.22:", type=("build", "run")) + variant("django", default=False, description="Enable django support") + variant("numpy", default=False, description="Enable numpy support") + variant("pandas", default=False, description="Enable pandas support") + + depends_on("py-setuptools@36.2:", type="build") + depends_on("py-attrs@22.2:", when="@6.96:", type=("build", "run")) + depends_on("py-attrs@19.2:", when="@4.38.2:", type=("build", "run")) + depends_on("py-attrs@16.0:", when="@3.44.22:", type=("build", "run")) depends_on("py-attrs", when="@3.28.0:", type=("build", "run")) - depends_on("py-sortedcontainers@2.1.0:2", type=("build", "run"), when="@4.57.1:") + depends_on("py-exceptiongroup@1:", when="@6.96: ^python@:3.10", type=("build", "run")) + depends_on("py-sortedcontainers@2.1:2", type=("build", "run"), when="@4.57.1:") + depends_on("py-django@3.2:", type="run", when="@6.96: +django") depends_on("py-django@2.2:", type="run", when="+django") depends_on("py-pytz@2014.1:", type="run", when="+django") + depends_on("py-numpy@1.17.3:", type="run", when="@6.96: +numpy") depends_on("py-numpy@1.9.0:", type="run", when="+numpy") + depends_on("py-pandas@1.1:", type="run", when="@6.96: +pandas") depends_on("py-pandas@0.25:", type="run", when="+pandas") - variant("django", default=False, description="Enable django support") - variant("numpy", default=False, description="Enable numpy support") - variant("pandas", default=False, description="Enable pandas support") - - # All modules except for 'hypothesis.extra.pandas' and 'hypothesis.extra.django', - # which are optional and are only added when their variants are enabled: - import_test_modules = [ - "hypothesis", - "hypothesis.extra", - "hypothesis.utils", - "hypothesis.strategies", - "hypothesis.strategies._internal", - "hypothesis.vendor", - "hypothesis.internal", - "hypothesis.internal.conjecture", - "hypothesis.internal.conjecture.shrinking", - "hypothesis.internal.conjecture.dfa", - ] - @property - def import_modules(self): - if self.spec.satisfies("+pandas"): - self.import_test_modules.append("hypothesis.extra.pandas") - if self.spec.satisfies("+django"): - self.import_test_modules.append("hypothesis.extra.django") - return self.import_test_modules + def skip_modules(self): + modules = [] + if "+django" not in self.spec: + modules.append("hypothesis.extra.django") + if "+pandas" not in self.spec: + modules.append("hypothesis.extra.pandas") + return modules diff --git a/var/spack/repos/builtin/packages/py-pybind11/package.py b/var/spack/repos/builtin/packages/py-pybind11/package.py index b4baeeb035..1fa9f7beee 100644 --- a/var/spack/repos/builtin/packages/py-pybind11/package.py +++ b/var/spack/repos/builtin/packages/py-pybind11/package.py @@ -27,6 +27,7 @@ class PyPybind11(CMakePackage, PythonExtension): maintainers("ax3l") version("master", branch="master") + version("2.12.0", sha256="bf8f242abd1abcd375d516a7067490fb71abd79519a282d22b6e4d19282185a7") version("2.11.1", sha256="d475978da0cdc2d43b73f30910786759d593a9d8ee05b1b6846d1eb16c6d2e0c") version("2.11.0", sha256="7af30a84c6810e721829c4646e31927af9d8861e085aa5dd37c3c8b8169fcda1") version("2.10.4", sha256="832e2f309c57da9c1e6d4542dedd34b24e4192ecb4d62f6f4866a737454c9970") diff --git a/var/spack/repos/builtin/packages/py-pythran/package.py b/var/spack/repos/builtin/packages/py-pythran/package.py index 8acf51630a..3e3065963e 100644 --- a/var/spack/repos/builtin/packages/py-pythran/package.py +++ b/var/spack/repos/builtin/packages/py-pythran/package.py @@ -18,6 +18,7 @@ class PyPythran(PythonPackage): license("BSD-3-Clause") + version("0.15.0", sha256="f9bc61bcb96df2cd4b578abc5a62dfb3fbb0b0ef02c264513dfb615c5f87871c") version("0.12.2", sha256="2344c7ad76255f31f79d87877cc6bb8bddc5e5593015dae29b3f821c6c06a627") version("0.12.0", sha256="eff3dd0d3eebe57372f0d14f82985525e9bcdfb5b1d1010e1932cf9207060f9f") version("0.11.0", sha256="0b2cba712e09f7630879dff69f268460bfe34a6d6000451b47d598558a92a875") @@ -33,10 +34,13 @@ class PyPythran(PythonPackage): version("0.9.4", sha256="ec9c91f5331454263b064027292556a184a9f55a50f8615e09b08f57a4909855") version("0.9.3", sha256="217427a8225a331fdc8f3efe57871aed775cdf2c6e847a0a83df0aaae4b02493") + # https://github.com/serge-sans-paille/pythran/pull/2196 + depends_on("py-setuptools@62:", when="@0.15:", type="build") depends_on("py-setuptools", type="build") depends_on("py-ply@3.4:", type=("build", "run")) + depends_on("py-gast@0.5", when="@0.15:", type=("build", "run")) # upper bound due to https://github.com/scipy/scipy/issues/18390 - depends_on("py-gast@0.5:0.5.3", when="@0.9.12:", type=("build", "run")) + depends_on("py-gast@0.5:0.5.3", when="@0.9.12:0.12", type=("build", "run")) depends_on("py-gast@0.4", when="@0.9.7:0.9.11", type=("build", "run")) depends_on("py-gast@0.3.3:0.3", when="@0.9.6", type=("build", "run")) depends_on("py-gast@0.3:", when="@0.9.4:0.9.5", type=("build", "run")) diff --git a/var/spack/repos/builtin/packages/py-scipy/package.py b/var/spack/repos/builtin/packages/py-scipy/package.py index ad62d4e8c5..9c54ca9997 100644 --- a/var/spack/repos/builtin/packages/py-scipy/package.py +++ b/var/spack/repos/builtin/packages/py-scipy/package.py @@ -18,6 +18,8 @@ class PyScipy(PythonPackage): license("BSD-3-Clause") version("main", branch="main") + version("1.13.0", sha256="58569af537ea29d3f78e5abd18398459f195546bb3be23d16677fb26616cc11e") + version("1.12.0", sha256="4bf5abab8a36d20193c698b0f1fc282c1d083c94723902c447e5d2f1780936a3") version("1.11.4", sha256="90a2b78e7f5733b9de748f589f09225013685f9b218275257f8a8168ededaeaa") version("1.11.3", sha256="bba4d955f54edd61899776bad459bf7326e14b9fa1c552181f0479cc60a568cd") version("1.11.2", sha256="b29318a5e39bd200ca4381d80b065cdf3076c7d7281c5e36569e99273867f61d") @@ -50,54 +52,60 @@ class PyScipy(PythonPackage): version("1.3.2", sha256="a03939b431994289f39373c57bbe452974a7da724ae7f9620a1beee575434da4") # Based on wheel availability on PyPI - depends_on("python@3.9:3.12", when="@1.11:", type=("build", "link", "run")) - depends_on("python@3.8:3.11", when="@1.9.2:1.10", type=("build", "link", "run")) - depends_on("python@3.8:3.10", when="@1.8:1.9.1", type=("build", "link", "run")) - depends_on("python@:3.10", when="@1.7.2:1.7", type=("build", "link", "run")) - depends_on("python@:3.9", when="@1.5.4:1.7.1", type=("build", "link", "run")) - depends_on("python@:3.8", when="@1.3.2:1.5.3", type=("build", "link", "run")) - - depends_on("py-meson-python@0.12.1:", when="@1.11:", type="build") - depends_on("py-meson-python@0.11:", when="@1.10:", type="build") - depends_on("py-meson-python@0.9:", when="@1.9.2:", type="build") - depends_on("py-meson-python@0.8.1:", when="@1.9.1:", type="build") - depends_on("py-meson-python@0.7:", when="@1.9:", type="build") - depends_on("meson", when="@1.9.0:1.9.1", type="build") - depends_on("py-cython@0.29.35:2", when="@1.11:", type="build") - depends_on("py-cython@0.29.32:2", when="@1.9.2:", type="build") - depends_on("py-cython@0.29.21:2", when="@1.9:", type="build") - depends_on("py-cython@0.29.18:2", when="@1.7:", type="build") - depends_on("py-pybind11@2.10.4:2.11.0", when="@1.11.3:", type=("build", "link")) - depends_on("py-pybind11@2.10.4:2.10", when="@1.11.0:1.11.2", type=("build", "link")) - depends_on("py-pybind11@2.10.1", when="@1.10", type=("build", "link")) - depends_on("py-pybind11@2.4.3:2.10", when="@1.9.1:1.9", type=("build", "link")) - depends_on("py-pybind11@2.4.3:2.9", when="@1.9.0", type=("build", "link")) - depends_on("py-pybind11@2.4.3:2.8", when="@1.8", type=("build", "link")) - depends_on("py-pybind11@2.4.3:2.7", when="@1.7.2:1.7", type=("build", "link")) - depends_on("py-pybind11@2.4.3:2.6", when="@1.6.2:1.7.1", type=("build", "link")) - depends_on("py-pybind11@2.4.3:", when="@1.5:1.6.1", type=("build", "link")) - depends_on("py-pybind11@2.4.0:", when="@1.4.1:1.4", type=("build", "link")) - depends_on("py-pybind11@2.2.4:", when="@1.4.0", type=("build", "link")) - depends_on("py-pythran@0.12:", when="@1.10:", type="build") - depends_on("py-pythran@0.10:", when="@1.8", type="build") - depends_on("py-pythran@0.9.12:", when="@1.7.2:", type="build") - depends_on("py-pythran@0.9.11:", when="@1.7:", type="build") - depends_on("py-wheel@:0.40", when="@1.11.0:1.11.2", type="build") - depends_on("py-wheel@:0.38", when="@1.10", type="build") - depends_on("py-wheel@:0.37", when="@:1.9", type="build") - depends_on("pkgconfig", when="@1.9:", type="build") - depends_on("py-setuptools", when="@:1.8", type="build") - depends_on("py-setuptools@:59", when="@1.8", type="build") - depends_on("py-setuptools@:57", when="@1.7", type="build") - depends_on("py-setuptools@:51.0.0", when="@1.6", type="build") - depends_on("py-numpy@1.21.6:1.27", when="@1.11:", type=("build", "link", "run")) - depends_on("py-numpy@1.19.5:1.26", when="@1.10", type=("build", "link", "run")) - depends_on("py-numpy@1.18.5:1.25", when="@1.9", type=("build", "link", "run")) - depends_on("py-numpy@1.17.3:1.24", when="@1.8", type=("build", "link", "run")) - depends_on("py-numpy@1.16.5:1.22", when="@1.6:1.7", type=("build", "link", "run")) - depends_on("py-numpy@1.14.5:1.21", when="@1.5", type=("build", "link", "run")) - depends_on("py-numpy@1.13.3:1.21", when="@1.3:1.4", type=("build", "link", "run")) - depends_on("py-pytest", type="test") + with default_args(type=("build", "link", "run")): + depends_on("python@3.9:3.12", when="@1.11.2:") + depends_on("python@3.8:3.11", when="@1.9.2:1.11.1") + depends_on("python@3.8:3.10", when="@1.8:1.9.1") + depends_on("python@:3.10", when="@1.7.2:1.7") + depends_on("python@:3.9", when="@1.5.4:1.7.1") + depends_on("python@:3.8", when="@1.3.2:1.5.3") + + # Build dependencies (do not include upper bound unless known issues) + with default_args(type="build"): + depends_on("py-meson-python@0.15:", when="@1.12:") + depends_on("py-meson-python@0.12.1:", when="@1.11:") + depends_on("py-meson-python@0.11:", when="@1.10:") + depends_on("py-meson-python@0.9:", when="@1.9.2:") + depends_on("py-meson-python@0.8.1:", when="@1.9.1:") + depends_on("py-meson-python@0.7:", when="@1.9:") + depends_on("py-cython@3.0.8:", when="@1.13:") + depends_on("py-cython@0.29.35:", when="@1.12") + depends_on("py-cython@0.29.35:2", when="@1.11") + depends_on("py-cython@0.29.32:2", when="@1.9.2:1.10") + depends_on("py-cython@0.29.21:2", when="@1.9.0:1.9.1") + depends_on("py-cython@0.29.18:2", when="@1.7:1.8") + with default_args(type=("build", "link")): + depends_on("py-pybind11@2.12:", when="@1.13:") + depends_on("py-pybind11@2.10.4:", when="@1.11:") + depends_on("py-pybind11@2.10.1:", when="@1.10:") + depends_on("py-pybind11@2.4.3:", when="@1.5:") + depends_on("py-pybind11@2.4.0:", when="@1.4.1:") + depends_on("py-pybind11@2.2.4:", when="@1.4.0:") + depends_on("py-pythran@0.14:", when="@1.13:") + depends_on("py-pythran@0.15:", when="@1.12") + depends_on("py-pythran@0.12:", when="@1.10:") + depends_on("py-pythran@0.10:", when="@1.8:") + depends_on("py-pythran@0.9.12:", when="@1.7.2:") + depends_on("py-pythran@0.9.11:", when="@1.7:") + depends_on("pkgconfig", when="@1.9:") + + # Run dependencies + with default_args(type=("build", "link", "run")): + depends_on("py-numpy@1.22.4:2.2", when="@1.13:") + depends_on("py-numpy@1.22.4:1.28", when="@1.12") + depends_on("py-numpy@1.21.6:1.27", when="@1.11") + depends_on("py-numpy@1.19.5:1.26", when="@1.10") + depends_on("py-numpy@1.18.5:1.25", when="@1.9") + depends_on("py-numpy@1.17.3:1.24", when="@1.8") + depends_on("py-numpy@1.16.5:1.22", when="@1.6:1.7") + depends_on("py-numpy@1.14.5:1.21", when="@1.5") + depends_on("py-numpy@1.13.3:1.21", when="@1.3:1.4") + + # Test dependencies + with default_args(type="test"): + depends_on("py-pytest") + depends_on("py-pooch") + depends_on("py-hypothesis@6.30:") # Required to use --config-settings depends_on("py-pip@23.1:", when="@1.9:", type="build") @@ -108,10 +116,19 @@ class PyScipy(PythonPackage): depends_on("lapack") depends_on("blas") + # Historical dependencies + with default_args(type="build"): + depends_on("meson", when="@1.9.0:1.9.1") + depends_on("py-setuptools", when="@:1.8") + depends_on("py-setuptools@:59", when="@1.8") + depends_on("py-setuptools@:57", when="@1.7") + depends_on("py-setuptools@:51.0.0", when="@1.6") + # meson.build # https://docs.scipy.org/doc/scipy/dev/toolchain.html#compilers conflicts("%gcc@:7", when="@1.10:", msg="SciPy requires GCC >= 8.0") conflicts("%gcc@:4.7", when="@:1.9", msg="SciPy requires GCC >= 4.8") + conflicts("%apple-clang@:9", when="@1.10:", msg="SciPy requires Apple Clang >= 10") conflicts( "%msvc@:19.19", when="@1.10:", |