guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/02: gnu: Add python-pdoc3.


From: guix-commits
Subject: 01/02: gnu: Add python-pdoc3.
Date: Tue, 4 Jan 2022 07:03:30 -0500 (EST)

mothacehe pushed a commit to branch master
in repository guix.

commit 84207eea2c564052c05757fb0397d35088a43657
Author: Mathieu Othacehe <othacehe@gnu.org>
AuthorDate: Tue Jan 4 12:45:29 2022 +0100

    gnu: Add python-pdoc3.
    
    * gnu/packages/patches/python-pdoc3-tests.patch: New file.
    * gnu/local.mk (dist_patch_DATA): Add it.
    * gnu/local.mk (python-pdoc3): New variable.
---
 gnu/local.mk                                  |  1 +
 gnu/packages/patches/python-pdoc3-tests.patch | 42 +++++++++++++++++++++++++++
 gnu/packages/python-xyz.scm                   | 25 +++++++++++++++-
 3 files changed, 67 insertions(+), 1 deletion(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index d63978f705..c8ec622aa1 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1676,6 +1676,7 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/python-fixtures-remove-monkeypatch-test.patch   \
   %D%/packages/patches/python-flask-restful-werkzeug-compat.patch      \
   %D%/packages/patches/python-keras-integration-test.patch     \
+  %D%/packages/patches/python-pdoc3-tests.patch                        \
   %D%/packages/patches/python-peachpy-determinism.patch        \
   %D%/packages/patches/python-pep8-stdlib-tokenize-compat.patch \
   %D%/packages/patches/python-pyfakefs-remove-bad-test.patch   \
diff --git a/gnu/packages/patches/python-pdoc3-tests.patch 
b/gnu/packages/patches/python-pdoc3-tests.patch
new file mode 100644
index 0000000000..a411b300ee
--- /dev/null
+++ b/gnu/packages/patches/python-pdoc3-tests.patch
@@ -0,0 +1,42 @@
+Taken from upstream: 
https://github.com/pdoc3/pdoc/commit/4aa70de2221a34a3003a7e5f52a9b91965f0e359.patch.
+
+From 4aa70de2221a34a3003a7e5f52a9b91965f0e359 Mon Sep 17 00:00:00 2001
+From: Spencer Baugh <sbaugh@catern.com>
+Date: Thu, 23 Sep 2021 09:00:25 -0400
+Subject: [PATCH] TST: use explicit ClassWithNew instead of typing.Generic
+
+typing.Generic doesn't have a __new__ method in 3.9.
+
+Fixes https://github.com/pdoc3/pdoc/issues/355
+---
+ pdoc/test/__init__.py | 10 +++++++---
+ 1 file changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/pdoc/test/__init__.py b/pdoc/test/__init__.py
+index e8c3d94..8b67ab7 100644
+--- a/pdoc/test/__init__.py
++++ b/pdoc/test/__init__.py
+@@ -1043,16 +1043,20 @@ class C2:
+ 
+         self.assertEqual(pdoc.Class('C2', mod, C2).params(), ['a', 'b', 
'c=None', '*', 'd=1', 'e'])
+ 
+-        class G(typing.Generic[T]):
++        class ClassWithNew:
++            def __new__(self, arg):
++                pass
++
++        class G(ClassWithNew):
+             def __init__(self, a, b, c=100):
+                 pass
+ 
+         self.assertEqual(pdoc.Class('G', mod, G).params(), ['a', 'b', 
'c=100'])
+ 
+-        class G2(typing.Generic[T]):
++        class G2(ClassWithNew):
+             pass
+ 
+-        self.assertEqual(pdoc.Class('G2', mod, G2).params(), ['*args', 
'**kwds'])
++        self.assertEqual(pdoc.Class('G2', mod, G2).params(), ['arg'])
+ 
+     def test_url(self):
+         mod = pdoc.Module(EXAMPLE_MODULE)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 01992dc729..e04b4f973f 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -37,7 +37,7 @@
 ;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
 ;;; Copyright © 2017, 2018 Adriano Peluso <catonano@gmail.com>
 ;;; Copyright © 2017 Ben Sturmfels <ben@sturm.com.au>
-;;; Copyright © 2017, 2018, 2019, 2021 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2017, 2018, 2019, 2021, 2022 Mathieu Othacehe 
<m.othacehe@gmail.com>
 ;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.org>
 ;;; Copyright © 2017, 2020, 2021 Roel Janssen <roel@gnu.org>
 ;;; Copyright © 2017, 2018, 2019 Kei Kebreau <kkebreau@posteo.net>
@@ -27916,3 +27916,26 @@ keyboard-friendly package.")
     (description
      "This package provides a Python interface to iw wireless tools.")
     (license license:gpl2)))
+
+(define-public python-pdoc3
+  (package
+    (name "python-pdoc3")
+    (version "0.10.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "pdoc3" version))
+       (sha256
+        (base32 "1dz4hw10ngidzg9cjvflc8nlrwrjbb3ijhmaw4w6f039p6yff8jz"))
+       (patches
+        (search-patches "python-pdoc3-tests.patch"))))
+    (build-system python-build-system)
+    (native-inputs
+     (list python-setuptools-git python-setuptools-scm))
+    (propagated-inputs (list python-mako python-markdown))
+    (home-page "https://pdoc3.github.io/pdoc/";)
+    (synopsis "Auto-generate API documentation for Python projects")
+    (description
+     "This package auto-generates API documentation from Python projects
+already existing modules and objects docstrings.")
+    (license license:agpl3+)))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]