Subject: [bug#50505] [PATCH v2 01/13] gnu: Add python-cloup.

From: Daniel Meißner<[email-masked]>
Date: Wed, 15 Sep 2021 17:25:07 +0200

* gnu/packages/python-xyz.scm (python-cloup): New variable.

Co-authored-by: Xinglu Chen <[email-masked]>
---
 gnu/packages/python-science.scm |  1 +
 gnu/packages/python-xyz.scm     | 35 +++++++++++++++++++++++++++++++++
 2 files changed, 36 insertions(+)

diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm
index 738b504e3b..d3730fadcc 100644
--- a/gnu/packages/python-science.scm
+++ b/gnu/packages/python-science.scm
@@ -14,6 +14,7 @@
 ;;; Copyright © 2021 Roel Janssen <[email-masked]>
 ;;; Copyright © 2021 Paul Garlick <[email-masked]>
 ;;; Copyright © 2021 Arun Isaac <[email-masked]>
+;;; Copyright © 2021 Daniel Meißner <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index e98eec19bc..202cf569d5 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -3308,6 +3308,41 @@ with sensible defaults out of the box.")
         (base32 "0njsm0wn31l21bi118g5825ma5sa3rwn7v2x4wjd7yiiahkri337"))))
     (arguments `())))
 
+(define-public python-cloup
+  (package
+    (name "python-cloup")
+    (version "0.11.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "cloup" version))
+       (sha256
+        (base32
+         "07kxw81bml137w9bfmwkjbdzbldkk1k1lws82wffz9244pp7k8ib"))))
+    (build-system python-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs outputs tests? #:allow-other-keys)
+             (when tests?
+               (add-installed-pythonpath inputs outputs)
+               (invoke "python" "-m" "pytest")))))))
+    (propagated-inputs
+     `(("python-click" ,python-click)))
+    (native-inputs
+     `(("python-setuptools" ,python-setuptools)
+       ("python-setuptools-scm" ,python-setuptools-scm/next)
+       ("python-pytest" ,python-pytest)))
+    (home-page "https://github.com/janLuke/cloup")
+    (synopsis "Extension library for @code{python-click}")
+    (description
+     "Cloup---originally from ``Click + option groups''---enriches
+@code{python-click} with several features that make it more expressive and
+configurable: option groups, constraints, subcommand aliases, subcommands
+sections, and a themeable @code{HelpFormatter}.")
+    (license license:bsd-3)))
+
 (define-public python-vcversioner
   (package
     (name "python-vcversioner")
-- 
2.33.0