aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/python-xyz.scm
diff options
context:
space:
mode:
authorVinicius Monego <monego@posteo.net>2024-05-13 20:52:11 +0000
committerSharlatan Hellseher <sharlatanus@gmail.com>2024-10-24 10:59:59 +0100
commitf3cfd885f1756bc001ff3a0b0dde9fe859da4b3d (patch)
tree26090c9406633af226efce79d8522061bbf5ec21 /gnu/packages/python-xyz.scm
parenta47a1ff036637a53a50ba775fe454ab34635041b (diff)
downloadguix-f3cfd885f1756bc001ff3a0b0dde9fe859da4b3d.tar
guix-f3cfd885f1756bc001ff3a0b0dde9fe859da4b3d.tar.gz
gnu: Add python-pyproject-api.
* gnu/packages/python-xyz.scm (python-pyproject-api): New variable. Change-Id: I4bef06ecebcf3c5df99196b75017a4d97c7f2dda Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Diffstat (limited to 'gnu/packages/python-xyz.scm')
-rw-r--r--gnu/packages/python-xyz.scm37
1 files changed, 37 insertions, 0 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 016ce24ab2..53df93b226 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -21642,6 +21642,43 @@ in Python. It allows you to declare the libraries your project depends on and
it will manage (install/update) them for you.")
(license license:expat)))
+(define-public python-pyproject-api
+ (package
+ (name "python-pyproject-api")
+ (version "1.6.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "pyproject_api" version))
+ (sha256
+ (base32 "0f75rajzk72ay4x9ajw1835amm932q7cdn0yrbwiy3fwi80xq5qq"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:test-flags
+ ;; This test fails with AssertionError.
+ #~(list "-k" "not test_setuptools_prepare_metadata_for_build_wheel")
+ #:phases #~(modify-phases %standard-phases
+ (add-after 'unpack 'relax-packaging
+ (lambda _
+ (substitute* "pyproject.toml"
+ ;; We have packaging 21.3.
+ (("packaging>=23.1") "packaging>=21.3")))))))
+ (native-inputs
+ (list python-covdefaults
+ python-hatch-vcs
+ python-hatchling
+ python-pytest
+ python-pytest-mock))
+ (propagated-inputs
+ (list python-packaging python-tomli))
+ (home-page "https://pyproject-api.readthedocs.io/latest/")
+ (synopsis "API to interact with the Python pyproject.toml based projects")
+ (description
+ "@code{pyproject-api} aims to abstract away interaction with
+@code{pyproject.toml} style projects in a flexible way.")
+ (license license:expat)))
+
(define-public python-pyproject-hooks
(package
(name "python-pyproject-hooks")