summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2021-03-31 13:48:10 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2021-03-31 13:48:10 +0000
commit24e99acb017162d840c056c0fecf68469c37394b (patch)
tree9fa5f39c25cc34f32a99772ccc63851bb2502ba5 /dev-python
parent3b88cd13911e2b228ec01205739ed307dbe4c209 (diff)
downloadbaldeagleos-repo-24e99acb017162d840c056c0fecf68469c37394b.tar.gz
baldeagleos-repo-24e99acb017162d840c056c0fecf68469c37394b.tar.xz
baldeagleos-repo-24e99acb017162d840c056c0fecf68469c37394b.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/bitarray/Manifest2
-rw-r--r--dev-python/bitarray/bitarray-1.8.2.ebuild (renamed from dev-python/bitarray/bitarray-1.8.0.ebuild)0
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.17.41.ebuild56
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.20.41.ebuild59
-rw-r--r--dev-python/construct/Manifest1
-rw-r--r--dev-python/construct/construct-2.10.64.ebuild37
-rw-r--r--dev-python/django-rq/Manifest1
-rw-r--r--dev-python/django-rq/django-rq-2.4.1.ebuild21
-rw-r--r--dev-python/httplib2/Manifest1
-rw-r--r--dev-python/httplib2/httplib2-0.19.1.ebuild50
-rw-r--r--dev-python/ipykernel/Manifest1
-rw-r--r--dev-python/ipykernel/ipykernel-5.5.3.ebuild46
-rw-r--r--dev-python/parso/Manifest1
-rw-r--r--dev-python/parso/parso-0.8.2.ebuild19
-rw-r--r--dev-python/pikepdf/Manifest1
-rw-r--r--dev-python/pikepdf/pikepdf-2.10.0.ebuild51
-rw-r--r--dev-python/pylint/Manifest1
-rw-r--r--dev-python/pylint/pylint-2.7.4.ebuild66
-rw-r--r--dev-python/python-socks/Manifest1
-rw-r--r--dev-python/python-socks/python-socks-1.2.4.ebuild32
-rw-r--r--dev-python/rich/Manifest1
-rw-r--r--dev-python/rich/rich-10.0.1.ebuild28
-rw-r--r--dev-python/rq/Manifest1
-rw-r--r--dev-python/rq/rq-1.8.0.ebuild55
-rw-r--r--dev-python/scipy/Manifest3
-rw-r--r--dev-python/scipy/scipy-1.6.2.ebuild155
-rw-r--r--dev-python/snakeoil/Manifest1
-rw-r--r--dev-python/snakeoil/snakeoil-0.9.2-r1.ebuild28
-rw-r--r--dev-python/sqlalchemy/Manifest2
-rw-r--r--dev-python/sqlalchemy/sqlalchemy-1.3.24.ebuild62
-rw-r--r--dev-python/sqlalchemy/sqlalchemy-1.4.4.ebuild66
-rw-r--r--dev-python/wurlitzer/Manifest1
-rw-r--r--dev-python/wurlitzer/wurlitzer-2.1.0.ebuild30
35 files changed, 881 insertions, 1 deletions
diff --git a/dev-python/bitarray/Manifest b/dev-python/bitarray/Manifest
index b4e189bbb949..b9eb1d5591e7 100644
--- a/dev-python/bitarray/Manifest
+++ b/dev-python/bitarray/Manifest
@@ -1,2 +1,2 @@
-DIST bitarray-1.8.0.tar.gz 61509 BLAKE2B 5a1285d6bac702760293d3d75a454497c2a214f70de0844c762a64eb503838284b9cf1ae47aab50b525ae075d3864be14e7dccb7d97c7c476c3dbe77ac00e742 SHA512 7078dfb28db9c630782b9a74fcd678517a66a9728cda3ac5797c2f7eabca11980ff5207e485c4d0b372e7002b488bf54fac45128ba36ad57bd9e872493baefd8
DIST bitarray-1.8.1.tar.gz 62258 BLAKE2B b82b34e49be923822f4ecac1cdab04a44f0cbadc3d20f2d1b32f510029862c079de6a935559ce4811dfbb9b1a6547bf6e44de07a5e437e445d1541790809ea6c SHA512 35bbfff1957f0e647f654f0281b02925bb9c49af84b068e1cd71fb5e28e5ad3847cff16c1b864050c9ff8cf2b516aec8a6eb55d2808247bad6680e9a28ebd64a
+DIST bitarray-1.8.2.tar.gz 63378 BLAKE2B 9fd3540bfdbf4353f9cd168452ca475da2e66089bb105d3b6d45da281431bd7c2d1d8a26b467c81109cdb137b2f3eb76410751fdd4d0ce0ed063d167a80c3eff SHA512 4cdd8290c17ea06790471240cdc1d76eebdad21780bb22aaa56f3094dac6fac9a5f0f1d7ab04848051bf6187ed432803569c42f797999855ed1f52f6f05bc5ab
diff --git a/dev-python/bitarray/bitarray-1.8.0.ebuild b/dev-python/bitarray/bitarray-1.8.2.ebuild
index 012b3f886892..012b3f886892 100644
--- a/dev-python/bitarray/bitarray-1.8.0.ebuild
+++ b/dev-python/bitarray/bitarray-1.8.2.ebuild
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index a39a0fddada7..20fb5102df31 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -4,3 +4,4 @@ DIST boto3-1.17.27.tar.gz 349887 BLAKE2B 1fde4af489c98b8c4f77660ad278abf6641f70d
DIST boto3-1.17.33.tar.gz 352659 BLAKE2B b78e3ce86b32d23ade26d93d0c3ba86020a94becb42a866be6ee02f268819eb78fde398b4bd3125c5be6b493b28434c448411b9bd83eb631a3687019aa384ae0 SHA512 452cb1d165afe03a7603999033348524212d62742a026bc51677f5b64e9de98be2920c89f7aaf5999dd676c0c9ff098af055edc01edd97bad239815263ffbd38
DIST boto3-1.17.39.tar.gz 354720 BLAKE2B bd5f9f676c346efc9264e42e802d0c5af5a3674cd4693019d39409e11958947c4a19982ce8572cc1be400f604b85428f6e964df175a71c35ffe11023b19cf733 SHA512 e12c08d06f68900291b36c71252d613a3a26298bdb9c665a1378ab5d26eacd65b496057aee74fedab6d5d955312d9225e63f7e0f1438d8fa739c2c1581d62297
DIST boto3-1.17.40.tar.gz 355270 BLAKE2B f7f3af1882ee9188e37ac90f7ebd55b4cec016a12404dfa402da8bbbfaabb904e7d16a77e4f73b1e5da14550944a97672e5ccaa555f57662616233dbfd807cfb SHA512 6d21fbfac86e9a5992ecef35cc8b29c43bd9bb5823672eb8a375c239369edb775fbddf80f2d64209a4d106e2fd02e72583b6e5c8c6c98fdcb45ea17f1dfc0e41
+DIST boto3-1.17.41.tar.gz 355972 BLAKE2B f58dc93b53850781d89db65dcdb17b60141b3dbe7a8f943bc49e3886eb1b3b6989e3720c7966346a91af4679873b8eea4ffcae3f6ea58aa755b06438de10a13a SHA512 9048d1af355397efa6b8ed26007829e2382995c202d27d2dec26b25635e563dda8fe55981483d99c248b1a6e58154ab023e57d8a1ca356a1c46536108616b5a2
diff --git a/dev-python/boto3/boto3-1.17.41.ebuild b/dev-python/boto3/boto3-1.17.41.ebuild
new file mode 100644
index 000000000000..2df16964cdb0
--- /dev/null
+++ b/dev-python/boto3/boto3-1.17.41.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 ~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 8b756992c5c6..a9188fe53033 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -4,3 +4,4 @@ DIST botocore-1.20.27.tar.gz 7518860 BLAKE2B 73a5a5302a0adfe9c72ec40f0edec8fc97f
DIST botocore-1.20.33.tar.gz 7543656 BLAKE2B eefd7b06c5a43780982616cfd640c6a1c5d9e919b403c0f78be06833e8e618b142cabacf2dd3b3e13cf351bbd5d0d42ef23b314355f68f7d9dc6aa9cae6e377f SHA512 6354ed7ebbe467ea96c0ea0e059acd2be0a40973d55998c0e006e73a67f2a69bd8009099f761af83e47022ad27698d3a21ffc2824ad4b74a687bc490239420e0
DIST botocore-1.20.39.tar.gz 7560051 BLAKE2B 0605b39e28e494add04d0f5ca559a3c1eac0011e332445fc66b4ee6a75c38f127eead72da287fdbc6da8cdb0f5ad90d18e4c71bc6641f2fe8784a1399cfd32d1 SHA512 2de58a1b585106280d292edd2a4d2f13c3c5d7ecddc24daf5a7ab65106f42a32bb700906cc19342c600cdb99d8f2ac1b951d4de5eb7f223a1c8f910ceae764d6
DIST botocore-1.20.40.tar.gz 7564881 BLAKE2B a9a84867960fdd9a97f429c25410433ee7775134b358f67bddecf84308abe1c24e3f7f0f36e5df9da88e17b4002ff99f9494c45320289472022bd3a041fad177 SHA512 cd63670d3820d18be933d225ce238b72496236f7d3aa82b385071735f59f59128502eae80093385bf95a7ba33f78ce8baff6be55e88a4539e6ee5c7816484fd6
+DIST botocore-1.20.41.tar.gz 7572739 BLAKE2B 2fde8a64fd04acd698b91e222934ba5338c24942885c7ef85754947bebac09ad3ee70d7e3df3d60af76b9840df9bceae5b465764624f2a8910503f66d474fc8d SHA512 9eabb9c74ebe6b3eb3bc21781b3c91ce39309337cc90047e636eeaf17d31c14e4107d1228655c042f13d154f28732129fa84bd08c548144028da27cbdb8df1d1
diff --git a/dev-python/botocore/botocore-1.20.41.ebuild b/dev-python/botocore/botocore-1.20.41.ebuild
new file mode 100644
index 000000000000..9d681f87244c
--- /dev/null
+++ b/dev-python/botocore/botocore-1.20.41.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 ~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/construct/Manifest b/dev-python/construct/Manifest
index 60ecd3d8fbee..6402ea0661b3 100644
--- a/dev-python/construct/Manifest
+++ b/dev-python/construct/Manifest
@@ -1,2 +1,3 @@
DIST construct-2.10.61.tar.gz 1185872 BLAKE2B 03eb83b707f607f65f13f6430815af3f91f728e133cc1a889f4ff37e34b249cff8f8b13ffb764fbffbba2bec699ce94173e3b80498c42f8fc7628a125b659188 SHA512 dd25f9646d55c4914fbb506b795dced01a5a2d58a9d8378ceaa4d5ba666c9547e96f7a658e8d521ef9a3f53065e89b90e0c8560bc2eb4095b9ff8077b840eec4
DIST construct-2.10.63.tar.gz 1186101 BLAKE2B c0996f1228f36679d58ca931b27abb0b62da989d1554763295cf56086c9e288b3a02a4de23cca78a726a84c6483581662b01c8eb516d59a165b38eca8cc150f7 SHA512 6d3202f4c98f9c14edaf0c3ea90875eb43c9e3ca454f54a2fe3c6d7810957781a0fe95c60cb6b28445ab80a9ad3ae52c4a397cf9b3531f42d1cb443564427a9c
+DIST construct-2.10.64.tar.gz 1186820 BLAKE2B f3b238060d9db1511effdb4c4374d5e8df0a90d9ea015793766ba29718c0ea2c43a2e8d892076b6b148574bb35e0813299b1c009149f9057d46c0a7f0cef63ec SHA512 00eee1d330457dffe854d5a709c21a8f6e71034695ea9aaffb886c198f2cf56b142f0d5d9edbeee480b77a13f8f8c1faaf6b84eed4161882d77623935502460a
diff --git a/dev-python/construct/construct-2.10.64.ebuild b/dev-python/construct/construct-2.10.64.ebuild
new file mode 100644
index 000000000000..51c132a92be2
--- /dev/null
+++ b/dev-python/construct/construct-2.10.64.ebuild
@@ -0,0 +1,37 @@
+# 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="A powerful declarative parser for binary data"
+HOMEPAGE="https://construct.readthedocs.io/en/latest/ https://pypi.org/project/construct/"
+SRC_URI="https://github.com/construct/construct/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/arrow[${PYTHON_USEDEP}]
+ dev-python/cloudpickle[${PYTHON_USEDEP}]
+ dev-python/lz4[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.15.4[${PYTHON_USEDEP}]
+ dev-python/ruamel-yaml[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests pytest
+
+python_test() {
+ epytest --ignore tests/test_benchmarks.py
+}
+
+pkg_postinst() {
+ ewarn "Version 2.10.x has significant API and implementation changes from"
+ ewarn "previous 2.9.x releases. Please read the documentation at"
+ ewarn "https://construct.readthedocs.io/en/latest/transition210.html"
+ ewarn "for more info."
+}
diff --git a/dev-python/django-rq/Manifest b/dev-python/django-rq/Manifest
index e4fa75e6a66b..d8e1a65a725a 100644
--- a/dev-python/django-rq/Manifest
+++ b/dev-python/django-rq/Manifest
@@ -1,2 +1,3 @@
DIST django-rq-2.3.2.tar.gz 41038 BLAKE2B 837a8f819e9a91763b2d4ec961257d429e6d686fbaaa181d7fbe41efd9e08d958c5c340e4e1a4c8f0ef4063e985d3df82d8ea2c6a7cdea872b330dd545660e31 SHA512 8cf59aae163034240bfecda5f332dcc590813445cb2fc14bee15459ec8d4c50a36ab56865b3ce9360968451695e7a6d5eca5da26ef63c29dbc9dd58af8f16b98
DIST django-rq-2.4.0.tar.gz 42455 BLAKE2B b60268625e8d57f1975c47df1dff72599fcab9eba0b43020196329cfc3c5447ce1bf9082338143f3f1d31434a8407d7a0e00b4dca64f2797ec54983930200798 SHA512 b1eec3f7e906bb4e553501940b9913727c8b21509fa10dd98ab5ad9f5625aaadd3f9c749824ad130005ac2a2ad8d27e8c8834466334f9bc09c438fcbd1cff344
+DIST django-rq-2.4.1.tar.gz 42558 BLAKE2B 8412db96dcc4b600ee7ca00e2a9aa5cfdb00ac517fb94ab256b3c132462f52f4de7408763eb98bc304bfe237fb0d7cb7991bdb9df20fd250780d52600b14df58 SHA512 44d8151847c18fd993242e5a5ff99e3964d5b9702d3dc8b574c3581617658ec0a9393c85b66211c273444f39688f92890a38802a8385bcf351a28d833eef5f19
diff --git a/dev-python/django-rq/django-rq-2.4.1.ebuild b/dev-python/django-rq/django-rq-2.4.1.ebuild
new file mode 100644
index 000000000000..671bd4d934e1
--- /dev/null
+++ b/dev-python/django-rq/django-rq-2.4.1.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="An app that provides django integration for RQ (Redis Queue)"
+HOMEPAGE="https://github.com/rq/django-rq/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/django-2.0[${PYTHON_USEDEP}]
+ >=dev-python/rq-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/redis-py-3.0.0[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/httplib2/Manifest b/dev-python/httplib2/Manifest
index aadcd1f8b58c..07236ee57f01 100644
--- a/dev-python/httplib2/Manifest
+++ b/dev-python/httplib2/Manifest
@@ -1 +1,2 @@
DIST httplib2-0.19.0.tar.gz 263522 BLAKE2B b35c8dcf86de17a5d8eac86a9a6b4110fb247925662e24a7645a67dfd0b2e640dc29875b41673c5a91a083f17e9619fd40dd08cf2c9ee7f48c8069bc14a50966 SHA512 9193a0e8e9a58a3f0e9b27fdf827932482a47b88af297af6e5f004164ca0b72feeff513b8191bf7c48d6714070a1390ae54eb8a2c6840f54f2580889c7837c7f
+DIST httplib2-0.19.1.tar.gz 263971 BLAKE2B ec254249f5c8df2a0dc3fe4e2e9088f6ca14ba84516be77450beacab41cd295d4e741ac6026471fcf8bb8464ebd732a0a856901e5c09324a0f96ad2338b397e7 SHA512 0c87b3c9923e81c83df5257ce60f7248d86a64aea0a02d5a3f34be68c692c6abd896f95214899dc6e81b23677efc7684a3cba4c1a47261176dd26c3988054e55
diff --git a/dev-python/httplib2/httplib2-0.19.1.ebuild b/dev-python/httplib2/httplib2-0.19.1.ebuild
new file mode 100644
index 000000000000..7ef4738d8812
--- /dev/null
+++ b/dev-python/httplib2/httplib2-0.19.1.ebuild
@@ -0,0 +1,50 @@
+# 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 comprehensive HTTP client library"
+HOMEPAGE="https://pypi.org/project/httplib2/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+
+RDEPEND="
+ app-misc/ca-certificates
+ dev-python/pyparsing[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests pytest
+
+PATCHES=( "${FILESDIR}"/${PN}-0.12.1-use-system-cacerts.patch )
+
+src_prepare() {
+ sed -i -e '/--cov/d' setup.cfg || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local deselect=(
+ # broken by using system certificates
+ tests/test_cacerts_from_env.py::test_certs_file_from_builtin
+ tests/test_cacerts_from_env.py::test_certs_file_from_environment
+ tests/test_cacerts_from_env.py::test_with_certifi_removed_from_modules
+
+ # broken by new PySocks, probably
+ tests/test_proxy.py::test_server_not_found_error_is_raised_for_invalid_hostname
+ tests/test_proxy.py::test_socks5_auth
+ )
+
+ # tests in python* are replaced by tests/
+ # upstream fails at cleaning up stuff
+ epytest ${deselect[@]/#/--deselect } tests
+}
diff --git a/dev-python/ipykernel/Manifest b/dev-python/ipykernel/Manifest
index eb7909dc440b..b83cda9c7830 100644
--- a/dev-python/ipykernel/Manifest
+++ b/dev-python/ipykernel/Manifest
@@ -1 +1,2 @@
DIST ipykernel-5.5.0.tar.gz 112600 BLAKE2B d1df26095e9badd5eb1fe4665bac01c254375407ac3af1f014d78b9e6dd6613c6a5830c09a63191ea84c36fc31a5d9faf73b1a29dab1a020e225636f6f2f0c90 SHA512 b1726d765f4debbb4c5efcc5e2d9745d8e51ada8e1417b31463b7c9546c6887cc6c0787fd32729b4013544e2bd41829dfd289dbb45b0c5dbb026eb57a47ec51a
+DIST ipykernel-5.5.3.tar.gz 112656 BLAKE2B 4cad13f24baafc591558136405c8c643e12033ffd01b5608ffdef5442080c3e2003c0f2c4b1562c1f326b4c10e124afc358f5258a6c59b7c9db90b8bb23278e3 SHA512 7b7f0a0aed71f7713934ac071e7283be2028a221fa2b87cad8c2d26821909f81d21dec23a5f72c91e7c9de639b0d7430957c8cc58bbc026d95bd81bb0a005800
diff --git a/dev-python/ipykernel/ipykernel-5.5.3.ebuild b/dev-python/ipykernel/ipykernel-5.5.3.ebuild
new file mode 100644
index 000000000000..3115222a8fc2
--- /dev/null
+++ b/dev-python/ipykernel/ipykernel-5.5.3.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} )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="IPython Kernel for Jupyter"
+HOMEPAGE="https://github.com/ipython/ipykernel"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="test"
+
+RDEPEND="
+ dev-python/ipython[${PYTHON_USEDEP}]
+ dev-python/jupyter_client[${PYTHON_USEDEP}]
+ dev-python/jupyter_core[${PYTHON_USEDEP}]
+ dev-python/traitlets[${PYTHON_USEDEP}]
+ www-servers/tornado[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ dev-python/flaky[${PYTHON_USEDEP}]
+ dev-python/nose[${PYTHON_USEDEP}]
+ dev-python/nose_warnings_filters[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local deselect=(
+ # TODO
+ ipykernel/tests/test_serialize.py::test_numpy_in_seq
+ ipykernel/tests/test_serialize.py::test_numpy_in_dict
+ ipykernel/tests/test_serialize.py::test_class
+ ipykernel/tests/test_serialize.py::test_class_oldstyle
+ ipykernel/tests/test_serialize.py::test_class_inheritance
+ )
+
+ epytest ${deselect[@]/#/--deselect }
+}
diff --git a/dev-python/parso/Manifest b/dev-python/parso/Manifest
index a4763a61e74e..cd68f27f5adc 100644
--- a/dev-python/parso/Manifest
+++ b/dev-python/parso/Manifest
@@ -1,3 +1,4 @@
DIST parso-0.7.0.tar.gz 395175 BLAKE2B ac407b711b6229a93864e339b3632563d3fcd7f84e22a43bd89282300b931f58d638ab8a64c441dc183852576261be18a3be471b0824b6e56fb69025cf666d6b SHA512 41ad60b1d7dff682281059aabff0d43ccd3048b6cc6ee3e9e141d4a0a965fd99449f6d3f23689914c1f7bda371e3cc86266775a1c23fb1c430ea689c916fbb71
DIST parso-0.7.1.tar.gz 399842 BLAKE2B 1e47c1dd6846d01aa5820d7cedc3eafcf12ea0d4a2e95fa3f54429633b1c12dc39a4abe237fa46eb629408006777bd1f512cf878025b55119568ac19729b8c19 SHA512 318969a7a941c4a0948e58643b07b6f5c446ea166b3a8e44a556f0677ec9a36d7dc8c6d37ca7bce3f8276ee3d7144e22fbaaeac90c738fb90f7e94a0cf8abf7d
DIST parso-0.8.1.tar.gz 393403 BLAKE2B d8d2a025dfb6664d8deeabfc621f4dcf0c6f6e0769dc3a7081888436cce39685f7749ee4ed33c501e3690bec0c8b21d18195d585a8baf5fa8c1b1ae1bfad5680 SHA512 10cc36a4f288d06b8d06bf3995eafe8c6b5d46d0ab01ce6db4557c82f8c64c6792b438a5b7dea570a9690bad586ab4216161268be9c1979b91b3af50e1c8801c
+DIST parso-0.8.2.tar.gz 394419 BLAKE2B f4e86ae55140adc9bbfdd34a8044e7fdfbf9d318a6385ac5feedc07127061943c2d690581af144f158846e3bf6f82124046c7e625369a4055ab92a54f9210c49 SHA512 a90810ad89301d804d215392ed77593b015f13bc7ef8512302a8893b314a9e74c15e2aaa77157c8595a134d3481e8115f306f9628835271478837ec6f19e645f
diff --git a/dev-python/parso/parso-0.8.2.ebuild b/dev-python/parso/parso-0.8.2.ebuild
new file mode 100644
index 000000000000..c857c4baed5f
--- /dev/null
+++ b/dev-python/parso/parso-0.8.2.ebuild
@@ -0,0 +1,19 @@
+# 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 parser that supports error recovery and round-trip parsing"
+HOMEPAGE="https://github.com/davidhalter/parso https://pypi.org/project/parso/"
+SRC_URI="https://github.com/davidhalter/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+
+distutils_enable_sphinx docs
+distutils_enable_tests pytest
diff --git a/dev-python/pikepdf/Manifest b/dev-python/pikepdf/Manifest
index 3e6d8515b582..e904dfafb7b5 100644
--- a/dev-python/pikepdf/Manifest
+++ b/dev-python/pikepdf/Manifest
@@ -1,3 +1,4 @@
+DIST pikepdf-2.10.0.tar.gz 2376794 BLAKE2B c9f85ddec15a7eaef2ed3c43221196d957dc5d8d03aa9931886d52653efa238d6d847862e2610edcfca85cd2ad0746f2f0ae78e70ecd6666cc1a37b4f6644dd2 SHA512 d2a8ecd91ef4ae8c16b5e6fcd7149a1180d6c7c1f16c262566d7d43f82d25a6701676511c8327b265cf0ac2bfc6db29b43c4713e4b51651fdb5f680449a53af0
DIST pikepdf-2.7.0.tar.gz 2369537 BLAKE2B e37f77a5ce9e76f05c73b1a517da0f470d437ef41e49ad922a2f29c46f74cba9570aa1e3f9dffeacfe2bf31f6abee27bc393200620ebf23184f80ce3b40a93c3 SHA512 d3291e15461ebf9cb20d6ed145d6327e25595375a0b9e4ca9f6ee26a4b698d094f8f938cf766ee530cdd565b0f10bec78f228f70479e2777907376d24ea3b34f
DIST pikepdf-2.8.0.post2.tar.gz 2369810 BLAKE2B 67b2f88a0718076d9f28148342832ec646443b6bdf0f9ca3717a9a9caa6518563564f25e4532c3ebc5d05e18b78f2db4a9bab17f0d0cf6cf329dcc41f7c3332f SHA512 adf28106dbf58bf4b29c3930280c6f54c04ac4fc40adb4d9e7fe3a288293b077f2e4b063e4be91e661c835b474ba2b46167ce05d9f5d2c7c13ae180f6b3b76dc
DIST pikepdf-2.9.2.tar.gz 2375015 BLAKE2B 775a523ec7543bd112a673e352c5835b84f28fc3a1b762447d4366d6195cf423c284ab638286afd1f768a2a475957695252e473b7b4d8d16c48fcab733a138bc SHA512 909f98519f2eb685225ed19e4ed4a7bcf018a5eb21be42833635e76a09d1c89254980f628875eebfc2b937ae8030d11d916503da28888421971540964d8ffd39
diff --git a/dev-python/pikepdf/pikepdf-2.10.0.ebuild b/dev-python/pikepdf/pikepdf-2.10.0.ebuild
new file mode 100644
index 000000000000..c1b5454f13e9
--- /dev/null
+++ b/dev-python/pikepdf/pikepdf-2.10.0.ebuild
@@ -0,0 +1,51 @@
+# 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
+
+MY_P=${P/_p/.post}
+DESCRIPTION="Python library to work with pdf files based on qpdf"
+HOMEPAGE="https://pypi.org/project/pikepdf/ https://github.com/pikepdf/pikepdf"
+SRC_URI="
+ https://github.com/${PN}/${PN}/archive/v${PV/_p/.post}.tar.gz
+ -> ${MY_P}.tar.gz"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="app-text/qpdf:0="
+RDEPEND="${DEPEND}
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/pybind11[${PYTHON_USEDEP}]"
+BDEPEND="
+ >=dev-python/pybind11-2.6.0[${PYTHON_USEDEP}]
+ >=dev-python/setuptools_scm-4.1[${PYTHON_USEDEP}]
+ dev-python/toml[${PYTHON_USEDEP}]
+ dev-python/setuptools_scm_git_archive[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/attrs-20.2.0[${PYTHON_USEDEP}]
+ >=dev-python/hypothesis-5[${PYTHON_USEDEP}]
+ >=dev-python/pillow-5.0.0[${PYTHON_USEDEP},jpeg,lcms,tiff]
+ >=dev-python/psutil-5[${PYTHON_USEDEP}]
+ >=dev-python/pytest-6[${PYTHON_USEDEP}]
+ >=dev-python/pytest-timeout-1.4.2[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/python-xmp-toolkit-2.0.1[${PYTHON_USEDEP}]
+ )"
+
+#distutils_enable_sphinx docs \
+# dev-python/ipython \
+# dev-python/matplotlib \
+# dev-python/sphinx_rtd_theme
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -i -e '/wheel/d' setup.py || die
+ sed -i -e '/-n auto/d' setup.cfg || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/pylint/Manifest b/dev-python/pylint/Manifest
index bfbf0cdc5707..b469f093ae40 100644
--- a/dev-python/pylint/Manifest
+++ b/dev-python/pylint/Manifest
@@ -1,2 +1,3 @@
DIST pylint-2.7.1.tar.gz 708916 BLAKE2B 606637ff25daccba741ae5bcdecb6a2be50bc17393009193a29312b4a218622d23287a0f0c5a81e79e77cc54dfe529483ad01fa39445103f240addaa3ad58bf7 SHA512 eebf1d3da5ca072cb912ecffebf183c79f2f8b2c2b14044751aad202d75d06d1c06abb561d4581990b92fe54c06b570a1de39b792b0d729cf300c01c82c4e3c0
DIST pylint-2.7.2.tar.gz 709177 BLAKE2B 5e4daeb19b6b18d570f4d78b01cc5023d5d245840160fdbddb194ab7036118742ffe3075ee27c37bd7a700d11d9006dc9abaaba9cf9596ae1b63941f139da7ac SHA512 800b210fbe5665db390d5c885d103856dc474b4e43d2f752bdcfcea36121132c26eecdcb67620c4a90456823f11a33568de4d37d59eea692dcd1751d931420f7
+DIST pylint-2.7.4.tar.gz 715507 BLAKE2B 141506c067195422d0b052924baf87c363c89e28b3279f5173d989ac9247163184840251bd05dfb7dbb765f7b2e921a851fde0323b6c4cc231bc58911c77f692 SHA512 2b7ec9ab3325209021cb0282a6dacabf7ddd1f5e4049157610015ac8c11413471defc9e0528f81e1a60c2b259260f1bde1d04286776b3f32f771968b9866d734
diff --git a/dev-python/pylint/pylint-2.7.4.ebuild b/dev-python/pylint/pylint-2.7.4.ebuild
new file mode 100644
index 000000000000..b1e54c7f72ee
--- /dev/null
+++ b/dev-python/pylint/pylint-2.7.4.ebuild
@@ -0,0 +1,66 @@
+# 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} )
+PYTHON_REQ_USE="threads(+)"
+DISTUTILS_USE_SETUPTOOLS=rdepend
+
+inherit distutils-r1
+
+DESCRIPTION="Python code static checker"
+HOMEPAGE="https://www.logilab.org/project/pylint
+ https://pypi.org/project/pylint/
+ https://github.com/pycqa/pylint"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="examples"
+
+# Mirror requirements from pylint/__pkginfo__.py
+RDEPEND="
+ <dev-python/astroid-2.6[${PYTHON_USEDEP}]
+ >=dev-python/astroid-2.5.2[${PYTHON_USEDEP}]
+ >=dev-python/isort-4.2.5[${PYTHON_USEDEP}]
+ <dev-python/isort-6[${PYTHON_USEDEP}]
+ >=dev-python/mccabe-0.6[${PYTHON_USEDEP}]
+ <dev-python/mccabe-0.7[${PYTHON_USEDEP}]
+ >=dev-python/toml-0.7.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/six[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.4.4-sphinx-theme.patch"
+)
+
+distutils_enable_sphinx doc --no-autodoc
+distutils_enable_tests pytest
+
+python_test() {
+ local skipped_tests=(
+ # No need to run the benchmarks
+ tests/benchmark/test_baseline_benchmarks.py
+ # Fails when graphviz is installed (?!)
+ tests/test_import_graph.py::test_missing_graphviz
+ )
+ # Specify the test directory explicitly to avoid import file mismatches
+ epytest tests ${skipped_tests[@]/#/--deselect }
+}
+
+python_install_all() {
+ doman man/{pylint,pyreverse}.1
+ if use examples ; then
+ docompress -x "/usr/share/doc/${PF}/examples"
+ docinto examples
+ dodoc -r examples/.
+ fi
+
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/python-socks/Manifest b/dev-python/python-socks/Manifest
index 2b2425d2f980..6ac10c9c6606 100644
--- a/dev-python/python-socks/Manifest
+++ b/dev-python/python-socks/Manifest
@@ -1,3 +1,4 @@
DIST python-socks-1.2.1.gh.tar.gz 32038 BLAKE2B 56f3c885095090f4b3441294977b4af142ace8d2814f5f9b965a68e129baf90a6385dbc7e78463aac2249f97c6d60f03c9ae8b1159e30fcdaaeba00c19831e7b SHA512 8ecc35c51096b1c0312895dcc1169b7f475709f5bdd81572257257cb6bdca00ebcbe9e6b211c66b26ec2dec4dd86051077b7b30279174585428dca0fa7098403
DIST python-socks-1.2.2.gh.tar.gz 32141 BLAKE2B 51e7c4a2319c4b9680f4568c2dba7f9b64bfb3ec8404dfbb6b30531b9ebeef5cefc95997df7663209909f38583040f3e58c7a9472a75276decef605f5af7c4ba SHA512 27af2da348396e0bd5f6120de7bbb9b89533d3481bb1cbb72668aa28afaa84026fefbd4601b8fd0129d8f5add95b8e00d840d1298eb96b151091f2f64d92dd2f
DIST python-socks-1.2.3.gh.tar.gz 32180 BLAKE2B 340c0a0ff8bfb113e26bb0eaec61f9d57d3e01b5ea045b22ad8dcb48689213ceaf6fafa5901792a1f7333ee1c729c5c44db30d50fbec98bd8f9716eb4e3b6f2b SHA512 1878d7f835a6c97b2577d226363a1f82c8ee4f0fe12931987f7712be98f985e67dce6eee2af8e901756e9bbdd8c667032d7ca37bfa57123c542f8252612dd605
+DIST python-socks-1.2.4.gh.tar.gz 32192 BLAKE2B fa06f9158348292bef874c81623c11a54556db9c36cd7428d7a835428d152f3a4925d59e14d87518dfaae9e6937324e35db99bb5e1000f29fe9caf11fa2f8318 SHA512 6e70d8d98b2901e97250d30b350002944d979356bb6cd7dd4022af420e166076259a7b1aa4845d771243b18ab3f06ee955f07482c527835bb0135f0622d804be
diff --git a/dev-python/python-socks/python-socks-1.2.4.ebuild b/dev-python/python-socks/python-socks-1.2.4.ebuild
new file mode 100644
index 000000000000..2b19bd9aece4
--- /dev/null
+++ b/dev-python/python-socks/python-socks-1.2.4.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2020-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="SOCKS4, SOCKS5, HTTP tunneling functionality for Python"
+HOMEPAGE="
+ https://pypi.org/project/python-socks/
+ https://github.com/romis2012/python-socks/"
+SRC_URI="
+ https://github.com/romis2012/python-socks/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# trio, curio are not packaged
+# asyncio is the only backend we have, so dep on its deps unconditionally
+RDEPEND="dev-python/async_timeout[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ dev-python/async_timeout[${PYTHON_USEDEP}]
+ dev-python/flask[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/yarl[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests pytest
diff --git a/dev-python/rich/Manifest b/dev-python/rich/Manifest
index 3208d19ab87f..6a5eeff9168c 100644
--- a/dev-python/rich/Manifest
+++ b/dev-python/rich/Manifest
@@ -1,4 +1,5 @@
DIST rich-10.0.0.tar.gz 16217911 BLAKE2B 2604bf6a3bd57a9465fc2a001b497ff7f0afe83953d42fa8e5d9c0edfeadb0992503e2cf91cea30f177a641ebb3bb94d669945b601c88e5e796a107a08792e2f SHA512 5641df7d9ef1c1336077e357fb35c158b643afecfc3f2eb5023aa47042714d7c9fbbce7e52d0bce7c3b2c04b19e11985ca95807458dcf381fb2053becaf6ba1d
+DIST rich-10.0.1.tar.gz 16218107 BLAKE2B 3992282b72ea97a364df3ca67e10a90baadb36ff207f64edee7e11df957b078d4b2c67bf3485efb7dddd0b3e8c2d3ae87e1d9b4d063db91f30c1a9510f7da976 SHA512 14689486b8a647c17fe6cad0902f4ecbf2c09e95ad0d4ea33b88bd9f8a17164f9efed4baa09a4ad6e6a85a9ec9fdeeccacd58eaa628efccb48fef6112487926c
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.0.1.ebuild b/dev-python/rich/rich-10.0.1.ebuild
new file mode 100644
index 000000000000..b6affb7238ee
--- /dev/null
+++ b/dev-python/rich/rich-10.0.1.ebuild
@@ -0,0 +1,28 @@
+# 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}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
+
+pkg_postinst() {
+ optfeature "integration with HTML widgets for Jupyter" dev-python/ipywidgets
+}
diff --git a/dev-python/rq/Manifest b/dev-python/rq/Manifest
index b7de45f4d770..45423c8f4a9a 100644
--- a/dev-python/rq/Manifest
+++ b/dev-python/rq/Manifest
@@ -1 +1,2 @@
DIST rq-1.7.0.tar.gz 579373 BLAKE2B 835868a294478af07b9fa97fef14b0f2013abe125263efa15c4988eeaf564ee61ab2e8d68842c730a0f8b02a19a4d66f328828fb939a05b9d3b36996688192e0 SHA512 4027a8e1474cc350cf539ecf5734c2f851ef4e61bf0e106e44f359736f4f1ec4e690af97a119d12b1b7614b38ec4da286acff98b718ef604b5c367b3cc2af741
+DIST rq-1.8.0.tar.gz 584251 BLAKE2B 3da1d4f1604a57e16e26c39643337fb8ab804089f783d6a7c44500f577a326cf4883835c996427e819896faad512b9a380ebfdcf67e865eec475d39321ecd2f5 SHA512 e8946b4454e67bc9ce0c69c302ba3bb6403654cce384904d64996766227ba8fdcbff834a8901a8fa09dcccebe8aba769d38daf228283f4142166fa5ea0f9a107
diff --git a/dev-python/rq/rq-1.8.0.ebuild b/dev-python/rq/rq-1.8.0.ebuild
new file mode 100644
index 000000000000..10187b7bb310
--- /dev/null
+++ b/dev-python/rq/rq-1.8.0.ebuild
@@ -0,0 +1,55 @@
+# 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=rdepend
+
+inherit distutils-r1
+
+DESCRIPTION="simple, lightweight library for creating and processing background jobs"
+HOMEPAGE="https://python-rq.org https://github.com/rq/rq"
+SRC_URI="https://github.com/rq/rq/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86"
+
+BDEPEND="
+ test? (
+ dev-db/redis
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/sentry-sdk[${PYTHON_USEDEP}]
+ )
+"
+RDEPEND="
+ >=dev-python/click-5.0[${PYTHON_USEDEP}]
+ >=dev-python/redis-py-3.5.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests --install pytest
+
+src_test() {
+ local redis_pid="${T}"/redis.pid
+ local redis_port=6379
+ local redis_test_config="daemonize yes
+ pidfile ${redis_pid}
+ port ${redis_port}
+ bind 127.0.0.1
+ "
+
+ # Spawn Redis itself for testing purposes
+ # NOTE: On sam@'s machine, spawning Redis can hang in the sandbox.
+ # I'm not restricting tests yet because this doesn't happen for anyone else AFAICT.
+ elog "Spawning Redis"
+ elog "NOTE: Port ${redis_port} must be free"
+ /usr/sbin/redis-server - <<< "${redis_test_config}" || die
+
+ # Run the actual tests
+ distutils-r1_src_test
+
+ # Clean up afterwards
+ kill "$(<"${redis_pid}")" || die
+}
diff --git a/dev-python/scipy/Manifest b/dev-python/scipy/Manifest
index 13ed408f42a5..17559e4b9c1b 100644
--- a/dev-python/scipy/Manifest
+++ b/dev-python/scipy/Manifest
@@ -19,3 +19,6 @@ DIST scipy-1.6.0.tar.gz 27275413 BLAKE2B f65fca81a21a3077ead119123fc3bb2ed96aaac
DIST scipy-1.6.1-html.zip 23946591 BLAKE2B d3464c342b1d4f43e17e214c7557737913bf4131f88b9d569cff106c75dc7ebf0d065283792fddc189e2a3ddc322f1b2b4f38c6d313569f28395e79680060b58 SHA512 73561f9daa303c6e967f9b11952c6239dea7ff1a2fa02434354ac78fcffe7a552aa0f1043a17cb5c35a442def499eff199856cca8efa1415449cbf54f0d4913b
DIST scipy-1.6.1-ref.pdf 34594740 BLAKE2B 905ddcd7a3d462b09ded688f0818204d7684fa18058d0dac480d0a000e9ea0b7ebcdd33c01adae17234dcdf630d4aef9078174127af46f1db55d5c14b3245346 SHA512 355f4681439c1720f45dca6badfe72d77edfca0962fd9b42df34f1cd8fff7121fa6e7f60570bb638abd3ba9693930fa46b25af862d8fc1568b508c6fdd785479
DIST scipy-1.6.1.tar.gz 27346828 BLAKE2B 147d7b3f796023fe557f07b46eefa1b23631106556ff56bb0ab5640d7dccfa86fecc2031ba0571eee2560a9bf86705a5ef32527852650e6d0629a722574bf135 SHA512 778a7bca15bb880a3fd1c3d46ef753920335eca95fe5f2b8512883a2aec1bb8e9d8a8fdbf4fee90e823e31980408a51451cc53d4f10c632cd72faf2856c868c8
+DIST scipy-1.6.2.tar.gz 27187804 BLAKE2B af3578bc029c3af548c04144d7405ac8e6f8e057f870394e124f24aea9989120275407e5a7fdd29fbe1019d2acc295c1ce00872461ecf3a325000e8817cd559f SHA512 18b03f32e8343c5a6c6148ac0bfd4b5f2cc9ff5f74d5d41761ae9e773d6af8774c7b09a3fcc47122864eccce1dbbc17e9325819885d3fc3ab2baf98e7d3befa4
+DIST scipy-html-1.6.1.zip 23946591 BLAKE2B d3464c342b1d4f43e17e214c7557737913bf4131f88b9d569cff106c75dc7ebf0d065283792fddc189e2a3ddc322f1b2b4f38c6d313569f28395e79680060b58 SHA512 73561f9daa303c6e967f9b11952c6239dea7ff1a2fa02434354ac78fcffe7a552aa0f1043a17cb5c35a442def499eff199856cca8efa1415449cbf54f0d4913b
+DIST scipy-ref-1.6.1.pdf 34594740 BLAKE2B 905ddcd7a3d462b09ded688f0818204d7684fa18058d0dac480d0a000e9ea0b7ebcdd33c01adae17234dcdf630d4aef9078174127af46f1db55d5c14b3245346 SHA512 355f4681439c1720f45dca6badfe72d77edfca0962fd9b42df34f1cd8fff7121fa6e7f60570bb638abd3ba9693930fa46b25af862d8fc1568b508c6fdd785479
diff --git a/dev-python/scipy/scipy-1.6.2.ebuild b/dev-python/scipy/scipy-1.6.2.ebuild
new file mode 100644
index 000000000000..3b2e7a0ebe8f
--- /dev/null
+++ b/dev-python/scipy/scipy-1.6.2.ebuild
@@ -0,0 +1,155 @@
+# 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} )
+PYTHON_REQ_USE="threads(+)"
+
+inherit fortran-2 distutils-r1 flag-o-matic multiprocessing toolchain-funcs
+
+# upstream is slacking forever with doc updates
+DOC_PV=1.6.1
+DESCRIPTION="Scientific algorithms library for Python"
+HOMEPAGE="https://www.scipy.org/"
+SRC_URI="
+ mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
+ doc? (
+ https://docs.scipy.org/doc/${PN}-${DOC_PV}/${PN}-html-${DOC_PV}.zip
+ https://docs.scipy.org/doc/${PN}-${DOC_PV}/${PN}-ref-${DOC_PV}.pdf
+ )"
+
+LICENSE="BSD LGPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="doc sparse"
+
+DEPEND="
+ >=dev-python/numpy-1.16.5[lapack,${PYTHON_USEDEP}]
+ sci-libs/arpack:0=
+ virtual/cblas
+ virtual/lapack
+ sparse? ( sci-libs/umfpack:0= )"
+RDEPEND="${DEPEND}
+ dev-python/pillow[${PYTHON_USEDEP}]"
+BDEPEND="
+ dev-lang/swig
+ >=dev-python/cython-0.29.13[${PYTHON_USEDEP}]
+ dev-python/pybind11[${PYTHON_USEDEP}]
+ virtual/pkgconfig
+ doc? ( app-arch/unzip )
+ test? (
+ dev-python/nose[${PYTHON_USEDEP}]
+ )"
+
+DISTUTILS_IN_SOURCE_BUILD=1
+
+distutils_enable_tests pytest
+
+src_unpack() {
+ default
+ if use doc; then
+ unzip -qo "${DISTDIR}"/${PN}-html-${DOC_PV}.zip -d html || die
+ fi
+}
+
+pc_incdir() {
+ $(tc-getPKG_CONFIG) --cflags-only-I $@ | \
+ sed -e 's/^-I//' -e 's/[ ]*-I/:/g' -e 's/[ ]*$//' -e 's|^:||'
+}
+
+pc_libdir() {
+ $(tc-getPKG_CONFIG) --libs-only-L $@ | \
+ sed -e 's/^-L//' -e 's/[ ]*-L/:/g' -e 's/[ ]*$//' -e 's|^:||'
+}
+
+pc_libs() {
+ $(tc-getPKG_CONFIG) --libs-only-l $@ | \
+ sed -e 's/[ ]-l*\(pthread\|m\)\([ ]\|$\)//g' \
+ -e 's/^-l//' -e 's/[ ]*-l/,/g' -e 's/[ ]*$//' \
+ | tr ',' '\n' | sort -u | tr '\n' ',' | sed -e 's|,$||'
+}
+
+python_prepare_all() {
+ # scipy automatically detects libraries by default
+ export {FFTW,FFTW3,UMFPACK}=None
+ use sparse && unset UMFPACK
+ # the missing symbols are in -lpythonX.Y, but since the version can
+ # differ, we just introduce the same scaryness as on Linux/ELF
+ [[ ${CHOST} == *-darwin* ]] \
+ && append-ldflags -bundle "-undefined dynamic_lookup" \
+ || append-ldflags -shared
+ [[ -z ${FC} ]] && export FC="$(tc-getFC)"
+ # hack to force F77 to be FC until bug #278772 is fixed
+ [[ -z ${F77} ]] && export F77="$(tc-getFC)"
+ export F90="${FC}"
+ export SCIPY_FCONFIG="config_fc --noopt --noarch"
+ append-fflags -fPIC
+
+ local libdir="${EPREFIX}"/usr/$(get_libdir)
+ cat >> site.cfg <<-EOF || die
+ [blas]
+ include_dirs = $(pc_incdir cblas)
+ library_dirs = $(pc_libdir cblas blas):${libdir}
+ blas_libs = $(pc_libs cblas blas)
+ [lapack]
+ library_dirs = $(pc_libdir lapack):${libdir}
+ lapack_libs = $(pc_libs lapack)
+ EOF
+ cat >> setup.cfg <<-EOF || die
+ [options]
+ zip_safe = False
+ EOF
+
+ # Drop hashes to force rebuild of cython based .c code
+ rm cythonize.dat || die
+
+ # TODO
+ sed -e "s:== 'levy_stable':in ('levy_stable', 'crystalball', 'ncf'):" \
+ -i scipy/stats/tests/test_continuous_basic.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_configure_all() {
+ # bug 721860
+ test-flag-FC -fallow-argument-mismatch &&
+ append-fflags -fallow-argument-mismatch
+}
+
+python_compile() {
+ # FIXME: parallel python building fails, bug #614464
+ export MAKEOPTS=-j1
+
+ ${EPYTHON} tools/cythonize.py || die
+ distutils-r1_python_compile \
+ ${SCIPY_FCONFIG}
+}
+
+python_test() {
+ # fails with bdist_egg. should it be fixed in distutils-r1 eclass?
+ distutils_install_for_testing ${SCIPY_FCONFIG}
+ cd "${TEST_DIR}/lib" || die "no ${TEST_DIR} available"
+ PYTHONPATH=. "${EPYTHON}" -c "
+import scipy, sys
+r = scipy.test('fast', verbose=2)
+sys.exit(0 if r else 1)" || die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+ use doc && \
+ local DOCS=( "${DISTDIR}"/${PN}-ref-${DOC_PV}.pdf ) \
+ local HTML_DOCS=( "${WORKDIR}"/html/. )
+ distutils-r1_python_install_all
+}
+
+python_install() {
+ distutils-r1_python_install ${SCIPY_FCONFIG}
+ python_optimize
+}
+
+pkg_postinst() {
+ elog "You might want to set the variable SCIPY_PIL_IMAGE_VIEWER"
+ elog "to your prefered image viewer. Example:"
+ elog " echo \"export SCIPY_PIL_IMAGE_VIEWER=display\" >> ~/.bashrc"
+}
diff --git a/dev-python/snakeoil/Manifest b/dev-python/snakeoil/Manifest
index f6f07730eeaf..4d780c3be03d 100644
--- a/dev-python/snakeoil/Manifest
+++ b/dev-python/snakeoil/Manifest
@@ -1,3 +1,4 @@
+DIST snakeoil-0.9.2.tar.gz 271441 BLAKE2B 754030285f03c83979c74da6cf8ee585486631e2dd1410c0da4a8e4c59a0367d911af3bc82ecf9e04438e3227982af8789662022ae5dfe5e1d83863aa2ec001e SHA512 664c91236500aafc81157132c5138d14972e9b74a344fdad65064440acdca0cbbdcef63b1d3b4d09f120a14a1eb40bbc8e7801fbbf2fc3b289b615cdd6caf61e
DIST snakeoil-0.9.4.tar.gz 271395 BLAKE2B 6aeaf03e2c2f48a85ce926f1b8e0b86271c608695694358cb6eea56b962c0731b909c16bf37844031e986fc7ebca3a7c4cae5cb94ee55122584bf83981d8c4b6 SHA512 853c3fef517e7161a61ae0622fed82ceffdc110cad4ef7d5e2166728f506228d0802018dd351956f1525f0d27a4150e9885b2cc7c71788950261f72d8d7c4cc9
DIST snakeoil-0.9.5.tar.gz 266086 BLAKE2B 635d2d821e47a92a668b2e95364d6587f0f74c21438356e708d6b16ed6c027df39a28f73d261d8ae06eb32de471124cd5ba5df0fc899f59dad5f7d2363391e00 SHA512 0762d90932bdf995160b3410e224660dae2cce327cdc30d5093ca9e3d16d3e910f88e409a87d2d7da211b850f7d0b7d9c70f053462dd9a651e4202b8ca018105
DIST snakeoil-0.9.6.tar.gz 261998 BLAKE2B 1f81e633321b7b1988865092ec2778feb35338edec0eb00c9a5be505a9cf7d4cf27b140c9bc56fc42156dc33a7990e8a269d1a69df7cac92a71b56ce612b65ae SHA512 a900c76ecd5a3519bf5236567e5f9d59bca7c5f7588bdcfbf1bec0d912352486c86dfd4677b0aea19170bc9170109ca782dd60232e365008ae016cdf9ade7217
diff --git a/dev-python/snakeoil/snakeoil-0.9.2-r1.ebuild b/dev-python/snakeoil/snakeoil-0.9.2-r1.ebuild
new file mode 100644
index 000000000000..002c17f1c1e9
--- /dev/null
+++ b/dev-python/snakeoil/snakeoil-0.9.2-r1.ebuild
@@ -0,0 +1,28 @@
+# 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} )
+PYTHON_REQ_USE="threads(+)"
+inherit distutils-r1
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/pkgcore/snakeoil.git"
+ inherit git-r3
+else
+ KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ppc ppc64 s390 sparc x86 ~x64-macos"
+ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+fi
+
+DESCRIPTION="misc common functionality and useful optimizations"
+HOMEPAGE="https://github.com/pkgcore/snakeoil"
+
+LICENSE="BSD BSD-2 MIT"
+SLOT="0"
+
+RDEPEND="
+ dev-python/lazy-object-proxy[${PYTHON_USEDEP}]"
+
+[[ ${PV} == 9999 ]] && BDEPEND+=" dev-python/cython[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
diff --git a/dev-python/sqlalchemy/Manifest b/dev-python/sqlalchemy/Manifest
index 2297389173c3..77493d0cc6b3 100644
--- a/dev-python/sqlalchemy/Manifest
+++ b/dev-python/sqlalchemy/Manifest
@@ -3,7 +3,9 @@ DIST SQLAlchemy-1.3.20.tar.gz 6264898 BLAKE2B 4c386eff56c2f9ec7ef467e3bc00326295
DIST SQLAlchemy-1.3.21.tar.gz 6297278 BLAKE2B 39bd440eec25adc3ec81eaf55d2b97ecb328da4fd6e78dca17a94548a34336a8ef01a1dd0b4565794f4647d3bb4a98803873990c2e0df865216ed57fbe67ba1c SHA512 50ea60b849e6f043507728482dc1a90faea853c3fb16affe1d68197903578cb31f26b3543f4671be6aec2a705343193bfa7579e8d417e74c92ee104af4fba753
DIST SQLAlchemy-1.3.22.tar.gz 6300186 BLAKE2B 5b788ddadef0b68f440c5c7584320dd0a71d43e288febf0cb35c4683052be0f46174ac17b7c8b22ad0461f1e5f55ef5e6dbb149c49d727c3b42b49f48eb7589d SHA512 5e43af97dd93af8174f14575c8238a72153afa4dbe56503cf934de9f783ea15ad27b25523c147191bd2ec89e25baafab5f5d9c34a29f71eaf4e2de49af5bb887
DIST SQLAlchemy-1.3.23.tar.gz 6313652 BLAKE2B e87f67ee7ee70036b94e1708c1a59f58b1f8abad23aa26c74e2a9a2172bee5a6411b2be95bff0f1c6e39d3a0de0839adc6b43f4cde597a18d4cf930e4c37b11e SHA512 dcd1a0878fd58ee49691bb7e8a2571cb40cc942380a4fe0e66d3abb1723830f178e7b3944c5c2d69bd3aaff04cd2ca171bbabbe34f59f54bcf4b9ee2782f9570
+DIST SQLAlchemy-1.3.24.tar.gz 6353598 BLAKE2B 6eb92b20fa3412a1f1398e18e902e3338320973287afa4a37477ec28d47e7422a19c3a60e6290a6da7b23512c0d818a26400958d02097def778c917f098bb3db SHA512 4f5f0a23e80e1cebe541f8748a7e794e8964d986252803b3289a7cea732ad22557e00221775332e2766b6ff16ad5d9069223f441f8880ca6d0c47011f15fee5b
DIST SQLAlchemy-1.4.0.tar.gz 7440276 BLAKE2B dce64f2a5fe2b67be2a6d79680a774603005773ce93d0a03e6180b9bf7f3105a8b3bca88a2b4a3bcf15305a8271fc45a2bf22d9776ffa49c2d03c586095e7174 SHA512 03d66e96f3a1358b5e68e49ec47c3cfbd6daff86505d4dd7e9f65967f8566f1a55fa4b896dd95109e0c4dbd2684579e12c35bdeb7076d6c06af683b55736cd9e
DIST SQLAlchemy-1.4.1.tar.gz 7450731 BLAKE2B 9868347a3ccc3519fe31cfca41f318d0b0832aa301c7c91a073fd877f5c29289aa91008feb31096a62a939e70eded88ee21bfc586d09f68ebff4f48ef4e50c8e SHA512 8d2f84aa7edfec65a1f2286210c8728c39f1411da1b0cb6f60cf6345fc692646ae4f2a062b2e4b2f04fe9000678d682c939645f7affbe518821299ae129e8ea8
DIST SQLAlchemy-1.4.2.tar.gz 7464092 BLAKE2B dd4cf617a66ed4eba54e41ebaead189409e09e434bdfe8e6f71e2fd4bd9ea574acef8feb42290a3fe80f602d2de2160b075633449b0b543e44b44f0fc7c867bc SHA512 b436576d6c72d0ec285b926f5741b6bdba14fa959248be1c4bdcc8b87dfc512653e48fb2d356ab85d0e90a374c48de5311f43f4f3ce6cb64876e1316c6169423
DIST SQLAlchemy-1.4.3.tar.gz 7479656 BLAKE2B 543ba3f4655e516db82655b1b1814e06fb59e618e3a6d746749763139d9a6ce2cfa2d403cc0d48a80f7455bb4547077036973d5022f8298cfe0c95c5417df648 SHA512 cdb133b2feb480aa9d10f7e38d5c8342ceca327013a9cfea814887cc28eb544f79afc50a08d735195ad0130961429145ef0e641b17584ccb7aec6461cb9e7b15
+DIST SQLAlchemy-1.4.4.tar.gz 7486363 BLAKE2B 4472451e7e3d96c1887b3e896801f587009dc0d41d442790430407963e0e140995a18d2ff8698766245c3b884c6a4679f25d58dba5688ce18dea2ba5011e70ba SHA512 5543effc860e81e1a9c5ceca7ccd521411460ed9a950a33cd0f5c9df6a25eff2d2ef1b49b6e1b2630c2f46aeb09356a51d6152aa7de76d17d9c8aa77c89d479c
diff --git a/dev-python/sqlalchemy/sqlalchemy-1.3.24.ebuild b/dev-python/sqlalchemy/sqlalchemy-1.3.24.ebuild
new file mode 100644
index 000000000000..c8a5d3732d9e
--- /dev/null
+++ b/dev-python/sqlalchemy/sqlalchemy-1.3.24.ebuild
@@ -0,0 +1,62 @@
+# 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 )
+PYTHON_REQ_USE="sqlite?"
+
+inherit distutils-r1 multiprocessing optfeature
+
+MY_PN="SQLAlchemy"
+MY_P="${MY_PN}-${PV/_beta/b}"
+
+DESCRIPTION="Python SQL toolkit and Object Relational Mapper"
+HOMEPAGE="https://www.sqlalchemy.org/ https://pypi.org/project/SQLAlchemy/"
+SRC_URI="mirror://pypi/${MY_P:0:1}/${MY_PN}/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="examples +sqlite test"
+
+# Use pytest-xdist to speed up tests
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep sqlite)
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ # Ported part of those commits to fix failing tests:
+ # https://github.com/sqlalchemy/sqlalchemy/commit/c68f9fb87868c45fcadcc942ce4a35f10ff2f7ea
+ # https://github.com/sqlalchemy/sqlalchemy/commit/a9b068ae564e5e775e312373088545b75aeaa1b0
+ # https://github.com/sqlalchemy/sqlalchemy/commit/9e31fc74089cf565df5f275d22eb8ae5414d6e45
+ "${FILESDIR}/sqlalchemy-1.3.20-pypy3.patch"
+)
+
+distutils_enable_tests pytest
+
+python_test() {
+ # Disable tests hardcoding function call counts specific to Python versions.
+ epytest --ignore test/aaa_profiling \
+ -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")"
+}
+
+python_install_all() {
+ if use examples; then
+ docompress -x "/usr/share/doc/${PF}/examples"
+ dodoc -r examples
+ fi
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature "MySQL support" dev-python/mysqlclient dev-python/pymysql \
+ dev-python/mysql-connector-python
+ optfeature "mssql support" dev-python/pymssql
+ optfeature "postgresql support" dev-python/psycopg:2
+}
diff --git a/dev-python/sqlalchemy/sqlalchemy-1.4.4.ebuild b/dev-python/sqlalchemy/sqlalchemy-1.4.4.ebuild
new file mode 100644
index 000000000000..aa99618e929b
--- /dev/null
+++ b/dev-python/sqlalchemy/sqlalchemy-1.4.4.ebuild
@@ -0,0 +1,66 @@
+# 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 )
+PYTHON_REQ_USE="sqlite?"
+
+inherit distutils-r1 multiprocessing optfeature
+
+MY_PN="SQLAlchemy"
+MY_P="${MY_PN}-${PV/_beta/b}"
+
+DESCRIPTION="Python SQL toolkit and Object Relational Mapper"
+HOMEPAGE="https://www.sqlalchemy.org/ https://pypi.org/project/SQLAlchemy/"
+SRC_URI="mirror://pypi/${MY_P:0:1}/${MY_PN}/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="examples +sqlite test"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/importlib_metadata[${PYTHON_USEDEP}]
+ ' python3_7 pypy3)
+"
+# Use pytest-xdist to speed up tests
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep sqlite)
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # remove optional/partial dep on greenlet, greenlet is not very portable
+ sed -i -e '/greenlet/d' setup.cfg || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ # Disable tests hardcoding function call counts specific to Python versions.
+ epytest --ignore test/aaa_profiling \
+ -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")"
+}
+
+python_install_all() {
+ if use examples; then
+ docompress -x "/usr/share/doc/${PF}/examples"
+ dodoc -r examples
+ fi
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature "MySQL support" dev-python/mysqlclient dev-python/pymysql \
+ dev-python/mysql-connector-python
+ optfeature "mssql support" dev-python/pymssql
+ optfeature "postgresql support" dev-python/psycopg:2
+}
diff --git a/dev-python/wurlitzer/Manifest b/dev-python/wurlitzer/Manifest
index 123051f47963..19b28ae0e463 100644
--- a/dev-python/wurlitzer/Manifest
+++ b/dev-python/wurlitzer/Manifest
@@ -1 +1,2 @@
DIST wurlitzer-2.0.1.tar.gz 10638 BLAKE2B e5350a3920ae072f93a0043ec368766d8e190558b3e897e68b272b06d0d6ff7907f2aeecfd41a99b54804a596ad9f7d7062995a5c465724a2b87419ee801daa3 SHA512 06f67b666c2a364b5ee497fa2f0ab8640aeb2953b678e35b13e1558ab29bc5554f479731f9942d8f033275f5151bb9f86408e0f04b1120bae0f29b27649d783c
+DIST wurlitzer-2.1.0.tar.gz 8788 BLAKE2B 9a9e9696446fe31f0ff392eee011f341ee24c102e4e6bac195586b764386d1a835567560306cd3cb6e942b539a57ffa15aa9b3a20fac9224311ed7301130c84d SHA512 cc7291786b0505627129619094218f51c0679c0c3550645af3b94bdd3f10afd5fc8402d89dcb599d874a5c9e4f4966dc49a6f98a1ab0e2bb9adbc3f95d4fcc6a
diff --git a/dev-python/wurlitzer/wurlitzer-2.1.0.ebuild b/dev-python/wurlitzer/wurlitzer-2.1.0.ebuild
new file mode 100644
index 000000000000..c2999556343b
--- /dev/null
+++ b/dev-python/wurlitzer/wurlitzer-2.1.0.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} )
+
+inherit distutils-r1
+
+DESCRIPTION="Capture C-level stdout/stderr in Python"
+HOMEPAGE="
+ https://github.com/minrk/wurlitzer/
+ https://pypi.org/project/wurlitzer/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # things usually work better without typos
+ sed -i -e 's:unitest:unittest:' test.py || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ epytest test.py
+}