diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2023-08-21 18:13:11 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2023-08-21 18:13:11 +0000 |
| commit | d415ee6e0c05ca5e407d7bc9d5a8dc27a62d06b8 (patch) | |
| tree | 11eb4e13152cd144bac6f6f11b4ae58def84baef /dev-python | |
| parent | d246e137e3f7c313a4146c5928c9d545cdff5508 (diff) | |
| download | baldeagleos-repo-d415ee6e0c05ca5e407d7bc9d5a8dc27a62d06b8.tar.gz baldeagleos-repo-d415ee6e0c05ca5e407d7bc9d5a8dc27a62d06b8.tar.xz baldeagleos-repo-d415ee6e0c05ca5e407d7bc9d5a8dc27a62d06b8.zip | |
Adding metadata
Diffstat (limited to 'dev-python')
48 files changed, 1104 insertions, 594 deletions
diff --git a/dev-python/QtPy/QtPy-2.3.1-r1.ebuild b/dev-python/QtPy/QtPy-2.3.1-r1.ebuild new file mode 100644 index 000000000000..d9168d36b528 --- /dev/null +++ b/dev-python/QtPy/QtPy-2.3.1-r1.ebuild @@ -0,0 +1,218 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_NO_NORMALIZE=1 +PYTHON_COMPAT=( python3_{8,9,10,11} ) + +inherit distutils-r1 virtualx pypi + +DESCRIPTION="Abstraction layer on top of PyQt and PySide with additional custom QWidgets" +HOMEPAGE=" + https://github.com/spyder-ide/qtpy/ + https://pypi.org/project/QtPy/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" + +_IUSE_QT_MODULES=" + designer +gui help multimedia +network opengl positioning + printsupport qml quick serialport +sql svg testlib + webchannel webengine websockets +widgets +xml +" +IUSE="+pyqt5 pyqt6 pyside2 pyside6 ${_IUSE_QT_MODULES}" +unset _IUSE_QT_MODULES + +REQUIRED_USE=" + || ( pyqt5 pyqt6 pyside2 pyside6 ) + python_targets_python3_12? ( !pyside2 !pyside6 ) +" + +# These flags are currently *not* common to the PySide2/6 and PyQt5/6 ebuilds +# Disable them for now, please check periodically if this is still up to date. +# bluetooth? ( pyqt5 only ) +# dbus? ( pyqt5 only ) +# +# 3d? ( pyside2 only ) +# charts? ( pyside2 only ) +# concurrent? ( pyside2 only ) +# datavis? ( pyside2 only ) +# scxml? ( pyside2 only ) +# script? ( pyside2 only ) +# scripttools? ( pyside2 only ) +# +# location? ( pyside2 and pyqt5 only ) +# sensors? ( pyside2 and pyqt5 only ) +# speech? ( pyside2 and pyqt5 only ) +# x11extras? ( pyside2 and pyqt5 only ) +# xmlpatterns? ( pyside2 and pyqt5 only ) + +# WARNING: the obvious solution of using || for PyQt5/pyside2 is not going +# to work. The package only checks whether PyQt5/pyside2 is installed, it does +# not verify whether they have the necessary modules (i.e. satisfy the USE dep). +# +# Webengine is a special case, because PyQt5 provides this in a separate package +# while PySide2 ships it in the same package. +# +# declarative/qml/quick is a special case, because PyQt5 bundles the bindings +# for qml and quick in one flag: declarative PySide2 does not. +# +# The PyQt5 ebuild currently enables xml support unconditionally, the flag is +# added anyway with a (+) to make it future proof if the ebuild were to change +# this behaviour in the future. +# +# The PySide2 ebuild currently enables opengl and serialport support +# unconditionally, the flag is added anyway with a (+) to make it future proof +# if the ebuild were to change this behaviour in the future. +RDEPEND=" + dev-python/packaging[${PYTHON_USEDEP}] + pyqt5? ( + dev-python/PyQt5[${PYTHON_USEDEP}] + dev-python/PyQt5[designer?,gui?,help?,multimedia?,network?,opengl?] + dev-python/PyQt5[positioning?,printsupport?,serialport?,sql?,svg?] + dev-python/PyQt5[testlib?,webchannel?,websockets?,widgets?,xml(+)?] + qml? ( dev-python/PyQt5[declarative] ) + quick? ( dev-python/PyQt5[declarative] ) + webengine? ( dev-python/PyQtWebEngine[${PYTHON_USEDEP}] ) + ) + pyqt6? ( + dev-python/PyQt6[${PYTHON_USEDEP}] + dev-python/PyQt6[designer?,gui?,help?,multimedia?,network?,opengl?] + dev-python/PyQt6[positioning?,printsupport?,qml?,quick?,serialport?,sql?] + dev-python/PyQt6[svg?,testlib?,webchannel?,websockets?,widgets?,xml?] + webengine? ( dev-python/PyQt6-WebEngine[${PYTHON_USEDEP},widgets?,quick?] ) + + ) + pyside2? ( + $(python_gen_cond_dep ' + dev-python/pyside2[${PYTHON_USEDEP}] + dev-python/pyside2[designer?,gui?,help?,multimedia?,network?,opengl(+)?] + dev-python/pyside2[positioning?,printsupport?,qml?,quick?,serialport(+)?] + dev-python/pyside2[sql?,svg?,testlib?,webchannel?,webengine?,websockets?] + dev-python/pyside2[widgets?,xml?] + ' python3_{10..11}) + ) + pyside6? ( + $(python_gen_cond_dep ' + dev-python/pyside6[${PYTHON_USEDEP}] + dev-python/pyside6[designer?,gui?,help?,multimedia?,network?,opengl?] + dev-python/pyside6[positioning?,printsupport?,qml?,quick?,serialport?] + dev-python/pyside6[sql?,svg?,testlib?,webchannel?,webengine?,websockets?] + dev-python/pyside6[widgets?,xml?] + ' python3_{10..11}) + ) +" + +# The QtPy testsuite skips tests for bindings that are not installed, so here we +# ensure that everything is available and all tests are run. Note that not +# all flags are available in PyQt5/PySide2, so some tests are still skipped. +BDEPEND=" + test? ( + dev-python/mock[${PYTHON_USEDEP}] + pyqt5? ( + dev-python/PyQt5[${PYTHON_USEDEP}] + dev-python/PyQt5[bluetooth,dbus,declarative,designer,gui,help,location] + dev-python/PyQt5[multimedia,network,opengl,positioning,printsupport] + dev-python/PyQt5[sensors,serialport,speech(-),sql,svg,testlib,webchannel] + dev-python/PyQt5[websockets,widgets,x11extras,xml(+),xmlpatterns] + dev-python/PyQtWebEngine[${PYTHON_USEDEP}] + ) + pyqt6? ( + dev-python/PyQt6[${PYTHON_USEDEP}] + dev-python/PyQt6[dbus,designer,gui,help,multimedia,network,opengl] + dev-python/PyQt6[positioning,printsupport,qml,quick,quick3d,serialport] + dev-python/PyQt6[sql,ssl,svg,testlib,webchannel,websockets,widgets,xml] + dev-python/PyQt6-WebEngine[${PYTHON_USEDEP},widgets,quick] + ) + pyside2? ( + $(python_gen_cond_dep ' + dev-python/pyside2[${PYTHON_USEDEP}] + dev-python/pyside2[3d,charts,concurrent,datavis,designer,gui,help] + dev-python/pyside2[location,multimedia,network,opengl(+),positioning] + dev-python/pyside2[printsupport,qml,quick,script,scripttools,scxml] + dev-python/pyside2[sensors,serialport(+),speech,sql,svg,testlib] + dev-python/pyside2[webchannel,webengine,websockets,widgets,x11extras] + dev-python/pyside2[xml,xmlpatterns] + ' python3_{10..11}) + ) + pyside6? ( + $(python_gen_cond_dep ' + dev-python/pyside6[${PYTHON_USEDEP}] + dev-python/pyside6[concurrent,dbus,designer,gui,help,multimedia] + dev-python/pyside6[network,opengl,positioning,printsupport,qml] + dev-python/pyside6[quick,quick3d,serialport,sql,svg,testlib] + dev-python/pyside6[webchannel,webengine,websockets,widgets,xml] + ' python3_{10..11}) + ) + ) +" + +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + sed -i -e 's:--cov=qtpy --cov-report=term-missing::' pytest.ini || die + # Disable Qt for Python implementations that are not selected + if ! use pyqt5; then + sed -i -e "s/from PyQt5.QtCore import/raise ImportError #/" qtpy/__init__.py || die + fi + if ! use pyqt6; then + sed -i -e "s/from PyQt6.QtCore import/raise ImportError #/" qtpy/__init__.py || die + fi + if ! use pyside2; then + sed -i -e "s/from PySide2 import/raise ImportError #/" qtpy/__init__.py || die + sed -i -e "s/from PySide2.QtCore import/raise ImportError #/" qtpy/__init__.py || die + fi + if ! use pyside6; then + sed -i -e "s/from PySide6 import/raise ImportError #/" qtpy/__init__.py || die + sed -i -e "s/from PySide6.QtCore import/raise ImportError #/" qtpy/__init__.py || die + fi +} + +python_test() { + # Test for each enabled Qt4Python target. + # Deselect the other targets, their test fails if we specify QT_API + # or if we have disabled their corresponding inherit in __init__.py above + if use pyqt5; then + einfo "Testing with ${EPYTHON} and QT_API=PyQt5" + QT_API="pyqt5" virtx epytest \ + --deselect qtpy/tests/test_main.py::test_qt_api_environ[PySide2] \ + --deselect qtpy/tests/test_main.py::test_qt_api_environ[PyQt6] \ + --deselect qtpy/tests/test_main.py::test_qt_api_environ[PySide6] + fi + if use pyqt6; then + einfo "Testing with ${EPYTHON} and QT_API=PyQt6" + QT_API="pyqt6" virtx epytest \ + --deselect qtpy/tests/test_main.py::test_qt_api_environ[PySide2] \ + --deselect qtpy/tests/test_main.py::test_qt_api_environ[PyQt5] \ + --deselect qtpy/tests/test_main.py::test_qt_api_environ[PySide6] \ + --deselect qtpy/tests/test_qtsensors.py::test_qtsensors + # Qt6Sensors not yet packaged and enabled in PyQt6 ebuild + fi + if use pyside2; then + einfo "Testing with ${EPYTHON} and QT_API=PySide2" + QT_API="pyside2" virtx epytest \ + --deselect qtpy/tests/test_main.py::test_qt_api_environ[PyQt5] \ + --deselect qtpy/tests/test_main.py::test_qt_api_environ[PyQt6] \ + --deselect qtpy/tests/test_main.py::test_qt_api_environ[PySide6] + fi + if use pyside6; then + einfo "Testing with ${EPYTHON} and QT_API=PySide6" + QT_API="pyside6" virtx epytest \ + --deselect qtpy/tests/test_main.py::test_qt_api_environ[PySide2] \ + --deselect qtpy/tests/test_main.py::test_qt_api_environ[PyQt5] \ + --deselect qtpy/tests/test_main.py::test_qt_api_environ[PyQt6] \ + --deselect qtpy/tests/test_qtsensors.py::test_qtsensors + # Qt6Sensors not yet packaged and enabled in PySide6 ebuild + fi +} + +pkg_postinst() { + elog "When multiple Qt4Python targets are enabled QtPy will default to" + elog "the first enabled target in this order: PyQt5 PySide2 PyQt6 PySide6." + elog "This can be overridden with the QT_API environment variable." +} diff --git a/dev-python/ansible-compat/Manifest b/dev-python/ansible-compat/Manifest index b20e2f982461..257ae16e318c 100644 --- a/dev-python/ansible-compat/Manifest +++ b/dev-python/ansible-compat/Manifest @@ -1,3 +1,4 @@ DIST ansible-compat-4.1.2.tar.gz 66934 BLAKE2B 08d17ce6f83b2ac2fc08fab1b3ef54742e75eb0236792fdcf2791a521bc154184d92f6d1f25b241ac6c524352f9cd39be8d3c74d414625a315a468aeb8ce09a8 SHA512 ef6ad4daf7c565de5b1ef1a5ad204e2b8c938f81ef0a736a1af660836ee557d5c88fc06eced2a8a9fb0c6ac5b48cda243052d5ae0b0f634653c9d41211739e64 DIST ansible-compat-4.1.5.tar.gz 68562 BLAKE2B b28b6e5185b29a55d452e9c72636b31a1a35c68f207cc07376fafd0a70335966d06f927a803582b715b29c090a80aa5aa2663cba54221cb4d2dbcd9a11ec5a7a SHA512 6da0bab56237a6447462ed9ef528711eb4c998de2732ec021e8257d2baf6cbb1e1435707440b4c0d122fb4f938c855693bcd555e147613f230105e3af74c00a6 DIST ansible-compat-4.1.6.tar.gz 69258 BLAKE2B 6dbea06a9a41451978a115614b87a880b7fb572251163345a8576ecefb5a5147919af202b0161e5b263fc94f593fa3daea9f5af0196c25ce2f14db9a64ba89a7 SHA512 fb3105827fecbd93e0a618a7a667c90afe0576e218f4dcfe6679df746ba56fcead4e6c56ce69a9b3e614b2d814141366f77ebb339fc9d5e6297d21b512588110 +DIST ansible-compat-4.1.7.tar.gz 69900 BLAKE2B c8549573d4a4325579b6026b6b5fad5fe0abb0fdcf07a4c8e0699c040a97409632202f0a38703a113f9a86f68328642d8d5c4b897e3601a13737bc2a4deb4d88 SHA512 b3175573113a3df37923e582c191dd5f4522c3a2171cc93b186e49d5ca6baa2fd8b2e7af2e9457bb21b5bd6df6c9f82fccc10b5e2bfeda84c890c4cbc37fafb4 diff --git a/dev-python/ansible-compat/ansible-compat-4.1.7.ebuild b/dev-python/ansible-compat/ansible-compat-4.1.7.ebuild new file mode 100644 index 000000000000..45f1e04c18ea --- /dev/null +++ b/dev-python/ansible-compat/ansible-compat-4.1.7.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_NO_NORMALIZE=1 +PYTHON_COMPAT=( python3_{8,9,10,11} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Contains functions that facilitate working with various versions of Ansible" +HOMEPAGE=" + https://pypi.org/project/ansible-compat/ + https://github.com/ansible/ansible-compat/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~riscv" + +RDEPEND=" + >=app-admin/ansible-core-2.12[${PYTHON_USEDEP}] + >=dev-python/jsonschema-4.6.0[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + >=dev-python/subprocess-tee-0.4.1[${PYTHON_USEDEP}] +" +BDEPEND=" + >=dev-python/setuptools-scm-7.0.5[${PYTHON_USEDEP}] + test? ( + dev-python/flaky[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/pytest-plus[${PYTHON_USEDEP}] + ) +" + +# All these tests attempt to connect to galaxy.ansible.com +EPYTEST_DESELECT=( + test/test_runtime.py::test_install_collection + test/test_runtime.py::test_install_collection_dest + test/test_runtime.py::test_prepare_environment_with_collections + test/test_runtime.py::test_prerun_reqs_v1 + test/test_runtime.py::test_prerun_reqs_v2 + test/test_runtime.py::test_require_collection_no_cache_dir + test/test_runtime.py::test_require_collection_wrong_version + test/test_runtime.py::test_require_collection + test/test_runtime.py::test_upgrade_collection + test/test_runtime_example.py::test_runtime +) + +distutils_enable_tests pytest diff --git a/dev-python/cython-test-exception-raiser/cython-test-exception-raiser-1.0.2-r1.ebuild b/dev-python/cython-test-exception-raiser/cython-test-exception-raiser-1.0.2-r1.ebuild index 6c1aa0521283..ca803c86773c 100644 --- a/dev-python/cython-test-exception-raiser/cython-test-exception-raiser-1.0.2-r1.ebuild +++ b/dev-python/cython-test-exception-raiser/cython-test-exception-raiser-1.0.2-r1.ebuild @@ -12,13 +12,17 @@ inherit distutils-r1 DESCRIPTION="A trivial extension that just raises an exception (for testing)" HOMEPAGE=" https://pypi.org/project/cython-test-exception-raiser/ - https://github.com/twisted/cython-test-exception-raiser/" + https://github.com/twisted/cython-test-exception-raiser/ +" SRC_URI=" https://github.com/twisted/cython-test-exception-raiser/archive/v${PV}.tar.gz - -> ${P}.gh.tar.gz" + -> ${P}.gh.tar.gz +" LICENSE="MIT" SLOT="0" KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86" -BDEPEND="dev-python/cython[${PYTHON_USEDEP}]" +BDEPEND=" + dev-python/cython[${PYTHON_USEDEP}] +" diff --git a/dev-python/cython/Manifest b/dev-python/cython/Manifest index 17c57826362d..b9c9a2aca0d2 100644 --- a/dev-python/cython/Manifest +++ b/dev-python/cython/Manifest @@ -1,4 +1,2 @@ -DIST cython-0.29.34.gh.tar.gz 2114639 BLAKE2B c5f70fd3e6074d9030a1035bc98d71b703e0f391b61bd91f3ffba2c35a29a98b9ff8ef2047e7c75743ead280f0f06a924abe84ae8bf7696b65da662a3c58ee0c SHA512 51679d1304d0f87dfb51e60c753f1ce60027f855a91cf130a5dcf84353884a7dcf09c01701945ae2f9173f8f095890c377d5faac28c2f01d7f764609c0130411 -DIST cython-0.29.35.gh.tar.gz 2115190 BLAKE2B ac23abbd2b560ee52a79840d995a4cf36ddb3a8705b9327010f1ad6add8028185c15703efcc1d59b581d65b5de38e123c0f07c36fe6ffe54a6efee7512161344 SHA512 35d679d94e1f731e004b83fb4ae0d569703b0800c913012308146b1c54463ce12cb1cf3733e24162fb357f179444c5ca31108a37850e6c749ddebac5175119f5 DIST cython-0.29.36.gh.tar.gz 2115333 BLAKE2B 6d43779c7222ff65d7de3a35ec18ef636480807d53480a8f94cc8c92d462fcc2f4d201a3bbf6e840a11fd33025e32c53f85626b05c131d10eed2859cdca7eb2d SHA512 a086fe1a11290cd3c870b891e61a0a0e2595bab9c26888024a758b6950c07059346d682fa9349e46c0af89805abbdd750059b3189960b8ce18007dfb5eb4391a DIST cython-3.0.0.gh.tar.gz 2713478 BLAKE2B 16be50b463cf155417fee02b4529bbde8c4402bac0098ddf2cb05e33ac4c5b455bf7595b046b2bc6edcc8121f2c6be3b7af60c3c721a37bebcf4c654cd41a43f SHA512 a9bf6f0a78accd0624bc2a61329541d97d60257ae3a6b6601f73bd9122427a3d460129b317f000d3061a4dfe3e6a6de59342354862ded13e85c7eb622ee39f9a diff --git a/dev-python/cython/cython-0.29.34.ebuild b/dev-python/cython/cython-0.29.34.ebuild deleted file mode 100644 index d571ce821d83..000000000000 --- a/dev-python/cython/cython-0.29.34.ebuild +++ /dev/null @@ -1,92 +0,0 @@ -# Copyright 1999-2023 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_{8,9,10,11} pypy3 ) -PYTHON_REQ_USE="threads(+)" - -inherit distutils-r1 toolchain-funcs elisp-common - -DESCRIPTION="A Python to C compiler" -HOMEPAGE=" - https://cython.org/ - https://github.com/cython/cython/ - https://pypi.org/project/Cython/ -" -SRC_URI=" - https://github.com/cython/cython/archive/${PV}.tar.gz - -> ${P}.gh.tar.gz -" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="emacs test" -RESTRICT="!test? ( test )" - -RDEPEND=" - emacs? ( >=app-editors/emacs-23.1:* ) -" -BDEPEND=" - ${RDEPEND} - test? ( - $(python_gen_cond_dep ' - dev-python/numpy[${PYTHON_USEDEP}] - ' python3_{8..10}) - ) -" - -PATCHES=( - "${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch" - "${FILESDIR}/${PN}-0.29.23-test_exceptions-py310.patch" - "${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch" -) - -SITEFILE=50cython-gentoo.el - -distutils_enable_sphinx docs - -python_compile() { - # Python gets confused when it is in sys.path before build. - local -x PYTHONPATH= - - distutils-r1_python_compile -} - -python_compile_all() { - use emacs && elisp-compile Tools/cython-mode.el -} - -python_test() { - if has "${EPYTHON}" pypy3 python3.11; then - einfo "Skipping tests on ${EPYTHON} (xfail)" - return - fi - - tc-export CC - # https://github.com/cython/cython/issues/1911 - local -x CFLAGS="${CFLAGS} -fno-strict-overflow" - "${PYTHON}" runtests.py -vv --work-dir "${BUILD_DIR}"/tests || - die "Tests fail with ${EPYTHON}" -} - -python_install_all() { - local DOCS=( CHANGES.rst README.rst ToDo.txt USAGE.txt ) - distutils-r1_python_install_all - - if use emacs; then - elisp-install ${PN} Tools/cython-mode.* - elisp-site-file-install "${FILESDIR}/${SITEFILE}" - fi -} - -pkg_postinst() { - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/dev-python/cython/cython-0.29.35.ebuild b/dev-python/cython/cython-0.29.35.ebuild deleted file mode 100644 index df4f41fc448f..000000000000 --- a/dev-python/cython/cython-0.29.35.ebuild +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=setuptools -PYTHON_TESTED=( python3_{8,9,10,11} ) -# 3.12 not tested yet for https://github.com/cython/cython/issues/5285. -PYTHON_COMPAT=( python3_{8,9,10,11} pypy3 ) -PYTHON_REQ_USE="threads(+)" - -inherit distutils-r1 multiprocessing toolchain-funcs elisp-common - -DESCRIPTION="A Python to C compiler" -HOMEPAGE=" - https://cython.org/ - https://github.com/cython/cython/ - https://pypi.org/project/Cython/ -" -SRC_URI=" - https://github.com/cython/cython/archive/${PV}.tar.gz - -> ${P}.gh.tar.gz -" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="emacs test" -RESTRICT="!test? ( test )" - -RDEPEND=" - emacs? ( >=app-editors/emacs-23.1:* ) -" -BDEPEND=" - ${RDEPEND} - test? ( - $(python_gen_cond_dep ' - dev-python/numpy[${PYTHON_USEDEP}] - ' python3_{10..11}) - ) -" - -PATCHES=( - "${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch" - "${FILESDIR}/${PN}-0.29.23-test_exceptions-py310.patch" - "${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch" -) - -SITEFILE=50cython-gentoo.el - -distutils_enable_sphinx docs - -python_compile() { - # Python gets confused when it is in sys.path before build. - local -x PYTHONPATH= - - distutils-r1_python_compile -} - -python_compile_all() { - use emacs && elisp-compile Tools/cython-mode.el -} - -python_test() { - if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then - einfo "Skipping tests on ${EPYTHON} (xfail)" - return - fi - - tc-export CC - # https://github.com/cython/cython/issues/1911 - local -x CFLAGS="${CFLAGS} -fno-strict-overflow" - "${PYTHON}" runtests.py -vv -j "$(makeopts_jobs)" --work-dir "${BUILD_DIR}"/tests || - die "Tests fail with ${EPYTHON}" -} - -python_install_all() { - local DOCS=( CHANGES.rst README.rst ToDo.txt USAGE.txt ) - distutils-r1_python_install_all - - if use emacs; then - elisp-install ${PN} Tools/cython-mode.* - elisp-site-file-install "${FILESDIR}/${SITEFILE}" - fi -} - -pkg_postinst() { - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/dev-python/cython/cython-0.29.36.ebuild b/dev-python/cython/cython-0.29.36.ebuild index ad27a0baae7c..400ffcd95db4 100644 --- a/dev-python/cython/cython-0.29.36.ebuild +++ b/dev-python/cython/cython-0.29.36.ebuild @@ -25,7 +25,7 @@ SRC_URI=" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="emacs test" RESTRICT="!test? ( test )" diff --git a/dev-python/cython/cython-3.0.0-r1.ebuild b/dev-python/cython/cython-3.0.0-r1.ebuild index 75e1d42f7574..97070088d3e0 100644 --- a/dev-python/cython/cython-3.0.0-r1.ebuild +++ b/dev-python/cython/cython-3.0.0-r1.ebuild @@ -26,7 +26,7 @@ S=${WORKDIR}/${MY_P} LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~alpha amd64 ~arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ~ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" IUSE="test" RESTRICT="!test? ( test )" diff --git a/dev-python/cython/cython-3.0.0.ebuild b/dev-python/cython/cython-3.0.0.ebuild deleted file mode 100644 index 5c2d2b00d23c..000000000000 --- a/dev-python/cython/cython-3.0.0.ebuild +++ /dev/null @@ -1,84 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=setuptools -PYTHON_TESTED=( python3_{8,9,10,11} ) -PYTHON_COMPAT=( python3_{8,9,10,11} pypy3 ) -PYTHON_REQ_USE="threads(+)" - -inherit distutils-r1 multiprocessing toolchain-funcs - -MY_P=${P/_rc/rc} -DESCRIPTION="A Python to C compiler" -HOMEPAGE=" - https://cython.org/ - https://github.com/cython/cython/ - https://pypi.org/project/Cython/ -" -SRC_URI=" - https://github.com/cython/cython/archive/${PV/_rc/rc}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="test" -RESTRICT="!test? ( test )" - -BDEPEND=" - ${RDEPEND} - test? ( - $(python_gen_cond_dep ' - dev-python/numpy[${PYTHON_USEDEP}] - ' python3_{10..11}) - ) -" - -PATCHES=( - "${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch" - "${FILESDIR}/${PN}-0.29.23-test_exceptions-py310.patch" - "${FILESDIR}/${PN}-0.29.23-pythran-parallel-install.patch" -) - -distutils_enable_sphinx docs \ - dev-python/jinja \ - dev-python/sphinx-issues \ - dev-python/sphinx-tabs - -python_compile() { - # Python gets confused when it is in sys.path before build. - local -x PYTHONPATH= - - distutils-r1_python_compile -} - -python_test() { - if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then - einfo "Skipping tests on ${EPYTHON} (xfail)" - return - fi - - # Needed to avoid confusing cache tests - unset CYTHON_FORCE_REGEN - - tc-export CC - # https://github.com/cython/cython/issues/1911 - local -x CFLAGS="${CFLAGS} -fno-strict-overflow" - "${PYTHON}" runtests.py \ - -vv \ - -j "$(makeopts_jobs)" \ - --work-dir "${BUILD_DIR}"/tests \ - --no-examples \ - --no-code-style \ - || die "Tests fail with ${EPYTHON}" -} - -python_install_all() { - local DOCS=( CHANGES.rst README.rst ToDo.txt USAGE.txt ) - distutils-r1_python_install_all -} diff --git a/dev-python/fritzconnection/Manifest b/dev-python/fritzconnection/Manifest index de84719de25c..bb53abc10a08 100644 --- a/dev-python/fritzconnection/Manifest +++ b/dev-python/fritzconnection/Manifest @@ -1,2 +1,3 @@ DIST fritzconnection-1.12.2.gh.tar.gz 157170 BLAKE2B 9d924ad3146361d9301f10154152cdf98987572880b79052bf9f2fa427fc8410bacae92e49219dd11372c2cce2d03fb0ffd4c732a45e210a05a0a561ba5fc155 SHA512 a9c62fdaa59f20e7661836888f49cadfc99d192c393f34d4cce59aa9b9a9eda162e25029933854e84de44e08190190f312bb3862d708e79d7cf1ee8496726eab DIST fritzconnection-1.13.0.gh.tar.gz 160654 BLAKE2B e3ed78640a015d2dc785b2e04f32f6d4e81ba88bf4d823cd643e0f4ebc2ec8396c79c8e368012944f5809512a05d6d4715cdf7d0d76e518479a0a77e20350fae SHA512 6776ba37b52a80eee57a77a75f7815491a575ab8a1c36d20633b39d61e8f0fc295c1ec1d20bb6620e43854b954d9fd044e88d0344a10c0b3707fffb3edc733a4 +DIST fritzconnection-1.13.1.gh.tar.gz 160742 BLAKE2B 61ad47e3e8d80bda9f5f9300292f86e83d548362a911376efcaa5ece42ccca04bcf61f09e66a5832bc2da43fabb0d80b80f5d45679633db4196cc8be4a0febff SHA512 0936a33c8ef83606e234858810f936c8df7e217e7ff27a7a03f8cbb0048e9d59d056e8f673ed2652aee033ab32f10fe08b82bab43d9c9830d927a2a0a9b9b129 diff --git a/dev-python/fritzconnection/fritzconnection-1.13.1.ebuild b/dev-python/fritzconnection/fritzconnection-1.13.1.ebuild new file mode 100644 index 000000000000..ad66fb00a93b --- /dev/null +++ b/dev-python/fritzconnection/fritzconnection-1.13.1.ebuild @@ -0,0 +1,50 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11} ) + +inherit distutils-r1 + +DESCRIPTION="Lib/tool to communicate with AVM FRITZ! devices using TR-064 protocol over UPnP" +HOMEPAGE=" + https://github.com/kbr/fritzconnection/ + https://pypi.org/project/fritzconnection/ +" + +LICENSE="MIT" +SLOT="0" + +if [[ "${PV}" == "9999" ]]; then + EGIT_REPO_URI="https://github.com/kbr/fritzconnection" + inherit git-r3 +else + SRC_URI=" + https://github.com/kbr/fritzconnection/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz + " + KEYWORDS="~amd64 ~x86" +fi + +RDEPEND=" + >=dev-python/requests-2.22[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/pytest-mock[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # flaky (relies on time.sleep(0.01) magically being sufficient) + fritzconnection/tests/test_fritzmonitor.py::test_terminate_thread_on_failed_reconnection + ) + + # "routertest" marks tests against live hardware + epytest -m "not routertest" +} diff --git a/dev-python/gst-python/gst-python-1.20.6.ebuild b/dev-python/gst-python/gst-python-1.20.6.ebuild index a6f2d6a4e9b9..0a5628901dd0 100644 --- a/dev-python/gst-python/gst-python-1.20.6.ebuild +++ b/dev-python/gst-python/gst-python-1.20.6.ebuild @@ -13,7 +13,7 @@ SRC_URI="https://gstreamer.freedesktop.org/src/${PN}/${P}.tar.xz" LICENSE="LGPL-2+" SLOT="1.0" -KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux" REQUIRED_USE="${PYTHON_REQUIRED_USE}" RDEPEND="${PYTHON_DEPS} diff --git a/dev-python/hiredis/Manifest b/dev-python/hiredis/Manifest index a3fb3e85b483..247154493dad 100644 --- a/dev-python/hiredis/Manifest +++ b/dev-python/hiredis/Manifest @@ -1,2 +1 @@ -DIST hiredis-py-2.2.3.gh.tar.gz 18214 BLAKE2B cdac5e9790c88657c75be721c4dbc91174a0eb38cdd790076b3ec1f009d43c7aef300bfa7381a10061749cb3bec02d4a488e732f550bea4c62893aabfc0c3222 SHA512 e85032869b6bbbc30f991d83d67a710c04998645517b1ddcfd801ff37bd28f0576a5bdc2986f3526f72da8448986714a79b42a0ab1a5cc6b6bab24f3d98fdce9 DIST hiredis-py-2.3.0.gh.tar.gz 18179 BLAKE2B d87460d3ea75f81f9017a837f44281e7733104e5772ed53dc9471eb18a38b0a9e1298ddb3c78b8d3c5ab7a8e1f71e966bbaa10e06969321e7940b8965ac56b2f SHA512 4e72f71719e9616913e5ed6dc9d2e01ad91d44715231c1eda1a1c6570d75c00be634093712444fc9a86bc6843278ab34c33c7362ffd5b8171f4ff775aaf0c4bd diff --git a/dev-python/hiredis/hiredis-2.2.3.ebuild b/dev-python/hiredis/hiredis-2.2.3.ebuild deleted file mode 100644 index 9600bcc9ecba..000000000000 --- a/dev-python/hiredis/hiredis-2.2.3.ebuild +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright 1999-2023 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_{8,9,10,11} pypy3 ) - -inherit distutils-r1 - -MY_P=hiredis-py-${PV} -DESCRIPTION="Python extension that wraps hiredis" -HOMEPAGE=" - https://github.com/redis/hiredis-py/ - https://pypi.org/project/hiredis/ -" -SRC_URI=" - https://github.com/redis/hiredis-py/archive/v${PV}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv ~sparc x86" - -DEPEND=" - >=dev-libs/hiredis-1.0.0:= -" -RDEPEND=" - ${DEPEND} -" - -PATCHES=( - "${FILESDIR}"/hiredis-2.2.2-system-libs.patch -) - -distutils_enable_tests pytest - -python_test() { - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - rm -rf hiredis || die - epytest -} diff --git a/dev-python/httpbin/httpbin-0.7.0-r5.ebuild b/dev-python/httpbin/httpbin-0.7.0-r5.ebuild index 9bc1724135d5..44b1278bc1ba 100644 --- a/dev-python/httpbin/httpbin-0.7.0-r5.ebuild +++ b/dev-python/httpbin/httpbin-0.7.0-r5.ebuild @@ -16,7 +16,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" RDEPEND=" dev-python/brotlicffi[${PYTHON_USEDEP}] diff --git a/dev-python/identify/Manifest b/dev-python/identify/Manifest index 486a5b3ee20f..99a806db7913 100644 --- a/dev-python/identify/Manifest +++ b/dev-python/identify/Manifest @@ -1 +1,2 @@ DIST identify-2.5.26.gh.tar.gz 101549 BLAKE2B 383c6467436107cf98a667f1db3ab63f42aadff8f51d2f6bedf715dd45590eeb5fe7b3d6572b7704a7ae613d079a22a2d84c86581b7a63b7578807e06034aa70 SHA512 4c17c7f40b14fd45649e0a6b6885e2d96a1ce3cf91fbc1092fdb9b92d7bf2ac35b0c04a24bb3e77f3188a3c8d00f57dbe19ca660e1e08b60cdb60385f340c4bd +DIST identify-2.5.27.gh.tar.gz 101565 BLAKE2B c4b29509d94912b15c35dfbee9b829594dc1953a7f6122cd4955042849686d53a79c7f9049f312226e5e55a148e4b3bc60158e836e9b9a0d5ca2de0cb133a1af SHA512 a604088628b2aeeaf8cb04a91f197bbc567d3c3e17047400201cccae5b168d92ebac26e181b835fa7c18f78d051795d7c25165596c2636f882098f63bac527d6 diff --git a/dev-python/identify/identify-2.5.27.ebuild b/dev-python/identify/identify-2.5.27.ebuild new file mode 100644 index 000000000000..0547ed2debdb --- /dev/null +++ b/dev-python/identify/identify-2.5.27.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11} ) + +inherit distutils-r1 + +DESCRIPTION="File identification library for Python" +HOMEPAGE=" + https://github.com/pre-commit/identify/ + https://pypi.org/project/identify/ +" +SRC_URI=" + https://github.com/pre-commit/${PN}/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86" + +RDEPEND=" + dev-python/ukkonen[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest diff --git a/dev-python/immutabledict/Manifest b/dev-python/immutabledict/Manifest index 1aa463cbefaf..d6c828824449 100644 --- a/dev-python/immutabledict/Manifest +++ b/dev-python/immutabledict/Manifest @@ -1,2 +1 @@ -DIST immutabledict-2.2.5.tar.gz 4316 BLAKE2B 2f251c8409a88cfba741cc9ee2b72d486a7dd8422ca4d841d47246beef506762781106300d9cd4ec8f57115950b09f09bacbb1bc3ceeb0a4b78ef5ba32d3e045 SHA512 3bd94d077f599b6e96a4e17a0d9ecf6365975afe73048f9d9de4df35a8272af1baed264ad84ae6826dd6359ad0d371cd90082b4a064cc6350a0e61bc1cf8c713 DIST immutabledict-3.0.0.tar.gz 4478 BLAKE2B 7b5344f5153d28914da7124c3ca95e9b5c6422788259170de9f301de0a145324157635ca3543be824e9a0ebf93efe99a30dc1c8882bf926927023f2d06e318ad SHA512 90170703c1226e06d6726285005689cf66804ed2b3fda08c0350d9eeca6ec7427bd4004d42168e2f5ae7302acf1d16274a16d0e132bd81fbc8d470d75ec064a5 diff --git a/dev-python/immutabledict/immutabledict-2.2.5.ebuild b/dev-python/immutabledict/immutabledict-2.2.5.ebuild deleted file mode 100644 index e9b888711ed6..000000000000 --- a/dev-python/immutabledict/immutabledict-2.2.5.ebuild +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright 2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=poetry -PYTHON_COMPAT=( python3_{8,9,10,11} ) -inherit distutils-r1 pypi - -DESCRIPTION="An immutable wrapper around dictionaries" -HOMEPAGE=" - https://github.com/corenting/immutabledict/ - https://pypi.org/project/immutabledict/ -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="amd64 ~ppc64" - -distutils_enable_tests pytest diff --git a/dev-python/immutabledict/immutabledict-3.0.0.ebuild b/dev-python/immutabledict/immutabledict-3.0.0.ebuild index 3766b788a91a..2e8c876240f7 100644 --- a/dev-python/immutabledict/immutabledict-3.0.0.ebuild +++ b/dev-python/immutabledict/immutabledict-3.0.0.ebuild @@ -16,6 +16,6 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~ppc64" +KEYWORDS="amd64 ~ppc64" distutils_enable_tests pytest diff --git a/dev-python/libtmux/Manifest b/dev-python/libtmux/Manifest index d765ff15ae4f..3661ca7af87a 100644 --- a/dev-python/libtmux/Manifest +++ b/dev-python/libtmux/Manifest @@ -1,2 +1,3 @@ DIST libtmux-0.21.0.gh.tar.gz 267484 BLAKE2B 36d7af1bd90ff5a9639587d79f49643eec1e218d3b1839f5febdd9b6b402886e577b15c920cf458ecb14b4e6d532955b6d71ecf932060e6f8ba32193d6bb0162 SHA512 27000581396d79665e34b67a9e59bf639ca0fbd855ada9648750750e41e732cdcde15a05c6548993f08a8637783ddb478de24b75d5c18a198541c36b4b08b9cc DIST libtmux-0.22.1.gh.tar.gz 266173 BLAKE2B 743d43fcebfb0058c9ff13f0fb9ad811403f85bf80dd68dbeead86fe079b4176db15c9bf0a8dd48fae67cb9fa968633595a51e6fcf6091bff54df911d2dd17bf SHA512 f056ecbf793cd90bb60d50252c78eb67a8312eb3eda92d68ff69ed85270f23c9d4489789438fb9d228600320a2afb64a29a70c00a415604b65079167381c46d6 +DIST libtmux-0.23.0.gh.tar.gz 267917 BLAKE2B 55b564ca517b346cdcb81b114cb62d3a10d94aad7be54b5172669a4c42f9d01d54c467ba32d818ec4851ae148bc0cadf174e47f5026a5025d015bc1e294802d9 SHA512 28b2b356e2f774085ffd03a1c63b1b7d6ece24765c54728a3e71fabe7b46b15f61a0a0263366bb67dfc440129c07cb6ff6f6dc6141b8d1f2e9fe96fc05b8b88a diff --git a/dev-python/libtmux/libtmux-0.23.0.ebuild b/dev-python/libtmux/libtmux-0.23.0.ebuild new file mode 100644 index 000000000000..22160ffe5db1 --- /dev/null +++ b/dev-python/libtmux/libtmux-0.23.0.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=poetry +PYTHON_COMPAT=( python3_{8,9,10,11} pypy3 ) + +inherit distutils-r1 + +DESCRIPTION="Python API for tmux" +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-rerunfailures[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +EPYTEST_DESELECT=( + libtmux/pane.py::libtmux.pane.Pane.send_keys +) + +python_prepare_all() { + local issues="https://github.com/tmux-python/libtmux/issues/" + sed -r -i "s|:issue:\`([[:digit:]]+)\`|\`issue \1 ${issues}\1\`|" CHANGES || die + rm requirements/{doc,dev}.txt || die + + # increase timeouts for tests + sed -e 's/0.01/0.1/' -i tests/test_test.py || die + + sed -e '/addopts/s:--doctest-docutils-modules::' \ + -e '/README\.md/d' \ + -i setup.cfg || die + + distutils-r1_python_prepare_all +} diff --git a/dev-python/mistletoe/Manifest b/dev-python/mistletoe/Manifest index d17c4b4fefaa..02c865e2600a 100644 --- a/dev-python/mistletoe/Manifest +++ b/dev-python/mistletoe/Manifest @@ -1 +1,2 @@ DIST mistletoe-1.1.0.gh.tar.gz 116246 BLAKE2B 52761841380f28e490f1d675ab95bf0f31be44c909c5221dadca37eaeb3bc909c4d9091d52bd3a99f9b4b371fa102cf0f02225a1aa0732ccda4dca2ab85214e2 SHA512 3b1d8b6a9e3fc1fa67a212977a1c26cedafdf2bd2cc53113b8bb583433e69af0b4fd47b575f9a1ba4bda50b1c55a0d27faf9877b6300982eee2f6b8fcb621b7c +DIST mistletoe-1.2.0.gh.tar.gz 118346 BLAKE2B fd81792bd86bb21ef57004f2987bba8a01cbc63b4ccbda062d20bc5b73090c83f7fcd5c9a8c36a55d0178f33decd9850b6d38c176b1cf2b90c619a81b6055d6c SHA512 4ba40292174350d1b747092ed57b62955c10e69542f2592dfdcceabcedb67c7645f14cd554c22b91554abea0511e0e47433a4fa90de8f0a08fce3e7a77fdad92 diff --git a/dev-python/mistletoe/mistletoe-1.2.0.ebuild b/dev-python/mistletoe/mistletoe-1.2.0.ebuild new file mode 100644 index 000000000000..a3430dd3d1ac --- /dev/null +++ b/dev-python/mistletoe/mistletoe-1.2.0.ebuild @@ -0,0 +1,36 @@ +# Copyright 2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11} pypy3 ) + +inherit distutils-r1 + +DESCRIPTION="A fast, extensible Markdown parser in pure Python" +HOMEPAGE=" + https://github.com/miyuchina/mistletoe/ + https://pypi.org/project/mistletoe/ +" +# pypi has incomplete test suite +SRC_URI=" + https://github.com/miyuchina/mistletoe/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" + +# NB: pygments is technically optional but we like syntax highlighting +RDEPEND=" + dev-python/pygments[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/parameterized[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest diff --git a/dev-python/protobuf-python/Manifest b/dev-python/protobuf-python/Manifest index fd3464a8111e..0340fb589ff6 100644 --- a/dev-python/protobuf-python/Manifest +++ b/dev-python/protobuf-python/Manifest @@ -1,2 +1,3 @@ DIST protobuf-21.9.tar.gz 5110670 BLAKE2B a4f5b7f58e1c5904ca990b100a72992f6f56177b28773f8de8c99e4158391d33cfb8aa8575915887fc9ae4294faf81d4ff6b470bc07b394bfd5885a09ba0fafe SHA512 6954b42d21921e630173b7848c056ab95635627d8eddec960f3db2ddda13eedde00520a9b350722e76e2998649eb8ebe10758e1db938b6a91e38ff3295b1b7c1 DIST protobuf-24.0.tar.gz 5179150 BLAKE2B a5fdcde3b4d66c1a55ab66943e88ef4e5315c57432fcd3ba4e032e6da0fc0e7b22007bd133d63810ac6af668a5cdc529fac73a3d4012a62d62de0e819e04ac76 SHA512 6c850e4f7355d3dbc2524de152fe16c0bfe83ecaa712850c99e76afaa55ba4b35538df0faf4904f40c18ff0da9846a4f70cff3f5db0fb33a5d020919d3a2158a +DIST protobuf-24.1.tar.gz 5178595 BLAKE2B d45f4961620685515e815849bf2a83a4cfc435255fea1bc131325a354a5ab244555631ab6c30484830f346a264ae839e4de7193c5ab01910d1477733039685c3 SHA512 7afe0633d22804ab23db062d7a61b63cbd088ead3b82ee5d86069fac3c806af63a6e67ae3b8ecb7d834b188c17a739ef43388e2ee6ca4152a2bec1a89ae30bc0 diff --git a/dev-python/protobuf-python/protobuf-python-4.24.1.ebuild b/dev-python/protobuf-python/protobuf-python-4.24.1.ebuild new file mode 100644 index 000000000000..8dc108e9600d --- /dev/null +++ b/dev-python/protobuf-python/protobuf-python-4.24.1.ebuild @@ -0,0 +1,57 @@ +# Copyright 2023 Liguros Authors +# Distributed under the terms of the GNU General Public License v2 +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11} ) + +inherit distutils-r1 flag-o-matic + +PARENT_PN="${PN/-python/}" +PARENT_PV="$(ver_cut 2-)" +PARENT_P="${PARENT_PN}-${PARENT_PV}" + +SRC_URI=" + https://github.com/protocolbuffers/protobuf/archive/v${PARENT_PV}.tar.gz -> ${PARENT_P}.tar.gz +" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos" + +DESCRIPTION="Google's Protocol Buffers - Python bindings" +HOMEPAGE=" + https://developers.google.com/protocol-buffers/ + https://pypi.org/project/protobuf/ +" + +LICENSE="BSD" +SLOT="0/23" + +S="${WORKDIR}/${PARENT_P}/python" + +BDEPEND=" +" +DEPEND=" + ${PYTHON_DEPS} +" +RDEPEND=" + ${BDEPEND} + dev-libs/protobuf:${SLOT} +" + +distutils_enable_tests setup.py + +python_prepare_all() { + eapply_user + + distutils-r1_python_prepare_all +} + +src_configure() { + append-cxxflags -std=c++17 + DISTUTILS_ARGS=( --cpp_implementation ) +} + +python_compile() { + distutils-r1_python_compile + find "${BUILD_DIR}/install" -name "*.pth" -type f -delete || die +} diff --git a/dev-python/pypy3_10/Manifest b/dev-python/pypy3_10/Manifest index 57f39b85f74c..16c723d3e13f 100644 --- a/dev-python/pypy3_10/Manifest +++ b/dev-python/pypy3_10/Manifest @@ -1,2 +1,3 @@ DIST pypy3.10-gentoo-patches-7.3.12_p1.tar.xz 4844 BLAKE2B 9540d41cbea05ef2239c94088fbd357efccfee2d269385308255c457efb5cb9ca5c3cead53fd08c38238ac66fec9f4bc1ea0507db3e2398de32342d387a3caee SHA512 b6442feab24f0acb903d60edd2a1996e51efbb4ceb5e7f547c3405bbe0c6fb8de6f74556aa5704ae1676b03fdb5ea3d64bb8dc4848d439704e5232366f38428d +DIST pypy3.10-gentoo-patches-7.3.12_p3.tar.xz 7640 BLAKE2B 9352b6eb65c69311e8b629afc2567ab5f4b31b0aeda78539fde40f86465ee8ee76b354e78c567a532ac7804da417e5af343edc78a754780cfb970ee2c98c925f SHA512 740a14d6f5faa9a4cc0ec982c1425be56b2330450f2f6f4d667766cd1560d3d2aa5741d5ecfc7c94eaea9ae68029727cd7449f534a4ad84d26ca332605c08f6d DIST pypy3.10-v7.3.12-src.tar.bz2 23009064 BLAKE2B ad45d90de9ae51803ebcfa202763889f92f7e5c2939331433a496e53ca67dd6eeaf9c61e16cb648945409dff3c6dd6b8a2a01dfe1bed6cd6a9df98f112bff181 SHA512 080520c7de267e17a2823f06cd0a15c108a2c32fc296d6e24782050eb546fa74852d948ede2c381dba110774121b20efc3a07b553acd0ac0db4a844dfc09069e diff --git a/dev-python/pypy3_10/pypy3_10-7.3.12_p3.ebuild b/dev-python/pypy3_10/pypy3_10-7.3.12_p3.ebuild new file mode 100644 index 000000000000..c3cd1b2bb121 --- /dev/null +++ b/dev-python/pypy3_10/pypy3_10-7.3.12_p3.ebuild @@ -0,0 +1,209 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit pax-utils python-utils-r1 toolchain-funcs + +PYPY_PV=${PV%_p*} +PYVER=3.10 +MY_P="pypy${PYVER}-v${PYPY_PV/_}" +PATCHSET="pypy${PYVER}-gentoo-patches-${PV/_rc/rc}" + +DESCRIPTION="A fast, compliant alternative implementation of the Python (${PYVER}) language" +HOMEPAGE=" + https://www.pypy.org/ + https://foss.heptapod.net/pypy/pypy/ +" +SRC_URI=" + https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2 + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz +" +S="${WORKDIR}/${MY_P}-src" + +LICENSE="MIT" +# pypy3 -c 'import sysconfig; print(sysconfig.get_config_var("SOABI"))' +# also check pypy/interpreter/pycode.py -> pypy_incremental_magic +SLOT="0/pypy310-pp73-384" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="+ensurepip gdbm +jit ncurses sqlite tk" +# many tests are failing upstream +# see https://buildbot.pypy.org/summary?branch=py${PYVER} +RESTRICT="test" + +RDEPEND=" + || ( + >=dev-python/${PN}-exe-${PYPY_PV}:${PYPY_PV}[bzip2(+),ncurses?] + >=dev-python/${PN}-exe-bin-${PYPY_PV}:${PYPY_PV} + ) + dev-lang/python-exec[python_targets_pypy3(-)] + dev-libs/openssl:0= + dev-python/gentoo-common + ensurepip? ( dev-python/ensurepip-wheels ) + gdbm? ( sys-libs/gdbm:0= ) + sqlite? ( dev-db/sqlite:3= ) + tk? ( + dev-lang/tk:0= + dev-tcltk/tix:0= + ) + !~dev-python/pypy3-7.3.12_rc1 +" +DEPEND=" + ${RDEPEND} +" + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + default + + eapply_user +} + +src_configure() { + tc-export CC +} + +src_compile() { + mkdir bin || die + # switch to the layout expected for cffi module builds + mkdir include/pypy${PYVER} || die + # copy over to make sys.prefix happy + cp -p "${BROOT}"/usr/bin/pypy${PYVER}-c-${PYPY_PV} pypy${PYVER}-c || die + cp -p "${BROOT}"/usr/include/pypy${PYVER}/${PYPY_PV}/* include/pypy${PYVER}/ || die + # (not installed by pypy-exe) + rm pypy/module/cpyext/include/_numpypy/numpy/README || die + mv pypy/module/cpyext/include/* include/pypy${PYVER}/ || die + mv pypy/module/cpyext/parse/*.h include/pypy${PYVER}/ || die + pax-mark m pypy${PYVER}-c + + # verify the subslot + local soabi=$( + ./pypy${PYVER}-c - <<-EOF + import importlib.util + import sysconfig + soabi = sysconfig.get_config_var("SOABI") + magic = importlib.util._RAW_MAGIC_NUMBER & 0xffff + print(f"{soabi}-{magic}") + EOF + ) + [[ ${soabi} == ${SLOT#*/} ]] || die "update subslot to ${soabi}" + + # Add epython.py to the distribution + echo 'EPYTHON="pypy3"' > lib-python/3/epython.py || die + + einfo "Generating caches and CFFI modules ..." + + # Generate sysconfig data + local host_gnu_type=$(sh pypy/tool/release/config.guess) + local overrides=( + HOST_GNU_TYPE "${host_gnu_type:-unknown}" + INCLUDEPY "${EPREFIX}/usr/include/pypy${PYVER}" + LIBDIR "${EPREFIX}/usr/$(get_libdir)" + TZPATH "${EPREFIX}/usr/share/zoneinfo" + WHEEL_PKG_DIR "${EPREFIX}/usr/lib/python/ensurepip" + ) + ./pypy${PYVER}-c -m sysconfig --generate-posix-vars "${overrides[@]}" || die + local outdir + outdir=$(<pybuilddir.txt) || die + cp "${outdir}"/_sysconfigdata__*.py lib-python/3/ || die + + # Generate Grammar and PatternGrammar pickles. + ./pypy${PYVER}-c - <<-EOF || die "Generation of Grammar and PatternGrammar pickles failed" + import lib2to3.pygram + import lib2to3.patcomp + lib2to3.patcomp.PatternCompiler() + EOF + + # Generate cffi modules + # Please keep in sync with lib_pypy/pypy_tools/build_cffi_imports.py! + # (NB: we build CFFI modules first to avoid error log when importing + # build_cffi_imports). + cffi_targets=( + pypy_util blake2/_blake2 sha3/_sha3 ssl + audioop syslog pwdgrp resource lzma posixshmem + testmultiphase + ) + use gdbm && cffi_targets+=( gdbm ) + use ncurses && cffi_targets+=( curses ) + use sqlite && cffi_targets+=( sqlite3 ) + use tk && cffi_targets+=( tkinter/tklib ) + + local t + # all modules except tkinter output to . + # tkinter outputs to the correct dir ... + cd lib_pypy || die + for t in "${cffi_targets[@]}"; do + # tkinter doesn't work via -m + ../pypy${PYVER}-c "_${t}_build.py" || die "Failed to build CFFI bindings for ${t}" + done + + # Verify that CFFI module list is up-to-date + local expected_cksum=63d4659f + local local_cksum=$( + ../pypy${PYVER}-c - <<-EOF + import binascii + import json + from pypy_tools.build_cffi_imports import cffi_build_scripts as x + print("%08x" % (binascii.crc32(json.dumps(x).encode()),)) + EOF + ) + if [[ ${local_cksum} != ${expected_cksum} ]]; then + die "Please verify cffi_targets and update checksum to ${local_cksum}" + fi + + # Cleanup temporary objects + find -name "*_cffi.[co]" -delete || die + find -type d -empty -delete || die +} + +src_install() { + einfo "Installing PyPy ..." + dodir /usr/bin + dosym pypy${PYVER}-c-${PYPY_PV} /usr/bin/pypy${PYVER} + insinto /usr/lib/pypy${PYVER} + # preserve mtimes to avoid obsoleting caches + insopts -p + doins -r lib-python/3/. lib_pypy/. + insinto /usr/include + doins -r include/pypy${PYVER} + + # replace copied headers with symlinks + for x in "${BROOT}"/usr/include/pypy${PYVER}/${PYPY_PV}/*; do + dosym "${PYPY_PV}/${x##*/}" "/usr/include/pypy${PYVER}/${x##*/}" + done + + dodoc README.rst + + local dest=/usr/lib/pypy${PYVER} + rm -r "${ED}${dest}"/ensurepip/_bundled || die + if ! use ensurepip; then + rm -r "${ED}${dest}"/ensurepip || die + fi + if ! use gdbm; then + rm -r "${ED}${dest}"/_gdbm* || die + fi + if ! use sqlite; then + rm -r "${ED}${dest}"/sqlite3 \ + "${ED}${dest}"/_sqlite3* \ + "${ED}${dest}"/test/test_sqlite.py || die + fi + if ! use tk; then + rm -r "${ED}${dest}"/{idlelib,tkinter} \ + "${ED}${dest}"/_tkinter \ + "${ED}${dest}"/test/test_{tcl,tk,ttk*}.py || die + fi + dosym ../python/EXTERNALLY-MANAGED "${dest}/EXTERNALLY-MANAGED" + + local -x EPYTHON=pypy3 + local -x PYTHON=${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV} + # temporarily copy to build tree to facilitate module builds + cp -p "${BROOT}/usr/bin/pypy${PYVER}-c-${PYPY_PV}" "${PYTHON}" || die + + einfo "Byte-compiling Python standard library..." + python_optimize "${ED}${dest}" + + # remove to avoid collisions + rm "${PYTHON}" || die +} diff --git a/dev-python/pytest-qt/pytest-qt-4.2.0.ebuild b/dev-python/pytest-qt/pytest-qt-4.2.0.ebuild index 54eba98d7443..8f150a055ff5 100644 --- a/dev-python/pytest-qt/pytest-qt-4.2.0.ebuild +++ b/dev-python/pytest-qt/pytest-qt-4.2.0.ebuild @@ -6,7 +6,8 @@ EAPI=8 DISTUTILS_USE_PEP517=setuptools PYPI_NO_NORMALIZE=1 PYTHON_COMPAT=( python3_{8,9,10,11} ) -PYSIDE2_COMPAT=( python3_{8..10} ) +PYSIDE2_COMPAT=( python3_{10..11} ) +PYSIDE6_COMPAT=( python3_{10..11} ) inherit distutils-r1 virtualx pypi @@ -26,9 +27,17 @@ RDEPEND=" BDEPEND=" test? ( dev-python/PyQt5[gui,testlib,widgets,${PYTHON_USEDEP}] + amd64? ( + dev-python/PyQt6[gui,testlib,widgets,${PYTHON_USEDEP}] + ) $(python_gen_cond_dep ' dev-python/pyside2[gui,testlib,widgets,${PYTHON_USEDEP}] ' "${PYSIDE2_COMPAT[@]}") + amd64? ( + $(python_gen_cond_dep ' + dev-python/pyside6[gui,testlib,widgets,${PYTHON_USEDEP}] + ' "${PYSIDE6_COMPAT[@]}") + ) ) " @@ -57,9 +66,17 @@ python_test() { einfo "Testing with PyQt5" PYTEST_QT_API="pyqt5" epytest || die - # Pyside2 is not compatible with python3.11 + if use amd64; then + einfo "Testing with PyQt6" + PYTEST_QT_API="pyqt6" epytest || die + fi + # Pyside{2,6} is not compatible with python3.12 if has "${EPYTHON}" "${PYSIDE2_COMPAT[@]/_/.}"; then einfo "Testing with PySide2" PYTEST_QT_API="pyside2" epytest || die fi + if use amd64 && has "${EPYTHON}" "${PYSIDE6_COMPAT[@]/_/.}"; then + einfo "Testing with PySide6" + PYTEST_QT_API="pyside6" epytest || die + fi } diff --git a/dev-python/python-engineio/Manifest b/dev-python/python-engineio/Manifest index c4ff9414217e..6a6da1dc3907 100644 --- a/dev-python/python-engineio/Manifest +++ b/dev-python/python-engineio/Manifest @@ -1 +1,2 @@ DIST python-engineio-4.5.1.gh.tar.gz 309858 BLAKE2B 684bb4c32f050d52091c91312fa2cbe2ef1be133a797734de75f9c4b2c088e8f1b239260e62f189266cd72e4ff1203d63f1abca6887a34b498de43b6ceedefaf SHA512 c661e4691c8e14c547ed4de381b97470f0eead36783a299829e0a472022b508e45c6a131bb2c88bdf9542d59f8128a4640340514e20476ec8e7c7a4babbe3c68 +DIST python-engineio-4.6.0.gh.tar.gz 310597 BLAKE2B 7749e65f1f79bd21fb3f89dd541f3c306c780b2a98e8f0a8368b6fa7bf40738a5115f00f976f40914fcef9a94ef618e40b05993e6812630f46524d05c55b0eba SHA512 28efc25ff7eda98fa16e7c52effafc0789f18d947301479e5393e674e97826cd16bffe8554a8016c53587ac66b1f2cac90d2f64dfa9c1e2466f4324ee9880b1d diff --git a/dev-python/python-engineio/python-engineio-4.6.0.ebuild b/dev-python/python-engineio/python-engineio-4.6.0.ebuild new file mode 100644 index 000000000000..cde7824e6ace --- /dev/null +++ b/dev-python/python-engineio/python-engineio-4.6.0.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11} ) + +inherit distutils-r1 + +DESCRIPTION="Python implementation of the Engine.IO realtime server" +HOMEPAGE=" + https://python-engineio.readthedocs.io/ + https://github.com/miguelgrinberg/python-engineio/ + https://pypi.org/project/python-engineio/" +SRC_URI=" + https://github.com/miguelgrinberg/python-engineio/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=" + dev-python/aiohttp[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/websocket-client[${PYTHON_USEDEP}] +" +# Can use eventlet, werkzeug, or gevent, but no tests for werkzeug +BDEPEND=" + test? ( + dev-python/tornado[${PYTHON_USEDEP}] + dev-python/websockets[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest +distutils_enable_sphinx docs \ + dev-python/alabaster + +EPYTEST_IGNORE=( + # eventlet is masked for removal + tests/common/test_async_eventlet.py +) + +EPYTEST_DESELECT=( + # also eventlet + tests/common/test_server.py::TestServer::test_async_mode_eventlet + tests/common/test_server.py::TestServer::test_connect + tests/common/test_server.py::TestServer::test_service_task_started + tests/common/test_server.py::TestServer::test_upgrades +) diff --git a/dev-python/python3-discogs-client/Manifest b/dev-python/python3-discogs-client/Manifest index 8d17e777c6dd..e6152af550ab 100644 --- a/dev-python/python3-discogs-client/Manifest +++ b/dev-python/python3-discogs-client/Manifest @@ -1,2 +1 @@ -DIST python3-discogs-client-2.6.tar.gz 36426 BLAKE2B 1d2ae337beb0aaf9cc7310b13909a0a9172c79813ccc0a581af5478cbf45b28d2654b963df2881ad858fcabd5e85594c9a41458283e9e2c9c90ed4d6ad57853c SHA512 2b2ed4a56337b184266832682f7fa4d8726cc414b89446b2a6e96131d82c01c60bd78ac3336bdf94a3077ea25a313fbd532ba574cad64ddc9ab0229d0d7e44b1 DIST python3-discogs-client-2.7.tar.gz 36551 BLAKE2B f27fbf17afd7c0f6bb3619a4d0a7922f0a2192b34cddf72cb82f5580d81512d6450aa2464ab5e3746262ccdf66bf3411bd63ed121f69021bed06319bcc171de3 SHA512 7bb43429d6ceb3bbf892b6a65d4d93f0a9ec1bb3535b62169d7e1e4ff0e5032963b2ad5753e381745559efd21ed9e875bfbe3f5260e26f7df5f4a344bedded4a diff --git a/dev-python/python3-discogs-client/python3-discogs-client-2.6.ebuild b/dev-python/python3-discogs-client/python3-discogs-client-2.6.ebuild deleted file mode 100644 index 679487c2020d..000000000000 --- a/dev-python/python3-discogs-client/python3-discogs-client-2.6.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -PYPI_NO_NORMALIZE=1 -PYPI_PN="python3-discogs-client" -PYTHON_COMPAT=( python3_{8,9,10,11} ) - -inherit distutils-r1 - -if [[ ${PV} == 9999 ]]; then - EGIT_REPO_URI="https://github.com/joalla/discogs_client.git" - inherit git-r3 -else - inherit pypi - KEYWORDS="amd64 ~x86" -fi - -DESCRIPTION="Continuation of the official Python API client for Discogs" -HOMEPAGE=" - https://github.com/joalla/discogs_client/ - https://pypi.org/project/python3-discogs-client/ -" - -LICENSE="BSD-2" -SLOT="0" - -RDEPEND=" - dev-python/requests[${PYTHON_USEDEP}] - dev-python/oauthlib[${PYTHON_USEDEP}] - dev-python/python-dateutil[${PYTHON_USEDEP}] -" - -distutils_enable_tests unittest diff --git a/dev-python/redis/Manifest b/dev-python/redis/Manifest index 429c732f86ce..bff0dc8b1692 100644 --- a/dev-python/redis/Manifest +++ b/dev-python/redis/Manifest @@ -1 +1,2 @@ DIST redis-py-4.5.5.gh.tar.gz 4748642 BLAKE2B 6e924477be81af995190328b8747e2eac3d905fcff8cd97c6f89702e3888a4185918144cf11b9173b25dd4c2e62ce988e2f1f5b2c1261bb35e64031772a5a81a SHA512 f1d8f1b009f30613776904cef42a090a51da2833d667d47f9650c9a35187d11911d5b23b20f2ba2279714758963830c873473028775f39419e4d996da54eee83 +DIST redis-py-5.0.0.gh.tar.gz 4767898 BLAKE2B 0dc1fcafe7ad82c00bf634e19b5afb7201f39dfd26dfcce398fbc40cff79fe03d3e2ecc2acccebf1405700fb72fc5894ce1b8438b55e6c10d52ec08124da50cb SHA512 24133be64b73a58edd7b0361a8b168b67f0e783576aaf0007f4b4b8d6032a227d6ebc7319c89fc323fc72ef1063e4a899d9a8be9eaa833d347345a59a65fff31 diff --git a/dev-python/redis/redis-5.0.0.ebuild b/dev-python/redis/redis-5.0.0.ebuild new file mode 100644 index 000000000000..4d9ccc8c90be --- /dev/null +++ b/dev-python/redis/redis-5.0.0.ebuild @@ -0,0 +1,105 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11} pypy3 ) + +inherit distutils-r1 + +MY_P=redis-py-${PV} +DESCRIPTION="Python client for Redis key-value store" +HOMEPAGE=" + https://github.com/redis/redis-py/ + https://pypi.org/project/redis/ +" +SRC_URI=" + https://github.com/redis/redis-py/archive/v${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" + +RDEPEND=" + $(python_gen_cond_dep ' + >=dev-python/async-timeout-4.0.2[${PYTHON_USEDEP}] + ' 3.{9..10}) +" +BDEPEND=" + test? ( + dev-db/redis + dev-python/pytest-asyncio[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # Flaky test + tests/test_pubsub.py::TestPubSubDeadlock::test_pubsub_deadlock + # require extra redis modules that apparently aren't packaged + # on Gentoo + tests/test_bloom.py + tests/test_graph.py + tests/test_json.py + tests/test_timeseries.py + # apparently available only in "Redis Stack 7.2 RC3 or later" + tests/test_commands.py::TestRedisCommands::test_tfunction_load_delete + tests/test_commands.py::TestRedisCommands::test_tfunction_list + tests/test_commands.py::TestRedisCommands::test_tfcall + # TODO + tests/test_commands.py::TestRedisCommands::test_zrank_withscore + tests/test_commands.py::TestRedisCommands::test_zrevrank_withscore + tests/test_commands.py::TestRedisCommands::test_xinfo_consumers + tests/test_asyncio/test_commands.py::TestRedisCommands::test_zrank_withscore + tests/test_asyncio/test_commands.py::TestRedisCommands::test_zrevrank_withscore + tests/test_asyncio/test_commands.py::TestRedisCommands::test_xinfo_consumers + ) + + case ${EPYTHON} in + python3.12) + EPYTEST_DESELECT+=( + tests/test_asyncio/test_connect.py + tests/test_asyncio/test_cwe_404.py + ) + ;; + esac + + # TODO: try to run more servers? + epytest -m "not redismod and not onlycluster and not replica and not ssl" +} + +src_test() { + local redis_pid="${T}"/redis.pid + local redis_port=6379 + + if has_version ">=dev-db/redis-7"; then + local extra_conf=" + enable-debug-command yes + enable-module-command yes + " + fi + + # Spawn Redis itself for testing purposes + einfo "Spawning Redis" + einfo "NOTE: Port ${redis_port} must be free" + "${EPREFIX}"/usr/sbin/redis-server - <<- EOF || die "Unable to start redis server" + daemonize yes + pidfile ${redis_pid} + port ${redis_port} + bind 127.0.0.1 ::1 + ${extra_conf} + EOF + + # Run the tests + distutils-r1_src_test + + # Clean up afterwards + kill "$(<"${redis_pid}")" || die +} diff --git a/dev-python/reedsolo/Manifest b/dev-python/reedsolo/Manifest index 3bc3edda5cb5..5281e036e03d 100644 --- a/dev-python/reedsolo/Manifest +++ b/dev-python/reedsolo/Manifest @@ -1,2 +1 @@ -DIST reedsolo-2.1.0b1.tar.gz 379041 BLAKE2B 860d5d67fb7653b92a8163b72143ff3a5b1a482359339a596acd5e7f99eda1a2d6d208548e6689dca63018f5893d536a0c7040956cfee6077d9016fe7ca1d485 SHA512 1ae25c53f315cedcaaa4530388557c3dba1902856fe1543a061a65dc3c5c4201c1d8a5959786c3bf15a0f9799f984c8ba84e630ad1e75efbe44260346a650251 DIST reedsolo-2.1.1b1.tar.gz 380948 BLAKE2B 342c2ce63490a8e699dfb584a01b1533bd742693d335c2216426bf3f1b8d82e4dc52a7d9d9dda58fcdc73a7a28687f08235b67b942e1d98e2e0e069eda824d90 SHA512 841766296db6cad2f5d71c9378830d95ec974ae5e7de4624772c92a08739fa9bb94dfc8762c45e2508c53cb603b2a13e0ce64b060021d93c10de94cb2a325aa5 diff --git a/dev-python/reedsolo/reedsolo-2.1.0_beta1.ebuild b/dev-python/reedsolo/reedsolo-2.1.0_beta1.ebuild deleted file mode 100644 index 472e075fe1a6..000000000000 --- a/dev-python/reedsolo/reedsolo-2.1.0_beta1.ebuild +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright 2021-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=setuptools -PYPI_PN=reedsolo -PYTHON_COMPAT=( python3_{8,9,10,11} ) - -inherit distutils-r1 pypi - -DESCRIPTION="Python Reed Solomon encoder/decoder" -HOMEPAGE=" - https://github.com/tomerfiliba-org/reedsolomon/ - https://pypi.org/project/reedsolo/ -" - -LICENSE="|| ( Unlicense MIT-0 )" -SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 x86" -IUSE="+native-extensions" - -distutils_enable_tests pytest - -src_prepare() { - sed -i -e '/pytest-cov/d' pyproject.toml || die - distutils-r1_src_prepare -} - -src_configure() { - if use native-extensions; then - DISTUTILS_ARGS=( - # TODO: switch to --cythonize once we're on cython-3 - --native-compile - ) - fi -} diff --git a/dev-python/scipy/scipy-1.11.1.ebuild b/dev-python/scipy/scipy-1.11.1.ebuild index 42b6d43e5f5e..442a1275ffbc 100644 --- a/dev-python/scipy/scipy-1.11.1.ebuild +++ b/dev-python/scipy/scipy-1.11.1.ebuild @@ -38,7 +38,7 @@ else )" if [[ ${PV} != *rc* ]] ; then - KEYWORDS="~amd64 ~arm ~arm64 -hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" + KEYWORDS="~amd64 arm arm64 -hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" fi fi diff --git a/dev-python/sqlalchemy/Manifest b/dev-python/sqlalchemy/Manifest index 42c2e942fa19..4c6a68a6c55f 100644 --- a/dev-python/sqlalchemy/Manifest +++ b/dev-python/sqlalchemy/Manifest @@ -1,4 +1,3 @@ DIST SQLAlchemy-1.4.49.tar.gz 8536601 BLAKE2B 2133723380b157a76f4af6103a2c68099f78d7a49ad90793d682bd6015d61a06a72ba6f02922111b60716e311ddc2f6067153f7b4b1f80329775e0d6f27a0d92 SHA512 268751b09aebd9da10fd57b4b987fa57f3c61d18d5104bb308e405aa034c74e7d5441abd94368857fbe11b8d15bb5315634f64f3b1252e7318d24107ba1fe3ff -DIST SQLAlchemy-2.0.18.tar.gz 9417280 BLAKE2B 0f67e993c91cbf5fb2b5c9481e531830c24f69cb583ab0045b844048e92e57c2a9d826f098b792c0dfc807236fcb422fb800d201473e75fafc1190282d7c27f1 SHA512 4665994e4dc07b5ba0e0549cf80c0cc542c87609c74dce1e5523d4d6bfd5e1be5c7b62562e151c864a2e2a836cceb8374e804871937c738e54a1aa17297732ce DIST SQLAlchemy-2.0.19.tar.gz 9425046 BLAKE2B 258e273a1c9ec5584293d08b0cc9de8ab4076e61bbae2b914950d38e4627591e1c57250f5c28625e5d84d3db360992952a22644992ed5244d36d616f20487fc5 SHA512 d82834f4f55c2298ff16401f34326845360c58e6ba6a2e22cda92219c0fb40938d404315027f4e9f392bc57fe45808ea192f99b747e073a40a9713f8d498b22a DIST SQLAlchemy-2.0.20.tar.gz 9437690 BLAKE2B d0be093ec796f42868352339f70e64a1a0fbd4e96315ab91b370df79882138763228bc365dceaec736f7dce1d7c6991c7d20ca7dbccb766aec78b7039004dad2 SHA512 3bc463465248f28948a1004a3c18a5dbc02af81b18b4f89155aca6a03ab582010318c3d177c3b5c4caabd49945b426d7e0f23c482aefc75eb1a7252b57241e53 diff --git a/dev-python/sqlalchemy/sqlalchemy-2.0.18.ebuild b/dev-python/sqlalchemy/sqlalchemy-2.0.18.ebuild deleted file mode 100644 index 24ef4acb0c2f..000000000000 --- a/dev-python/sqlalchemy/sqlalchemy-2.0.18.ebuild +++ /dev/null @@ -1,119 +0,0 @@ -# Copyright 1999-2023 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_{8,9,10,11} pypy3 ) -PYTHON_REQ_USE="sqlite?" - -inherit distutils-r1 optfeature pypi - -MY_PN="SQLAlchemy" -DESCRIPTION="Python SQL toolkit and Object Relational Mapper" -HOMEPAGE=" - https://www.sqlalchemy.org/ - https://pypi.org/project/SQLAlchemy/ - https://github.com/sqlalchemy/sqlalchemy/ -" -SRC_URI="$(pypi_sdist_url --no-normalize "${MY_PN}")" -S="${WORKDIR}/${MY_PN}-${PV}" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" -IUSE="examples +sqlite test" - -RDEPEND=" - >=dev-python/typing-extensions-4.2.0[${PYTHON_USEDEP}] -" -BDEPEND=" - dev-python/cython[${PYTHON_USEDEP}] - test? ( - $(python_gen_impl_dep sqlite) - ) -" - -distutils_enable_tests pytest - -src_prepare() { - sed -i -e '/greenlet/d' setup.cfg || die - distutils-r1_src_prepare -} - -python_test() { - local EPYTEST_IGNORE=( - test/ext/mypy/test_mypy_plugin_py3k.py - test/typing/test_mypy.py - # hardcode call counts specific to Python versions - test/aaa_profiling - ) - local EPYTEST_DESELECT=( - # warning tests are unreliable - test/base/test_warnings.py - # TODO - test/orm/test_versioning.py::ServerVersioningTest_sqlite+pysqlite_3_40_1::test_sql_expr_w_mods_bump - test/sql/test_resultset.py::CursorResultTest_sqlite+pysqlite_3_41_0::test_pickle_rows_other_process - ) - local sqlite_version=$(sqlite3 --version | cut -d' ' -f1) - [[ ${EPYTHON} == pypy3 ]] && EPYTEST_DESELECT+=( - test/ext/test_associationproxy.py::ProxyHybridTest::test_msg_fails_on_cls_access - test/ext/test_associationproxy.py::DictOfTupleUpdateTest::test_update_multi_elem_varg - test/ext/test_associationproxy.py::DictOfTupleUpdateTest::test_update_one_elem_varg - test/engine/test_pool.py::QueuePoolTest::test_recycle_pool_no_race - test/engine/test_processors.py::PyDateProcessorTest::test_date_invalid_string - test/engine/test_processors.py::PyDateProcessorTest::test_datetime_invalid_string - test/engine/test_processors.py::PyDateProcessorTest::test_time_invalid_string - "test/dialect/test_sqlite.py::TestTypes_sqlite+pysqlite_${sqlite_version//./_}::test_cant_parse_datetime_message" - "test/dialect/test_suite.py::ReturningGuardsTest_sqlite+pysqlite_${sqlite_version//./_}"::test_{delete,insert,update}_single - test/base/test_utils.py::ImmutableDictTest::test_pep584 - ) - [[ ${EPYTHON} == python3.12 ]] && EPYTEST_DESELECT+=( - # see https://github.com/sqlalchemy/sqlalchemy/issues/9819 - test/base/test_result.py::ResultTupleTest::test_slices_arent_in_mappings - ) - if ! has_version "dev-python/greenlet[${PYTHON_USEDEP}]"; then - EPYTEST_DESELECT+=( - test/ext/asyncio/test_engine_py3k.py::TextSyncDBAPI::test_sync_driver_execution - test/ext/asyncio/test_engine_py3k.py::TextSyncDBAPI::test_sync_driver_run_sync - "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[False-True]" - "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[True-True]" - "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[has_terminate-is_asyncio]" - "test/engine/test_pool.py::PoolEventsTest::test_checkin_event_gc[not_has_terminate-is_asyncio]" - "test/engine/test_pool.py::QueuePoolTest::test_userspace_disconnectionerror_weakref_finalizer[True-_exclusions0]" - "test/engine/test_pool.py::QueuePoolTest::test_userspace_disconnectionerror_weakref_finalizer[True]" - ) - fi - - # upstream's test suite is horribly hacky; it relies on disabling - # the warnings plugin and turning warnings into errors; this also - # means that any DeprecationWarnings from third-party plugins cause - # everything to explode - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - local -x PYTEST_PLUGINS= - # upstream automagically depends on xdist when it is importable - # note that we can't use xdist because it causes nodes to randomly - # crash on init - if has_version "dev-python/pytest-xdist[${PYTHON_USEDEP}]"; then - PYTEST_PLUGINS+=xdist.plugin - fi - epytest -} - -python_install_all() { - if use examples; then - docompress -x "/usr/share/doc/${PF}/examples" - dodoc -r examples - fi - - distutils-r1_python_install_all -} - -pkg_postinst() { - optfeature "asyncio support" dev-python/greenlet - optfeature "MySQL support" \ - dev-python/mysqlclient \ - dev-python/pymysql - optfeature "postgresql support" dev-python/psycopg:2 -} diff --git a/dev-python/twisted/Manifest b/dev-python/twisted/Manifest index fc853dde42d1..adb006086a89 100644 --- a/dev-python/twisted/Manifest +++ b/dev-python/twisted/Manifest @@ -1,2 +1,3 @@ DIST twisted-22.10.0.gh.tar.gz 3512714 BLAKE2B 2fd36ec6922f428e959ce0169bb9a3592b8b3e43aff8d34872883ecf0fad8d0fff01a52f06b54df3dc377f4fc1a488b6d66f9287b108b4749bb7d3c749b96061 SHA512 cf9ed96430376d499ae9627a7d0656c05cb99bc9e9b15a8f4166355363818f090bc3c2b383ed4cf19e1e38fb569e8618d35a0ddde2a90a06f3c9a4ea769837e4 +DIST twisted-23.8.0rc1.tar.gz 3479000 BLAKE2B d3dbc54759f4dcba422cbcc57451a268834f21616ea2b5d34d972f2647750afa4ae62424ae32b2e0fe22e3a886c45ff1e64280c99553aa1ee52923a192773fdf SHA512 a1e778247a311dda30cd7f9f02fa4ab8848d6d5b89de4ff83dee5a92f968b6ec8df48d1804eef780cd0a9dc1393a1a91d624e9c54e0c9cd52d930ac2b36a0b6c DIST twisted-regen-cache.gz 911 BLAKE2B ffd3fcda6c67ffe6fd3ef581c8d507548396b66ed0708e9a5c790095e579c0d5f0f71596acf05712989da2ddef2b8d437eca973bc4d80ef8a9fa852915f38305 SHA512 95a9b931c73017d16d1b5e6b41345dddffe62b6af1a8e93b5e40d06d3d15be17b0dd0181c767ffeeb791534d463764ef9e066fa6c2ee2ac4b53c86d1da8fce03 diff --git a/dev-python/twisted/metadata.xml b/dev-python/twisted/metadata.xml index 9aaf8b94bcb8..595e86b07132 100644 --- a/dev-python/twisted/metadata.xml +++ b/dev-python/twisted/metadata.xml @@ -19,10 +19,6 @@ twisted.trial: A unit testing framework that integrates well with Twisted-based </longdescription> <upstream> <remote-id type="cpe">cpe:/a:twistedmatrix:twisted</remote-id> - <maintainer> - <email>twisted-python@twistedmatrix.com</email> - <name>Twisted Matrix Laboratories</name> - </maintainer> </upstream> <use> <flag name="conch">include Twisted SSHv2 implementation</flag> diff --git a/dev-python/twisted/twisted-23.8.0_rc1.ebuild b/dev-python/twisted/twisted-23.8.0_rc1.ebuild new file mode 100644 index 000000000000..c074525977f8 --- /dev/null +++ b/dev-python/twisted/twisted-23.8.0_rc1.ebuild @@ -0,0 +1,154 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_TESTED=( python3_{8,9,10,11} pypy3 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 pypi virtualx + +DESCRIPTION="An asynchronous networking framework written in Python" +HOMEPAGE=" + https://twisted.org/ + https://github.com/twisted/twisted/ + https://pypi.org/project/Twisted/ +" +SRC_URI+=" + https://dev.gentoo.org/~mgorny/dist/twisted-regen-cache.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" +IUSE="conch http2 serial ssl test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-python/attrs-19.2.0[${PYTHON_USEDEP}] + >=dev-python/automat-0.8.0[${PYTHON_USEDEP}] + >=dev-python/constantly-15.1[${PYTHON_USEDEP}] + >=dev-python/hyperlink-17.1.1[${PYTHON_USEDEP}] + >=dev-python/incremental-22.10.0[${PYTHON_USEDEP}] + >=dev-python/typing-extensions-3.10.0[${PYTHON_USEDEP}] + >=dev-python/zope-interface-5[${PYTHON_USEDEP}] + conch? ( + >=dev-python/appdirs-1.4.0[${PYTHON_USEDEP}] + >=dev-python/bcrypt-3.0.0[${PYTHON_USEDEP}] + >=dev-python/cryptography-3.3[${PYTHON_USEDEP}] + dev-python/pyasn1[${PYTHON_USEDEP}] + ) + http2? ( + <dev-python/h2-5.0[${PYTHON_USEDEP}] + >=dev-python/h2-3.0.0[${PYTHON_USEDEP}] + <dev-python/priority-2.0[${PYTHON_USEDEP}] + >=dev-python/priority-1.1.0[${PYTHON_USEDEP}] + ) + serial? ( + >=dev-python/pyserial-3.0[${PYTHON_USEDEP}] + ) + ssl? ( + >=dev-python/pyopenssl-21.0.0[${PYTHON_USEDEP}] + >=dev-python/service-identity-18.1.0[${PYTHON_USEDEP}] + >=dev-python/idna-2.4[${PYTHON_USEDEP}] + ) +" +BDEPEND=" + >=dev-python/hatch-fancy-pypi-readme-22.5.0[${PYTHON_USEDEP}] + >=dev-python/incremental-22.10.0[${PYTHON_USEDEP}] + test? ( + ${RDEPEND} + $(python_gen_cond_dep ' + >=dev-python/appdirs-1.4.0[${PYTHON_USEDEP}] + >=dev-python/constantly-15.1.0[${PYTHON_USEDEP}] + <dev-python/cython-test-exception-raiser-2[${PYTHON_USEDEP}] + >=dev-python/cython-test-exception-raiser-1.0.2[${PYTHON_USEDEP}] + >=dev-python/idna-2.4[${PYTHON_USEDEP}] + >=dev-python/hypothesis-6.56[${PYTHON_USEDEP}] + dev-python/pyasn1[${PYTHON_USEDEP}] + >=dev-python/pyhamcrest-2[${PYTHON_USEDEP}] + >=dev-python/pyserial-3.0[${PYTHON_USEDEP}] + virtual/openssh + ssl? ( + >=dev-python/pyopenssl-21.0.0[${PYTHON_USEDEP}] + >=dev-python/service-identity-18.1.0[${PYTHON_USEDEP}] + ) + ' "${PYTHON_TESTED[@]}") + ) +" + +PATCHES=( + # https://github.com/twisted/twisted/pull/11787 + "${FILESDIR}/${PN}-22.10.0-time.patch" +) + +python_prepare_all() { + # upstream test for making releases; not very useful and requires + # sphinx (including on py2) + rm src/twisted/python/test/test_release.py || die + + # multicast tests fail within network-sandbox + sed -e 's:test_joinLeave:_&:' \ + -e 's:test_loopback:_&:' \ + -e 's:test_multiListen:_&:' \ + -e 's:test_multicast:_&:' \ + -i src/twisted/test/test_udp.py || die + + distutils-r1_python_prepare_all +} + +src_test() { + # the test suite handles missing file & failing ioctl()s gracefully + # but not permission errors from sandbox + addwrite /dev/net/tun + virtx distutils-r1_src_test +} + +python_test() { + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + einfo "Skipping tests on ${EPYTHON} (xfail)" + return + fi + + "${EPYTHON}" -m twisted.trial twisted || + die "Tests failed with ${EPYTHON}" +} + +python_install() { + distutils-r1_python_install + + # own the dropin.cache so we don't leave orphans + > "${D}$(python_get_sitedir)"/twisted/plugins/dropin.cache || die + + python_doscript "${WORKDIR}"/twisted-regen-cache +} + +python_install_all() { + distutils-r1_python_install_all + + newconfd "${FILESDIR}/twistd.conf" twistd + newinitd "${FILESDIR}/twistd.init" twistd +} + +python_postinst() { + twisted-regen-cache || die +} + +pkg_postinst() { + if [[ -z ${ROOT} ]]; then + python_foreach_impl python_postinst + fi +} + +python_postrm() { + rm -f "${ROOT}$(python_get_sitedir)/twisted/plugins/dropin.cache" || die +} + +pkg_postrm() { + # if we're removing the last version, remove the cache file + if [[ ! ${REPLACING_VERSIONS} ]]; then + python_foreach_impl python_postrm + fi +} diff --git a/dev-python/websockify/Manifest b/dev-python/websockify/Manifest index 4d6225762a72..4234752f0452 100644 --- a/dev-python/websockify/Manifest +++ b/dev-python/websockify/Manifest @@ -1 +1,2 @@ DIST websockify-0.10.0.gh.tar.gz 53402 BLAKE2B e909dc316d6dd0ee03ee23b07ca2d78cc60994a8f361b3968759c382c704637357848e903fb12af002b5d5b2bec957f9a4c2b0ddb0e6d008ff9b4a462f3e8871 SHA512 262071f4858e5e3b6471c6f3731d8715c5c13fcc5f43738a330323958a8f0cbe7797847bdc676f1c6c34055c6f8afb949d005a5607d6b220b893910ff973ddc5 +DIST websockify-0.11.0.gh.tar.gz 55126 BLAKE2B df49e8025ea0341b7f8d329a3b3dcddc08df3d0b42bbcb33d25726df8fee1f0a8791d552c9019a3ae514549619a0f3cc9c7861ff4f30017f27498f7465fd5d11 SHA512 cbae6abdee3c9ba6e78c2245fa7ebc4bd6aa96a534b8577da1ae9acd316dd146cece6ceb6f6cdca9c1ddcb3cbaff69e0fc3c3d6048b9374b0937abb91843bf72 diff --git a/dev-python/websockify/websockify-0.11.0.ebuild b/dev-python/websockify/websockify-0.11.0.ebuild new file mode 100644 index 000000000000..8356706bc288 --- /dev/null +++ b/dev-python/websockify/websockify-0.11.0.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{8,9,10,11} ) + +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/simplejson[${PYTHON_USEDEP}] + dev-python/redis[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest + +EPYTEST_DESELECT=( + # TODO: incompatible with current jwcrypto? (not a regression) + tests/test_token_plugins.py::JWSTokenTestCase::test_asymmetric_jwe_token_plugin +) + +python_install_all() { + doman docs/${PN}.1 + distutils-r1_python_install_all +} diff --git a/dev-python/xcffib/Manifest b/dev-python/xcffib/Manifest index bea594e6c185..1c7f0d77d3bc 100644 --- a/dev-python/xcffib/Manifest +++ b/dev-python/xcffib/Manifest @@ -1,4 +1,3 @@ -DIST xcffib-1.2.0.tar.gz 88972 BLAKE2B a8d9be7c3149f696d06474aab85e9f7605d45e9861151192dbb7b51e48483f75adb721e17531432294d19d8d6498b66ba312702ea011e8470c3ac42ac0cd6e23 SHA512 7012833f2877edea92cdc15030543883e2a848264c034a81222626ad48a69fcdac8a88cec2e07e61a80102640baa7fbdf29bbf25e08e59fc896aada08533bb77 DIST xcffib-1.3.0.tar.gz 89874 BLAKE2B 5dd8d64b906d92cb987ee4398da668d6034faf4abc24a56c0fca3e5b6d0cd1252ea1459736a9f7fb83ee97d4d6cec5d103eb19aba626a3d646f67e6332e255a5 SHA512 a493f86891158ffa0c36168da5e7ebdeadafe5e9f067e2ad6052cf302c89db612f907b5e9950748fcfd74886b808870986529902bae77fede7e27d5d422d6ec6 DIST xcffib-1.4.0.tar.gz 89496 BLAKE2B 4987d9346d403c3ac627cd7b1b31d3686b9135d077c4b61862841085cc1c1ea7f950bd0b6c456d59f407bb384d14a96cf2a617f2c584434eee294a22ac770a82 SHA512 310fc4c21856d2255650598c26831569061e112516d958e6f65a0a8e6d32c4bb37a14d7bb6c7da8dcaa9c4459fc83026ba9b1a9567f01f9bbcafda8fdea4f153 DIST xcffib-1.5.0.tar.gz 89544 BLAKE2B cb3820a53eb7694078e5dbb175951b6dbdc445c06f397898e52319fd8a7633f2d8115f0d096a14b2b3de0c7b07918343d077705814574ff41de2bf06a12812c0 SHA512 aaa426b57d0d8dc45cb6a2036c862af6308fb5781667b8dba3f5ff399fe5e15912860d0bb696ac09f1efd4ffbbdaf7f555ef76039bd660f36f5c6179535b654f diff --git a/dev-python/xcffib/xcffib-1.2.0.ebuild b/dev-python/xcffib/xcffib-1.2.0.ebuild deleted file mode 100644 index 6c9072829f68..000000000000 --- a/dev-python/xcffib/xcffib-1.2.0.ebuild +++ /dev/null @@ -1,43 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{8,9,10,11} pypy3 ) -DISTUTILS_USE_PEP517=setuptools - -inherit distutils-r1 pypi - -DESCRIPTION="A drop in replacement for xpyb, an XCB python binding" -HOMEPAGE=" - https://github.com/tych0/xcffib/ - https://pypi.org/project/xcffib/ -" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86" - -DEPEND=" - x11-libs/libxcb -" -RDEPEND=" - $(python_gen_cond_dep ' - >=dev-python/cffi-1.1:=[${PYTHON_USEDEP}] - ' 'python*') - dev-python/six[${PYTHON_USEDEP}] - ${DEPEND} -" -BDEPEND=" - test? ( - x11-base/xorg-server[xvfb] - x11-apps/xeyes - ) -" - -distutils_enable_tests pytest - -python_test() { - rm -rf xcffib || die - epytest -} |
