diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2026-04-15 19:12:21 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2026-04-15 19:12:21 +0000 |
| commit | f6bcc45ab811bbc6c133a87192de845240fdfd9c (patch) | |
| tree | 2d40b5748b807e79e3247c8672686a94d5a61290 /dev-python | |
| parent | ef93034729ae626be7fa73289869f79c19ac7144 (diff) | |
| download | baldeagleos-repo-f6bcc45ab811bbc6c133a87192de845240fdfd9c.tar.gz baldeagleos-repo-f6bcc45ab811bbc6c133a87192de845240fdfd9c.tar.xz baldeagleos-repo-f6bcc45ab811bbc6c133a87192de845240fdfd9c.zip | |
Adding metadata
Diffstat (limited to 'dev-python')
55 files changed, 1110 insertions, 68 deletions
diff --git a/dev-python/aiorpcx/aiorpcx-0.25.0.ebuild b/dev-python/aiorpcx/aiorpcx-0.25.0.ebuild index 9b125b2ced06..57a1c5401c70 100644 --- a/dev-python/aiorpcx/aiorpcx-0.25.0.ebuild +++ b/dev-python/aiorpcx/aiorpcx-0.25.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -42,4 +42,6 @@ EPYTEST_DESELECT=( PATCHES=( # https://github.com/kyuupichan/aiorpcX/commit/b8ce32889c45c98b44c4e247ec0b0ae206e9ee91 "${FILESDIR}/${P}-pytest-asyncio-1.patch" + # https://github.com/kyuupichan/aiorpcX/commit/25043621700672ee375d20b78804118acac43b1b + "${FILESDIR}/${P}-py314.patch" ) diff --git a/dev-python/aiorpcx/files/aiorpcx-0.25.0-py314.patch b/dev-python/aiorpcx/files/aiorpcx-0.25.0-py314.patch new file mode 100644 index 000000000000..b000d6eb18ed --- /dev/null +++ b/dev-python/aiorpcx/files/aiorpcx-0.25.0-py314.patch @@ -0,0 +1,22 @@ +From 25043621700672ee375d20b78804118acac43b1b Mon Sep 17 00:00:00 2001 +From: Neil Booth <kyuupichan@pm.me> +Date: Thu, 19 Feb 2026 13:29:30 +0000 +Subject: [PATCH] Make test_misc() async (danigm) + +--- + tests/test_jsonrpc.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/test_jsonrpc.py b/tests/test_jsonrpc.py +index 81414a7..8cda788 100755 +--- a/tests/test_jsonrpc.py ++++ b/tests/test_jsonrpc.py +@@ -1064,7 +1064,7 @@ async def send_batch(batch): + await group.spawn(send_batch(batch)) + + +-def test_misc(protocol): ++async def test_misc(protocol): + '''Misc tests to get full coverage.''' + connection = JSONRPCConnection(protocol) + diff --git a/dev-python/argh/argh-0.31.3.ebuild b/dev-python/argh/argh-0.31.3.ebuild index 89743babaa59..eb7d15eff04d 100644 --- a/dev-python/argh/argh-0.31.3.ebuild +++ b/dev-python/argh/argh-0.31.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -25,4 +25,10 @@ BDEPEND=" ) " +EPYTEST_PLUGINS=() distutils_enable_tests pytest + +PATCHES=( + # https://github.com/neithere/argh/commit/699568ad674c5ea26d361202c386a8a8a82ec8ad + "${FILESDIR}/${P}-py314.patch" +) diff --git a/dev-python/argh/files/argh-0.31.3-py314.patch b/dev-python/argh/files/argh-0.31.3-py314.patch new file mode 100644 index 000000000000..ef1ac87ebbc7 --- /dev/null +++ b/dev-python/argh/files/argh-0.31.3-py314.patch @@ -0,0 +1,54 @@ +From 699568ad674c5ea26d361202c386a8a8a82ec8ad Mon Sep 17 00:00:00 2001 +From: Andy Mikhaylenko <neithere@gmail.com> +Date: Sun, 1 Jun 2025 21:28:53 +0200 +Subject: [PATCH] fix(test): tests were broken under Python 3.14.0b2 (fixes + #239) + +(stripped down to bare essentials) + +--- a/tests/test_integration.py ++++ b/tests/test_integration.py +@@ -796,11 +796,17 @@ def func(): + parser = DebugArghParser() + parser.set_default_command(func) + +- assert unindent(func.__doc__) in parser.format_help() ++ docstring = func.__doc__ ++ assert docstring ++ assert unindent(docstring) in parser.format_help() + + + def test_prog(capsys: pytest.CaptureFixture[str]): +- "Program name propagates from sys.argv[0]" ++ """ ++ Program name propagates to the usage string. ++ It's not just sys.argv[0], the logic is a bit more complicated in argparse, ++ so we just reuse whatever it has produced. ++ """ + + def cmd(*, foo=1): + return foo +@@ -808,10 +814,12 @@ def cmd(*, foo=1): + parser = DebugArghParser() + parser.add_commands([cmd]) + +- usage = get_usage_string() ++ usage = f"usage: {parser.prog} [-h]" + +- assert run(parser, "-h", exit=True) == 0 ++ exit_code = run(parser, "-h", exit=True) + captured = capsys.readouterr() ++ ++ assert exit_code == 0 + assert captured.out.startswith(usage) + + +@@ -822,8 +830,6 @@ def cmd(*, foo=1): + parser = DebugArghParser() + parser.set_default_command(cmd) + +- get_usage_string("[-f FOO]") +- + assert run(parser, "--foo 1") == R(out="1\n", err="") + assert run(parser, "--bar 1", exit=True) == "unrecognized arguments: --bar 1" + assert run(parser, "--bar 1", exit=False, kwargs={"skip_unknown_args": True}) == R( diff --git a/dev-python/editables/Manifest b/dev-python/editables/Manifest index 65adaad28cf7..dda0ae854a24 100644 --- a/dev-python/editables/Manifest +++ b/dev-python/editables/Manifest @@ -1 +1,2 @@ DIST editables-0.5.gh.tar.gz 15469 BLAKE2B 9bbbc61a4e0a57edc6b7ba463da0d6c2f40090e347e67f203f16163bec70b63a2289332e9d69a46919f8aa009be1ec96e1b1cd2708ce5eb6ab33af6eb36360e0 SHA512 ac39d2e6a51625697c517b85fec11b525b1a41f82cf4f55c7595fed19da867065a62eee5e3656706f7402d0499754f4a142da77d699c59dffc8b769fa1c3dbe2 +DIST editables-0.6.gh.tar.gz 18722 BLAKE2B 8970dd52a93b99f2af62e9fe9c0c2b6f9a97cff9f1d4574e8960336ba73cf570dbba9467847fadf127b593384b1de29a81028432b3f923accefe41ca63e4f38d SHA512 123a5aec65cfa259dddfd6a8c0e4a51f5ad722e36cd360fd4d5094b853805b0332ec1b143a19e5fae79e5f841124bbd6162bb6fe64d8d92d7edcf5b640afcdc4 diff --git a/dev-python/editables/editables-0.6.ebuild b/dev-python/editables/editables-0.6.ebuild new file mode 100644 index 000000000000..2be2fd71ac2b --- /dev/null +++ b/dev-python/editables/editables-0.6.ebuild @@ -0,0 +1,26 @@ +# Copyright 2022-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{10..14} ) + +inherit distutils-r1 + +DESCRIPTION="A Python library for creating 'editable wheels'" +HOMEPAGE=" + https://pypi.org/project/editables/ + https://github.com/pfmoore/editables/ +" +SRC_URI=" + https://github.com/pfmoore/editables/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest diff --git a/dev-python/filelock/Manifest b/dev-python/filelock/Manifest index 3f8840db9f88..eb2e28b2fc05 100644 --- a/dev-python/filelock/Manifest +++ b/dev-python/filelock/Manifest @@ -1,2 +1,4 @@ DIST filelock-3.25.2.tar.gz 40480 BLAKE2B ba4435e9f121e2c6e1a584ab915b3b2402cb061c9e173d4c1f5c4225c1f345f6e5fa1f4d46ff3b11f46f433f1bfc801fcd1f6cb456883688798126320ee08e2c SHA512 cc2fa97b1720a9b76c2b66da0268ead7c29d188511737672240002215e90362e5e214befc617dd15aed645dee9077d29b31b24bcccfa1fdd3ab0e8f8982601e1 DIST filelock-3.25.2.tar.gz.provenance 9520 BLAKE2B e536981b5f552135a6066eaf75ac045590f8fe71da4d1a794fc897a8734d72ab749da7135fb5c7c7cf49ffb0e89890ed1e029091ce8ae05ecc6845fc0898833b SHA512 9a3ba6774aef62a400a73ad561415e184bc1ed717e0b2f4f8d2d42ca74c319f06ff40e88f38093eff3f3e3e2fc08cf296ccbdb1b7d5162b02efd505c9c417a62 +DIST filelock-3.28.0.tar.gz 56474 BLAKE2B 174c287a64470c85f203bbb435696275d7bc82ab4a76157a8c7278ef4d5554094ff28ab971f3145022a4031c4d123c8b09b103c4a12699eefa1152ab3ef7a36f SHA512 5729570f86816cb95e0cdca1c0ae830d6fa21b966429348493df7173e091fdb19144336fed762bfb5b950f4b9a056ad1b4891864ab55efd9f2d6475be2216c6f +DIST filelock-3.28.0.tar.gz.provenance 9570 BLAKE2B ffefd7f319adeb400f09576fd7f5454a8d4064c98e94148669a32bc21a37c013218f8dbdbaac7ef93c6490a3ad68e7cb42b39699b49d56bd045fbac963afa043 SHA512 6b3874946d34d64a433efcf56c8bf7c362ea6692965e3277d1e7e542b8f6c3853708ea3f2d33d20f274c395498a76642cab7a887c0750aff9f7a284c49cd3a10 diff --git a/dev-python/filelock/filelock-3.28.0.ebuild b/dev-python/filelock/filelock-3.28.0.ebuild new file mode 100644 index 000000000000..8429f48b6ff5 --- /dev/null +++ b/dev-python/filelock/filelock-3.28.0.ebuild @@ -0,0 +1,31 @@ +# Copyright 2018-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYPI_VERIFY_REPO=https://github.com/tox-dev/filelock +PYTHON_COMPAT=( python3_{10..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="A platform independent file lock for Python" +HOMEPAGE=" + https://github.com/tox-dev/filelock/ + https://pypi.org/project/filelock/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + +BDEPEND=" + dev-python/hatch-vcs[${PYTHON_USEDEP}] + test? ( + dev-python/virtualenv[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-{asyncio,mock,timeout} ) +EPYTEST_RERUNS=5 +distutils_enable_tests pytest diff --git a/dev-python/fonttools/fonttools-4.61.1.ebuild b/dev-python/fonttools/fonttools-4.61.1.ebuild index 813b9d70b122..9415d936cbc1 100644 --- a/dev-python/fonttools/fonttools-4.61.1.ebuild +++ b/dev-python/fonttools/fonttools-4.61.1.ebuild @@ -33,9 +33,6 @@ BDEPEND=" ) test? ( dev-python/brotlicffi[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - >=dev-python/fs-2.4.9[${PYTHON_USEDEP}] - ' 3.{11..13}) dev-python/munkres[${PYTHON_USEDEP}] app-arch/zopfli ) diff --git a/dev-python/fonttools/fonttools-4.62.0.ebuild b/dev-python/fonttools/fonttools-4.62.0.ebuild index 91f734915b44..5c037582159f 100644 --- a/dev-python/fonttools/fonttools-4.62.0.ebuild +++ b/dev-python/fonttools/fonttools-4.62.0.ebuild @@ -33,9 +33,6 @@ BDEPEND=" ) test? ( dev-python/brotlicffi[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - >=dev-python/fs-2.4.9[${PYTHON_USEDEP}] - ' 3.{11..13}) dev-python/munkres[${PYTHON_USEDEP}] app-arch/zopfli ) diff --git a/dev-python/fonttools/fonttools-4.62.1.ebuild b/dev-python/fonttools/fonttools-4.62.1.ebuild index 57e0b7f2ad7e..4ca323d0b781 100644 --- a/dev-python/fonttools/fonttools-4.62.1.ebuild +++ b/dev-python/fonttools/fonttools-4.62.1.ebuild @@ -33,9 +33,6 @@ BDEPEND=" ) test? ( dev-python/brotlicffi[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - >=dev-python/fs-2.4.9[${PYTHON_USEDEP}] - ' 3.{11..13}) dev-python/munkres[${PYTHON_USEDEP}] app-arch/zopfli ) diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest index 55a79d69c202..8d4ce35cd7a4 100644 --- a/dev-python/hypothesis/Manifest +++ b/dev-python/hypothesis/Manifest @@ -3,3 +3,4 @@ DIST hypothesis-6.151.11.gh.tar.gz 9866574 BLAKE2B a721b9d47552dba2828b233e04a0a DIST hypothesis-6.151.12.gh.tar.gz 9870628 BLAKE2B 4f0ffbdc31e11c6ab8541cd12df34c241c192d6bfe43aedcc530110ca5cd502d988f8c35aa0b138b8a5606a4ac013f883018a1bb6e998a8ccd4c7b7ca4eceb9f SHA512 5bfae6c4b0248d2e86b44b91ac633a0131577a64b36360661a5ae205b3f008c2797bf04b34aedf2e0c453cf266e14ca75e4624dc77a08f4078504629d78f677c DIST hypothesis-6.151.14.gh.tar.gz 9871044 BLAKE2B bed431dcd481f5af11043fd0beca9caf207c918052dd054ef0e758d07646b1870417d868179bb251c6f6463fe73d10a8adabce5f0b0cfa9858be77e876575a46 SHA512 c1e3e3b03d3ed3ac50c7e83b236b8eda65ab6694adde07c88e5096df7361242d194b7624743656e8f30d885e554428d1af3cb9cbfd20514dca1e50bf3d29b4e5 DIST hypothesis-6.151.9.gh.tar.gz 9864451 BLAKE2B 9d9c2800cf1212e743a599c261c78c0a7d349e58075a443e0d10e6373b1582e059abde416cec4f3a8185ae424725f93da8ab4e43dd70bd0f86071d69aca94def SHA512 3e41bdd077a18fe72360547bc03f2c3d7218e8cd6cb563fffd6024427bfa5ce0764ca9c7ef0dafdded896625128fc14b9d3f8c4564aa8a509545abf0ad24adbf +DIST hypothesis-6.152.1.gh.tar.gz 9871990 BLAKE2B cd86297e7247e3a515cbebf862a2397c4dfa50edda336e6be46b7b9b52d724857ab41ffb2b09846c7dfb6d0c6730082aa92735c7b4bd3b643781c87fd7de0706 SHA512 8d8c865bf38759e58020d4e4a1632dd0c3179c50deb14995bbe61cdf714b6230e9a3df0e2302c4842513d37d5c5cfeab49f05314b672afcf66e7081eafe88071 diff --git a/dev-python/hypothesis/hypothesis-6.152.1.ebuild b/dev-python/hypothesis/hypothesis-6.152.1.ebuild new file mode 100644 index 000000000000..e2dc047d3cc6 --- /dev/null +++ b/dev-python/hypothesis/hypothesis-6.152.1.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +CLI_COMPAT=( python3_{11..13} ) +PYTHON_COMPAT=( python3_{10..14} ) +PYTHON_REQ_USE="threads(+),sqlite" + +inherit distutils-r1 optfeature + +TAG=hypothesis-python-${PV} +MY_P=hypothesis-${TAG} +DESCRIPTION="A library for property based testing" +HOMEPAGE=" + https://github.com/HypothesisWorks/hypothesis/ + https://pypi.org/project/hypothesis/ +" +SRC_URI=" + https://github.com/HypothesisWorks/hypothesis/archive/${TAG}.tar.gz + -> ${P}.gh.tar.gz +" +S="${WORKDIR}/${MY_P}/hypothesis-python" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="cli" + +RDEPEND=" + >=dev-python/sortedcontainers-2.1.0[${PYTHON_USEDEP}] + cli? ( + $(python_gen_cond_dep ' + dev-python/black[${PYTHON_USEDEP}] + dev-python/click[${PYTHON_USEDEP}] + ' "${CLI_COMPAT[@]}") + ) +" +BDEPEND=" + test? ( + >=dev-python/attrs-22.2.0[${PYTHON_USEDEP}] + dev-python/pexpect[${PYTHON_USEDEP}] + >=dev-python/pytest-8[${PYTHON_USEDEP}] + ) +" +PDEPEND=" + dev-python/hypothesis-gentoo[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGIN_LOAD_VIA_ENV=1 +EPYTEST_PLUGINS=( "${PN}" pytest-xdist ) +EPYTEST_RERUNS=5 +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_test() { + # NB: paths need to be relative to pytest.ini, + # i.e. start with hypothesis-python/ + local EPYTEST_DESELECT=( + # broken somehow (xdist?) + 'hypothesis-python/tests/pytest/test_constant_collection_timing.py::test_constant_collection_timing[True]' + ) + local EPYTEST_IGNORE=( + # require syrupy + tests/cover/test_custom_reprs.py + ) + case ${EPYTHON} in + pypy3.11) + EPYTEST_DESELECT+=( + 'hypothesis-python/tests/cover/test_lambda_formatting.py::test_modifying_lambda_source_code_returns_unknown[False]' + ) + ;; + python3.14t) + EPYTEST_DESELECT+=( + # TODO + 'hypothesis-python/tests/cover/test_lambda_formatting.py::test_modifying_lambda_source_code_returns_unknown[False]' + ) + ;; + esac + + local -x HYPOTHESIS_NO_PLUGINS=1 + epytest -o filterwarnings= tests/{cover,pytest,quality} +} + +src_install() { + local HAD_CLI= + + distutils-r1_src_install + + if [[ ! ${HAD_CLI} ]]; then + rm -r "${ED}/usr/bin" || die + fi +} + +python_install() { + distutils-r1_python_install + if use cli && has "${EPYTHON}" "${CLI_COMPAT[@]/_/.}"; then + HAD_CLI=1 + else + rm -r "${D}$(python_get_scriptdir)" || die + fi +} + +pkg_postinst() { + optfeature "datetime support" dev-python/pytz + optfeature "dateutil support" dev-python/python-dateutil + optfeature "numpy support" dev-python/numpy + optfeature "django support" dev-python/django dev-python/pytz + optfeature "pandas support" dev-python/pandas + optfeature "pytest support" dev-python/pytest +} diff --git a/dev-python/liblarch/liblarch-3.2.0.ebuild b/dev-python/liblarch/liblarch-3.2.0.ebuild index 3f5f29937df0..e159a50a2d70 100644 --- a/dev-python/liblarch/liblarch-3.2.0.ebuild +++ b/dev-python/liblarch/liblarch-3.2.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -30,6 +30,7 @@ RDEPEND=" ${DEPEND} " +EPYTEST_PLUGINS=() distutils_enable_tests pytest src_test() { diff --git a/dev-python/librt/librt-0.9.0.ebuild b/dev-python/librt/librt-0.9.0.ebuild index 3141e6033308..961df9196779 100644 --- a/dev-python/librt/librt-0.9.0.ebuild +++ b/dev-python/librt/librt-0.9.0.ebuild @@ -18,7 +18,7 @@ HOMEPAGE=" LICENSE="MIT PSF-2.4" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" BDEPEND=" test? ( diff --git a/dev-python/loguru/files/loguru-0.7.3-py314.patch b/dev-python/loguru/files/loguru-0.7.3-py314.patch new file mode 100644 index 000000000000..c47d81608288 --- /dev/null +++ b/dev-python/loguru/files/loguru-0.7.3-py314.patch @@ -0,0 +1,58 @@ +From 84023e2bd8339de95250470f422f096edcb8f7b7 Mon Sep 17 00:00:00 2001 +From: Delgan <delgan.py@gmail.com> +Date: Sat, 5 Jul 2025 22:43:12 +0200 +Subject: [PATCH] Fix failing "exception_modern" unit test with Python 3.14 + (#1331) + +The test relies on the "repr()" output of a few classes which are +not meant to be considered as a stabilized API. In this +specific case, "Union" representation was changed upstream from +"typing.Union" to "<class 'typing.Union'>" (kind of leak +implementation details). + +I simply replaced the dummy "Union" with "Tuple" in the unit test, +since its representation appears stable acrcoss versions. +--- + tests/exceptions/output/modern/type_hints.txt | 4 ++-- + tests/exceptions/source/modern/type_hints.py | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/tests/exceptions/output/modern/type_hints.txt b/tests/exceptions/output/modern/type_hints.txt +index 64484d3f..917180a3 100644 +--- a/tests/exceptions/output/modern/type_hints.txt ++++ b/tests/exceptions/output/modern/type_hints.txt +@@ -10,11 +10,11 @@ + [36m └ [0m[36m[1m<function foo at 0xDEADBEEF>[0m + + File "[32mtests/exceptions/source/modern/[0m[32m[1mtype_hints.py[0m", line [33m15[0m, in [35mfoo[0m +- [35m[1mdef[0m [1mfoo[0m[1m([0m[1ma[0m[1m:[0m [1mint[0m[1m,[0m [1mb[0m[1m:[0m [1mUnion[0m[1m[[0m[1mName[0m[1m,[0m [1mfloat[0m[1m][0m[1m,[0m [1mc[0m[1m:[0m [36m"Name"[0m[1m)[0m [35m[1m->[0m [1mT[0m[1m:[0m [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m ++ [35m[1mdef[0m [1mfoo[0m[1m([0m[1ma[0m[1m:[0m [1mint[0m[1m,[0m [1mb[0m[1m:[0m [1mTuple[0m[1m[[0m[1mName[0m[1m,[0m [1mfloat[0m[1m][0m[1m,[0m [1mc[0m[1m:[0m [36m"Name"[0m[1m)[0m [35m[1m->[0m [1mT[0m[1m:[0m [34m[1m1[0m [35m[1m/[0m [34m[1m0[0m + [36m │ │ │ │ │ │ └ [0m[36m[1m~T[0m + [36m │ │ │ │ │ └ [0m[36m[1m3[0m + [36m │ │ │ │ └ [0m[36m[1m<class 'str'>[0m +- [36m │ │ │ └ [0m[36m[1mtyping.Union[0m ++ [36m │ │ │ └ [0m[36m[1mtyping.Tuple[0m + [36m │ │ └ [0m[36m[1m2[0m + [36m │ └ [0m[36m[1m1[0m + [36m └ [0m[36m[1m<function foo at 0xDEADBEEF>[0m +diff --git a/tests/exceptions/source/modern/type_hints.py b/tests/exceptions/source/modern/type_hints.py +index 84b36e51..cda95a68 100644 +--- a/tests/exceptions/source/modern/type_hints.py ++++ b/tests/exceptions/source/modern/type_hints.py +@@ -1,6 +1,6 @@ + # fmt: off + import sys +-from typing import TypeVar, Union ++from typing import TypeVar, Tuple + + from loguru import logger + +@@ -12,7 +12,7 @@ + Name = str + + +-def foo(a: int, b: Union[Name, float], c: "Name") -> T: 1 / 0 ++def foo(a: int, b: Tuple[Name, float], c: "Name") -> T: 1 / 0 + + + def main(): diff --git a/dev-python/loguru/loguru-0.7.3.ebuild b/dev-python/loguru/loguru-0.7.3.ebuild index cbc0bada5720..7124a750a0d0 100644 --- a/dev-python/loguru/loguru-0.7.3.ebuild +++ b/dev-python/loguru/loguru-0.7.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 2019-2024 Gentoo Authors +# Copyright 2019-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -31,6 +31,7 @@ BDEPEND=" # filesystem buffering tests may fail # on tmpfs with 64k PAGESZ, but pass fine on ext4 +EPYTEST_PLUGINS=() distutils_enable_tests pytest EPYTEST_IGNORE=( @@ -39,6 +40,11 @@ EPYTEST_IGNORE=( ) src_prepare() { + local PATCHES=( + # https://github.com/Delgan/loguru/commit/84023e2bd8339de95250470f422f096edcb8f7b7 + "${FILESDIR}/${P}-py314.patch" + ) + distutils-r1_src_prepare # neuter mypy integration diff --git a/dev-python/mako/Manifest b/dev-python/mako/Manifest index dd6b71b95a30..65b637a9a406 100644 --- a/dev-python/mako/Manifest +++ b/dev-python/mako/Manifest @@ -1 +1,2 @@ DIST mako-1.3.10.tar.gz 392474 BLAKE2B 21ed9256cd72bb9003f5e581cf5d7a748552dfa2318863ac61150f94ecab58b9471221d4e6e50aed13a1d176864ab9bd0a6953b3d2e14b722980dfa3d7686858 SHA512 33fcf08b35b00ae33dcfb4b9dac4adcc7e0a9d8bdfdf0bc92f6aa13fbc12031e9fc46c910d92803ffa7b31e4ee58209f11cc186e04f9b08bad7ec4bcd309d554 +DIST mako-1.3.11.tar.gz 399811 BLAKE2B bef7c89542d71e1347deab1e17f449583b70e155b571f9e5468fad60f0ede543e66ade900ecb6fb23afe55f57720036cf35d8dd91b8ec3767461856b957d3786 SHA512 b3f0980393af9d9ceaf7421118fa13680ba3f47e1ff6e86a62bb8f8e944364ac8150a20b47d02bc391f7b9c9b6d400d153c3d70730cc36d1a87f628f0cff250c diff --git a/dev-python/mako/mako-1.3.11.ebuild b/dev-python/mako/mako-1.3.11.ebuild new file mode 100644 index 000000000000..0c7104a24280 --- /dev/null +++ b/dev-python/mako/mako-1.3.11.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_PN=${PN^} +PYTHON_COMPAT=( python3_{10..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="A Python templating language" +HOMEPAGE=" + https://www.makotemplates.org/ + https://github.com/sqlalchemy/mako/ + https://pypi.org/project/Mako/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +IUSE="doc" + +RDEPEND=" + >=dev-python/markupsafe-0.9.2[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/babel[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +python_install_all() { + rm -r doc/build || die + + use doc && local HTML_DOCS=( doc/. ) + distutils-r1_python_install_all +} diff --git a/dev-python/mediafile/Manifest b/dev-python/mediafile/Manifest index 7a748e665146..e7ac2868a63b 100644 --- a/dev-python/mediafile/Manifest +++ b/dev-python/mediafile/Manifest @@ -1,3 +1,4 @@ DIST mediafile-0.14.0.gh.tar.gz 622631 BLAKE2B da29261941eca30b067eb08021d6adc9363920c6bc7b656db101e56d53fb7ff6bb3c8df42f61b97a9daa82fb901a025832160e81ef458b6be04abe27bb3b3d8c SHA512 4da707072d5f9262e04691f924ef8ab6da212918e61e3ea693017b66721563de5fb3ee3ed8f4db8035ad94526b7e7fd26107d4825ee76e0f41349bec7ad75a62 DIST mediafile-0.15.0.gh.tar.gz 622616 BLAKE2B f8b36e6bd1400f55033fe7a85c76ba666890c42d75ea97dea241f7aea1bd8bb52113f4356b893cbb57f81fa3a66d8a19d3afad58d7c1cde6038acf418fea7f29 SHA512 4b2459a7274846f1db570bb18c93d6609945420107c1a91d62c75236f246042d961199e27d4a8fa19652fc9b1b82b31d7a4022a175e6b8ce89a40b387817b222 DIST mediafile-0.16.0.gh.tar.gz 627848 BLAKE2B 46e82b6855cd11b63ba3f83fe369b760ae486829c4eb726b33ed282af1c50d8a7653c0be60797532dbab37f5fdc13830a7a17c1af93406e6d1bdd69aad08c9aa SHA512 7459f098f4db44cedef19d005ee3526c1a220756128a3fb790e9e8bf7e082dafe31045c18cc44f9764d84fa1ebbc5bd9830f9832335e1c0481310ad588bb7b67 +DIST mediafile-0.16.1.gh.tar.gz 666169 BLAKE2B dbc4ea1673071df08b47850296cbf5781fdc6b576af0146c8f11b81e42acbc2e80dca60395ca85d3f4549d5b2914321d62c3cd1fc486784ee0491b5ce649190c SHA512 4100f8fe66383fdf6b238bad18573af9b9a57ae68606be0a7494950387d04f4478f1d58b2d12869dc8cebc904dc0db357656f6144041902c0787d2ea70121841 diff --git a/dev-python/mediafile/mediafile-0.16.1.ebuild b/dev-python/mediafile/mediafile-0.16.1.ebuild new file mode 100644 index 000000000000..f9d3d5b77088 --- /dev/null +++ b/dev-python/mediafile/mediafile-0.16.1.ebuild @@ -0,0 +1,31 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=poetry +PYTHON_COMPAT=( python3_{10..14} ) + +inherit distutils-r1 + +DESCRIPTION="Read and write audio files' tags in Python" +HOMEPAGE=" + https://github.com/beetbox/mediafile/ + https://pypi.org/project/mediafile/ +" +SRC_URI=" + https://github.com/beetbox/mediafile/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + >=dev-python/filetype-1.2.0[${PYTHON_USEDEP}] + >=media-libs/mutagen-1.46.0[${PYTHON_USEDEP}] +" + +distutils_enable_sphinx docs +distutils_enable_tests unittest diff --git a/dev-python/mypy/mypy-1.20.1.ebuild b/dev-python/mypy/mypy-1.20.1.ebuild index 4544a2307417..59722dfddb51 100644 --- a/dev-python/mypy/mypy-1.20.1.ebuild +++ b/dev-python/mypy/mypy-1.20.1.ebuild @@ -23,7 +23,7 @@ SRC_URI=" LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="native-extensions" # stubgen collides with this package: https://bugs.gentoo.org/585594 diff --git a/dev-python/osc-lib/Manifest b/dev-python/osc-lib/Manifest index be4c564afe6e..5f44d2c899c1 100644 --- a/dev-python/osc-lib/Manifest +++ b/dev-python/osc-lib/Manifest @@ -1 +1,2 @@ DIST osc_lib-4.4.0.tar.gz 105435 BLAKE2B f4a9f359d8376aeaa94f70594993d66a5cbd396c7d827155f2d72df847d823f394410732a194a1ec7a112ebc494902fbeef84ebedb5e209f284d6ac324655024 SHA512 0d949c2f172324f12ae130a3487d6a017968bf2737685e274d5778705a9413a1f401edfa08d64573450715b347d583c2819583c5781ddddeb5f8eff632d69775 +DIST osc_lib-4.5.0.tar.gz 105164 BLAKE2B 555e929bc3701328d0d4989f1e9457d89aa200c832fcb793916ff1811943ab5b34a6dffc4dd4ec06b23182b8c97a0497984bf68bbb2d229e5a61436da0bc8322 SHA512 777a1548a6fe9b6bed890faf088447378bfda11f47b8d8d64c1d3a398c78b7bf73c1ac820cdab796e9a2e5caa8ccd47a8aaac04061cf54c23987a1060c03847a diff --git a/dev-python/osc-lib/osc-lib-4.5.0.ebuild b/dev-python/osc-lib/osc-lib-4.5.0.ebuild new file mode 100644 index 000000000000..882b127f5c05 --- /dev/null +++ b/dev-python/osc-lib/osc-lib-4.5.0.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=pbr +PYTHON_COMPAT=( python3_{10..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="A package of common support modules for writing OSC plugins" +HOMEPAGE=" + https://opendev.org/openstack/osc-lib/ + https://github.com/openstack/osc-lib/ + https://pypi.org/project/osc-lib/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" + +RDEPEND=" + >=dev-python/cliff-4.9.0[${PYTHON_USEDEP}] + >=dev-python/keystoneauth1-5.10.0[${PYTHON_USEDEP}] + >=dev-python/openstacksdk-0.15.0[${PYTHON_USEDEP}] + >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}] + >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}] + >=dev-python/requests-2.14.2[${PYTHON_USEDEP}] + >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}] + >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}] + >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}] + >=dev-python/statsd-3.3.0[${PYTHON_USEDEP}] + >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}] + >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests unittest + +src_prepare() { + # need to skip all tests under TestTagHelps class + # checks exact help message, based on another unittest runner + sed -e '179,$s/test_add_tag_/_&/' -i osc_lib/tests/utils/test_tags.py || die + distutils-r1_src_prepare +} diff --git a/dev-python/packaging/Manifest b/dev-python/packaging/Manifest index 785d9b33b23d..d1684489de7e 100644 --- a/dev-python/packaging/Manifest +++ b/dev-python/packaging/Manifest @@ -1,2 +1,4 @@ DIST packaging-26.0.tar.gz 143416 BLAKE2B 0f64797c7dc0c1d452bef437f3c61959efe17db4d0281ca475a45a433b349693a6e2a5183c17921cc233086da765d5af6cd902e4c3cba8975d42908de553a389 SHA512 27a066a7d65ba76189212973b6a0d162f3d361848b1b0c34a82865cf180b3284a837cc34206c297f002a73feae414e25a26c5960bb884a74ea337f582585f1d2 DIST packaging-26.0.tar.gz.provenance 9319 BLAKE2B 95a46bf39757ebc5daa5a847413936dbf9067c50129009cca898b3010d2cc7d7175b1091ba4b8b3f5c13106a9f9da0b6dc858ab65fd0dbe7164e2c99752c539b SHA512 b1280f2554b17244745ac2c566922c1bb2b68e45a18020633d52c12a0e6be784506f10c0dfcf9a528ff6dedb7a4bfac0f240367fe26707435ee7cc15fb4c45a8 +DIST packaging-26.1.tar.gz 215519 BLAKE2B de311aea3af5d7fe1414c6c3aa667b7835d47949c26d5298e1172c1bbb6c9f75646f99f4b7a633f7d2b1b13677a19d6f497912a35531baf6b7d0edb0db1e4075 SHA512 37dfdc50da2701016ff8caf7053c7d06ed3c8762ed22e43f8001c12b99b00251f960d50e8bfa0294e37069091135ef6006c7b3b92d05fde2b934cf336f0fbe1d +DIST packaging-26.1.tar.gz.provenance 9178 BLAKE2B acb6131b39570cc582506163fd2b84802c36fd29c3b3c2b61470bf12fb352f77498429d54efc32e469a5189f94ba28df9334ba5febbbc0fde46e201d9962cc36 SHA512 46873132db3e0cec2c383965e68d495645a44e16059758fb88287c2e4b8e6d06f309f03a9658b21381a89b2dbb0265123a99e42059816dbc7f33b2c6d5766828 diff --git a/dev-python/packaging/packaging-26.1.ebuild b/dev-python/packaging/packaging-26.1.ebuild new file mode 100644 index 000000000000..c3ece7e7f6cf --- /dev/null +++ b/dev-python/packaging/packaging-26.1.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYPI_VERIFY_REPO=https://github.com/pypa/packaging +PYTHON_COMPAT=( python3_{10..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Core utilities for Python packages" +HOMEPAGE=" + https://github.com/pypa/packaging/ + https://pypi.org/project/packaging/ +" + +LICENSE="|| ( Apache-2.0 BSD-2 )" +SLOT="0" +if [[ ${PV} != *_rc* ]]; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +fi + +RDEPEND=" + !<dev-python/setuptools-67 +" +DEPEND=" + test? ( + dev-python/pretend[${PYTHON_USEDEP}] + dev-python/tomli-w[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +python_test() { + epytest --capture=no +} diff --git a/dev-python/passlib/Manifest b/dev-python/passlib/Manifest index 36ccb583c9ff..67c0ac3ae6e4 100644 --- a/dev-python/passlib/Manifest +++ b/dev-python/passlib/Manifest @@ -1 +1,2 @@ +DIST libpass-1.9.3.tar.gz 692901 BLAKE2B b7b19ae4a9e7e2d65062d8d51e11fb8caec1da7bedacf88b9b2114013d2a578e64a5ca195d168982a52f7ca143eea5adbc5b33c955e175b7f2dda07bd93e24a2 SHA512 2581412ed18d3b2953f2679a05ce7158095850fb37e16a744a1c80bd1afbcf2d0852619ff9b06322b38004ff01e0d335cefaecb49cf9552a6a478566067aa0bc DIST passlib-1.7.4.tar.gz 689844 BLAKE2B 38f616105ba70cf93cf36383c73f2a4da7bf66ced2844effffe74d9f7c29ee0aece5652974dd1414f16e32fbe6957e2e921cf01bc59daa70195a6d50a4a3bf2f SHA512 350bd6da5ac57e6c266ffe8bf9684c8c2cce3fc6b513eb6c7bc1b302d2d8a1b701e9c01c953782520a2ac37b7ec1f6d7bd5855f99f6ee0e2dbbf33f2d49a9530 diff --git a/dev-python/passlib/passlib-1.9.3.ebuild b/dev-python/passlib/passlib-1.9.3.ebuild new file mode 100644 index 000000000000..cff0a3387861 --- /dev/null +++ b/dev-python/passlib/passlib-1.9.3.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYPI_PN=libpass +PYTHON_COMPAT=( python3_{10..14} ) + +inherit distutils-r1 optfeature pypi + +DESCRIPTION="Fork of passlib, a password hashing framework" +HOMEPAGE=" + https://github.com/notypecheck/passlib/ + https://pypi.org/project/libpass/ +" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +IUSE="doc test-rust" + +BDEPEND=" + test? ( + dev-python/scrypt[${PYTHON_USEDEP}] + test-rust? ( + >=dev-python/bcrypt-3.1.0[${PYTHON_USEDEP}] + >=dev-python/cryptography-43.0.1[${PYTHON_USEDEP}] + ) + ) +" + +EPYTEST_PLUGINS=() +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # bcrypt now disallows implicit password truncation + # https://github.com/notypecheck/passlib/pull/25 + tests/test_handlers_bcrypt.py::bcrypt_bcrypt_test::test_70_hashes + tests/test_handlers_bcrypt.py::bcrypt_bcrypt_test::test_secret_w_truncate_size + tests/test_handlers_django.py::django_bcrypt_test::test_secret_w_truncate_size + + # assumes scrypt dep is not installed + tests/test_crypto_scrypt.py::BuiltinScryptTest::test_missing_backend + ) + + # skip fuzzing tests, they are very slow + epytest -k "not fuzz_input" +} + +python_install_all() { + distutils-r1_python_install_all + use doc && dodoc docs/{*.rst,requirements.txt,lib/*.rst} +} + +pkg_postinst() { + optfeature "Argon2 support" dev-python/argon2-cffi + optfeature "bcrypt support" dev-python/bcrypt + optfeature "scrypt support" dev-python/scrypt + optfeature "Time-based One-Time Password (TOTP) support" dev-python/cryptography +} diff --git a/dev-python/progressbar2/progressbar2-4.5.0.ebuild b/dev-python/progressbar2/progressbar2-4.5.0.ebuild index 7a312de2e6e9..940400fd89eb 100644 --- a/dev-python/progressbar2/progressbar2-4.5.0.ebuild +++ b/dev-python/progressbar2/progressbar2-4.5.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -29,6 +29,7 @@ BDEPEND=" ) " +EPYTEST_PLUGINS=() distutils_enable_tests pytest src_prepare() { @@ -38,6 +39,5 @@ src_prepare() { python_test() { local -x PYTHONDONTWRITEBYTECODE=1 - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 epytest tests } diff --git a/dev-python/pybtex-docutils/pybtex-docutils-1.0.3.ebuild b/dev-python/pybtex-docutils/pybtex-docutils-1.0.3.ebuild index 2541845dfdee..484c7b21c275 100644 --- a/dev-python/pybtex-docutils/pybtex-docutils-1.0.3.ebuild +++ b/dev-python/pybtex-docutils/pybtex-docutils-1.0.3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -25,5 +25,11 @@ RDEPEND=" " +EPYTEST_PLUGINS=() distutils_enable_tests pytest distutils_enable_sphinx doc + +EPYTEST_DESELECT=( + # just an entry point check, requires pkg-resources + test/test_find_plugin.py::test_pkg_resources_entry_point +) diff --git a/dev-python/pygithub/Manifest b/dev-python/pygithub/Manifest index 295f6e0b34f5..c5015cab00ab 100644 --- a/dev-python/pygithub/Manifest +++ b/dev-python/pygithub/Manifest @@ -1,2 +1,3 @@ DIST pygithub-2.8.1.tar.gz 2246994 BLAKE2B 6d54d87abdf20d4068efaff9117e005d970f2d60d52bc3d9d985ef4616004e09c72f27c870b89f506246af7cb9a73c5b9f1b2853e5f980f8f59e6e1f99e2594c SHA512 87724ebb922fe35867a23a56c59cc6fc56fd2a4c24129ebfdd06683797aa8398e68379b42a6fb73ebb0dae5e2e403cf9fb518c5738f156e40a76bea6661c2192 DIST pygithub-2.9.0.tar.gz 2592289 BLAKE2B b769f59b538a385e79ed8dd6e84e9d888d784733547c19984b341331e963cecfccb12a0b9bde6485b292f202b9024870ba8d844d64c7ec5c34b9deb945f55ed9 SHA512 f0b3e3cb8f5b9ce5a722a1ea306721f658f7d229c0a0357d003f8207753a7959c93bf23d05f80174f1fe78eaec2e5b16b5f55b6c8aeba26fd74e434395be338b +DIST pygithub-2.9.1.tar.gz 2594989 BLAKE2B 0f06f02bf0a644a571a96c54add12b72ce467e16034d7c932c86da899130b1b743cdb141076a317643e59f7e6922f730c92b701ace0e4183ddca47a35b9a8f62 SHA512 af77ed820d0b783f0dff5d5756a470b7bc8d56cb47d9fa3cbc5d99d5d7b5d3bf15be233780914ad91487e446aff9d9d582d8421f6190f7b8176a216ddcae333a diff --git a/dev-python/pygithub/pygithub-2.9.1.ebuild b/dev-python/pygithub/pygithub-2.9.1.ebuild new file mode 100644 index 000000000000..425e63103753 --- /dev/null +++ b/dev-python/pygithub/pygithub-2.9.1.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_PN=PyGithub +PYTHON_COMPAT=( python3_{10..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Python library to access the Github API v3" +HOMEPAGE=" + https://github.com/PyGithub/PyGithub/ + https://pypi.org/project/PyGithub/ +" + +LICENSE="LGPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +# cryptography via pyjwt[crypto] +RDEPEND=" + dev-python/cryptography[${PYTHON_USEDEP}] + >=dev-python/pyjwt-2.4.0[${PYTHON_USEDEP}] + >=dev-python/pynacl-1.4.0[${PYTHON_USEDEP}] + >=dev-python/requests-2.14.0[${PYTHON_USEDEP}] + >=dev-python/typing-extensions-4.5.0[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/setuptools-scm[${PYTHON_USEDEP}] + test? ( + dev-python/responses[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-subtests ) +EPYTEST_XDIST=1 +distutils_enable_tests pytest diff --git a/dev-python/pypdf/Manifest b/dev-python/pypdf/Manifest index 0c0918f424bd..d73b45f5cb48 100644 --- a/dev-python/pypdf/Manifest +++ b/dev-python/pypdf/Manifest @@ -1,5 +1,7 @@ +DIST pypdf-6.10.1.gh.tar.gz 8404717 BLAKE2B 14f552547f08d30147d4b4504dd356f1119c2acc6146086995b6dbe4a81a961335dd7e97f225506b5358c5a6790a5aa0a6f4ba43f63416ba6c14983aee7b2dff SHA512 065ff9a934c7213045f0fb4c1700de9d200dfeed9427a24e3e3b38ef4fbb50373afed2c1829a3241e7d40203a4331e99f56850638e1a9d069e0c51ec1fe3557f DIST pypdf-6.7.5.gh.tar.gz 8386598 BLAKE2B e3b49c4a5f00769f89b4973677c798b6e00a6e3d2f47ccd4d2e89f21496fc24bac9a73a5c469f4ce9b50ab4ff3738f08710bef3f8ece44dbf75e23229618098f SHA512 1d33acc25027fae56e5a94ea496771cc033b5a42598b05f5d1bc28171974834f5ab2fe247c4da7d8917ade9b3640c2d615e5e3230b1cac64ba542683c743d9b9 DIST pypdf-6.9.0.gh.tar.gz 8394613 BLAKE2B 9e127c143aa4f5e92dd0fbe930651d05ee3cf0c39f8d06344db054681443f03a38a00e73200b44e0af5a419d4379e90e9a3e70bf1be32ee8fbc337ea7e7e4bd1 SHA512 eb223c3d1b0446505a75e37fcb1f6d6f976e88e0d3d5f34033a112c0ff1bebc2628d314877a186a3de9506f891b8b8901fc386e89ca77cdd507a61f6cec4e174 DIST pypdf-6.9.1.gh.tar.gz 8395503 BLAKE2B 5b3e515383fd3e17846caa4ecffd1b975832fce3e2d80402d1048c7f082ad273e62193f313f477ceec6a06bd3a4d42ff305e8c8e293a82e52b46bec9841a5689 SHA512 2e15c9de64e934c07c0ac5c0afd2362f5d65e6b5477acc07f01ffd5875b4d78595c483d7d268c833d531ccde2511327de49b52e2e8e2cd0a9b0a095bec2d1ce8 DIST pypdf-6.9.2.gh.tar.gz 8397701 BLAKE2B b2864dd22ab6585a5d850f996ac09dddc5bebff79fcc1956b7ce495ef4292444b2babf136bf2fa0d7045b27fc1cfed1bec69056240710532a300140b7ac831b3 SHA512 1c060d9f86e1b0bd0e1552f32c950cd29f1e8858e28ce7457beb88761cefa149f2b16c87a0cf5780575c205321f2b042af6bfc362ae9cadbbd55862f8464b7ee +DIST pypdf-sample-files-65e82ed36c1efd9bd7172a35c8dcfd6e18aabfb2.gh.tar.gz 11748256 BLAKE2B f1820f38ebda08bbf2019e81e2cc605fef3dc366904ed552c3f95673d93c1bd440fdee4b8c199b6cbfd90a7ebfd5aab55b22edc6a3ad8418f9efdafd4e4c741d SHA512 5795189231e9e5f176b530c602ca778b1b8864c88b69c16c37f430ef6a2f3d4b08c3a8757f6522a1472b1b09583bd8df50f2628319bb076af45326b36f6b876a DIST pypdf-sample-files-8c405ece5eff12396a34a1fae3276132002e1753.gh.tar.gz 11748093 BLAKE2B c5989200893b28a3c2062bb024a5cfc6f3389dc259ec129857979fa43469e1274559612b4d555499e2c7e16cf34be07825229932bf4d147fa6d7324d043e97d5 SHA512 c9771129b7668a2fd1fa79bb859ae9213f3d60341cf1b9937ff0eaab0de9bf4c35adcb7b896e93329038dc0f3809a0c697c523f8fe41b43030b0b029a88058e3 diff --git a/dev-python/pypdf/pypdf-6.10.1.ebuild b/dev-python/pypdf/pypdf-6.10.1.ebuild new file mode 100644 index 000000000000..1af29f6831a9 --- /dev/null +++ b/dev-python/pypdf/pypdf-6.10.1.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{10..14} ) + +inherit distutils-r1 + +SAMPLE_COMMIT=65e82ed36c1efd9bd7172a35c8dcfd6e18aabfb2 +DESCRIPTION="Python library to work with PDF files" +HOMEPAGE=" + https://pypi.org/project/pypdf/ + https://github.com/py-pdf/pypdf/ +" +SRC_URI=" + https://github.com/py-pdf/pypdf/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz + test? ( + https://github.com/py-pdf/sample-files/archive/${SAMPLE_COMMIT}.tar.gz + -> ${PN}-sample-files-${SAMPLE_COMMIT}.gh.tar.gz + ) +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" + +BDEPEND=" + test? ( + dev-python/cryptography[${PYTHON_USEDEP}] + >=dev-python/pillow-8.0.0[jpeg,jpeg2k,tiff,zlib,${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + media-libs/jbig2dec[png] + ) +" + +EPYTEST_PLUGINS=( pytest-timeout ) +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_unpack() { + default + if use test; then + mv "sample-files-${SAMPLE_COMMIT}"/* "${S}"/sample-files/ || die + fi +} + +python_test() { + epytest -o addopts= -m "not enable_socket" +} diff --git a/dev-python/pyspelling/pyspelling-2.12.1.ebuild b/dev-python/pyspelling/pyspelling-2.12.1.ebuild index 15c9c96993c4..7c5e6cfc0985 100644 --- a/dev-python/pyspelling/pyspelling-2.12.1.ebuild +++ b/dev-python/pyspelling/pyspelling-2.12.1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/dev-python/pytesseract/pytesseract-0.3.13.ebuild b/dev-python/pytesseract/pytesseract-0.3.13.ebuild index 192ee8f57754..46c0b1f59a7b 100644 --- a/dev-python/pytesseract/pytesseract-0.3.13.ebuild +++ b/dev-python/pytesseract/pytesseract-0.3.13.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2024 Gentoo Authors +# Copyright 2022-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -35,4 +35,5 @@ BDEPEND=" ) " +EPYTEST_PLUGINS=() distutils_enable_tests pytest diff --git a/dev-python/pytest-mpl/Manifest b/dev-python/pytest-mpl/Manifest index 9856673307e7..b157c15e79ef 100644 --- a/dev-python/pytest-mpl/Manifest +++ b/dev-python/pytest-mpl/Manifest @@ -1 +1,2 @@ DIST pytest-mpl-0.17.0.tar.gz 885613 BLAKE2B d1a6d4551052eeeb7ecbf9722c782796aa74215a3241d1c037fca98972777dd35d7616ec8ef2bd4f00b6428f5dea516243244b61f56ec38d72a4805a75c91a50 SHA512 968397b1d75482729ad73f4844970c3c335c009e689f4163bd5a028c84627455a7d20563e62c6940b27c62229e5744496bec36c2440d402c0aee0a7853550f9b +DIST pytest_mpl-0.19.0.tar.gz 881884 BLAKE2B 4d57155ec3af24572ce7f881ace78e88289fafcfc4edf2e433561d4a20970434cfbb4798aa3ec0c882c939ef32f20a5a5976c62d7e9ddc8c15b608923750fa55 SHA512 fcfd1ba11ff3a6bfec6100893421cba245a259835c823f2c2d2bb472f5a5031e699a1f0ffc5608b245691f95827f411ffc60c8b5c5d4ff33a9642ccd1bfbda80 diff --git a/dev-python/pytest-mpl/pytest-mpl-0.17.0.ebuild b/dev-python/pytest-mpl/pytest-mpl-0.17.0.ebuild index 84540e8d9830..a696539cd1c4 100644 --- a/dev-python/pytest-mpl/pytest-mpl-0.17.0.ebuild +++ b/dev-python/pytest-mpl/pytest-mpl-0.17.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/dev-python/pytest-mpl/pytest-mpl-0.19.0.ebuild b/dev-python/pytest-mpl/pytest-mpl-0.19.0.ebuild new file mode 100644 index 000000000000..cceaf5ece491 --- /dev/null +++ b/dev-python/pytest-mpl/pytest-mpl-0.19.0.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Facilitate image comparison for Matplotlib figures" +HOMEPAGE=" + https://pypi.org/project/pytest-mpl/ + https://github.com/matplotlib/pytest-mpl +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + dev-python/jinja2[${PYTHON_USEDEP}] + dev-python/matplotlib[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=( "${PN}" ) +EPYTEST_PLUGIN_LOAD_VIA_ENV=1 +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +EPYTEST_DESELECT=( + # these tests are pinned to specific output image hashes + # and none match nowadays + tests/subtests/test_subtest.py + tests/test_baseline_path.py::test_config + tests/test_pytest_mpl.py::test_formats + tests/test_results_always.py::test_config + tests/test_use_full_test_name.py::test_config +) diff --git a/dev-python/python-discovery/python-discovery-1.2.2.ebuild b/dev-python/python-discovery/python-discovery-1.2.2.ebuild index 24318511709a..7e7156a12269 100644 --- a/dev-python/python-discovery/python-discovery-1.2.2.ebuild +++ b/dev-python/python-discovery/python-discovery-1.2.2.ebuild @@ -17,7 +17,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~riscv ~s390 ~x86" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~riscv ~s390 ~x86" RDEPEND=" >=dev-python/filelock-3.15.4[${PYTHON_USEDEP}] diff --git a/dev-python/qscintilla/qscintilla-2.14.1-r3.ebuild b/dev-python/qscintilla/qscintilla-2.14.1-r3.ebuild index 511dd6f1b214..bd56fd9b1a3b 100644 --- a/dev-python/qscintilla/qscintilla-2.14.1-r3.ebuild +++ b/dev-python/qscintilla/qscintilla-2.14.1-r3.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/dev-python/setuptools-scm/setuptools-scm-10.0.5.ebuild b/dev-python/setuptools-scm/setuptools-scm-10.0.5.ebuild index 42035f487f77..3fdde26839a3 100644 --- a/dev-python/setuptools-scm/setuptools-scm-10.0.5.ebuild +++ b/dev-python/setuptools-scm/setuptools-scm-10.0.5.ebuild @@ -18,7 +18,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~riscv ~s390 ~sparc" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~riscv ~s390 ~sparc ~x86" # there's an optional dep on rich for cute logs RDEPEND=" diff --git a/dev-python/signxml/signxml-4.4.0.ebuild b/dev-python/signxml/signxml-4.4.0.ebuild index 5fd3e141e50e..adf964d452a4 100644 --- a/dev-python/signxml/signxml-4.4.0.ebuild +++ b/dev-python/signxml/signxml-4.4.0.ebuild @@ -20,7 +20,7 @@ if [[ ${PV} == "9999" ]]; then EGIT_REPO_URI="https://github.com/XML-Security/signxml.git" else inherit pypi - KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv" + KEYWORDS="amd64 ~arm64 ~ppc64 ~riscv" fi LICENSE="Apache-2.0" diff --git a/dev-python/tox/Manifest b/dev-python/tox/Manifest index de78315057e0..dc855f82abd4 100644 --- a/dev-python/tox/Manifest +++ b/dev-python/tox/Manifest @@ -6,3 +6,5 @@ DIST tox-4.51.0.tar.gz 268657 BLAKE2B 52d453f2de4f4b24e81cd6850870f1086df762bc7e DIST tox-4.51.0.tar.gz.provenance 9283 BLAKE2B 44c387a35815b55da8830bf0c57e115c35ac2c7e7f77c90d61a40d0c682a4cc5d941c35471d6f7b8b28f324e813726bf0f100a66a2f9e562fcad1eba299360b4 SHA512 28e558b4d40672dca95bd035c87e1ae031800401889d4118526a1e460cd1510a4703e024d5f79344b47beb0603b6d38e499b6790535c633e0eafb12dcbe29559 DIST tox-4.52.1.tar.gz 273730 BLAKE2B f4c03bc4336d844063e86cbabaef67afdfee88e44cd4f2e5a703feb6b598a51fdeb15b0954790d1b4a3632b1c84ccf649f6874772566eb387c240df3fb6a5d62 SHA512 2afbd49fbf298388f54329ab23b63af81c67692e52f95c483ef81fcf206e2a345f219389a3aa635d1b9c4ddb56a163a17a76550ccc1716f1ab42e922f51a68dd DIST tox-4.52.1.tar.gz.provenance 9142 BLAKE2B 14b0420896e2dba90aec162fe0ac917c4b9df9626f4b52c4d3e832e389ef789f52be6ed63d7c7a191453e977f691e95904004006a5d81cd666d8ecc99379c2fd SHA512 35fdcca7fe9277d1c3d7a8867c5309c8e08a32cf5bca47d43dedfef12e9fe75edd818c8eec17872e521d923d9c6daeb931014a6f733041db9c1f464b1018e5a3 +DIST tox-4.53.0.tar.gz 274048 BLAKE2B 471335ce4a9451c57d9ab8cf20bf2becd195bdacaa92e9489b3a49b7952f960e707368988fb2f1a008338a040302dc1410b390c147c43c53e899835e2b23c666 SHA512 f43388935335f94be0ad0ee6376ef272e12dbbd0b4df386cb6a6733f0aebf7ad9620d706b90a913a44d00b0a1b7ac1df69b27f519d804191efcf4f9d99d10ffd +DIST tox-4.53.0.tar.gz.provenance 9518 BLAKE2B bb5adebc42fd365720a802da1fc8007f6b705bfcf828e236aa736a6781be59219ae8033f6f0a1c895d2719f2b7c8f5faa1ab8640696a2b7c21c4de0df0f1965c SHA512 b656c6db244153f76dd5055ee05edc1715e31e991f4f72a18c52a440e4178f45e7c647ee2c5fc5e706b41ec6775db927864a6ca196c1895af210ae01d9722069 diff --git a/dev-python/tox/tox-4.53.0.ebuild b/dev-python/tox/tox-4.53.0.ebuild new file mode 100644 index 000000000000..9b8acbc341d0 --- /dev/null +++ b/dev-python/tox/tox-4.53.0.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYPI_VERIFY_REPO=https://github.com/tox-dev/tox +PYTHON_COMPAT=( python3_{10..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="virtualenv-based automation of test activities" +HOMEPAGE=" + https://tox.readthedocs.io/ + https://github.com/tox-dev/tox/ + https://pypi.org/project/tox/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~riscv ~s390 ~x86" + +RDEPEND=" + dev-python/cachetools[${PYTHON_USEDEP}] + dev-python/colorama[${PYTHON_USEDEP}] + dev-python/filelock[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/platformdirs[${PYTHON_USEDEP}] + dev-python/pluggy[${PYTHON_USEDEP}] + dev-python/pyproject-api[${PYTHON_USEDEP}] + dev-python/python-discovery[${PYTHON_USEDEP}] + dev-python/tomli-w[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/docutils[${PYTHON_USEDEP}] + dev-python/hatch-vcs[${PYTHON_USEDEP}] + test? ( + dev-python/argcomplete[${PYTHON_USEDEP}] + dev-python/build[${PYTHON_USEDEP}] + dev-python/distlib[${PYTHON_USEDEP}] + dev-python/psutil[${PYTHON_USEDEP}] + dev-python/re-assert[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/time-machine[${PYTHON_USEDEP}] + ' 'python*') + ) +" + +EPYTEST_PLUGINS=( pytest-{mock,rerunfailures,timeout,xdist} ) +# xdist seems to mess up state between successive implementation runs +distutils_enable_tests pytest + +src_prepare() { + # upstream lower bounds are meaningless + sed -i -e 's:>=[0-9.]*::' pyproject.toml || die + distutils-r1_src_prepare +} + +python_test() { + # devpi_process is not packaged, and has lots of dependencies + cat > "${T}"/devpi_process.py <<-EOF || die + def IndexServer(*args, **kwargs): raise NotImplementedError() + EOF + + local -x PYTHONPATH=${T}:${PYTHONPATH} + local EPYTEST_DESELECT=( + # Internet + tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_build_wheel_external + tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_run_installpkg_targz + tests/tox_env/python/virtual_env/package/test_package_pyproject.py::test_pyproject_installpkg_pep517_envs + ) + local EPYTEST_IGNORE=( + # requires devpi* + tests/test_provision.py + ) + + case ${EPYTHON} in + python*) + local EPYTEST_PLUGINS=( "${EPYTEST_PLUGINS[@]}" time-machine ) + ;; + pypy3*) + EPYTEST_DESELECT+=( + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[explicit-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[constraints-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[explicit+requirements-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements_indirect-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements_constraints_indirect-True-True]' + ) + ;; + esac + + epytest -o addopts= +} diff --git a/dev-python/translate-toolkit/Manifest b/dev-python/translate-toolkit/Manifest index b273a3b141ae..980ae0de6259 100644 --- a/dev-python/translate-toolkit/Manifest +++ b/dev-python/translate-toolkit/Manifest @@ -1,2 +1,3 @@ DIST translate-3.19.3.gh.tar.gz 1297097 BLAKE2B 4dad6f730ad441cb709990a12eebfc38d98b805c469f07b5eafb46f85aee7c58572d449e1325a7f0f7b438288ad290136ee07b1b8acac5680a7f8a5707a7ad0e SHA512 36c2308bbe8c512bf72bf4a8d29129cf096f514c5c78f9c464183130ec287b70dc0cc79d95e73082e1c978af2e335ac48159cb0fca861a0555a320e82128275d DIST translate-3.19.4.gh.tar.gz 1312664 BLAKE2B 90da92402354a10bb68701781bd2572aa8461aa858840badbbdc866da8ddc600006b9d22e177f5f3ce68a5eaec14f38373f6c13c758d84f208da71a97885161d SHA512 e4fbf1276205452782f798b1f57fb2acb57fc1d92246a032e2912def53db1764121a6a0ddff9a9237a21f9bb1fad274129133517ec28e8d26add592ac7b4ebcc +DIST translate-3.19.5.gh.tar.gz 1320567 BLAKE2B ea27702656b25423fa71f0624d68a82d75ba8a4bb334846f3dfa2f4448ead68987ad6ff15a7cd1c74f6199ecf14c80e9d3d7b50b914f74756848ed37a6974ed3 SHA512 92a5d65217ff15cee3753071cd78b218c6492049752b395fc841799c71eea056027515455b65565b2d22f1eba7305bc0d5ee453cd7995d52fa7f88f0d3fe7876 diff --git a/dev-python/translate-toolkit/translate-toolkit-3.19.5.ebuild b/dev-python/translate-toolkit/translate-toolkit-3.19.5.ebuild new file mode 100644 index 000000000000..2745b3ccd23f --- /dev/null +++ b/dev-python/translate-toolkit/translate-toolkit-3.19.5.ebuild @@ -0,0 +1,130 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..14} ) +PYTHON_REQ_USE="sqlite" + +inherit distutils-r1 + +MY_P=translate-${PV} +DESCRIPTION="Toolkit to convert between many translation formats" +HOMEPAGE=" + https://github.com/translate/translate/ + https://pypi.org/project/translate-toolkit/ +" +SRC_URI=" + https://github.com/translate/translate/archive/${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S="${WORKDIR}"/${MY_P} + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="+html +ical +ini +subtitles +yaml" + +RDEPEND=" + app-text/iso-codes + >=dev-python/chardet-3.0.4[${PYTHON_USEDEP}] + dev-python/cheroot[${PYTHON_USEDEP}] + >=dev-python/levenshtein-0.12.0[${PYTHON_USEDEP}] + >=dev-python/lxml-5.2.0[${PYTHON_USEDEP}] + >=dev-python/mistletoe-1.1.0[${PYTHON_USEDEP}] + >=dev-python/pyparsing-3[${PYTHON_USEDEP}] + dev-python/ruamel-yaml[${PYTHON_USEDEP}] + dev-python/tomlkit[${PYTHON_USEDEP}] + >=dev-python/unicode-segmentation-rs-0.2.0[${PYTHON_USEDEP}] + >=dev-python/wcwidth-0.2.14[${PYTHON_USEDEP}] + sys-devel/gettext + html? ( dev-python/utidylib[${PYTHON_USEDEP}] ) + ical? ( dev-python/vobject[${PYTHON_USEDEP}] ) + ini? ( >=dev-python/iniparse-0.5[${PYTHON_USEDEP}] ) + subtitles? ( media-video/gaupol[${PYTHON_USEDEP}] ) + yaml? ( dev-python/pyyaml[${PYTHON_USEDEP}] ) +" +# Technically, the test suite also has undeclared dependency +# on dev-python/snapshottest but all the tests using it are broken +# anyway, so we skip them. +BDEPEND=" + test? ( + dev-python/phply[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=() +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + + # strip unnecessary pins + sed -i -e 's:,<[0-9.]*::' pyproject.toml || die +} + +src_test() { + # unfortunately, this bad quality package doesn't support XDG_DATA_DIRS + # correctly, so we need to reassemble all data files in a single directory + local -x XDG_DATA_HOME=${T}/share + cp -r translate/share "${T}/" || die + cp -r "${ESYSROOT}"/usr/share/gaupol "${XDG_DATA_HOME}"/ || die + + distutils-r1_src_test +} + +python_test() { + local EPYTEST_DESELECT=( + # Fails with network-sandbox (and even with it off but w/ softer fail) + 'tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff' + 'tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff' + # all tests based on snapshottest are broken and I'm too tired + # to figure this out + tests/translate/tools/test_pocount.py::test_{cases,output} + tests/translate/tools/test_junitmsgfmt.py::test_output + ) + local EPYTEST_IGNORE=( + # unpackaged fluent.* + tests/translate/storage/test_fluent.py + tests/translate/convert/test_fluent2po.py + # changes directory and does not change it back, sigh + tests/odf_xliff/test_odf_xliff.py + ) + + if ! has_version "dev-python/iniparse[${PYTHON_USEDEP}]"; then + EPYTEST_IGNORE+=( + translate/convert/test_ini2po.py + translate/convert/test_po2ini.py + ) + fi + + if ! has_version "media-video/gaupol[${PYTHON_USEDEP}]"; then + EPYTEST_IGNORE+=( + translate/storage/test_subtitles.py + ) + fi + + epytest +} + +python_install_all() { + distutils-r1_python_install_all + + insinto /usr + doins -r translate/share + + if ! use html; then + rm "${ED}"/usr/bin/{html2po,po2html} || die + fi + if ! use ical; then + rm "${ED}"/usr/bin/{ical2po,po2ical} || die + fi + if ! use ini; then + rm "${ED}"/usr/bin/{ini2po,po2ini} || die + fi + if ! use subtitles; then + rm "${ED}"/usr/bin/{sub2po,po2sub} || die + fi +} diff --git a/dev-python/unicode-segmentation-rs/unicode-segmentation-rs-0.2.4.ebuild b/dev-python/unicode-segmentation-rs/unicode-segmentation-rs-0.2.4.ebuild index 957bbcd54481..6d4b12c3f661 100644 --- a/dev-python/unicode-segmentation-rs/unicode-segmentation-rs-0.2.4.ebuild +++ b/dev-python/unicode-segmentation-rs/unicode-segmentation-rs-0.2.4.ebuild @@ -46,7 +46,7 @@ LICENSE="MIT" # Dependent crate licenses LICENSE+=" Apache-2.0-with-LLVM-exceptions MIT Unicode-3.0" SLOT="0" -KEYWORDS="~amd64 ~arm64" +KEYWORDS="~amd64 ~arm64 ~x86" QA_FLAGS_IGNORED=" usr/lib/py.*/site-packages/unicode_segmentation_rs/unicode_segmentation_rs.* diff --git a/dev-python/vcs-versioning/vcs-versioning-1.1.1.ebuild b/dev-python/vcs-versioning/vcs-versioning-1.1.1.ebuild index e7ac80059882..4a020d4cda39 100644 --- a/dev-python/vcs-versioning/vcs-versioning-1.1.1.ebuild +++ b/dev-python/vcs-versioning/vcs-versioning-1.1.1.ebuild @@ -17,7 +17,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~riscv ~s390 ~sparc" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~riscv ~s390 ~sparc ~x86" RDEPEND=" >=dev-python/packaging-20[${PYTHON_USEDEP}] diff --git a/dev-python/virtualenv/Manifest b/dev-python/virtualenv/Manifest index 380a91753707..daf32be26b69 100644 --- a/dev-python/virtualenv/Manifest +++ b/dev-python/virtualenv/Manifest @@ -6,3 +6,5 @@ DIST virtualenv-21.2.1.tar.gz 5844770 BLAKE2B e14ffb6c788e953df7eacc158743b63f72 DIST virtualenv-21.2.1.tar.gz.provenance 9437 BLAKE2B e87594c8c4aeda80f392b9b53cf9a93c677695eb15e2dc277a680c7f3dcc34559c3ed0116df154d4a19c6cdd17e03d2003959e07adf9997699de037c87742358 SHA512 ab36e476fa751846c2e05800709b1eccd57695f3ab38d6dcc1b063af499c34ac157121a9d517664922231b0d89c9efd39bf2b0f8404790eb3b01be9d7cb2bee2 DIST virtualenv-21.2.3.tar.gz 5844776 BLAKE2B 8c12e28a929b8694bbde3357dd6fb6fad1e052f5ff8d1b6bbb21e9effebf0b96cfc9cfe82b28fc21b3c04fb58b141c7bc03c4175d4567d70a27029b66f1e2902 SHA512 82a99787aabd0d9aab0793347f9fdc25ad171debedfc876bd1212850ba6ebe92a9c87920fadb88a966128b43883c0dcec25f04ea17466a5872535854cfb57b4f DIST virtualenv-21.2.3.tar.gz.provenance 9480 BLAKE2B cc5c9dc8549d6eaf41a2723f7b692cd4305d2663d235128db867b656e8c95dea898a967d814df12639892c75b9ee84b37146cda1f32dd4b9edb9dce7d463f4c6 SHA512 e7524e1d9edc505fe11f437e1a71e6d52e7540e5dd7188d642493aaa9d26256b28c3e565a9dd39b5e0f5bdf0b7bbffa90029d587b29f6a4e5bc40ccb4c2a12fd +DIST virtualenv-21.2.4.tar.gz 5850742 BLAKE2B 1aa6aee759d79e1d108d8564f1a797daf67d078a8ceb6ce3fa706788a3c1eaa8a8ee590320dc3de404061024e80ccc1925df94ed18b7998133c37237096725af SHA512 59cd373c7b149ab83609f2a331fb6ffa95792647d939d129b661cb12aa02686e1b789ccdf2ecf9ab959e3645c42df303ddb5a277e0600b156f6567f797fc49ff +DIST virtualenv-21.2.4.tar.gz.provenance 9343 BLAKE2B 5458056abadcd9cf65f307c82460dab3501e38a9f4d688a0dd3c718e9b3aa401357fd45a1b679cacca9675fd501ba115d2fda76929bfe753ba644f4d1eb24571 SHA512 dc4ad98f34b6e4f15943ec3a8bc07d0335d60943cacb7f1ed08f6a5c0ee34c115c304ffb34a2fd89c19f3d1c59db9f3ee24e3c6a39d7c90f8e251f60d4d7bcb8 diff --git a/dev-python/virtualenv/files/virtualenv-21.2.4-ensurepip.patch b/dev-python/virtualenv/files/virtualenv-21.2.4-ensurepip.patch new file mode 100644 index 000000000000..1447766cc15b --- /dev/null +++ b/dev-python/virtualenv/files/virtualenv-21.2.4-ensurepip.patch @@ -0,0 +1,29 @@ +From 4c59dc5ea8a90d93cd0fb68cebd742dd40d16710 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Sat, 22 Jun 2024 14:28:23 +0200 +Subject: [PATCH] [Gentoo] Use ensurepip wheels instead of local bundle + +--- + src/virtualenv/seed/wheels/embed/__init__.py | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/src/virtualenv/seed/wheels/embed/__init__.py b/src/virtualenv/seed/wheels/embed/__init__.py +index df58d6d0..e1b40d1e 100644 +--- a/src/virtualenv/seed/wheels/embed/__init__.py ++++ b/src/virtualenv/seed/wheels/embed/__init__.py +@@ -70,6 +70,15 @@ def get_embed_wheel(distribution: str, for_py_version: str) -> Wheel | None: + :raises RuntimeError: if the bundled wheel on disk fails SHA-256 verification. + + """ ++ ++ # Gentoo hack: get wheel from ensurepip directory ++ import sysconfig ++ bundle_dir = Path(sysconfig.get_config_var("WHEEL_PKG_DIR")) ++ try: ++ return Wheel.from_path(next(bundle_dir.glob(f"{distribution}-*.whl"))) ++ except StopIteration: ++ return None ++ + mapping = BUNDLE_SUPPORT.get(for_py_version, {}) or BUNDLE_SUPPORT[MAX] + wheel_file = mapping.get(distribution) + if wheel_file is None: diff --git a/dev-python/virtualenv/virtualenv-21.2.4.ebuild b/dev-python/virtualenv/virtualenv-21.2.4.ebuild new file mode 100644 index 000000000000..585a76648569 --- /dev/null +++ b/dev-python/virtualenv/virtualenv-21.2.4.ebuild @@ -0,0 +1,136 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYPI_VERIFY_REPO=https://github.com/pypa/virtualenv +PYTHON_TESTED=( python3_{11..14} pypy3_11 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) + +inherit distutils-r1 pypi + +DESCRIPTION="Virtual Python Environment builder" +HOMEPAGE=" + https://virtualenv.pypa.io/en/stable/ + https://pypi.org/project/virtualenv/ + https://github.com/pypa/virtualenv/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~riscv ~s390 ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-python/distlib-0.3.7[${PYTHON_USEDEP}] + >=dev-python/filelock-3.24.2[${PYTHON_USEDEP}] + >=dev-python/platformdirs-3.9.1[${PYTHON_USEDEP}] + >=dev-python/python-discovery-1.2.2[${PYTHON_USEDEP}] + + dev-python/ensurepip-pip + >=dev-python/ensurepip-setuptools-70.1 + dev-python/ensurepip-wheel +" +# coverage is used somehow magically in virtualenv, maybe it actually +# tests something useful +BDEPEND=" + dev-python/hatch-vcs[${PYTHON_USEDEP}] + test? ( + ${RDEPEND} + $(python_gen_cond_dep ' + dev-python/coverage[${PYTHON_USEDEP}] + >=dev-python/pip-22.2.1[${PYTHON_USEDEP}] + >=dev-python/pytest-mock-3.6.1[${PYTHON_USEDEP}] + dev-python/pytest-rerunfailures[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + >=dev-python/setuptools-67.8[${PYTHON_USEDEP}] + dev-python/wheel[${PYTHON_USEDEP}] + >=dev-python/packaging-20.0[${PYTHON_USEDEP}] + ' "${PYTHON_TESTED[@]}") + $(python_gen_cond_dep ' + dev-python/time-machine[${PYTHON_USEDEP}] + ' python3_{11..14}) + $(python_gen_cond_dep ' + >=dev-python/pytest-freezer-0.4.6[${PYTHON_USEDEP}] + ' 'pypy3*') + ) +" + +src_prepare() { + local PATCHES=( + # use wheels from ensurepip bundle + "${FILESDIR}/${PN}-21.2.4-ensurepip.patch" + ) + + distutils-r1_src_prepare + + # workaround test failures due to warnings from setuptools-scm, sigh + echo '[tool.setuptools_scm]' >> pyproject.toml || die + + # remove useless pins + sed -i -e 's:,<[=0-9.]*::' pyproject.toml || die + + # remove bundled wheels + rm src/virtualenv/seed/wheels/embed/*.whl || die +} + +python_test() { + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + einfo "Skipping testing on ${EPYTHON}" + return + fi + + local EPYTEST_DESELECT=( + tests/unit/seed/embed/test_bootstrap_link_via_app_data.py::test_seed_link_via_app_data + # tests for old wheels with py3.7 support + tests/unit/seed/embed/test_pip_invoke.py::test_base_bootstrap_via_pip_invoke + tests/unit/seed/wheels/test_wheels_util.py::test_wheel_not_support + # broken by different wheel versions in ensurepip + tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_string + tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_exact + tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_none + tests/unit/seed/wheels/test_acquire.py::test_download_wheel_bad_output + # hangs on a busy system, sigh + tests/unit/test_util.py::test_reentrant_file_lock_is_thread_safe + # TODO + tests/unit/create/via_global_ref/test_build_c_ext.py::test_can_build_c_extensions + # random resource leaks or xdist + tests/unit/test_file_limit.py::test_too_many_open_files + # Internet + tests/unit/create/test_creator.py::test_create_distutils_cfg + # we do not use bundled wheels + tests/unit/seed/wheels/test_bundle.py::test_every_wheel_on_disk_has_sha256 + ) + case ${EPYTHON} in + pypy3.11) + EPYTEST_DESELECT+=( + # these don't like the executable called pypy3.11? + tests/unit/activation/test_bash.py::test_bash + tests/unit/activation/test_fish.py::test_fish + tests/unit/discovery/py_info/test_py_info.py::test_fallback_existent_system_executable + ) + ;; + esac + + local -x TZ=UTC + local EPYTEST_PLUGINS=( pytest-{mock,rerunfailures} ) + if [[ ${EPYTHON} == pypy3* ]]; then + EPYTEST_PLUGINS+=( pytest-freezer ) + else + EPYTEST_PLUGINS+=( time-machine ) + fi + local EPYTEST_RERUNS=5 + local EPYTEST_TIMEOUT=180 + local EPYTEST_XDIST=1 + epytest -o addopts= +} + +src_install() { + distutils-r1_src_install + + # remove bundled wheels, we're using ensurepip bundle instead + find "${ED}" -name '*.whl' -delete || die +} diff --git a/dev-python/wrapt/Manifest b/dev-python/wrapt/Manifest index 10626d44ca8e..519cb5239c34 100644 --- a/dev-python/wrapt/Manifest +++ b/dev-python/wrapt/Manifest @@ -1,5 +1,4 @@ DIST wrapt-1.17.3.gh.tar.gz 140900 BLAKE2B 88c4cd718cd98a97c866c4f0b9f7e095347fe6fa5fed60c54e389329c89f9f07099c8fb79561cf5e12c19c44a4067d81e805c55b54a74429e6b75913dedd6b3f SHA512 1a1f7419f20faa461a9e23ad09cc98d381ef2c48b3b24ed1dfe98d42d16857a958252301e78dd41b7fa8ef37eea379f9244cace2b396b49718c44cbc701308a3 DIST wrapt-2.1.2.tar.gz 81678 BLAKE2B f7fc45f31b8077d6d97c14c1f649437e0f1da7537769d369d427edede0ba1b84c8c07e6de9ded8088f29f2fb774272186d0f9b707e6b2bef650dc5f78444d852 SHA512 97f1af4cabfd7a4cfabfaf36d26d1afc577747f18946226fbb80256e13c55302b746005e01720e874d46d536826c83e9234544c98f8dd1ecd3c9a091113da808 -DIST wrapt-2.2.0rc2.tar.gz 91919 BLAKE2B 5f3c42f36f2ec74677a0de7367a019f0b02a183ee28f77f91d2748f8a0cd6714a2d315bdd1900fffc9ea383e1f236b2437aada6fe308d1607578fdb70555f57b SHA512 a70626f14f1b59cc5dfcf99038a72dca022b953f280b34a9472621afe22cecda450b660244bade2956e1b8e13c21365839b186c60ac68e993a0f55f6e44a4ccd -DIST wrapt-2.2.0rc4.tar.gz 95966 BLAKE2B 8c87e0998711cfa08b81c75ead0589bef8ab723df48d04b2304691cd0cbc0c5e25324381a6386f93deb022985285e025cb9600e210a8101e8bae782d8f531a3b SHA512 fb62f0e0b8448b246ee3b34497bf20ca0faac8b3b91da9ea07a2585bcc026ba0a58d5adb2786360a61cca54e212f931019675cb708de2bdda06d322c766ea31a DIST wrapt-2.2.0rc5.tar.gz 101797 BLAKE2B 4784e51ece7f671cb7df884de69ec245569c1c5ea6fc6c8be58438ace8238b910b1d78c9d95de72e7e9a37d2c189d5326253c6784952092187962da6b742ec92 SHA512 509de5d5d1deff63485e0c2b7cbae04709c61276f5863596f31049f451e1eb845d23016d0cee03b9eea0495ce578e62db0a368499819965477d2a2bc08722ae8 +DIST wrapt-2.2.0rc6.tar.gz 107658 BLAKE2B 4efd21c7a575d7a19b421e6068d704a107013a4be09143544cabef6bd490cf11e7278eb011bb6024858fb61d116f628f6658519fd974a171874e51a64f1b9392 SHA512 2d28aaffd3da3d340428ef3f5d34461647eddc973b2b0fba6388dc14a3af3219d74d3c0635e7a964bf35809d7fd8cd099dc655a766841ddba4688774f3ddf4d3 diff --git a/dev-python/wrapt/wrapt-2.2.0_rc4.ebuild b/dev-python/wrapt/wrapt-2.2.0_rc4.ebuild deleted file mode 100644 index 8514e94dc258..000000000000 --- a/dev-python/wrapt/wrapt-2.2.0_rc4.ebuild +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{10..14} ) - -inherit distutils-r1 pypi - -MY_P=${P/_} -DESCRIPTION="Module for decorators, wrappers and monkey patching" -HOMEPAGE=" - https://github.com/GrahamDumpleton/wrapt/ - https://pypi.org/project/wrapt/ -" - -LICENSE="BSD" -SLOT="0" -if [[ ${PV} != *_rc* ]]; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" -fi -IUSE="+native-extensions" - -EPYTEST_PLUGINS=() -distutils_enable_tests pytest - -src_prepare() { - distutils-r1_src_prepare - - # skip mypy tests, they are fragile - rm -r tests/mypy || die -} - -python_compile() { - local -x WRAPT_INSTALL_EXTENSIONS=$(usex native-extensions true false) - distutils-r1_python_compile -} diff --git a/dev-python/wrapt/wrapt-2.2.0_rc2.ebuild b/dev-python/wrapt/wrapt-2.2.0_rc6.ebuild index 8514e94dc258..8514e94dc258 100644 --- a/dev-python/wrapt/wrapt-2.2.0_rc2.ebuild +++ b/dev-python/wrapt/wrapt-2.2.0_rc6.ebuild |
