summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2021-05-20 13:53:59 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2021-05-20 13:53:59 +0000
commit899e2978eb900633ac281935c387129b2a5d990e (patch)
treecbb0609aa23f270dd46d94d03450f114c8eef9c6 /dev-python
parentc985e56fbef78ac3b3cadf791bd09e24f3725986 (diff)
downloadbaldeagleos-repo-899e2978eb900633ac281935c387129b2a5d990e.tar.gz
baldeagleos-repo-899e2978eb900633ac281935c387129b2a5d990e.tar.xz
baldeagleos-repo-899e2978eb900633ac281935c387129b2a5d990e.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/QtPy/QtPy-1.9.0-r4.ebuild137
-rw-r--r--dev-python/QtPy/metadata.xml17
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.17.76.ebuild56
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.20.76.ebuild59
-rw-r--r--dev-python/click/Manifest1
-rw-r--r--dev-python/click/click-8.0.1.ebuild32
-rw-r--r--dev-python/cython-test-exception-raiser/cython-test-exception-raiser-1.0.0.ebuild2
-rw-r--r--dev-python/cython/cython-0.29.23.ebuild2
-rw-r--r--dev-python/dulwich/dulwich-0.20.21.ebuild2
-rw-r--r--dev-python/fastimport/Manifest2
-rw-r--r--dev-python/fastimport/fastimport-0.9.11.ebuild2
-rw-r--r--dev-python/fastimport/fastimport-0.9.8-r1.ebuild26
-rw-r--r--dev-python/fastimport/fastimport-0.9.9.ebuild21
-rw-r--r--dev-python/hvac/Manifest1
-rw-r--r--dev-python/hvac/hvac-0.10.12.ebuild49
-rw-r--r--dev-python/lxml/lxml-4.6.3-r1.ebuild100
-rw-r--r--dev-python/pyls-spyder/Manifest1
-rw-r--r--dev-python/pyls-spyder/metadata.xml4
-rw-r--r--dev-python/pyls-spyder/pyls-spyder-0.4.0.ebuild22
-rw-r--r--dev-python/python-lsp-server/files/pyls-fix-test_folding.patch14
-rw-r--r--dev-python/python-lsp-server/python-lsp-server-1.0.1.ebuild1
-rw-r--r--dev-python/reportlab/reportlab-3.5.67.ebuild2
-rw-r--r--dev-python/rich/Manifest1
-rw-r--r--dev-python/rich/rich-10.2.2.ebuild30
-rw-r--r--dev-python/spyder-kernels/Manifest1
-rw-r--r--dev-python/spyder-kernels/spyder-kernels-2.0.1.ebuild53
-rw-r--r--dev-python/spyder/spyder-4.2.5.ebuild8
-rw-r--r--dev-python/spyder/spyder-5.0.3.ebuild11
-rw-r--r--dev-python/stripe/Manifest1
-rw-r--r--dev-python/stripe/stripe-2.57.0.ebuild63
-rw-r--r--dev-python/twisted/twisted-21.2.0.ebuild2
-rw-r--r--dev-python/typed-ast/typed-ast-1.4.3.ebuild2
-rw-r--r--dev-python/watchdog/Manifest1
-rw-r--r--dev-python/watchdog/watchdog-2.1.2.ebuild43
-rw-r--r--dev-python/werkzeug/files/werkzeug-2.0.1-py310.patch103
-rw-r--r--dev-python/werkzeug/werkzeug-2.0.1-r1.ebuild47
-rw-r--r--dev-python/xarray/Manifest1
-rw-r--r--dev-python/xarray/xarray-0.18.2.ebuild42
40 files changed, 822 insertions, 142 deletions
diff --git a/dev-python/QtPy/QtPy-1.9.0-r4.ebuild b/dev-python/QtPy/QtPy-1.9.0-r4.ebuild
new file mode 100644
index 000000000000..5784ab72f03d
--- /dev/null
+++ b/dev-python/QtPy/QtPy-1.9.0-r4.ebuild
@@ -0,0 +1,137 @@
+# 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 virtualx
+
+DESCRIPTION="Abstraction layer on top of PyQt5 and PySide2 and additional custom QWidgets"
+HOMEPAGE="https://github.com/spyder-ide/qtpy/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+_IUSE_QT_MODULES="
+ declarative designer gui help location multimedia network opengl
+ positioning printsupport sensors serialport sql svg testlib webchannel
+ webengine websockets widgets x11extras xml xmlpatterns
+"
+IUSE="+pyqt5 pyside2 ${_IUSE_QT_MODULES}"
+unset _IUSE_QT_MODULES
+
+REQUIRED_USE="|| ( 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 )
+# concurrent? ( pyside2 )
+# datavis? ( pyside2 )
+# scxml? ( pyside2 )
+# script? ( pyside2 )
+# scripttools? ( pyside2 )
+# speech? ( pyside2 )
+
+# WARNING: the obvious solution of using || for PyQt5/pyside2 is not going
+# to work. The package only checks whether PyQt5/pyside2 is installed, it does
+# not verify whether they have the necessary modules (i.e. satisfy the USE dep).
+#
+# Webengine is a special case, because PyQt5 provides this in a separate package
+# while PySide2 ships it in the same package.
+#
+# declarative/qml/quick is a special case, because PyQt5 bundles the bindings
+# for qml and quick in one flag: declarative PySide2 does not.
+#
+# The PyQt5 ebuild currently enables xml support unconditionally, the flag is
+# added anyway with a (+) to make it future proof if the ebuild were to change
+# this behaviour in the future.
+#
+# The PySide2 ebuild currently enables opengl and serialport support
+# unconditionally, the flag is added anyway with a (+) to make it future proof
+# if the ebuild were to change this behaviour in the future.
+RDEPEND="
+ pyqt5? (
+ dev-python/PyQt5[${PYTHON_USEDEP}]
+ dev-python/PyQt5[declarative?,designer?,gui?,help?,location?]
+ dev-python/PyQt5[multimedia?,network?,opengl?,positioning?]
+ dev-python/PyQt5[printsupport?,sensors?,serialport?,sql?,svg?]
+ dev-python/PyQt5[testlib?,webchannel?,websockets?,widgets?]
+ dev-python/PyQt5[x11extras?,xml(+)?,xmlpatterns?]
+ 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] )
+ )
+"
+
+# The QtPy testsuite skips tests for bindings that are not installed, so here we
+# ensure that everything is available and all tests are run. Note that not
+# all flags are available in PyQt5/PySide2, so some tests are still skipped.
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ 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,webkit,websockets,widgets,x11extras,xml(+)]
+ dev-python/PyQt5[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]
+)"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ default
+ if ! use pyqt5; then
+ sed -i -e "s/from PyQt5.QtCore import/raise ImportError #/" qtpy/__init__.py || die
+ fi
+ if ! use pyside2; then
+ sed -i -e "s/from PySide2 import/raise ImportError #/" qtpy/__init__.py || die
+ 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
+}
+
+src_test() {
+ virtx python_foreach_impl python_test
+}
+
+python_test() {
+ local -x QT_API
+ for QT_API in pyqt5 pyside2; do
+ epytest
+ done
+}
+
+pkg_postinst() {
+ if use pyqt5 && use pyside2; then
+ ewarn "You have enabled both PyQt5 and PySide2, note that QtPy will default"
+ ewarn "to PyQt5 unless the QT_API environment variable overrides this."
+ fi
+}
diff --git a/dev-python/QtPy/metadata.xml b/dev-python/QtPy/metadata.xml
index 5c24e139bb8f..cad6992dd177 100644
--- a/dev-python/QtPy/metadata.xml
+++ b/dev-python/QtPy/metadata.xml
@@ -19,13 +19,30 @@
<remote-id type="pypi">QtPy</remote-id>
</upstream>
<use>
+ <flag name="pyqt5">Use <pkg>dev-python/PyQt5</pkg> as Qt for Python implementation</flag>
+ <flag name="pyside2">Use <pkg>dev-python/pyside2</pkg> as Qt for Python implementation</flag>
+ <flag name="declarative">Pull in bindings for the QtQml/QtQuick modules and enable the qmlscene plugin</flag>
<flag name="designer">Pull in bindings for the QtDesigner module and enable the designer plugin</flag>
<flag name="gui">Pull in bindings for the QtGui module</flag>
+ <flag name="help">Pull in bindings for the QtHelp module</flag>
+ <flag name="location">Pull in bindings for the QtLocation module</flag>
+ <flag name="multimedia">Pull in QtMultimedia and QtMultimediaWidgets modules</flag>
+ <flag name="network">Pull in bindings for the QtNetwork module</flag>
<flag name="opengl">Pull in bindings for the QtOpenGL module</flag>
+ <flag name="positioning">Pull in bindings for the QtPositioning module</flag>
<flag name="printsupport">Pull in bindings for the QtPrintSupport module</flag>
+ <flag name="sensors">Pull in bindings for the QtSensors module</flag>
+ <flag name="serialport">Pull in bindings for the QtSerialPort module</flag>
+ <flag name="sql">Pull in bindings for the QtSql module</flag>
<flag name="svg">Pull in bindings for the QtSvg module</flag>
<flag name="testlib">Pull in bindings for the QtTest module</flag>
+ <flag name="webchannel">Pull in bindings for the QtWebChannel module</flag>
<flag name="webengine">Pull in QtWebEngine and QtWebEngineWidgets modules</flag>
+ <flag name="websockets">Pull in bindings for the QtWebSockets module</flag>
+ <flag name="widgets">Pull in bindings for the QtWidgets module</flag>
+ <flag name="x11extras">Pull in bindings for the QtX11Extras module</flag>
+ <flag name="xmlpatterns">Pull in bindings for the QtXmlPatterns module</flag>
+ <flag name="xml">Pull in QtXml module</flag>
</use>
<origin>gentoo-staging</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index dec6e58a60d8..2a27f1ba88f8 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -11,3 +11,4 @@ DIST boto3-1.17.72.tar.gz 370275 BLAKE2B 2a6923fb9ca0a67e9096844cf66a3dbf74e77eb
DIST boto3-1.17.73.tar.gz 371093 BLAKE2B 1259a4c8ad0c87cae66c6f30c70ea785927669f82ba3fe196db30e7dd8c92f940928a25c4cb263d3b9f0c9944a4dbf8d0cd4dc52770d60286a50ca4830d3129a SHA512 582ced34557e3ce20628a5093c80f7a9231e010da4a9c4f7669b7c04f1eae8c4edf050b75fc00675f03d4e9fbb3dbd97441cd9a99c7e050a3914f072810a8aeb
DIST boto3-1.17.74.tar.gz 371719 BLAKE2B f6d44206a14cdf395c8963be048e81391ecbf6817b1c00e1cd081abf111df8bd85c05fa1c04b013de7e6d916835e4876cc961891c8d52d8a32e41713080ed96e SHA512 a79012072238286561ab43ca7bb9f24236e858e0bf550be9a074517145445d0d520cc207683d99f6f704416f617b5f89468c87357223db9564e4310a2a2676f1
DIST boto3-1.17.75.tar.gz 372223 BLAKE2B 5502d43dd76206a57793593c85b5c84a126c8bd4b8e1ac6c72b65a70a1f5494a46db2a0f97cd7218f02fa4ffa53094202823a50b652650f21672be990242b25b SHA512 b7c6aeec402b0dcff2681f66714b5de77206873f4b554ab5a9436de473ce52c20c84107d18e0cb53badd7d6a68a5be53e0967a1d18f92935f6c27b3c2c154eaf
+DIST boto3-1.17.76.tar.gz 373664 BLAKE2B 2c38008fbe459ba0382d48f1e1bcf896fb1f341cba27f1ee9b7a2e186f71ba38a36edd1b123fca8ea66abddf81491005fa17847a447f300647f13b66bd4c1525 SHA512 3e3bf35bac59d62a23aa26db5d328e6ed07aebe87449037f11f2561514fbb877bb268942504c2f204a27eb19be6e076f36f59b635ca77e83c4c40b9371e76e92
diff --git a/dev-python/boto3/boto3-1.17.76.ebuild b/dev-python/boto3/boto3-1.17.76.ebuild
new file mode 100644
index 000000000000..511fc98f5fff
--- /dev/null
+++ b/dev-python/boto3/boto3-1.17.76.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 9ede253af272..0cf27546452a 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -11,3 +11,4 @@ DIST botocore-1.20.72.tar.gz 7719833 BLAKE2B 23bdce05a95ebcc162e26e91923999ba509
DIST botocore-1.20.73.tar.gz 7725102 BLAKE2B ccb41513630d8016718cba5e7cc172efb985688f8537dd7f434707f05f9222f486a42c3c84cf25edb437836f04d5ae024292a15a2e784c600bbdebf7dc34d9e3 SHA512 7b1fadcc4e337f0c7498b46cbc0779f20ceb864e2b3974c15a947f18925691ecaaf455bfd7de153d26632a2035a1f922c64320887d06203285947b4310f07e10
DIST botocore-1.20.74.tar.gz 7729804 BLAKE2B 0693da2be219ee140c5c00a540756d31651d3e4c78976a7f766705123e9fba23e98d73e551b86a6b661530c20abb560b0e36fea8e1c13600303894b3163d2274 SHA512 51bcf78c6804b4a8cddd57eeff96d7ecb65731dfbd87eb665de1356c1daedb4317323b3a0d905e3d459800d800ce6d6ffd8fd1239b26ecf56884bee37159f2b7
DIST botocore-1.20.75.tar.gz 7750681 BLAKE2B 4cf5700ccdd43a7d963fc60c7e0db5204947e6d3c63747882fa01856ab4e97bba5f4174a8f4252e3389d6aa6436473f9124f445a53b2cc4233b8d7ed22cb5fef SHA512 736f9d8e4875fd273e73e25ba791117c146c0facdd68970f8d2127245805383119178faa4c91d9dc43ec045e59bf39dbece40d6946013ce9c8ac3c5d1ef9bd84
+DIST botocore-1.20.76.tar.gz 7755457 BLAKE2B 26246a4118ce32098676b4933548792a7a5290866c53876053c6f509d1695b467bd7a63d994020ab4b8c85b7beefd9e7b06fa6509787d954c2e0e1d16783b7f3 SHA512 43a74493ce3a69d621c8adef18bb39aece146a83a75745ba79216ab839161095c05ed53c1a00edcfba291e7321d28db107c3baee81ae970d5768c2f6dec79c5b
diff --git a/dev-python/botocore/botocore-1.20.76.ebuild b/dev-python/botocore/botocore-1.20.76.ebuild
new file mode 100644
index 000000000000..ca62b7dad65f
--- /dev/null
+++ b/dev-python/botocore/botocore-1.20.76.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/Manifest b/dev-python/click/Manifest
index d87af49097bb..38248def662c 100644
--- a/dev-python/click/Manifest
+++ b/dev-python/click/Manifest
@@ -1,2 +1,3 @@
DIST click-7.1.2.tar.gz 295757 BLAKE2B aea76d5378cfa49fe58a83132737d609d48b3d3a71ec65c0a8a144c7a0e244b5bdf0196ffe2150889b82edda20c3f1faa3c84a227fc9ef459a5a9646cff86129 SHA512 d0caf2fb0a258774a18a7b8f83bdfa73abeb70196a70b45a6cc35befaeb862d068d2f2cce4e27201ab2e3adcd02e7e2f099d6c37c497a507010eefa10ad16eba
DIST click-8.0.0.tar.gz 329520 BLAKE2B a3a5e299390c8223794c31fd0278367ed941923f81e73e2b4ac878ef670b156de9de4b8d539e1d0a968b8ff99764086b34ebf50d3afe3afa7060aeafc7ed8831 SHA512 656509d4eb49ce46738d09499a924a6064857d13995c0ec289b9a731c05165582c30fd4a8a09d0531ace77c217a9d4ba3f305ba2843c7879d90c84a78072046d
+DIST click-8.0.1.tar.gz 330890 BLAKE2B ae0a29bf1848e92c21ade72fb8ce08991c9edf6d5afb6d70a0dd85cdbfacffeac69a675dc0842566ae23ed8c666deac97879ad4611e8294ee1c6896ea2ddca8a SHA512 d93ec1d070dfa306733ee79893c64de9afcb0c7bf03d3f543dd697ef195f3a750828f77842a22886960a938740b92f0122962076ea52b911b87f7f75941a9032
diff --git a/dev-python/click/click-8.0.1.ebuild b/dev-python/click/click-8.0.1.ebuild
new file mode 100644
index 000000000000..1108927c2aeb
--- /dev/null
+++ b/dev-python/click/click-8.0.1.ebuild
@@ -0,0 +1,32 @@
+# 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="A Python package for creating beautiful command line interfaces"
+SRC_URI="https://github.com/pallets/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+HOMEPAGE="https://palletsprojects.com/p/click/ https://pypi.org/project/click/"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+IUSE="examples"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/importlib_metadata[${PYTHON_USEDEP}]
+ ' python3_7 pypy3)"
+
+distutils_enable_sphinx docs \
+ '>=dev-python/docutils-0.14' \
+ dev-python/pallets-sphinx-themes
+distutils_enable_tests pytest
+
+python_install_all() {
+ use examples && dodoc -r examples
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/cython-test-exception-raiser/cython-test-exception-raiser-1.0.0.ebuild b/dev-python/cython-test-exception-raiser/cython-test-exception-raiser-1.0.0.ebuild
index 68f63ece4c66..7925abe82f1f 100644
--- a/dev-python/cython-test-exception-raiser/cython-test-exception-raiser-1.0.0.ebuild
+++ b/dev-python/cython-test-exception-raiser/cython-test-exception-raiser-1.0.0.ebuild
@@ -16,6 +16,6 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
BDEPEND="dev-python/cython[${PYTHON_USEDEP}]"
diff --git a/dev-python/cython/cython-0.29.23.ebuild b/dev-python/cython/cython-0.29.23.ebuild
index 6a4f53b1ed21..19fdafadc2be 100644
--- a/dev-python/cython/cython-0.29.23.ebuild
+++ b/dev-python/cython/cython-0.29.23.ebuild
@@ -16,7 +16,7 @@ SRC_URI="https://github.com/cython/cython/archive/${PV}.tar.gz -> ${P}.gh.tar.gz
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris ~x86-solaris"
IUSE="emacs test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/dulwich/dulwich-0.20.21.ebuild b/dev-python/dulwich/dulwich-0.20.21.ebuild
index 097bb173815c..8a04d4b3e69d 100644
--- a/dev-python/dulwich/dulwich-0.20.21.ebuild
+++ b/dev-python/dulwich/dulwich-0.20.21.ebuild
@@ -16,7 +16,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="GPL-2+ Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha ~amd64 ~arm arm64 ~ia64 ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="doc examples test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/fastimport/Manifest b/dev-python/fastimport/Manifest
index 1adfd1447367..2d44d9e72aaa 100644
--- a/dev-python/fastimport/Manifest
+++ b/dev-python/fastimport/Manifest
@@ -1,4 +1,2 @@
DIST fastimport-0.9.11.tar.gz 41764 BLAKE2B afb82878ea1996894ff71fe99edc5ca26d45f98eedf7a8a6e85af45949e1e81c2112de9fc2c026438306a8a0e89c484063954ba7d2ff9a80c6b71ab40174f8d4 SHA512 e1b7e4897542ef6f33af51e1018340a6807688e44424e4e7e482b3347264d58d4290678cc2cfa230af500a53cabdcf35c9e7b03c8ff0f1ec3e6e0a9e869a1455
DIST fastimport-0.9.12.tar.gz 41765 BLAKE2B fed4b350c5ff1eda194b0ec89da240ddf1f1bb48e08c16597d85eb443c0ff39b6e0af00c70da14a99fcff27ad6935245e9298b74273f210bc15f01b3aa6ccfd1 SHA512 0beab06145f7898402eff96bbc579515b506d9b7f6f30f77cdb35799d4531f0067b5d368e9245649ca435c2f7742c172c61f75d29a76c2d22fd90cc8d9605ae8
-DIST fastimport-0.9.8.tar.gz 39512 BLAKE2B 484ba865e749cca33df73417285e51a9117e7c905ab2922588d6eef9a64ea6b3d72de285a2affbe7d4a770ead9ece30f6242777087af1c469d59c8f2a4e1b008 SHA512 5d195b641cf6138fdbc6c75781a4a6d3699e3ada9743bbe4c4264879b2da2f8a2e995e7cc3955a5241e9c7a7f24f8114474a0a30907f86e2e335e2be4669f588
-DIST fastimport-0.9.9.tar.gz 41690 BLAKE2B c07774916d42a6ad98fea3fa8185bd6fd4e2b908d7eb90ec28a2d7dbe5fd806a97075ba0bb5e6dc4fa3330c9e1e46db125daa11062dba52cc9ebc4486c0fff12 SHA512 15005da2056e0d489f9317138833131ae2067cc5b4acd1ab8e82142c6a71e7cc600c3d5a2cbfc151ca253ba3f6aa5f0328fb45dfa912987bb28d4762248298b8
diff --git a/dev-python/fastimport/fastimport-0.9.11.ebuild b/dev-python/fastimport/fastimport-0.9.11.ebuild
index 7d1de748c622..821b179f546a 100644
--- a/dev-python/fastimport/fastimport-0.9.11.ebuild
+++ b/dev-python/fastimport/fastimport-0.9.11.ebuild
@@ -13,7 +13,7 @@ SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~ia64 ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
python_test() {
"${EPYTHON}" -m unittest -v fastimport.tests.test_suite ||
diff --git a/dev-python/fastimport/fastimport-0.9.8-r1.ebuild b/dev-python/fastimport/fastimport-0.9.8-r1.ebuild
deleted file mode 100644
index 71db95b60706..000000000000
--- a/dev-python/fastimport/fastimport-0.9.8-r1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_USE_SETUPTOOLS=no
-PYTHON_COMPAT=( python3_{6,7,8,9,10} pypy3 )
-
-inherit distutils-r1
-
-MY_PN="${PN#python-}"
-MY_P="${MY_PN}-${PV}"
-DESCRIPTION="Library for parsing the fastimport VCS serialization format"
-HOMEPAGE="https://github.com/jelmer/python-fastimport"
-SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-S="${WORKDIR}/${MY_P}"
-
-python_test() {
- "${EPYTHON}" -m unittest -v fastimport.tests.test_suite \
- || die "Tests fail with ${EPYTHON}"
-}
diff --git a/dev-python/fastimport/fastimport-0.9.9.ebuild b/dev-python/fastimport/fastimport-0.9.9.ebuild
deleted file mode 100644
index b639be9d4abe..000000000000
--- a/dev-python/fastimport/fastimport-0.9.9.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# 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="Library for parsing the fastimport VCS serialization format"
-HOMEPAGE="https://github.com/jelmer/python-fastimport"
-SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-
-python_test() {
- "${EPYTHON}" -m unittest -v fastimport.tests.test_suite ||
- die "Tests fail with ${EPYTHON}"
-}
diff --git a/dev-python/hvac/Manifest b/dev-python/hvac/Manifest
index e3454a3c147d..edf1702cc8d1 100644
--- a/dev-python/hvac/Manifest
+++ b/dev-python/hvac/Manifest
@@ -1,3 +1,4 @@
DIST hvac-0.10.11.tar.gz 297146 BLAKE2B 279cd53d6aff18d8b393214c3370bf8a5a0e8f597cefc739269086db66fe4f43a931062c18d76815d777d12ffdfd431ed2174d77afb58669572e6e0e8ed9e43a SHA512 6b68bd19d5621758637ec257992e03da6b1746e5ac1d1b8d63098b6c0c1dc0c0f92fb6bd653b5458e8c55060a48619eb4d09ec4d0529cc2b3f4b91745bd2095c
+DIST hvac-0.10.12.tar.gz 301534 BLAKE2B 3d60bc428faa2e66f5c3b1e7d4aa0df7777e76f996c6d49bd9429e6a69f43580067a0de396ecc4234ed416a304f6e017f35b60b4655eafa6335666c6c00b88e2 SHA512 a52791bee2eedf488fabb488971f84f357e94812b14de36b45360690d3d018c9162dba9b8a54a719f1fe45b5f526fb729c08c8ece4f3c093f8a8f50a37731260
DIST hvac-0.10.8.tar.gz 290963 BLAKE2B 539e604d2c0476c3f8bd9bf9e803f2d7c6ea8671cd86ef650a7a3e615fa3461135e956726a869fa8b9c1883b70c11eaa51f28e6d07f284dbb43b51a696dd9958 SHA512 010a851c39bdc4d420343fa42aef5cd7faa073c11bf1507fc563791b8c93e85367b2081d573123acccd467881bccb9f9f33487551cac763d91ee7e5341ea5568
DIST hvac-0.10.9.tar.gz 291045 BLAKE2B 63c48b21e402a1af3f73e5b295061a2f82040cedd412fab69e8759e290a46eb67d1aa0ddaeb40c1638eefbc492441e238cbe4be114093015af6eabd99a0c0a75 SHA512 4af23583110ca4c2c9714f5234daf21ee199c2ac97cde01a220db6f5d89957b95c1e8b84904104e5a96ec39b54cea567973427a73ed7cae5806e794d37403a8d
diff --git a/dev-python/hvac/hvac-0.10.12.ebuild b/dev-python/hvac/hvac-0.10.12.ebuild
new file mode 100644
index 000000000000..f2280390d3fb
--- /dev/null
+++ b/dev-python/hvac/hvac-0.10.12.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="hashicorp vault client in python"
+HOMEPAGE="https://github.com/hvac/hvac"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/hvac/hvac.git"
+else
+ SRC_URI="https://github.com/hvac/hvac/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+
+BDEPEND="
+ test? (
+ dev-python/flask-sqlalchemy[${PYTHON_USEDEP}]
+ dev-python/jwcrypto[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ dev-python/python-jwt[${PYTHON_USEDEP}]
+ dev-python/requests-mock[${PYTHON_USEDEP}]
+ dev-python/semantic_version[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+ )"
+RDEPEND="
+ >=dev-python/pyhcl-0.4.4[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.24.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.15.0[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local ignore=(
+ # ldap_test is not packaged.
+ tests/integration_tests/api/auth_methods/test_ldap.py
+ # https://github.com/lepture/authlib is not packaged.
+ tests/integration_tests/api/auth_methods/test_oidc.py
+ )
+
+ epytest ${ignore[@]/#/--ignore }
+}
diff --git a/dev-python/lxml/lxml-4.6.3-r1.ebuild b/dev-python/lxml/lxml-4.6.3-r1.ebuild
new file mode 100644
index 000000000000..63bc3b071822
--- /dev/null
+++ b/dev-python/lxml/lxml-4.6.3-r1.ebuild
@@ -0,0 +1,100 @@
+# 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 optfeature toolchain-funcs
+
+DESCRIPTION="A Pythonic binding for the libxml2 and libxslt libraries"
+HOMEPAGE="https://lxml.de/ https://pypi.org/project/lxml/ https://github.com/lxml/lxml"
+SRC_URI="https://github.com/lxml/lxml/archive/${P}.tar.gz"
+S=${WORKDIR}/lxml-${P}
+
+LICENSE="BSD ElementTree GPL-2 PSF-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="doc examples +threads test"
+RESTRICT="!test? ( test )"
+
+# Note: lib{xml2,xslt} are used as C libraries, not Python modules.
+RDEPEND="
+ >=dev-libs/libxml2-2.9.12-r1
+ >=dev-libs/libxslt-1.1.28"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ dev-python/cython[${PYTHON_USEDEP}]
+ doc? (
+ $(python_gen_any_dep '
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
+ ')
+ )
+ test? ( dev-python/cssselect[${PYTHON_USEDEP}] )
+ "
+
+DISTUTILS_IN_SOURCE_BUILD=1
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.6.0-tests-pypy.patch
+)
+
+python_check_deps() {
+ use doc || return 0
+ has_version "dev-python/docutils[${PYTHON_USEDEP}]" &&
+ has_version "dev-python/pygments[${PYTHON_USEDEP}]" &&
+ has_version "dev-python/sphinx[${PYTHON_USEDEP}]" &&
+ has_version "dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]"
+}
+
+python_prepare_all() {
+ # avoid replacing PYTHONPATH in tests.
+ sed -i -e '/sys\.path/d' test.py || die
+
+ # don't use some random SDK on Darwin
+ sed -i -e '/_ldflags =/s/=.*isysroot.*darwin.*None/= None/' \
+ setupinfo.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile() {
+ if ! python_is_python3; then
+ local -x CFLAGS="${CFLAGS} -fno-strict-aliasing"
+ fi
+ tc-export PKG_CONFIG
+ distutils-r1_python_compile
+}
+
+python_compile_all() {
+ use doc && emake html
+}
+
+python_test() {
+ cp -r -l src/lxml/tests "${BUILD_DIR}"/lib/lxml/ || die
+ cp -r -l src/lxml/html/tests "${BUILD_DIR}"/lib/lxml/html/ || die
+ ln -s "${S}"/doc "${BUILD_DIR}"/ || die
+
+ "${EPYTHON}" test.py -vv --all-levels -p || die "Test ${test} fails with ${EPYTHON}"
+}
+
+python_install_all() {
+ if use doc; then
+ local DOCS=( README.rst *.txt doc/*.txt )
+ local HTML_DOCS=( doc/html/. )
+ fi
+ if use examples; then
+ dodoc -r samples
+ fi
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature "Support for BeautifulSoup as a parser backend" dev-python/beautifulsoup
+ optfeature "Translates CSS selectors to XPath 1.0 expressions" dev-python/cssselect
+}
diff --git a/dev-python/pyls-spyder/Manifest b/dev-python/pyls-spyder/Manifest
index 6443d60444f4..4557c9c07b30 100644
--- a/dev-python/pyls-spyder/Manifest
+++ b/dev-python/pyls-spyder/Manifest
@@ -1 +1,2 @@
DIST pyls-spyder-0.3.2-gh.tar.gz 8781 BLAKE2B ac24e0433c2e5ba43274d6266bc7532e7a1f1b0c3c34b9acfe10e5c7d789937536e81c4b19f96090f32d34c932529c0f4c23b49d2b01e7a0b628f8c2dd6f7611 SHA512 c08910ebaf161ceb712f273f054add1f3a202684b001d8d95650555bd67fa5675b3fef9e3d62d0d1b9da0f5adfeae9ff0fbfee44e4362856550d77582dbc6e95
+DIST pyls-spyder-0.4.0-gh.tar.gz 8854 BLAKE2B d14a78be98c1db0a37a2fffe2e6bd8955687a95af8524c852d434e57cdd157dda8f5ecceb19ad34527dedede4497c59fb7949a709d266803c2d8cd67c60380ce SHA512 5a9d6667cb85434ec41a176e097d20c78751d5f3879d4d361e097da214b54b37fbef97d95a763a58d7f5e3c148215672e769091814f06a34139c6625cdae3f9f
diff --git a/dev-python/pyls-spyder/metadata.xml b/dev-python/pyls-spyder/metadata.xml
index 08cb7da127f6..200c1845bef8 100644
--- a/dev-python/pyls-spyder/metadata.xml
+++ b/dev-python/pyls-spyder/metadata.xml
@@ -5,6 +5,10 @@
<email>andrewammerlaan@gentoo.org</email>
<name>Andrew Ammerlaan</name>
</maintainer>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ <name>Python</name>
+ </maintainer>
<upstream>
<remote-id type="pypi">pyls-spyder</remote-id>
<remote-id type="github">spyder-ide/pyls-spyder</remote-id>
diff --git a/dev-python/pyls-spyder/pyls-spyder-0.4.0.ebuild b/dev-python/pyls-spyder/pyls-spyder-0.4.0.ebuild
new file mode 100644
index 000000000000..0f63bcaa8616
--- /dev/null
+++ b/dev-python/pyls-spyder/pyls-spyder-0.4.0.ebuild
@@ -0,0 +1,22 @@
+# 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="Spyder extensions for the python language server"
+HOMEPAGE="https://github.com/spyder-ide/pyls-spyder
+ https://pypi.org/project/pyls-spyder/"
+SRC_URI="https://github.com/spyder-ide/${PN}/archive/v${PV}.tar.gz -> ${P}-gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-python/python-lsp-server[${PYTHON_USEDEP}]"
+BDEPEND="test? ( dev-python/mock[${PYTHON_USEDEP}] )"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-lsp-server/files/pyls-fix-test_folding.patch b/dev-python/python-lsp-server/files/pyls-fix-test_folding.patch
deleted file mode 100644
index d70f2b23d4be..000000000000
--- a/dev-python/python-lsp-server/files/pyls-fix-test_folding.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/test/plugins/test_folding.py b/test/plugins/test_folding.py
-index 57d6e2e..cef4583 100644
---- a/test/plugins/test_folding.py
-+++ b/test/plugins/test_folding.py
-@@ -147,9 +147,6 @@ def test_folding(workspace):
- {'startLine': 62, 'endLine': 63},
- {'startLine': 64, 'endLine': 65},
- {'startLine': 67, 'endLine': 68}]
-- if sys.version_info[:2] >= (3, 9):
-- # the argument list of the decorator is also folded in Python >= 3.9
-- expected.insert(4, {'startLine': 9, 'endLine': 10})
-
- assert ranges == expected
-
diff --git a/dev-python/python-lsp-server/python-lsp-server-1.0.1.ebuild b/dev-python/python-lsp-server/python-lsp-server-1.0.1.ebuild
index 63cd61a85665..f13ea30ba689 100644
--- a/dev-python/python-lsp-server/python-lsp-server-1.0.1.ebuild
+++ b/dev-python/python-lsp-server/python-lsp-server-1.0.1.ebuild
@@ -45,7 +45,6 @@ RDEPEND="
"
PATCHES=(
- "${FILESDIR}/pyls-fix-test_folding.patch"
"${FILESDIR}/pyls-fix-test-with-pylint28.patch"
)
diff --git a/dev-python/reportlab/reportlab-3.5.67.ebuild b/dev-python/reportlab/reportlab-3.5.67.ebuild
index 034d2e9718cf..23cd4265ebb4 100644
--- a/dev-python/reportlab/reportlab-3.5.67.ebuild
+++ b/dev-python/reportlab/reportlab-3.5.67.ebuild
@@ -16,7 +16,7 @@ SRC_URI="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
DEPEND="
media-libs/freetype
diff --git a/dev-python/rich/Manifest b/dev-python/rich/Manifest
index ce3f14a79a8d..3265c6250292 100644
--- a/dev-python/rich/Manifest
+++ b/dev-python/rich/Manifest
@@ -3,6 +3,7 @@ DIST rich-10.0.1.tar.gz 16218107 BLAKE2B 3992282b72ea97a364df3ca67e10a90baadb36f
DIST rich-10.1.0.tar.gz 16218332 BLAKE2B 880fe5354b41a8a2accf7dc0d2f80163b850a28d3f4bd10b9f06008f3059c6a46681b3a344289c031589eeaa6120c5cad4a03d2c25f7a440829ff21e3fe20d63 SHA512 53cf49df20887b1788edc32bb98706c9bb5facee29aac4cbde9180aba4d97433eab49a144ba9b83393e36072b5e010630b3c7d67f80e280e380559698f6254d4
DIST rich-10.2.0.tar.gz 16231540 BLAKE2B d297678a6e90a099aa17cbac75618de500e92a07943139e3fef052a0df1edbb9c4efc22ff82d4fd3618b2b6e79bed672d3bc558fc168f5a70ed72d06a2083e7d SHA512 f1de3bdf367130efb48672a18523fba44fd209bf6b914f0fb25c140eb115e12a65182e90d988b2a56867dc1c8b83169794b852a29a28610022df004a0cfe1f74
DIST rich-10.2.1.tar.gz 16231545 BLAKE2B d9561bc45f5d1aab04f5ed1fe86c90e0b7f07a88b99c066c6ec7b67364a8a1f9bb9275963736945bb0e6022cf10cda32036df457529c3a7ec097f4c8a3884baf SHA512 21a21b4ae479465989fc15630cdc2cf0f0fc127fe2e6b1d58714e725ac458eedca9159ec833c46b29164f5d9e7af4abbd9546ba08e6e537ed9f9c8a61995e8c9
+DIST rich-10.2.2.tar.gz 16231702 BLAKE2B 1979ee6ac7fb78ba7743f25bd34a7547f1f49c42e1f5ead958f53fe0251e73fd0122dc89c7e5fc545a5af1c6eba8ff7a3788476b63b722c6158280b85d399d99 SHA512 dd23ca63dbf3c60aec39e680c60911f1b7da76a5ffa1ba4ba61b824e583de94000bc38d819089ad6d52a15c92be030ab2ddc2186d770828553f5821d8d0410bc
DIST rich-9.11.1.tar.gz 14050070 BLAKE2B 7dcae32743bfcbbab0af6896f72e865d2a72ab66545168544d065145cf10a2aab4785454e547f011219a85a8aa762f1ed5ebef2b9fb7f44225a2f776835b643d SHA512 2139cb6602d930e9bf1479456a8e6cee812237fb64073db3f23fd8eab64c1c2b3a83c6292f1f90652791100a93961d8ec8036e5d819f1e23159b6b9a75cd1f6c
DIST rich-9.12.4.tar.gz 16204429 BLAKE2B b57d7dc7ad4463c85cbc43e0fd8afd9f0c5329cbe81eaac168895af3701091669e4b0b6fd0d2de2f5876405c5aae00ed77e77d1b317dbd20c7dd3e53deddf2ca SHA512 92feb4ceab4e10f33c0f4abec19a4ee5bdcf27139591b603aba98239483874089fbd33998a2f05f2b609799afa59cddbe1ee245a87c391d15f58887b21a138df
DIST rich-9.13.0.tar.gz 16206916 BLAKE2B 27a058821f5bcdeaadf4ec9beadd0f2bb5357993a1c15cd72c6cac4def9c7c9d9d7705064853931bb868b7bf873a85469feb8a9c67daf88cdab8169f0d342b0c SHA512 bb93339f985c88b86897a9b21769877cb68f4a6f61a74b9e4a2a96aad0556502e6c848c4f769ee53c57bf03f0cfdfab97e004aa9d6572158a37037afee61f0ad
diff --git a/dev-python/rich/rich-10.2.2.ebuild b/dev-python/rich/rich-10.2.2.ebuild
new file mode 100644
index 000000000000..67307cc76d41
--- /dev/null
+++ b/dev-python/rich/rich-10.2.2.ebuild
@@ -0,0 +1,30 @@
+# 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} )
+DISTUTILS_USE_SETUPTOOLS=pyproject.toml
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Python library for renrering rich text, tables, etc. to the terminal"
+HOMEPAGE="https://github.com/willmcgugan/rich"
+SRC_URI="https://github.com/willmcgugan/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/colorama[${PYTHON_USEDEP}]
+ dev-python/commonmark[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ ' python3_7)"
+
+distutils_enable_tests pytest
+
+pkg_postinst() {
+ optfeature "integration with HTML widgets for Jupyter" dev-python/ipywidgets
+}
diff --git a/dev-python/spyder-kernels/Manifest b/dev-python/spyder-kernels/Manifest
index 47b6c5d4ea7c..110cae5eb4f3 100644
--- a/dev-python/spyder-kernels/Manifest
+++ b/dev-python/spyder-kernels/Manifest
@@ -1,3 +1,2 @@
DIST spyder-kernels-1.10.2-gh.tar.gz 78924 BLAKE2B 47f0ec284f54590ee9c5a43caeeea61b644fccc6d6222dfbf85187beb9cc141504082dbf50d1d85f5315c8e8e46b9f810253d904b594bb4c52677271b0f7f12d SHA512 4bcbc2646493f384a3f5fad1cc2a42bbe1d06c5225362beb995a73e3c1abe482f3855d844c449b07631b4ffda99492ccbd3cbe69c515ed38d6a98913bea90e2d
-DIST spyder-kernels-2.0.1-gh.tar.gz 79786 BLAKE2B d4eeed1f2ff4e27ce4d55e3cfbd800f52553dba4c7a23978611d2a63ce43092153939cab78bd0b0025a7350d101f6399fccddfe90881aa414f321e3d1561e33a SHA512 ad08cb3e1f4dbcc8687d0142c8f07e224dac46513842d06d75b069aff1fac9cf818c7d14c753a673b2b95a08fdfba58d1133fa2896579e6b1232d87c7c359060
DIST spyder-kernels-2.0.3-gh.tar.gz 80089 BLAKE2B c439317be60237fb1c0c110a46ca17ad6a7ec0f978e2bbc01d98a260ec2654b81a334059f8b349dec002a2f3c8d9e5279b7f208fe88ccaaaba52d171eb5ca487 SHA512 dd406640db545732e23ef5e1f0fbb6c1756dd651e49152d2d804b8e0ddcdc0f9ede04a48df861faf2153125c4971c515eb5edd327d93a19926e12b02737b9a66
diff --git a/dev-python/spyder-kernels/spyder-kernels-2.0.1.ebuild b/dev-python/spyder-kernels/spyder-kernels-2.0.1.ebuild
deleted file mode 100644
index 9ce9ec298379..000000000000
--- a/dev-python/spyder-kernels/spyder-kernels-2.0.1.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# 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="Kernels used by spyder on its ipython console"
-HOMEPAGE="https://github.com/spyder-ide/spyder-kernels/
- https://pypi.org/project/spyder-kernels/"
-SRC_URI="https://github.com/spyder-ide/${PN}/archive/v${PV}.tar.gz -> ${P}-gh.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- dev-python/cloudpickle[${PYTHON_USEDEP}]
- <dev-python/decorator-5[${PYTHON_USEDEP}]
- >=dev-python/ipykernel-5.3.0[${PYTHON_USEDEP}]
- >=dev-python/ipython-7.6.0[${PYTHON_USEDEP}]
- >=dev-python/jupyter_client-5.3.4[${PYTHON_USEDEP}]
- <dev-python/jupyter_client-6.1.13[${PYTHON_USEDEP}]
- >=dev-python/pyzmq-17[${PYTHON_USEDEP}]
- >=dev-python/wurlitzer-1.0.3[${PYTHON_USEDEP}]
-"
-
-BDEPEND="
- test? (
- dev-python/cython[${PYTHON_USEDEP}]
- dev-python/dask[${PYTHON_USEDEP}]
- dev-python/flaky[${PYTHON_USEDEP}]
- dev-python/matplotlib[${PYTHON_USEDEP}]
- dev-python/mock[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pandas[${PYTHON_USEDEP}]
- dev-python/scipy[${PYTHON_USEDEP}]
- dev-python/xarray[${PYTHON_USEDEP}]
- dev-python/pillow[${PYTHON_USEDEP}]
- )"
-
-distutils_enable_tests pytest
-
-python_test() {
- local deselect=(
- # we no longer package distributed
- spyder_kernels/console/tests/test_console_kernel.py::test_dask_multiprocessing
- )
-
- epytest ${deselect[@]/#/--deselect }
-}
diff --git a/dev-python/spyder/spyder-4.2.5.ebuild b/dev-python/spyder/spyder-4.2.5.ebuild
index f27bc0babdc3..0114bc05efe4 100644
--- a/dev-python/spyder/spyder-4.2.5.ebuild
+++ b/dev-python/spyder/spyder-4.2.5.ebuild
@@ -83,7 +83,7 @@ RDEPEND="
<dev-python/qdarkstyle-3.0[${PYTHON_USEDEP}]
>=dev-python/qtawesome-0.5.7[${PYTHON_USEDEP}]
>=dev-python/qtconsole-5.0.3[${PYTHON_USEDEP}]
- >=dev-python/QtPy-1.5.0[${PYTHON_USEDEP},svg,webengine]
+ >=dev-python/QtPy-1.5.0[${PYTHON_USEDEP},pyqt5(+),svg,webengine]
>=dev-python/sphinx-0.6.6[${PYTHON_USEDEP}]
>=dev-python/spyder-kernels-1.10.2[${PYTHON_USEDEP}]
<dev-python/spyder-kernels-1.11.0[${PYTHON_USEDEP}]
@@ -91,9 +91,6 @@ RDEPEND="
>=dev-python/three-merge-0.1.1[${PYTHON_USEDEP}]
>=dev-python/watchdog-0.10.3[${PYTHON_USEDEP}]
<dev-python/watchdog-2.0.0[${PYTHON_USEDEP}]
-
- dev-python/PyQt5[${PYTHON_USEDEP}]
- dev-python/PyQtWebEngine[${PYTHON_USEDEP}]
"
BDEPEND="test? (
@@ -244,7 +241,4 @@ pkg_postinst() {
optfeature "System terminal inside spyder" dev-python/spyder-terminal
# spyder-reports not yet updated to >=spyder-4.0.0
# optfeature "Markdown reports using Pweave" dev-python/spyder-reports
- elog
- elog "Spyder currently only works with PyQt5 as QtPy backend, PySide2 is not supported."
- elog "Please ensure that 'eselect qtpy' is set to PyQt5."
}
diff --git a/dev-python/spyder/spyder-5.0.3.ebuild b/dev-python/spyder/spyder-5.0.3.ebuild
index 47b52a25a525..284f86c7ed47 100644
--- a/dev-python/spyder/spyder-5.0.3.ebuild
+++ b/dev-python/spyder/spyder-5.0.3.ebuild
@@ -64,7 +64,7 @@ RDEPEND="
>=dev-python/qstylizer-0.1.10[${PYTHON_USEDEP}]
>=dev-python/qtawesome-1.0.2[${PYTHON_USEDEP}]
>=dev-python/qtconsole-5.1.0[${PYTHON_USEDEP}]
- >=dev-python/QtPy-1.5.0[${PYTHON_USEDEP},svg,webengine]
+ >=dev-python/QtPy-1.5.0[${PYTHON_USEDEP},pyqt5(+),svg,webengine]
>=dev-python/sphinx-0.6.6[${PYTHON_USEDEP}]
>=dev-python/spyder-kernels-2.0.3[${PYTHON_USEDEP}]
<dev-python/spyder-kernels-2.1.0[${PYTHON_USEDEP}]
@@ -90,12 +90,6 @@ RDEPEND+="
dev-python/yapf[${PYTHON_USEDEP}]
"
-# currently does not work with pyside2
-RDEPEND+="
- dev-python/PyQt5[${PYTHON_USEDEP}]
- dev-python/PyQtWebEngine[${PYTHON_USEDEP}]
-"
-
BDEPEND="
test? (
dev-python/cython[${PYTHON_USEDEP}]
@@ -197,7 +191,4 @@ pkg_postinst() {
optfeature "System terminal inside spyder" dev-python/spyder-terminal
# spyder-reports not yet updated to >=spyder-4.0.0
# optfeature "Markdown reports using Pweave" dev-python/spyder-reports
- elog
- elog "Spyder currently only works with PyQt5 as QtPy backend, PySide2 is not supported."
- elog "Please ensure that 'eselect qtpy' is set to PyQt5."
}
diff --git a/dev-python/stripe/Manifest b/dev-python/stripe/Manifest
index b291ed72efb4..11a4946a340b 100644
--- a/dev-python/stripe/Manifest
+++ b/dev-python/stripe/Manifest
@@ -1 +1,2 @@
DIST stripe-2.56.0.tar.gz 216066 BLAKE2B 1473c0b5a0f53cea18120b6234ed7f310c3625592423f16e77ca3a87c8a79f61c19c0c5f09d071a2be84e4f0d8b5323cc9f1de2e24a74bd24e557c9eb48b2c38 SHA512 1f2f08b5425ad48df9afc78f574109604319ccfcdb2fba8ca574008de5dadb349eec84d0e6cf532c57218bc8624af9b256a29ef01facb950a3cfd1168d8c2660
+DIST stripe-2.57.0.tar.gz 216286 BLAKE2B 9f2c3b7d4ae3f100647a1cae32d09f258703890eb97637ab2a9d3fc1d2fc30eae7042e4245d8f62a5cb4a5226337a7b22813d992842326aaa57d7ecb3a1da200 SHA512 c63efabc8febe79a01167ad4c166d9498f8623a3b1d36c292a3554cbacfc6aada1bf5ec720723b5a9de6e5c4fb770b8f44d1c95289aff4394a70a0301df61e93
diff --git a/dev-python/stripe/stripe-2.57.0.ebuild b/dev-python/stripe/stripe-2.57.0.ebuild
new file mode 100644
index 000000000000..467a209a3a8b
--- /dev/null
+++ b/dev-python/stripe/stripe-2.57.0.ebuild
@@ -0,0 +1,63 @@
+# 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="Stripe python bindings"
+HOMEPAGE="https://github.com/stripe/stripe-python"
+SRC_URI="mirror://pypi/s/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/requests-2.20[${PYTHON_USEDEP}]
+"
+DEPEND="
+ test? (
+ ${RDEPEND}
+ >=dev-util/stripe-mock-0.103.0
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ net-misc/curl
+ )
+"
+
+distutils_enable_tests pytest
+
+DOCS=(LONG_DESCRIPTION.rst CHANGELOG.md README.md)
+
+src_test() {
+ local stripe_mock_port=12111
+ local stripe_mock_max_port=12121
+ local stripe_mock_logfile="${T}/stripe_mock_${EPYTHON}.log"
+ # Try to start stripe-mock until we find a free port
+ while [[ "${stripe_mock_port}" -le "${stripe_mock_max_port}" ]]; do
+ ebegin "Trying to start stripe-mock on port ${stripe_mock_port}"
+ stripe-mock --http-port ${stripe_mock_port} &> "${stripe_mock_logfile}" &
+ local stripe_mock_pid=$!
+ sleep 2
+ # Did stripe-mock start?
+ curl --fail -u "sk_test_123:" \
+ http://127.0.0.1:${stripe_mock_port}/v1/customers &> /dev/null
+ eend $? "Port ${stripe_mock_port} unavailable"
+ if [[ $? -eq 0 ]]; then
+ einfo "stripe-mock running on port ${stripe_mock_port}"
+ break
+ fi
+ (( stripe_mock_port++ ))
+ done
+ if [[ "${stripe_mock_port}" -gt "${stripe_mock_max_port}" ]]; then
+ eerror "Unable to start stripe-mock for tests"
+ die "Please see the logfile located at: ${stripe_mock_logfile}"
+ fi
+
+ local -x STRIPE_MOCK_PORT=${stripe_mock_port}
+ distutils-r1_src_test
+
+ # Tear down stripe-mock
+ kill "${stripe_mock_pid}" || die "Unable to stop stripe-mock"
+}
diff --git a/dev-python/twisted/twisted-21.2.0.ebuild b/dev-python/twisted/twisted-21.2.0.ebuild
index bfdc71312ff7..6d29fa59c6ee 100644
--- a/dev-python/twisted/twisted-21.2.0.ebuild
+++ b/dev-python/twisted/twisted-21.2.0.ebuild
@@ -18,7 +18,7 @@ S=${WORKDIR}/${PN}-${P}
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="conch crypt http2 serial test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/typed-ast/typed-ast-1.4.3.ebuild b/dev-python/typed-ast/typed-ast-1.4.3.ebuild
index 2a2c5159d1d2..4aed1baa7554 100644
--- a/dev-python/typed-ast/typed-ast-1.4.3.ebuild
+++ b/dev-python/typed-ast/typed-ast-1.4.3.ebuild
@@ -13,7 +13,7 @@ S="${WORKDIR}/${P/-/_}"
LICENSE="Apache-2.0 MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv sparc x86 ~x64-macos"
distutils_enable_tests pytest
diff --git a/dev-python/watchdog/Manifest b/dev-python/watchdog/Manifest
index d6acd9ca1d42..248a576b676e 100644
--- a/dev-python/watchdog/Manifest
+++ b/dev-python/watchdog/Manifest
@@ -3,3 +3,4 @@ DIST watchdog-2.0.2.tar.gz 95452 BLAKE2B e3a071cdf1c47698cd54bbaf925c4eb7e2af739
DIST watchdog-2.0.3.tar.gz 95524 BLAKE2B 568e9d66efbfa98c19dab704681dbc48f869b59d51d7c7ff7ce1fd7465efcc6233f871e7f9276f2732692645491f2fd197a639b17e9a3d8abb76d0148a934796 SHA512 e1c506e4ead8c3ee8d19e456b67623f3a1823007be6c1fad0d76c697205696183e7bd15e46c21bf61abce6dd16d267e55da8986633eeee337d10c609318fb958
DIST watchdog-2.1.0.tar.gz 95833 BLAKE2B f11eb7961885fd0fbf8e6f888a069d77d9ff26b245bd3583e9060044c43a3356d56a334108c8c1a11735fffa779cc750bc390dd1510cf2c549ec9fe064899540 SHA512 65cc291927a61506fd2c26e05b85112e1cc0f26ca851138c62dfa34fae7958ee2b3946ffe586a9d2b7a48d59a6b5ce11c8dac276a3d78dcbeca8da011a880668
DIST watchdog-2.1.1.tar.gz 96703 BLAKE2B cbcaff41de6111a3c9c2ff00b7c0a9ce1a769bb2b0f8e2af841a0783dd7f3a55f46003863b05eb983531211743fd112a6e63944193e10e8dd296523a1da27d59 SHA512 5b9eb75bc7b8642a8246f426a992265bbe2e5d82a3fcdd543289db7734701bdca1a868b02edfdc26ea239a89d80dd5322e410b949e419c66bdcc0645241d826b
+DIST watchdog-2.1.2.tar.gz 97407 BLAKE2B a847089409537391287a146670864c7721344ba8a6378c89483e9e08abe3f61690bfca48016f628ab0e6b0ff317679db3c72e27594e049ea03334dd20c305008 SHA512 2a127faffebb35f0b14d578570a4c5a7c27d6bd38042e34ea50f4b654be1ca07b193dfa72dfe25442d3e6da746f1cfbdda71c38be1386cc5a3e69204843c16f1
diff --git a/dev-python/watchdog/watchdog-2.1.2.ebuild b/dev-python/watchdog/watchdog-2.1.2.ebuild
new file mode 100644
index 000000000000..9429240f8886
--- /dev/null
+++ b/dev-python/watchdog/watchdog-2.1.2.ebuild
@@ -0,0 +1,43 @@
+# 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 optfeature
+
+DESCRIPTION="Python API and shell utilities to monitor file system events"
+HOMEPAGE="https://github.com/gorakhargosh/watchdog"
+SRC_URI="https://github.com/gorakhargosh/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+
+CDEPEND="dev-python/pyyaml[${PYTHON_USEDEP}]"
+RDEPEND="${CDEPEND}
+ dev-python/argh[${PYTHON_USEDEP}]"
+DEPEND="${CDEPEND}
+ test? (
+ >=dev-python/pytest-timeout-0.3[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -i -e '/--cov/d' setup.cfg || die
+ default
+}
+
+python_test() {
+ local deselect=()
+ [[ ${EPYTHON} == pypy3 ]] && deselect+=(
+ tests/test_inotify_buffer.py::test_move_internal_batch
+ )
+
+ epytest -p no:django ${deselect[@]/#/--deselect }
+}
+
+pkg_postinst() {
+ optfeature "Bash completion" dev-python/argcomplete
+}
diff --git a/dev-python/werkzeug/files/werkzeug-2.0.1-py310.patch b/dev-python/werkzeug/files/werkzeug-2.0.1-py310.patch
new file mode 100644
index 000000000000..56a0166d334d
--- /dev/null
+++ b/dev-python/werkzeug/files/werkzeug-2.0.1-py310.patch
@@ -0,0 +1,103 @@
+From 584f3cff7d5cb8a588189ae1137b814cf5c47e05 Mon Sep 17 00:00:00 2001
+From: David Lord <davidism@gmail.com>
+Date: Wed, 19 May 2021 20:01:58 -0700
+Subject: [PATCH] address deprecation warnings from Python 3.10b1
+
+---
+ tests/conftest.py | 5 ++++-
+ tests/test_local.py | 34 +++++++++++++++++++++++++---------
+ 2 files changed, 29 insertions(+), 10 deletions(-)
+
+diff --git a/tests/conftest.py b/tests/conftest.py
+index 3b5cbd71c..4ad1ff23e 100644
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -66,7 +66,10 @@ def connect(self, **kwargs):
+
+ if protocol == "https":
+ if "context" not in kwargs:
+- kwargs["context"] = ssl.SSLContext()
++ context = ssl.SSLContext(ssl.PROTOCOL_TLS_CLIENT)
++ context.check_hostname = False
++ context.verify_mode = ssl.CERT_NONE
++ kwargs["context"] = context
+
+ return http.client.HTTPSConnection(self.addr, **kwargs)
+
+diff --git a/tests/test_local.py b/tests/test_local.py
+index 537fc32fb..b5c392890 100644
+--- a/tests/test_local.py
++++ b/tests/test_local.py
+@@ -12,6 +12,18 @@
+ from werkzeug import local
+
+
++if sys.version_info < (3, 7):
++
++ def run_async(coro):
++ return asyncio.get_event_loop().run_until_complete(coro)
++
++
++else:
++
++ def run_async(coro):
++ return asyncio.run(coro)
++
++
+ def test_basic_local():
+ ns = local.Local()
+ ns.foo = 0
+@@ -55,9 +67,11 @@ async def value_setter(idx):
+ await asyncio.sleep(0.02)
+ values.append(ns.foo)
+
+- loop = asyncio.get_event_loop()
+- futures = [asyncio.ensure_future(value_setter(idx)) for idx in [1, 2, 3]]
+- loop.run_until_complete(asyncio.gather(*futures))
++ async def main():
++ futures = [asyncio.ensure_future(value_setter(i)) for i in [1, 2, 3]]
++ await asyncio.gather(*futures)
++
++ run_async(main())
+ assert sorted(values) == [1, 2, 3]
+
+ def delfoo():
+@@ -118,9 +132,11 @@ async def task():
+ ls.push(1)
+ assert len(ls._local.stack) == 2
+
+- loop = asyncio.get_event_loop()
+- futures = [asyncio.ensure_future(task()) for _ in range(3)]
+- loop.run_until_complete(asyncio.gather(*futures))
++ async def main():
++ futures = [asyncio.ensure_future(task()) for _ in range(3)]
++ await asyncio.gather(*futures)
++
++ run_async(main())
+
+
+ @pytest.mark.skipif(
+@@ -571,7 +587,7 @@ async def get():
+ async def main():
+ return await p
+
+- out = asyncio.get_event_loop().run_until_complete(main())
++ out = run_async(main())
+ assert out == 1
+
+
+@@ -599,7 +615,7 @@ async def main():
+
+ return out
+
+- out = asyncio.get_event_loop().run_until_complete(main())
++ out = run_async(main())
+ assert out == [2, 1, 0]
+
+
+@@ -623,4 +639,4 @@ async def main():
+ assert p.value == 2
+ return True
+
+- assert asyncio.get_event_loop().run_until_complete(main())
++ assert run_async(main())
diff --git a/dev-python/werkzeug/werkzeug-2.0.1-r1.ebuild b/dev-python/werkzeug/werkzeug-2.0.1-r1.ebuild
new file mode 100644
index 000000000000..0808a888329d
--- /dev/null
+++ b/dev-python/werkzeug/werkzeug-2.0.1-r1.ebuild
@@ -0,0 +1,47 @@
+# 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="Collection of various utilities for WSGI applications"
+HOMEPAGE="
+ https://werkzeug.palletsprojects.com/
+ https://pypi.org/project/Werkzeug/
+ https://github.com/pallets/werkzeug/"
+SRC_URI="
+ https://github.com/pallets/werkzeug/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ !hppa? ( !ia64? (
+ $(python_gen_cond_dep '
+ dev-python/greenlet[${PYTHON_USEDEP}]
+ ' 'python*')
+ ) )
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/pytest-xprocess[${PYTHON_USEDEP}]
+ dev-python/watchdog[${PYTHON_USEDEP}]
+ ~dev-python/werkzeug-${PV}[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests pytest
+
+PATCHES=(
+ "${FILESDIR}"/${P}-py310.patch
+)
+
+python_test() {
+ # the default portage tempdir is too long for AF_UNIX sockets
+ local -x TMPDIR=/tmp
+ epytest -p no:httpbin tests
+}
diff --git a/dev-python/xarray/Manifest b/dev-python/xarray/Manifest
index 1c107ceb35e7..84a62f80170f 100644
--- a/dev-python/xarray/Manifest
+++ b/dev-python/xarray/Manifest
@@ -1,2 +1,3 @@
DIST xarray-0.17.0.tar.gz 2055584 BLAKE2B afbd28032069e4b498c87abd34661dc96525cb581a08fcf68eeaca08468afb9b452650bce4d21cada0eb1cb75ad11b0565a6b965b11120d4bef4d4cd612fa91d SHA512 726d548519614936f4b6c6ded0375a35362b195a2c6b55a282d198cbb8a70fa7439377a88f253cf4f16c86582fc22c8a4700b9645516decf7edd3e980d9dda34
DIST xarray-0.18.1.tar.gz 2849935 BLAKE2B f4d510a049e67431737ba7f6a66fdd83061e6e5728ac6bfd3b9f104b24cc619cb1d0f05bbe6911e952c312ef229dbf1a68842b75dbb0ecf811fcc7d6e78569b0 SHA512 e1842d7bf06ee23716038fd58e7ae3a2014012cbc49394c9000272cb0498c1d333cbf3133b1d8fcdbddd524d44f6fa5fcc117c992d0ab1d3d0b9c4ddfc317847
+DIST xarray-0.18.2.tar.gz 2850065 BLAKE2B 16d8f5e10a7c9cb4247a3bc8f496f249d66235673e79d0707077e20b54a7d94a7b754fb00f44b876fa21273521f9e2e7d52183798ca33b8e62b30fbc57621c5a SHA512 3cfd6a3b77c48a73eb72e6c39db33aba266925df7ce9b8270231dd14032a717094073a2c3686b09fcff25313b548a452f9ed902211e254254389d15f025d8d0d
diff --git a/dev-python/xarray/xarray-0.18.2.ebuild b/dev-python/xarray/xarray-0.18.2.ebuild
new file mode 100644
index 000000000000..5e20b6367e84
--- /dev/null
+++ b/dev-python/xarray/xarray-0.18.2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# pkg_resources use in code
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="N-D labeled arrays and datasets in Python"
+HOMEPAGE="https://xarray.pydata.org/"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/numpy-1.17[${PYTHON_USEDEP}]
+ >=dev-python/pandas-1.0[${PYTHON_USEDEP}]"
+# note: most of test dependencies are optional
+BDEPEND="
+ test? (
+ dev-python/bottleneck[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/toolz[${PYTHON_USEDEP}]
+ >=dev-python/scipy-1.4[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local deselect=(
+ # warning-targeted tests are fragile and not important to end users
+ xarray/tests/test_backends.py::test_no_warning_from_dask_effective_get
+ )
+
+ epytest ${deselect[@]/#/--deselect }
+}