public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pdoc3/files/, dev-python/pdoc3/
@ 2023-04-03 16:04 Florian Schmaus
  0 siblings, 0 replies; 2+ messages in thread
From: Florian Schmaus @ 2023-04-03 16:04 UTC (permalink / raw
  To: gentoo-commits

commit:     c453d7a6b85bdd87125923662537fb4f89805a1f
Author:     Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Mon Apr  3 16:00:09 2023 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Mon Apr  3 16:00:09 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c453d7a6

dev-python/pdoc3: fix tests and bump to EAPI 8

Closes: https://bugs.gentoo.org/834773
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 .../pdoc3/files/pdoc3-0.10.0-update-tests.patch    | 114 +++++++++++++++++++++
 ...{pdoc3-0.10.0.ebuild => pdoc3-0.10.0-r1.ebuild} |   3 +-
 2 files changed, 116 insertions(+), 1 deletion(-)

diff --git a/dev-python/pdoc3/files/pdoc3-0.10.0-update-tests.patch b/dev-python/pdoc3/files/pdoc3-0.10.0-update-tests.patch
new file mode 100644
index 000000000000..bd68ea2d8368
--- /dev/null
+++ b/dev-python/pdoc3/files/pdoc3-0.10.0-update-tests.patch
@@ -0,0 +1,114 @@
+From 80af5d40d3ca39e2701c44941c1003ae6a280799 Mon Sep 17 00:00:00 2001
+From: Kernc <kerncece@gmail.com>
+Date: Sat, 29 Oct 2022 18:55:46 +0200
+Subject: [PATCH] CI: Bump min Python 3.7+ and update tests for Python 3.10
+
+Fix https://github.com/pdoc3/pdoc/issues/400
+Thanks @tjni
+--- a/pdoc/__init__.py
++++ b/pdoc/__init__.py
+@@ -1275,7 +1275,7 @@ def _formatannotation(annot):
+     `typing.Optional`, `nptyping.NDArray` and other types.
+ 
+     >>> _formatannotation(NewType('MyType', str))
+-    'MyType'
++    'pdoc.MyType'
+     >>> _formatannotation(Optional[Tuple[Optional[int], None]])
+     'Optional[Tuple[Optional[int], None]]'
+     """
+--- a/pdoc/documentation.md
++++ b/pdoc/documentation.md
+@@ -353,7 +353,7 @@ modified templates into the `directories` list of the
+ 
+ Compatibility
+ -------------
+-`pdoc` requires Python 3.6+.
++`pdoc` requires Python 3.7+.
+ The last version to support Python 2.x is [pdoc3 0.3.x].
+ 
+ [pdoc3 0.3.x]: https://pypi.org/project/pdoc3/0.3.13/
+--- a/pdoc/test/__init__.py
++++ b/pdoc/test/__init__.py
+@@ -126,7 +126,8 @@ class CliTest(unittest.TestCase):
+     def setUp(self):
+         pdoc.reset()
+ 
+-    @unittest.skipIf(sys.version_info < (3, 7), 'pdoc._formatannotation fails on Py3.6')
++    @unittest.skipIf(sys.version_info < (3, 10),
++                     'HACK: _formatannotation() changed return value in Py3.10')
+     def test_project_doctests(self):
+         doctests = doctest.testmod(pdoc)
+         assert not doctests.failed and doctests.attempted, doctests
+@@ -185,8 +186,12 @@ def test_html(self):
+             '<object ',
+             ' class="ident">_private',
+             ' class="ident">_Private',
+-            'non_callable_routine',
+         ]
++        if sys.version_info >= (3, 10):
++            include_patterns.append('non_callable_routine')
++        else:
++            exclude_patterns.append('non_callable_routine')
++
+         package_files = {
+             '': self.PUBLIC_FILES,
+             '.subpkg2': [f for f in self.PUBLIC_FILES
+@@ -356,8 +361,11 @@ def test_text(self):
+             '_Private',
+             'subprocess',
+             'Hidden',
+-            'non_callable_routine',
+         ]
++        if sys.version_info >= (3, 10):
++            include_patterns.append('non_callable_routine')
++        else:
++            exclude_patterns.append('non_callable_routine')
+ 
+         with self.subTest(package=EXAMPLE_MODULE):
+             with redirect_streams() as (stdout, _):
+@@ -543,8 +551,9 @@ class C:
+         self.assertEqual(doc.doc['vars_dont'].docstring, '')
+         self.assertIn('integer', doc.doc['but_clss_have_doc'].docstring)
+ 
++    @unittest.skipIf(sys.version_info >= (3, 10), 'No builtin module "parser" in Py3.10')
+     def test_builtin_methoddescriptors(self):
+-        import parser
++        import parser  # TODO: replace with another public binary builtin
+         with self.assertWarns(UserWarning):
+             c = pdoc.Class('STType', pdoc.Module(parser), parser.STType)
+         self.assertIsInstance(c.doc['compile'], pdoc.Function)
+@@ -906,9 +915,13 @@ def bug130_str_annotation(a: "str"):
+         def bug253_newtype_annotation(a: CustomType):
+             return
+ 
++        expected = CustomType.__name__
++        if sys.version_info > (3, 10):
++            expected = f'{__name__}.{CustomType.__name__}'
++
+         self.assertEqual(
+             pdoc.Function('bug253', mod, bug253_newtype_annotation).params(annotate=True),
+-            ['a:\N{NBSP}CustomType'])
++            [f'a:\N{NBSP}{expected}'])
+ 
+         # typing.Callable bug
+         def f(a: typing.Callable):
+--- a/setup.py
++++ b/setup.py
+@@ -2,8 +2,8 @@
+ import sys
+ from setuptools import setup, find_packages
+ 
+-if sys.version_info < (3, 6):
+-    sys.exit('ERROR: pdoc requires Python 3.6+')
++if sys.version_info < (3, 7):
++    sys.exit('ERROR: pdoc requires Python 3.7+')
+ 
+ 
+ def _discover_tests():
+@@ -58,5 +58,5 @@ def _discover_tests():
+             'write_to': os.path.join('pdoc', '_version.py'),
+         },
+         test_suite="setup._discover_tests",
+-        python_requires='>= 3.6',
++        python_requires='>= 3.7',
+     )

diff --git a/dev-python/pdoc3/pdoc3-0.10.0.ebuild b/dev-python/pdoc3/pdoc3-0.10.0-r1.ebuild
similarity index 92%
rename from dev-python/pdoc3/pdoc3-0.10.0.ebuild
rename to dev-python/pdoc3/pdoc3-0.10.0-r1.ebuild
index 057bb057cb39..53eb83946604 100644
--- a/dev-python/pdoc3/pdoc3-0.10.0.ebuild
+++ b/dev-python/pdoc3/pdoc3-0.10.0-r1.ebuild
@@ -1,7 +1,7 @@
 # Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=7
+EAPI=8
 
 PYTHON_COMPAT=( python3_{9..11} )
 
@@ -22,6 +22,7 @@ DEPEND="${RDEPEND}"
 
 PATCHES=(
 	"${FILESDIR}/${PN}-TST-use-explicit-ClassWithNew-instead-of-typing.Gene.patch"
+	"${FILESDIR}/${PN}-0.10.0-update-tests.patch"
 )
 
 python_prepare_all() {


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-python/pdoc3/files/, dev-python/pdoc3/
@ 2024-12-14 13:47 Michał Górny
  0 siblings, 0 replies; 2+ messages in thread
From: Michał Górny @ 2024-12-14 13:47 UTC (permalink / raw
  To: gentoo-commits

commit:     35029d5ef189ced0d0cc7bff0a1e90e82c7abf0c
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 14 13:47:02 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Dec 14 13:47:41 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=35029d5e

dev-python/pdoc3: Remove old

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-python/pdoc3/Manifest                          |   2 -
 .../pdoc3/files/pdoc3-0.10.0-update-tests.patch    | 114 ---------------------
 ...licit-ClassWithNew-instead-of-typing.Gene.patch |  43 --------
 dev-python/pdoc3/pdoc3-0.10.0-r2.ebuild            |  42 --------
 4 files changed, 201 deletions(-)

diff --git a/dev-python/pdoc3/Manifest b/dev-python/pdoc3/Manifest
index 9ded269171f1..349dc45c66aa 100644
--- a/dev-python/pdoc3/Manifest
+++ b/dev-python/pdoc3/Manifest
@@ -1,3 +1 @@
-DIST pdoc3-0.10.0-fix-deprecation-warnings.patch 1447 BLAKE2B 6a4c554f3e0d3b66927cef22ab87a07c0711e6b01203bc37e54097f29f4c2547bd6daf721fa8745f941b1c74cd122222ccf8896ab6174c6775a47703ac02d17b SHA512 73d91a8f0d5747cefb972e1a6a028216688fde2f92cd8e5c4139dcebacc4a825e86345c419af7ccf5682dc6458ea5b20fd45799896555a8acadebc61da549140
-DIST pdoc3-0.10.0.tar.gz 86133 BLAKE2B 3bada6fb1b048c4eff7556108c29d7f92ee988332d160c4ff765c47bf0cf7a461ed90f93e7be25a7a3251f5d3e70492d23be7230a5ec4abb12612b7e0dd4b5b6 SHA512 646ffb9bceb4456a1ab36c840eb384858aab430443905bc71e62e9c71112a769b69e22cbd18a9d75b7968e2336cbbaa9072103f96dc2d0829ccc7515b057ca85
 DIST pdoc3-0.11.3.tar.gz 98948 BLAKE2B fff171dd8ede3298f55c18b55d491d9715f415a85b34bb7bf29112a4ea0a94d6842f322fa35a5eeaf4548c425c6a2f6ae108c2422377c02144e6713b9d380372 SHA512 b516aa73e985cc567c755214956d7aedc7f02c24bdd2c162454d70b07db74bb3f3b44f91adf94893beb970202febcfb6715aaa416ff8ede5f7aa66b28c648237

diff --git a/dev-python/pdoc3/files/pdoc3-0.10.0-update-tests.patch b/dev-python/pdoc3/files/pdoc3-0.10.0-update-tests.patch
deleted file mode 100644
index bd68ea2d8368..000000000000
--- a/dev-python/pdoc3/files/pdoc3-0.10.0-update-tests.patch
+++ /dev/null
@@ -1,114 +0,0 @@
-From 80af5d40d3ca39e2701c44941c1003ae6a280799 Mon Sep 17 00:00:00 2001
-From: Kernc <kerncece@gmail.com>
-Date: Sat, 29 Oct 2022 18:55:46 +0200
-Subject: [PATCH] CI: Bump min Python 3.7+ and update tests for Python 3.10
-
-Fix https://github.com/pdoc3/pdoc/issues/400
-Thanks @tjni
---- a/pdoc/__init__.py
-+++ b/pdoc/__init__.py
-@@ -1275,7 +1275,7 @@ def _formatannotation(annot):
-     `typing.Optional`, `nptyping.NDArray` and other types.
- 
-     >>> _formatannotation(NewType('MyType', str))
--    'MyType'
-+    'pdoc.MyType'
-     >>> _formatannotation(Optional[Tuple[Optional[int], None]])
-     'Optional[Tuple[Optional[int], None]]'
-     """
---- a/pdoc/documentation.md
-+++ b/pdoc/documentation.md
-@@ -353,7 +353,7 @@ modified templates into the `directories` list of the
- 
- Compatibility
- -------------
--`pdoc` requires Python 3.6+.
-+`pdoc` requires Python 3.7+.
- The last version to support Python 2.x is [pdoc3 0.3.x].
- 
- [pdoc3 0.3.x]: https://pypi.org/project/pdoc3/0.3.13/
---- a/pdoc/test/__init__.py
-+++ b/pdoc/test/__init__.py
-@@ -126,7 +126,8 @@ class CliTest(unittest.TestCase):
-     def setUp(self):
-         pdoc.reset()
- 
--    @unittest.skipIf(sys.version_info < (3, 7), 'pdoc._formatannotation fails on Py3.6')
-+    @unittest.skipIf(sys.version_info < (3, 10),
-+                     'HACK: _formatannotation() changed return value in Py3.10')
-     def test_project_doctests(self):
-         doctests = doctest.testmod(pdoc)
-         assert not doctests.failed and doctests.attempted, doctests
-@@ -185,8 +186,12 @@ def test_html(self):
-             '<object ',
-             ' class="ident">_private',
-             ' class="ident">_Private',
--            'non_callable_routine',
-         ]
-+        if sys.version_info >= (3, 10):
-+            include_patterns.append('non_callable_routine')
-+        else:
-+            exclude_patterns.append('non_callable_routine')
-+
-         package_files = {
-             '': self.PUBLIC_FILES,
-             '.subpkg2': [f for f in self.PUBLIC_FILES
-@@ -356,8 +361,11 @@ def test_text(self):
-             '_Private',
-             'subprocess',
-             'Hidden',
--            'non_callable_routine',
-         ]
-+        if sys.version_info >= (3, 10):
-+            include_patterns.append('non_callable_routine')
-+        else:
-+            exclude_patterns.append('non_callable_routine')
- 
-         with self.subTest(package=EXAMPLE_MODULE):
-             with redirect_streams() as (stdout, _):
-@@ -543,8 +551,9 @@ class C:
-         self.assertEqual(doc.doc['vars_dont'].docstring, '')
-         self.assertIn('integer', doc.doc['but_clss_have_doc'].docstring)
- 
-+    @unittest.skipIf(sys.version_info >= (3, 10), 'No builtin module "parser" in Py3.10')
-     def test_builtin_methoddescriptors(self):
--        import parser
-+        import parser  # TODO: replace with another public binary builtin
-         with self.assertWarns(UserWarning):
-             c = pdoc.Class('STType', pdoc.Module(parser), parser.STType)
-         self.assertIsInstance(c.doc['compile'], pdoc.Function)
-@@ -906,9 +915,13 @@ def bug130_str_annotation(a: "str"):
-         def bug253_newtype_annotation(a: CustomType):
-             return
- 
-+        expected = CustomType.__name__
-+        if sys.version_info > (3, 10):
-+            expected = f'{__name__}.{CustomType.__name__}'
-+
-         self.assertEqual(
-             pdoc.Function('bug253', mod, bug253_newtype_annotation).params(annotate=True),
--            ['a:\N{NBSP}CustomType'])
-+            [f'a:\N{NBSP}{expected}'])
- 
-         # typing.Callable bug
-         def f(a: typing.Callable):
---- a/setup.py
-+++ b/setup.py
-@@ -2,8 +2,8 @@
- import sys
- from setuptools import setup, find_packages
- 
--if sys.version_info < (3, 6):
--    sys.exit('ERROR: pdoc requires Python 3.6+')
-+if sys.version_info < (3, 7):
-+    sys.exit('ERROR: pdoc requires Python 3.7+')
- 
- 
- def _discover_tests():
-@@ -58,5 +58,5 @@ def _discover_tests():
-             'write_to': os.path.join('pdoc', '_version.py'),
-         },
-         test_suite="setup._discover_tests",
--        python_requires='>= 3.6',
-+        python_requires='>= 3.7',
-     )

