From a2cd16f12164d7c2f32da9256589185cd6a9c5e2 Mon Sep 17 00:00:00 2001 From: "Liguros - Gitlab CI/CD [develop]" Date: Wed, 10 Dec 2025 07:18:02 +0000 Subject: Adding metadata --- dev-python/aiohttp-socks/Manifest | 1 + .../aiohttp-socks/aiohttp-socks-0.11.0.ebuild | 40 +++++ dev-python/boto3/Manifest | 1 + dev-python/boto3/boto3-1.42.6.ebuild | 53 +++++++ dev-python/botocore/Manifest | 1 + dev-python/botocore/botocore-1.42.6.ebuild | 67 ++++++++ dev-python/cbor2/cbor2-5.7.1.ebuild | 2 +- dev-python/cfn-lint/Manifest | 1 + dev-python/cfn-lint/cfn-lint-1.42.1.ebuild | 61 ++++++++ dev-python/django-polymorphic/Manifest | 1 + .../django-polymorphic-4.3.0.ebuild | 47 ++++++ dev-python/hidapi/Manifest | 1 + dev-python/hidapi/hidapi-0.15.0.ebuild | 44 ++++++ dev-python/jupyter-client/Manifest | 1 + .../jupyter-client/jupyter-client-8.7.0.ebuild | 49 ++++++ dev-python/langdetect/Manifest | 2 + .../files/langdetect-1.0.9-explicit-config.patch | 13 -- dev-python/langdetect/langdetect-1.0.9.ebuild | 4 +- dev-python/langdetect/metadata.xml | 10 +- dev-python/pygal/Manifest | 1 + dev-python/pygal/pygal-3.1.0.ebuild | 56 +++++++ dev-python/pyghmi/Manifest | 1 + dev-python/pyghmi/pyghmi-1.6.10.ebuild | 33 ++++ dev-python/python-socks/Manifest | 1 + dev-python/python-socks/python-socks-2.8.0.ebuild | 41 +++++ dev-python/scikit-image/Manifest | 3 + .../scikit-image/scikit-image-0.26.0_rc1.ebuild | 99 ++++++++++++ dev-python/sqlalchemy/Manifest | 2 +- dev-python/sqlalchemy/sqlalchemy-2.0.43.ebuild | 112 -------------- dev-python/sqlalchemy/sqlalchemy-2.0.45.ebuild | 116 ++++++++++++++ dev-python/tree-sitter/tree-sitter-0.25.2.ebuild | 2 +- dev-python/txaio/Manifest | 1 + dev-python/txaio/txaio-25.12.2.ebuild | 39 +++++ dev-python/uv-build/Manifest | 1 + dev-python/uv-build/uv-build-0.9.17.ebuild | 99 ++++++++++++ dev-python/uv/Manifest | 2 + dev-python/uv/uv-0.9.17.ebuild | 168 +++++++++++++++++++++ 37 files changed, 1041 insertions(+), 135 deletions(-) create mode 100644 dev-python/aiohttp-socks/aiohttp-socks-0.11.0.ebuild create mode 100644 dev-python/boto3/boto3-1.42.6.ebuild create mode 100644 dev-python/botocore/botocore-1.42.6.ebuild create mode 100644 dev-python/cfn-lint/cfn-lint-1.42.1.ebuild create mode 100644 dev-python/django-polymorphic/django-polymorphic-4.3.0.ebuild create mode 100644 dev-python/hidapi/hidapi-0.15.0.ebuild create mode 100644 dev-python/jupyter-client/jupyter-client-8.7.0.ebuild delete mode 100644 dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch create mode 100644 dev-python/pygal/pygal-3.1.0.ebuild create mode 100644 dev-python/pyghmi/pyghmi-1.6.10.ebuild create mode 100644 dev-python/python-socks/python-socks-2.8.0.ebuild create mode 100644 dev-python/scikit-image/scikit-image-0.26.0_rc1.ebuild delete mode 100644 dev-python/sqlalchemy/sqlalchemy-2.0.43.ebuild create mode 100644 dev-python/sqlalchemy/sqlalchemy-2.0.45.ebuild create mode 100644 dev-python/txaio/txaio-25.12.2.ebuild create mode 100644 dev-python/uv-build/uv-build-0.9.17.ebuild create mode 100644 dev-python/uv/uv-0.9.17.ebuild (limited to 'dev-python') diff --git a/dev-python/aiohttp-socks/Manifest b/dev-python/aiohttp-socks/Manifest index 3efdac367c90..791d46104486 100644 --- a/dev-python/aiohttp-socks/Manifest +++ b/dev-python/aiohttp-socks/Manifest @@ -1,2 +1,3 @@ DIST aiohttp-socks-0.10.1.gh.tar.gz 13783 BLAKE2B e1446c13847bde3cf39a55ba650bf20037199694006b15101925c812a304c24a558722809a14299e97e6d1a7eae9ff4433d6f9f15232dbb7bad2c280773de1d6 SHA512 0519a82d4a157ef708deed89706606ffe318ad935ec8a1ff4bd94fe3acdab294e44eb99119f90e639ef4a7f16c705fe6688f45c31286d4ada0ecd8859a3a69c9 DIST aiohttp-socks-0.10.2.gh.tar.gz 14146 BLAKE2B 2f1a6a938f3232740b1b15479e789767a2868025cacb022081e4991dac44aef69ebfbc2d221b81ed71d2dcbf371fa3a9db723c6a50a078a7cc7d58b03ff16ecc SHA512 13ee6d0897c0f5591fc3fc9994cb36963d71a0ec1c31fe2435faf7626fb8e83e3ee4e35bfc7304a4e564bf9bf1389b3fc14da7f60cd5409d20c63d790c722a64 +DIST aiohttp-socks-0.11.0.gh.tar.gz 13949 BLAKE2B e8ee93058a5dbd7e2046ef9abca91c3f1144c3d744ef6b2b42bfa18451af7210a1deac51c899ffbeec783f3712815c00add6fd5c8de991fbdd3d6895a823092c SHA512 6805c31702c3bf1a5438b29e431a80175c8b184b7f3dc956b226b4ce305739fee654bd3ef0664e05edc21c3807df32fe027d8aa3351da4a7a7a53f86ff866fe3 diff --git a/dev-python/aiohttp-socks/aiohttp-socks-0.11.0.ebuild b/dev-python/aiohttp-socks/aiohttp-socks-0.11.0.ebuild new file mode 100644 index 000000000000..8c27de19d16e --- /dev/null +++ b/dev-python/aiohttp-socks/aiohttp-socks-0.11.0.ebuild @@ -0,0 +1,40 @@ +# 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_{10..14} ) + +inherit distutils-r1 + +DESCRIPTION="SOCKS proxy connector for aiohttp" +HOMEPAGE=" + https://pypi.org/project/aiohttp-socks/ + https://github.com/romis2012/aiohttp-socks/ +" +SRC_URI=" + https://github.com/romis2012/aiohttp-socks/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~x86" + +RDEPEND=" + >=dev-python/aiohttp-3.10.0[${PYTHON_USEDEP}] + >=dev-python/python-socks-2.4.3[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/trustme[${PYTHON_USEDEP}] + dev-python/attrs[${PYTHON_USEDEP}] + dev-python/yarl[${PYTHON_USEDEP}] + dev-python/flask[${PYTHON_USEDEP}] + dev-python/tiny-proxy[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-asyncio ) +distutils_enable_tests pytest diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest index 80844deeb186..26336cb5df84 100644 --- a/dev-python/boto3/Manifest +++ b/dev-python/boto3/Manifest @@ -9,3 +9,4 @@ DIST boto3-1.42.2.gh.tar.gz 1054980 BLAKE2B 5d361d756f41fb2e1df9f4397ba64a842388 DIST boto3-1.42.3.gh.tar.gz 1055160 BLAKE2B 86399e22d40747aa40d6d61296e9833f86ddbf8921a157a369bed90c538ce6ca43729c1a69c3f1f99d1b8496414397aa0b1a442d33e81d191fbac6991ab1a840 SHA512 c4f36ae4340e809c398ee9e496af1da5da24be08d6ab443dd434f5612bda97c187375480bb62992cb6129f638f8715cfd476d3a1116f94d3de470756d932d0c3 DIST boto3-1.42.4.gh.tar.gz 1055570 BLAKE2B a9990bb04ce59111c6371536692c6e4d5440f3f0dc79e1ecc119652603bcd8bc15839400758999faffd7df9bda9efb4991393fcab32baa16c7a0e51ff7c5cc94 SHA512 95950ba80f31c3951a88237ff5edd1367285c3ab263c7f8ad1b7556d610d553dd4e2021fbbcc0d9bdcf578fe34ad9fcf6231511f54ee71917f69c1cdb6adab28 DIST boto3-1.42.5.gh.tar.gz 1057615 BLAKE2B 1d2cb3efd01c9608830cf9e5f4fb7b426a9ece3b08050480852695b3b7e6c8dead02c62533cc223b88fe1c7ef4f6ee4e7d829eac7c33047255182fe95eec61e2 SHA512 321931a4f84bd2cc3a7ce467d946c4999c2857e812b60b9b89b389b821f68a522566ede94d31d11e9863e33fa4fb42711988b0bc6300bc6d06ed69aa364fb7e7 +DIST boto3-1.42.6.gh.tar.gz 1058037 BLAKE2B 9ad44a815de09f8b557d976d1d17af6545ae4096556481f27ad00c420574ca81fe9f2ec92e0e09e9ee1d73716eb9e70e288adce3e52f874f9572c93e822c8e1a SHA512 881213ca70e26f342f5cda51cf02efae371b862bb639d25be6de45326f87c1fe5caebeb65ec2cb3ed86a50af3432a811d67a728ccc31b9f75ce9da9f93e76702 diff --git a/dev-python/boto3/boto3-1.42.6.ebuild b/dev-python/boto3/boto3-1.42.6.ebuild new file mode 100644 index 000000000000..6f9b5b5d57b1 --- /dev/null +++ b/dev-python/boto3/boto3-1.42.6.ebuild @@ -0,0 +1,53 @@ +# 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_{10..14} ) + +inherit distutils-r1 + +DESCRIPTION="The AWS SDK for Python" +HOMEPAGE=" + https://github.com/boto/boto3/ + https://pypi.org/project/boto3/ +" +SRC_URI=" + https://github.com/boto/boto3/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" + +RDEPEND=" + >=dev-python/botocore-${PV}[${PYTHON_USEDEP}] + >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}] + >=dev-python/s3transfer-0.16.0[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_prepare_all() { + # don't lock versions to narrow ranges + sed -e '/botocore/ d' \ + -e '/jmespath/ d' \ + -e '/s3transfer/ d' \ + -i setup.py || die + + # do not rely on bundled deps in botocore (sic!) + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + + distutils-r1_python_prepare_all +} + +python_test() { + epytest tests/{functional,unit} +} diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest index d6982c722682..2877a5e60cbc 100644 --- a/dev-python/botocore/Manifest +++ b/dev-python/botocore/Manifest @@ -9,3 +9,4 @@ DIST botocore-1.42.2.gh.tar.gz 15699929 BLAKE2B 9f809924aeb031313806c70207c2063c DIST botocore-1.42.3.gh.tar.gz 15700743 BLAKE2B d288896f8538dcb4e7589e641f8b2b0e78b9b45576a592ea105353ebcd3e03f695fff3e71af56dfdebd8cdf9cc35bc36593a30fabb02a78a7531dcbd000f2774 SHA512 d32b4b775f5a692c3f731b83a1538cff002c215a4a3947eb69fd27ddf638d47a41e037f7b8a6d73ec4acfaeaf5fbc649103051383f56190e25b5748fcd0b9d88 DIST botocore-1.42.4.gh.tar.gz 15703399 BLAKE2B ffd1613284a8487fd2abf10f53fcdaa13746990f519e2bc511bd09daa2efdbbc03cd141f40d36c83dc8180229daddb3a064c6d5aae2bc14f46921f50edf0f528 SHA512 22bbda9f4bc36bd18802812c63d650b2267565c27e432f7105daaa2c85660d2e3786ee11837ce2affe6d130504f9a7bf5c9e7ea3be5699b5d32be3090fb71914 DIST botocore-1.42.5.gh.tar.gz 15709628 BLAKE2B 841886105cd9a47a473a8c75f54cbc539e999ab6d5850b5c3a5f0aec7de558e0e9566cb1041de98c8a73f6e176e2c0af53ff15f7d42508dfb77b928729b8193b SHA512 d280051a2130e5c62352aa1d43b81a9e7a0cdddc8df4739667f24a291302f1c06d21568792516488e3e654488475399cd3527351ee73d37a4a839a92819411c8 +DIST botocore-1.42.6.gh.tar.gz 15711310 BLAKE2B ba3bdec59750cee81fc8fe83e692358f6f49d020bf3f2bc150ec7d5a531be02a8a088660c575d046016e3669528dd2f7d5ce27263a6814c46ca08c06fc8e4b9d SHA512 5d6ac44534fa107cda6bb69f64b1647b81ecd94de2314dbb53769a410939905e86899ccaf7b50be68948430044310c725ff16aa9df6f7e37bdde2314391a6370 diff --git a/dev-python/botocore/botocore-1.42.6.ebuild b/dev-python/botocore/botocore-1.42.6.ebuild new file mode 100644 index 000000000000..ee8074e67dce --- /dev/null +++ b/dev-python/botocore/botocore-1.42.6.ebuild @@ -0,0 +1,67 @@ +# 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_{10..14} ) + +inherit distutils-r1 + +DESCRIPTION="Low-level, data-driven core of boto 3" +HOMEPAGE=" + https://github.com/boto/botocore/ + https://pypi.org/project/botocore/ +" +SRC_URI=" + https://github.com/boto/botocore/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" + +RDEPEND=" + =dev-python/urllib3-1.25.4[${PYTHON_USEDEP}] +" +# unbundled packages +RDEPEND+=" + dev-python/requests[${PYTHON_USEDEP}] + dev-python/six[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/jsonschema[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=() +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + # unpin deps + sed -i -e "s:>=.*':':" setup.py || die + + # unbundle deps + rm -r botocore/vendored || die + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + + distutils-r1_src_prepare +} + +python_test() { + local EPYTEST_DESELECT=( + # rely on bundled six + tests/functional/test_six_imports.py::test_no_bare_six_imports + tests/functional/test_six_threading.py::test_six_thread_safety + ) + + epytest tests/{functional,unit} +} diff --git a/dev-python/cbor2/cbor2-5.7.1.ebuild b/dev-python/cbor2/cbor2-5.7.1.ebuild index b0a37b04993b..6b08fa1950e7 100644 --- a/dev-python/cbor2/cbor2-5.7.1.ebuild +++ b/dev-python/cbor2/cbor2-5.7.1.ebuild @@ -18,7 +18,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" IUSE="+native-extensions" BDEPEND=" diff --git a/dev-python/cfn-lint/Manifest b/dev-python/cfn-lint/Manifest index 542d841ddf9e..cd7c59b31b73 100644 --- a/dev-python/cfn-lint/Manifest +++ b/dev-python/cfn-lint/Manifest @@ -2,3 +2,4 @@ DIST cfn_lint-1.39.1.tar.gz 3250565 BLAKE2B 8cae83fc090a5208e24d85270085fe7ab271 DIST cfn_lint-1.40.4.tar.gz 3401228 BLAKE2B 940ce635b1d52e286cb70d8caa3e6a6974000549494616587de910062ea812fbed5b2cc37af316cfd2f02975eb28ccc13402f46e3ce47677ceb48e1a265f0300 SHA512 8996b9cdaa0dd02211a2d745de94fb2896756632135f95fc9f90eebfae3209504b7b8358ddf00711f6ee37458995a87575e21d4fbd707e443c3a1df13125ef66 DIST cfn_lint-1.41.0.tar.gz 3408534 BLAKE2B 281ac2561055366f11f5167140bbd71305a0dbb11235b8191e439665c64c2bf44fa0c2268c1924f689341dc44385a6c630ead0a0ae845e8e5478f1e66a8e818a SHA512 e3be612d3db6662650625e4393261241080f7cc5ba60405fbea39ceb6b15fec973ea5bcd7b2b188bf3276b4e61c5bd11df8fe9cc2f2ab903e395f5f13586da62 DIST cfn_lint-1.42.0.tar.gz 3589426 BLAKE2B 6d172ebffd868af5db0b5313de792c4f093eb96c13777c4495f9e9cd4c364313da897ed77f8bb9b005543b9f4020c8fc88f751b4c86e7dbb329b2deee7a5ab12 SHA512 93ec7b5ea8833f8f77eabc537363e13f6457720e6fe658ab4a4fbf4c5a851bf50b54d55bf9e0986a91634b7786e76bb8332a9a2888c13d06f35a4079db277fe7 +DIST cfn_lint-1.42.1.tar.gz 3728837 BLAKE2B 6ef135be851ca8ec17854074d8d3ad610b21249774bdc66adf686898f1b2a168c65d706551a22341d891b8bc4afd3788075abd232ce131fb4b5e2ecdc84c6a73 SHA512 9ddf24e494a2eb668c407116a54c34efb946516ef563d6272c08d58e56f24c9c70ff9d37dc25d70ad61d42fa759a1bd896d32035e6c7761d91bc8a0aea23e6c8 diff --git a/dev-python/cfn-lint/cfn-lint-1.42.1.ebuild b/dev-python/cfn-lint/cfn-lint-1.42.1.ebuild new file mode 100644 index 000000000000..5a4087d65a4f --- /dev/null +++ b/dev-python/cfn-lint/cfn-lint-1.42.1.ebuild @@ -0,0 +1,61 @@ +# 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_{10..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="CloudFormation Linter" +HOMEPAGE=" + https://github.com/aws-cloudformation/cfn-lint/ + https://pypi.org/project/cfn-lint/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" + +RDEPEND=" + >=dev-python/aws-sam-translator-1.97.0[${PYTHON_USEDEP}] + dev-python/jsonpatch[${PYTHON_USEDEP}] + >=dev-python/jschema-to-python-1.2.3[${PYTHON_USEDEP}] + =dev-python/jsonschema-3.0[${PYTHON_USEDEP}] + dev-python/junit-xml[${PYTHON_USEDEP}] + =dev-python/pyyaml-5.4[${PYTHON_USEDEP}] + >=dev-python/regex-2021.7.1[${PYTHON_USEDEP}] + >=dev-python/sarif-om-1.0.4[${PYTHON_USEDEP}] + >=dev-python/sympy-1.0.0[${PYTHON_USEDEP}] +" +BDEPEND=" + >=dev-python/setuptools-77.0.3[${PYTHON_USEDEP}] + test? ( + dev-python/defusedxml[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # different line wrapping somehow + test/unit/module/template/test_template.py::TestTemplate::test_build_graph + # requires git repo + test/unit/module/maintenance/test_update_documentation.py::TestUpdateDocumentation::test_update_docs + # TODO: suddenly started failing in older versions too + # https://github.com/aws-cloudformation/cfn-lint/issues/4207 + test/integration/test_good_templates.py + test/unit/module/override/test_exclude.py::TestExclude::test_success_run + test/unit/module/test_api.py::TestLintFile::test_good_template + test/unit/module/test_rules_collections.py::TestRulesCollection::test_success_run + ) + + # from tox.ini + local -x AWS_DEFAULT_REGION=us-east-1 + epytest +} diff --git a/dev-python/django-polymorphic/Manifest b/dev-python/django-polymorphic/Manifest index 3633f60f74f4..380ab92254ba 100644 --- a/dev-python/django-polymorphic/Manifest +++ b/dev-python/django-polymorphic/Manifest @@ -1 +1,2 @@ DIST django-polymorphic-4.2.0.gh.tar.gz 222029 BLAKE2B 2a277dd817f24f3282f2bd1a1a302553518d12f217cd026ee95fe5d0f765159499699670f29eda28ff4407ba2e82dae431b9297b8acbd718bc4bd40a0a6f0f23 SHA512 b1be07d0527165baea32dd5b0adc03da23c6027c3ed4094e78be7807e3621addef9d4da047a49f223f186b5f60fd3bc1cea1755ad85c8308e44d0681848df445 +DIST django-polymorphic-4.3.0.gh.tar.gz 240063 BLAKE2B fdb68008e8bc4cc849b60434d9e1d001a6cff2c7a4c1fb272d72bb85ec890e7d3ea8b5603007ac738c0a3f174287f2c4c4a4bc64c37a158a155597706c07f1d0 SHA512 4f0bebc8ea5d65c16baac4f6429dd992e8b628abca225c88c9d9454ab336064be142a9f519ea736c6da965c030b487f244a70450c4a688aa738d116aa95964b7 diff --git a/dev-python/django-polymorphic/django-polymorphic-4.3.0.ebuild b/dev-python/django-polymorphic/django-polymorphic-4.3.0.ebuild new file mode 100644 index 000000000000..d7845100be30 --- /dev/null +++ b/dev-python/django-polymorphic/django-polymorphic-4.3.0.ebuild @@ -0,0 +1,47 @@ +# 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_{10..14} ) + +inherit distutils-r1 + +DESCRIPTION="Seamless Polymorphic Inheritance for Django Models" +HOMEPAGE=" + https://github.com/jazzband/django-polymorphic/ + https://pypi.org/project/django-polymorphic/ +" +SRC_URI=" + https://github.com/jazzband/django-polymorphic/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + >=dev-python/django-4.2[$PYTHON_USEDEP] +" +BDEPEND=" + test? ( + $(python_gen_impl_dep sqlite) + ${RDEPEND} + dev-python/dj-database-url[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-django ) +distutils_enable_tests pytest + +python_test() { + local EPYTEST_IGNORE=( + # requires playwright + src/polymorphic/tests/test_admin.py + ) + + rm -f conftest.py || die + epytest -o addopts= +} diff --git a/dev-python/hidapi/Manifest b/dev-python/hidapi/Manifest index 33dea7eae212..a7eea2fa0a63 100644 --- a/dev-python/hidapi/Manifest +++ b/dev-python/hidapi/Manifest @@ -1 +1,2 @@ DIST hidapi-0.14.0.post4.tar.gz 174388 BLAKE2B 94032019f19d1d7f67a6fb2bde518694de5b3a3c94fad1e5dd090dbd98d630fba94a55ef55b1f28591f13eada6ce023b3b11648f0d7ec3e79e4e94cac4f05a3d SHA512 16e567a7390c3a7abd4e271ced41a4e01041d03c4e14168db92a62afa39e8992b078577c1b836b6728e683ac5a9621553bedf426fe15aa8ca3ccae06ce55d79d +DIST hidapi-0.15.0.tar.gz 184995 BLAKE2B 47c1e117535575650c4a86ea0b82a1e38ce89716215c227104435a9a827fb82a06b9850ac40371396ef7526e17471b8ab05e2814a17100353ef5e705b54dddfc SHA512 8cfbbc744bc5ff5a3185dd983f84faa209e6b86257a9a9121fe120b8a7c3f6b15e0bb142e0f0ab6d235686349d283fee3889b8cec6e509ab9095bc7621f4d0d2 diff --git a/dev-python/hidapi/hidapi-0.15.0.ebuild b/dev-python/hidapi/hidapi-0.15.0.ebuild new file mode 100644 index 000000000000..b6dfe8bd316c --- /dev/null +++ b/dev-python/hidapi/hidapi-0.15.0.ebuild @@ -0,0 +1,44 @@ +# Copyright 2022-2025 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 + +DESCRIPTION="A Cython interface to HIDAPI library" +HOMEPAGE=" + https://github.com/trezor/cython-hidapi/ + https://pypi.org/project/hidapi/ +" + +LICENSE="|| ( BSD GPL-3 )" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~x86" + +DEPEND=" + >=dev-libs/hidapi-$(ver_cut 1-3) +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + dev-python/cython[${PYTHON_USEDEP}] + virtual/pkgconfig +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +python_configure_all() { + DISTUTILS_ARGS=( + --with-system-hidapi + ) +} + +python_test() { + epytest tests.py +} diff --git a/dev-python/jupyter-client/Manifest b/dev-python/jupyter-client/Manifest index 6a2d0b855cd8..55f4689c7254 100644 --- a/dev-python/jupyter-client/Manifest +++ b/dev-python/jupyter-client/Manifest @@ -1 +1,2 @@ DIST jupyter_client-8.6.3.tar.gz 342019 BLAKE2B 5a478b62d64533e334f3a01ed820f9c41ffd3a8c6d9231d4822614b32c0898af32bf67fcafb5f26a62ab7fa172880bafdf2ff1169f06e1c483e8c3fe7d3f47e6 SHA512 10d7307335d07f383acbed30e44fe92284a6eab1dccdfe9107e5390c14350c2604a11ffd4a18ff811a5a93d9ce0492ac9a2fdc0402bd324c35ca12ad22405713 +DIST jupyter_client-8.7.0.tar.gz 344691 BLAKE2B 651df259e7059201bf4582b6ee9c8910c5e8f86342f6b77a3b80e1b89ad8cf70076dfb5d25f58e24641481cd587b5d3c8b44e7caf33ea3900ca4fb6d7d8f9033 SHA512 08b5eea4a6211e2d42b11f11eb608103bd6ea34b5838a2454d72b0dceca00cb8f35b397a688ae41232ac5f8f8b87dc1cbdd46ae298ef02797ba0f4b40273daf2 diff --git a/dev-python/jupyter-client/jupyter-client-8.7.0.ebuild b/dev-python/jupyter-client/jupyter-client-8.7.0.ebuild new file mode 100644 index 000000000000..10578066b669 --- /dev/null +++ b/dev-python/jupyter-client/jupyter-client-8.7.0.ebuild @@ -0,0 +1,49 @@ +# 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_{10..14} ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 pypi + +DESCRIPTION="Jupyter protocol implementation and client libraries" +HOMEPAGE=" + https://jupyter.org/ + https://github.com/jupyter/jupyter_client/ + https://pypi.org/project/jupyter-client/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" + +RDEPEND=" + >=dev-python/jupyter-core-5.1[${PYTHON_USEDEP}] + >=dev-python/python-dateutil-2.8.2[${PYTHON_USEDEP}] + >=dev-python/pyzmq-25.0[${PYTHON_USEDEP}] + >=dev-python/tornado-6.4.1[${PYTHON_USEDEP}] + dev-python/traitlets[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + >=dev-python/ipykernel-6.14[${PYTHON_USEDEP}] + ) +" + +EPYTEST_RERUNS=3 +EPYTEST_PLUGINS=( anyio pytest-{jupyter,timeout} ) +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # TODO: times out + tests/test_client.py::TestAsyncKernelClient::test_input_request + # TODO + tests/test_multikernelmanager.py::TestKernelManager::test_tcp_cinfo + ) + + epytest -o tmp_path_retention_policy=all +} diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest index a11d7c268c91..d12ab8aeaca8 100644 --- a/dev-python/langdetect/Manifest +++ b/dev-python/langdetect/Manifest @@ -1 +1,3 @@ DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db +EBUILD langdetect-1.0.9.ebuild 494 BLAKE2B 9cd8a2a93a8d45bf51fe2324402b175d641762ea591fcb99459427f977a95eccffa6ca4777ca4df39814eea6eac62711567faa654456d32f79023a4685804504 SHA512 d973b85ba1a44389a4275f02a779a93a005f7c2e096467b94b072862e4984d5b42cf33f9821ac68aa5b85b12c98983a90b96049989d8c84497969174b6bb838e +MISC metadata.xml 457 BLAKE2B 630128a3e982b6d60cc7b9f74c79fcb5ee47a71a02c73a50af9da8cedb6fad8e20a7f74b881e5b25c6483b92c9edbd56552cd38b2d9cbfa8b3eb4530facea969 SHA512 674f4f5cd809c6c77bc14e0f5687fa972bef14bdfa0b3343c5d66b7163eef1906eb87d060c8288732f825de71dce291ad0b841a5f2f0dd230f957b5687e45d45 diff --git a/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch deleted file mode 100644 index 637368d2f237..000000000000 --- a/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch +++ /dev/null @@ -1,13 +0,0 @@ -Fix "Package 'langdetect.profiles' is absent from the `packages` configuration." - ---- a/setup.py -+++ b/setup.py -@@ -18,7 +18,7 @@ setup( - author_email='michal.danilak@gmail.com', - url='https://github.com/Mimino666/langdetect', - keywords='language detection library', -- packages=['langdetect', 'langdetect.utils', 'langdetect.tests'], -+ packages=['langdetect', 'langdetect.utils', 'langdetect.tests', 'langdetect.profiles'], - include_package_data=True, - install_requires=['six'], - license='MIT', diff --git a/dev-python/langdetect/langdetect-1.0.9.ebuild b/dev-python/langdetect/langdetect-1.0.9.ebuild index 7100f5f39dd8..271137de443d 100644 --- a/dev-python/langdetect/langdetect-1.0.9.ebuild +++ b/dev-python/langdetect/langdetect-1.0.9.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2025 Gentoo Authors +# Copyright 2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -19,6 +19,4 @@ KEYWORDS="~amd64" RDEPEND="dev-python/six[${PYTHON_USEDEP}]" -PATCHES=( "${FILESDIR}/${P}-explicit-config.patch" ) - distutils_enable_tests unittest diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml index c0f74ac187e2..020e07f2a3dd 100644 --- a/dev-python/langdetect/metadata.xml +++ b/dev-python/langdetect/metadata.xml @@ -2,9 +2,11 @@ - pastalian46@gmail.com - Takuya Wakazono + marcin.deranek@slonko.net + Marcin Deranek - - gentoo-guru-overlay + + https://github.com/Mimino666/langdetect/issues + + slonko-overlay \ No newline at end of file diff --git a/dev-python/pygal/Manifest b/dev-python/pygal/Manifest index 721afccd8121..cb8dba30bae0 100644 --- a/dev-python/pygal/Manifest +++ b/dev-python/pygal/Manifest @@ -1 +1,2 @@ DIST pygal-3.0.5.gh.tar.gz 3569999 BLAKE2B bbaffabf2da2aecd4745db0f6b3911495d825b7d5e5fb570052d1d742251836a4bfb079c8242dde74e7b62b6738f89ff1b3cc049debe64299440ba10a74cc5ae SHA512 08aa7d83d7db59f9e088cb3ad661105b52fded9a66f51c80b151656b3b6e28a83564829f32dbfe6e56a81006510fea87ed937f12e290ae897ca70ec54d9aa9d3 +DIST pygal-3.1.0.gh.tar.gz 3570546 BLAKE2B 30ef1ebd5a8b13b894c1101913dbd01493ef4e1cc13da4a5d49bba1312a929843b0c6f5d0b1e4e9e21c8db1753852fe902abfe4d44d8bd32b03d082faaf09a0d SHA512 fe220527818b46a5bdad0325c0a3c43ed3d2eb1033795e005c6b4a3bfe221bd0af8169f30f58c4fe7a827d0f4a50ece43b69a93fd75cd494b6228787790dbca6 diff --git a/dev-python/pygal/pygal-3.1.0.ebuild b/dev-python/pygal/pygal-3.1.0.ebuild new file mode 100644 index 000000000000..1381bd316638 --- /dev/null +++ b/dev-python/pygal/pygal-3.1.0.ebuild @@ -0,0 +1,56 @@ +# 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_{10..14} ) +PYTHON_REQ_USE="xml(+)" + +inherit distutils-r1 optfeature + +DESCRIPTION="A python SVG charts generator" +HOMEPAGE=" + https://github.com/Kozea/pygal/ + https://pypi.org/project/pygal/ +" +SRC_URI=" + https://github.com/Kozea/pygal/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="LGPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" + +RDEPEND=" + dev-python/importlib-metadata[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/pyquery[${PYTHON_USEDEP}] + media-gfx/cairosvg[${PYTHON_USEDEP}] + ) +" + +# CHANGELOG is a symlink to docs/changelog.rst +DOCS=( docs/changelog.rst README.md ) + +distutils_enable_sphinx docs dev-python/sphinx-rtd-theme + +EPYTEST_PLUGINS=() +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_prepare_all() { + # Not actually required unless we want to do setup.py test + # https://github.com/Kozea/pygal/issues/430 + sed -i -e "/setup_requires/d" setup.py || die + distutils-r1_python_prepare_all +} + +pkg_postinst() { + optfeature "improving rendering speed" "dev-python/lxml" + optfeature "png rendering" "dev-python/cairosvg" +} diff --git a/dev-python/pyghmi/Manifest b/dev-python/pyghmi/Manifest index fdbdc85d18ab..90ccccc94007 100644 --- a/dev-python/pyghmi/Manifest +++ b/dev-python/pyghmi/Manifest @@ -1,2 +1,3 @@ +DIST pyghmi-1.6.10.tar.gz 283697 BLAKE2B c691c378a3dd5567f4bc61757b1956b2b529b76dc18ea2c940eec070cfc99bcabec03e3890e3fad04b1b4b3a679572b485ab1098fa48748ba9d664b77fd144fd SHA512 d694bf3b5d34b194b868dbb9adc24508fcf4871e18b8c07c9923f7fb2d3cd6fdf8b52caa25c717a4ea89c439d28b3a170307ea081270bcc02f0499aba593c5a5 DIST pyghmi-1.6.8.tar.gz 282988 BLAKE2B 9b243bb061772f5b6edf9956b6117031a7d565504e26508acfb37b9bb0418136fb1afd388a860abaf9cf713c18ad685d6a37afa69d60ee2f6234a04c5617da8a SHA512 335e293c0e139d939c4ace9fc640a363cccf49f4c5ab05ddfd80f0a5d2cee5b845ca729a21a07f68ff61605d0f60dcecdf70e0882e9054ca67b0effcabc8a527 DIST pyghmi-1.6.9.tar.gz 283565 BLAKE2B a952c8d118af0ed9cab9b7444a6c5a425328ad4ccabae74a698bc48e32cf69ae0a4355b941e666d07e00e167719a6db77ee272e4cae0e5215707e7c5555bda6a SHA512 7fcd0a29c637aaabb29055d6fddbd3d5774a27f37f149b80fd19bbfd78fa6f4b134f7115a10267b68b9d088a5e40c28b6979f80acd8da9754e21baab8533bc01 diff --git a/dev-python/pyghmi/pyghmi-1.6.10.ebuild b/dev-python/pyghmi/pyghmi-1.6.10.ebuild new file mode 100644 index 000000000000..9946b26c54e4 --- /dev/null +++ b/dev-python/pyghmi/pyghmi-1.6.10.ebuild @@ -0,0 +1,33 @@ +# 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_{10..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="A pure python implementation of IPMI protocol" +HOMEPAGE=" + https://opendev.org/x/pyghmi/ + https://pypi.org/project/pyghmi/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + >=dev-python/cryptography-2.1[${PYTHON_USEDEP}] + dev-python/pbr[${PYTHON_USEDEP}] + >=dev-python/python-dateutil-2.8.1[${PYTHON_USEDEP}] + >=dev-python/six-1.10.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests unittest diff --git a/dev-python/python-socks/Manifest b/dev-python/python-socks/Manifest index 722e701b6a5a..289efff82e95 100644 --- a/dev-python/python-socks/Manifest +++ b/dev-python/python-socks/Manifest @@ -1,2 +1,3 @@ DIST python-socks-2.7.2.gh.tar.gz 32394 BLAKE2B 47302bc64cd3d767b8050f5c324450c73c6d002827c1038461a7a226d656f18e2adb69d8b9b3baf3cdd11869309a1a3d6340f9df8175ca9f0f2010dbdd1bb5f2 SHA512 69089f6f5ab1bb8010ef5e9b4c8513fd5e24f353f78186d186616474fb2eae81b689b7e21b049dfb2d885be143f45591103f7c4054d9723f4bc74bfbfeb77b1f DIST python-socks-2.7.3.gh.tar.gz 32414 BLAKE2B 85feef349d778c28a1a517dad3ee87707102df7319dfd4853e7f72d3d939321bf3327d8cb2fa569e5f856bd1c139b6acdbc6098d347c7cb92430f7c958638769 SHA512 8a2b9a58a252ef6e650664c8bd95fd69d33668628dd7915bbccbfba96e65fd09d68e2fe251e20cef2367fbd802a36de5b1352cf3eaf4e8b6c1ea18142d421c74 +DIST python-socks-2.8.0.gh.tar.gz 32423 BLAKE2B c5c854db5e3cfc8b91641f3522648984dabdd02342c7da5bbc5203c0b50cdf91698311affcfd6ac964e331d45005e648258472453d8c07153c332785b8bfc0fb SHA512 a3ea3682717b7630fca0ce7480969c085858c153efca5b730f232bdf8183dafccfc9faf63ac5f61adc78432408d2b6b24895a670a1f3187d25a9748f820cdf0b diff --git a/dev-python/python-socks/python-socks-2.8.0.ebuild b/dev-python/python-socks/python-socks-2.8.0.ebuild new file mode 100644 index 000000000000..691ed68304cf --- /dev/null +++ b/dev-python/python-socks/python-socks-2.8.0.ebuild @@ -0,0 +1,41 @@ +# 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_{10..14} ) + +inherit distutils-r1 + +DESCRIPTION="SOCKS4, SOCKS5, HTTP tunneling functionality for Python" +HOMEPAGE=" + https://github.com/romis2012/python-socks/ + https://pypi.org/project/python-socks/ +" +SRC_URI=" + https://github.com/romis2012/python-socks/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +# curio is not packaged +# asyncio is the only backend we have, so dep on its deps unconditionally +# TODO: revisit +BDEPEND=" + test? ( + >=dev-python/async-timeout-3.0.1[${PYTHON_USEDEP}] + >=dev-python/flask-1.1.2[${PYTHON_USEDEP}] + >=dev-python/tiny-proxy-0.1.1[${PYTHON_USEDEP}] + >=dev-python/trio-0.24[${PYTHON_USEDEP}] + >=dev-python/trustme-0.9.0[${PYTHON_USEDEP}] + >=dev-python/yarl-1.4.2[${PYTHON_USEDEP}] + ) +" + +# Test markers exist to exclude trio etc if needed +EPYTEST_PLUGINS=( anyio pytest-{asyncio,trio} ) +distutils_enable_tests pytest diff --git a/dev-python/scikit-image/Manifest b/dev-python/scikit-image/Manifest index 7ccd810203ea..a04e426d0388 100644 --- a/dev-python/scikit-image/Manifest +++ b/dev-python/scikit-image/Manifest @@ -1,2 +1,5 @@ DIST scikit-image-data-15735b54e85c02427f07c71e6456723495034805.tar.bz2 143900901 BLAKE2B c1352e76337250fe1a9d6e07f08b6c9b1e0aed922ab8e0a3a4a1ea175f593b3375522e59550d30a22d392c34fef26d638c007c2af3d991887e02e7c68e56ebbb SHA512 d113dd258b35be710d841f9900cfbfe7103d1190b042489de88dd504b56277edac9a98fed5517e57725c5292fe26528267a06ff313bf6500b669d872c4481146 +DIST scikit-image-data-5c090b56df3988d988ff97928e2ef2d2cbe38e1b.tar.bz2 156723295 BLAKE2B fb30104cfa823361f4306606b64b23c8aed349767c1bf86aa3ee8c17d3d593c2ffda7b2f0baabd1e856407d342fbbca9d485e897ec3c219b79dae2a059457604 SHA512 69107940bfcafc6e056192b718065d74fbaa7c5c9da78a2789cc55c24e51b6d4d936dded07c71dbb8dcedf409faa4e97bea3ae0f5c873c936767979102eedc3e DIST scikit_image-0.25.2.tar.gz 22693594 BLAKE2B 238b44c120c53c10d98fc79c9ccb81770297a16156ba2d4d52cfa4731252aa205698caac384b8569c4b52ed2eb0e61500facff00c238a3212ecd7ba9b86db3da SHA512 8977585f7695d10df52d243d9fafdba2e04b5f4d4fe698dd9353bdffc4de21ad61053f55a46ed6350d5de8f1cd7dab969d45b85613a0e5fdb0b28a84c72551a9 +DIST scikit_image-0.26.0rc1.tar.gz 22730546 BLAKE2B 63ef735b0cf49aec86d2f6c0953346f3087a750defd73541497a387d8ebb4cc70a5d8c316081e6fb8bdc2841bbda616064c6031cff512e9d3e63db066fa9ebd4 SHA512 d9e473ebf75b8c627dcfc9e92827e627703cdc5e3e2cde88c1cfce37c5b543dfd143622e1b1af7d1093bf1644d2e16c71c28ccd7a0af4b888186be35470dfee0 +DIST scikit_image-0.26.0rc1.tar.gz.provenance 9858 BLAKE2B 50c4ba11c523add5a91c082ff57bbe12369b3c46133df1c6f5b859cfae9f7edae26ca3ee6f0e9ef96e242bce3f6b15738fc4d0ae0f9f98c157043b8daba258c9 SHA512 90d651546f2577d0e0e0692b48e04326aab0a5c32ac78ee68002fad8bc4d5fb14423d4f5bd5a3c9dcf359132856e5842fc6eeb3955db3ad2c5a62a1edaa52cbf diff --git a/dev-python/scikit-image/scikit-image-0.26.0_rc1.ebuild b/dev-python/scikit-image/scikit-image-0.26.0_rc1.ebuild new file mode 100644 index 000000000000..24e2e5aed46a --- /dev/null +++ b/dev-python/scikit-image/scikit-image-0.26.0_rc1.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=meson-python +DISTUTILS_EXT=1 +PYPI_VERIFY_REPO=https://github.com/scikit-image/scikit-image +PYTHON_COMPAT=( python3_{10..14} ) + +inherit distutils-r1 optfeature pypi + +# the package refers to blobs directly, use the newest commit to get +# them all +TEST_DATA_COMMIT=5c090b56df3988d988ff97928e2ef2d2cbe38e1b +DESCRIPTION="Image processing routines for SciPy" +HOMEPAGE=" + https://scikit-image.org/ + https://github.com/scikit-image/scikit-image/ + https://pypi.org/project/scikit-image/ +" +SRC_URI+=" + test? ( + https://gitlab.com/scikit-image/data/-/archive/${TEST_DATA_COMMIT}/scikit-image-data-${TEST_DATA_COMMIT}.tar.bz2 + ) +" + +LICENSE="BSD" +SLOT="0" + +RDEPEND=" + >=dev-python/imageio-2.36[${PYTHON_USEDEP}] + >=dev-python/lazy-loader-0.4[${PYTHON_USEDEP}] + >=dev-python/networkx-3.0[${PYTHON_USEDEP}] + >=dev-python/numpy-1.24[${PYTHON_USEDEP}] + >=dev-python/pillow-10.1[${PYTHON_USEDEP}] + >=dev-python/scipy-1.11.4[sparse(+),${PYTHON_USEDEP}] + >=dev-python/tifffile-2022.8.12[${PYTHON_USEDEP}] +" +DEPEND=" + ${RDEPEND} + dev-python/pythran[${PYTHON_USEDEP}] +" +BDEPEND=" + >=dev-python/cython-3.0.4[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/pythran[${PYTHON_USEDEP}] +" + +# xdist does not work with this test suite +EPYTEST_PLUGINS=( pytest-localserver ) +distutils_enable_tests pytest +# There is a programmable error in your configuration file: +#distutils_enable_sphinx doc/source dev-python/numpydoc dev-python/myst-parser + +src_test() { + # for some reason, upstream refetches data that's already in the tarball + # sigh + mkdir -p "${HOME}/.cache/scikit-image" || die + mv src/skimage "${HOME}/.cache/scikit-image/${PV/_/}" || die + + # This is a true horror, sigh + local cache_dir=${HOME}/.cache/scikit-image/${PV/_/}/data + pushd "${WORKDIR}/data-${TEST_DATA_COMMIT}" >/dev/null || die + cp Tests_besides_Equalize_Otsu/add18_entropy/rank_filters_tests_3d.npz \ + Tests_besides_Equalize_Otsu/gray_morph_output.npz \ + brain.tiff cells3d.tif eagle.png \ + "${cache_dir}/" || die + cp Normal_Epidermis_and_Dermis_with_Intradermal_Nevus_10x.JPG "${cache_dir}"/skin.jpg || die + cp pivchallenge/B/B001_1.tif "${cache_dir}"/pivchallenge-B-B001_1.tif || die + cp pivchallenge/B/B001_2.tif "${cache_dir}"/pivchallenge-B-B001_2.tif || die + cp kidney-tissue-fluorescence.tif "${cache_dir}"/kidney.tif || die + cp lily-of-the-valley-fluorescence.tif "${cache_dir}"/lily.tif || die + cp astronaut_rl.npy "${cache_dir}/../restoration/tests/" || die + popd > /dev/null || die + + distutils-r1_src_test +} + +python_test() { + local EPYTEST_DESELECT=( + # tests for downloading all data files, including these not needed + # by any actual tests + data/tests/test_data.py::test_download_all_with_pooch + # hangs? TODO + graph/tests/test_rag.py::test_reproducibility + ) + + epytest --pyargs skimage -o xfail_strict=False +} + +pkg_postinst() { + optfeature "FITS io capability" dev-python/astropy + optfeature "GTK" dev-python/pygtk + optfeature "io plugin providing most standard formats" dev-python/imread + optfeature "plotting" dev-python/matplotlib + optfeature "wavelet transformations" dev-python/pywavelets + optfeature "io plugin providing a wide variety of formats, including specialized formats using in medical imaging." dev-python/simpleitk +} diff --git a/dev-python/sqlalchemy/Manifest b/dev-python/sqlalchemy/Manifest index 8326dde4c198..022b1b529beb 100644 --- a/dev-python/sqlalchemy/Manifest +++ b/dev-python/sqlalchemy/Manifest @@ -1,3 +1,3 @@ DIST sqlalchemy-1.4.54.tar.gz 8470350 BLAKE2B 0d97beb4edde38455c03dfc1238655d1cb63aa6e042b941913ec68dca3654de07087ab967f208fda495f048a5068ced70d642c4b8b80ab32e5346fcefa3bf9bc SHA512 e7ea4920d81914d362134a3c6fd4a2dd4fdb75f6ce17358528d568e2b2ac0ee711a71f6beb894e61d6d1e4e5833034ebde651d73a13f873c682f780e1831b427 -DIST sqlalchemy-2.0.43.tar.gz 9762949 BLAKE2B 014c547d71a82d91093c3af771cbdf22c33dac3183ae80ca927a627f22fe490ab05a87901c27bc9bda6968b71e8987960dbc071978d3a900c680e3de04cc735c SHA512 8a3c8b9116649ae6c867744b75b9019c5daeaebdcc1b251e8eb526b6ec84168282513b27ca557db3436615b09579864e01173638ccf5bd9a5ecc4537ecf0c695 DIST sqlalchemy-2.0.44.tar.gz 9819830 BLAKE2B 0b6854671c23ec089fdac8c229fecc053841cd73c5827e8716222cdde13717a241482082a4f52b6dd6aeb9953244414ad7fac9c1b339beee061f9b964fa4887f SHA512 9f34641b3c52e84c3deaf62daa9848ea527840d6aa6dc97e27d13938b0c544ee4389e96e7f7a8820db81c2f88fcece2e7214bb28b5b1f9acac95f7e55addc4ba +DIST sqlalchemy-2.0.45.tar.gz 9869912 BLAKE2B 8d58d90067736d9c4d5cc6167a24cc3193620c3735873713406bcc500b7918aeb59ccc7101c3ed669f81ad6d9af633c40fdc56a0924cfba132d897f561dd9cdb SHA512 f7e603a893273c6bbd4f266bf186a1a043e329a695333a17147a68dadec54bf6b2fad7b11e3534bf6ce4c0e7bed3ad5ebe7a3bae01102258458a6ec33944c4a2 diff --git a/dev-python/sqlalchemy/sqlalchemy-2.0.43.ebuild b/dev-python/sqlalchemy/sqlalchemy-2.0.43.ebuild deleted file mode 100644 index 071829f8a115..000000000000 --- a/dev-python/sqlalchemy/sqlalchemy-2.0.43.ebuild +++ /dev/null @@ -1,112 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=setuptools -PYPI_PN=SQLAlchemy -PYTHON_COMPAT=( python3_{10..14} ) -PYTHON_REQ_USE="sqlite?" - -inherit distutils-r1 optfeature pypi - -DESCRIPTION="Python SQL toolkit and Object Relational Mapper" -HOMEPAGE=" - https://www.sqlalchemy.org/ - https://pypi.org/project/SQLAlchemy/ - https://github.com/sqlalchemy/sqlalchemy/ -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="examples +sqlite test" - -RDEPEND=" - >=dev-python/typing-extensions-4.6.0[${PYTHON_USEDEP}] -" -BDEPEND=" - dev-python/cython[${PYTHON_USEDEP}] - test? ( - $(python_gen_impl_dep sqlite) - ) -" - -EPYTEST_PLUGINS=() -EPYTEST_RERUNS=5 -EPYTEST_XDIST=1 -distutils_enable_tests pytest - -src_prepare() { - sed -i -e '/greenlet/d' setup.cfg || die - distutils-r1_src_prepare -} - -python_test() { - local EPYTEST_IGNORE=( - test/ext/mypy/test_mypy_plugin_py3k.py - test/typing/test_mypy.py - # hardcode call counts specific to Python versions - test/aaa_profiling - ) - local EPYTEST_DESELECT=( - # warning tests are unreliable - test/base/test_warnings.py - ) - local sqlite_version=$(sqlite3 --version | cut -d' ' -f1) - case ${EPYTHON} in - pypy3.11) - EPYTEST_DESELECT+=( - # TODO: looks like cursor cleanup failure - "test/dialect/test_suite.py::ReturningGuardsTest_sqlite+pysqlite_${sqlite_version//./_}" - # mismatched exception messages - "test/dialect/test_sqlite.py::TestTypes_sqlite+pysqlite_${sqlite_version//./_}::test_cant_parse_datetime_message" - test/ext/test_associationproxy.py::DictOfTupleUpdateTest::test_update_multi_elem_varg - test/ext/test_associationproxy.py::DictOfTupleUpdateTest::test_update_one_elem_varg - test/ext/test_associationproxy.py::ProxyHybridTest::test_msg_fails_on_cls_access - test/engine/test_processors.py::PyDateProcessorTest::test_time_invalid_string - # TODO - test/orm/test_utils.py::ContextualWarningsTest::test_autoflush_implicit - test/orm/test_utils.py::ContextualWarningsTest::test_configure_mappers_explicit - "test/sql/test_resultset.py::CursorResultTest_sqlite+pysqlite_${sqlite_version//./_}::test_new_row_no_dict_behaviors" - "test/sql/test_compare.py::HasCacheKeySubclass::test_init_args_in_traversal[_MemoizedSelectEntities]" - ) - ;; - esac - if ! has_version "dev-python/greenlet[${PYTHON_USEDEP}]"; then - EPYTEST_DESELECT+=( - test/ext/asyncio/test_engine_py3k.py::TextSyncDBAPI::test_sync_driver_execution - test/ext/asyncio/test_engine_py3k.py::TextSyncDBAPI::test_sync_driver_run_sync - "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[False-True]" - "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[True-True]" - "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[has_terminate-is_asyncio]" - "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[not_has_terminate-is_asyncio]" - "test/engine/test_pool.py::QueuePoolTest::test_userspace_disconnectionerror_weakref_finalizer[True-_exclusions0]" - "test/engine/test_pool.py::QueuePoolTest::test_userspace_disconnectionerror_weakref_finalizer[True]" - ) - fi - - # upstream's test suite is horribly hacky; it relies on disabling - # the warnings plugin and turning warnings into errors; this also - # means that any DeprecationWarnings from third-party plugins cause - # everything to explode - epytest --reruns-delay=2 -} - -python_install_all() { - if use examples; then - docompress -x "/usr/share/doc/${PF}/examples" - dodoc -r examples - fi - - distutils-r1_python_install_all -} - -pkg_postinst() { - optfeature "asyncio support" dev-python/greenlet - optfeature "MySQL support" \ - dev-python/mysqlclient \ - dev-python/pymysql - optfeature "postgresql support" dev-python/psycopg:2 -} diff --git a/dev-python/sqlalchemy/sqlalchemy-2.0.45.ebuild b/dev-python/sqlalchemy/sqlalchemy-2.0.45.ebuild new file mode 100644 index 000000000000..5fd4da35f775 --- /dev/null +++ b/dev-python/sqlalchemy/sqlalchemy-2.0.45.ebuild @@ -0,0 +1,116 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYPI_PN=SQLAlchemy +PYTHON_COMPAT=( python3_{10..14} ) +PYTHON_REQ_USE="sqlite?" + +inherit distutils-r1 optfeature pypi + +DESCRIPTION="Python SQL toolkit and Object Relational Mapper" +HOMEPAGE=" + https://www.sqlalchemy.org/ + https://pypi.org/project/SQLAlchemy/ + https://github.com/sqlalchemy/sqlalchemy/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="examples +sqlite test" + +RDEPEND=" + >=dev-python/typing-extensions-4.6.0[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/cython[${PYTHON_USEDEP}] + test? ( + $(python_gen_impl_dep sqlite) + ) +" + +EPYTEST_PLUGINS=() +EPYTEST_RERUNS=5 +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + sed -i -e '/greenlet/d' setup.cfg || die + distutils-r1_src_prepare +} + +python_test() { + local EPYTEST_IGNORE=( + test/ext/mypy/test_mypy_plugin_py3k.py + test/typing/test_mypy.py + # hardcode call counts specific to Python versions + test/aaa_profiling + ) + local EPYTEST_DESELECT=( + # warning tests are unreliable + test/base/test_warnings.py + # TODO: flaky? xdist? + test/base/test_concurrency_py3k.py::TestAsyncioCompat::test_await_fallback_no_greenlet + ) + local sqlite_version=$(sqlite3 --version | cut -d' ' -f1) + case ${EPYTHON} in + pypy3.11) + EPYTEST_DESELECT+=( + # TODO: looks like cursor cleanup failure + "test/dialect/test_suite.py::ReturningGuardsTest_sqlite+pysqlite_${sqlite_version//./_}" + # mismatched exception messages + "test/dialect/sqlite/test_types.py::TestTypes_sqlite+pysqlite_${sqlite_version//./_}::test_cant_parse_datetime_message" + test/ext/test_associationproxy.py::DictOfTupleUpdateTest::test_update_multi_elem_varg + test/ext/test_associationproxy.py::DictOfTupleUpdateTest::test_update_one_elem_varg + test/ext/test_associationproxy.py::ProxyHybridTest::test_msg_fails_on_cls_access + test/engine/test_processors.py::PyDateProcessorTest::test_time_invalid_string + # TODO + test/orm/test_utils.py::ContextualWarningsTest::test_autoflush_implicit + test/orm/test_utils.py::ContextualWarningsTest::test_configure_mappers_explicit + "test/sql/test_resultset.py::CursorResultTest_sqlite+pysqlite_${sqlite_version//./_}::test_new_row_no_dict_behaviors" + "test/sql/test_compare.py::HasCacheKeySubclass::test_init_args_in_traversal[_MemoizedSelectEntities]" + test/sql/test_lambdas.py::LambdaElementTest::test_bindparam_not_cached + test/sql/test_compare.py::CompareAndCopyTest::test_all_present + ) + ;; + esac + if ! has_version "dev-python/greenlet[${PYTHON_USEDEP}]"; then + EPYTEST_DESELECT+=( + test/ext/asyncio/test_engine_py3k.py::TextSyncDBAPI::test_sync_driver_execution + test/ext/asyncio/test_engine_py3k.py::TextSyncDBAPI::test_sync_driver_run_sync + "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[False-True]" + "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[True-True]" + "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[has_terminate-is_asyncio]" + "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[not_has_terminate-is_asyncio]" + "test/engine/test_pool.py::QueuePoolTest::test_userspace_disconnectionerror_weakref_finalizer[True-_exclusions0]" + "test/engine/test_pool.py::QueuePoolTest::test_userspace_disconnectionerror_weakref_finalizer[True]" + ) + fi + + # upstream's test suite is horribly hacky; it relies on disabling + # the warnings plugin and turning warnings into errors; this also + # means that any DeprecationWarnings from third-party plugins cause + # everything to explode + epytest --reruns-delay=2 -m "not gc_intensive and not timing_intensive and not mypy" +} + +python_install_all() { + if use examples; then + docompress -x "/usr/share/doc/${PF}/examples" + dodoc -r examples + fi + + distutils-r1_python_install_all +} + +pkg_postinst() { + optfeature "asyncio support" dev-python/greenlet + optfeature "MySQL support" \ + dev-python/mysqlclient \ + dev-python/pymysql + optfeature "postgresql support" dev-python/psycopg:2 +} diff --git a/dev-python/tree-sitter/tree-sitter-0.25.2.ebuild b/dev-python/tree-sitter/tree-sitter-0.25.2.ebuild index a61bdb857044..7340d7488bb9 100644 --- a/dev-python/tree-sitter/tree-sitter-0.25.2.ebuild +++ b/dev-python/tree-sitter/tree-sitter-0.25.2.ebuild @@ -22,7 +22,7 @@ S=${WORKDIR}/py-${P} LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc x86" +KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86" # setuptools is needed for distutils import DEPEND="=dev-libs/tree-sitter-0.25*:=" diff --git a/dev-python/txaio/Manifest b/dev-python/txaio/Manifest index 904a53c08a08..0251c0442a38 100644 --- a/dev-python/txaio/Manifest +++ b/dev-python/txaio/Manifest @@ -1 +1,2 @@ +DIST txaio-25.12.2.tar.gz 117393 BLAKE2B 69a44a4c7a78ec118415524539b3de67c5f6c53e1cfe9f5d4805209ea2b26ad7c8f50c723ee571f1b8efb79eeb8f8cbce5424cb54a131b3f8951e8aed2901da3 SHA512 9d06c3d613a47328933637b4f4de5535d40b5be80c06f9c24de6499c8371789bd2281807c177272c5ca9556fec56a74dd9d41da890c392886dff62feb40337f1 DIST txaio-25.9.2.tar.gz 50008 BLAKE2B ac43909f92370475d9ef64b8a64a454dbec1f3c28cac13d876ea7877b4f0b92d274867eabbdca7bceae5d32588e2e6befde2399e09a293e5a0548222cb1d1e6e SHA512 6a9ade6b8a7a7a29b96d8bc2a9ee5c2981270000b44736a753ef32aa6aa5f40b0fb0302d0b789795b313379eec236e8e5d02c5bebeefff1832a276994716794d diff --git a/dev-python/txaio/txaio-25.12.2.ebuild b/dev-python/txaio/txaio-25.12.2.ebuild new file mode 100644 index 000000000000..40b6452c2925 --- /dev/null +++ b/dev-python/txaio/txaio-25.12.2.ebuild @@ -0,0 +1,39 @@ +# 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_{10..14} ) + +inherit distutils-r1 optfeature pypi + +DESCRIPTION="Compatibility API between asyncio/Twisted/Trollius" +HOMEPAGE=" + https://github.com/crossbario/txaio/ + https://pypi.org/project/txaio/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + test? ( + dev-python/test[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +EPYTEST_DESELECT=( + # we certainly don't need to test "python setup.py sdist" here + test/test_packaging.py +) + +pkg_postinst() { + optfeature "Twisted support" "dev-python/twisted dev-python/zope-interface" +} diff --git a/dev-python/uv-build/Manifest b/dev-python/uv-build/Manifest index 8ea7962f719f..701a3fb86cc1 100644 --- a/dev-python/uv-build/Manifest +++ b/dev-python/uv-build/Manifest @@ -5,6 +5,7 @@ DIST uv_build-0.9.13.tar.gz 338831 BLAKE2B ba0b4eca782afc52d7303a51ecb18957073c2 DIST uv_build-0.9.14.tar.gz 339665 BLAKE2B a23fa78e67450d3da7c17ce8828f3c635eddbbe36f2742f7bafa324a140dbf064fd19350263b0a87aec1edba2189a5d219a1e04416659287007598487f678f81 SHA512 ac4d578cf61cfaa4b4b0d38917f6f65de64111d7764bc2e837489fda8c6ce2a18b4256965df9e32b223ce34721bc07fbac7aeef078eaf9cac6d6d3309260180a DIST uv_build-0.9.15.tar.gz 354021 BLAKE2B a47350ead8d9672d09967bbd7f9ac2f8e231e1dd5afb8c20e59926429792d3872feb1f8e4d7a9318ec447a99ce8add0503dfba0be2b970b2f192f954b472f1a7 SHA512 11fa1ebb1cfc184bd5bedf5e11fb28f14abf118183d94cbe0ac9a1b83f150a69836f0547a671e8cf16527d84ec61dd5b2983efafe5aeccd86e94cda79e1de664 DIST uv_build-0.9.16.tar.gz 356109 BLAKE2B d1c7269ee1caa4c66e4858871bed357cd3d9251a475cd97699421cba949d915af15b241b8e1ae1b64ff9a496974888590270d77508d91af3f000e3b6c8139b4b SHA512 4031ac8326a16d4eb65948749da157a97c7529713298085d9154ecf974a3469601495e5a0203638a3ea8eeb98ed375ab13348b494637a4452268e5e8b0856410 +DIST uv_build-0.9.17.tar.gz 356435 BLAKE2B 902d134f83026a68ef8600b21d9ce8bddab281ab8a34b7b836cce2b27ae393b24ddbafbbfa18332efc5cb8b5883c4a02435b62c29fb50923cb877834a2918e76 SHA512 7b536edcf9917055634f97150dba3e91d0fe71cb49922a3bf13fa480d6d17205de172242bb5e9dbd22de1984aec0c0f78955b37811d84a9ff765254719847d36 DIST uv_build-0.9.4.tar.gz 332506 BLAKE2B 3b65cc80192cf3abc33bcf01735c8b7f937a12f2dcd0557d0ae255ce8bd4cb7dbb15522e73802be0e17ac10c4acad6f9075f12d5f853bb1881b0c13f1d120b33 SHA512 c3be52cfbc1cf5a229df91d9e1125925a534e3fca3041e29a16edd2334fa28b055c73e21a6bd1a3d1d63924cf8f112645300530e8cb6139fb549499ca672070f DIST uv_build-0.9.6.tar.gz 332253 BLAKE2B 2c3fa23dbe36b0866a3a3194b07ee1212cb00acd785c375646c3eb6c97a63435f28c9e934f56c8d6feeec145aace1aad37550b85ae2a611f521fc25a4c7d3bc1 SHA512 e8d8bbd46c92722261722f3d8865b2b24e695edf52652c1d1310adae3cb437ebef5397feda90e3bf863394ca75cf3024eb90a5f80b2b92af24ede4e2f81b0ce1 DIST uv_build-0.9.7.tar.gz 332992 BLAKE2B 069e615f41e78098b61cc073cb01bc77e0e6778f3054ccfcf36985be3755d7e819cc1bd151e875db109461f423cc855cd336467015ec7103e47346f230564679 SHA512 d61249de00640f6e0ab62ab440a8aae1802acbd6cf8ecb8aca3efe26361d7191d057735ab91c174c5772fc04accf0ae3281f447d010c99e2f458829f4c618abc diff --git a/dev-python/uv-build/uv-build-0.9.17.ebuild b/dev-python/uv-build/uv-build-0.9.17.ebuild new file mode 100644 index 000000000000..fe8e9650d15e --- /dev/null +++ b/dev-python/uv-build/uv-build-0.9.17.ebuild @@ -0,0 +1,99 @@ +# Copyright 2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Maturin compiles uv-build executable for every impl, we do not want +# that, so we use another backend. And since we use another backend, +# why not dogfood it in the first place? +DISTUTILS_USE_PEP517=standalone +PYTHON_COMPAT=( python3_{10..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="PEP517 uv build backend" +HOMEPAGE=" + https://github.com/astral-sh/uv/ + https://pypi.org/project/uv-build/ +" + +LICENSE="|| ( Apache-2.0 MIT )" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-python/uv-${PV} +" +BDEPEND=" + test? ( + app-arch/unzip + dev-python/build[${PYTHON_USEDEP}] + ) +" + +src_prepare() { + distutils-r1_src_prepare + + # use the executable from dev-python/uv instead of building + # a largely overlapping uv-build executable (at least for now) + sed -i -e '/USE_UV_EXECUTABLE/s:False:True:' python/uv_build/__init__.py || die + + # replace the build-system section + sed -i -e '/\[build-system\]/,$d' pyproject.toml || die + cat >> pyproject.toml <<-EOF || die + [build-system] + requires = ["uv_build<9999"] + build-backend = "uv_build" + backend-path = ["src"] + EOF + + # rename to make uv-build find it + mv python src || die +} + +python_test() { + "${EPYTHON}" -m build -n || die "Self-build failed with ${EPYTHON}" + + local zip_result=$( + unzip -t "dist/uv_build-${PV}-py3-none-any.whl" || die + ) + local zip_expected="\ +Archive: dist/uv_build-${PV}-py3-none-any.whl + testing: uv_build/ OK + testing: uv_build/__init__.py OK + testing: uv_build/__main__.py OK + testing: uv_build/py.typed OK + testing: uv_build-${PV}.dist-info/ OK + testing: uv_build-${PV}.dist-info/WHEEL OK + testing: uv_build-${PV}.dist-info/METADATA OK + testing: uv_build-${PV}.dist-info/RECORD OK +No errors detected in compressed data of dist/uv_build-${PV}-py3-none-any.whl.\ +" + if [[ ${zip_result} != ${zip_expected} ]]; then + eerror ".zip result:\n${zip_result}" + eerror ".zip expected:\n${zip_expected}" + die ".whl result mismatch" + fi + + local tar_result=$( + tar -tf "dist/uv_build-${PV}.tar.gz" || die + ) + local tar_expected="\ +uv_build-${PV}/PKG-INFO +uv_build-${PV}/ +uv_build-${PV}/README.md +uv_build-${PV}/pyproject.toml +uv_build-${PV}/src +uv_build-${PV}/src/uv_build +uv_build-${PV}/src/uv_build/__init__.py +uv_build-${PV}/src/uv_build/__main__.py +uv_build-${PV}/src/uv_build/py.typed\ +" + if [[ ${tar_result} != ${tar_expected} ]]; then + eerror ".tar.gz result:\n${tar_result}" + eerror ".tar.gz expected:\n${tar_expected}" + die ".tar.gz result mismatch" + fi +} diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest index a6969e6ab250..2b11824e2b99 100644 --- a/dev-python/uv/Manifest +++ b/dev-python/uv/Manifest @@ -17,6 +17,8 @@ DIST uv-0.9.15-crates.tar.xz 46539408 BLAKE2B 57e582f56e12858292d1dfaec10292eb58 DIST uv-0.9.15.gh.tar.gz 4887603 BLAKE2B 422a3c004abdf052438b145400675010b1adfc8cb8d49979367544e2d381389594188276fe603ffa983f5926be624f5d863053bd79342eeee10caf1260b2a479 SHA512 2605e2e7d5f6fdbb5ec4839363f65c8e71559944ec003cb9c69040be08094eb5c041831151b669e2dbbcf1799e862f484a21a592090524f79686469eac0e3381 DIST uv-0.9.16-crates.tar.xz 46525668 BLAKE2B b9825d93374f0c3231273606135f0693f94512b5f26ce45cea804ef38a05bbc3e7ce7edff5517c506f54367d304f0dac925e18e67a6fd7bebd635ce28dad8118 SHA512 beb9a9f0bd4ee79841e16ea4b1f7266dea9bfe8270e2e7dd381e3631e4db167e7dc79d18c444318f8e461daede6146f8510e398efab2f742f614f2654ee6eb29 DIST uv-0.9.16.gh.tar.gz 4907399 BLAKE2B e0394423a5d026dd479a7bf2b781154db56277bdc194b84f520436b8fb41467cb9e2878a15ee2ea192a39f903a35f0c2643524143d81efa0f397273ae2314600 SHA512 f7e563b92c802f561bb33e569d473ac85fb69a72b6e01ccea8284275e7c760bc2eaee9415782adb7d26c16ffad564ceb1152a2f6b853fa9b379cb704fdd1814a +DIST uv-0.9.17-crates.tar.xz 46506536 BLAKE2B 3f28c12f81a6e909b8aa6f321f8db9c4f752f8f52272878d80ff36a52d23c1954169303d93fe27044d0ae8de972641529d757b46c34796bda57268e6c5484830 SHA512 10edc5fef2fa0d8880c9b7cb2c0b82e340fe2fefeac099b25f1bdeb3ff2f0e2dd0e24415dc839b11f7e87fd49238a9e83cc4663ab1eda2e41e591ca923c724cc +DIST uv-0.9.17.gh.tar.gz 4774663 BLAKE2B 1b19ed5451699bee3d75cf1bba9c232122dc1eed501415541f28c1c86e4642d4828896a9abc0e8ce6570f2fd4ff91953565b5138e5684a93028781ff195832ca SHA512 7d25dc611ca004145ca84472df822670f479610eb60699dbff52f428a605d75604e49b98fc37d6e6d4d60c5a0536cbe9d2f8c0f306b6a93ed44c64112d7bc69f DIST uv-0.9.4-crates.tar.xz 46093644 BLAKE2B bdce4b138718b91a67ccb36e6d8839358ab2ddeeedec3017bc245b0717e32d890a41f8c9c831983681ec715ce458efa8d43356c189b9b7457df3e71122924e3f SHA512 7047b68db7e05abb6a399250a4a531499985d42f12eff61ad1557823b37d62576b38b51ccbe39a02bc9a98af6341de728466b262c49bb48dd30abb64eb804660 DIST uv-0.9.4.gh.tar.gz 4749319 BLAKE2B b46d44830f7a2a621f3ab420db85e9d999b7c42ddebc21403ea2f11e819e8295af37049f1529848a3fd83ef87ac0de26ce1e1c03bf4177c3032b9adfd6dfe1e8 SHA512 ae11c1e777e3d0e036f0a665e2edfb9a4b5b50a9e107d795113b626bc16d406d3fca12e8a133185e54279b2a64f8e3d276372cefc9a96b2ac5f1ed0ece2c10b0 DIST uv-0.9.6-crates.tar.xz 45696768 BLAKE2B 96cff52c0e5477c4e9648e3863d32bde4b34a1a46b6d96703c48fe340b655319e951471aa6403c09818c313a59b0e54804467efa7e13a8410de34299a98f077b SHA512 46964460f3404304faefd1758bb07bcddf1d48efbdd2b890ddb0d2623841e1a0c86108ac3c9312ed8e2f8fcaefbf9b022b57cd6074fdb6d52f43c35e3b3c2d32 diff --git a/dev-python/uv/uv-0.9.17.ebuild b/dev-python/uv/uv-0.9.17.ebuild new file mode 100644 index 000000000000..fe3eb6a3dc83 --- /dev/null +++ b/dev-python/uv/uv-0.9.17.ebuild @@ -0,0 +1,168 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CRATES=" +" +RUST_MIN_VER="1.89.0" + +inherit cargo check-reqs + +CRATE_PV=${PV} +DESCRIPTION="A Python package installer and resolver, written in Rust" +HOMEPAGE=" + https://github.com/astral-sh/uv/ + https://pypi.org/project/uv/ +" +# pypi sdist misses scripts/, needed for tests +SRC_URI=" + https://github.com/astral-sh/uv/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz + ${CARGO_CRATE_URIS} +" +if [[ ${PKGBUMPING} != ${PVR} ]]; then + SRC_URI+=" + https://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz + " +fi + +# most of the code +LICENSE="|| ( Apache-2.0 MIT )" +# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below +# Dependent crate licenses +LICENSE+=" + 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD CC0-1.0 + CDLA-Permissive-2.0 ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016 + ZLIB +" +# ring crate +LICENSE+=" openssl" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +IUSE="test" +RESTRICT="test" +PROPERTIES="test_network" + +DEPEND=" + app-arch/bzip2:= + app-arch/xz-utils:= + app-arch/zstd:= +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + virtual/pkgconfig + test? ( + dev-lang/python:3.9 + dev-lang/python:3.10 + dev-lang/python:3.11 + dev-lang/python:3.12 + dev-lang/python:3.13 + !!~dev-python/uv-0.5.0 + ) +" + +QA_FLAGS_IGNORED="usr/bin/.*" + +check_space() { + local CHECKREQS_DISK_BUILD=3G + use debug && CHECKREQS_DISK_BUILD=9G + check-reqs_pkg_setup +} + +pkg_pretend() { + check_space +} + +pkg_setup() { + check_space + rust_pkg_setup +} + +src_prepare() { + default + + # force thin lto, makes build much faster and less memory hungry + # (i.e. makes it possible to actually build uv on 32-bit PPC) + sed -i -e '/lto/s:fat:thin:' Cargo.toml || die + + # enable system libraries where supported + export ZSTD_SYS_USE_PKG_CONFIG=1 + # TODO: unbundle libz-ng-sys, tikv-jemalloc-sys? + + # remove unbundled sources, just in case + find "${ECARGO_VENDOR}"/{bzip2,lzma,zstd}-sys-*/ -name '*.c' -delete || die + + # bzip2-sys requires a pkg-config file + # https://github.com/alexcrichton/bzip2-rs/issues/104 + mkdir "${T}/pkg-config" || die + export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}} + cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die + Name: bzip2 + Version: 9999 + Description: + Libs: -lbz2 + EOF +} + +src_configure() { + local myfeatures=( + git + pypi + python + ) + + cargo_src_configure --no-default-features +} + +src_compile() { + cd crates/uv || die + cargo_src_compile +} + +src_test() { + # work around https://github.com/astral-sh/uv/issues/4376 + local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH} + local -x COLUMNS=100 + local -x PYTHONDONTWRITEBYTECODE= + # fix tests failing because of our config + local -x XDG_CONFIG_DIRS=${T} + + cd crates/uv || die + cargo_src_test --no-fail-fast +} + +src_install() { + cd crates/uv || die + cargo_src_install + + insinto /etc/xdg/uv + newins - uv.toml <<-EOF || die + # These defaults match Fedora, see: + # https://src.fedoraproject.org/rpms/uv/pull-request/18 + + # By default ("automatic"), uv downloads missing Python versions + # automatically and keeps them in the user's home directory. + # Disable that to make downloading opt-in, and especially + # to avoid unnecessarily fetching custom Python when the distro + # package would be preferable. Python builds can still be + # downloaded manually via "uv python install". + # + # https://docs.astral.sh/uv/reference/settings/#python-downloads + python-downloads = "manual" + + # By default ("managed"), uv always prefers self-installed + # Python versions over the system Python, independently + # of versions. Since we generally expect users to use that + # to install old Python versions not in ::gentoo anymore, + # this effectively means that uv would end up preferring very + # old Python versions over the newer ones that are provided + # by the system. Default to using the system versions to avoid + # this counter-intuitive behavior. + # + # https://docs.astral.sh/uv/reference/settings/#python-preference + python-preference = "system" + EOF +} -- cgit v1.3.1