aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2023-05-11 16:32:39 +0200
committerRicardo Wurmus <rekado@elephly.net>2023-05-11 17:12:54 +0200
commit0a8c46e89f095a9ec3632d43920ac3cce49f16d5 (patch)
treebdf06f943b4424d831f4acc8ec5c52a09d168661
parent5e07608a306fdd8d2f92c330aba2de6946958dfa (diff)
downloadguix-0a8c46e89f095a9ec3632d43920ac3cce49f16d5.tar.gz
guix-0a8c46e89f095a9ec3632d43920ac3cce49f16d5.zip
gnu: Add python-pytest-enabler.
* gnu/packages/python-check.scm (python-pytest-enabler): New variable.
-rw-r--r--gnu/packages/python-check.scm56
1 files changed, 56 insertions, 0 deletions
diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
index f272a252fc..2398843af5 100644
--- a/gnu/packages/python-check.scm
+++ b/gnu/packages/python-check.scm
@@ -2115,6 +2115,62 @@ reducing a number of combinations of variables into a lesser set that covers
most situations.")
(license license:expat)))
+(define-public python-pytest-enabler
+ (package
+ (name "python-pytest-enabler")
+ (version "2.1.0")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "pytest-enabler" version))
+ (sha256
+ (base32
+ "0m7m19829jwj1wqss73m8q1lpmkqhzkqp1xm4ahq0d7kjjghd4cb"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:test-flags
+ '(list "--ignore=_custom_build/backend.py"
+ "-k" "not mypy-status")
+ #:phases
+ '(modify-phases %standard-phases
+ ;; The build system insists on ignoring the existing environment and
+ ;; running "pip install".
+ (add-after 'unpack 'do-not-use-pip-install
+ (lambda _
+ (substitute* "pyproject.toml"
+ (("^build-backend.*") "\
+build-backend = \"backend\"
+backend_path = [\"_custom_build\"]\n")
+ (("requires = .*") "requires = []\n"))
+ (mkdir-p "_custom_build")
+ (with-output-to-file "_custom_build/backend.py"
+ (lambda _
+ (display "\
+from setuptools import build_meta as _orig
+from setuptools.build_meta import *
+def get_requires_for_build_wheel(config_settings=None):
+ return []
+def get_requires_for_build_sdist(config_settings=None):
+ return []
+")))
+ (setenv "PYTHONPATH"
+ (string-append (getcwd) "/_custom_build")))))))
+ (propagated-inputs (list python-jaraco-context python-jaraco-functools
+ python-toml))
+ (native-inputs (list python-flake8
+ python-pytest
+ python-pytest-black
+ python-pytest-checkdocs
+ python-pytest-cov
+ python-pytest-flake8
+ python-pytest-mypy
+ python-types-toml))
+ (home-page "https://github.com/jaraco/pytest-enabler")
+ (synopsis "Enable installed pytest plugins")
+ (description "The enabler plugin allows configuration of plugins if
+present, but omits the settings if the plugin is not present.")
+ (license license:expat)))
+
(define-public python-pytest-mp
(package
(name "python-pytest-mp")