diff --git a/dev-python/pdoc3/files/pdoc3-TST-use-explicit-ClassWithNew-instead-of-typing.Gene.patch b/dev-python/pdoc3/files/pdoc3-TST-use-explicit-ClassWithNew-instead-of-typing.Gene.patch
deleted file mode 100644
index b969bf4727bc..000000000000
--- a/dev-python/pdoc3/files/pdoc3-TST-use-explicit-ClassWithNew-instead-of-typing.Gene.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-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 e8c3d94a805b..8b67ab77d3f7 100644
---- a/pdoc/test/__init__.py
-+++ b/pdoc/test/__init__.py
-@@ -1043,16 +1043,20 @@ class Foo:
- 
-         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)
--- 
-2.32.0
-

diff --git a/dev-python/pdoc3/pdoc3-0.10.0-r2.ebuild b/dev-python/pdoc3/pdoc3-0.10.0-r2.ebuild
deleted file mode 100644
index 326e968a0b58..000000000000
--- a/dev-python/pdoc3/pdoc3-0.10.0-r2.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{9..12} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Auto-generate API documentation for Python projects"
-HOMEPAGE="https://pdoc3.github.io/pdoc/"
-SRC_URI+="
-	https://github.com/pdoc3/pdoc/commit/14cd51c1b7431cdec5c3e7510b8a0e3b66c2f7d4.patch
-		-> ${PN}-0.10.0-fix-deprecation-warnings.patch
-"
-
-LICENSE="AGPL-3+"
-SLOT="0"
-KEYWORDS="amd64 ~x86"
-
-RDEPEND="
-	dev-python/mako[${PYTHON_USEDEP}]
-	>=dev-python/markdown-3.0[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-
-PATCHES=(
-	"${FILESDIR}/${PN}-TST-use-explicit-ClassWithNew-instead-of-typing.Gene.patch"
-	"${FILESDIR}/${PN}-0.10.0-update-tests.patch"
-	"${DISTDIR}"/${PN}-0.10.0-fix-deprecation-warnings.patch
-)
-
-python_prepare_all() {
-	distutils-r1_python_prepare_all
-	sed -i \
-		-e "/setuptools_git/d" \
-		-e "/setuptools_scm/d" \
-		setup.py || die
-}
-
-distutils_enable_tests unittest


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-12-14 13:47 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-04-03 16:04 [gentoo-commits] repo/gentoo:master commit in: dev-python/pdoc3/files/, dev-python/pdoc3/ Florian Schmaus
  -- strict thread matches above, loose matches on Subject: below --
2024-12-14 13:47 Michał Górny

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox