diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2025-05-27 07:05:52 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2025-05-27 07:05:52 +0000 |
| commit | 90275957b98718f0a44551e34d08678f1f545a88 (patch) | |
| tree | 3cdd03d8a391ac0ca749f5e88af6a5329f8b59fb /dev-python | |
| parent | 9f03c51a3b649a773b9a143ac179ef6306d401c0 (diff) | |
| download | baldeagleos-repo-90275957b98718f0a44551e34d08678f1f545a88.tar.gz baldeagleos-repo-90275957b98718f0a44551e34d08678f1f545a88.tar.xz baldeagleos-repo-90275957b98718f0a44551e34d08678f1f545a88.zip | |
Adding metadata
Diffstat (limited to 'dev-python')
51 files changed, 1427 insertions, 468 deletions
diff --git a/dev-python/aiohttp/Manifest b/dev-python/aiohttp/Manifest index 5c2d5072e9ac..341298c4cb6b 100644 --- a/dev-python/aiohttp/Manifest +++ b/dev-python/aiohttp/Manifest @@ -1,3 +1,4 @@ DIST aiohttp-3.11.14.tar.gz 7676994 BLAKE2B e8e048c01db9600df3bdc7bdc6e5066094b4575d08fef3ec7d0a78763a701cd3501dce435b80d3fbea28d2e7bf4110a5cc9e0ccec2bc3745835cadcb27528404 SHA512 38e51d3640b533d9bd639a59657bf7affbfc0b1a9dc40d77175d6528044e23b1e524589b9a10e0159eb8f9ba29e96b3e67529a9d11f1c53760a70800d813d13f DIST aiohttp-3.11.18.tar.gz 7678653 BLAKE2B 5886778fd0456ef40f1da5abd3d6a3864db03fad01d53755bb34afd77152da338480ba534c5dc1574bd5aa178943ec52814f1ceff736d668868803b19f6c102f SHA512 9b25ad5f9800cd84014c55f6a4f7ac217a788a43e301a83c18667b6f294388adf53c81360fd3219007b10b42ce165331dad1907582dc9d3081fd8585b5bcd042 DIST aiohttp-3.12.0.tar.gz 7762804 BLAKE2B 2fa51165917038cc8442cc4dab74373b47862cc1eca54a33e2a4b0f46c0362ca984614fec8615b4d89f065af039de9576b00c1c5b566c1758d608ef1e43702dc SHA512 8b3ad37b9aa73eb8961a397cc62dadea8ff286e2de1d91d9cb94f9ac86ae0fbd0127a6fa2867710f2e9accae1093892da4b87c17d5e7c24f8031670a3585d41b +DIST aiohttp-3.12.2.tar.gz 7780423 BLAKE2B 47c7dccb2666c4641bbcfdba4f13f2f423e84d3043163dd9c2436aa32ccb2698b2a6ceb7c0ccf5defc98c1fb5799b39849a0a25f8aa37aaa4aab186b2b936c68 SHA512 8c6aed54ae385962fb1ad34f6f80f322612d7aec6c65845c56e8047b6b4e4102f9044964ac34ed765a09799bb6753e980ce51bf8194ce2e1ec7a9d8dd7c5cbd1 diff --git a/dev-python/aiohttp/aiohttp-3.12.2.ebuild b/dev-python/aiohttp/aiohttp-3.12.2.ebuild new file mode 100644 index 000000000000..cff1ef1629c6 --- /dev/null +++ b/dev-python/aiohttp/aiohttp-3.12.2.ebuild @@ -0,0 +1,154 @@ +# 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 +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="HTTP client/server for asyncio" +HOMEPAGE=" + https://github.com/aio-libs/aiohttp/ + https://pypi.org/project/aiohttp/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~riscv ~x86" +IUSE="+native-extensions test-rust" + +DEPEND=" + native-extensions? ( + $(python_gen_cond_dep ' + net-libs/llhttp:= + ' 'python3*') + ) +" +RDEPEND=" + ${DEPEND} + >=dev-python/aiodns-3.3.0[${PYTHON_USEDEP}] + >=dev-python/aiohappyeyeballs-2.5.0[${PYTHON_USEDEP}] + >=dev-python/aiosignal-1.1.2[${PYTHON_USEDEP}] + >=dev-python/attrs-17.3.0[${PYTHON_USEDEP}] + dev-python/brotlicffi[${PYTHON_USEDEP}] + >=dev-python/frozenlist-1.1.1[${PYTHON_USEDEP}] + >=dev-python/multidict-4.5.0[${PYTHON_USEDEP}] + >=dev-python/propcache-0.2.0[${PYTHON_USEDEP}] + >=dev-python/yarl-1.17.0[${PYTHON_USEDEP}] +" +BDEPEND=" + native-extensions? ( + >=dev-python/cython-3.1.1[${PYTHON_USEDEP}] + dev-python/pkgconfig[${PYTHON_USEDEP}] + ) + test? ( + dev-python/blockbuster[${PYTHON_USEDEP}] + dev-python/freezegun[${PYTHON_USEDEP}] + dev-python/isal[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/pytest-rerunfailures[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + dev-python/re-assert[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/time-machine[${PYTHON_USEDEP}] + ' 'python3*') + dev-python/zlib-ng[${PYTHON_USEDEP}] + www-servers/gunicorn[${PYTHON_USEDEP}] + test-rust? ( + dev-python/trustme[${PYTHON_USEDEP}] + ) + ) +" + +DOCS=( CHANGES.rst CONTRIBUTORS.txt README.rst ) + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + + # increase the timeout a little + sed -e '/abs=/s/0.001/0.01/' -i tests/test_helpers.py || die + # xfail_strict fails on py3.10 + sed -i -e '/--cov/d' -e '/pytest_cov/d' -e '/xfail_strict/d' setup.cfg || die + sed -i -e 's:-Werror::' Makefile || die + # remove vendored llhttp + rm -r vendor || die +} + +python_configure() { + # check for .install-cython, so that we do this only once + if [[ ! -f .install-cython && ${EPYTHON} != pypy3 ]] && + use native-extensions + then + # force rehashing first + emake requirements/.hash/cython.txt.hash + > .update-pip || die + > .install-cython || die + emake cythonize + fi +} + +python_compile() { + local -x AIOHTTP_USE_SYSTEM_DEPS=1 + # implicitly disabled for pypy3 + if ! use native-extensions; then + local -x AIOHTTP_NO_EXTENSIONS=1 + fi + + distutils-r1_python_compile +} + +python_test() { + local EPYTEST_IGNORE=( + # proxy is not packaged + tests/test_proxy_functional.py + # python_on_whales is not packaged + tests/autobahn/test_autobahn.py + # benchmarks + tests/test_benchmarks_client.py + tests/test_benchmarks_client_request.py + tests/test_benchmarks_client_ws.py + tests/test_benchmarks_cookiejar.py + tests/test_benchmarks_http_websocket.py + tests/test_benchmarks_http_writer.py + tests/test_benchmarks_web_fileresponse.py + tests/test_benchmarks_web_middleware.py + tests/test_benchmarks_web_response.py + tests/test_benchmarks_web_urldispatcher.py + ) + + local EPYTEST_DESELECT=( + # Internet + tests/test_client_session.py::test_client_session_timeout_zero + # broken by irrelevant deprecation warnings + tests/test_circular_imports.py::test_no_warnings + ) + + case ${EPYTHON} in + python3.14) + EPYTEST_DESELECT+=( + # TODO + tests/test_cookiejar.py::test_pickle_format + # different exception message + tests/test_client_functional.py::test_aiohttp_request_coroutine + ) + ;; + esac + + # upstream unconditionally blocks building C extensions + # on PyPy3 but the test suite needs an explicit switch + if [[ ${EPYTHON} == pypy3* ]] || ! use native-extensions; then + local -x AIOHTTP_NO_EXTENSIONS=1 + fi + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local -x PYTEST_PLUGINS=pytest_mock,xdist.plugin + rm -rf aiohttp || die + epytest -m "not internal and not dev_mode" \ + -p rerunfailures --reruns=5 +} diff --git a/dev-python/ensurepip-setuptools/Manifest b/dev-python/ensurepip-setuptools/Manifest index c16387080997..5ff77ed93737 100644 --- a/dev-python/ensurepip-setuptools/Manifest +++ b/dev-python/ensurepip-setuptools/Manifest @@ -1,3 +1,4 @@ DIST setuptools-79.0.1-py3-none-any.whl 1256281 BLAKE2B 8ae51bdd1c0ccada116757c2bd765225fcf4bedc7ada18567ae12f09b6978cdbcddd4f635a39a5568b6d3ed4388e4f73af5c33a7060f2ac0d0907fc82d8fd74f SHA512 fef6cfc6f95a5bb7320f1680e1c665cb8d9a4e4227cde4d8aab8a50bed4bcf04320085b9d7d5343359f887008db5c5a861e57f3d08b7b0b2311a28adaeee6b4a DIST setuptools-80.4.0-py3-none-any.whl 1200812 BLAKE2B a3487a12084fa8582f1201b6df8cdd23de5b5fc763c5df607a4ae9a688fbd8defe064865e7f03a860819cdff1bf8c8fb98e3f94408e6511709f52eb9538feaef SHA512 2348c2e181394016f23d8ab55d9bf1104f16154729dfa891c3f57cd76d4f2fa0b96cc09b61d2a2ba73ac862c79ae03a6c57850c02c0a46ec279a78dddb06c39d DIST setuptools-80.8.0-py3-none-any.whl 1201470 BLAKE2B 7e958fecd9c9597d307d89c31e93fed5d15e505ad882c594c51482368f7227e0944b6ac02298cfcd5d126fc6c2398389843567a5a944ada5bfcd3aead0376766 SHA512 229e18dbaddd34e3a982e0ef8c6dccfa9a513164f54ff141a4ff0a0a3be25ab069766bda9eec4eea82c908506c0aa5eae271450605401f48ed8c94e54476ee0f +DIST setuptools-80.9.0-py3-none-any.whl 1201486 BLAKE2B 79895683ef4df387aee698984dfdf13adb14314f2d0267f41291c1c1ca68f4383a4273f004b6f3457463913eb19f8d386f32e2630ceaceaaf27ef32c4f61b7ed SHA512 2a0420f7faaa33d2132b82895a8282688030e939db0225ad8abb95a47bdb87b45318f10985fc3cee271a9121441c1526caa363d7f2e4a4b18b1a674068766e87 diff --git a/dev-python/ensurepip-setuptools/ensurepip-setuptools-80.9.0.ebuild b/dev-python/ensurepip-setuptools/ensurepip-setuptools-80.9.0.ebuild new file mode 100644 index 000000000000..b76c3f6972d8 --- /dev/null +++ b/dev-python/ensurepip-setuptools/ensurepip-setuptools-80.9.0.ebuild @@ -0,0 +1,20 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit pypi + +DESCRIPTION="Shared setuptools wheel for ensurepip Python module" +HOMEPAGE="https://pypi.org/project/setuptools/" +SRC_URI="$(pypi_wheel_url "${PN#ensurepip-}")" +S=${DISTDIR} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + +src_install() { + insinto /usr/lib/python/ensurepip + doins "${A}" +} diff --git a/dev-python/inline-snapshot/Manifest b/dev-python/inline-snapshot/Manifest index 4ed6eec16647..5c65903d02d6 100644 --- a/dev-python/inline-snapshot/Manifest +++ b/dev-python/inline-snapshot/Manifest @@ -1 +1,2 @@ DIST inline_snapshot-0.23.0.tar.gz 259375 BLAKE2B 9f14733a06d983adc7f438537180d22762009cf82756c612200ff8feaffae7f1ac3a80a19abd63b2e344e31af8b557681e76c67619611f22e09bcc86c0716e24 SHA512 dad5ae1a4f291f562267231e30ae865c854c4be6d218a47ebbfd38cc8421d8adbd4d3945cba44f6a061b562829badbe61f026ed9968857399f93483f1a392598 +DIST inline_snapshot-0.23.1.tar.gz 260658 BLAKE2B 8fdc0983232eb61842a6e6b4088bad0ce061a2e470907afb43d66fb31018911bfa1917e5415e749f0cf4384917071a275a59ba9a0ae4a3791120829caa21d647 SHA512 d4b01a41a2a2589aa4ac2c0c275dba3a2c248297fb5374410303e81e437dc1106a03f175959be7c4e190a817ac2b063e11b8f34dbd32fcb8b499bb874b8708dd diff --git a/dev-python/inline-snapshot/inline-snapshot-0.23.1.ebuild b/dev-python/inline-snapshot/inline-snapshot-0.23.1.ebuild new file mode 100644 index 000000000000..6d9befd1de87 --- /dev/null +++ b/dev-python/inline-snapshot/inline-snapshot-0.23.1.ebuild @@ -0,0 +1,61 @@ +# Copyright 2024-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} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Create and update inline snapshots in your Python tests" +HOMEPAGE=" + https://15r10nk.github.io/inline-snapshot/ + https://github.com/15r10nk/inline-snapshot/ + https://pypi.org/project/inline-snapshot/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + >=dev-python/asttokens-2.0.5[${PYTHON_USEDEP}] + >=dev-python/executing-2.2.0[${PYTHON_USEDEP}] + >=dev-python/pytest-8.3.4[${PYTHON_USEDEP}] + >=dev-python/rich-13.7.1[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/attrs[${PYTHON_USEDEP}] + >=dev-python/black-23.3.0[${PYTHON_USEDEP}] + >=dev-python/dirty-equals-0.7.0[${PYTHON_USEDEP}] + >=dev-python/hypothesis-6.75.5[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/mypy[${PYTHON_USEDEP}] + ' 'python*') + >=dev-python/pydantic-2[${PYTHON_USEDEP}] + >=dev-python/pytest-freezer-0.4.8[${PYTHON_USEDEP}] + >=dev-python/pytest-mock-3.14.0[${PYTHON_USEDEP}] + >=dev-python/pytest-subtests-0.11.0[${PYTHON_USEDEP}] + ) +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # requires pyright + 'tests/test_typing.py::test_typing_args[pyright]' + 'tests/test_typing.py::test_typing_call[pyright]' + # TODO + tests/test_formating.py::test_format_command_fail + ) + + local -x COLUMNS=80 + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local -x PYTEST_PLUGINS=inline_snapshot.pytest_plugin,pytest_freezer,pytest_subtests.plugin,xdist.plugin + local -x PYTHONPATH=${S}/src + epytest -p pytest_mock +} diff --git a/dev-python/ipython/Manifest b/dev-python/ipython/Manifest index 11209bdb14cd..ea57d66e1896 100644 --- a/dev-python/ipython/Manifest +++ b/dev-python/ipython/Manifest @@ -1,6 +1,3 @@ DIST ipython-8.34.0.tar.gz 5508477 BLAKE2B 15c34a086ff4ec48ca97624e904cc4ebf55fe180ac3a222cafeab738c6b77676417e64b560fc73f3ae32cc22875fe4e3df13f5a5f170a8104fff00629aa0100e SHA512 1ff033b5d87ce21006d90469ac06f247cdf087ddd0b74e711b957d61428ffb64a42b459b879cfed60a312edcdd710e49cd76925bd0e3b8c89d18c8c79d8686d4 -DIST ipython-8.35.0.tar.gz 5605027 BLAKE2B 4d1e65209e97b3230844ef93ca5a051c20f40e9f4c30de0ed73406319120acb2d8effa948a46ff7871ecf0503136218d21efdc8dfc44151883f68cf68a7c3338 SHA512 41734bf8d2c7c4b72c9a256c55ff8bbef4d1adf8f0537895700f9826dc016acba5f5ab174db7ede6d2f7aaef9725ccab4ae25036ef8132369e13d185e4794ad3 DIST ipython-8.36.0.tar.gz 5604997 BLAKE2B 3ba37dc146d0e7fc773fceb3f1e00257e0115661f012a5977bcab351d80d3764813aaa1172f5d0390995419eccef07e4af2530b36b62cd9b5a23606b5982afef SHA512 0418c96242e5e7247526bdad54eaf3a30fe10d01bec6cf7134948c645ab5c80ce958b7cd39f4cfde88714a2d2e1128edf8f71848c6ce4aadc9c02f7ac50c34b2 -DIST ipython-9.0.2.tar.gz 4366102 BLAKE2B 68dbe8f0decbf7637522ef3e763562a31d678b350c58fd4eee3799409f5a67b85b289b1591f01e0e509765e8cffca60717b65f62e358e7af3b60b57b0185de4a SHA512 fb3e48a3f8ffc9e4a147cb8739b2458dd280f59798b24a001f3feb177ea372284b1aabd87ce57bc9647b578a2c81a476728efcf376ce3e735cc409c40dd32eed -DIST ipython-9.1.0.tar.gz 4373688 BLAKE2B d45595a755adf5cb49cbc0ebb762d2bb9f0218a33873a216352a81bde19c8aa11cbb7a0787d4c35fb54d3e015a8b142592512ee7a60a70464650bb72db9f73f2 SHA512 446387d581e9823c7dbfd2a8759391ddd6b25b863b2744345084c0be95b0e81bbaa7707f41b7720c6f02539133f3c3a0de6b7fffbc194559ceccf01259dfee8f DIST ipython-9.2.0.tar.gz 4424394 BLAKE2B 3a2830461610d3139b64a848217c82f1d363ea5cadd416119a9ac56ccd494cc21738cfc87e6ac766fff28991ddad6261406e1a68a053b060165576eb1dc4c100 SHA512 06fcdb152ff15e780e182276766527a727d8dfd774e87bf5561005a5006764fd44b6da42e76c3372caa2ac7cfdbe3f083ecb3ed7b5303755d444006255cd80eb diff --git a/dev-python/ipython/ipython-8.35.0-r1.ebuild b/dev-python/ipython/ipython-8.35.0-r1.ebuild deleted file mode 100644 index 773c2cef31af..000000000000 --- a/dev-python/ipython/ipython-8.35.0-r1.ebuild +++ /dev/null @@ -1,161 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=standalone -PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) -PYTHON_REQ_USE='readline(+),sqlite,threads(+)' - -inherit distutils-r1 optfeature pypi virtualx - -DESCRIPTION="Advanced interactive shell for Python" -HOMEPAGE=" - https://ipython.org/ - https://github.com/ipython/ipython/ - https://pypi.org/project/ipython/ -" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" -IUSE="examples notebook nbconvert qt5 +smp test" -RESTRICT="!test? ( test )" - -RDEPEND=" - dev-python/decorator[${PYTHON_USEDEP}] - >=dev-python/jedi-0.16[${PYTHON_USEDEP}] - dev-python/matplotlib-inline[${PYTHON_USEDEP}] - >=dev-python/pexpect-4.3[${PYTHON_USEDEP}] - >=dev-python/prompt-toolkit-3.0.41[${PYTHON_USEDEP}] - <dev-python/prompt-toolkit-3.1[${PYTHON_USEDEP}] - >=dev-python/pygments-2.4.0[${PYTHON_USEDEP}] - dev-python/stack-data[${PYTHON_USEDEP}] - >=dev-python/traitlets-5.13.0[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - dev-python/exceptiongroup[${PYTHON_USEDEP}] - ' 3.10) - $(python_gen_cond_dep ' - dev-python/typing-extensions[${PYTHON_USEDEP}] - ' 3.10 3.11) -" - -BDEPEND=" - dev-python/setuptools[${PYTHON_USEDEP}] - test? ( - app-text/dvipng[truetype] - >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}] - >=dev-python/matplotlib-3.9[${PYTHON_USEDEP}] - dev-python/nbformat[${PYTHON_USEDEP}] - >=dev-python/numpy-1.23[${PYTHON_USEDEP}] - dev-python/matplotlib-inline[${PYTHON_USEDEP}] - dev-python/packaging[${PYTHON_USEDEP}] - dev-python/pickleshare[${PYTHON_USEDEP}] - dev-python/pytest-asyncio[${PYTHON_USEDEP}] - dev-python/requests[${PYTHON_USEDEP}] - dev-python/testpath[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -RDEPEND+=" - nbconvert? ( - dev-python/nbconvert[${PYTHON_USEDEP}] - ) -" -PDEPEND=" - $(python_gen_cond_dep ' - qt5? ( dev-python/qtconsole[${PYTHON_USEDEP}] ) - ' 'python*') - $(python_gen_cond_dep ' - notebook? ( - dev-python/notebook[${PYTHON_USEDEP}] - dev-python/ipywidgets[${PYTHON_USEDEP}] - dev-python/widgetsnbextension[${PYTHON_USEDEP}] - ) - ' 3.{10..12}) - smp? ( - >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}] - >=dev-python/ipyparallel-6.2.3[${PYTHON_USEDEP}] - ) -" - -python_prepare_all() { - # Rename the test directory to reduce sys.path pollution - # https://github.com/ipython/ipython/issues/12892 - mv IPython/extensions/{,ipython_}tests || die - - distutils-r1_python_prepare_all -} - -src_test() { - virtx distutils-r1_src_test -} - -python_test() { - local -x IPYTHON_TESTING_TIMEOUT_SCALE=20 - local EPYTEST_DESELECT=( - # TODO: looks to be a regression due to a newer dep - IPython/core/tests/test_oinspect.py::test_class_signature - IPython/core/tests/test_oinspect.py::test_render_signature_long - IPython/terminal/tests/test_shortcuts.py::test_modify_shortcut_with_filters - ) - - case ${EPYTHON} in - pypy3*) - EPYTEST_DESELECT+=( - # https://github.com/ipython/ipython/issues/14244 - IPython/lib/tests/test_display.py::TestAudioDataWithoutNumpy - ) - ;; - python3.13) - EPYTEST_DESELECT+=( - # docstring mismatch? - IPython/core/tests/test_debugger.py::IPython.core.tests.test_debugger.test_ipdb_magics - ) - ;; - esac - - # nonfatal implied by virtx - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - nonfatal epytest -p asyncio --asyncio-mode=auto || - die "Tests failed on ${EPYTHON}" -} - -python_install() { - distutils-r1_python_install - - # Create ipythonX.Y symlinks. - # TODO: - # 1. do we want them for pypy? No. pypy has no numpy - # 2. handle it in the eclass instead (use _python_ln_rel). - # With pypy not an option the dosym becomes unconditional - dosym ../lib/python-exec/${EPYTHON}/ipython \ - /usr/bin/ipython${EPYTHON#python} -} - -python_install_all() { - distutils-r1_python_install_all - - if use examples; then - dodoc -r examples - docompress -x /usr/share/doc/${PF}/examples - fi -} - -pkg_postinst() { - optfeature "code formatting" dev-python/black - optfeature "sympyprinting" dev-python/sympy - optfeature "cythonmagic" dev-python/cython - optfeature "%lprun magic command" dev-python/line-profiler - optfeature "%matplotlib magic command" dev-python/matplotlib-inline - - if use nbconvert; then - if ! has_version virtual/pandoc ; then - einfo "Node.js will be used to convert notebooks to other formats" - einfo "like HTML. Support for that is still experimental. If you" - einfo "encounter any problems, please use app-text/pandoc instead." - fi - fi -} diff --git a/dev-python/ipython/ipython-8.36.0-r1.ebuild b/dev-python/ipython/ipython-8.36.0-r1.ebuild index 982e3883fca3..fde1f400be99 100644 --- a/dev-python/ipython/ipython-8.36.0-r1.ebuild +++ b/dev-python/ipython/ipython-8.36.0-r1.ebuild @@ -18,7 +18,7 @@ HOMEPAGE=" LICENSE="BSD" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" +KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos" IUSE="examples notebook nbconvert qt5 +smp test" RESTRICT="!test? ( test )" diff --git a/dev-python/ipython/ipython-9.0.2-r1.ebuild b/dev-python/ipython/ipython-9.0.2-r1.ebuild deleted file mode 100644 index 6a5a5116d3d0..000000000000 --- a/dev-python/ipython/ipython-9.0.2-r1.ebuild +++ /dev/null @@ -1,148 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=standalone -PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) -PYTHON_REQ_USE='readline(+),sqlite,threads(+)' - -inherit distutils-r1 optfeature pypi virtualx - -DESCRIPTION="Advanced interactive shell for Python" -HOMEPAGE=" - https://ipython.org/ - https://github.com/ipython/ipython/ - https://pypi.org/project/ipython/ -" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~loong ~ppc ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="examples notebook nbconvert qt5 +smp test" -RESTRICT="!test? ( test )" - -RDEPEND=" - dev-python/decorator[${PYTHON_USEDEP}] - dev-python/ipython-pygments-lexers[${PYTHON_USEDEP}] - >=dev-python/jedi-0.16[${PYTHON_USEDEP}] - dev-python/matplotlib-inline[${PYTHON_USEDEP}] - >=dev-python/pexpect-4.3[${PYTHON_USEDEP}] - >=dev-python/prompt-toolkit-3.0.41[${PYTHON_USEDEP}] - <dev-python/prompt-toolkit-3.1[${PYTHON_USEDEP}] - >=dev-python/pygments-2.4.0[${PYTHON_USEDEP}] - dev-python/stack-data[${PYTHON_USEDEP}] - >=dev-python/traitlets-5.13.0[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - dev-python/typing-extensions[${PYTHON_USEDEP}] - ' 3.11) -" - -BDEPEND=" - dev-python/setuptools[${PYTHON_USEDEP}] - test? ( - app-text/dvipng[truetype] - >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}] - >=dev-python/matplotlib-3.9[${PYTHON_USEDEP}] - dev-python/nbformat[${PYTHON_USEDEP}] - >=dev-python/numpy-1.23[${PYTHON_USEDEP}] - dev-python/matplotlib-inline[${PYTHON_USEDEP}] - dev-python/packaging[${PYTHON_USEDEP}] - dev-python/pickleshare[${PYTHON_USEDEP}] - dev-python/pytest-asyncio[${PYTHON_USEDEP}] - dev-python/requests[${PYTHON_USEDEP}] - dev-python/testpath[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -RDEPEND+=" - nbconvert? ( - dev-python/nbconvert[${PYTHON_USEDEP}] - ) -" -PDEPEND=" - $(python_gen_cond_dep ' - qt5? ( dev-python/qtconsole[${PYTHON_USEDEP}] ) - ' 'python*') - $(python_gen_cond_dep ' - notebook? ( - dev-python/notebook[${PYTHON_USEDEP}] - dev-python/ipywidgets[${PYTHON_USEDEP}] - dev-python/widgetsnbextension[${PYTHON_USEDEP}] - ) - ' 3.{10..12}) - smp? ( - >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}] - >=dev-python/ipyparallel-6.2.3[${PYTHON_USEDEP}] - ) -" - -python_prepare_all() { - # Rename the test directory to reduce sys.path pollution - # https://github.com/ipython/ipython/issues/12892 - mv IPython/extensions/{,ipython_}tests || die - - distutils-r1_python_prepare_all -} - -src_test() { - virtx distutils-r1_src_test -} - -python_test() { - local -x IPYTHON_TESTING_TIMEOUT_SCALE=20 - local EPYTEST_DESELECT=() - - case ${EPYTHON} in - pypy3*) - EPYTEST_DESELECT+=( - # https://github.com/ipython/ipython/issues/14244 - tests/test_display.py::TestAudioDataWithoutNumpy - ) - ;; - esac - - # nonfatal implied by virtx - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - nonfatal epytest -p asyncio --asyncio-mode=auto || - die "Tests failed on ${EPYTHON}" -} - -python_install() { - distutils-r1_python_install - - # Create ipythonX.Y symlinks. - # TODO: - # 1. do we want them for pypy? No. pypy has no numpy - # 2. handle it in the eclass instead (use _python_ln_rel). - # With pypy not an option the dosym becomes unconditional - dosym ../lib/python-exec/${EPYTHON}/ipython \ - /usr/bin/ipython${EPYTHON#python} -} - -python_install_all() { - distutils-r1_python_install_all - - if use examples; then - dodoc -r examples - docompress -x /usr/share/doc/${PF}/examples - fi -} - -pkg_postinst() { - optfeature "code formatting" dev-python/black - optfeature "sympyprinting" dev-python/sympy - optfeature "cythonmagic" dev-python/cython - optfeature "%lprun magic command" dev-python/line-profiler - optfeature "%matplotlib magic command" dev-python/matplotlib-inline - - if use nbconvert; then - if ! has_version virtual/pandoc ; then - einfo "Node.js will be used to convert notebooks to other formats" - einfo "like HTML. Support for that is still experimental. If you" - einfo "encounter any problems, please use app-text/pandoc instead." - fi - fi -} diff --git a/dev-python/ipython/ipython-9.1.0-r1.ebuild b/dev-python/ipython/ipython-9.1.0-r1.ebuild deleted file mode 100644 index 747b10815925..000000000000 --- a/dev-python/ipython/ipython-9.1.0-r1.ebuild +++ /dev/null @@ -1,148 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=standalone -PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) -PYTHON_REQ_USE='readline(+),sqlite,threads(+)' - -inherit distutils-r1 optfeature pypi virtualx - -DESCRIPTION="Advanced interactive shell for Python" -HOMEPAGE=" - https://ipython.org/ - https://github.com/ipython/ipython/ - https://pypi.org/project/ipython/ -" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="examples notebook nbconvert qt5 +smp test" -RESTRICT="!test? ( test )" - -RDEPEND=" - dev-python/decorator[${PYTHON_USEDEP}] - dev-python/ipython-pygments-lexers[${PYTHON_USEDEP}] - >=dev-python/jedi-0.16[${PYTHON_USEDEP}] - dev-python/matplotlib-inline[${PYTHON_USEDEP}] - >=dev-python/pexpect-4.3[${PYTHON_USEDEP}] - >=dev-python/prompt-toolkit-3.0.41[${PYTHON_USEDEP}] - <dev-python/prompt-toolkit-3.1[${PYTHON_USEDEP}] - >=dev-python/pygments-2.4.0[${PYTHON_USEDEP}] - dev-python/stack-data[${PYTHON_USEDEP}] - >=dev-python/traitlets-5.13.0[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - dev-python/typing-extensions[${PYTHON_USEDEP}] - ' 3.11) -" - -BDEPEND=" - dev-python/setuptools[${PYTHON_USEDEP}] - test? ( - app-text/dvipng[truetype] - >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}] - >=dev-python/matplotlib-3.9[${PYTHON_USEDEP}] - dev-python/nbformat[${PYTHON_USEDEP}] - >=dev-python/numpy-1.23[${PYTHON_USEDEP}] - dev-python/matplotlib-inline[${PYTHON_USEDEP}] - dev-python/packaging[${PYTHON_USEDEP}] - dev-python/pickleshare[${PYTHON_USEDEP}] - dev-python/pytest-asyncio[${PYTHON_USEDEP}] - dev-python/requests[${PYTHON_USEDEP}] - dev-python/testpath[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -RDEPEND+=" - nbconvert? ( - dev-python/nbconvert[${PYTHON_USEDEP}] - ) -" -PDEPEND=" - $(python_gen_cond_dep ' - qt5? ( dev-python/qtconsole[${PYTHON_USEDEP}] ) - ' 'python*') - $(python_gen_cond_dep ' - notebook? ( - dev-python/notebook[${PYTHON_USEDEP}] - dev-python/ipywidgets[${PYTHON_USEDEP}] - dev-python/widgetsnbextension[${PYTHON_USEDEP}] - ) - ' 3.{10..12}) - smp? ( - >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}] - >=dev-python/ipyparallel-6.2.3[${PYTHON_USEDEP}] - ) -" - -python_prepare_all() { - # Rename the test directory to reduce sys.path pollution - # https://github.com/ipython/ipython/issues/12892 - mv IPython/extensions/{,ipython_}tests || die - - distutils-r1_python_prepare_all -} - -src_test() { - virtx distutils-r1_src_test -} - -python_test() { - local -x IPYTHON_TESTING_TIMEOUT_SCALE=20 - local EPYTEST_DESELECT=() - - case ${EPYTHON} in - pypy3*) - EPYTEST_DESELECT+=( - # https://github.com/ipython/ipython/issues/14244 - tests/test_display.py::TestAudioDataWithoutNumpy - ) - ;; - esac - - # nonfatal implied by virtx - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - nonfatal epytest -p asyncio --asyncio-mode=auto || - die "Tests failed on ${EPYTHON}" -} - -python_install() { - distutils-r1_python_install - - # Create ipythonX.Y symlinks. - # TODO: - # 1. do we want them for pypy? No. pypy has no numpy - # 2. handle it in the eclass instead (use _python_ln_rel). - # With pypy not an option the dosym becomes unconditional - dosym ../lib/python-exec/${EPYTHON}/ipython \ - /usr/bin/ipython${EPYTHON#python} -} - -python_install_all() { - distutils-r1_python_install_all - - if use examples; then - dodoc -r examples - docompress -x /usr/share/doc/${PF}/examples - fi -} - -pkg_postinst() { - optfeature "code formatting" dev-python/black - optfeature "sympyprinting" dev-python/sympy - optfeature "cythonmagic" dev-python/cython - optfeature "%lprun magic command" dev-python/line-profiler - optfeature "%matplotlib magic command" dev-python/matplotlib-inline - - if use nbconvert; then - if ! has_version virtual/pandoc ; then - einfo "Node.js will be used to convert notebooks to other formats" - einfo "like HTML. Support for that is still experimental. If you" - einfo "encounter any problems, please use app-text/pandoc instead." - fi - fi -} diff --git a/dev-python/jsonschema/Manifest b/dev-python/jsonschema/Manifest index c798ac3628ab..b61047edfd5f 100644 --- a/dev-python/jsonschema/Manifest +++ b/dev-python/jsonschema/Manifest @@ -1 +1,2 @@ DIST jsonschema-4.23.0.tar.gz 325778 BLAKE2B ccfcfa2b8f27e1d1f3a7d282f4701b04e3711bb57853f5f252ea286bb240395814c33219fff1b2bea661f462d1fc20fcf7d919fe85593d2e1dd89ac289f18ced SHA512 3bc3f7c4bb22dc0233bf99ca5cb8e22002cc3b097c7ae8a78c83ae106e4791dcaca228a6830074b1c42312889374b66c1f5390932768110a1e453babd7302bf9 +DIST jsonschema-4.24.0.tar.gz 353480 BLAKE2B d063c9e55f25472b403645f9b274b8274cbaeca68f9cd1c88867431d05fca07a5885b805a7e91bd82f30cc6bc76dd44a2c561c0a69e5f1847dcea5a3ecbf90c2 SHA512 64840a1c989874fbdda2a996288ac0c5f46fe1ae9d5254eface832326b49d0090f33c3a06de952965b910eb8857daf9548e790de604abaf9cea588c8e3d89234 diff --git a/dev-python/jsonschema/jsonschema-4.24.0.ebuild b/dev-python/jsonschema/jsonschema-4.24.0.ebuild new file mode 100644 index 000000000000..49d4e04aab33 --- /dev/null +++ b/dev-python/jsonschema/jsonschema-4.24.0.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=hatchling +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="An implementation of JSON-Schema validation for Python" +HOMEPAGE=" + https://pypi.org/project/jsonschema/ + https://github.com/python-jsonschema/jsonschema/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + >=dev-python/attrs-22.2.0[${PYTHON_USEDEP}] + >=dev-python/jsonschema-specifications-2023.03.6[${PYTHON_USEDEP}] + >=dev-python/referencing-0.28.4[${PYTHON_USEDEP}] + >=dev-python/rpds-py-0.7.1[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/hatch-vcs[${PYTHON_USEDEP}] + dev-python/hatch-fancy-pypi-readme[${PYTHON_USEDEP}] + test? ( + !!dev-python/shiboken6 + ) +" + +# formatter deps +RDEPEND+=" + dev-python/fqdn[${PYTHON_USEDEP}] + dev-python/idna[${PYTHON_USEDEP}] + dev-python/isoduration[${PYTHON_USEDEP}] + >=dev-python/jsonpointer-1.13[${PYTHON_USEDEP}] + dev-python/rfc3339-validator[${PYTHON_USEDEP}] + dev-python/rfc3986-validator[${PYTHON_USEDEP}] + dev-python/rfc3987[${PYTHON_USEDEP}] + dev-python/uri-template[${PYTHON_USEDEP}] + >=dev-python/webcolors-24.6.0[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest + +EPYTEST_DESELECT=( + # requires pip, does not make much sense for the users + jsonschema/tests/test_cli.py::TestCLIIntegration::test_license + # fragile warning tests + jsonschema/tests/test_deprecations.py + # wtf? + jsonschema/tests/test_jsonschema_test_suite.py::test_suite_bug +) diff --git a/dev-python/jupyter-core/Manifest b/dev-python/jupyter-core/Manifest index d0fffd3eeb2c..dbf22df4648d 100644 --- a/dev-python/jupyter-core/Manifest +++ b/dev-python/jupyter-core/Manifest @@ -1 +1,2 @@ DIST jupyter_core-5.7.2.tar.gz 87629 BLAKE2B b8d460f239419c7f648a856e55e1570646b6a6cd38ee900bbeac0aa64965f8868a88be20f6b890f2f424f0752f0da44d79abd0b3d18d275ac3f9c574ad7d18b4 SHA512 1eb4766dbc10afdcbc469853b391a88a2551a0ee2b2a3f93a316b407371ca10f546746aa4a327f8c0423cc10e4de022630c04ca7547dcf7ee8d9a911e9a0e572 +DIST jupyter_core-5.8.0.tar.gz 88884 BLAKE2B 1c3885308217fbedf62dfb5987d0da101e0868d71266afeee7cb23bd42096d295e402064ec86ed4d4bbb34fcde2fd143ad77757fc2407d2a4ba699dd94ea0062 SHA512 ef85915fcb64b7ebf5e43b1e975826a16a619dc5860223043caf9e9ee1518e7e387f6eaf1c02ff4207f37e5caec092c87b4328566732c6ffe48eeab017955c0d diff --git a/dev-python/jupyter-core/jupyter-core-5.8.0.ebuild b/dev-python/jupyter-core/jupyter-core-5.8.0.ebuild new file mode 100644 index 000000000000..1f4afb612c6a --- /dev/null +++ b/dev-python/jupyter-core/jupyter-core-5.8.0.ebuild @@ -0,0 +1,32 @@ +# 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} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Core common functionality of Jupyter projects" +HOMEPAGE=" + https://jupyter.org/ + https://github.com/jupyter/jupyter_core/ + https://pypi.org/project/jupyter-core/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" + +RDEPEND=" + >=dev-python/platformdirs-2.5[${PYTHON_USEDEP}] + >=dev-python/traitlets-5.11.2[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/pip[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest diff --git a/dev-python/jupyterlab/Manifest b/dev-python/jupyterlab/Manifest index de67ee13a270..86ea58b1133a 100644 --- a/dev-python/jupyterlab/Manifest +++ b/dev-python/jupyterlab/Manifest @@ -1,2 +1,3 @@ DIST jupyterlab-4.3.7.tar.gz 21827544 BLAKE2B 6aa1886b3fa9e67c8e4978e90cf5b0e84466de15ad5dfa90c07913e1141b5c24b755f9374b34b9b9bcbd6f712f3d58b72d259e969c91263859ff7e16358a296b SHA512 57301337c8ebfc22b6ad8c09468b2f2642785967f20b74060e5ee50b0a3e1eb778f92d8179535dde5564c56b34102d096c4eee05f3fd3c6f6edbcf830f2765ed DIST jupyterlab-4.4.2.tar.gz 23030818 BLAKE2B 627a755b89541de1cf0b69b76bf01dee940bfe1edc0585e875a34d594044749c633e70dd044e8d0e69dc196a7e247021098210a25e0c535193008631e885a396 SHA512 4883ea8217fb4938233631310abeec38d1e0d074cce3997ee1b604c156ac408820238409a50de6abc85d7351c3e52369d8f625b5095cc690937ff310262b33a8 +DIST jupyterlab-4.4.3.tar.gz 23032376 BLAKE2B 5cf0cbe4f7ba009da2bbb59568be159e142a5ba71795556bd8ce4e92674e3fba58fc9ffb0504be6e419ad4eabd8ce70af23672794ca6c2a93f1e49d460cd2944 SHA512 07e013eff2e6a3de0214a3f5c2a001152d13f7501e015571716e42132fd9d3eb15e9e6b8182961022539564a5062e7ddad309db207dca0702c9516bc2910a6c0 diff --git a/dev-python/jupyterlab/jupyterlab-4.4.3.ebuild b/dev-python/jupyterlab/jupyterlab-4.4.3.ebuild new file mode 100644 index 000000000000..55bb81700775 --- /dev/null +++ b/dev-python/jupyterlab/jupyterlab-4.4.3.ebuild @@ -0,0 +1,78 @@ +# 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} pypy3 ) + +inherit distutils-r1 pypi xdg + +DESCRIPTION="JupyterLab computational environment" +HOMEPAGE=" + https://jupyter.org/ + https://github.com/jupyterlab/jupyterlab/ + https://pypi.org/project/jupyterlab/ +" + +LICENSE="BSD MIT GPL-3 Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" + +RDEPEND=" + >=dev-python/async-lru-1.0.0[${PYTHON_USEDEP}] + >=dev-python/httpx-0.28.0[${PYTHON_USEDEP}] + >=dev-python/ipykernel-6.5.0[${PYTHON_USEDEP}] + >=dev-python/jinja2-3.0.3[${PYTHON_USEDEP}] + dev-python/jupyter-core[${PYTHON_USEDEP}] + >=dev-python/jupyter-lsp-2.0.0[${PYTHON_USEDEP}] + >=dev-python/jupyter-server-2.4.0[${PYTHON_USEDEP}] + <dev-python/jupyter-server-3[${PYTHON_USEDEP}] + >=dev-python/jupyterlab-server-2.27.1[${PYTHON_USEDEP}] + <dev-python/jupyterlab-server-3[${PYTHON_USEDEP}] + >=dev-python/notebook-shim-0.2[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + >=dev-python/setuptools-41.1.0[${PYTHON_USEDEP}] + >=dev-python/tornado-6.2.0[${PYTHON_USEDEP}] + dev-python/traitlets[${PYTHON_USEDEP}] + net-libs/nodejs[npm] +" + +BDEPEND=" + dev-python/hatch-jupyter-builder[${PYTHON_USEDEP}] + test? ( + dev-python/pytest-console-scripts[${PYTHON_USEDEP}] + >=dev-python/pytest-jupyter-0.5.3[${PYTHON_USEDEP}] + dev-python/pytest-tornasync[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/requests-cache[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] + ) +" + +EPYTEST_DESELECT=( + # These tests call npm and want internet + jupyterlab/tests/test_jupyterlab.py::TestExtension::test_uninstall_core_extension + jupyterlab/tests/test_jupyterlab.py::TestExtension::test_install_and_uninstall_pinned_folder + jupyterlab/tests/test_jupyterlab.py::TestExtension::test_install_and_uninstall_pinned + jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build_custom_minimal_core_config + jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build_custom + jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build_check + jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build + jupyterlab/tests/test_build_api.py::TestBuildAPI::test_clear + jupyterlab/tests/test_build_api.py::TestBuildAPI::test_build +) + +EPYTEST_IGNORE=( + jupyterlab/tests/test_announcements.py +) + +distutils_enable_tests pytest +# TODO: package sphinx_copybutton +#distutils_enable_sphinx docs/source dev-python/sphinx-rtd-theme dev-python/myst-parser + +python_install_all() { + distutils-r1_python_install_all + mv "${ED}/usr/etc" "${ED}/etc" || die +} diff --git a/dev-python/libtmux/Manifest b/dev-python/libtmux/Manifest index 51e36db00bdc..387e1fe44451 100644 --- a/dev-python/libtmux/Manifest +++ b/dev-python/libtmux/Manifest @@ -6,3 +6,4 @@ DIST libtmux-0.44.2.gh.tar.gz 326828 BLAKE2B ac2441ac13157bdce2465b1388f3e1570eb DIST libtmux-0.45.0.gh.tar.gz 329763 BLAKE2B 3c8184b9e7ab874b4a85e3d3c3be3e96e48bfb14a02bf26a683062374c0a5258d911026a8c994639514668c775ab3855201d1daa466a20041635aeb978cffe24 SHA512 e1f921bddabcc26f034c331d3b9e7082c3d6d4cdbd8f0173e1499d8a05fd80ca79317409b29cb9ac95827ccb6e9127c58dffa6198ea5a2dee547fdaef23ba2ee DIST libtmux-0.46.0.gh.tar.gz 337117 BLAKE2B 23caa10584c943ee1e7c162ce97d9d18d297a52fa15a4ac66be2e29314499d2f99bfa5a3061cef6ad80dc94ba8bf9362725d92e74385973aa717849a78388ac4 SHA512 4143639f0219c5751e69718d79c08efec8f9a6f5229aa48f6a7f7fe6c32486ee4b92f6d962fa6ef8f396852a688e373daf0d416f29b95036d015b3fcbba063a9 DIST libtmux-0.46.1.gh.tar.gz 337302 BLAKE2B b0e086aab882c9ec82ee5606a7ea02e81a549d3009bf8b0f4bc736d8ba8cc7130afd024781c95e332527bdb72202346558d90a4989c5ff2cbb7f6836960e88ef SHA512 41b526d40373d1251260cea8e4fc94cb176275f2c399030b66266663e831f733fb017bebc32e92b9809212c064b21e539853ec780b8f75f0afe01db8b5cb2236 +DIST libtmux-0.46.2.gh.tar.gz 350347 BLAKE2B b771eb8e0fc48082ec7e08d82143c48c0df51bb0f5cc2783df4969a78cbfb232aef76e9ec3b44e728a49651c892cfec6b4623297fc7c5cf8f7cf96453b04aba4 SHA512 60ca1e3699ce6fb5bb0b44ef6ef7349b96c9b1eec8f3761e6da94cd69fc9088a25d717271d34350b79b4139c4607ee37933370d83d6645462b34caa02f65bb07 diff --git a/dev-python/libtmux/libtmux-0.46.2.ebuild b/dev-python/libtmux/libtmux-0.46.2.ebuild new file mode 100644 index 000000000000..a96cba189ffe --- /dev/null +++ b/dev-python/libtmux/libtmux-0.46.2.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=hatchling +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 + +DESCRIPTION="Typed library that provides an ORM wrapper for tmux, a terminal multiplexer" +HOMEPAGE=" + https://libtmux.git-pull.com/ + https://github.com/tmux-python/libtmux/ + https://pypi.org/project/libtmux/ +" +SRC_URI=" + https://github.com/tmux-python/libtmux/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +RDEPEND=" + >=app-misc/tmux-3.0a +" +BDEPEND=" + test? ( + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/pytest-rerunfailures[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_prepare_all() { + local issues="https://github.com/tmux-python/libtmux/issues/" + sed -r -i "s|:issue:\`([[:digit:]]+)\`|\`issue \1 ${issues}\1\`|" CHANGES || die + + distutils-r1_python_prepare_all +} + +python_test() { + # tests/test_window.py::test_fresh_window_data fails if TMUX_PANE is set + # https://bugs.gentoo.org/927158 + local -x TMUX_PANE= + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local -x PYTEST_PLUGINS=libtmux.pytest_plugin + + epytest -o addopts= -p pytest_mock -p rerunfailures --reruns=5 tests +} diff --git a/dev-python/miniupnpc/Manifest b/dev-python/miniupnpc/Manifest index b071cd2c53f3..248c5eebfe23 100644 --- a/dev-python/miniupnpc/Manifest +++ b/dev-python/miniupnpc/Manifest @@ -1,2 +1,4 @@ DIST miniupnpc-2.3.2.tar.gz 140137 BLAKE2B 3c9928b06a26ebc023c0e0f740c91803e1e08ff1603916ca77ae959b6ba436016754754f3718add0138cfa82116363981ee95798e72f03457f7ef8aa9945c813 SHA512 c20a74cd5f1b8fcf8663c50565b7d62da4d9231a2a26c20e2a322a0e6874b31155c5c8f0571eb2af142adeb5892693f92e42539bae8c20c50f1e1903b1c098ce DIST miniupnpc-2.3.2.tar.gz.sig 543 BLAKE2B e15ff3a1cf923fe5790e6d84ebf7ed685ec5bd9e370cebffc44fe1b3fff643bc791f099f4ca42c8e18d10180b21f57d3e4d458a657be02d0cc7c588d364ad2dd SHA512 05cd7fbfc55adb453bcc82ffaff544612f6f063c53b0a683bf942f8e21afa193f75b3506c71e5a4eb23d6f2921379747640f6058d9b9f8a69fbe43951f731e27 +DIST miniupnpc-2.3.3.tar.gz 141281 BLAKE2B 3f20f13c5b4056be1f61dfcfc3c8a8ece65cd6377d8c2a96c2bc937932f7d084820f43f0c4a7c05f1676347c558ee6edea77df9552ed0f13232338114bd910c3 SHA512 a4ac76ae4dac73773b68f4af81f8f8502d168122e16313c986b7fa7cdea02ded0e722a6dd6c8dc8633f167e04b8df1ed6f7202db0d76438c4010780c48e5594c +DIST miniupnpc-2.3.3.tar.gz.sig 543 BLAKE2B ef45851a5e372780e6bbefd81662aa29f5498ca17301f7638ddd497d9816d4a47d36616e5dd98e6cbce61ce1291b00b2734a39e2c9683d99b2a82ace9d6cefc3 SHA512 003fd05a59a9519679f5baad5775c02a64e697150d7ff71bdf0267a803ff2e4585a2c15acd3f87f9543d04eec78288e8e03840faee9e6f5edec9b6eab0310520 diff --git a/dev-python/miniupnpc/miniupnpc-2.3.3.ebuild b/dev-python/miniupnpc/miniupnpc-2.3.3.ebuild new file mode 100644 index 000000000000..f3dc4259c0bb --- /dev/null +++ b/dev-python/miniupnpc/miniupnpc-2.3.3.ebuild @@ -0,0 +1,52 @@ +# 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 +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 verify-sig + +MY_P=${P/python-} +DESCRIPTION="Python bindings for UPnP client library" +HOMEPAGE=" + http://miniupnp.free.fr/ + https://miniupnp.tuxfamily.org/ + https://github.com/miniupnp/miniupnp/ +" +SRC_URI=" + https://miniupnp.tuxfamily.org/files/${MY_P}.tar.gz + verify-sig? ( + https://miniupnp.tuxfamily.org/files/${MY_P}.tar.gz.sig + ) +" +S=${WORKDIR}/${MY_P} + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" + +DEPEND=" + >=net-libs/miniupnpc-${PV}:0= +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + verify-sig? ( sec-keys/openpgp-keys-miniupnp ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/miniupnp.asc + +PATCHES=( + "${FILESDIR}"/miniupnpc-2.2.3-shared-lib.patch +) + +# DOCS are installed by net-libs/miniupnpc. +DOCS=() + +# Example test command: +# python -c 'import miniupnpc; u = miniupnpc.UPnP(); u.discover(); u.selectigd(); print(u.externalipaddress())' +distutils_enable_tests import-check diff --git a/dev-python/narwhals/Manifest b/dev-python/narwhals/Manifest index c2e372bc0706..48459254d9b1 100644 --- a/dev-python/narwhals/Manifest +++ b/dev-python/narwhals/Manifest @@ -1,2 +1,3 @@ DIST narwhals-1.39.1.tar.gz 484444 BLAKE2B a3e1913a99fbe2602cdc9f6a1ae6c218e66f053365b68e682a2d32d60d600986bcdb1fddfa4b7fd7c2910bf2283f7f0add47a191594e0417f090160362651aa3 SHA512 8d4a6fc5220145db0b36901366dbeaa86956b773fb94dda3d4c84ab69abfbb26a2bf1da29b8d24a1cc2c8d11c3a3b124cb7c5a5cbafabb1813bec41a77093086 DIST narwhals-1.40.0.tar.gz 487625 BLAKE2B c92c5447b2f7f782f93620b6772780e7d111795d190e593eef2820b3229165f4706b7f650d84bf55524053b884e6243cb6312df2b84d510e15fbd8d8602111c4 SHA512 820f8633a86283cd35cf4d672e1894fdbd7f7432de5b1fb03435790eaf73d714aad261c812bf8d329524f5ebabee07d8394b315de366186babe55ada18fbc18e +DIST narwhals-1.41.0.tar.gz 488446 BLAKE2B dbf5144fd96e4a4a555c88b32bb9acbdbcb419b3c2ddb61a4283ac492c100d4eadcd76f6e286295f0575a1d0ca24247928c2b31085230b66a028bdf9c291a36d SHA512 41492fd945863b2e87440983892b81e237e7cfdab0996eba7721b69b648a1c9267b21499494630750424dabbf50b5a5d756ae25ed76ec96346038715da2aaf85 diff --git a/dev-python/narwhals/narwhals-1.41.0.ebuild b/dev-python/narwhals/narwhals-1.41.0.ebuild new file mode 100644 index 000000000000..8422b7e22466 --- /dev/null +++ b/dev-python/narwhals/narwhals-1.41.0.ebuild @@ -0,0 +1,36 @@ +# Copyright 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="Extremely lightweight compatibility layer between dataframe libraries" +HOMEPAGE=" + https://github.com/narwhals-dev/narwhals/ + https://pypi.org/project/narwhals/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64" + +BDEPEND=" + test? ( + dev-python/hypothesis[${PYTHON_USEDEP}] + dev-python/pandas[${PYTHON_USEDEP}] + dev-python/pyarrow[${PYTHON_USEDEP}] + dev-python/pytest-env[${PYTHON_USEDEP}] + ) +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest --runslow --constructors="pandas,pandas[nullable],pandas[pyarrow],pyarrow" +} diff --git a/dev-python/notebook/Manifest b/dev-python/notebook/Manifest index 0d90e0f9b97d..0d1de285255d 100644 --- a/dev-python/notebook/Manifest +++ b/dev-python/notebook/Manifest @@ -1,2 +1,3 @@ DIST notebook-7.3.3.tar.gz 12758099 BLAKE2B e5e988a166b5124f95cc050a4d9402778108c084325024c8ed3829780665d7149a06cccd4ab80d33e572b0b98d9088751d2a9313f10a940e8d82b5eb14db25f3 SHA512 e0f476c5a91edba48dc43b25417946983c46d5b4beaac6531ebf7af02bc4a9f2bae09b7d7524d7ad6e33c262769c1dc40c36f4593cfc70b8c98f41f40a75f8a2 DIST notebook-7.4.2.tar.gz 13881273 BLAKE2B 3debd1d9d3bb1f7f5ca20ab8dc0af43fe6c137db3a58a3bdbf371b09e4bb9aa69c13f17f6662e87e6eb79dd2f60c975f2fe139e6f990a53f67c9ace3cf15b692 SHA512 286b6f93398f34c4dcb4beb92bfb27be0045084294677c1be9fb0a7c8bd454a000851b26df22f97adf7c0719cb55d2dd10fa7c33decbb268da6e745a7e468c2d +DIST notebook-7.4.3.tar.gz 13881668 BLAKE2B 4d2a3645986ccc90d08d0437e52b32657bb850b860dadc35439343612a518b0e17fed7e12721684dea439c4a21eb27bc2a24a6c6ea9fc53b8301ee561faccc2a SHA512 444b91793705ca97053da8d1feb8d7ecf343d44f09e872c37e1a165cfa849c068a4f76b47a4bd2056b41d7f29616f564038460caa40228be31d0f9a0081be4f7 diff --git a/dev-python/notebook/notebook-7.4.3.ebuild b/dev-python/notebook/notebook-7.4.3.ebuild new file mode 100644 index 000000000000..9a4e72dd353c --- /dev/null +++ b/dev-python/notebook/notebook-7.4.3.ebuild @@ -0,0 +1,66 @@ +# 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} pypy3 ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 pypi xdg-utils + +DESCRIPTION="Jupyter Interactive Notebook" +HOMEPAGE=" + https://jupyter.org/ + https://github.com/jupyter/notebook/ + https://pypi.org/project/notebook/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" + +RDEPEND=" + >=dev-python/jupyter-server-2.4.0[${PYTHON_USEDEP}] + <dev-python/jupyter-server-3[${PYTHON_USEDEP}] + >=dev-python/jupyterlab-4.4.3[${PYTHON_USEDEP}] + <dev-python/jupyterlab-4.5[${PYTHON_USEDEP}] + >=dev-python/jupyterlab-server-2.27.1[${PYTHON_USEDEP}] + <dev-python/jupyterlab-server-3[${PYTHON_USEDEP}] + >=dev-python/notebook-shim-0.2[${PYTHON_USEDEP}] + <dev-python/notebook-shim-0.3[${PYTHON_USEDEP}] + >=dev-python/tornado-6.2.0[${PYTHON_USEDEP}] +" + +BDEPEND=" + dev-python/hatch-jupyter-builder[${PYTHON_USEDEP}] + >=dev-python/jupyterlab-4.4[${PYTHON_USEDEP}] + <dev-python/jupyterlab-4.5[${PYTHON_USEDEP}] + test? ( + dev-python/ipykernel[${PYTHON_USEDEP}] + dev-python/nbval[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/requests-unixsocket[${PYTHON_USEDEP}] + dev-python/pytest-console-scripts[${PYTHON_USEDEP}] + dev-python/pytest-jupyter[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + dev-python/pytest-tornasync[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_install_all() { + distutils-r1_python_install_all + mv "${ED}/usr/etc" "${ED}/etc" || die +} + +pkg_postinst() { + xdg_desktop_database_update + xdg_icon_cache_update +} + +pkg_postrm() { + xdg_desktop_database_update + xdg_icon_cache_update +} diff --git a/dev-python/passlib/passlib-1.7.4-r3.ebuild b/dev-python/passlib/passlib-1.7.4-r3.ebuild index 5263ffaa8c41..3ce49005bf3e 100644 --- a/dev-python/passlib/passlib-1.7.4-r3.ebuild +++ b/dev-python/passlib/passlib-1.7.4-r3.ebuild @@ -45,7 +45,7 @@ python_test() { ) case ${EPYTHON} in - python3.13) + python3.13*|python3.14*) EPYTEST_DESELECT+=( # crypt module has been removed, so the platform backend # does not work anymore diff --git a/dev-python/pathable/Manifest b/dev-python/pathable/Manifest index 987d500387e5..9bad37ff0cbb 100644 --- a/dev-python/pathable/Manifest +++ b/dev-python/pathable/Manifest @@ -1 +1,2 @@ DIST pathable-0.4.4.gh.tar.gz 21381 BLAKE2B f0ba3579204a636948f96259bc67b3a6e923af1de7b6fcf4021152c9482f82fc362d5d50cb1bcd6b5393c49d2914c6d36e941647754ef7bc2554722ad02f38ad SHA512 4b1ec32f7e952749ec0384036e7becf5343e92cbec9160627c2a678e314d7387bd4ad56a3953171038a38102c715469e973218cb3995df414bd9dd750986e046 +DIST pathable-0.5.0a1.gh.tar.gz 30683 BLAKE2B 7416acc83d431b9140ca9ad9f54c975b18aef146bbfbf9a176c4d2d68a1732bcc9848df7324a01b09e2dceef5d09cc340e7fd805654072a3f7d402f603a6aea1 SHA512 3f3e0c43f94bd1043c5e14d4d5ba3fd5256f9e6bd295b223918af40c25494f3844f25e9f1e75acf04192b2a83f2d72a0c57631012a08759ba755cd5ff5724790 diff --git a/dev-python/pathable/pathable-0.5.0_alpha1.ebuild b/dev-python/pathable/pathable-0.5.0_alpha1.ebuild new file mode 100644 index 000000000000..ecac4e029d05 --- /dev/null +++ b/dev-python/pathable/pathable-0.5.0_alpha1.ebuild @@ -0,0 +1,31 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=poetry +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 + +MY_P=${P/_alpha/a} +DESCRIPTION="Object-oriented paths" +HOMEPAGE=" + https://pypi.org/project/pathable/ + https://github.com/p1c2u/pathable +" +SRC_URI=" + https://github.com/p1c2u/pathable/archive/${PV/_alpha/a}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="Apache-2.0" +SLOT="0" + +distutils_enable_tests pytest + +src_prepare() { + sed -e '/--cov/d' -i pyproject.toml || die + distutils-r1_src_prepare +} diff --git a/dev-python/protobuf/protobuf-6.30.2.ebuild b/dev-python/protobuf/protobuf-6.30.2.ebuild index 4417da5d09e0..dc190c2fdb57 100644 --- a/dev-python/protobuf/protobuf-6.30.2.ebuild +++ b/dev-python/protobuf/protobuf-6.30.2.ebuild @@ -26,4 +26,4 @@ SRC_URI=" LICENSE="BSD" SLOT="0/$(ver_cut 1-3)" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos" diff --git a/dev-python/pytest-mock/Manifest b/dev-python/pytest-mock/Manifest index 3f7cb9be9fbf..8baf0799857a 100644 --- a/dev-python/pytest-mock/Manifest +++ b/dev-python/pytest-mock/Manifest @@ -1 +1,2 @@ DIST pytest-mock-3.14.0.tar.gz 32814 BLAKE2B f6e10dd6781bf10076c7c42f9cfc8cd4e4cfd3aa08030c9ad6377ee64b3386ddd190eac8bd1a912d54b5ef4aba14dfe136b3968b6ed08683dd4c4f102eaf8a26 SHA512 c60059fe8fb64540f33382e52b9015dd9771483e2074d35c02cd5852a50eed02a64e202b7e81e920bbbd0621bd23fa9bb0467d2ceef7abd582df3e27eafeaa20 +DIST pytest_mock-3.14.1.tar.gz 33241 BLAKE2B bfc638313f3169e2eb5ed69d6eaa89742cc43a39b51c2d41860848f03bbdcd062749294526cb555fafb99fadc4c566ed6cf96baf2491b74d0aec69f9d793c9ff SHA512 fff44e9520ce5cb55f259f60af5a9cc2c114e0b94d9493cd87381fc0939cfa89a6370304369ab2e5b06b3437c7525175860d35e526c2e9c84f01c0e47bab9cf9 diff --git a/dev-python/pytest-mock/pytest-mock-3.14.1.ebuild b/dev-python/pytest-mock/pytest-mock-3.14.1.ebuild new file mode 100644 index 000000000000..3f9fe8c4a35a --- /dev/null +++ b/dev-python/pytest-mock/pytest-mock-3.14.1.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_TESTED=( python3_{9,10,11,12,13} pypy3 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) + +inherit distutils-r1 pypi + +DESCRIPTION="Thin-wrapper around the mock package for easier use with pytest" +HOMEPAGE=" + https://github.com/pytest-dev/pytest-mock/ + https://pypi.org/project/pytest-mock/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + +RDEPEND=" + >=dev-python/pytest-6.2.5[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/setuptools-scm[${PYTHON_USEDEP}] + test? ( + $(python_gen_cond_dep ' + dev-python/pytest-asyncio[${PYTHON_USEDEP}] + ' "${PYTHON_TESTED[@]}") + ) +" + +distutils_enable_tests pytest + +python_test() { + if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then + einfo "Skipping tests on ${EPYTHON}" + return + fi + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local -x PYTEST_PLUGINS=pytest_mock,pytest_asyncio.plugin + local EPYTEST_DESELECT=() + + if has_version dev-python/mock; then + EPYTEST_DESELECT+=( + tests/test_pytest_mock.py::test_standalone_mock + ) + fi + + epytest --assert=plain +} diff --git a/dev-python/pytest-xdist/Manifest b/dev-python/pytest-xdist/Manifest index 12651f40e9a0..88c4c209d679 100644 --- a/dev-python/pytest-xdist/Manifest +++ b/dev-python/pytest-xdist/Manifest @@ -1 +1,2 @@ DIST pytest_xdist-3.6.1.tar.gz 84060 BLAKE2B 01392bc1f5a1587f609fc0246235457ab92ca40b3c34c660c117fae1c2b8b98dc0cde345f42951d69c3b58732e0094c7618ed570a6e3ca41165e93e2d8cf9e84 SHA512 583a78d0adc05d81458bbdd5832c239581c0fcd9cad9edfd16fa78009c005c15bffec7ed074d9e18f1542393f62d9ccb2c9e0a96d825e9cff1faec123545a2a3 +DIST pytest_xdist-3.7.0.tar.gz 87550 BLAKE2B 14a95cdc4275495cc5f5a4c3f0ce3d641b0cd043bd713b49e36b2a8c47cd3cc7d725f7c24f1394eb796df604fc0f1aa0f8a24bd243af80dc1bf2bacb685f98b4 SHA512 5c2287a29d2052544a1374c552fd0113841611a5dbd76aae5fc8cf990106734468e73df5c6fffb2134d226fa2e397ea11d505ac57493ac497dcc1f277905586f diff --git a/dev-python/pytest-xdist/pytest-xdist-3.7.0.ebuild b/dev-python/pytest-xdist/pytest-xdist-3.7.0.ebuild new file mode 100644 index 000000000000..d3db86fe0fab --- /dev/null +++ b/dev-python/pytest-xdist/pytest-xdist-3.7.0.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=setuptools +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Distributed testing and loop-on-failing modes" +HOMEPAGE=" + https://pypi.org/project/pytest-xdist/ + https://github.com/pytest-dev/pytest-xdist/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + +RDEPEND=" + >=dev-python/execnet-2.1[${PYTHON_USEDEP}] + dev-python/psutil[${PYTHON_USEDEP}] + >=dev-python/pytest-7.0.0[${PYTHON_USEDEP}] +" + +BDEPEND=" + dev-python/setuptools-scm[${PYTHON_USEDEP}] + test? ( + dev-python/filelock[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + # disable autoloading plugins in nested pytest calls + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + # since we disabled autoloading, force loading necessary plugins + local -x PYTEST_PLUGINS=xdist.plugin,xdist.looponfail + + epytest -o tmp_path_retention_count=1 +} diff --git a/dev-python/python-openstackclient/Manifest b/dev-python/python-openstackclient/Manifest index 53a7c9c36a56..ca4bd37a4e7a 100644 --- a/dev-python/python-openstackclient/Manifest +++ b/dev-python/python-openstackclient/Manifest @@ -1 +1,2 @@ DIST python_openstackclient-8.0.0.tar.gz 914450 BLAKE2B 40630fd35cee86084229a23b44810cacaa310668227ae701da147a3291ff90fc588bba2e6cbf601d3e42b4bc75ac02de128df48f46684c7b9ee9f0ee5ba6b2e5 SHA512 b9bcd9d2503e81dd52736ad225c0a5d9cc4c2193f490f91bc74e81185e0cf81431e129f16e8ce042054d9e26fb139fe536c7b56cd0242eea314db456eb28a2f9 +DIST python_openstackclient-8.1.0.tar.gz 924058 BLAKE2B aebdbe7ce6e7f4afbec6fdd4b689c7b40ff64d31c5483fe4b7f42bde9e1a1175aa8272fe17f83853f68ee5356fd53dbc6689c7c0d0e4d3add94a37ee95f25624 SHA512 3de4d5edc0f57b54a8d0c38b878f4c2a7e07dd5982c640943226123fef30c8a68322cf1f232abe02806ed0d5ea8038d818c48e2bf67194fcc46ba2f41422a843 diff --git a/dev-python/python-openstackclient/python-openstackclient-8.1.0.ebuild b/dev-python/python-openstackclient/python-openstackclient-8.1.0.ebuild new file mode 100644 index 000000000000..d711ae9f73b0 --- /dev/null +++ b/dev-python/python-openstackclient/python-openstackclient-8.1.0.ebuild @@ -0,0 +1,60 @@ +# 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 client for the OpenStack APIs" +HOMEPAGE=" + https://opendev.org/openstack/python-openstackclient/ + https://github.com/openstack/python-openstackclient/ + https://pypi.org/project/python-openstackclient/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" + +RDEPEND=" + >dev-python/pbr-2.1.0[${PYTHON_USEDEP}] + >=dev-python/cliff-3.5.0[${PYTHON_USEDEP}] + >=dev-python/cryptography-2.7[${PYTHON_USEDEP}] + >=dev-python/openstacksdk-4.5.0[${PYTHON_USEDEP}] + >=dev-python/osc-lib-2.3.0[${PYTHON_USEDEP}] + >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}] + >=dev-python/python-keystoneclient-3.22.0[${PYTHON_USEDEP}] + >=dev-python/python-cinderclient-3.3.0[${PYTHON_USEDEP}] + >=dev-python/requests-2.27.0[${PYTHON_USEDEP}] + >=dev-python/stevedore-2.0.1[${PYTHON_USEDEP}] +" +BDEPEND=" + >dev-python/pbr-2.1.0[${PYTHON_USEDEP}] + test? ( + >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}] + >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}] + >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}] + >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}] + >=dev-python/tempest-17.1.0[${PYTHON_USEDEP}] + >=dev-python/wrapt-1.7.0[${PYTHON_USEDEP}] + >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests unittest + +src_prepare() { + # Depends on a specific runner + sed -e 's/test_command_has_logger/_&/' \ + -i openstackclient/tests/unit/common/test_command.py || die + + distutils-r1_src_prepare +} + +python_test() { + # functional tests require cloud instance access + eunittest -b openstackclient/tests/unit +} diff --git a/dev-python/python-tests/Manifest b/dev-python/python-tests/Manifest index 1b863ec0adee..7b91b021331e 100644 --- a/dev-python/python-tests/Manifest +++ b/dev-python/python-tests/Manifest @@ -6,7 +6,10 @@ DIST Python-3.13.3.tar.xz 22654240 BLAKE2B 24ac47c13cbfa4dc9ce6ae4d18d7b5310f83a DIST Python-3.13.3.tar.xz.asc 963 BLAKE2B 4a98965305b80e985512f54d9ce8ab88a74fe0d3ee48e300fbc2b4e251c0f499f4eb935e0aeb6d5ad8262338643325126f094fff926da1e2b9a2b3a2247701dc SHA512 54f8da5f4a4dcadc9830cb07aecf695a26a2de48ab98e1f42b09fdde1c70989476d07ce7ea81337216f1e5fcbf6b688e0608c88a2545ced416b01640108e94db DIST Python-3.14.0b1.tar.xz 23358200 BLAKE2B c18329ee73545a3c50fb4d4a56c0888d19e15c9fb53e1e3b6c0bc4b9eb22fc4912f1c934dc6f0f9b24c19b187ddbc76776d84898d5fc371d740c9a499c9294c4 SHA512 46c0792fe4d7beab13403938e51cc73e4cbc90a1d0367ba106f56353fae6e93697aa08d6389fd5a1fffa71d59376aee0196aba82b2c40d2f0cf642f14eefead8 DIST Python-3.14.0b1.tar.xz.sigstore 5083 BLAKE2B 5192c84b0580af88cbac55f9bc4fb3aa4b018ae384524108bf82e69a986f21a1512bf88298549f23bf9036951bb12fd56fcdd6032f532cb9f7695dcd9baae6ea SHA512 b8f6e4b4f10b50e0d71a5eba9b9ba18660d994c8ae6aff7d46caa706738a4aca0d4f53e29c5ae668c963ec0c9531b91f77aed03c550ffafe69eb6a5a2e5f755e +DIST Python-3.14.0b2.tar.xz 23579860 BLAKE2B bf5ebac54531a7c837e7650754264b4be28e28613d488d1c7546db77e2ef3b501ff646d7fb505c6ac0fa1381c3230d1c1899bc82144f369339c89687b5dc7f5c SHA512 cdd37f8a982e6194d5afa80a2eb94c899080809749d59a50a2ce3eed37f720a1fd9a7977f0dd3992650d173a7070b15610077d97cb499bd16a7500c56ef1f8dd +DIST Python-3.14.0b2.tar.xz.sigstore 5131 BLAKE2B 04cab57a4da63f5abf28db94e5fd952206124ce37ef5a5d981839a0790881c9c4ea6d186f233eaaf6e82350bdfdbb0048d761b816d81eaba71c707bd9714a9d9 SHA512 a356037824fbde5950f197cf04f0d71ddaf4b68006b2ab9951f9b4c2df508e84bd0bec7d72051e75d22c17eee767e46e5d2c167e853fb941b0831cb26d518fdc DIST python-gentoo-patches-3.11.12.tar.xz 15616 BLAKE2B 5d4a47058fc35c4ae966e3dff823f91129852bf81cd586d5b3a34a6daf672732918daf00199394f2f982411ec30a291f45bba55b3ffa3d96a179ecd600ea4647 SHA512 77973ef88403f94d55162e0138cd29b4d8959a8fcf4cec730daf7ddd8fb4a3acfcd0dd1fdaacbdd2b218bd15f6c6715ce339df4eba48227d17520243d96eeb39 DIST python-gentoo-patches-3.12.10.tar.xz 10744 BLAKE2B 2abf4874018156d6735cf8604c410dc4726ac9365bc7500abe6b82472aad100aac7268957256692f4275b02965773e58178519ed8038e121f1ffa3c53770d238 SHA512 62066405aa00f46f9645e9c747d53bb93bf510fc791d14d49e00edfd79981778e6c8e07bfa7bac88d76407a0ffd8f7321dea89f81d90b01dbf13f4d381b6a1a3 DIST python-gentoo-patches-3.13.3.tar.xz 8336 BLAKE2B 66393886fbd034eb14732e4f81f5798e77650ea3fe1c4f8176bd93808b711c8977a53c3f52be6c9b97a368299258b851d9bdb6d4c8e0c75695c6aea784d48b44 SHA512 c1ed31d6aaef81addf786c2ccc1013309b122b791c42fe10e467a677d0db8f149e8b1cc21928c146298918c7ceb851b4b19d1e59f491cb161004e1c9386db289 DIST python-gentoo-patches-3.14.0b1.tar.xz 5680 BLAKE2B 514b3edc3025e5bf675d371b5ada17dea426856edf1fb6095c2ee400eae95bd4265ef81fe593ae9338e801e7d0a25b1d5ba2d05ca563fd9dd020114b13575746 SHA512 74289e42cf532b54bb1b66a283ec19156f8a36ba38764209c133842314c9efb2ce2ebcba5aa9213bcf7fc0c8a5ca9b6e7adbd5dbfa4397233136d7cd55f53ee7 +DIST python-gentoo-patches-3.14.0b2.tar.xz 6168 BLAKE2B ecf2fd981efc289fbc16d615c6e69ad7a797bd6906e6f974ece47eace582d7c4b3ea0217b0df9575e522416df2749125ff3658d8aca6a53bf977d5f155dd6b90 SHA512 552ff5306ca43c89e65b1df42cb71753c7e900efc4be7e35150c187184a5e94241fea78bb9084831508fd4a7e71323be59c1565901560ec53fc076c3697baf34 diff --git a/dev-python/python-tests/python-tests-3.14.0_beta2-r100.ebuild b/dev-python/python-tests/python-tests-3.14.0_beta2-r100.ebuild new file mode 100644 index 000000000000..2c0d382ad617 --- /dev/null +++ b/dev-python/python-tests/python-tests-3.14.0_beta2-r100.ebuild @@ -0,0 +1,70 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9,10,11,12,13} ) +VERIFY_SIG_METHOD=sigstore + +inherit python-r1 verify-sig + +MY_PV=${PV/_beta/b} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2)t +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="Test modules from dev-lang/python" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.sigstore + ) +" +S="${WORKDIR}/${MY_P}/Lib" + +LICENSE="PSF-2" +SLOT="${PYVER}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + ~dev-lang/python-${PV}:${PYVER} +" +BDEPEND=" + ${PYTHON_DEPS} +" + +# https://www.python.org/downloads/metadata/sigstore/ +VERIFY_SIG_CERT_IDENTITY=hugo@python.org +VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore} + fi + default +} + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + cd .. || die + default +} + +src_install() { + python_setup + # keep in sync with TESTSUBDIRS in Makefile.pre.in + python_moduleinto "/usr/lib/python${PYVER}" + python_domodule test + python_moduleinto "/usr/lib/python${PYVER}/idlelib" + python_domodule idlelib/idle_test +} diff --git a/dev-python/python-tests/python-tests-3.14.0_beta2.ebuild b/dev-python/python-tests/python-tests-3.14.0_beta2.ebuild new file mode 100644 index 000000000000..0c38f052dfe9 --- /dev/null +++ b/dev-python/python-tests/python-tests-3.14.0_beta2.ebuild @@ -0,0 +1,70 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9,10,11,12,13} ) +VERIFY_SIG_METHOD=sigstore + +inherit python-r1 verify-sig + +MY_PV=${PV/_beta/b} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2) +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="Test modules from dev-lang/python" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.sigstore + ) +" +S="${WORKDIR}/${MY_P}/Lib" + +LICENSE="PSF-2" +SLOT="${PYVER}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + ~dev-lang/python-${PV}:${PYVER} +" +BDEPEND=" + ${PYTHON_DEPS} +" + +# https://www.python.org/downloads/metadata/sigstore/ +VERIFY_SIG_CERT_IDENTITY=hugo@python.org +VERIFY_SIG_CERT_OIDC_ISSUER=https://github.com/login/oauth + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.sigstore} + fi + default +} + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + cd .. || die + default +} + +src_install() { + python_setup + # keep in sync with TESTSUBDIRS in Makefile.pre.in + python_moduleinto "/usr/lib/python${PYVER}" + python_domodule test + python_moduleinto "/usr/lib/python${PYVER}/idlelib" + python_domodule idlelib/idle_test +} diff --git a/dev-python/readme-renderer/files/readme-renderer-44.0-test.patch b/dev-python/readme-renderer/files/readme-renderer-44.0-test.patch new file mode 100644 index 000000000000..f9ed1efa8cb5 --- /dev/null +++ b/dev-python/readme-renderer/files/readme-renderer-44.0-test.patch @@ -0,0 +1,95 @@ +From 04d5cfe76850192364eff344be7fe27730af8484 Mon Sep 17 00:00:00 2001 +From: shenxianpeng <xianpeng.shen@gmail.com> +Date: Sat, 18 Jan 2025 06:30:04 -0500 +Subject: [PATCH] update test outputs to fix test fail (#325) + +--- + tests/fixtures/test_CommonMark_008.html | 6 +++--- + tests/fixtures/test_GFM_doublequotes.html | 2 +- + tests/fixtures/test_GFM_highlight.html | 2 +- + tests/fixtures/test_GFM_highlight_default_py.html | 2 +- + tests/fixtures/test_GFM_malicious_pre.html | 2 +- + tests/fixtures/test_rst_008.html | 6 +++--- + 6 files changed, 10 insertions(+), 10 deletions(-) + +diff --git a/tests/fixtures/test_CommonMark_008.html b/tests/fixtures/test_CommonMark_008.html +index eef144d..5072058 100644 +--- a/tests/fixtures/test_CommonMark_008.html ++++ b/tests/fixtures/test_CommonMark_008.html +@@ -1,9 +1,9 @@ + <p>Here is some Python code for a <code>Dog</code>:</p> +-<pre lang="python3"><span class="k">class</span> <span class="nc">Dog</span><span class="p">(</span><span class="n">Animal</span><span class="p">):</span> +- <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">):</span> ++<pre lang="python3"><span class="k">class</span><span class="w"> </span><span class="nc">Dog</span><span class="p">(</span><span class="n">Animal</span><span class="p">):</span> ++ <span class="k">def</span><span class="w"> </span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">):</span> + <span class="bp">self</span><span class="o">.</span><span class="n">name</span> <span class="o">=</span> <span class="n">name</span> + +- <span class="k">def</span> <span class="nf">make_sound</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span> ++ <span class="k">def</span><span class="w"> </span><span class="nf">make_sound</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span> + <span class="nb">print</span><span class="p">(</span><span class="s1">'Ruff!'</span><span class="p">)</span> + + <span class="n">dog</span> <span class="o">=</span> <span class="n">Dog</span><span class="p">(</span><span class="s1">'Fido'</span><span class="p">)</span> +diff --git a/tests/fixtures/test_GFM_doublequotes.html b/tests/fixtures/test_GFM_doublequotes.html +index f75a4cf..b26adba 100644 +--- a/tests/fixtures/test_GFM_doublequotes.html ++++ b/tests/fixtures/test_GFM_doublequotes.html +@@ -1,7 +1,7 @@ + <p>This is normal text.</p> + <pre><code>This is code text. + </code></pre> +-<pre lang="python3"><span class="k">def</span> <span class="nf">this_is_python</span><span class="p">():</span> ++<pre lang="python3"><span class="k">def</span><span class="w"> </span><span class="nf">this_is_python</span><span class="p">():</span> + <span class="w"> </span><span class="sd">"""This is a docstring."""</span> + <span class="k">pass</span> + </pre> +diff --git a/tests/fixtures/test_GFM_highlight.html b/tests/fixtures/test_GFM_highlight.html +index c2cf7bb..1eae5fd 100644 +--- a/tests/fixtures/test_GFM_highlight.html ++++ b/tests/fixtures/test_GFM_highlight.html +@@ -1,7 +1,7 @@ + <p>This is normal text.</p> + <pre><code>This is code text. + </code></pre> +-<pre lang="python3"><span class="k">def</span> <span class="nf">this_is_python</span><span class="p">():</span> ++<pre lang="python3"><span class="k">def</span><span class="w"> </span><span class="nf">this_is_python</span><span class="p">():</span> + <span class="k">pass</span> + </pre> + <pre lang="go"><span class="kd">func</span><span class="w"> </span><span class="nx">ThisIsGo</span><span class="p">(){</span> +diff --git a/tests/fixtures/test_GFM_highlight_default_py.html b/tests/fixtures/test_GFM_highlight_default_py.html +index d85d6ce..d1a136f 100644 +--- a/tests/fixtures/test_GFM_highlight_default_py.html ++++ b/tests/fixtures/test_GFM_highlight_default_py.html +@@ -1,4 +1,4 @@ +-<pre lang="python3"><span class="k">async</span> <span class="k">def</span> <span class="nf">this_is_python</span><span class="p">():</span> ++<pre lang="python3"><span class="k">async</span> <span class="k">def</span><span class="w"> </span><span class="nf">this_is_python</span><span class="p">():</span> + <span class="k">pass</span> + + <span class="nb">print</span><span class="p">(</span><span class="k">await</span> <span class="n">this_is_python</span><span class="p">())</span> +diff --git a/tests/fixtures/test_GFM_malicious_pre.html b/tests/fixtures/test_GFM_malicious_pre.html +index dc7b6e6..2e586ec 100644 +--- a/tests/fixtures/test_GFM_malicious_pre.html ++++ b/tests/fixtures/test_GFM_malicious_pre.html +@@ -1,5 +1,5 @@ + <p>This is normal text.</p> +-<pre lang="python3"><span class="k">def</span> <span class="nf">this_is_python</span><span class="p">():</span> ++<pre lang="python3"><span class="k">def</span><span class="w"> </span><span class="nf">this_is_python</span><span class="p">():</span> + <span class="w"> </span><span class="sd">"""This is a docstring."""</span> + <span class="k">pass</span> + <span class="o"><</span><span class="n">script</span> <span class="nb">type</span><span class="o">=</span><span class="s2">"text/javascript"</span><span class="o">></span><span class="n">alert</span><span class="p">(</span><span class="s1">'I am evil.'</span><span class="p">);</span><span class="o"></</span><span class="n">script</span><span class="o">></span> +diff --git a/tests/fixtures/test_rst_008.html b/tests/fixtures/test_rst_008.html +index 6762f3a..bbb44a8 100644 +--- a/tests/fixtures/test_rst_008.html ++++ b/tests/fixtures/test_rst_008.html +@@ -1,9 +1,9 @@ + <p>Here is some Python code for a <span class="docutils literal">Dog</span>:</p> +-<pre><code><span class="k">class</span> <span class="nc">Dog</span><span class="p">(</span><span class="n">Animal</span><span class="p">):</span><span class="w"> +-</span> <span class="k">def</span> <span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">):</span><span class="w"> ++<pre><code><span class="k">class</span><span class="w"> </span><span class="nc">Dog</span><span class="p">(</span><span class="n">Animal</span><span class="p">):</span><span class="w"> ++</span> <span class="k">def</span><span class="w"> </span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">name</span><span class="p">):</span><span class="w"> + </span> <span class="bp">self</span><span class="o">.</span><span class="n">name</span> <span class="o">=</span> <span class="n">name</span><span class="w"> + +-</span> <span class="k">def</span> <span class="nf">make_sound</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span><span class="w"> ++</span> <span class="k">def</span><span class="w"> </span><span class="nf">make_sound</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span><span class="w"> + </span> <span class="nb">print</span><span class="p">(</span><span class="s1">'Ruff!'</span><span class="p">)</span><span class="w"> + + </span><span class="n">dog</span> <span class="o">=</span> <span class="n">Dog</span><span class="p">(</span><span class="s1">'Fido'</span><span class="p">)</span></code></pre> diff --git a/dev-python/readme-renderer/readme-renderer-44.0.ebuild b/dev-python/readme-renderer/readme-renderer-44.0.ebuild index 0951c3aac571..8cbccf7ea1cd 100644 --- a/dev-python/readme-renderer/readme-renderer-44.0.ebuild +++ b/dev-python/readme-renderer/readme-renderer-44.0.ebuild @@ -27,3 +27,7 @@ RDEPEND=" distutils_enable_tests pytest DOCS=( README.rst ) +PATCHES=( + # https://github.com/pypa/readme_renderer/pull/325 + "${FILESDIR}/${P}-test.patch" +) diff --git a/dev-python/selenium/selenium-4.33.0.ebuild b/dev-python/selenium/selenium-4.33.0-r1.ebuild index d1c5bd987a95..ff644b178cbc 100644 --- a/dev-python/selenium/selenium-4.33.0.ebuild +++ b/dev-python/selenium/selenium-4.33.0-r1.ebuild @@ -35,15 +35,10 @@ RESTRICT="!test? ( test )" RDEPEND=" >=dev-python/certifi-2025.4.26[${PYTHON_USEDEP}] - <dev-python/trio-1[${PYTHON_USEDEP}] >=dev-python/trio-0.30[${PYTHON_USEDEP}] - <dev-python/trio-websocket-1[${PYTHON_USEDEP}] >=dev-python/trio-websocket-0.12.2[${PYTHON_USEDEP}] - <dev-python/typing-extensions-5[${PYTHON_USEDEP}] >=dev-python/typing-extensions-4.13.2[${PYTHON_USEDEP}] - <dev-python/urllib3-3[${PYTHON_USEDEP}] >=dev-python/urllib3-2.4.0[${PYTHON_USEDEP}] - <dev-python/websocket-client-2[${PYTHON_USEDEP}] >=dev-python/websocket-client-1.8.0[${PYTHON_USEDEP}] " BDEPEND=" @@ -73,6 +68,8 @@ 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 if use test; then cd "${WORKDIR}/${TEST_P}" || die diff --git a/dev-python/setuptools/Manifest b/dev-python/setuptools/Manifest index fd78e9fe49d7..87c413a46546 100644 --- a/dev-python/setuptools/Manifest +++ b/dev-python/setuptools/Manifest @@ -1,3 +1,4 @@ DIST setuptools-79.0.1.tar.gz 1367909 BLAKE2B d495a22753400b3b0ef71423e2c9b5adaad1a065d1f9638b5da8161b29c453495701c3efaa3abd2482777e186ba992bd7b57090dfc711d9cdfdaa8254616a8ff SHA512 5b68d7cc775f4318e178f7d7f69c60a01b1abc607411e88c88e3507a08bd85eed241b915d4be5f3ada90df4b68718056c2ba032943c1f53fe68d171c7d728179 DIST setuptools-80.4.0.tar.gz 1315008 BLAKE2B e41541fdd6e6adad6ed2f39f2c344c944336e89c24b6d9de9984c8a0234c61dba05b15df805639d380e840b0a15b98a3998c251b764340b5251624827be0934a SHA512 d4d55d9f7bdecbf26e3de6e5a99245db4b69a203a37475539ce4a3b8c6e6b9f1c47f5dc29b4d6a4dc971cabc6714ae7bc0a55f99e214d9402b47bb3dd89b58a4 DIST setuptools-80.8.0.tar.gz 1319720 BLAKE2B 0416a838d4806c646b6c957f120c0ea265b63429142de9ffa2708233f55500055f1fd5b8b8760950a73eb348ecbec2168c35d3beb1b3888de2e6df85913f5702 SHA512 e2b54c43b0925a911aee7738ca71e62e448ac5732332b375ebf5b55aeda1abfb59b06afbb40662d37b9a65f499b5a64ee2878f28e915059d4c7d0a61d408e8a1 +DIST setuptools-80.9.0.tar.gz 1319958 BLAKE2B ab367912eec92b0d1251916d09c1dd2e311767eec87225beaff870dff923b47ba1732d2f7393b7d9e55d1ff1249c612e4403019e0021048951f9fc3b775c04c9 SHA512 36eb1f219d29c6b9e135936bde2001ad70a971c8069cd0175d3a5325b450e6843a903d3f70043c9f534768ebeab8ab0c544b8f44456555d333f1ed72daa5c18b diff --git a/dev-python/setuptools/setuptools-80.9.0.ebuild b/dev-python/setuptools/setuptools-80.9.0.ebuild new file mode 100644 index 000000000000..8b8c38e414b5 --- /dev/null +++ b/dev-python/setuptools/setuptools-80.9.0.ebuild @@ -0,0 +1,130 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +# please bump dev-python/ensurepip-setuptools along with this package! + +DISTUTILS_USE_PEP517=standalone +PYTHON_TESTED=( python3_{9,10,11,12,13} pypy3 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) +PYTHON_REQ_USE="xml(+)" + +inherit distutils-r1 pypi + +DESCRIPTION="Collection of extensions to Distutils" +HOMEPAGE=" + https://github.com/pypa/setuptools/ + https://pypi.org/project/setuptools/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-python/jaraco-collections[${PYTHON_USEDEP}] + >=dev-python/jaraco-functools-4[${PYTHON_USEDEP}] + >=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}] + >=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}] + >=dev-python/packaging-24.2[${PYTHON_USEDEP}] + >=dev-python/platformdirs-4.2.2[${PYTHON_USEDEP}] + >=dev-python/wheel-0.44.0[${PYTHON_USEDEP}] +" +BDEPEND=" + ${RDEPEND} + test? ( + $(python_gen_cond_dep ' + >=dev-python/build-1.0.3[${PYTHON_USEDEP}] + >=dev-python/ini2toml-0.14[${PYTHON_USEDEP}] + >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] + >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-path-3.7.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-test-5.5[${PYTHON_USEDEP}] + dev-python/pip[${PYTHON_USEDEP}] + dev-python/pyproject-hooks[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + >=dev-python/pytest-home-0.5[${PYTHON_USEDEP}] + dev-python/pytest-subprocess[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] + >=dev-python/virtualenv-20[${PYTHON_USEDEP}] + ' "${PYTHON_TESTED[@]}") + ) +" +# setuptools-scm is here because installing plugins apparently breaks stuff at +# runtime, so let's pull it early. See bug #663324. +# +# trove-classifiers are optionally used in validation, if they are +# installed. Since we really oughtn't block them, let's always enforce +# the newest version for the time being to avoid errors. +# https://github.com/pypa/setuptools/issues/4459 +PDEPEND=" + dev-python/setuptools-scm[${PYTHON_USEDEP}] + >=dev-python/trove-classifiers-2024.10.16[${PYTHON_USEDEP}] +" + +src_prepare() { + local PATCHES=( + # TODO: remove this when we're 100% PEP517 mode + "${FILESDIR}/setuptools-62.4.0-py-compile.patch" + # https://github.com/abravalheri/validate-pyproject/pull/221 + "${FILESDIR}/setuptools-75.6.0-disable-trove-classifiers.patch" + ) + + distutils-r1_src_prepare + + # breaks tests + sed -i -e '/--import-mode/d' pytest.ini || die + + # remove bundled dependencies + rm -r */_vendor || die +} + +python_test() { + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + return + fi + + local EPYTEST_DESELECT=( + # network + setuptools/tests/integration/test_pbr.py::test_pbr_integration + setuptools/tests/test_build_meta.py::test_legacy_editable_install + setuptools/tests/test_develop.py::TestNamespaces::test_namespace_package_importable + setuptools/tests/test_distutils_adoption.py + setuptools/tests/test_editable_install.py + setuptools/tests/test_virtualenv.py::test_no_missing_dependencies + setuptools/tests/test_virtualenv.py::test_test_command_install_requirements + # TODO + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors + # expects bundled deps in virtualenv + setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist + setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel + # fails if python-xlib is installed + setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts + # TODO, probably some random package + setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass + # broken by unbundling + setuptools/tests/test_setuptools.py::test_wheel_includes_vendored_metadata + # fails on normalized metadata, perhaps different dep version? + setuptools/tests/test_build_meta.py::TestBuildMetaBackend::test_build_with_pyproject_config + # TODO + setuptools/tests/test_sdist.py::test_sanity_check_setuptools_own_sdist + # relies on -Werror + setuptools/_static.py::setuptools._static.Dict + setuptools/_static.py::setuptools._static.List + setuptools/tests/test_bdist_egg.py::Test::test_bdist_egg + # TODO + setuptools/dist.py::setuptools.dist.Distribution._find_pattern + ) + + local EPYTEST_XDIST=1 + local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH} + epytest -o tmp_path_retention_policy=all \ + -m "not uses_network" setuptools +} diff --git a/dev-python/sqlglot/Manifest b/dev-python/sqlglot/Manifest index 15a0be193cda..5b22a767e6be 100644 --- a/dev-python/sqlglot/Manifest +++ b/dev-python/sqlglot/Manifest @@ -6,3 +6,5 @@ DIST sqlglot-26.19.0-crates.tar.xz 8327388 BLAKE2B 69213d11940f9d4e743b169ef831b DIST sqlglot-26.19.0.tar.gz 5366769 BLAKE2B 69baaf162cd83814facf4ab955af8a4f941f3c20d3d2d7babb90249ee4e3ae95096bf02fcf39bf10eeff2b5e9a4c1c1789ea397b32ee2b8413d8e5948d40a508 SHA512 1aa839a43f9acdea5a45ba0c6fea473ee42d97817c51a0b106f2766fe05b5a8ac4863297649c8ab98f6db53ffdc0d00d1a3ec2fc727532d04412bdb2c8516eb6 DIST sqlglot-26.20.0-crates.tar.xz 8327388 BLAKE2B 69213d11940f9d4e743b169ef831b8b52a771f012e247570cf0703580a14af435d4d033b4b3ddfca6f4022b741261a24f3b47e5137de644d863714006520f857 SHA512 5de0781c54265b369e5e46b7cfbcc04a3118aa8d1323bff14f2841c95d471f545c923eedb88dbbb81a910801c5a505ff37a25701af936c06cf55a1659cd8822e DIST sqlglot-26.20.0.tar.gz 5367894 BLAKE2B 079f8d305a075a48d07966d01be6c200c3e7f0703fd99e2d7f572d755a0b01c10d90721ce022dcf26efbf37862436be807efc97f4c0356e28dee720bcba88793 SHA512 5ead69e2a41706ab94f17b817e55db2bc47a47aee7e49a1a53064c0525bf193c5ff3f0f6dbf2dc5734b261426757a94bebfa68aded804be2921de98b0ecfb6e9 +DIST sqlglot-26.21.0-crates.tar.xz 8327388 BLAKE2B 69213d11940f9d4e743b169ef831b8b52a771f012e247570cf0703580a14af435d4d033b4b3ddfca6f4022b741261a24f3b47e5137de644d863714006520f857 SHA512 5de0781c54265b369e5e46b7cfbcc04a3118aa8d1323bff14f2841c95d471f545c923eedb88dbbb81a910801c5a505ff37a25701af936c06cf55a1659cd8822e +DIST sqlglot-26.21.0.tar.gz 5368779 BLAKE2B 7db10b620179b5ec6e4a5b5af25764ab7fd3ed9ccd4d437f590c28e4f3cbc1853075e70e75d708ec92149ede85cc0c7ac4b13e59dd7e9bc853a0e18b64a02a8e SHA512 d4cd176207b63ea7099980465b33314496f080eaf10a97f49f373a1479abea648694a4145998221f7c609ea140e19063440edb5d547c003d70ce30daeb778359 diff --git a/dev-python/sqlglot/sqlglot-26.21.0.ebuild b/dev-python/sqlglot/sqlglot-26.21.0.ebuild new file mode 100644 index 000000000000..745ae109fd13 --- /dev/null +++ b/dev-python/sqlglot/sqlglot-26.21.0.ebuild @@ -0,0 +1,96 @@ +# Copyright 2023-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CRATES="" +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9,10,11,12,13} ) + +CARGO_OPTIONAL=1 + +inherit cargo distutils-r1 pypi optfeature + +DESCRIPTION="An easily customizable SQL parser and transpiler" +HOMEPAGE=" + https://sqlglot.com/ + https://github.com/tobymao/sqlglot/ + https://pypi.org/project/sqlglot/ +" +SRC_URI+=" + native-extensions? ( + https://github.com/gentoo-crate-dist/sqlglot/releases/download/v${PV}/${P}-crates.tar.xz + ) +" + +LICENSE="MIT" +LICENSE+=" native-extensions? (" +# Dependent crate licenses +LICENSE+=" + Apache-2.0 Apache-2.0-with-LLVM-exceptions MIT Unicode-DFS-2016 +" +LICENSE+=" )" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="+native-extensions" + +BDEPEND=" + native-extensions? ( + ${RUST_DEPEND} + dev-util/maturin[${PYTHON_USEDEP}] + ) + test? ( + dev-python/pytz[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/sqlglotrs/sqlglotrs.*.so" + +pkg_setup() { + use native-extensions && rust_pkg_setup +} + +src_unpack() { + cargo_src_unpack +} + +python_compile() { + distutils-r1_python_compile + + if use native-extensions; then + local DISTUTILS_USE_PEP517=maturin + local DISTUTILS_UPSTREAM_PEP517=maturin + cd sqlglotrs || die + distutils-r1_python_compile + cd - >/dev/null || die + fi +} + +python_test() { + local EPYTEST_DESELECT=( + # timing, sigh + # https://github.com/tobymao/sqlglot/issues/3961 + tests/test_generator.py::TestGenerator::test_generate_nested_binary + ) + local EPYTEST_IGNORE=( + # Tests require pyspark or duckdb which aren't in the tree. + # Pandas would be a requirement normally, but it gets ignored by proxy. + "tests/dataframe/integration/test_dataframe.py" + "tests/dataframe/integration/test_grouped_data.py" + "tests/dataframe/integration/test_session.py" + "tests/test_executor.py" + "tests/test_optimizer.py" + ) + + # make sure not to use an earlier installed version + local -x SQLGLOTRS_TOKENIZER=$(usex native-extensions 1 0) + rm -rf sqlglotrs || die + epytest +} + +pkg_postinst() { + optfeature "simplifying timedelta expressions" dev-python/python-dateutil +} diff --git a/dev-python/tifffile/Manifest b/dev-python/tifffile/Manifest index 893f39a9dcd8..e627de3897d6 100644 --- a/dev-python/tifffile/Manifest +++ b/dev-python/tifffile/Manifest @@ -1,2 +1,3 @@ DIST tifffile-2025.5.10.gh.tar.gz 354939 BLAKE2B 421f30a95286bed985794b35d94aca1ab2c892d08c23cbb8fb6f494500e2c444e03bd3ee1a049f7d50e5d02f2ef8375c056f03405af0863fe407231b34e7a119 SHA512 edeb7367970c8218009a715c3552b28f9cbde8265727835b1eebca1756fa3c902153756adba11be7e096c9e8fa2b88bbbbdc72ad5dd4e4a06379d58ab586d3dd DIST tifffile-2025.5.24.gh.tar.gz 357783 BLAKE2B f2c5bfcef2527f8a1311613386ebd4effc4ed57a04f0beef958b447eeab2c2b7ca4c0f31456504296a4c0dbbfc5fae0d90ab43f424e2501be6cbb9136de4f5e5 SHA512 d5a9fb8db81aff7457c7c7b3516edd248893295bc1f683e1f139d3447617376ffd4e2409c7c43a337bedfc259af1a2083bec00d5326106c46befff9d90d844e0 +DIST tifffile-2025.5.26.gh.tar.gz 358236 BLAKE2B 95a6b9e8d9419f539b47df7601227139b61fd889eb71455c118a8308cd1c02e1ac1ad8ec00fc413413254e96be1377a95b2142c45401fb91429021d1ce42e31b SHA512 4915c5a4ae544c2d3a96b9f928112ff662bf8709ecd4d29605ba51fd24ccf970a26b0bb660acbf33157a58470eef90f8e56a31489522c48d70513ddb984606a3 diff --git a/dev-python/tifffile/tifffile-2025.5.26.ebuild b/dev-python/tifffile/tifffile-2025.5.26.ebuild new file mode 100644 index 000000000000..7e61f5160c1b --- /dev/null +++ b/dev-python/tifffile/tifffile-2025.5.26.ebuild @@ -0,0 +1,47 @@ +# Copyright 2021-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 + +DESCRIPTION="Read and write TIFF files" +HOMEPAGE=" + https://pypi.org/project/tifffile/ + https://github.com/cgohlke/tifffile/ + https://www.cgohlke.com/ +" +SRC_URI=" + https://github.com/cgohlke/tifffile/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + >=dev-python/numpy-1.19.2[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/defusedxml[${PYTHON_USEDEP}] + >=dev-python/fsspec-2021.5.0[${PYTHON_USEDEP}] + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/xarray[${PYTHON_USEDEP}] + ) +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_test() { + local -x SKIP_LARGE=1 + local -x SKIP_HTTP=1 + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest +} diff --git a/dev-python/websockify/Manifest b/dev-python/websockify/Manifest index 845351217bc0..3b261dd823d7 100644 --- a/dev-python/websockify/Manifest +++ b/dev-python/websockify/Manifest @@ -1 +1,2 @@ DIST websockify-0.12.0.gh.tar.gz 56839 BLAKE2B d330f534dd69c186b14b14c5f29d2b4f86c1fc444fa887c04b2b9eb2beed2ed0895db029acbcd84714ce2fd6da30cc306cef4c4bb836e31a31f10dbff6dc3abd SHA512 616619a27b00af6621d9b2e3be415ff958fc226a08714302688b76690976805a22c120ff7f0eaca3d7f26fd5575971a96b5e27e5d20688c6edbb4eb84b896871 +DIST websockify-0.13.0.gh.tar.gz 57826 BLAKE2B 6555354be6314f2b3c236b57a61b5713ec3898bf77e2f7c3e1dbb1061fc586f67e2f5adb9259772d94ea67de24f4a2141ad6ba4ad1fd319a6b7e311f428a7f74 SHA512 52a6615d7a45ea12015c90e3e50fcf7338a2a67412c44bd6da4d039ebc2edc8ce1bd7a1cee977f7e2b76aaa6dccdb601851a0b9a2f49af53081c2e5b296b3062 diff --git a/dev-python/websockify/websockify-0.13.0.ebuild b/dev-python/websockify/websockify-0.13.0.ebuild new file mode 100644 index 000000000000..c480a4b48fbf --- /dev/null +++ b/dev-python/websockify/websockify-0.13.0.ebuild @@ -0,0 +1,37 @@ +# 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 + +DESCRIPTION="WebSockets support for any application/server" +HOMEPAGE=" + https://github.com/novnc/websockify/ + https://pypi.org/project/websockify/ +" +SRC_URI=" + https://github.com/novnc/websockify/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="LGPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv ~x86" + +RDEPEND=" + dev-python/jwcrypto[${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/redis[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest + +python_install_all() { + doman docs/${PN}.1 + distutils-r1_python_install_all +} diff --git a/dev-python/zipp/Manifest b/dev-python/zipp/Manifest index 7f6649408309..aff50c4409cf 100644 --- a/dev-python/zipp/Manifest +++ b/dev-python/zipp/Manifest @@ -1 +1,2 @@ DIST zipp-3.21.0.tar.gz 24545 BLAKE2B 3a21098768c54efb1bcb049f25a7b04a16d5f02eacc6e2107dfbc358ec3e595478b407e78fa0d831f5a8f2dadd92287812bc1259db925859aeedc1174378ab2d SHA512 f57489283d979dbeb3234f66f5b6b298876209ba79cf0d7a2562f0ce4747a87fd1494d26a35734c6729620d1edfa3bf8f56769de2ae9576ac9cff074caa39331 +DIST zipp-3.22.0.tar.gz 25257 BLAKE2B b4a6b67b428b696724354b3fcca57b6ecd7a4e65543016e3fbfe7def09fc6125245492edcd37d909c33869118017ec7875f18ef9befe459ead809629c17dae5a SHA512 fcdf53f5058a1036b5a637343d40528373147e480694f85b94d2ca030545169e8bc2271bbd2ad5779eb14841d5dd2630a829192b3ffcefddff956e81d44622a9 diff --git a/dev-python/zipp/zipp-3.22.0.ebuild b/dev-python/zipp/zipp-3.22.0.ebuild new file mode 100644 index 000000000000..4f3f288a8e38 --- /dev/null +++ b/dev-python/zipp/zipp-3.22.0.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Backport of pathlib-compatible object wrapper for zip files" +HOMEPAGE=" + https://github.com/jaraco/zipp/ + https://pypi.org/project/zipp/ +" + +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" + +# big_o is only used in test_complexity, that we ignore +BDEPEND=" + test? ( + dev-python/jaraco-functools[${PYTHON_USEDEP}] + dev-python/jaraco-itertools[${PYTHON_USEDEP}] + dev-python/jaraco-test[${PYTHON_USEDEP}] + dev-python/more-itertools[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +EPYTEST_IGNORE=( + # performance tests are flaky by design + tests/test_complexity.py +) + +src_configure() { + grep -q 'build-backend = "setuptools' pyproject.toml || + die "Upstream changed build-backend, recheck" + # write a custom pyproject.toml to ease setuptools bootstrap + cat > pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "zipp" + version = "${PV}" + description = "Backport of pathlib-compatible object wrapper for zip files" + EOF +} |
