diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-06-19 00:09:54 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-06-19 00:09:54 +0100 |
commit | e8df704cf9b5e9e517317b8912377c0a8ca0d11e (patch) | |
tree | ab3f43045fb1d37471f8217c8547d2120bb3d1da /dev-python/toolz | |
parent | ccaccfe4f1da8c11d9fa110f6e4eb847358769d7 (diff) |
gentoo auto-resync : 19:06:2024 - 00:09:54
Diffstat (limited to 'dev-python/toolz')
-rw-r--r-- | dev-python/toolz/Manifest | 3 | ||||
-rw-r--r-- | dev-python/toolz/files/toolz-0.12.1-test.patch | 88 | ||||
-rw-r--r-- | dev-python/toolz/toolz-0.12.1.ebuild | 7 |
3 files changed, 96 insertions, 2 deletions
diff --git a/dev-python/toolz/Manifest b/dev-python/toolz/Manifest index 29092012f1b5..343829cd9a3c 100644 --- a/dev-python/toolz/Manifest +++ b/dev-python/toolz/Manifest @@ -1,3 +1,4 @@ +AUX toolz-0.12.1-test.patch 3505 BLAKE2B 6d106d2f6b92ef19ee11df45959be6cdda0944cc586c66a1439a7a054834b4efed884f91f8693c2481868b7c936fe7397d982e31c134efa3b280adc28b4f43f0 SHA512 dbd5d5ce23ce530ee32b4cdb409e6f7f9217ed2f9dfbe5b8a8d9c9164c5ef8e92df219e18629bfd430147ee25a337b16563d150a1c6d08a99bfd556cd1314075 DIST toolz-0.12.1.tar.gz 66550 BLAKE2B 41b2002147cd453c2a8300c7ec247e06dfc8fba69a772df4a8f5c35349e991453bbbd0d7ed0162391d9314873bf0e169d20c86b875e4d4eca01aaadc76edea61 SHA512 c514934d1a8069cd70e4d8b9ca32cd2c96e85b1dabb45bbbe4b0644581eb7e7f9f6a6d9230483f1872695edf25ff77ad7643cffb3041a012ed64424097a23e9e -EBUILD toolz-0.12.1.ebuild 593 BLAKE2B e1badc37bf7d7caa02c191852f5b641f2c638e01f34c1a906cc3750cd85106ad9e49ccff94155e7ea41bfd69eeeeccb34c652baeb28670d6fd0a7637b86ad3e8 SHA512 f46e5814839b425f54bbcdee119177bdf58c20ea6be15affe6fc6cf1526be246fb22a203efb3c0ca912b5ef5c1899cdf2266be25c0161e26853c7d59b1e9cfb0 +EBUILD toolz-0.12.1.ebuild 682 BLAKE2B 7c20eecc3b11a0e1a26fa23c578a0321236f2d9437573fe9e66a252e485f15942ea3b077ffa443e84401541ce53065079e2d322eda8a3a4631c91723bad15fee SHA512 59cb8e5b274a7c1715421ae5e4a4abda11eee47285b02bdd0c3d6d45d7fa329c0c6d6d460187cb119c3ecd1c7ec6dd027be9ada382944e3f69536134672ad27c MISC metadata.xml 386 BLAKE2B ab0f60ec7b44fdb9789d3ef420d5e99cacea66159be7f4736f6502e595a00d740b6cdc3668304ecade1e994e5b2837a986bfff1ad49e884ba936bd039f80b880 SHA512 835c6ac2bc4af983d1b5a77bf4f48e322ec84e79000f0316d694f92800925e521f3b9d742465ba44f96b973ad30dbb37e46bb40589307edd0b8b0f01ceabda31 diff --git a/dev-python/toolz/files/toolz-0.12.1-test.patch b/dev-python/toolz/files/toolz-0.12.1-test.patch new file mode 100644 index 000000000000..396ed003a62e --- /dev/null +++ b/dev-python/toolz/files/toolz-0.12.1-test.patch @@ -0,0 +1,88 @@ +From b79a954ca5fa6801c3a3dc6b39fa523be33884a8 Mon Sep 17 00:00:00 2001 +From: Adam Williamson <awilliam@redhat.com> +Date: Fri, 14 Jun 2024 13:43:24 -0700 +Subject: [PATCH 1/2] test_excepts: fudge changed indentation in Python 3.13 + +Signed-off-by: Adam Williamson <awilliam@redhat.com> +--- + toolz/tests/test_functoolz.py | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/toolz/tests/test_functoolz.py b/toolz/tests/test_functoolz.py +index 555cf48d..a28c2a77 100644 +--- a/toolz/tests/test_functoolz.py ++++ b/toolz/tests/test_functoolz.py +@@ -738,10 +738,13 @@ def f(a, b): + def test_excepts(): + # These are descriptors, make sure this works correctly. + assert excepts.__name__ == 'excepts' ++ # in Python < 3.13 the second line is indented, in 3.13+ ++ # it is not, strip all lines to fudge it ++ testlines = "\n".join((line.strip() for line in excepts.__doc__.splitlines())) + assert ( + 'A wrapper around a function to catch exceptions and\n' +- ' dispatch to a handler.\n' +- ) in excepts.__doc__ ++ 'dispatch to a handler.\n' ++ ) in testlines + + def idx(a): + """idx docstring + +From 832e81d28882d1235c704de95e1d075ee61976c1 Mon Sep 17 00:00:00 2001 +From: Adam Williamson <awilliam@redhat.com> +Date: Fri, 14 Jun 2024 16:03:30 -0700 +Subject: [PATCH 2/2] test_inspect_wrapped_property: handle fixed wrapper + inspection + +Python upstream recently fixed the behavior of inspect with +wrappers: https://github.com/python/cpython/issues/112006 . The +assertion here relies on the broken behavior, we only get None +if `inspect(Wrapped)` fails and raises `ValueError`. Now it +works, we actually get the correct answer, 1. This changes it so +we assert the correct thing depending on the Python version (the +fix was backported to 3.11.9 and 3.12.3, so the check has to be a +bit complicated). + +Signed-off-by: Adam Williamson <awilliam@redhat.com> +--- + toolz/tests/test_inspect_args.py | 21 +++++++++++++++++++-- + 1 file changed, 19 insertions(+), 2 deletions(-) + +diff --git a/toolz/tests/test_inspect_args.py b/toolz/tests/test_inspect_args.py +index 93408eb5..f26dbc64 100644 +--- a/toolz/tests/test_inspect_args.py ++++ b/toolz/tests/test_inspect_args.py +@@ -2,6 +2,7 @@ + import inspect + import itertools + import operator ++import sys + import toolz + from toolz.functoolz import (curry, is_valid_args, is_partial_args, is_arity, + num_required_args, has_varargs, has_keywords) +@@ -482,6 +483,22 @@ def __wrapped__(self): + wrapped = Wrapped(func) + assert inspect.signature(func) == inspect.signature(wrapped) + +- assert num_required_args(Wrapped) is None +- _sigs.signatures[Wrapped] = (_sigs.expand_sig((0, lambda func: None)),) ++ # inspect.signature did not used to work properly on wrappers, ++ # but it was fixed in Python 3.11.9, Python 3.12.3 and Python ++ # 3.13+ ++ inspectbroken = True ++ if sys.version_info.major > 3: ++ inspectbroken = False ++ if sys.version_info.major == 3: ++ if sys.version_info.minor == 11 and sys.version_info.micro > 8: ++ inspectbroken = False ++ if sys.version_info.minor == 12 and sys.version_info.micro > 2: ++ inspectbroken = False ++ if sys.version_info.minor > 12: ++ inspectbroken = False ++ ++ if inspectbroken: ++ assert num_required_args(Wrapped) is None ++ _sigs.signatures[Wrapped] = (_sigs.expand_sig((0, lambda func: None)),) ++ + assert num_required_args(Wrapped) == 1 diff --git a/dev-python/toolz/toolz-0.12.1.ebuild b/dev-python/toolz/toolz-0.12.1.ebuild index 111952a712ff..a29eb653f87f 100644 --- a/dev-python/toolz/toolz-0.12.1.ebuild +++ b/dev-python/toolz/toolz-0.12.1.ebuild @@ -4,7 +4,7 @@ EAPI=8 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( pypy3 python3_{10..12} ) +PYTHON_COMPAT=( pypy3 python3_{10..13} ) inherit distutils-r1 pypi @@ -20,6 +20,11 @@ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 ~spar distutils_enable_tests pytest +PATCHES=( + # https://github.com/pytoolz/toolz/pull/582 + "${FILESDIR}/${P}-test.patch" +) + python_test() { local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 epytest |