From f6bcc45ab811bbc6c133a87192de845240fdfd9c Mon Sep 17 00:00:00 2001 From: "Liguros - Gitlab CI/CD [develop]" Date: Wed, 15 Apr 2026 19:12:21 +0000 Subject: Adding metadata --- dev-python/aiorpcx/aiorpcx-0.25.0.ebuild | 4 +- .../aiorpcx/files/aiorpcx-0.25.0-py314.patch | 22 ++++ dev-python/argh/argh-0.31.3.ebuild | 8 +- dev-python/argh/files/argh-0.31.3-py314.patch | 54 ++++++++ dev-python/editables/Manifest | 1 + dev-python/editables/editables-0.6.ebuild | 26 ++++ dev-python/filelock/Manifest | 2 + dev-python/filelock/filelock-3.28.0.ebuild | 31 +++++ dev-python/fonttools/fonttools-4.61.1.ebuild | 3 - dev-python/fonttools/fonttools-4.62.0.ebuild | 3 - dev-python/fonttools/fonttools-4.62.1.ebuild | 3 - dev-python/hypothesis/Manifest | 1 + dev-python/hypothesis/hypothesis-6.152.1.ebuild | 112 +++++++++++++++++ dev-python/liblarch/liblarch-3.2.0.ebuild | 3 +- dev-python/librt/librt-0.9.0.ebuild | 2 +- dev-python/loguru/files/loguru-0.7.3-py314.patch | 58 +++++++++ dev-python/loguru/loguru-0.7.3.ebuild | 8 +- dev-python/mako/Manifest | 1 + dev-python/mako/mako-1.3.11.ebuild | 41 +++++++ dev-python/mediafile/Manifest | 1 + dev-python/mediafile/mediafile-0.16.1.ebuild | 31 +++++ dev-python/mypy/mypy-1.20.1.ebuild | 2 +- dev-python/osc-lib/Manifest | 1 + dev-python/osc-lib/osc-lib-4.5.0.ebuild | 49 ++++++++ dev-python/packaging/Manifest | 2 + dev-python/packaging/packaging-26.1.ebuild | 40 ++++++ dev-python/passlib/Manifest | 1 + dev-python/passlib/passlib-1.9.3.ebuild | 63 ++++++++++ dev-python/progressbar2/progressbar2-4.5.0.ebuild | 4 +- .../pybtex-docutils/pybtex-docutils-1.0.3.ebuild | 8 +- dev-python/pygithub/Manifest | 1 + dev-python/pygithub/pygithub-2.9.1.ebuild | 39 ++++++ dev-python/pypdf/Manifest | 2 + dev-python/pypdf/pypdf-6.10.1.ebuild | 52 ++++++++ dev-python/pyspelling/pyspelling-2.12.1.ebuild | 2 +- dev-python/pytesseract/pytesseract-0.3.13.ebuild | 3 +- dev-python/pytest-mpl/Manifest | 1 + dev-python/pytest-mpl/pytest-mpl-0.17.0.ebuild | 2 +- dev-python/pytest-mpl/pytest-mpl-0.19.0.ebuild | 42 +++++++ .../python-discovery/python-discovery-1.2.2.ebuild | 2 +- dev-python/qscintilla/qscintilla-2.14.1-r3.ebuild | 2 +- .../setuptools-scm/setuptools-scm-10.0.5.ebuild | 2 +- dev-python/signxml/signxml-4.4.0.ebuild | 2 +- dev-python/tox/Manifest | 2 + dev-python/tox/tox-4.53.0.ebuild | 95 ++++++++++++++ dev-python/translate-toolkit/Manifest | 1 + .../translate-toolkit-3.19.5.ebuild | 130 ++++++++++++++++++++ .../unicode-segmentation-rs-0.2.4.ebuild | 2 +- .../vcs-versioning/vcs-versioning-1.1.1.ebuild | 2 +- dev-python/virtualenv/Manifest | 2 + .../files/virtualenv-21.2.4-ensurepip.patch | 29 +++++ dev-python/virtualenv/virtualenv-21.2.4.ebuild | 136 +++++++++++++++++++++ dev-python/wrapt/Manifest | 3 +- dev-python/wrapt/wrapt-2.2.0_rc2.ebuild | 39 ------ dev-python/wrapt/wrapt-2.2.0_rc4.ebuild | 39 ------ dev-python/wrapt/wrapt-2.2.0_rc6.ebuild | 39 ++++++ 56 files changed, 1149 insertions(+), 107 deletions(-) create mode 100644 dev-python/aiorpcx/files/aiorpcx-0.25.0-py314.patch create mode 100644 dev-python/argh/files/argh-0.31.3-py314.patch create mode 100644 dev-python/editables/editables-0.6.ebuild create mode 100644 dev-python/filelock/filelock-3.28.0.ebuild create mode 100644 dev-python/hypothesis/hypothesis-6.152.1.ebuild create mode 100644 dev-python/loguru/files/loguru-0.7.3-py314.patch create mode 100644 dev-python/mako/mako-1.3.11.ebuild create mode 100644 dev-python/mediafile/mediafile-0.16.1.ebuild create mode 100644 dev-python/osc-lib/osc-lib-4.5.0.ebuild create mode 100644 dev-python/packaging/packaging-26.1.ebuild create mode 100644 dev-python/passlib/passlib-1.9.3.ebuild create mode 100644 dev-python/pygithub/pygithub-2.9.1.ebuild create mode 100644 dev-python/pypdf/pypdf-6.10.1.ebuild create mode 100644 dev-python/pytest-mpl/pytest-mpl-0.19.0.ebuild create mode 100644 dev-python/tox/tox-4.53.0.ebuild create mode 100644 dev-python/translate-toolkit/translate-toolkit-3.19.5.ebuild create mode 100644 dev-python/virtualenv/files/virtualenv-21.2.4-ensurepip.patch create mode 100644 dev-python/virtualenv/virtualenv-21.2.4.ebuild delete mode 100644 dev-python/wrapt/wrapt-2.2.0_rc2.ebuild delete mode 100644 dev-python/wrapt/wrapt-2.2.0_rc4.ebuild create mode 100644 dev-python/wrapt/wrapt-2.2.0_rc6.ebuild (limited to 'dev-python') 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 +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 +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 +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 "" (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 @@ +  └  + + File "tests/exceptions/source/modern/type_hints.py", line 15, in foo +- 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 +  │ │ │ │ │ │ └ ~T +  │ │ │ │ │ └ 3 +  │ │ │ │ └  +-  │ │ │ └ typing.Union ++  │ │ │ └ typing.Tuple +  │ │ └ 2 +  │ └ 1 +  └  +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=" + !=[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?= +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_rc2.ebuild b/dev-python/wrapt/wrapt-2.2.0_rc2.ebuild deleted file mode 100644 index 8514e94dc258..000000000000 --- a/dev-python/wrapt/wrapt-2.2.0_rc2.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_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_rc6.ebuild b/dev-python/wrapt/wrapt-2.2.0_rc6.ebuild new file mode 100644 index 000000000000..8514e94dc258 --- /dev/null +++ b/dev-python/wrapt/wrapt-2.2.0_rc6.ebuild @@ -0,0 +1,39 @@ +# 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 +} -- cgit v1.3