summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2021-06-02 01:35:01 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2021-06-02 01:35:01 +0000
commit68585b42a5719e4855009a02f1bb7163a1263b60 (patch)
tree32751b281cb5659768c8802e8791d0a8e55a83ec /dev-python
parent918f0aeb6ea7253f43d305c47ef4a4bfa9abfa18 (diff)
downloadbaldeagleos-repo-68585b42a5719e4855009a02f1bb7163a1263b60.tar.gz
baldeagleos-repo-68585b42a5719e4855009a02f1bb7163a1263b60.tar.xz
baldeagleos-repo-68585b42a5719e4855009a02f1bb7163a1263b60.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/PyQt5-sip/Manifest1
-rw-r--r--dev-python/PyQt5-sip/PyQt5-sip-12.9.0.ebuild24
-rw-r--r--dev-python/PyQt5/Manifest1
-rw-r--r--dev-python/PyQt5/PyQt5-5.15.4.ebuild183
-rw-r--r--dev-python/PyQtWebEngine/Manifest1
-rw-r--r--dev-python/PyQtWebEngine/PyQtWebEngine-5.15.4.ebuild74
-rw-r--r--dev-python/QtPy/QtPy-1.9.0-r3.ebuild (renamed from dev-python/QtPy/QtPy-1.9.0-r2.ebuild)7
-rw-r--r--dev-python/QtPy/QtPy-1.9.0-r5.ebuild (renamed from dev-python/QtPy/QtPy-1.9.0-r4.ebuild)71
-rw-r--r--dev-python/QtPy/files/QtPy-1.9.0-python3_9.patch13
-rw-r--r--dev-python/awxkit/Manifest1
-rw-r--r--dev-python/awxkit/awxkit-19.2.0.ebuild29
-rw-r--r--dev-python/blosc/Manifest1
-rw-r--r--dev-python/blosc/blosc-1.10.4.ebuild46
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.17.85.ebuild56
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.20.85.ebuild59
-rw-r--r--dev-python/click-log/click-log-0.3.2.ebuild7
-rw-r--r--dev-python/click-threading/click-threading-0.4.4.ebuild6
-rw-r--r--dev-python/constantly/constantly-15.1.0-r1.ebuild4
-rw-r--r--dev-python/dbus-python/dbus-python-1.2.16-r1.ebuild8
-rw-r--r--dev-python/django/django-3.2.3-r1.ebuild (renamed from dev-python/django/django-3.2.3.ebuild)9
-rw-r--r--dev-python/django/files/django-3.2.3-py310-repr.patch92
-rw-r--r--dev-python/google-api-python-client/Manifest1
-rw-r--r--dev-python/google-api-python-client/google-api-python-client-2.7.0.ebuild49
-rw-r--r--dev-python/jwcrypto/Manifest1
-rw-r--r--dev-python/jwcrypto/jwcrypto-0.9.0.ebuild33
-rw-r--r--dev-python/oauthlib/Manifest1
-rw-r--r--dev-python/oauthlib/oauthlib-3.1.1.ebuild29
-rw-r--r--dev-python/pafy/pafy-0.5.5.ebuild3
-rw-r--r--dev-python/pafy/pafy-9999.ebuild3
-rw-r--r--dev-python/prometheus_client/Manifest1
-rw-r--r--dev-python/prometheus_client/prometheus_client-0.11.0.ebuild21
-rw-r--r--dev-python/protobuf-python/protobuf-python-3.15.8.ebuild2
-rw-r--r--dev-python/pygit2/Manifest1
-rw-r--r--dev-python/pygit2/pygit2-1.6.0.ebuild40
-rw-r--r--dev-python/pynest2d/pynest2d-4.8.0-r1.ebuild2
-rw-r--r--dev-python/pyqt-distutils/pyqt-distutils-0.7.3.ebuild2
-rw-r--r--dev-python/pyside2-tools/Manifest1
-rw-r--r--dev-python/pyside2-tools/pyside2-tools-5.15.2.ebuild77
-rw-r--r--dev-python/pyside2/Manifest1
-rw-r--r--dev-python/pyside2/pyside2-5.15.2.ebuild210
-rw-r--r--dev-python/pytest-cov/Manifest1
-rw-r--r--dev-python/pytest-cov/pytest-cov-2.12.1.ebuild49
-rw-r--r--dev-python/python-magic/Manifest1
-rw-r--r--dev-python/python-magic/python-magic-0.4.23.ebuild30
-rw-r--r--dev-python/python-poppler-qt5/python-poppler-qt5-0.75.0.ebuild1
-rw-r--r--dev-python/python_orocos_kdl/python_orocos_kdl-1.4.0-r1.ebuild2
-rw-r--r--dev-python/python_orocos_kdl/python_orocos_kdl-9999.ebuild2
-rw-r--r--dev-python/selenium/metadata.xml1
-rw-r--r--dev-python/shiboken2/Manifest1
-rw-r--r--dev-python/shiboken2/shiboken2-5.15.2.ebuild166
-rw-r--r--dev-python/sip/Manifest1
-rw-r--r--dev-python/sip/sip-5.5.0.ebuild31
-rw-r--r--dev-python/sphinxcontrib-bibtex/Manifest1
-rw-r--r--dev-python/sphinxcontrib-bibtex/sphinxcontrib-bibtex-2.3.0.ebuild31
-rw-r--r--dev-python/tox/tox-3.23.1.ebuild7
-rw-r--r--dev-python/twisted/files/twisted-21.2.0-force-gtk3.patch42
-rw-r--r--dev-python/twisted/files/twisted-21.2.0-int-from-bytes.patch14
-rw-r--r--dev-python/twisted/twisted-21.2.0-r1.ebuild (renamed from dev-python/twisted/twisted-21.2.0.ebuild)12
-rw-r--r--dev-python/urllib3/urllib3-1.26.5.ebuild7
-rw-r--r--dev-python/uvicorn/Manifest1
-rw-r--r--dev-python/uvicorn/uvicorn-0.14.0.ebuild44
-rw-r--r--dev-python/vdirsyncer/vdirsyncer-0.16.8.ebuild14
-rw-r--r--dev-python/werkzeug/werkzeug-2.0.1-r1.ebuild12
65 files changed, 1568 insertions, 76 deletions
diff --git a/dev-python/PyQt5-sip/Manifest b/dev-python/PyQt5-sip/Manifest
index f8e60d534622..d73189a9f51d 100644
--- a/dev-python/PyQt5-sip/Manifest
+++ b/dev-python/PyQt5-sip/Manifest
@@ -1 +1,2 @@
+DIST PyQt5_sip-12.9.0.tar.gz 103007 BLAKE2B 461973ce3563c27ce5a6e3a537cf9a8e53adc8ddde36ec1d2eb7abb986908151ece99ff8756f752d2c6e331a3e9b7b70813d35f8701cedd7f09e6edbcc435121 SHA512 ca6f3b18b64391fded88732a8109a04d85727bbddecdf126679b187c7f0487c3c1f69ada3e8c54051281a43c6f2de70390ac5ff18a1bed79994070ddde730c5f
DIST sip-4.19.25.tar.gz 1056384 BLAKE2B f92e105e6b30e871aea2883dc9cd459e4032fb139a9eaff153a3412a66b39df4d7ac985711a2693aee83195ff3850ae648bee4102f7fc3cc30d09885799f2b98 SHA512 60fb4133c68869bf0993144978b4847d94a0f9c7b477f64a346ea133cfe35bc11820204ab327dcf9a929b6f65a26d16cc7efbce65e49967c3347b39376e57001
diff --git a/dev-python/PyQt5-sip/PyQt5-sip-12.9.0.ebuild b/dev-python/PyQt5-sip/PyQt5-sip-12.9.0.ebuild
new file mode 100644
index 000000000000..6334a429d5d4
--- /dev/null
+++ b/dev-python/PyQt5-sip/PyQt5-sip-12.9.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+inherit distutils-r1
+
+DESCRIPTION="Private sip module for PyQt5"
+HOMEPAGE="https://www.riverbankcomputing.com/software/sip/intro"
+
+MY_PN=sip
+MY_P=${MY_PN}-${PV/_pre/.dev}
+if [[ ${PV} == *_pre* ]]; then
+ SRC_URI="https://dev.gentoo.org/~pesa/distfiles/${MY_P}.tar.gz"
+else
+ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${PN//-/_}-${PV}.tar.gz"
+fi
+S="${WORKDIR}/${PN//-/_}-${PV}"
+
+# Sub-slot based on SIP_ABI_MAJOR_VERSION from sip.h
+SLOT="0/12"
+LICENSE="|| ( GPL-2 GPL-3 SIP )"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
diff --git a/dev-python/PyQt5/Manifest b/dev-python/PyQt5/Manifest
index afeb1a3ccb18..674ea7b89fb7 100644
--- a/dev-python/PyQt5/Manifest
+++ b/dev-python/PyQt5/Manifest
@@ -1 +1,2 @@
DIST PyQt5-5.15.2.tar.gz 3265445 BLAKE2B 7712d68aa54cf9e6836863d7aa645151254d79621e115ed314ba63c371d5e24577a0392311b31a73e45af45baa29eca1d7e9a03874beac1fbf043fa703af69f9 SHA512 6d48d2ed907b436131d46b0513d82e1069c76e873d395e4a6c0832ae3a20621b92d3abece046c5fcd14cb818d50ffb369153fca1ce9341f0db1b8c479b94e621
+DIST PyQt5-5.15.4.tar.gz 3258085 BLAKE2B 96bda4da1321e499707d29d9870693815170ccc32e2e0d7bb3c6977ea2933f9684557124deb92abbf92b923e0071cf47ee4822f6cb5d06fdc61b498efc44db4c SHA512 6d19f549a71eb8df8ba8407398ccd6e3d339436f4f2e7c5dca6885849d6ce510c4f4dea3c97257685aa462bb09a2ead33d80234ccb934f9b1a40285dbec631c7
diff --git a/dev-python/PyQt5/PyQt5-5.15.4.ebuild b/dev-python/PyQt5/PyQt5-5.15.4.ebuild
new file mode 100644
index 000000000000..cc435aaa508c
--- /dev/null
+++ b/dev-python/PyQt5/PyQt5-5.15.4.ebuild
@@ -0,0 +1,183 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+inherit multibuild python-r1 qmake-utils
+
+DESCRIPTION="Python bindings for the Qt framework"
+HOMEPAGE="https://www.riverbankcomputing.com/software/pyqt/intro"
+
+MY_P=${PN}-${PV/_pre/.dev}
+if [[ ${PV} == *_pre* ]]; then
+ SRC_URI="https://dev.gentoo.org/~pesa/distfiles/${MY_P}.tar.gz"
+else
+ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+fi
+S=${WORKDIR}/${MY_P}
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+
+# TODO: QtNfc, QtRemoteObjects, QtTextToSpeech
+IUSE="bluetooth dbus debug declarative designer examples gles2-only gui help location
+ multimedia network opengl positioning printsupport sensors serialport sql
+ +ssl svg testlib webchannel websockets widgets x11extras xmlpatterns"
+
+# The requirements below were extracted from configure.py
+# and from the output of 'grep -r "%Import " "${S}"/sip'
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ bluetooth? ( gui )
+ declarative? ( gui network )
+ designer? ( widgets )
+ help? ( gui widgets )
+ location? ( positioning )
+ multimedia? ( gui network )
+ opengl? ( gui widgets )
+ positioning? ( gui )
+ printsupport? ( gui widgets )
+ sensors? ( gui )
+ serialport? ( gui )
+ sql? ( widgets )
+ svg? ( gui widgets )
+ testlib? ( widgets )
+ webchannel? ( network )
+ websockets? ( network )
+ widgets? ( gui )
+ xmlpatterns? ( network )
+"
+
+# Minimal supported version of Qt.
+QT_PV="5.15:5"
+
+RDEPEND="${PYTHON_DEPS}
+ >=dev-python/PyQt5-sip-4.19.25:=[${PYTHON_USEDEP}]
+ >=dev-qt/qtcore-${QT_PV}
+ >=dev-qt/qtxml-${QT_PV}
+ bluetooth? ( >=dev-qt/qtbluetooth-${QT_PV} )
+ dbus? (
+ dev-python/dbus-python[${PYTHON_USEDEP}]
+ >=dev-qt/qtdbus-${QT_PV}
+ )
+ declarative? ( >=dev-qt/qtdeclarative-${QT_PV}[widgets?] )
+ designer? ( >=dev-qt/designer-${QT_PV} )
+ gui? ( >=dev-qt/qtgui-${QT_PV}[gles2-only=] )
+ help? ( >=dev-qt/qthelp-${QT_PV} )
+ location? ( >=dev-qt/qtlocation-${QT_PV} )
+ multimedia? ( >=dev-qt/qtmultimedia-${QT_PV}[widgets?] )
+ network? ( >=dev-qt/qtnetwork-${QT_PV}[ssl=] )
+ opengl? ( >=dev-qt/qtopengl-${QT_PV} )
+ positioning? ( >=dev-qt/qtpositioning-${QT_PV} )
+ printsupport? ( >=dev-qt/qtprintsupport-${QT_PV} )
+ sensors? ( >=dev-qt/qtsensors-${QT_PV} )
+ serialport? ( >=dev-qt/qtserialport-${QT_PV} )
+ sql? ( >=dev-qt/qtsql-${QT_PV} )
+ svg? ( >=dev-qt/qtsvg-${QT_PV} )
+ testlib? ( >=dev-qt/qttest-${QT_PV} )
+ webchannel? ( >=dev-qt/qtwebchannel-${QT_PV} )
+ websockets? ( >=dev-qt/qtwebsockets-${QT_PV} )
+ widgets? ( >=dev-qt/qtwidgets-${QT_PV} )
+ x11extras? ( >=dev-qt/qtx11extras-${QT_PV} )
+ xmlpatterns? ( >=dev-qt/qtxmlpatterns-${QT_PV} )
+"
+DEPEND="${RDEPEND}
+ >=dev-python/sip-4.19.25[${PYTHON_USEDEP}]
+ dbus? ( virtual/pkgconfig )
+"
+
+pyqt_use_enable() {
+ use "$1" || return
+
+ if [[ $# -eq 1 ]]; then
+ echo --enable=Qt${1^}
+ else
+ shift
+ echo ${@/#/--enable=}
+ fi
+}
+
+src_configure() {
+ configuration() {
+ local myconf=(
+ "${EPYTHON}"
+ "${S}"/configure.py
+ $(usex debug '--debug --qml-debug --trace' '')
+ --verbose
+ --confirm-license
+ --qmake="$(qt5_get_bindir)"/qmake
+ --bindir="${EPREFIX}"/usr/bin
+ --qsci-api
+ --enable=QtCore
+ --enable=QtXml
+ $(pyqt_use_enable bluetooth)
+ $(pyqt_use_enable dbus QtDBus)
+ $(usex dbus '' --no-python-dbus)
+ $(pyqt_use_enable declarative QtQml QtQuick $(usex widgets QtQuickWidgets ''))
+ $(usex declarative '' --no-qml-plugin)
+ $(pyqt_use_enable designer)
+ $(usex designer '' --no-designer-plugin)
+ $(usex gles2-only '--disable-feature=PyQt_Desktop_OpenGL' '')
+ $(pyqt_use_enable gui)
+ $(pyqt_use_enable gui $(use gles2-only && echo _QOpenGLFunctions_ES2 || echo _QOpenGLFunctions_{2_0,2_1,4_1_Core}))
+ $(pyqt_use_enable help)
+ $(pyqt_use_enable location)
+ $(pyqt_use_enable multimedia QtMultimedia $(usex widgets QtMultimediaWidgets ''))
+ $(pyqt_use_enable network)
+ $(pyqt_use_enable opengl QtOpenGL)
+ $(pyqt_use_enable positioning)
+ $(pyqt_use_enable printsupport QtPrintSupport)
+ $(pyqt_use_enable sensors)
+ $(pyqt_use_enable serialport QtSerialPort)
+ $(pyqt_use_enable sql)
+ $(usex ssl '' '--disable-feature=PyQt_SSL')
+ $(pyqt_use_enable svg)
+ $(pyqt_use_enable testlib QtTest)
+ $(pyqt_use_enable webchannel QtWebChannel)
+ $(pyqt_use_enable websockets QtWebSockets)
+ $(pyqt_use_enable widgets)
+ $(pyqt_use_enable x11extras QtX11Extras)
+ $(pyqt_use_enable xmlpatterns QtXmlPatterns)
+ )
+ echo "${myconf[@]}"
+ "${myconf[@]}" || die
+
+ # Run eqmake to respect toolchain and build flags
+ eqmake5 -recursive ${PN}.pro
+ }
+ python_foreach_impl run_in_build_dir configuration
+}
+
+src_compile() {
+ python_foreach_impl run_in_build_dir default
+}
+
+src_install() {
+ installation() {
+ local tmp_root=${D}/${PN}_tmp_root
+ # parallel install fails because mk_distinfo.py runs too early
+ emake -j1 INSTALL_ROOT="${tmp_root}" install
+
+ local bin_dir=${tmp_root}${EPREFIX}/usr/bin
+ local exe
+ for exe in pylupdate5 pyrcc5 pyuic5; do
+ python_doexe "${bin_dir}/${exe}"
+ rm "${bin_dir}/${exe}" || die
+ done
+
+ local uic_dir=${tmp_root}$(python_get_sitedir)/${PN}/uic
+ rm -r "${uic_dir}"/port_v2 || die
+
+ multibuild_merge_root "${tmp_root}" "${D}"
+ python_optimize
+ }
+ python_foreach_impl run_in_build_dir installation
+
+ einstalldocs
+
+ if use examples; then
+ dodoc -r examples
+ fi
+}
diff --git a/dev-python/PyQtWebEngine/Manifest b/dev-python/PyQtWebEngine/Manifest
index 3f19129c434d..e8c22cbea35f 100644
--- a/dev-python/PyQtWebEngine/Manifest
+++ b/dev-python/PyQtWebEngine/Manifest
@@ -1 +1,2 @@
DIST PyQtWebEngine-5.15.2.tar.gz 48608 BLAKE2B a03f77b0cde0d1031e8f1c4c6b5d13a342c28cf814ebaaf4a2cdb4608ce40cdd8163783932abc76cda583c0fed7191653b537598a9ab65f6509ef88008538e31 SHA512 7e6d95833b1a9e5bb5275eff01e1923419da35d13862fc4cbb231cbf950ed45e628bc7e161b0b6b66c718ee439a1a8e66dd754cee9adcdf69ab1b8ffab58901e
+DIST PyQtWebEngine-5.15.4.tar.gz 49022 BLAKE2B 0ac0b3424f22aabbfd733f2a876e502f133c81f639fbd87a4c7509865635b29d4bd3596ccc151b0919a28eff0015913c4fae1a831dbe774fe2d2aeee732e469b SHA512 25cf8578ffae8adbc1dd8d914921b4edf91f19fcf983c9c83c9c8934b4e918ba27bd34a6b9c8252773ec32e6f1f13a06f22cf7d7326a5aceaa91530ea4ee047e
diff --git a/dev-python/PyQtWebEngine/PyQtWebEngine-5.15.4.ebuild b/dev-python/PyQtWebEngine/PyQtWebEngine-5.15.4.ebuild
new file mode 100644
index 000000000000..4b17ed0a5afb
--- /dev/null
+++ b/dev-python/PyQtWebEngine/PyQtWebEngine-5.15.4.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+inherit python-r1 qmake-utils
+
+DESCRIPTION="Python bindings for QtWebEngine"
+HOMEPAGE="https://www.riverbankcomputing.com/software/pyqtwebengine/intro"
+
+MY_P=${PN}-${PV/_pre/.dev}
+if [[ ${PV} == *_pre* ]]; then
+ SRC_URI="https://dev.gentoo.org/~pesa/distfiles/${MY_P}.tar.gz"
+else
+ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+fi
+S=${WORKDIR}/${MY_P}
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="debug"
+
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-python/PyQt5-5.15[gui,network,printsupport,ssl,webchannel,widgets,${PYTHON_USEDEP}]
+ >=dev-python/PyQt5-sip-4.19.22:=[${PYTHON_USEDEP}]
+ dev-qt/qtcore:5
+ dev-qt/qtwebengine:5[widgets]
+"
+DEPEND="${RDEPEND}
+ >=dev-python/sip-4.19.22[${PYTHON_USEDEP}]
+"
+
+src_configure() {
+ configuration() {
+ local myconf=(
+ "${EPYTHON}"
+ "${S}"/configure.py
+ --qmake="$(qt5_get_bindir)"/qmake
+ $(usex debug '--debug --trace' '')
+ --verbose
+ )
+ echo "${myconf[@]}"
+ "${myconf[@]}" || die
+
+ # Fix parallel install failure
+ sed -i -e '/INSTALLS += distinfo/i distinfo.depends = install_subtargets install_pep484_stubs install_api' \
+ ${PN}.pro || die
+
+ # Run eqmake to respect toolchain and build flags
+ eqmake5 -recursive ${PN}.pro
+ }
+ python_foreach_impl run_in_build_dir configuration
+}
+
+src_compile() {
+ python_foreach_impl run_in_build_dir default
+}
+
+src_install() {
+ installation() {
+ emake INSTALL_ROOT="${D}" install
+ python_optimize
+ }
+ python_foreach_impl run_in_build_dir installation
+
+ einstalldocs
+}
diff --git a/dev-python/QtPy/QtPy-1.9.0-r2.ebuild b/dev-python/QtPy/QtPy-1.9.0-r3.ebuild
index 81f25208b388..c625153736cf 100644
--- a/dev-python/QtPy/QtPy-1.9.0-r2.ebuild
+++ b/dev-python/QtPy/QtPy-1.9.0-r3.ebuild
@@ -30,7 +30,11 @@ RDEPEND="
BDEPEND="
test? (
dev-python/mock[${PYTHON_USEDEP}]
- dev-python/PyQt5[${PYTHON_USEDEP},bluetooth,dbus,declarative,designer,gui,help,location,multimedia,network,networkauth,opengl,positioning,printsupport,sensors,serialport,sql,ssl,svg,testlib,webchannel,webkit,websockets,widgets,x11extras,xml(+),xmlpatterns]
+ 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,sql,svg,testlib,webchannel]
+ dev-python/PyQt5[websockets,widgets,x11extras,xml(+),xmlpatterns]
dev-python/PyQtWebEngine[${PYTHON_USEDEP}]
)"
@@ -40,6 +44,7 @@ src_prepare() {
default
sed -i -e "s/from PyQt4.Qt import/raise ImportError #/" qtpy/__init__.py || die
+ sed -i -e "s/from PyQt4.QtCore import/raise ImportError #/" qtpy/__init__.py || die
sed -i -e "s/from PySide import/raise ImportError #/" qtpy/__init__.py || die
sed -i -e "s/from PySide2 import/raise ImportError #/" qtpy/__init__.py || die
}
diff --git a/dev-python/QtPy/QtPy-1.9.0-r4.ebuild b/dev-python/QtPy/QtPy-1.9.0-r5.ebuild
index 93a1ab5de535..c7aa3cdf3307 100644
--- a/dev-python/QtPy/QtPy-1.9.0-r4.ebuild
+++ b/dev-python/QtPy/QtPy-1.9.0-r5.ebuild
@@ -23,17 +23,19 @@ _IUSE_QT_MODULES="
IUSE="+pyqt5 pyside2 ${_IUSE_QT_MODULES}"
unset _IUSE_QT_MODULES
+# PySide2 does not support python3_10, nor is it likely that it will in the
+# future since upstream appears to be focussing on PySide6 for Qt6 instead
+# (which is compatible with python3_10). So if we want to use python3_10
+# we have to force disable pyside2.
REQUIRED_USE="
|| ( pyqt5 pyside2 )
- test? ( pyqt5 pyside2 )
+ python_targets_python3_10? ( pyqt5 !pyside2 )
"
# These flags are currently *not* common to both the PySide2 and PyQt5 ebuild
# Disable them for now, please check periodically if this is still up to date.
# bluetooth? ( pyqt5 )
# dbus? ( pyqt5 )
-# networkauth? ( pyqt5 )
-# webkit? ( pyqt5 )
#
# 3d? ( pyside2 )
# charts? ( pyside2 )
@@ -72,13 +74,15 @@ RDEPEND="
webengine? ( dev-python/PyQtWebEngine[${PYTHON_USEDEP}] )
)
pyside2? (
- dev-python/pyside2[${PYTHON_USEDEP}]
- dev-python/pyside2[designer?,gui?,help?,location?,multimedia?]
- dev-python/pyside2[network?,opengl(+)?,positioning?,printsupport?]
- dev-python/pyside2[sensors?,serialport(+)?,sql?,svg?,testlib?]
- dev-python/pyside2[webchannel?,webengine?,websockets?,widgets?]
- dev-python/pyside2[x11extras?,xml?,xmlpatterns?]
- declarative? ( dev-python/pyside2[qml,quick] )
+ $(python_gen_cond_dep '
+ dev-python/pyside2[${PYTHON_USEDEP}]
+ dev-python/pyside2[designer?,gui?,help?,location?,multimedia?]
+ dev-python/pyside2[network?,opengl(+)?,positioning?,printsupport?]
+ dev-python/pyside2[sensors?,serialport(+)?,sql?,svg?,testlib?]
+ dev-python/pyside2[webchannel?,webengine?,websockets?,widgets?]
+ dev-python/pyside2[x11extras?,xml?,xmlpatterns?]
+ declarative? ( dev-python/pyside2[qml,quick] )
+ ' python3_{7..9} )
)
"
@@ -90,22 +94,29 @@ BDEPEND="
dev-python/mock[${PYTHON_USEDEP}]
dev-python/PyQt5[${PYTHON_USEDEP}]
dev-python/PyQt5[bluetooth,dbus,declarative,designer,gui,help,location]
- dev-python/PyQt5[multimedia,network,networkauth,opengl,positioning]
- dev-python/PyQt5[printsupport,sensors,serialport,sql,svg,testlib]
- dev-python/PyQt5[webchannel,websockets,widgets,x11extras,xml(+)]
- dev-python/PyQt5[xmlpatterns]
+ dev-python/PyQt5[multimedia,network,opengl,positioning,printsupport]
+ dev-python/PyQt5[sensors,serialport,sql,svg,testlib,webchannel]
+ dev-python/PyQt5[websockets,widgets,x11extras,xml(+),xmlpatterns]
dev-python/PyQtWebEngine[${PYTHON_USEDEP}]
- 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]
-)"
+ $(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_{7..9} )
+ )
+"
distutils_enable_tests pytest
+# https://github.com/spyder-ide/qtpy/issues/238
+PATCHES=(
+ "${FILESDIR}/${P}-python3_9.patch"
+)
+
src_prepare() {
default
if ! use pyqt5; then
@@ -113,12 +124,14 @@ src_prepare() {
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
# Disable outdated PyQt4 and PySide
sed -i -e "s/from PyQt4.Qt import/raise ImportError #/" qtpy/__init__.py || die
sed -i -e "s/from PyQt4.QtCore import/raise ImportError #/" qtpy/__init__.py || die
sed -i -e "s/from PySide import/raise ImportError #/" qtpy/__init__.py || die
+ sed -i -e "s/from PySide.QtCore import/raise ImportError #/" qtpy/__init__.py || die
}
src_test() {
@@ -126,10 +139,16 @@ src_test() {
}
python_test() {
- local -x QT_API
- for QT_API in pyqt5 pyside2; do
- epytest
- done
+ if use pyqt5; then
+ QT_API="pyqt5" epytest
+ fi
+ if use pyside2; then
+ if [[ "${EPYTHON}" == "python3.10" ]]; then
+ return
+ else
+ QT_API="pyside2" epytest
+ fi
+ fi
}
pkg_postinst() {
diff --git a/dev-python/QtPy/files/QtPy-1.9.0-python3_9.patch b/dev-python/QtPy/files/QtPy-1.9.0-python3_9.patch
new file mode 100644
index 000000000000..7a3d812f1771
--- /dev/null
+++ b/dev-python/QtPy/files/QtPy-1.9.0-python3_9.patch
@@ -0,0 +1,13 @@
+diff --git a/qtpy/uic.py b/qtpy/uic.py
+index 07d7a78..84525ab 100644
+--- a/qtpy/uic.py
++++ b/qtpy/uic.py
+@@ -181,7 +181,7 @@ else:
+
+ custom_widget_classes = {}
+
+- for custom_widget in custom_widgets.getchildren():
++ for custom_widget in list(custom_widgets):
+
+ cw_class = custom_widget.find('class').text
+ cw_header = custom_widget.find('header').text
diff --git a/dev-python/awxkit/Manifest b/dev-python/awxkit/Manifest
index 02d5ebec89e2..e1e603ec39b8 100644
--- a/dev-python/awxkit/Manifest
+++ b/dev-python/awxkit/Manifest
@@ -1,2 +1,3 @@
DIST awxkit-19.0.0.tar.gz 95820 BLAKE2B eadb3ffbfd5a1bf2835e4a7df788e06676cd7c8132c8527c04c4876e87039b72ed00775ddc342e0b31bb0c4a7036b3ecb0456761b9a6a1a5f40e60656fd06521 SHA512 169531549fd668e9917db55f2d61d8959645659496f249d9bb94432b9d7449aa549a751aa3c0255c38334e24684e4039e581d26aa2c291ede88b623824b78ff9
DIST awxkit-19.1.0.tar.gz 94839 BLAKE2B 751084164581dd772c4f99b14d3e3526effd758bffda0820be56f0d963903314458c0037df33606bf0329009186ef86df1fa0c41f9ecd377b8c2d2de15bcd9e0 SHA512 a4be398f81f370e62b60605c0add70775eebf78bbd21080a65caa64c5b9f9daf33315516cd3771d434ff86d2bb9ec089545adbc174bd19ef5e52ae69e6cb79db
+DIST awxkit-19.2.0.tar.gz 94870 BLAKE2B becd8819e5d7f495d73a16302389af802db9fc3d9e24e09f93f0e5a730552e676a2f6514a07ea6d90436837c78a32e6a7be9ba541942aae6e8437c30aa4fb2c5 SHA512 3bcae70da26170a8b9cfc49c3ea3391f4fc03c868286499b5d3303da3559927c1fd2c0aeae282831412825e34fb83d8324fe2e58ba11d60598bbbbb26ff661a3
diff --git a/dev-python/awxkit/awxkit-19.2.0.ebuild b/dev-python/awxkit/awxkit-19.2.0.ebuild
new file mode 100644
index 000000000000..7a78c5e4d7ef
--- /dev/null
+++ b/dev-python/awxkit/awxkit-19.2.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+inherit distutils-r1
+
+DESCRIPTION="Command line interface for Ansible AWX"
+HOMEPAGE="https://github.com/ansible/awx"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/urllib3[${PYTHON_USEDEP}]
+ dev-python/websocket-client[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ sed -e 's|websocket-client==[[:digit:]\.]*|websocket-client|' \
+ -i setup.py || die
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/blosc/Manifest b/dev-python/blosc/Manifest
index 424283edb88b..c35afc208d92 100644
--- a/dev-python/blosc/Manifest
+++ b/dev-python/blosc/Manifest
@@ -1 +1,2 @@
DIST blosc-1.10.2.tar.gz 858096 BLAKE2B ff314011e1afc2d972c2445df9ad25c245494479201ddd0944ddf5f14aa0aa772c9da1e117eb5395f5488e7238aefe1236d9a5579b4d03be2b041790de9575e8 SHA512 82dab50a49ddd45d8276fd43999233f41b507e35af5897ed4945565fde8f56be0855b0dd926d254bd77904ec7a13ad3f024007159510b677769d97599b731222
+DIST blosc-1.10.4.tar.gz 858123 BLAKE2B 01c9bd9486a27944caae1bc92b591c8b6f821bb5a6a0b44bc19f6c1778f2a2573a25783631c2140daa4d701569e584c93f8d5da76a92b73fb35ae5880ad2ea34 SHA512 bb41b83ff5198603e3721150976f95ffcbfe7b91bd5b11e1aa5e440dee1af7a9a6f5033e5aa4858117432e1522052ec074e9f14b5be52545e3752bc818637703
diff --git a/dev-python/blosc/blosc-1.10.4.ebuild b/dev-python/blosc/blosc-1.10.4.ebuild
new file mode 100644
index 000000000000..4069cc89c264
--- /dev/null
+++ b/dev-python/blosc/blosc-1.10.4.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="High performance compressor optimized for binary data"
+HOMEPAGE="http://python-blosc.blosc.org"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND=">=dev-libs/c-blosc-1.19.0:="
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-python/scikit-build[${PYTHON_USEDEP}]
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( ANNOUNCE.rst README.rst RELEASE_NOTES.rst )
+PATCHES=(
+ "${FILESDIR}"/blosc-1.10.0-unbundle.patch
+)
+
+python_prepare_all() {
+ export BLOSC_DIR="${EPREFIX}/usr"
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ "${EPYTHON}" -m blosc.test -v || die
+}
+
+python_install() {
+ distutils-r1_python_install
+ python_optimize
+}
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index e31b9ecdf1a6..8989654efeaf 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -6,3 +6,4 @@ DIST boto3-1.17.80.tar.gz 375564 BLAKE2B dd10855ff88a0f24789cb389b0e10c3a6d4f984
DIST boto3-1.17.82.tar.gz 376284 BLAKE2B 33520a1a80566a17b3a0665ce2520e73bab69b48db02b1ac25b6ff438a2dd68a75c08026abce6a2274e1fa40aaa7fe4f0e56ecc663672d9a6eef205df5d0baea SHA512 0ab14df312032a64746624b67dc721c45ed6cb7c3be21cceba77eb4c20a76d85bd2db22eca41f598431f6579473becc78e84075a57ab43b16561d4b58e3648a5
DIST boto3-1.17.83.tar.gz 376963 BLAKE2B 0bdcae1097a8ee4250c08fe639419ea99b83e33ea77433698ee9bafd928252e6b836c93bb83d383ff4aeacc583d2309236e80d2ebd5425e320aa2a80da295964 SHA512 c1dad3d17b0bf628ae31edda3a6eaf01fa1b820031d541f0dd4f4d56e98a1da9f868ed1c6e63ff0b6bd83cda027c540c08b41a066d3b35959294779c2113cb37
DIST boto3-1.17.84.tar.gz 377284 BLAKE2B dbbc6b8643b720a8a5409c334e268b6de465e7db05684ff5a70d95c91e7e2feff3c3db94ad85f400ac7451e8f37537732ed416602c35bf37955d840701bf5bb4 SHA512 19d224c9bd7135d1de4da807b51f72a3366d5774dba970896388bffb1308b348b001453c0632de5eee8f03bdf0c2b8cf3e9da894e73cb16e10551e060beef5fe
+DIST boto3-1.17.85.tar.gz 377940 BLAKE2B 7fdfa25b7fd6467f484dc988bac280b0e4e7044f2a064625efdc5e6f9725b038f08b88f63442452b151541ae4f0ff26ae395816f6422b49474d2e8d93df3a7da SHA512 126e78056b8ac52cba3db5965563c4b6c1451f5aeba2d7d775f358e75f810229102328230e0f5dd1ef3767468106f1d7f3af5575e51422c6b63ef6b509318e70
diff --git a/dev-python/boto3/boto3-1.17.85.ebuild b/dev-python/boto3/boto3-1.17.85.ebuild
new file mode 100644
index 000000000000..511fc98f5fff
--- /dev/null
+++ b/dev-python/boto3/boto3-1.17.85.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+DISTUTILS_USE_SETUPTOOLS=bdepend
+inherit distutils-r1
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="https://github.com/boto/boto3"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+if [[ "${PV}" == "9999" ]]; then
+ EGIT_REPO_URI="https://github.com/boto/boto3"
+ inherit git-r3
+ BOTOCORE_PV=${PV}
+else
+ SRC_URI="https://github.com/boto/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+ # botocore is x.(y+3).z
+ BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 3)).$(ver_cut 3-)"
+fi
+
+RDEPEND="
+ >=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.3.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_sphinx docs/source \
+ 'dev-python/guzzle_sphinx_theme'
+distutils_enable_tests nose
+
+python_prepare_all() {
+ # don't lock versions to narrow ranges
+ sed -e '/botocore/ d' \
+ -e '/jmespath/ d' \
+ -e '/s3transfer/ d' \
+ -i setup.py || die
+
+ # prevent an infinite loop
+ rm tests/functional/docs/test_smoke.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ nosetests -v tests/unit/ tests/functional/ || die "test failed under ${EPYTHON}"
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index b0bd13423abf..f74f63db14d5 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -6,3 +6,4 @@ DIST botocore-1.20.80.tar.gz 7767475 BLAKE2B de8f7f6575e9e5a7f7e8ad0adeb886be776
DIST botocore-1.20.82.tar.gz 7772021 BLAKE2B 09fc32ba42275afde8332287825e954bd5bb8b7f5bea00666f73baf60297bd972b2ec6525f1d6e16e22bb23e233b619fecbb666dcdededcc07a016c9763ab774 SHA512 227b7160ef9d945d00efdcdfaa60ed85d50b183fbeded816e6185b8125b32c2fa0eee9dc473f83f977c0de2139eb042f3338eea37081b37d480edd7c300b641f
DIST botocore-1.20.83.tar.gz 7786168 BLAKE2B 1bd8864da814ed502c4e0860d8c7a82c6c15d778f2aafc333ffe6e64f45398c173ad7700f9fc90a9fbf4b91f8f77b5494619bdc6e4bda1dcec6cef8d496327c2 SHA512 7ff1c73d85e02cc1f2de1de915d337369681e28ac44aba5cfb29df6bc4377f664170844ed8caeb7e50c97d127d1e9caac08fac18724046a7f1450cc7ea212b4a
DIST botocore-1.20.84.tar.gz 7792555 BLAKE2B e9459fad976bb81541ce933666edccdbfe9910674cde9f23b264388845cb3e98cae77639a3333cb3fec00c33602af8fea82681fbd387775ff9ed47245e4d0e4f SHA512 da19ffb81c24c2e7a10c5e0647179f36ebf89c097f795cb16d723a3e0311a81e9c835b7b3795d02047d084a098507f4b6e0cc502129877e4258691a6a6ee1cee
+DIST botocore-1.20.85.tar.gz 7795550 BLAKE2B 483b6fef456de9a37b00dbaf0f2af766079447f70fb992c96f0ab8208c3ce0e39a459d89a29e07b7e9fed9e1b39ddfeac28c3de5bfac1ddde1aac2cbecfe4056 SHA512 1a3e07da2c1b60680c858e4b732fe340563b18ec10aad7a9250bff7e7a11a97ccd3e952245187b90fe84b2fddd8f48568d70d69a03612782da5d90a8e2d06de3
diff --git a/dev-python/botocore/botocore-1.20.85.ebuild b/dev-python/botocore/botocore-1.20.85.ebuild
new file mode 100644
index 000000000000..ca62b7dad65f
--- /dev/null
+++ b/dev-python/botocore/botocore-1.20.85.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="https://github.com/boto/botocore"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+if [[ "${PV}" == "9999" ]]; then
+ EGIT_REPO_URI="https://github.com/boto/botocore"
+ inherit git-r3
+else
+ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+
+RDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/jmespath[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/1.8.6-tests-pass-all-env-vars-to-cmd-runner.patch"
+)
+
+distutils_enable_sphinx docs/source \
+ 'dev-python/guzzle_sphinx_theme'
+distutils_enable_tests nose
+
+src_prepare() {
+ # unpin deps
+ sed -i -e "s:>=.*':':" setup.py || die
+ # very unstable
+ sed -i -e 's:test_stress_test_token_bucket:_&:' \
+ tests/functional/retries/test_bucket.py || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ # note: suites need to be run separately as one of the unit tests
+ # seems to be leaking mocks and breaking a few functional tests
+ nosetests -v tests/unit ||
+ die "unit tests failed under ${EPYTHON}"
+ nosetests -v tests/functional ||
+ die "functional tests failed under ${EPYTHON}"
+}
diff --git a/dev-python/click-log/click-log-0.3.2.ebuild b/dev-python/click-log/click-log-0.3.2.ebuild
index ff12cff7e58d..53b96f21e8fa 100644
--- a/dev-python/click-log/click-log-0.3.2.ebuild
+++ b/dev-python/click-log/click-log-0.3.2.ebuild
@@ -2,14 +2,12 @@
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
inherit distutils-r1
DESCRIPTION="Logging integration for Click"
-HOMEPAGE="
- https://github.com/click-contrib/click-log/
- https://pypi.org/project/click-log/"
+HOMEPAGE="https://github.com/click-contrib/click-log https://pypi.org/project/click-log/"
SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
@@ -17,6 +15,7 @@ SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
RDEPEND="dev-python/click[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
DOCS=( README.rst )
diff --git a/dev-python/click-threading/click-threading-0.4.4.ebuild b/dev-python/click-threading/click-threading-0.4.4.ebuild
index 9b6c19df9df6..773b13f06f8c 100644
--- a/dev-python/click-threading/click-threading-0.4.4.ebuild
+++ b/dev-python/click-threading/click-threading-0.4.4.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=7
PYTHON_COMPAT=( python3_{6,7,8,9,10} )
inherit distutils-r1
@@ -14,7 +14,7 @@ LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-RDEPEND=">=dev-python/click-5.0[${PYTHON_USEDEP}]"
+RDEPEND="dev-python/click[${PYTHON_USEDEP}]"
DEPEND="${RDEPEND}"
DOCS=( README.rst )
diff --git a/dev-python/constantly/constantly-15.1.0-r1.ebuild b/dev-python/constantly/constantly-15.1.0-r1.ebuild
index 301afe3ecf55..0736ccb2ad6e 100644
--- a/dev-python/constantly/constantly-15.1.0-r1.ebuild
+++ b/dev-python/constantly/constantly-15.1.0-r1.ebuild
@@ -22,6 +22,4 @@ DEPEND="${RDEPEND}
test? ( dev-python/twisted[${PYTHON_USEDEP}] )
"
-python_test() {
- esetup.py test
-}
+distutils_enable_tests setup.py
diff --git a/dev-python/dbus-python/dbus-python-1.2.16-r1.ebuild b/dev-python/dbus-python/dbus-python-1.2.16-r1.ebuild
index b9ddcc55e361..6906709a4a0d 100644
--- a/dev-python/dbus-python/dbus-python-1.2.16-r1.ebuild
+++ b/dev-python/dbus-python/dbus-python-1.2.16-r1.ebuild
@@ -9,7 +9,7 @@ PYTHON_REQ_USE="threads(+)"
inherit autotools python-r1
DESCRIPTION="Python bindings for the D-Bus messagebus"
-HOMEPAGE="https://www.freedesktop.org/wiki/Software/DBusBindings https://dbus.freedesktop.org/doc/dbus-python/"
+HOMEPAGE="https://www.freedesktop.org/wiki/Software/DBusBindings/ https://dbus.freedesktop.org/doc/dbus-python/"
SRC_URI="https://dbus.freedesktop.org/releases/${PN}/${P}.tar.gz"
LICENSE="MIT"
@@ -28,7 +28,10 @@ RDEPEND="${PYTHON_DEPS}
DEPEND="${RDEPEND}"
BDEPEND="
virtual/pkgconfig
- doc? ( $(python_gen_any_dep 'dev-python/sphinx[${PYTHON_USEDEP}]') )
+ doc? ( $(python_gen_any_dep '
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
+ ') )
test? ( dev-python/pygobject:3[${PYTHON_USEDEP}]
dev-python/tappy[${PYTHON_USEDEP}] )
"
@@ -37,6 +40,7 @@ PATCHES=( "${FILESDIR}/${P}-py39.patch" )
python_check_deps() {
has_version "dev-python/sphinx[${PYTHON_USEDEP}]"
+ has_version "dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]"
}
src_prepare() {
diff --git a/dev-python/django/django-3.2.3.ebuild b/dev-python/django/django-3.2.3-r1.ebuild
index 705984d913bb..ef9f71870d8b 100644
--- a/dev-python/django/django-3.2.3.ebuild
+++ b/dev-python/django/django-3.2.3-r1.ebuild
@@ -50,6 +50,8 @@ BDEPEND="
PATCHES=(
"${FILESDIR}"/${PN}-3.1-bashcomp.patch
+ # From https://github.com/django/django/pull/14228
+ "${FILESDIR}"/${P}-py310-repr.patch
)
distutils_enable_sphinx docs --no-autodoc
@@ -67,6 +69,13 @@ src_unpack() {
default
}
+python_prepare_all() {
+ # Fails because of warnings
+ sed -i 's/test_dumpdata_proxy_with_concrete/_&/' tests/fixtures/tests.py
+
+ distutils-r1_python_prepare_all
+}
+
python_test() {
# Tests have non-standard assumptions about PYTHONPATH,
# and don't work with ${BUILD_DIR}/lib.
diff --git a/dev-python/django/files/django-3.2.3-py310-repr.patch b/dev-python/django/files/django-3.2.3-py310-repr.patch
new file mode 100644
index 000000000000..9bc32ecf176d
--- /dev/null
+++ b/dev-python/django/files/django-3.2.3-py310-repr.patch
@@ -0,0 +1,92 @@
+diff --git a/django/db/models/constraints.py b/django/db/models/constraints.py
+index b073df17636a..6dfc42942f79 100644
+--- a/django/db/models/constraints.py
++++ b/django/db/models/constraints.py
+@@ -4,6 +4,7 @@
+ from django.db.models.indexes import IndexExpression
+ from django.db.models.query_utils import Q
+ from django.db.models.sql.query import Query
++from django.utils.version import PY310
+
+ __all__ = ['CheckConstraint', 'Deferrable', 'UniqueConstraint']
+
+@@ -85,6 +86,11 @@ class Deferrable(Enum):
+ DEFERRED = 'deferred'
+ IMMEDIATE = 'immediate'
+
++ # A similar format is used in Python 3.10+.
++ if not PY310:
++ def __repr__(self):
++ return '%s.%s' % (self.__class__.__qualname__, self._name_)
++
+
+ class UniqueConstraint(BaseConstraint):
+ def __init__(
+@@ -218,7 +224,7 @@ def __repr__(self):
+ '' if not self.expressions else ' expressions=%s' % repr(self.expressions),
+ ' name=%s' % repr(self.name),
+ '' if self.condition is None else ' condition=%s' % self.condition,
+- '' if self.deferrable is None else ' deferrable=%s' % self.deferrable,
++ '' if self.deferrable is None else ' deferrable=%r' % self.deferrable,
+ '' if not self.include else ' include=%s' % repr(self.include),
+ '' if not self.opclasses else ' opclasses=%s' % repr(self.opclasses),
+ )
+diff --git a/django/db/models/enums.py b/django/db/models/enums.py
+index 7082a397c237..dd9088597d4d 100644
+--- a/django/db/models/enums.py
++++ b/django/db/models/enums.py
+@@ -2,6 +2,7 @@
+ from types import DynamicClassAttribute
+
+ from django.utils.functional import Promise
++from django.utils.version import PY310
+
+ __all__ = ['Choices', 'IntegerChoices', 'TextChoices']
+
+@@ -74,6 +75,11 @@ def __str__(self):
+ """
+ return str(self.value)
+
++ # A similar format is used in Python 3.10+.
++ if not PY310:
++ def __repr__(self):
++ return '%s.%s' % (self.__class__.__qualname__, self._name_)
++
+
+ class IntegerChoices(int, Choices):
+ """Class for creating enumerated integer choices."""
+diff --git a/tests/model_enums/tests.py b/tests/model_enums/tests.py
+index 78f8b146be92..cda835010d7e 100644
+--- a/tests/model_enums/tests.py
++++ b/tests/model_enums/tests.py
+@@ -48,7 +48,7 @@ def test_integerchoices(self):
+ self.assertEqual(Suit.values, [1, 2, 3, 4])
+ self.assertEqual(Suit.names, ['DIAMOND', 'SPADE', 'HEART', 'CLUB'])
+
+- self.assertEqual(repr(Suit.DIAMOND), '<Suit.DIAMOND: 1>')
++ self.assertEqual(repr(Suit.DIAMOND), 'Suit.DIAMOND')
+ self.assertEqual(Suit.DIAMOND.label, 'Diamond')
+ self.assertEqual(Suit.DIAMOND.value, 1)
+ self.assertEqual(Suit['DIAMOND'], Suit.DIAMOND)
+@@ -89,7 +89,7 @@ def test_textchoices(self):
+ self.assertEqual(YearInSchool.values, ['FR', 'SO', 'JR', 'SR', 'GR'])
+ self.assertEqual(YearInSchool.names, ['FRESHMAN', 'SOPHOMORE', 'JUNIOR', 'SENIOR', 'GRADUATE'])
+
+- self.assertEqual(repr(YearInSchool.FRESHMAN), "<YearInSchool.FRESHMAN: 'FR'>")
++ self.assertEqual(repr(YearInSchool.FRESHMAN), 'YearInSchool.FRESHMAN')
+ self.assertEqual(YearInSchool.FRESHMAN.label, 'Freshman')
+ self.assertEqual(YearInSchool.FRESHMAN.value, 'FR')
+ self.assertEqual(YearInSchool['FRESHMAN'], YearInSchool.FRESHMAN)
+diff --git a/django/utils/version.py b/django/utils/version.py
+index 4b26586b36..b84ca7db27 100644
+--- a/django/utils/version.py
++++ b/django/utils/version.py
+@@ -13,7 +13,7 @@ PY36 = sys.version_info >= (3, 6)
+ PY37 = sys.version_info >= (3, 7)
+ PY38 = sys.version_info >= (3, 8)
+ PY39 = sys.version_info >= (3, 9)
+-
++PY310 = sys.version_info >= (3, 10)
+
+ def get_version(version=None):
+ """Return a PEP 440-compliant version number from VERSION."""
diff --git a/dev-python/google-api-python-client/Manifest b/dev-python/google-api-python-client/Manifest
index 151b8cb4c2e9..984bdc3d6779 100644
--- a/dev-python/google-api-python-client/Manifest
+++ b/dev-python/google-api-python-client/Manifest
@@ -3,3 +3,4 @@ DIST google-api-python-client-2.3.0.tar.gz 24912943 BLAKE2B 60233808f0f6243c37e8
DIST google-api-python-client-2.4.0.tar.gz 24853833 BLAKE2B 4ed2083a9bb8b4f8fe31ab5dbd7875c0c36c972cdb0f71a59565fe4eb23ff1ef0a40794acd7af9646c1ee3904fbab3caaeb2700a3660b66d3069d2bc4f811e76 SHA512 db545850b9d2746e3bcf7b4a2f12b0d4827bd68f44d5627fd80d39bff2ca3303c8d520f72ee17637fe700bc935548706ce885ff0d7fe737ae157668e0314fbc6
DIST google-api-python-client-2.5.0.tar.gz 24996941 BLAKE2B cd29420cde87584324fedc8a0ebb91fa20e65a84418cab1eae8ac5a7adedbb09a8f5b1367e3ff7606f448b1125c6d4289cb2dcd908031707774fe7dad50c9229 SHA512 b97abbf87aab42ea14907500d5955d43e318087a73ddb08c43d8f073aefdb56ef31dce7d3ce054ac8bbe6140d5adbb6a54dc977b4c504cad00fe99937f5acb7e
DIST google-api-python-client-2.6.0.tar.gz 25405797 BLAKE2B 4961d4940b82edb1ef839b7433c69a0c0abded1593a7a229a97e52f42583d6808a3325d76a1dab4c6ff3d9c66462190e408ac22afc66b8c0585205ff7b0974af SHA512 eaf0bb958d54a5b74916ac962e6d0b1b55679ffe6a2bf663e0574a86c799e9ba3ae49ff9a986b81ebe8ba407c8dfe4e46388325f3725afe49f2b157fca10b978
+DIST google-api-python-client-2.7.0.tar.gz 25488451 BLAKE2B a8a761944fed3970ae0cf53b2cb926a6670ac37323c39085a5f7fb4f354451292fca4bbb2c34a72d086dfa961b74a72f66319f6bbc2505ef70f5c94aff3f7a0e SHA512 531e919cc9d0cffc49b31d881a6ee3adb2d9cc166813b5884c300e9a3b63b28c9c269a0d1efe47961fa61f79ec5adb8a12e2208b644fd62ed4baa66c56d219ba
diff --git a/dev-python/google-api-python-client/google-api-python-client-2.7.0.ebuild b/dev-python/google-api-python-client/google-api-python-client-2.7.0.ebuild
new file mode 100644
index 000000000000..65426126077e
--- /dev/null
+++ b/dev-python/google-api-python-client/google-api-python-client-2.7.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Google API Client for Python"
+HOMEPAGE="https://github.com/googleapis/google-api-python-client"
+SRC_URI="https://github.com/googleapis/google-api-python-client/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/httplib2-0.15[${PYTHON_USEDEP}]
+ <dev-python/httplib2-1[${PYTHON_USEDEP}]
+ dev-python/google-api-core[${PYTHON_USEDEP}]
+ >=dev-python/google-auth-1.16.0[${PYTHON_USEDEP}]
+ >=dev-python/google-auth-httplib2-0.1.0[${PYTHON_USEDEP}]
+ >=dev-python/uritemplate-3.0.0[${PYTHON_USEDEP}]
+ <dev-python/uritemplate-4[${PYTHON_USEDEP}]
+ >=dev-python/six-1.13.0[${PYTHON_USEDEP}]
+ <dev-python/six-2[${PYTHON_USEDEP}]
+ "
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/oauth2client[${PYTHON_USEDEP}]
+ dev-python/pandas[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ dev-python/unittest2[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests --install pytest
+
+python_test() {
+ local deselect=(
+ # require Internet access (and credentials)
+ tests/test_discovery.py::DiscoveryErrors::test_credentials_and_credentials_file_mutually_exclusive
+ tests/test_discovery.py::DiscoveryFromDocument::test_api_endpoint_override_from_client_options_mapping_object
+ )
+
+ distutils_install_for_testing
+ epytest ${deselect[@]/#/--deselect }
+}
diff --git a/dev-python/jwcrypto/Manifest b/dev-python/jwcrypto/Manifest
index f351f9e6eeb3..bc58a0cf8890 100644
--- a/dev-python/jwcrypto/Manifest
+++ b/dev-python/jwcrypto/Manifest
@@ -1 +1,2 @@
DIST jwcrypto-0.8.0.tar.gz 81782 BLAKE2B a3cfb04f099a747c365f870c53d75574cdfaf8b98373f37cc107ebca956b414b7d7cb78f8fcd6d3964528d3bc8a217e5c645bf6e82531e951dfdd9ca03472111 SHA512 784134d27ff7abd31e1069763969513ed45f81fd2c242b7ff7036413c35ef374d535eae0123f5561a8e4eb2630cee40056d1c66454288e1310c4cbedecaac210
+DIST jwcrypto-0.9.0.tar.gz 83891 BLAKE2B 873f6764d13ea80e8c4e1709fcf4e2a70cb59834521154b35cb94a51ce5cbfa7f4e2d079a3c096b013eef6f3a6adc4935cd3416b22f20b9edce01e95dc1910fb SHA512 6a2670aad8a3db926c4a6e54a62f3b698b717a8bc1726ba8f13e2415f574202e205cab76c79564280dcb2b3b4002a7c03c172d20761c70f76dc007a1ae26dad5
diff --git a/dev-python/jwcrypto/jwcrypto-0.9.0.ebuild b/dev-python/jwcrypto/jwcrypto-0.9.0.ebuild
new file mode 100644
index 000000000000..09ff570aa4cd
--- /dev/null
+++ b/dev-python/jwcrypto/jwcrypto-0.9.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Implements JWK,JWS,JWE specifications using python-cryptography"
+
+HOMEPAGE="https://github.com/latchset/jwcrypto"
+SRC_URI="
+ https://github.com/latchset/jwcrypto/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/cryptography-2.3[${PYTHON_USEDEP}]
+ dev-python/deprecated[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]"
+
+distutils_enable_sphinx docs/source
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # Do not install doc in non-standard paths
+ sed -i "\|data_files = \[('share/doc/jwcrypto|d" setup.py || die
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/oauthlib/Manifest b/dev-python/oauthlib/Manifest
index 62d9b15d1d24..68ed6914b737 100644
--- a/dev-python/oauthlib/Manifest
+++ b/dev-python/oauthlib/Manifest
@@ -1 +1,2 @@
DIST oauthlib-3.1.0.tar.gz 155362 BLAKE2B 83e9331589305c85acc755f9c4dab8558a19aa247aff5be0fe6c51d047fb9e96b64f17d07a3e33378f6ebc73a283e0162bab56e110aca581f73b628544042600 SHA512 c295de232e0215532c501d8f0803bd501a15fe89a746179ba4facca878e4927c8c05f07825f483c4a846922fb49d6d89f559a8b49bb72b19903f902d772b790e
+DIST oauthlib-3.1.1.tar.gz 161395 BLAKE2B bc127841a16429364191a69777741135594366a5c99b32f063ce9bec4b6a3e9b7eb67515aee4da37f26cc2e8b2a2450fc708a21da7e4944861b9adbd9e112018 SHA512 1c18f265a6017a6f2bf77507f5de095b439be36f309316993b547ded0f306461b058dcb85dc245bf26f65a9c77be44ca38f9053f3300a9b5cb92332b61a7f307
diff --git a/dev-python/oauthlib/oauthlib-3.1.1.ebuild b/dev-python/oauthlib/oauthlib-3.1.1.ebuild
new file mode 100644
index 000000000000..f69bb6c8ffab
--- /dev/null
+++ b/dev-python/oauthlib/oauthlib-3.1.1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Spec-compliant and thorough implementation of the OAuth request-signing logic"
+HOMEPAGE="https://github.com/oauthlib/oauthlib https://pypi.org/project/oauthlib/"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+# optional extras hard set as RDEPs. See setup.py
+RDEPEND="
+ >=dev-python/pyjwt-1.0.0[${PYTHON_USEDEP}]
+ dev-python/blinker[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ "
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests unittest
diff --git a/dev-python/pafy/pafy-0.5.5.ebuild b/dev-python/pafy/pafy-0.5.5.ebuild
index 0bb0d5d44a1b..969a4ea5a946 100644
--- a/dev-python/pafy/pafy-0.5.5.ebuild
+++ b/dev-python/pafy/pafy-0.5.5.ebuild
@@ -1,7 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
+
PYTHON_COMPAT=( python3_{6,7,8,9,10} )
DISTUTILS_USE_SETUPTOOLS=bdepend
inherit distutils-r1
diff --git a/dev-python/pafy/pafy-9999.ebuild b/dev-python/pafy/pafy-9999.ebuild
index 0bb0d5d44a1b..969a4ea5a946 100644
--- a/dev-python/pafy/pafy-9999.ebuild
+++ b/dev-python/pafy/pafy-9999.ebuild
@@ -1,7 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
+
PYTHON_COMPAT=( python3_{6,7,8,9,10} )
DISTUTILS_USE_SETUPTOOLS=bdepend
inherit distutils-r1
diff --git a/dev-python/prometheus_client/Manifest b/dev-python/prometheus_client/Manifest
index 8317e54b7930..6f6c15159bd1 100644
--- a/dev-python/prometheus_client/Manifest
+++ b/dev-python/prometheus_client/Manifest
@@ -1 +1,2 @@
DIST prometheus_client-0.10.1.tar.gz 71676 BLAKE2B 63a597eca0f7684013ca2de8cda9d9ca7ab64d3ff923e3d328c1e54e794ea9e34771795117a8cd8254063028ceedd9c50d15c89bba48d3994e79629ebae6df14 SHA512 231c86bfeb2a35fbaf172005ead5b790b107c55f3657d94ad417c0036cc72ad6b48ebef7d52d2fdd1bca9b98032d1057250a880b002a29e98efa803886f26766
+DIST prometheus_client-0.11.0.tar.gz 72272 BLAKE2B 2526a65acf928ce5f492c6a43276ecb951d8b600eeb5050b92db091919862eb0ec4f41ca41347b4dd70a612f70e8f4a49796572de80b197d21c3a8cf8e303201 SHA512 5e644d781b7fcc3e0e386a2244f524ccaf978f1eab87b1d6d8009ac3f10fe2ca4adf2c76c2a2ffa47b4b54237cd906807d55bd99530a92d82cd3825de93280dc
diff --git a/dev-python/prometheus_client/prometheus_client-0.11.0.ebuild b/dev-python/prometheus_client/prometheus_client-0.11.0.ebuild
new file mode 100644
index 000000000000..1e789d82721b
--- /dev/null
+++ b/dev-python/prometheus_client/prometheus_client-0.11.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+inherit distutils-r1
+
+DESCRIPTION="Python client for the Prometheus monitoring system"
+HOMEPAGE="https://pypi.org/project/prometheus-client/
+ https://github.com/prometheus/client_python/"
+SRC_URI="https://github.com/prometheus/client_python/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/client_python-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="dev-python/twisted[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
diff --git a/dev-python/protobuf-python/protobuf-python-3.15.8.ebuild b/dev-python/protobuf-python/protobuf-python-3.15.8.ebuild
index bab70cc56440..00ff0f36dcdb 100644
--- a/dev-python/protobuf-python/protobuf-python-3.15.8.ebuild
+++ b/dev-python/protobuf-python/protobuf-python-3.15.8.ebuild
@@ -24,7 +24,7 @@ fi
LICENSE="BSD"
SLOT="0/26"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~mips ~ppc ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
IUSE=""
BDEPEND="${PYTHON_DEPS}
diff --git a/dev-python/pygit2/Manifest b/dev-python/pygit2/Manifest
index 604910fac8bf..2513d3009788 100644
--- a/dev-python/pygit2/Manifest
+++ b/dev-python/pygit2/Manifest
@@ -1 +1,2 @@
DIST pygit2-1.5.0.tar.gz 255958 BLAKE2B 696a4c39920e7f66962b69d2a838c55bfb6f96e7e5ee56a39aaa732926accc3bb6331042382fd22f377959cbc129be0320d94765d13db95fdb7c7f87a14f7608 SHA512 3f915c855ad08641391565906023d231550a38d4e7f8938fad4634a30e2ee1c81e2a0d3289052426e21d2c14814300a0f789eaaa9f3e62c3ece73cf53803bb80
+DIST pygit2-1.6.0.tar.gz 265798 BLAKE2B 8244cbcecdd9b9edcb8fb0cfbc2024f1d36a01c8a3e519e05770ca80d7a482393892bcbd4a61402e7622b84f02909a2a36b9767273d6322a94a15eb974fdb8fa SHA512 c051ce09d227b6ec0c7d3068b5b0220f5c150936d788462dfb3236c97954f9b76f6a1fd61cd42e604810582e3d1a5bc8784fc51c9fedac66ad1b42af580af494
diff --git a/dev-python/pygit2/pygit2-1.6.0.ebuild b/dev-python/pygit2/pygit2-1.6.0.ebuild
new file mode 100644
index 000000000000..fde46352e44b
--- /dev/null
+++ b/dev-python/pygit2/pygit2-1.6.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python bindings for libgit2"
+HOMEPAGE="https://github.com/libgit2/pygit2 https://pypi.org/project/pygit2/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2-with-linking-exception"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ =dev-libs/libgit2-1.1*
+ dev-python/cached-property[${PYTHON_USEDEP}]
+ >=dev-python/cffi-1.0:=[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # unconditionally prevent it from using network
+ sed -i -e '/has_network/s:True:False:' test/utils.py || die
+
+ # we need to move them away to prevent pytest from forcing '..'
+ # for imports
+ mkdir hack || die
+ mv test hack/ || die
+ ln -s hack/test test || die
+}
+
+python_test() {
+ pytest -vv hack/test || die
+}
diff --git a/dev-python/pynest2d/pynest2d-4.8.0-r1.ebuild b/dev-python/pynest2d/pynest2d-4.8.0-r1.ebuild
index 72c0f0528194..802580970e65 100644
--- a/dev-python/pynest2d/pynest2d-4.8.0-r1.ebuild
+++ b/dev-python/pynest2d/pynest2d-4.8.0-r1.ebuild
@@ -19,7 +19,7 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="${PYTHON_DEPS}
dev-libs/libnest2d
- $(python_gen_cond_dep 'dev-python/sip[${PYTHON_MULTI_USEDEP}]')
+ $(python_gen_cond_dep '<dev-python/sip-5[${PYTHON_MULTI_USEDEP}]')
"
DEPEND="${RDEPEND}"
diff --git a/dev-python/pyqt-distutils/pyqt-distutils-0.7.3.ebuild b/dev-python/pyqt-distutils/pyqt-distutils-0.7.3.ebuild
index b7f7d1b6a3d0..2ac66a9742ba 100644
--- a/dev-python/pyqt-distutils/pyqt-distutils-0.7.3.ebuild
+++ b/dev-python/pyqt-distutils/pyqt-distutils-0.7.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
diff --git a/dev-python/pyside2-tools/Manifest b/dev-python/pyside2-tools/Manifest
index 0d5e684462d4..670bc3b5adea 100644
--- a/dev-python/pyside2-tools/Manifest
+++ b/dev-python/pyside2-tools/Manifest
@@ -1 +1,2 @@
DIST pyside-setup-opensource-src-5.15.1.tar.xz 3454052 BLAKE2B c7190dff493434064976a4604fb5858d2e20c1b98098ccd6e5c4c69d0b67ae9f4bf970e2ab42b634208ea96aab31b21f3dfb5f18fddd0bdaab655bba729e4449 SHA512 f14c7037367799005fff73d9fc8e7998db1895700911adf34dfabdeb4db486c7b28ba2afb3eaee37c58f4099b00e4a86917b8f7d85f274026bddfc090658b306
+DIST pyside-setup-opensource-src-5.15.2.tar.xz 3472624 BLAKE2B 099abeaf25059a88f299f90b18cf79aa45acd86580c0873767b09f76268d6746cc3576743a19493a605de59b520471ddee6bba0e5340801ef44a21f2a9d41507 SHA512 5043c1c9db4ba0133baaabb4d4943182e9741b1007bedd992394758707a37bba0688dc6413ea46620e7c2fb09daa3c74e6a7bb2c302b9d08e5f3bb7575d02b62
diff --git a/dev-python/pyside2-tools/pyside2-tools-5.15.2.ebuild b/dev-python/pyside2-tools/pyside2-tools-5.15.2.ebuild
new file mode 100644
index 000000000000..414069988d3f
--- /dev/null
+++ b/dev-python/pyside2-tools/pyside2-tools-5.15.2.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# TODO: Add PyPy once officially supported. See also:
+# https://bugreports.qt.io/browse/PYSIDE-535
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+CMAKE_IN_SOURCE_BUILD=1
+
+inherit cmake python-r1
+
+MY_P=pyside-setup-opensource-src-${PV}
+
+DESCRIPTION="PySide development tools (pyside2-lupdate with support for Python)"
+HOMEPAGE="https://wiki.qt.io/PySide2"
+SRC_URI="https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-${PV}-src/${MY_P}.tar.xz"
+S="${WORKDIR}/${MY_P}/sources/${PN}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}
+ >=dev-python/pyside2-${PV}[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+
+DOCS=( README.md )
+
+# the tools conflict with tools from QT
+PATCHES=(
+ "${FILESDIR}/${PN}-5.15.1-dont-install-tools.patch"
+)
+
+src_prepare() {
+ cmake_src_prepare
+
+ python_copy_sources
+}
+
+src_configure() {
+ # The tests are only related to the tools that we don't install
+ local mycmakeargs=(
+ -DBUILD_TESTS=OFF
+ )
+
+ pyside-tools_configure() {
+ local mycmakeargs=(
+ "${mycmakeargs[@]}"
+ -DPYTHON_CONFIG_SUFFIX="-${EPYTHON}"
+ )
+ CMAKE_USE_DIR="${BUILD_DIR}" cmake_src_configure
+ }
+
+ python_foreach_impl pyside-tools_configure
+}
+
+src_compile() {
+ pyside-tools_compile() {
+ CMAKE_USE_DIR="${BUILD_DIR}" cmake_src_compile
+ }
+
+ python_foreach_impl pyside-tools_compile
+}
+
+src_install() {
+ pyside-tools_install() {
+ python_doexe "${BUILD_DIR}/pylupdate/pyside2-lupdate"
+ }
+
+ python_foreach_impl pyside-tools_install
+
+ doman pylupdate/pyside2-lupdate.1
+ einstalldocs
+}
diff --git a/dev-python/pyside2/Manifest b/dev-python/pyside2/Manifest
index 0d5e684462d4..670bc3b5adea 100644
--- a/dev-python/pyside2/Manifest
+++ b/dev-python/pyside2/Manifest
@@ -1 +1,2 @@
DIST pyside-setup-opensource-src-5.15.1.tar.xz 3454052 BLAKE2B c7190dff493434064976a4604fb5858d2e20c1b98098ccd6e5c4c69d0b67ae9f4bf970e2ab42b634208ea96aab31b21f3dfb5f18fddd0bdaab655bba729e4449 SHA512 f14c7037367799005fff73d9fc8e7998db1895700911adf34dfabdeb4db486c7b28ba2afb3eaee37c58f4099b00e4a86917b8f7d85f274026bddfc090658b306
+DIST pyside-setup-opensource-src-5.15.2.tar.xz 3472624 BLAKE2B 099abeaf25059a88f299f90b18cf79aa45acd86580c0873767b09f76268d6746cc3576743a19493a605de59b520471ddee6bba0e5340801ef44a21f2a9d41507 SHA512 5043c1c9db4ba0133baaabb4d4943182e9741b1007bedd992394758707a37bba0688dc6413ea46620e7c2fb09daa3c74e6a7bb2c302b9d08e5f3bb7575d02b62
diff --git a/dev-python/pyside2/pyside2-5.15.2.ebuild b/dev-python/pyside2/pyside2-5.15.2.ebuild
new file mode 100644
index 000000000000..e110ad010ec5
--- /dev/null
+++ b/dev-python/pyside2/pyside2-5.15.2.ebuild
@@ -0,0 +1,210 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# TODO: Add PyPy once officially supported. See also:
+# https://bugreports.qt.io/browse/PYSIDE-535
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+
+inherit cmake python-r1 virtualx
+
+# TODO: Add conditional support for "QtRemoteObjects" via a new "remoteobjects"
+# USE flag after an external "dev-qt/qtremoteobjects" package has been created.
+# TODO: Add conditional support for apidoc generation via a new "doc" USE flag.
+# Note that doing so requires the Qt source tree, sphinx, and graphviz. Once
+# ready, pass the ${QT_SRC_DIR} variable to cmake to enable this support.
+# TODO: Disable GLES support if the "gles2-only" USE flag is disabled. Note
+# that the "PySide2/QtGui/CMakeLists.txt" and
+# "PySide2/QtOpenGLFunctions/CMakeLists.txt" files test for GLES support by
+# testing whether the "Qt5::Gui" list property defined by
+# "/usr/lib64/cmake/Qt5Gui/Qt5GuiConfig.cmake" at "dev-qt/qtgui" installation
+# time contains the substring "opengles2". Since cmake does not permit
+# properties to be overridden from the command line, these files must instead
+# be conditionally patched to avoid these tests. An issue should be filed with
+# upstream requesting a CLI-settable variable to control this.
+
+MY_P=pyside-setup-opensource-src-${PV}
+
+DESCRIPTION="Python bindings for the Qt framework"
+HOMEPAGE="https://wiki.qt.io/PySide2"
+SRC_URI="https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-${PV}-src/${MY_P}.tar.xz"
+S="${WORKDIR}/${MY_P}/sources/pyside2"
+
+# See "sources/pyside2/PySide2/licensecomment.txt" for licensing details.
+LICENSE="|| ( GPL-2 GPL-3+ LGPL-3 )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="
+ 3d charts concurrent datavis designer gles2-only +gui help location
+ multimedia +network positioning printsupport qml quick script scripttools
+ scxml sensors speech sql svg test testlib webchannel webengine websockets
+ +widgets x11extras xml xmlpatterns
+"
+
+# Manually reextract these requirements on version bumps by running the
+# following one-liner from within "${S}":
+# $ grep 'set.*_deps' PySide2/Qt*/CMakeLists.txt
+# Note that the "designer" USE flag corresponds to the "Qt5UiTools" module.
+REQUIRED_USE="${PYTHON_REQUIRED_USE}
+ 3d? ( gui network )
+ charts? ( widgets )
+ datavis? ( gui )
+ designer? ( widgets xml )
+ gles2-only? ( gui )
+ help? ( widgets )
+ location? ( positioning )
+ multimedia? ( gui network )
+ printsupport? ( widgets )
+ qml? ( gui network )
+ quick? ( qml )
+ scripttools? ( gui script widgets )
+ speech? ( multimedia )
+ sql? ( widgets )
+ svg? ( widgets )
+ testlib? ( widgets )
+ webengine? (
+ location quick
+ widgets? ( gui network printsupport webchannel )
+ )
+ websockets? ( network )
+ widgets? ( gui )
+ x11extras? ( gui )
+"
+
+#tests fail pretty bad and I'm not fixing them right now
+RESTRICT="test"
+
+# Minimal supported version of Qt.
+QT_PV="$(ver_cut 1-2):5"
+
+RDEPEND="${PYTHON_DEPS}
+ >=dev-python/shiboken2-${PV}[${PYTHON_USEDEP}]
+ dev-qt/qtcore:5=
+ dev-qt/qtopengl:5=
+ dev-qt/qtserialport:5=
+ 3d? ( >=dev-qt/qt3d-${QT_PV}[qml?] )
+ charts? ( >=dev-qt/qtcharts-${QT_PV}[qml?] )
+ concurrent? ( >=dev-qt/qtconcurrent-${QT_PV} )
+ datavis? ( >=dev-qt/qtdatavis3d-${QT_PV}[qml?] )
+ designer? ( >=dev-qt/designer-${QT_PV} )
+ gui? ( >=dev-qt/qtgui-${QT_PV}[gles2-only?] )
+ help? ( >=dev-qt/qthelp-${QT_PV} )
+ location? ( >=dev-qt/qtlocation-${QT_PV} )
+ multimedia? ( >=dev-qt/qtmultimedia-${QT_PV}[qml?,widgets?] )
+ network? ( >=dev-qt/qtnetwork-${QT_PV} )
+ positioning? ( >=dev-qt/qtpositioning-${QT_PV}[qml?] )
+ printsupport? ( >=dev-qt/qtprintsupport-${QT_PV} )
+ qml? ( >=dev-qt/qtdeclarative-${QT_PV}[widgets?] )
+ script? ( >=dev-qt/qtscript-${QT_PV} )
+ scxml? ( >=dev-qt/qtscxml-${QT_PV} )
+ sensors? ( >=dev-qt/qtsensors-${QT_PV}[qml?] )
+ speech? ( >=dev-qt/qtspeech-${QT_PV} )
+ sql? ( >=dev-qt/qtsql-${QT_PV} )
+ svg? ( >=dev-qt/qtsvg-${QT_PV} )
+ testlib? ( >=dev-qt/qttest-${QT_PV} )
+ webchannel? ( >=dev-qt/qtwebchannel-${QT_PV}[qml?] )
+ webengine? ( >=dev-qt/qtwebengine-${QT_PV}[widgets?] )
+ websockets? ( >=dev-qt/qtwebsockets-${QT_PV}[qml?] )
+ widgets? ( >=dev-qt/qtwidgets-${QT_PV} )
+ x11extras? ( >=dev-qt/qtx11extras-${QT_PV} )
+ xml? ( >=dev-qt/qtxml-${QT_PV} )
+ xmlpatterns? ( >=dev-qt/qtxmlpatterns-${QT_PV}[qml?] )
+"
+DEPEND="${RDEPEND}
+ test? ( x11-misc/xvfb-run )
+"
+
+src_configure() {
+ # See COLLECT_MODULE_IF_FOUND macros in CMakeLists.txt
+ local mycmakeargs=(
+ -DBUILD_TESTS=$(usex test)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt53DAnimation=$(usex !3d)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt53DCore=$(usex !3d)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt53DExtras=$(usex !3d)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt53DInput=$(usex !3d)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt53DLogic=$(usex !3d)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt53DRender=$(usex !3d)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Charts=$(usex !charts)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Concurrent=$(usex !concurrent)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5DataVisualization=$(usex !datavis)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Designer=$(usex !designer)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Gui=$(usex !gui)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Help=$(usex !help)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Location=$(usex !location)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Multimedia=$(usex !multimedia)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5MultimediaWidgets=$(usex !multimedia yes $(usex !widgets))
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Network=$(usex !network)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Positioning=$(usex !positioning)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5PrintSupport=$(usex !printsupport)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Qml=$(usex !qml)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Quick=$(usex !quick)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5QuickWidgets=$(usex !quick yes $(usex !widgets))
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Script=$(usex !script)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5ScriptTools=$(usex !scripttools)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Scxml=$(usex !scxml)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Sensors=$(usex !sensors)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5TextToSpeech=$(usex !speech)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Sql=$(usex !sql)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Svg=$(usex !svg)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Test=$(usex !testlib)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5UiTools=$(usex !designer)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5WebChannel=$(usex !webchannel)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5WebEngine=$(usex !webengine)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5WebEngineCore=$(usex !webengine)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5WebEngineWidgets=$(usex !webengine yes $(usex !widgets))
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5WebSockets=$(usex !websockets)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Widgets=$(usex !widgets)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5X11Extras=$(usex !x11extras)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5Xml=$(usex !xml)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5XmlPatterns=$(usex !xmlpatterns)
+ )
+
+ pyside2_configure() {
+ local mycmakeargs=(
+ "${mycmakeargs[@]}"
+ -DPYTHON_CONFIG_SUFFIX="-${EPYTHON}"
+ -DPYTHON_EXECUTABLE="${PYTHON}"
+ -DPYTHON_SITE_PACKAGES="$(python_get_sitedir)"
+ -DSHIBOKEN_PYTHON_SHARED_LIBRARY_SUFFIX="-${EPYTHON}"
+ )
+ cmake_src_configure
+ }
+ python_foreach_impl pyside2_configure
+}
+
+src_compile() {
+ python_foreach_impl cmake_src_compile
+}
+
+src_test() {
+ local -x PYTHONDONTWRITEBYTECODE
+ python_foreach_impl virtx cmake_src_test
+}
+
+src_install() {
+ pyside2_install() {
+ cmake_src_install
+ python_optimize
+
+ # Uniquify the shiboken2 pkgconfig dependency in the PySide2 pkgconfig
+ # file for the current Python target. See also:
+ # https://github.com/leycec/raiagent/issues/73
+ sed -i -e 's~^Requires: shiboken2$~&-'${EPYTHON}'~' \
+ "${ED}/usr/$(get_libdir)"/pkgconfig/${PN}.pc || die
+
+ # Uniquify the PySide2 pkgconfig file for the current Python target,
+ # preserving an unversioned "pyside2.pc" file arbitrarily associated
+ # with the last Python target. (See the previously linked issue.)
+ cp "${ED}/usr/$(get_libdir)"/pkgconfig/${PN}{,-${EPYTHON}}.pc || die
+ }
+ python_foreach_impl pyside2_install
+
+ # CMakeLists.txt installs a "PySide2Targets-gentoo.cmake" file forcing
+ # downstream consumers (e.g., pyside2-tools) to target one
+ # "libpyside2-*.so" library linked to one Python interpreter. See also:
+ # https://bugreports.qt.io/browse/PYSIDE-1053
+ # https://github.com/leycec/raiagent/issues/74
+ sed -i -e 's~pyside2-python[[:digit:]]\+\.[[:digit:]]\+~pyside2${PYTHON_CONFIG_SUFFIX}~g' \
+ "${ED}/usr/$(get_libdir)/cmake/PySide2-${PV}/PySide2Targets-gentoo.cmake" || die
+}
diff --git a/dev-python/pytest-cov/Manifest b/dev-python/pytest-cov/Manifest
index 0d2d2dba61a0..f68703be817b 100644
--- a/dev-python/pytest-cov/Manifest
+++ b/dev-python/pytest-cov/Manifest
@@ -1,2 +1,3 @@
DIST pytest-cov-2.11.1.tar.gz 59143 BLAKE2B 21aeffbc9ccbe6a7c69a08fe3f0013204eb039c6dc9ddbb364a74ad10764e16ce7be0154e27beaab2c8f9b2a972131c4c2421c4aa4557efc18318556056a421b SHA512 19c465f5972ee0ee3b9a2f1a656fdf5457622cb449f73a6f707d377a617807dadda997a6875f0c081bc4c4f7039559c6e7ce820b818db42dfd053c016e1c3b4e
DIST pytest-cov-2.12.0.tar.gz 59596 BLAKE2B 6eef2c062b687899009fdf7b4ef8825b3eeabc7be09fac897315cb99acb9176d11bf0d7f3704108caac1bddc32d158b88ddc69a5bd4815c1877cc238684abc3d SHA512 fc94abd8c38ff4015bad4f9f23ee4691f376d436c16f4951021afadfb94dd359a46924d3c7c43dc3193641943f88e0eab04429aa57d26a65bc95622e512639e1
+DIST pytest-cov-2.12.1.tar.gz 60395 BLAKE2B 42e817c63c9d787de9bfaf804217a1e020d5a38e564df0ce2d43d6b4f0631aee43ccae329f44c6d7ac9a5662776463456d72138fd20c65cf8d0accfe118e1e2b SHA512 4c234178febeba1ce93ec0804c3efe181d5d88db9ac02effe14e62eb3b0f7ca1f8757fb4f360551e0d3e35a3b6207892afea85611a49db6c71a2dbaacabc5375
diff --git a/dev-python/pytest-cov/pytest-cov-2.12.1.ebuild b/dev-python/pytest-cov/pytest-cov-2.12.1.ebuild
new file mode 100644
index 000000000000..59ccdeee9e6e
--- /dev/null
+++ b/dev-python/pytest-cov/pytest-cov-2.12.1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="py.test plugin for coverage reporting"
+HOMEPAGE="https://github.com/pytest-dev/pytest-cov https://pypi.org/project/pytest-cov/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/py-1.4.22[${PYTHON_USEDEP}]
+ >=dev-python/pytest-3.6[${PYTHON_USEDEP}]
+ >=dev-python/coverage-4.4[${PYTHON_USEDEP}]
+ dev-python/toml[${PYTHON_USEDEP}]
+"
+# TODO: figure out how to make tests work without pytest-cov installed
+# first
+BDEPEND="
+ test? (
+ ${RDEPEND}
+ ~dev-python/pytest-cov-${PV}[${PYTHON_USEDEP}]
+ dev-python/virtualenv[${PYTHON_USEDEP}]
+ dev-python/fields[${PYTHON_USEDEP}]
+ >=dev-python/process-tests-2.0.2[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-py3doc-enhanced-theme
+
+python_test() {
+ local deselect=(
+ # attempts to install packages via pip (network)
+ tests/test_pytest_cov.py::test_dist_missing_data
+ )
+
+ epytest ${deselect[@]/#/--deselect }
+}
diff --git a/dev-python/python-magic/Manifest b/dev-python/python-magic/Manifest
index 3d84bdf143a1..fc4007252a89 100644
--- a/dev-python/python-magic/Manifest
+++ b/dev-python/python-magic/Manifest
@@ -1 +1,2 @@
DIST python-magic-0.4.22.gh.tar.gz 863567 BLAKE2B 6994869e4cc5ba5ff7ae1a6ac6117f5b1553a11079fb5faaa23b48ee241b2615e2514270f66c55b417b4051d6a5aedd7c289f139c23842979e4af0cdb7a34e3a SHA512 7f16c090a713be4ecc25727f0195bddfadfa9f54507899e35f48bd268ea1d78637ca024ecf02e331a8988a931e430f7346bb5f4b46e58ddc1ff03ec678640e6d
+DIST python-magic-0.4.23.gh.tar.gz 863739 BLAKE2B 7adcf4f8662cb5c6dab1d680a48f80db03f78d6f2f67a81f9d1464a79b820d8ed28a69ca5aa1c8eaa1b016556217dcab0878725a370318db0905985d332561f4 SHA512 8f6093ba6e1138e8c81e7afc596946c3657ddea55554edcf555f6490e2d19c936f41367cd27a04554a344b3116d033ab760c2c954ac6ffd017b9c319abe44b00
diff --git a/dev-python/python-magic/python-magic-0.4.23.ebuild b/dev-python/python-magic/python-magic-0.4.23.ebuild
new file mode 100644
index 000000000000..023fc69a8768
--- /dev/null
+++ b/dev-python/python-magic/python-magic-0.4.23.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Access the libmagic file type identification library"
+HOMEPAGE="https://github.com/ahupp/python-magic"
+SRC_URI="
+ https://github.com/ahupp/python-magic/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+LICENSE="BSD-2 MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="sys-apps/file[-python]"
+BDEPEND="
+ test? ( sys-apps/file )
+"
+
+python_test() {
+ local -x LC_ALL=en_US.UTF-8
+ "${EPYTHON}" test/test.py -v || die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/python-poppler-qt5/python-poppler-qt5-0.75.0.ebuild b/dev-python/python-poppler-qt5/python-poppler-qt5-0.75.0.ebuild
index ed5c9617699e..021139d4e03c 100644
--- a/dev-python/python-poppler-qt5/python-poppler-qt5-0.75.0.ebuild
+++ b/dev-python/python-poppler-qt5/python-poppler-qt5-0.75.0.ebuild
@@ -19,6 +19,7 @@ RDEPEND="
app-text/poppler[qt5]
dev-python/PyQt5[${PYTHON_USEDEP}]
>=dev-python/sip-4.19:=[${PYTHON_USEDEP}]
+ <dev-python/sip-5:=[${PYTHON_USEDEP}]
"
DEPEND="${RDEPEND}"
diff --git a/dev-python/python_orocos_kdl/python_orocos_kdl-1.4.0-r1.ebuild b/dev-python/python_orocos_kdl/python_orocos_kdl-1.4.0-r1.ebuild
index 55adc9af41bd..6006258932f5 100644
--- a/dev-python/python_orocos_kdl/python_orocos_kdl-1.4.0-r1.ebuild
+++ b/dev-python/python_orocos_kdl/python_orocos_kdl-1.4.0-r1.ebuild
@@ -29,7 +29,7 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="
${PYTHON_DEPS}
>=sci-libs/orocos_kdl-1.4.0:=
- dev-python/sip[${PYTHON_USEDEP}]"
+ <dev-python/sip-5[${PYTHON_USEDEP}]"
DEPEND="${RDEPEND}"
PATCHES=( "${FILESDIR}/0001-Declare-assignment-operator-private-for-SIP-Closes-2.patch" )
diff --git a/dev-python/python_orocos_kdl/python_orocos_kdl-9999.ebuild b/dev-python/python_orocos_kdl/python_orocos_kdl-9999.ebuild
index 0dea66e82bd9..58de6659169c 100644
--- a/dev-python/python_orocos_kdl/python_orocos_kdl-9999.ebuild
+++ b/dev-python/python_orocos_kdl/python_orocos_kdl-9999.ebuild
@@ -29,7 +29,7 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="
${PYTHON_DEPS}
>=sci-libs/orocos_kdl-1.4.0:=
- dev-python/sip[${PYTHON_USEDEP}]"
+ <dev-python/sip-5[${PYTHON_USEDEP}]"
DEPEND="${RDEPEND}"
if [ "${PV#9999}" != "${PV}" ] ; then
diff --git a/dev-python/selenium/metadata.xml b/dev-python/selenium/metadata.xml
index 62a6a349d15e..08ad232efd1c 100644
--- a/dev-python/selenium/metadata.xml
+++ b/dev-python/selenium/metadata.xml
@@ -10,5 +10,4 @@
<remote-id type="github">SeleniumHQ/selenium</remote-id>
</upstream>
<origin>gentoo-staging</origin>
- <stabilize-allarches/>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/shiboken2/Manifest b/dev-python/shiboken2/Manifest
index 0d5e684462d4..670bc3b5adea 100644
--- a/dev-python/shiboken2/Manifest
+++ b/dev-python/shiboken2/Manifest
@@ -1 +1,2 @@
DIST pyside-setup-opensource-src-5.15.1.tar.xz 3454052 BLAKE2B c7190dff493434064976a4604fb5858d2e20c1b98098ccd6e5c4c69d0b67ae9f4bf970e2ab42b634208ea96aab31b21f3dfb5f18fddd0bdaab655bba729e4449 SHA512 f14c7037367799005fff73d9fc8e7998db1895700911adf34dfabdeb4db486c7b28ba2afb3eaee37c58f4099b00e4a86917b8f7d85f274026bddfc090658b306
+DIST pyside-setup-opensource-src-5.15.2.tar.xz 3472624 BLAKE2B 099abeaf25059a88f299f90b18cf79aa45acd86580c0873767b09f76268d6746cc3576743a19493a605de59b520471ddee6bba0e5340801ef44a21f2a9d41507 SHA512 5043c1c9db4ba0133baaabb4d4943182e9741b1007bedd992394758707a37bba0688dc6413ea46620e7c2fb09daa3c74e6a7bb2c302b9d08e5f3bb7575d02b62
diff --git a/dev-python/shiboken2/shiboken2-5.15.2.ebuild b/dev-python/shiboken2/shiboken2-5.15.2.ebuild
new file mode 100644
index 000000000000..1d5927ce6161
--- /dev/null
+++ b/dev-python/shiboken2/shiboken2-5.15.2.ebuild
@@ -0,0 +1,166 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# TODO: Split the "/usr/bin/shiboken2" binding generator from the
+# "/usr/lib64/libshiboken2-*.so" family of shared libraries. The former
+# requires everything (including Clang) at runtime; the latter only requires
+# Qt and Python at runtime. Note that "pip" separates these two as well. See:
+# https://doc.qt.io/qtforpython/shiboken2/faq.html#is-there-any-runtime-dependency-on-the-generated-binding
+# Once split, the PySide2 ebuild should be revised to require
+# "/usr/bin/shiboken2" at build time and "libshiboken2-*.so" at runtime.
+# TODO: Add PyPy once officially supported. See also:
+# https://bugreports.qt.io/browse/PYSIDE-535
+# Fails to compile with python3.10
+# FAILED: libshiboken/CMakeFiles/libshiboken.dir/sbkstring.cpp.o
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+
+inherit cmake llvm python-r1 toolchain-funcs
+
+MY_P=pyside-setup-opensource-src-${PV}
+
+DESCRIPTION="Python binding generator for C++ libraries"
+HOMEPAGE="https://wiki.qt.io/PySide2"
+SRC_URI="https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-${PV}-src/${MY_P}.tar.xz"
+S="${WORKDIR}/${MY_P}/sources/shiboken2"
+
+# The "sources/shiboken2/libshiboken" directory is triple-licensed under the
+# GPL v2, v3+, and LGPL v3. All remaining files are licensed under the GPL v3
+# with version 1.0 of a Qt-specific exception enabling shiboken2 output to be
+# arbitrarily relicensed. (TODO)
+LICENSE="|| ( GPL-2 GPL-3+ LGPL-3 ) GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="+docstrings numpy test vulkan"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+#tests fail pretty bad and I'm not fixing them right now
+RESTRICT="test"
+
+# Minimal supported version of Qt.
+QT_PV="$(ver_cut 1-2):5"
+
+# Since Clang is required at both build- and runtime, BDEPEND is omitted here.
+RDEPEND="${PYTHON_DEPS}
+ >=dev-qt/qtcore-${QT_PV}
+ >=sys-devel/clang-6:=
+ docstrings? (
+ >=dev-libs/libxml2-2.6.32
+ >=dev-libs/libxslt-1.1.19
+ >=dev-qt/qtxml-${QT_PV}
+ >=dev-qt/qtxmlpatterns-${QT_PV}
+ )
+ numpy? ( dev-python/numpy[${PYTHON_USEDEP}] )
+ vulkan? ( dev-util/vulkan-headers )
+"
+DEPEND="${RDEPEND}
+ test? ( >=dev-qt/qttest-${QT_PV} )
+"
+
+DOCS=( AUTHORS )
+
+# Ensure the path returned by get_llvm_prefix() contains clang as well.
+llvm_check_deps() {
+ has_version "sys-devel/clang:${LLVM_SLOT}"
+}
+
+src_prepare() {
+ # TODO: File upstream issue requesting a sane way to disable NumPy support.
+ if ! use numpy; then
+ sed -i -e '/\bprint(os\.path\.realpath(numpy))/d' \
+ libshiboken/CMakeLists.txt || die
+ fi
+
+ # Shiboken2 assumes Vulkan headers live under either "$VULKAN_SDK/include"
+ # or "$VK_SDK_PATH/include" rather than "${EPREFIX}/usr/include/vulkan".
+ if use vulkan; then
+ sed -i -e 's~\bdetectVulkan(&headerPaths);~headerPaths.append(HeaderPath{QByteArrayLiteral("'${EPREFIX}'/usr/include/vulkan"), HeaderType::System});~' \
+ ApiExtractor/clangparser/compilersupport.cpp || die
+ fi
+
+ # Shiboken2 assumes the "/usr/lib/clang/${CLANG_NEWEST_VERSION}/include/"
+ # subdirectory provides Clang builtin includes (e.g., "stddef.h") for the
+ # currently installed version of Clang, where ${CLANG_NEWEST_VERSION} is
+ # the largest version specifier that exists under the "/usr/lib/clang/"
+ # subdirectory. This assumption is false in edge cases, including when
+ # users downgrade from newer Clang versions but fail to remove those
+ # versions with "emerge --depclean". See also:
+ # https://github.com/leycec/raiagent/issues/85
+ #
+ # Sadly, the clang-* family of functions exported by the "toolchain-funcs"
+ # eclass are defective, returning nonsensical placeholder strings if the
+ # end user has *NOT* explicitly configured their C++ compiler to be Clang.
+ # PySide2 does *NOT* care whether the end user has done so or not, as
+ # PySide2 unconditionally requires Clang in either case. See also:
+ # https://bugs.gentoo.org/619490
+ sed -i -e 's~(findClangBuiltInIncludesDir())~(QStringLiteral("'${EPREFIX}'/usr/lib/clang/'$(CPP=clang clang-fullversion)'/include"))~' \
+ ApiExtractor/clangparser/compilersupport.cpp || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ # Minimal tests for now, 2 failing with the extended version
+ # FIXME Subscripted generics cannot be used with class and instance checks
+ local mycmakeargs=(
+ -DBUILD_TESTS=$(usex test)
+ -DDISABLE_DOCSTRINGS=$(usex !docstrings)
+ )
+
+ shiboken2_configure() {
+ local mycmakeargs=(
+ "${mycmakeargs[@]}"
+ -DPYTHON_CONFIG_SUFFIX="-${EPYTHON}"
+ -DPYTHON_EXECUTABLE="${PYTHON}"
+ -DUSE_PYTHON_VERSION="${EPYTHON#python}"
+ )
+ # CMakeLists.txt expects LLVM_INSTALL_DIR as an environment variable.
+ local -x LLVM_INSTALL_DIR="$(get_llvm_prefix)"
+ cmake_src_configure
+ }
+ python_foreach_impl shiboken2_configure
+}
+
+src_compile() {
+ python_foreach_impl cmake_src_compile
+}
+
+src_test() {
+ python_foreach_impl cmake_src_test
+}
+
+src_install() {
+ shiboken2_install() {
+ cmake_src_install
+ python_optimize
+
+ # Uniquify the "shiboken2" executable for the current Python target,
+ # preserving an unversioned "shiboken2" file arbitrarily associated
+ # with the last Python target.
+ cp "${ED}"/usr/bin/${PN}{,-${EPYTHON}} || die
+
+ # Uniquify the Shiboken2 pkgconfig file for the current Python target,
+ # preserving an unversioned "shiboken2.pc" file arbitrarily associated
+ # with the last Python target. See also:
+ # https://github.com/leycec/raiagent/issues/73
+ cp "${ED}/usr/$(get_libdir)"/pkgconfig/${PN}{,-${EPYTHON}}.pc || die
+ }
+ python_foreach_impl shiboken2_install
+
+ # CMakeLists.txt installs a "Shiboken2Targets-gentoo.cmake" file forcing
+ # downstream consumers (e.g., PySide2) to target one "libshiboken2-*.so"
+ # library and one "shiboken2" executable linked to one Python interpreter.
+ # See also:
+ # https://bugreports.qt.io/browse/PYSIDE-1053
+ # https://github.com/leycec/raiagent/issues/74
+ sed -i \
+ -e 's~shiboken2-python[[:digit:]]\+\.[[:digit:]]\+~shiboken2${PYTHON_CONFIG_SUFFIX}~g' \
+ -e 's~/bin/shiboken2~/bin/shiboken2${PYTHON_CONFIG_SUFFIX}~g' \
+ "${ED}/usr/$(get_libdir)"/cmake/Shiboken2-${PV}/Shiboken2Targets-gentoo.cmake || die
+
+ # Remove the broken "shiboken_tool.py" script. By inspection, this script
+ # reduces to a noop. Moreover, this script raises the following exception:
+ # FileNotFoundError: [Errno 2] No such file or directory: '/usr/bin/../shiboken_tool.py': '/usr/bin/../shiboken_tool.py'
+ rm "${ED}"/usr/bin/shiboken_tool.py || die
+}
diff --git a/dev-python/sip/Manifest b/dev-python/sip/Manifest
index f8e60d534622..31dbfc2b6880 100644
--- a/dev-python/sip/Manifest
+++ b/dev-python/sip/Manifest
@@ -1 +1,2 @@
DIST sip-4.19.25.tar.gz 1056384 BLAKE2B f92e105e6b30e871aea2883dc9cd459e4032fb139a9eaff153a3412a66b39df4d7ac985711a2693aee83195ff3850ae648bee4102f7fc3cc30d09885799f2b98 SHA512 60fb4133c68869bf0993144978b4847d94a0f9c7b477f64a346ea133cfe35bc11820204ab327dcf9a929b6f65a26d16cc7efbce65e49967c3347b39376e57001
+DIST sip-5.5.0.tar.gz 1108126 BLAKE2B 59f0323b3befd7ebb89461e93e1e7e5707d11b2882bd524a45f3a6ba8d8a3c792aff5580027255812f6a3fa0854febeb418690fa6106efb21aab1610d66ef911 SHA512 0122beab575239cdb3b1430dc53a7f74175e3fbb3e113bcafced122ffbc4bd3d339b64a672ac1319ea14cd540b5877c2bcfeb7f8821fe8a3c8ba3ce9744bf803
diff --git a/dev-python/sip/sip-5.5.0.ebuild b/dev-python/sip/sip-5.5.0.ebuild
new file mode 100644
index 000000000000..5027c6fe2070
--- /dev/null
+++ b/dev-python/sip/sip-5.5.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+inherit distutils-r1
+
+DESCRIPTION="Python bindings generator for C/C++ libraries"
+HOMEPAGE="https://www.riverbankcomputing.com/software/sip/intro"
+
+MY_PN=sip
+MY_P=${MY_PN}-${PV/_pre/.dev}
+if [[ ${PV} == *_pre* ]]; then
+ SRC_URI="https://dev.gentoo.org/~pesa/distfiles/${MY_P}.tar.gz"
+else
+ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+fi
+
+# Sub-slot based on ${S}/sipbuild/module/source
+SLOT="0/12"
+LICENSE="|| ( GPL-2 GPL-3 SIP )"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+
+RDEPEND="
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/toml[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+
+distutils_enable_sphinx doc --no-autodoc
diff --git a/dev-python/sphinxcontrib-bibtex/Manifest b/dev-python/sphinxcontrib-bibtex/Manifest
index 4ea612ca4d3c..99c4ac48d780 100644
--- a/dev-python/sphinxcontrib-bibtex/Manifest
+++ b/dev-python/sphinxcontrib-bibtex/Manifest
@@ -1,3 +1,4 @@
DIST sphinxcontrib-bibtex-2.0.0.tar.gz 135555 BLAKE2B 8a542ff7895a89a8dbf6b8ed1df3ab4e928b68ce86881819c1fbfafdda626c2e1106f5513832ee09248381c89f54f06d4d1b42f005b1f775b0fbe8962a0a0ff1 SHA512 bffd4cb1ea8d88b947b89f5bd1c55bbb8bbab8679f205216f87f932cc0170d2bbabfbe4ea8d32fb7c980826d3f7c4a20cd49c2fb36f288b5cdc4500ad9ff75cd
DIST sphinxcontrib-bibtex-2.2.0.tar.gz 96027 BLAKE2B 77ca45e36f1730fa6992cfe41763a34e2a0bcdc99c520412591be3c219dcb7a8af240cc74d08c260548475b88b6cfba24b82e7bad2ab21b24c0e9cb62590792a SHA512 fa78d35f04825f841f757e2708d0ebbd3617a7bf20a893249eaee7e435ff2880ffc8bd23608356904ce41fc11d7fd49bab20f3da501d4a217593c52d99caebaa
DIST sphinxcontrib-bibtex-2.2.1.tar.gz 96251 BLAKE2B 3ff2ad5b7a37535177c19ba82cf53bd3a57e9f143f9157a7c5be6fd72b5c402893c172e9d902b2e12ac527833c742c3ffed81ee3407eb48fcf2937eadc3aab3b SHA512 c34199cc5180dbd8b804daf4ca1bcd830605b9620a44312c632fd9313ad87ab495b6e134f5042167daefa36c5295f61c03ee90b69396f746bc6ec7bfa182a69b
+DIST sphinxcontrib-bibtex-2.3.0.tar.gz 100159 BLAKE2B 96c9ebf48f11354ea3978a053828f9290457aff4fa1f0bb3d9f94bfe6fb5d5463f83bb12004f22bf8e34a517393848482a27d6754c682d25a0de64c3c7d06ecc SHA512 84652cfc7ad19ad5cdc1dba9a8aa7f835c5c95850a8e941067fd79b6b271733a63a1ba457a59e18156737888c2f42350b7fe0cf2d55ea478629b74b00d14f908
diff --git a/dev-python/sphinxcontrib-bibtex/sphinxcontrib-bibtex-2.3.0.ebuild b/dev-python/sphinxcontrib-bibtex/sphinxcontrib-bibtex-2.3.0.ebuild
new file mode 100644
index 000000000000..526b49c35751
--- /dev/null
+++ b/dev-python/sphinxcontrib-bibtex/sphinxcontrib-bibtex-2.3.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Sphinx extensions for BibTeX style citations"
+HOMEPAGE="https://github.com/mcmtroffaes/sphinxcontrib-bibtex"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/oset[${PYTHON_USEDEP}]
+ dev-python/pybtex[${PYTHON_USEDEP}]
+ dev-python/pybtex-docutils[${PYTHON_USEDEP}]
+ dev-python/sphinx[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx doc
+
+python_install_all() {
+ distutils-r1_python_install_all
+ find "${D}" -name '*.pth' -delete || die
+}
diff --git a/dev-python/tox/tox-3.23.1.ebuild b/dev-python/tox/tox-3.23.1.ebuild
index 0d0e4125d900..8c855fcab897 100644
--- a/dev-python/tox/tox-3.23.1.ebuild
+++ b/dev-python/tox/tox-3.23.1.ebuild
@@ -53,11 +53,6 @@ python_test() {
# expects python2 to exist
tests/unit/interpreters/test_interpreters.py::test_tox_get_python_executable
-
- # broken without tox installed first
- # TODO: figure out how to make importlib_metadata work
- tests/unit/test_z_cmdline.py::test_tox_console_script
- tests/unit/test_z_cmdline.py::test_tox_quickstart_script
)
[[ ${EPYTHON} != pypy3 ]] && deselect+=(
@@ -69,6 +64,6 @@ python_test() {
tests/integration/test_parallel_interrupt.py::test_parallel_interrupt
)
- distutils_install_for_testing --via-root
+ distutils_install_for_testing --via-venv
epytest --no-network ${deselect[@]/#/--deselect }
}
diff --git a/dev-python/twisted/files/twisted-21.2.0-force-gtk3.patch b/dev-python/twisted/files/twisted-21.2.0-force-gtk3.patch
new file mode 100644
index 000000000000..bed31bcf611c
--- /dev/null
+++ b/dev-python/twisted/files/twisted-21.2.0-force-gtk3.patch
@@ -0,0 +1,42 @@
+diff --git a/src/twisted/internet/gireactor.py b/src/twisted/internet/gireactor.py
+index 92596db1da2..a577825a87e 100644
+--- a/src/twisted/internet/gireactor.py
++++ b/src/twisted/internet/gireactor.py
+@@ -24,6 +24,7 @@
+ from twisted.internet.error import ReactorAlreadyRunning
+ from twisted.internet import _glibbase
+ from twisted.python import runtime
++import gi
+ import gi.pygtkcompat
+ from gi.repository import GLib
+
+@@ -68,6 +69,7 @@ class GIReactor(_glibbase.GlibReactorBase):
+ def __init__(self, useGtk=False):
+ _gtk = None
+ if useGtk is True:
++ gi.require_version("Gtk", "3.0")
+ from gi.repository import Gtk as _gtk
+
+ _glibbase.GlibReactorBase.__init__(self, GLib, _gtk, useGtk=useGtk)
+@@ -112,6 +114,7 @@ class PortableGIReactor(_glibbase.PortableGlibReactorBase):
+ def __init__(self, useGtk=False):
+ _gtk = None
+ if useGtk is True:
++ gi.require_version("Gtk", "3.0")
+ from gi.repository import Gtk as _gtk
+
+ _glibbase.PortableGlibReactorBase.__init__(self, GLib, _gtk, useGtk=useGtk)
+diff --git a/src/twisted/internet/test/test_gireactor.py b/src/twisted/internet/test/test_gireactor.py
+index d15a9262248..af5092a3614 100644
+--- a/src/twisted/internet/test/test_gireactor.py
++++ b/src/twisted/internet/test/test_gireactor.py
+@@ -25,6 +25,9 @@
+ gtk3reactor = None
+ else:
+ gtk3reactor = _gtk3reactor
++ import gi # type: ignore[import]
++
++ gi.require_version("Gtk", "3.0")
+ from gi.repository import Gtk
+
+ from twisted.internet.error import ReactorAlreadyRunning
diff --git a/dev-python/twisted/files/twisted-21.2.0-int-from-bytes.patch b/dev-python/twisted/files/twisted-21.2.0-int-from-bytes.patch
new file mode 100644
index 000000000000..ef9bd777ac7c
--- /dev/null
+++ b/dev-python/twisted/files/twisted-21.2.0-int-from-bytes.patch
@@ -0,0 +1,14 @@
+diff --git a/src/twisted/conch/ssh/common.py b/src/twisted/conch/ssh/common.py
+index 3e4f8cdc7..ee3d63143 100644
+--- a/src/twisted/conch/ssh/common.py
++++ b/src/twisted/conch/ssh/common.py
+@@ -11,7 +11,8 @@ Maintainer: Paul Swartz
+
+ import struct
+
+-from cryptography.utils import int_from_bytes, int_to_bytes
++from cryptography.utils import int_to_bytes
++int_from_bytes = int.from_bytes
+
+ from twisted.python.deprecate import deprecated
+ from twisted.python.versions import Version
diff --git a/dev-python/twisted/twisted-21.2.0.ebuild b/dev-python/twisted/twisted-21.2.0-r1.ebuild
index bfdc71312ff7..d03f3977d0bb 100644
--- a/dev-python/twisted/twisted-21.2.0.ebuild
+++ b/dev-python/twisted/twisted-21.2.0-r1.ebuild
@@ -3,7 +3,6 @@
EAPI=7
-DISTUTILS_USE_SETUPTOOLS=rdepend
PYTHON_COMPAT=( python3_{6,7,8,9,10} )
PYTHON_REQ_USE="threads(+)"
@@ -77,6 +76,13 @@ BDEPEND="
)
"
+PATCHES=(
+ # https://twistedmatrix.com/trac/ticket/10200
+ "${FILESDIR}/${P}-force-gtk3.patch"
+ # int_from_bytes is deprecated
+ "${FILESDIR}/${P}-int-from-bytes.patch"
+)
+
python_prepare_all() {
eapply "${FILESDIR}"/${P}-incremental-21.patch
@@ -101,6 +107,10 @@ python_prepare_all() {
skip = "Requires extra permissions"' \
-i src/twisted/pair/test/test_tuntap.py || die
+ # These tests rely on warnings which seems work unreliably between python versions
+ sed -e 's:test_currentEUID:_&:' \
+ -e 's:test_currentUID:_&:' -i src/twisted/python/test/test_util.py || die
+
# relies on the pre-CVE parse_qs() behavior in Python
sed -e '/d=c;+=f/d' \
-i src/twisted/web/test/test_http.py || die
diff --git a/dev-python/urllib3/urllib3-1.26.5.ebuild b/dev-python/urllib3/urllib3-1.26.5.ebuild
index d86c253050cc..febf2408fdba 100644
--- a/dev-python/urllib3/urllib3-1.26.5.ebuild
+++ b/dev-python/urllib3/urllib3-1.26.5.ebuild
@@ -36,7 +36,7 @@ BDEPEND="
dev-python/pytest-freezegun[\${PYTHON_USEDEP}]
>=dev-python/trustme-0.5.3[\${PYTHON_USEDEP}]
>=www-servers/tornado-4.2.1[\${PYTHON_USEDEP}]
- " python3_{6,7,8,9})
+ " python3_{6..10})
)
"
@@ -53,9 +53,8 @@ python_prepare_all() {
python_test() {
local -x CI=1
# FIXME: get tornado ported
- [[ ${EPYTHON} == python3* ]] || continue
- # tests skipped for now
- [[ ${EPYTHON} == python3.10 ]] && continue
+ # please keep in sync with BDEPEND!
+ has "${EPYTHON}" python3.{6..10} || continue
local deselect=(
# TODO?
diff --git a/dev-python/uvicorn/Manifest b/dev-python/uvicorn/Manifest
index ee9b0e8f29cd..91ae5b8f29b2 100644
--- a/dev-python/uvicorn/Manifest
+++ b/dev-python/uvicorn/Manifest
@@ -1 +1,2 @@
DIST uvicorn-0.13.4.tar.gz 505858 BLAKE2B 486436c0b4c717741c11b7da6a979dc9fe977baa2dbc3e2538ce28551d2dee593076b670b16c099056165624c149f96974f64d2847e38234122ec93b65b31cda SHA512 5332494e0b43b4e87f9d6742be679527b1ec2bc4d2e061768594d44b1fd1d6961a2bd1fa23469fca6c530ef36d6123e453306c2bb664cb27b0cd6145b9a70fd7
+DIST uvicorn-0.14.0.tar.gz 511593 BLAKE2B 9f7aee0001874c128e44d31945aaa0ca92237e594debb6fea3c6c6d0f283c96cfad5248578b0e1c170fe2fde96a6b17c56ecf2436783fcae135b8eab1997b701 SHA512 f41a7f01ac6893ceaf4d1f06a4bccd7355e319eee11d6aa290b0d316fb356eb807c926941157ec64f1fc6b7c4601930cfbe271075d6c4cf684bd7e175617390f
diff --git a/dev-python/uvicorn/uvicorn-0.14.0.ebuild b/dev-python/uvicorn/uvicorn-0.14.0.ebuild
new file mode 100644
index 000000000000..da7bc2b235be
--- /dev/null
+++ b/dev-python/uvicorn/uvicorn-0.14.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+inherit distutils-r1
+
+DESCRIPTION="Lightning-fast ASGI server implementation"
+HOMEPAGE="https://www.uvicorn.org/"
+SRC_URI="https://github.com/encode/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/asgiref-3.3.4[${PYTHON_USEDEP}]
+ >=dev-python/click-7[${PYTHON_USEDEP}]
+ >=dev-python/h11-0.8[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep 'dev-python/typing-extensions[${PYTHON_USEDEP}]' python3_7)
+"
+BDEPEND="
+ test? (
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/httpx[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/trustme[${PYTHON_USEDEP}]
+ >=dev-python/websockets-9.1[${PYTHON_USEDEP}]
+ dev-python/wsproto[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # watchgod is not in the tree
+ sed -e '/^from uvicorn.supervisors.watchgodreload/d' \
+ -e 's/, WatchGodReload//' \
+ -i tests/supervisors/test_reload.py
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/vdirsyncer/vdirsyncer-0.16.8.ebuild b/dev-python/vdirsyncer/vdirsyncer-0.16.8.ebuild
index ba3131d98622..5c0dfece6e81 100644
--- a/dev-python/vdirsyncer/vdirsyncer-0.16.8.ebuild
+++ b/dev-python/vdirsyncer/vdirsyncer-0.16.8.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
@@ -19,17 +19,17 @@ SLOT="0"
PATCHES=( "${FILESDIR}/${P}-click-7-compat.patch" )
-RDEPEND=">=dev-python/click-5.0[${PYTHON_USEDEP}]
+RDEPEND="dev-python/click[${PYTHON_USEDEP}]
>=dev-python/click-log-0.3.0[${PYTHON_USEDEP}]
<dev-python/click-log-0.4.0[${PYTHON_USEDEP}]
- >=dev-python/click-threading-0.2[${PYTHON_USEDEP}]
- >=dev-python/requests-2.20.0[${PYTHON_USEDEP}]
- >=dev-python/requests-toolbelt-0.4.0[${PYTHON_USEDEP}]
- >=dev-python/atomicwrites-0.1.7[${PYTHON_USEDEP}]"
+ dev-python/click-threading[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/requests-toolbelt[${PYTHON_USEDEP}]
+ dev-python/atomicwrites[${PYTHON_USEDEP}]"
BDEPEND="${RDEPEND}
dev-python/setuptools_scm[${PYTHON_USEDEP}]
test? (
- >=dev-python/hypothesis-5.0.0[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
dev-python/pytest-localserver[${PYTHON_USEDEP}]
dev-python/pytest-subtesthack[${PYTHON_USEDEP}]
)"
diff --git a/dev-python/werkzeug/werkzeug-2.0.1-r1.ebuild b/dev-python/werkzeug/werkzeug-2.0.1-r1.ebuild
index d4c745fbe57b..12ffaa50785b 100644
--- a/dev-python/werkzeug/werkzeug-2.0.1-r1.ebuild
+++ b/dev-python/werkzeug/werkzeug-2.0.1-r1.ebuild
@@ -39,18 +39,8 @@ PATCHES=(
"${FILESDIR}"/${P}-py310.patch
)
-src_prepare() {
- distutils-r1_src_prepare
- # prevent esetup.py install from zipping the egg
- sed -i -e '/\[options\]/azip_safe = False' setup.cfg || die
-}
-
python_test() {
- "${EPYTHON}" -m venv --system-site-packages --without-pip \
- "${BUILD_DIR}"/venv || die
- local -x PATH=${BUILD_DIR}/venv/bin:${PATH}
- unset PYTHONPATH
- esetup.py install
+ distutils_install_for_testing --via-venv
# the default portage tempdir is too long for AF_UNIX sockets
local -x TMPDIR=/tmp