summary refs log tree commit diff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-08-24 10:12:16 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-08-29 01:05:26 -0400
commitafcbaadac5d6add0bb493471220d81d4acb630e5 (patch)
tree2dccd0ba7543509677c870a0a7cfbc9a00cf68a4
parentbf99f80a1688e2139e1893219faa995b136db530 (diff)
downloadguix-afcbaadac5d6add0bb493471220d81d4acb630e5.tar.gz
gnu: Add python-resolvelib.
* gnu/packages/python-xyz.scm (python-resolvelib): New variable.
-rw-r--r--gnu/packages/python-xyz.scm34
1 files changed, 34 insertions, 0 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 3215d91bdd..83db31a737 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -10188,6 +10188,40 @@ files with Python and JavaScript style inline comments.  Its API is very
 similar to the Python standard library's @code{json} module.")
     (license license:expat)))
 
+(define-public python-resolvelib
+  (package
+    (name "python-resolvelib")
+    (version "0.7.1")
+    (source
+     (origin
+       ;; Tests are missing from the PyPI release.
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/sarugaku/resolvelib")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "1fqz75riagizihvf4j7wc3zjw6kmg1dd8sf49aszyml105kb33n8"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+             (when tests?
+               (add-installed-pythonpath inputs outputs)
+               (invoke "pytest")))))))
+    (native-inputs
+     `(("python-commentjson" ,python-commentjson)
+       ("python-packaging" ,python-packaging)
+       ("python-pytest" ,python-pytest)))
+    (home-page "https://github.com/sarugaku/resolvelib")
+    (synopsis "Abstract dependencies resolver")
+    (description "The ResolveLib library provides a @code{Resolver} class that
+includes dependency resolution logic.")
+    (license license:isc)))
+
 (define-public python-commonmark
   (package
     (name "python-commonmark")