From 5b8c66d13108e6e7ef79b6838290143e9f7f4eaa Mon Sep 17 00:00:00 2001 From: "Liguros - Gitlab CI/CD [develop]" Date: Wed, 9 Jul 2025 18:14:20 +0000 Subject: Adding metadata --- dev-python/aiodns/aiodns-3.5.0.ebuild | 7 +- dev-python/alembic/Manifest | 1 + dev-python/alembic/alembic-1.16.3.ebuild | 57 ++++++++ dev-python/asgiref/Manifest | 1 + dev-python/asgiref/asgiref-3.9.1.ebuild | 23 ++++ dev-python/b2sdk/b2sdk-2.9.4.ebuild | 2 + dev-python/django-otp/Manifest | 1 + dev-python/django-otp/django-otp-1.6.1.ebuild | 43 ++++++ dev-python/google-api-python-client/Manifest | 1 + .../google-api-python-client-2.176.0.ebuild | 51 +++++++ dev-python/httpx/Manifest | 1 + dev-python/httpx/httpx-0.27.2.ebuild | 95 +++++++++++++ dev-python/matplotlib/matplotlib-3.10.3.ebuild | 2 +- dev-python/nuitka/Manifest | 1 + dev-python/nuitka/nuitka-2.7.12.ebuild | 55 ++++++++ dev-python/os-client-config/Manifest | 1 + .../os-client-config/os-client-config-2.3.0.ebuild | 45 ++++++ dev-python/os-service-types/Manifest | 1 + .../os-service-types/os-service-types-1.8.0.ebuild | 35 +++++ dev-python/peewee/Manifest | 1 + dev-python/peewee/peewee-3.18.2.ebuild | 81 +++++++++++ dev-python/phonenumbers/Manifest | 1 + dev-python/phonenumbers/phonenumbers-9.0.9.ebuild | 39 ++++++ dev-python/puremagic/puremagic-1.30.ebuild | 2 +- dev-python/pypdf/pypdf-5.7.0.ebuild | 2 +- .../pytest-datafiles/pytest-datafiles-3.0.0.ebuild | 2 +- dev-python/python-lsp-server/Manifest | 1 + .../python-lsp-server-1.13.0.ebuild | 91 ++++++++++++ .../files/respx-0.22.0-tests-flexibility.patch | 98 +++++++++++++ dev-python/respx/respx-0.22.0-r1.ebuild | 44 ------ dev-python/respx/respx-0.22.0-r2.ebuild | 48 +++++++ dev-python/selenium/Manifest | 2 + dev-python/selenium/selenium-4.34.2.ebuild | 152 +++++++++++++++++++++ dev-python/testfixtures/Manifest | 1 + dev-python/testfixtures/testfixtures-9.1.0.ebuild | 51 +++++++ dev-python/wand/wand-0.6.13.ebuild | 2 +- dev-python/yaswfp/Manifest | 2 +- dev-python/yaswfp/yaswfp-0.9.3-r2.ebuild | 14 +- 38 files changed, 1000 insertions(+), 57 deletions(-) create mode 100644 dev-python/alembic/alembic-1.16.3.ebuild create mode 100644 dev-python/asgiref/asgiref-3.9.1.ebuild create mode 100644 dev-python/django-otp/django-otp-1.6.1.ebuild create mode 100644 dev-python/google-api-python-client/google-api-python-client-2.176.0.ebuild create mode 100644 dev-python/httpx/httpx-0.27.2.ebuild create mode 100644 dev-python/nuitka/nuitka-2.7.12.ebuild create mode 100644 dev-python/os-client-config/os-client-config-2.3.0.ebuild create mode 100644 dev-python/os-service-types/os-service-types-1.8.0.ebuild create mode 100644 dev-python/peewee/peewee-3.18.2.ebuild create mode 100644 dev-python/phonenumbers/phonenumbers-9.0.9.ebuild create mode 100644 dev-python/python-lsp-server/python-lsp-server-1.13.0.ebuild create mode 100644 dev-python/respx/files/respx-0.22.0-tests-flexibility.patch delete mode 100644 dev-python/respx/respx-0.22.0-r1.ebuild create mode 100644 dev-python/respx/respx-0.22.0-r2.ebuild create mode 100644 dev-python/selenium/selenium-4.34.2.ebuild create mode 100644 dev-python/testfixtures/testfixtures-9.1.0.ebuild (limited to 'dev-python') diff --git a/dev-python/aiodns/aiodns-3.5.0.ebuild b/dev-python/aiodns/aiodns-3.5.0.ebuild index 689f1c885735..a9000209a747 100644 --- a/dev-python/aiodns/aiodns-3.5.0.ebuild +++ b/dev-python/aiodns/aiodns-3.5.0.ebuild @@ -3,6 +3,7 @@ EAPI=8 +EPYTEST_PLUGINS=( pytest-asyncio ) DISTUTILS_USE_PEP517=setuptools PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) @@ -23,13 +24,9 @@ RESTRICT="test" RDEPEND=">=dev-python/pycares-4.9.0[${PYTHON_USEDEP}]" DEPEND="${RDEPEND}" -BDEPEND=" - dev-python/pytest-asyncio[${PYTHON_USEDEP}] -" distutils_enable_tests pytest python_test() { - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest -p asyncio --asyncio-mode=auto + epytest --asyncio-mode=auto } diff --git a/dev-python/alembic/Manifest b/dev-python/alembic/Manifest index e8c8ef47aeb8..55b9619d1ce0 100644 --- a/dev-python/alembic/Manifest +++ b/dev-python/alembic/Manifest @@ -1 +1,2 @@ DIST alembic-1.16.2.tar.gz 1963563 BLAKE2B 5a2fd7a1413b6b8f5c30a8dd28e3eb9fb503fdb9cf7e74f33d8a17e2874cdd7c1e174c0d89764d6a5a7007bf55209419e076fb535c9a77f87a51eccfe1935c0e SHA512 1d8bf5b05fb94dcc2093b4bb8ca73cc3f5ac28d3aea46d7b4318d98bbae8468ca474a86c7203a64d6d4472c3f2f94e1b83a5bcd9d33c41e481fb304ef1592fbd +DIST alembic-1.16.3.tar.gz 1967462 BLAKE2B 1e5dbddc98859e9f0966917c473a45ae0a0bdefee2ccbbb4d5c17c48f4b57b8635dd0896c96be351bae00c21a221c1c7b1d574824338d09c294c0698b8a1e01f SHA512 9025ce25aa524a971b93cfe3406d3c75d4dba47dfa4067a8d23c24fc27c00b19f3da726d37933e91fb715a8ab72677a4921101f61b80ea9d09148271b33de3f3 diff --git a/dev-python/alembic/alembic-1.16.3.ebuild b/dev-python/alembic/alembic-1.16.3.ebuild new file mode 100644 index 000000000000..62a2e6224a83 --- /dev/null +++ b/dev-python/alembic/alembic-1.16.3.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Database migrations tool, written by the author of SQLAlchemy" +HOMEPAGE=" + https://github.com/sqlalchemy/alembic/ + https://pypi.org/project/alembic/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" +IUSE="doc" + +RDEPEND=" + >=dev-python/sqlalchemy-1.4.0[${PYTHON_USEDEP}] + dev-python/mako[${PYTHON_USEDEP}] + >=dev-python/typing-extensions-4.12[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + sys-libs/timezone-data + ) +" + +EPYTEST_PLUGINS=() +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=() + + if ! has_version "dev-python/black[${PYTHON_USEDEP}]"; then + EPYTEST_DESELECT+=( + tests/test_post_write.py::RunHookTest::test_module + tests/test_post_write.py::RunHookTest::test_module_black_with_cwd + tests/test_post_write.py::RunHookTest::test_module_filename_interpolation + tests/test_post_write.py::RunHookTest::test_module_path_in_config + ) + fi + + # setup.cfg contains -p no:warnings in addopts which triggers + # datetime.utcfromtimestamp() deprecation warning as an error in py3.12 + epytest -o addopts= +} + +python_install_all() { + use doc && local HTML_DOCS=( docs/. ) + distutils-r1_python_install_all +} diff --git a/dev-python/asgiref/Manifest b/dev-python/asgiref/Manifest index 051f7a495998..7f8b19d6ee0d 100644 --- a/dev-python/asgiref/Manifest +++ b/dev-python/asgiref/Manifest @@ -1,2 +1,3 @@ DIST asgiref-3.8.1.tar.gz 35186 BLAKE2B ce18c03ad3de054375eb5c97792bfdb6b0ae19f8769f2968892d805d3c54c2d4e7dd7b05036bd786a828d0537fcebe983b46d38bdfc17d09be7e924ee3462d5c SHA512 3ef9ac2fcdce069cde96467abaa4a820c4eac19d40ce72e1afd0ca08279c00053a7e107966d766651def33a72a19c11559849b1032e89d62f544156590ef801d DIST asgiref-3.9.0.tar.gz 36772 BLAKE2B c6c83f29dba712976b6f2ec6c751885a1af8b9df6e8d6e616e844bacfbb57cd196c177ad27c1b55ca1dd3c66a7abbaa8f3dd3851925839295cd9d2308079a47e SHA512 6f0847cb28f1dc2d721b2540331270c18d4e9b0bf412fe5a0447ddc8abf133a6cd9254c333e56415af3cd3676db58516f695a64f99d70ab052b513ce0d59499e +DIST asgiref-3.9.1.tar.gz 36870 BLAKE2B d4883a95c2c363388a63114eeff92af96f5989e528e8bb496ac965aa0c686117cf38cf7968d16006bfa2529be84b5cc80c957128acee447ecbd5857db28b8377 SHA512 bc1a947dc7026fbd95970c71e699462856752b48024e2adf3ab5298dd8fb3fcee2e02a95eb97c5e8fe51ba77763b07f8e2922656ecac5b4205e03054663f9bbc diff --git a/dev-python/asgiref/asgiref-3.9.1.ebuild b/dev-python/asgiref/asgiref-3.9.1.ebuild new file mode 100644 index 000000000000..30e0e9bcc2f1 --- /dev/null +++ b/dev-python/asgiref/asgiref-3.9.1.ebuild @@ -0,0 +1,23 @@ +# Copyright 2020-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="ASGI utilities (successor to WSGI)" +HOMEPAGE=" + https://asgi.readthedocs.io/en/latest/ + https://github.com/django/asgiref/ + https://pypi.org/project/asgiref/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +EPYTEST_PLUGINS=( pytest-asyncio ) +distutils_enable_tests pytest diff --git a/dev-python/b2sdk/b2sdk-2.9.4.ebuild b/dev-python/b2sdk/b2sdk-2.9.4.ebuild index 711acfe5370d..abbec21a2522 100644 --- a/dev-python/b2sdk/b2sdk-2.9.4.ebuild +++ b/dev-python/b2sdk/b2sdk-2.9.4.ebuild @@ -43,4 +43,6 @@ EPYTEST_IGNORE=( test/integration/test_raw_api.py ) +export PDM_BUILD_SCM_VERSION=${PV} + distutils_enable_tests pytest diff --git a/dev-python/django-otp/Manifest b/dev-python/django-otp/Manifest index e9b46144e733..ceb2871c3ee2 100644 --- a/dev-python/django-otp/Manifest +++ b/dev-python/django-otp/Manifest @@ -1 +1,2 @@ DIST django_otp-1.6.0.tar.gz 73830 BLAKE2B c68193a6da04d330daa73805389513554944832d0eeaf090d5f7c03fa6f52831658c813c3d4838fe3b71ad7044f1bffe1d74682af78262cf06f38bc05f12a467 SHA512 6800fc61fcf674933a8f0bb928fa97ac794075bc937022866c97d25b2d7f1a02f7402383d487c7a4d7e1bb48abc2ad6fa8c4d808c15222ba8cff35c909b2b22d +DIST django_otp-1.6.1.tar.gz 74134 BLAKE2B fcd3fcdab38f98cef3330ad36008f74f58134a1ea82440caa56a901575ad63805242969689e0381ae0823d70d4a7790c3e9703b6a8d1e3fa30bf10aa5be1bfc2 SHA512 7fdcbc53e7c210b4d8332b6facfefa7bd3d4f51df30f180be3936474da5a2bc604841e964114d2a8826a85839de2088e0e189779c47f7ab98473e575b5e3ffdf diff --git a/dev-python/django-otp/django-otp-1.6.1.ebuild b/dev-python/django-otp/django-otp-1.6.1.ebuild new file mode 100644 index 000000000000..67dd501a580c --- /dev/null +++ b/dev-python/django-otp/django-otp-1.6.1.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( python3_{9,10,11,12,13} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Django framework adding two-factor authentication using one-time passwords" +HOMEPAGE=" + https://github.com/django-otp/django-otp/ + https://pypi.org/project/django-otp/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-python/django-4.2[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + $(python_gen_impl_dep sqlite) + dev-python/freezegun[${PYTHON_USEDEP}] + || ( + dev-python/qrcode[${PYTHON_USEDEP}] + dev-python/segno[${PYTHON_USEDEP}] + ) + ${RDEPEND} + ) +" + +python_test() { + local -x PYTHONPATH=test:${PYTHONPATH} + local -x DJANGO_SETTINGS_MODULE=test_project.settings + "${EPYTHON}" -m django test -v 2 django_otp || + die "Tests fail with ${EPYTHON}" +} diff --git a/dev-python/google-api-python-client/Manifest b/dev-python/google-api-python-client/Manifest index afd38a3ddfbc..52280de01a38 100644 --- a/dev-python/google-api-python-client/Manifest +++ b/dev-python/google-api-python-client/Manifest @@ -1,3 +1,4 @@ DIST google_api_python_client-2.173.0.tar.gz 13091318 BLAKE2B c7135d5ef2ce2b029c3d6d779fa82db69768ed70e366301ab692f746b7b76c3807f823a85e47a01cbe68626b20092b6bf5ea53baaeb416e84ec1d4086858267f SHA512 28947b8dd0cda063ebe5f9a722dfaf07f6a3db9030ac40c949b5ba27353699da32ee13862fc8969e7e4cf0f61a6efba11701ef15a460f827ab3e32b3f80d8b97 DIST google_api_python_client-2.174.0.tar.gz 13127872 BLAKE2B a369b988fc84c27a51d7c9708b00e81196777dbffca4e824f9ba4d65d59f24ae05c57aa3015b5d9d0b0965afefbd57c2d015b4c2e1447157697c036af5509143 SHA512 bf18ecf712c14f2ede60201d332a80bb3014d6ba0c269414f69d24d8f3714929769628ff71bcfb6f9accf23bc942917088431ccdd65b216a6165162dc7815f7e DIST google_api_python_client-2.175.0.tar.gz 13143355 BLAKE2B 9ac5bd958d2c5de6b57917be04032fb10a9bffb577172e028d944e537726dd6aa85c798e11d032339b9e3f9df73c4e18ee4a429a83a360226449b77a25c7861c SHA512 2459336702ba415c12ae137c5cfbd4264a55df4f39d140514ce875bf6af13e702d76e3ad6716debbaf30364fd2211fd92f0a76be8f8de5b6d587aab4e1d377e4 +DIST google_api_python_client-2.176.0.tar.gz 13154773 BLAKE2B 04677d283d132b93b99745619b2e1ee04e8c08c6f3b17ca7be8fcad3a4ba8aef1d3403a31c6c8fd477e6a0f78ea2a4545a99d9464eaeb4eb2ced1721f80c50a8 SHA512 1978849c948ac078992e4c3f38cf9a32ac8d1ac01fafb7bfa2458c8facb29e5597c215f6ba3d6cb3d3a6e439d64210f245e2fbf8bc86c65d5f7a2c5fc6f87fd8 diff --git a/dev-python/google-api-python-client/google-api-python-client-2.176.0.ebuild b/dev-python/google-api-python-client/google-api-python-client-2.176.0.ebuild new file mode 100644 index 000000000000..83f75ed3d688 --- /dev/null +++ b/dev-python/google-api-python-client/google-api-python-client-2.176.0.ebuild @@ -0,0 +1,51 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9,10,11,12,13} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Google API Client for Python" +HOMEPAGE=" + https://github.com/googleapis/google-api-python-client/ + https://pypi.org/project/google-api-python-client/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + >=dev-python/httplib2-0.15[${PYTHON_USEDEP}] + =dev-python/google-api-core-2.3.1[${PYTHON_USEDEP}] + >=dev-python/google-auth-1.35.0[${PYTHON_USEDEP}] + >=dev-python/google-auth-httplib2-0.1.0[${PYTHON_USEDEP}] + >=dev-python/uritemplate-3.0.0[${PYTHON_USEDEP}] + +Date: Tue, 8 Jul 2025 00:21:38 -0400 +Subject: [PATCH] tests: support any httpx version + +Signed-off-by: Eli Schwartz +--- + noxfile.py | 2 +- + tests/test_api.py | 23 ++++++++++++++++++----- + 2 files changed, 19 insertions(+), 6 deletions(-) + +diff --git a/noxfile.py b/noxfile.py +index 39fbef4..40fe124 100644 +--- a/noxfile.py ++++ b/noxfile.py +@@ -7,7 +7,7 @@ nox.options.keywords = "test + mypy" + + @nox.session(python=["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"]) + def test(session): +- deps = ["pytest", "pytest-asyncio", "pytest-cov", "trio", "starlette", "flask"] ++ deps = ["pytest", "pytest-asyncio", "pytest-cov", "trio", "starlette", "flask", "packaging"] + session.install("--upgrade", *deps) + session.install("-e", ".") + +diff --git a/tests/test_api.py b/tests/test_api.py +index 81ca4b2..170389b 100644 +--- a/tests/test_api.py ++++ b/tests/test_api.py +@@ -7,12 +7,15 @@ from unittest import mock + import httpcore + import httpx + import pytest ++from packaging.version import Version + + import respx + from respx.models import Route + from respx.patterns import M + from respx.router import MockRouter + ++httpx_0_28 = Version(httpx.__version__) >= Version('0.28') ++ + + async def test_http_methods(client): + async with respx.mock: +@@ -214,7 +217,7 @@ async def test_content_variants(client, key, value, expected_content_type): + {"X-Foo": "bar"}, + { + "Content-Type": "application/json", +- "Content-Length": "13", ++ "Content-Length": "13" if httpx_0_28 else "14", + "X-Foo": "bar", + }, + ), +@@ -223,7 +226,7 @@ async def test_content_variants(client, key, value, expected_content_type): + {"Content-Type": "application/json; charset=utf-8", "X-Foo": "bar"}, + { + "Content-Type": "application/json; charset=utf-8", +- "Content-Length": "13", ++ "Content-Length": "13" if httpx_0_28 else "14", + "X-Foo": "bar", + }, + ), +@@ -322,19 +325,29 @@ async def test_callable_content(client): + assert request.called is True + assert async_response.status_code == 200 + assert async_response.text == "hello world." +- assert request.calls[-1][0].content == b'{"x":"."}' ++ if httpx_0_28: ++ assert request.calls[-1][0].content == b'{"x":"."}' ++ else: ++ assert request.calls[-1][0].content == b'{"x": "."}' + + respx_mock.reset() + sync_response = httpx.post("https://foo.bar/jonas/", json={"x": "!"}) + assert request.called is True + assert sync_response.status_code == 200 + assert sync_response.text == "hello jonas!" +- assert request.calls[-1][0].content == b'{"x":"!"}' ++ if httpx_0_28: ++ assert request.calls[-1][0].content == b'{"x":"!"}' ++ else: ++ assert request.calls[-1][0].content == b'{"x": "!"}' + + + async def test_request_callback(client): + def callback(request, name): +- if request.url.host == "foo.bar" and request.content == b'{"foo":"bar"}': ++ if httpx_0_28: ++ content = b'{"foo":"bar"}' ++ else: ++ content = b'{"foo": "bar"}' ++ if request.url.host == "foo.bar" and request.content == content: + return respx.MockResponse( + 202, + headers={"X-Foo": "bar"}, +-- +2.49.0 + diff --git a/dev-python/respx/respx-0.22.0-r1.ebuild b/dev-python/respx/respx-0.22.0-r1.ebuild deleted file mode 100644 index decde3e63df0..000000000000 --- a/dev-python/respx/respx-0.22.0-r1.ebuild +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright 2024-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{11..14} ) - -inherit distutils-r1 - -DESCRIPTION="Mock HTTPX with awesome request patterns and response side effects" -HOMEPAGE=" - https://lundberg.github.io/respx/ - https://pypi.org/project/respx/ - https://github.com/lundberg/respx/ -" -# no tests in pypi sdist -SRC_URI=" - https://github.com/lundberg/respx/archive/refs/tags/${PV}.tar.gz - -> ${P}.gh.tar.gz -" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm64 x86" - -RDEPEND=" - >=dev-python/httpx-0.28.0[${PYTHON_USEDEP}] -" -BDEPEND=" - test? ( - dev-python/flask[${PYTHON_USEDEP}] - dev-python/httpcore[${PYTHON_USEDEP}] - dev-python/pytest-asyncio[${PYTHON_USEDEP}] - dev-python/starlette[${PYTHON_USEDEP}] - dev-python/trio[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -python_test() { - epytest -p 'no:*' -p asyncio -o addopts= -} diff --git a/dev-python/respx/respx-0.22.0-r2.ebuild b/dev-python/respx/respx-0.22.0-r2.ebuild new file mode 100644 index 000000000000..84b80eb2e270 --- /dev/null +++ b/dev-python/respx/respx-0.22.0-r2.ebuild @@ -0,0 +1,48 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{11..14} ) + +inherit distutils-r1 + +DESCRIPTION="Mock HTTPX with awesome request patterns and response side effects" +HOMEPAGE=" + https://lundberg.github.io/respx/ + https://pypi.org/project/respx/ + https://github.com/lundberg/respx/ +" +# no tests in pypi sdist +SRC_URI=" + https://github.com/lundberg/respx/archive/refs/tags/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="amd64 arm64 x86" + +RDEPEND=" + >=dev-python/httpx-0.25.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/flask[${PYTHON_USEDEP}] + dev-python/httpcore[${PYTHON_USEDEP}] + dev-python/pytest-asyncio[${PYTHON_USEDEP}] + dev-python/starlette[${PYTHON_USEDEP}] + dev-python/trio[${PYTHON_USEDEP}] + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-0.22.0-tests-flexibility.patch +) + +distutils_enable_tests pytest + +python_test() { + epytest -p 'no:*' -p asyncio -o addopts= +} diff --git a/dev-python/selenium/Manifest b/dev-python/selenium/Manifest index 3dfae4d20b1f..a5917c2fc577 100644 --- a/dev-python/selenium/Manifest +++ b/dev-python/selenium/Manifest @@ -3,8 +3,10 @@ DIST selenium-4.31.0.tar.gz 855418 BLAKE2B d06268cfc71cfde25718ecded62f455676813 DIST selenium-4.32.0.tar.gz 870997 BLAKE2B b25ceff282c7be6de7e3a02c71769aa08db6d726010b879f4feb7e0f96b465ad5ce9d5942d941f3d1dd4c1c664faeb0e5be5b01c69150420dd1b15b19197971b SHA512 8c46e7e07b1a647c7901401a8d7a2930f95a5df5c4ed81d3364446b88a9c55de5c8401ede06aea6e142807025f890e2c026407b9468a44e239b5bed6a2ffdbb0 DIST selenium-4.33.0.tar.gz 882387 BLAKE2B 62f32dc6aea5d7d16c546283d884d4f56b86911d7dbeeeb37a3f978d7b2161a8178e6d244b0dd6e6c5ca1a2eb29b0b758ed537d4b13cad5c71012b3d24c38b3e SHA512 c1f4969279d6df92f8537fe3d8cad1cd8265c6942a765399d8024aafeeb90dc0af6e7c11509dcead18a89f03c3486cd526448b27fae91bfc670fbaea7c6a37af DIST selenium-4.34.0.tar.gz 895790 BLAKE2B 6f256ff92721eea31ec11dd0ced3d7ce7e1f79cb76664bed07297cfa872032652365ea17bc0a241a8417d3c47ea4242f520590a84024e5575e00e09cec5a9657 SHA512 374d5a321bbdbe260144e88b0cb1f10498e08368a3fc2142dbcb65e576a5188b5310dc3e0f5d8a114c5ac3a8ad9e5155c0cc5b66df13ea7fbd51a993b69472f3 +DIST selenium-4.34.2.tar.gz 896309 BLAKE2B 094d3596a86e1cd50a6967a65b3e7b9a73300403f5d88163ded8b1d3a62cb09d77057e9b90a35b39f3a6000a8ba604bd71ecb051866cf7ad88c5ab9e21752978 SHA512 f5911f41bc4988e1af26812299cf37aba7e88820cf4e719e0e04a36a5dbdba5420422c52393c8d31c4e0f88efe779e9beec2c490892e4546caa0a920047e01fa DIST selenium-selenium-4.26.1-python.gh.tar.gz 77109265 BLAKE2B c0c5693c64fa65a627e5edf0cbbc051410fcddf59e4fd80c362b9a382c586fc3ad3d574674e5523ab284b40b6639e95e85fd1c8195f2f1a6f35ad6532ed667ce SHA512 7ace69332f17c6f7e28b81223f4c8c62cde1832b5acaf2fd1c777a08a5a9cfebb5d9c83daa10462eeb3acb9c7cb5038711f5acee51f5dad3910d7e29e4387d3f DIST selenium-selenium-4.31.0.gh.tar.gz 52458288 BLAKE2B 649d585e116ccd82e68f3b74b50cbbda5b9ac02c6ab8e72473b5775265205dc31ec69c846b1b39c91dceb63234bb02bf4833b321d101227f5873db6ad8897038 SHA512 e440e1b8e15b9e1f592b2466738f3982355a0757458bd7c8ef7eba31548df2bd449e54cea273a47f2b6bd0e68a2d75a1af67a791eff0cf3f601e685c4b8b237a DIST selenium-selenium-4.32.0.gh.tar.gz 52479399 BLAKE2B 01a2c0c172d4d25045b7f16d16c23945f4aaf48b422a9c926cdd6dbc728193a94d068c69f0317d3e5b8dd17df655581b3e5fd1e845cb18c1080f7a4aeb88d1dc SHA512 3beac9d23e9b92e54ff53195bb6376f6938019af9fdf9ad42210deb4bcd3b0fafe9e5098d4ba6e974d4d7f6bce6788622c0bd89ccf07117f3f7c7abad4e8831c DIST selenium-selenium-4.33.0.gh.tar.gz 52518597 BLAKE2B 126fd55707580ff1e8a1df129680dcfb3f6edd11cacc335bb0163cf0af7b9f713a5c73d70e963089e0bffd14bede21c04dcec8eb99aaa5be6719717411c73088 SHA512 6392f952081cac1c2d9a5d9b1a93da270a6605f370d25fa3e79551b8df648f527b1936448e42d5e75d89613a7306a5d8f351e471b7c783ef35e7b22be9eb2955 DIST selenium-selenium-4.34.0.gh.tar.gz 52524095 BLAKE2B 1fe7e662697039708ce84ef4941f028369ca54089cd4f5075b3df2aa0d08373a3779ca201daa29ff5c4ad3d139f751a4525e114bfa80e3d0d297901309bf3bda SHA512 6e431e82d1ef4cb5dd47f319a95a43ebf68924b73f5de8e562ba21a0420d58098dcf63578699d36e3da5a6180fe7e433a50389a362357eb7c7f6d0a5770966b6 +DIST selenium-selenium-4.34.2-python.gh.tar.gz 52515190 BLAKE2B 319a7083d5942c1962b4f48f907fea12943a403e4490f74f3cd38662f1c63f57270b27b6039a5a8f29a980540cd0dcf1d1c7560c7ac126f07e491983dc0e81ef SHA512 5ca0b6e970ded3dc93cd55a2c1af7c43063d87f57f119a011313eb7d08faa4057896a56d4eac2e13d39857c94b54f04840a053153cc39008c76cbdd33c8ddbba diff --git a/dev-python/selenium/selenium-4.34.2.ebuild b/dev-python/selenium/selenium-4.34.2.ebuild new file mode 100644 index 000000000000..6f12081c9a0b --- /dev/null +++ b/dev-python/selenium/selenium-4.34.2.ebuild @@ -0,0 +1,152 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_TESTED=( python3_{9,10,11,12,13} pypy3 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) + +inherit distutils-r1 pypi + +# base releases are usually ${P}, followups ${P}-python +TEST_TAG=${P} +[[ ${PV} != *.0 ]] && TEST_TAG+=-python +TEST_P=selenium-${TEST_TAG} + +DESCRIPTION="Python language binding for Selenium Remote Control" +HOMEPAGE=" + https://www.seleniumhq.org/ + https://github.com/SeleniumHQ/selenium/tree/trunk/py/ + https://pypi.org/project/selenium/ +" +SRC_URI+=" + test? ( + https://github.com/SeleniumHQ/selenium/archive/${TEST_TAG}.tar.gz + -> ${TEST_P}.gh.tar.gz + ) +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="test test-rust" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-python/certifi-2025.6.15[${PYTHON_USEDEP}] + >=dev-python/trio-0.30[${PYTHON_USEDEP}] + >=dev-python/trio-websocket-0.12.2[${PYTHON_USEDEP}] + >=dev-python/typing-extensions-4.14.0[${PYTHON_USEDEP}] + >=dev-python/urllib3-2.5.0[${PYTHON_USEDEP}] + >=dev-python/websocket-client-1.8.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + ${RDEPEND} + $(python_gen_cond_dep ' + dev-python/filetype[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + test-rust? ( + dev-python/pytest[${PYTHON_USEDEP}] + dev-python/pytest-rerunfailures[${PYTHON_USEDEP}] + dev-util/selenium-manager + net-misc/geckodriver + || ( + www-client/firefox + www-client/firefox-bin + ) + ) + ' "${PYTHON_TESTED[@]}") + ) +" + +src_prepare() { + distutils-r1_src_prepare + + # do not build selenium-manager implicitly + sed -e 's:\[tool\.setuptools-rust:[tool.ignore-me:' \ + -i pyproject.toml || die + # unpin deps + sed -i -e 's:~=:>=:g' pyproject.toml || die +} + +python_test() { + # NB: xdist is causing random pytest crashes with high job numbers + + if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then + einfo "Skipping tests on ${EPYTHON}" + return + fi + + local EPYTEST_PLUGINS=() + local EPYTEST_IGNORE=() + local EPYTEST_DESELECT=( + # expects vanilla certifi + test/unit/selenium/webdriver/remote/remote_connection_tests.py::test_get_connection_manager_for_certs_and_timeout + ) + local pytest_args=( + # https://github.com/SeleniumHQ/selenium/blob/selenium-4.8.2-python/py/test/runner/run_pytest.py#L20-L24 + # seriously? + -o "python_files=*_tests.py test_*.py" + -p pytest_mock + ) + if use test-rust; then + local -x PATH=${T}/bin:${PATH} + local -x SE_MANAGER_PATH="$(type -P selenium-manager)" + + EPYTEST_PLUGINS+=( pytest-rerunfailures ) + pytest_args+=( + --reruns=5 + + --driver=firefox + --browser-binary="$(type -P firefox || type -P firefox-bin)" + --driver-binary="$(type -P geckodriver)" + --headless + ) + + local EPYTEST_IGNORE+=( + # requires some "python.runfiles", also bidi tests generally fail + test/selenium/webdriver/common/bidi_webextension_tests.py + ) + EPYTEST_DESELECT+=( + # expects prebuilt executables for various systems + test/selenium/webdriver/common/selenium_manager_tests.py::test_uses_windows + test/selenium/webdriver/common/selenium_manager_tests.py::test_uses_linux + test/selenium/webdriver/common/selenium_manager_tests.py::test_uses_mac + test/selenium/webdriver/common/selenium_manager_tests.py::test_errors_if_invalid_os + + # TODO: these don't respect --*-binary and try to fetch versions + test/selenium/webdriver/firefox + test/selenium/webdriver/marionette/mn_context_tests.py::test_context_sets_correct_context_and_returns + test/selenium/webdriver/marionette/mn_context_tests.py::test_context_sets_correct_context_and_returns + test/selenium/webdriver/marionette/mn_options_tests.py::TestIntegration::test_we_can_pass_options + test/selenium/webdriver/marionette/mn_set_context_tests.py::test_we_can_switch_context_to_chrome + + # TODO + 'test/selenium/webdriver/common/devtools_tests.py::test_check_console_messages[firefox]' + + # TODO + test/selenium/webdriver/common/bidi_browser_tests.py + test/selenium/webdriver/common/bidi_browsing_context_tests.py + test/selenium/webdriver/common/bidi_network_tests.py + test/selenium/webdriver/common/bidi_permissions_tests.py + test/selenium/webdriver/common/bidi_script_tests.py + test/selenium/webdriver/common/bidi_session_tests.py + test/selenium/webdriver/common/bidi_storage_tests.py + test/selenium/webdriver/common/bidi_tests.py + test/selenium/webdriver/marionette/mn_options_tests.py::TestUnit::test_binary + test/selenium/webdriver/marionette/mn_options_tests.py::TestUnit::test_ctor + test/selenium/webdriver/marionette/mn_options_tests.py::TestUnit::test_prefs + test/selenium/webdriver/marionette/mn_options_tests.py::TestUnit::test_to_capabilities + ) + else + EPYTEST_IGNORE+=( + test/selenium + ) + fi + + cd "${WORKDIR}/${TEST_P}/py" || die + rm -rf selenium || die + epytest "${pytest_args[@]}" +} diff --git a/dev-python/testfixtures/Manifest b/dev-python/testfixtures/Manifest index ef52123153bd..cc465bce8afb 100644 --- a/dev-python/testfixtures/Manifest +++ b/dev-python/testfixtures/Manifest @@ -1,3 +1,4 @@ DIST testfixtures-8.3.0.tar.gz 137420 BLAKE2B bf0fe6705bbbb33a26dcc98be061c1dafbe331ca6c4ac8c028e146f7e156870ee8abe5118b3182600e8d513530c442a4fa1efa696253b9b0c114733bd40fc6ee SHA512 b2c18a35c44b90bce50cc68ca9bf9909ac8f75287c7188eeddfa855aec1db3bd14f3fccb4c5ef0e44b19c683ad4bd6be4876554ce9127698e8e20cbfa4191800 DIST testfixtures-9.0.0.tar.gz 87851 BLAKE2B e3c718572d844ca1070a044fdd21246ffa4839a89e9d95603bbe9496bf510957eac125a29a9db2beb588d79957a068c5d9585bfe3d954d8f88075900f531f904 SHA512 8a88bd0b868793e75fc867fa6cdf5f994c69178141f1b5c0b3709ebd4cf52a2209fa4b37c09ccc6c2dab95fdd646ea8e4367425ed382d4a99d8f8de2d8d862bc DIST testfixtures-9.0.1.tar.gz 88436 BLAKE2B 1c029de0e2dee29a2fadb100ea19ffaac3ee4e6312ae2991eea515c5c0748d07d8d08fe773c623b014fe9d8a92ce4920101cd9a50c2493d4cc6600e24227c677 SHA512 1874e7b012ec340637b00bbdf33869f68d757b436fd4865d3c1314640f5f7aa68a49273097682337a826c6b7a6c14c7f859ea8963ce7097a3106bd08bcbf9fd1 +DIST testfixtures-9.1.0.tar.gz 88605 BLAKE2B 0ff23f49f24b5bf94cce28b828ffb0f6549f74a4a969c8c65a3abfde44c9903a1d9680b051438b1e3771332e6801f35f7d066de1b7ae8615372583a04a8663c3 SHA512 f1f16be2fb21475e4852f6a1e80eb53d3a702c4748f3bb5abb9dd955020ba0bc823ee910bfec87bd93a4aaa94bd20eff6f061af668219f916b8bb4771ec8f103 diff --git a/dev-python/testfixtures/testfixtures-9.1.0.ebuild b/dev-python/testfixtures/testfixtures-9.1.0.ebuild new file mode 100644 index 000000000000..0812b0f0c904 --- /dev/null +++ b/dev-python/testfixtures/testfixtures-9.1.0.ebuild @@ -0,0 +1,51 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9,10,11,12,13} ) + +inherit distutils-r1 pypi + +DESCRIPTION="A collection of helpers and mock objects for unit tests and doc tests" +HOMEPAGE=" + https://pypi.org/project/testfixtures/ + https://github.com/Simplistix/testfixtures/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" + +BDEPEND=" + test? ( + $(python_gen_impl_dep sqlite) + dev-python/django[${PYTHON_USEDEP}] + >=dev-python/sybil-6[${PYTHON_USEDEP}] + >=dev-python/twisted-18[${PYTHON_USEDEP}] + sys-libs/timezone-data + ) +" + +EPYTEST_PLUGINS=( pytest-django ) +distutils_enable_tests pytest + +python_test() { + local -x PYTHONPATH="." + local -x DJANGO_SETTINGS_MODULE=testfixtures.tests.test_django.settings + + local EPYTEST_DESELECT=( + # TODO + testfixtures/tests/test_shouldwarn.py::ShouldWarnTests::test_filter_missing + testfixtures/tests/test_shouldwarn.py::ShouldWarnTests::test_filter_present + ) + local EPYTEST_IGNORE=() + if ! has_version "dev-python/twisted[${PYTHON_USEDEP}]"; then + EPYTEST_IGNORE+=( + testfixtures/tests/test_twisted.py + ) + fi + + epytest +} diff --git a/dev-python/wand/wand-0.6.13.ebuild b/dev-python/wand/wand-0.6.13.ebuild index a14251fc3de6..0728c4f4c08e 100644 --- a/dev-python/wand/wand-0.6.13.ebuild +++ b/dev-python/wand/wand-0.6.13.ebuild @@ -19,7 +19,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" RDEPEND=" media-gfx/imagemagick diff --git a/dev-python/yaswfp/Manifest b/dev-python/yaswfp/Manifest index bac0a936b65b..f3df94d7c920 100644 --- a/dev-python/yaswfp/Manifest +++ b/dev-python/yaswfp/Manifest @@ -1 +1 @@ -DIST yaswfp-0.9.3.tar.gz 29845 BLAKE2B 2c5961b79d8378b707a920a4c6a1d75cf8cb09cc6a689035c7118758de3fc1f6fddf6a23e91f4cddea5f7370e4b558b40dfd4a05b16d7fb5f881c5ca74beb4a5 SHA512 06fb5d38c92f418fff77d812507621236b3fc74cf75786031bbd81ac1e61767a29647c7f1d0ffbb25d2f6f1a8749e5a732896ad66956e16c886e24e85915f72b +DIST yaswfp-1f690acd378c0a24037931520fdc465180ca0948.gh.tar.gz 135961 BLAKE2B 0e17106f69185ec297ac64d26fa16ca935ccaa8a6e75475e81b18facd33edb49aeeb8f59fc61bb7210b0132afeac4f45e229a9d475b621ec776b2cf6217c8eaf SHA512 a825201da9d6430472dc09e7ba40a475ff2950ee42aecee1e8597c645c0e2eec3e069e801ef17795e48f72831464820ad661d2cdf69b99fd65491a1604ce5fc0 diff --git a/dev-python/yaswfp/yaswfp-0.9.3-r2.ebuild b/dev-python/yaswfp/yaswfp-0.9.3-r2.ebuild index d5f89387f516..adbb1c312a3b 100644 --- a/dev-python/yaswfp/yaswfp-0.9.3-r2.ebuild +++ b/dev-python/yaswfp/yaswfp-0.9.3-r2.ebuild @@ -1,16 +1,26 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{9,10,11,12,13} ) +PYTHON_COMPAT=( python3_{11..14} ) inherit distutils-r1 pypi +# PyPI doesn't have tests, repo doesn't have tags +COMMIT=1f690acd378c0a24037931520fdc465180ca0948 +MY_P=${PN}-${COMMIT} + DESCRIPTION="Yet Another SWF Parser" HOMEPAGE="https://github.com/facundobatista/yaswfp" +SRC_URI=" + https://github.com/facundobatista/yaswfp/archive/${COMMIT}.tar.gz -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} LICENSE="GPL-3" SLOT="0" KEYWORDS="~amd64 ~x86" + +distutils_enable_tests unittest -- cgit v1.3