summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2021-05-29 13:38:27 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2021-05-29 13:38:27 +0000
commitbf3a5cadeb3170a4a07abd84c9f838133d5b889d (patch)
treed3a69c29dbe508ee68516474665075553e9d00b7 /dev-python
parent0694263eb25f4b243a0a88ac0fed6a01640de5d2 (diff)
downloadbaldeagleos-repo-bf3a5cadeb3170a4a07abd84c9f838133d5b889d.tar.gz
baldeagleos-repo-bf3a5cadeb3170a4a07abd84c9f838133d5b889d.tar.xz
baldeagleos-repo-bf3a5cadeb3170a4a07abd84c9f838133d5b889d.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.17.84.ebuild56
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.20.84.ebuild59
-rw-r--r--dev-python/dask/Manifest1
-rw-r--r--dev-python/dask/dask-2021.5.1.ebuild42
-rw-r--r--dev-python/django-otp/Manifest1
-rw-r--r--dev-python/django-otp/django-otp-1.0.6.ebuild36
-rw-r--r--dev-python/execnet/Manifest1
-rw-r--r--dev-python/execnet/execnet-1.8.1.ebuild48
-rw-r--r--dev-python/hypothesis/Manifest1
-rw-r--r--dev-python/hypothesis/hypothesis-6.13.8.ebuild62
-rw-r--r--dev-python/importlib_metadata/Manifest1
-rw-r--r--dev-python/importlib_metadata/importlib_metadata-4.3.1.ebuild42
-rw-r--r--dev-python/ipython/Manifest1
-rw-r--r--dev-python/ipython/ipython-7.24.0.ebuild139
-rw-r--r--dev-python/ntplib/Manifest1
-rw-r--r--dev-python/ntplib/ntplib-0.4.0.ebuild24
-rw-r--r--dev-python/pyatspi/pyatspi-2.38.1.ebuild2
-rw-r--r--dev-python/pygobject/pygobject-3.40.1.ebuild2
-rw-r--r--dev-python/sqlalchemy/Manifest1
-rw-r--r--dev-python/sqlalchemy/sqlalchemy-1.4.16.ebuild66
-rw-r--r--dev-python/websockets/websockets-9.1.ebuild2
23 files changed, 587 insertions, 3 deletions
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 2872157e29ec..e31b9ecdf1a6 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -5,3 +5,4 @@ DIST boto3-1.17.79.tar.gz 375101 BLAKE2B 3948499f1bab6853ea110fd025a9e9e917e3ddb
DIST boto3-1.17.80.tar.gz 375564 BLAKE2B dd10855ff88a0f24789cb389b0e10c3a6d4f98453ba37d1b76429fd9fc48bda8d9c5a578bd72230401a20973c9d6ad62be15f4ea00845d834a573fb9b20fa60a SHA512 cb6c6628faca586131b3dc8d989437e7a5f09ba5de55d7eb40e941003bb5407812ca4058a2c951d473aa1f1ea0acf48370a275191c7fb64ec0fde34793a59218
DIST boto3-1.17.82.tar.gz 376284 BLAKE2B 33520a1a80566a17b3a0665ce2520e73bab69b48db02b1ac25b6ff438a2dd68a75c08026abce6a2274e1fa40aaa7fe4f0e56ecc663672d9a6eef205df5d0baea SHA512 0ab14df312032a64746624b67dc721c45ed6cb7c3be21cceba77eb4c20a76d85bd2db22eca41f598431f6579473becc78e84075a57ab43b16561d4b58e3648a5
DIST boto3-1.17.83.tar.gz 376963 BLAKE2B 0bdcae1097a8ee4250c08fe639419ea99b83e33ea77433698ee9bafd928252e6b836c93bb83d383ff4aeacc583d2309236e80d2ebd5425e320aa2a80da295964 SHA512 c1dad3d17b0bf628ae31edda3a6eaf01fa1b820031d541f0dd4f4d56e98a1da9f868ed1c6e63ff0b6bd83cda027c540c08b41a066d3b35959294779c2113cb37
+DIST boto3-1.17.84.tar.gz 377284 BLAKE2B dbbc6b8643b720a8a5409c334e268b6de465e7db05684ff5a70d95c91e7e2feff3c3db94ad85f400ac7451e8f37537732ed416602c35bf37955d840701bf5bb4 SHA512 19d224c9bd7135d1de4da807b51f72a3366d5774dba970896388bffb1308b348b001453c0632de5eee8f03bdf0c2b8cf3e9da894e73cb16e10551e060beef5fe
diff --git a/dev-python/boto3/boto3-1.17.84.ebuild b/dev-python/boto3/boto3-1.17.84.ebuild
new file mode 100644
index 000000000000..511fc98f5fff
--- /dev/null
+++ b/dev-python/boto3/boto3-1.17.84.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 c7aa4af631f0..b0bd13423abf 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -5,3 +5,4 @@ DIST botocore-1.20.79.tar.gz 7763400 BLAKE2B b49dbc848980312b1a8f42514bc37b9bd8e
DIST botocore-1.20.80.tar.gz 7767475 BLAKE2B de8f7f6575e9e5a7f7e8ad0adeb886be77697d37a7aad1828cb69977d4914129c6c786da74447f8cb93514546c3c85f91e439ff08e6972047b9c164828850cda SHA512 7abfdec5450a24b5c576e47409cf311581bb909853b887a9770dc8cbb5aebb25cd9fde3c3a904d66bb69969e49ca00cef2fd11d2ddedef204b2d51feb89513cf
DIST botocore-1.20.82.tar.gz 7772021 BLAKE2B 09fc32ba42275afde8332287825e954bd5bb8b7f5bea00666f73baf60297bd972b2ec6525f1d6e16e22bb23e233b619fecbb666dcdededcc07a016c9763ab774 SHA512 227b7160ef9d945d00efdcdfaa60ed85d50b183fbeded816e6185b8125b32c2fa0eee9dc473f83f977c0de2139eb042f3338eea37081b37d480edd7c300b641f
DIST botocore-1.20.83.tar.gz 7786168 BLAKE2B 1bd8864da814ed502c4e0860d8c7a82c6c15d778f2aafc333ffe6e64f45398c173ad7700f9fc90a9fbf4b91f8f77b5494619bdc6e4bda1dcec6cef8d496327c2 SHA512 7ff1c73d85e02cc1f2de1de915d337369681e28ac44aba5cfb29df6bc4377f664170844ed8caeb7e50c97d127d1e9caac08fac18724046a7f1450cc7ea212b4a
+DIST botocore-1.20.84.tar.gz 7792555 BLAKE2B e9459fad976bb81541ce933666edccdbfe9910674cde9f23b264388845cb3e98cae77639a3333cb3fec00c33602af8fea82681fbd387775ff9ed47245e4d0e4f SHA512 da19ffb81c24c2e7a10c5e0647179f36ebf89c097f795cb16d723a3e0311a81e9c835b7b3795d02047d084a098507f4b6e0cc502129877e4258691a6a6ee1cee
diff --git a/dev-python/botocore/botocore-1.20.84.ebuild b/dev-python/botocore/botocore-1.20.84.ebuild
new file mode 100644
index 000000000000..ca62b7dad65f
--- /dev/null
+++ b/dev-python/botocore/botocore-1.20.84.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/dask/Manifest b/dev-python/dask/Manifest
index 74b1cae4860c..f40983ff3ed1 100644
--- a/dev-python/dask/Manifest
+++ b/dev-python/dask/Manifest
@@ -1,2 +1,3 @@
DIST dask-2021.4.1.tar.gz 3702584 BLAKE2B d6c630349f26378c1c6d15de38c112ef330bec6422664b6e5737b7a023800f1705be163cefd79cf76c1213ca6b773ee19e2dc7e3f22eb60edc23e6fd4c153e16 SHA512 55d8d3a1a3eb76ac68eed5092075301ca88ff311f6729952928fde49f90a1b9a825dc085fb38b07a0138b87a109a5913f26d683c5fd22476539f3a8f36397c32
DIST dask-2021.5.0.tar.gz 3710206 BLAKE2B d02bd280a704cf03fb403c58567be33c414171ef3ee1eed2f788cf2b3026c2aa3806c19a8e9f239c93a0eb8ab2474f14fa80b8e1057ae0db1c0ce4a68f0cedad SHA512 bfc2c870df02f1879907621cb9abdce8bf03d07fea2823acea68b220ed414ee146036b73eb50c92608140ed18566e7a53807dcc1fdf534876920467979908592
+DIST dask-2021.5.1.tar.gz 3713937 BLAKE2B 14e9043c9b762773779784b06f21355f2a384e9d13fd13cd8b7cd46d42df265045493ceb7a79c726922dae8133df5f7b3a493a389632b3d2c803caa42b141916 SHA512 e12986065e575b636fdaf5ba910dcabd21c807012f0fad49a3797d228ec47cc7a9b32fdbf567c306e274a7cc617439d0d0784ab65ebab5c6b42c21014d085209
diff --git a/dev-python/dask/dask-2021.5.1.ebuild b/dev-python/dask/dask-2021.5.1.ebuild
new file mode 100644
index 000000000000..9a86e0660c7e
--- /dev/null
+++ b/dev-python/dask/dask-2021.5.1.ebuild
@@ -0,0 +1,42 @@
+# 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="Task scheduling and blocked algorithms for parallel processing"
+HOMEPAGE="https://dask.org/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/cloudpickle-0.2.2[${PYTHON_USEDEP}]
+ >=dev-python/fsspec-0.6.0[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.15.1[${PYTHON_USEDEP}]
+ >=dev-python/pandas-0.25.0[${PYTHON_USEDEP}]
+ >=dev-python/partd-0.3.10[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/toolz-0.8.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/toolz[${PYTHON_USEDEP}]
+ test? (
+ dev-python/moto[${PYTHON_USEDEP}]
+ dev-python/numexpr[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ dev-python/scipy[${PYTHON_USEDEP}]
+ <dev-python/sqlalchemy-1.4[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ epytest -p no:flaky -m "not network"
+}
diff --git a/dev-python/django-otp/Manifest b/dev-python/django-otp/Manifest
index 291a0959abde..2964f53552b9 100644
--- a/dev-python/django-otp/Manifest
+++ b/dev-python/django-otp/Manifest
@@ -2,3 +2,4 @@ DIST django-otp-1.0.2.gh.tar.gz 66885 BLAKE2B be98b68f0aa5df25835afa28a23d25e035
DIST django-otp-1.0.3.gh.tar.gz 67007 BLAKE2B 33aed04898afb6ad3940e06436a1d2b4b9349e8fcd55acba0719084939fb9b111e0c266f4964826491f91f832c16f2e4d505486016bfad416706e3e7ef6f3f37 SHA512 7b661228377fa57812a45888e415478cee49d1e343cbc814ba8631f4c354077901ec82f79e69abd00c6bad1dffa026d3e03f4cf0809b074ae1e02ab2cf878137
DIST django-otp-1.0.4.gh.tar.gz 68976 BLAKE2B 30908c3769ca9c05c850524d8a3b155f7ac8fcfa8e69073622d83808d7b78293604f9b332e59b074a6737188ca4f53ede13d31d283588605ca17f994bf5d4e5e SHA512 7b37fbc56a708f5c26e6204fba344235c7823db66d7e3e56b74516efc8a1de4150c088ce2d94c04c10855f438b077599d361a4d2c2263e8ff2936309dc0ddb6e
DIST django-otp-1.0.5.gh.tar.gz 68677 BLAKE2B fd4fe66695faf4a75fc9cdab69241520c42c50d013121375bed2cb0f04a71def8e64588e3ac5727cfb319cb025273cb5adfd5d3b0dbab06590967c58e2b36e37 SHA512 bfdfe6d5058a6bead28a756392a76301cb821b5ea4f61dff8d376aa7732aa92bf8d709cb964d23e94ed37ec0e3ae45768f4fc4a98aaabfb2be0788bb0059f10c
+DIST django-otp-1.0.6.gh.tar.gz 69023 BLAKE2B 82534fb666e27ab654b1587160fd9fd4600d1ecb57f5b506b383c3d7b36a13d6bbff39598603c7c3bc69edc871a6a3ad1aa2531a92ea921ab07798e7e4bb1316 SHA512 ff14a786bc8b3d22c8767fa78d676951c262389dfe00def981c79894d299f393ffc86510c33866482aa246ac1643238a3de5701bb76cf56aea5e3ba0a25cbb97
diff --git a/dev-python/django-otp/django-otp-1.0.6.ebuild b/dev-python/django-otp/django-otp-1.0.6.ebuild
new file mode 100644
index 000000000000..2ae5bc1de9dd
--- /dev/null
+++ b/dev-python/django-otp/django-otp-1.0.6.ebuild
@@ -0,0 +1,36 @@
+# 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="Django framework adding two-factor authentication using one-time passwords"
+HOMEPAGE="https://github.com/django-otp/django-otp/"
+SRC_URI="
+ https://github.com/django-otp/django-otp/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/django-2.2[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep sqlite)
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ dev-python/qrcode[${PYTHON_USEDEP}]
+ ${RDEPEND}
+ )"
+
+python_test() {
+ local -x PYTHONPATH=test:${PYTHONPATH}
+ local -x DJANGO_SETTINGS_MODULE=test_project.settings
+ django-admin test -v 2 django_otp || die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/execnet/Manifest b/dev-python/execnet/Manifest
index 248028e983c6..e1ed4ffa04c8 100644
--- a/dev-python/execnet/Manifest
+++ b/dev-python/execnet/Manifest
@@ -1 +1,2 @@
DIST execnet-1.8.0.tar.gz 173765 BLAKE2B c6334a98b0e9dc7eb5e83fef05b795371edd0f85a6cbad9dc80d14f2e944204812c58419afebe5e70514f41d5ee7507b6a224a94e8cee2544607bc28ef5b175d SHA512 a0ca76002270daa5cbfa00563a51a3412008f893f755a1eb84f53e228dd61a82bdc94fe6152e30d471b4caff3059c662bb9de82100ec2c96df4d014836452698
+DIST execnet-1.8.1.tar.gz 173811 BLAKE2B 1d6277177908ccffe95973d34962856f6ef0a6d16c1e046f47a7ab0667b5e5c2867405a7a8bf36fb7be8e2fa0fd75b68375abdd9b70a1a1aaa641bdefadcd32d SHA512 183c89961b8b5db4eca5b64ff6b179f9faa19d26f04ad07740c818a471aedb02b2e7837fb7cedb6b1e4a538b0bd62cc4eff602dffe4c3c35bf826aa5a627afb2
diff --git a/dev-python/execnet/execnet-1.8.1.ebuild b/dev-python/execnet/execnet-1.8.1.ebuild
new file mode 100644
index 000000000000..b65c6da7c460
--- /dev/null
+++ b/dev-python/execnet/execnet-1.8.1.ebuild
@@ -0,0 +1,48 @@
+# 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="Rapid multi-Python deployment"
+HOMEPAGE="https://codespeak.net/execnet/
+ https://pypi.org/project/execnet/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+RDEPEND=">=dev-python/apipkg-1.4[${PYTHON_USEDEP}]"
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]"
+
+distutils_enable_sphinx doc
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ sed -i -r 's:(,[[:space:]]*|)"eventlet":: ; s:(,[[:space:]]*|)"gevent"(,|)::' \
+ testing/conftest.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local deselect=(
+ # needs python2.7 with apipkg?
+ 'testing/test_termination.py::test_close_initiating_remote_no_error[python2.7]'
+ # tries to run python2
+ testing/test_channel.py::TestStringCoerce::test_3to2
+ testing/test_gateway.py::TestStringCoerce::test_3to2
+ # does not like Gentoo defaults
+ testing/test_gateway.py::TestPopenGateway::test_dont_write_bytecode
+ # almost all tests call py2, not worth filtering for the rest
+ testing/test_serializer.py
+ )
+
+ pytest -vv ${deselect[@]/#/--deselect } ||
+ die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest
index 37a9fc3115e9..d9cbd2864a4f 100644
--- a/dev-python/hypothesis/Manifest
+++ b/dev-python/hypothesis/Manifest
@@ -5,3 +5,4 @@ DIST hypothesis-python-6.13.4.tar.gz 9130435 BLAKE2B eeb78cc647df49ea11fb0e0f4d8
DIST hypothesis-python-6.13.5.tar.gz 9131314 BLAKE2B 3de7ba681ab9c0907920ea7ad562a4434f06009a7bced47b98bf46da5d15aea35085350f4aca24fd41ba9fd14957e4de1d56092d49e757ea60a1575f59371add SHA512 06765607be1a49d92382d426105021ed9dca91c5b41674ba45f0a29ce7cb06537edf706ea7305300f9aae7d8c9b1827bcaf807e3c4aece9594a55b3c0122c622
DIST hypothesis-python-6.13.6.tar.gz 9132027 BLAKE2B 939c7b410bef3d8e38a513e55f462f72cc758b78d8c76031f382969e0a622585b6f42b35a5eb70879e8cc80ea9795c5ad2d91dd55c1d3a60035e6f8e982a46d1 SHA512 dd53352df352e12f8bb9294d4e679518eff3a4431e0ccdc7037713cc3acda6d9b3da3ad2cb7748021b3acbb1b2cfe0d76fac22de68d2a020f293073ad2ce80bd
DIST hypothesis-python-6.13.7.tar.gz 9132167 BLAKE2B a7f58630d114743a04665d245384d3b5f6a0592d03a9b7e771ceb3ad8633fdd9c437dc6fa099d9dc48225d5d113a203a62ca29f50ff76fdbeb406f2cc63f9013 SHA512 70022d90c09f9478df94986059cbb986e35cb24d3a8c19d023a5a78c9e12982e196d258149456d6d2f01646e84a5ef07714f1967c6b31b53ad5e41ab2b5375d3
+DIST hypothesis-python-6.13.8.tar.gz 9132344 BLAKE2B 8de45b42711f39fc6f08f0621ba0de5977bb10d623f08565840ce7b922a7049adf29c3f9315f4c2515229a9b7419d0671112562afe1065a156bc4685ffaa92f6 SHA512 a1fe1bdfac6694ecbbe6cd0d7e3d04766d9be812ea637c6b5755fbbaceda326300043b340558c80f082460e606742b0075a751f0f9cd8edc61fd8da947bda9f8
diff --git a/dev-python/hypothesis/hypothesis-6.13.8.ebuild b/dev-python/hypothesis/hypothesis-6.13.8.ebuild
new file mode 100644
index 000000000000..3858e9c1e208
--- /dev/null
+++ b/dev-python/hypothesis/hypothesis-6.13.8.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="threads(+),sqlite"
+
+inherit distutils-r1 multiprocessing optfeature
+
+DESCRIPTION="A library for property based testing"
+HOMEPAGE="https://github.com/HypothesisWorks/hypothesis https://pypi.org/project/hypothesis/"
+SRC_URI="https://github.com/HypothesisWorks/${PN}/archive/${PN}-python-${PV}.tar.gz"
+S="${WORKDIR}/${PN}-${PN}-python-${PV}/${PN}-python"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+IUSE="cli"
+
+RDEPEND="
+ >=dev-python/attrs-19.2.0[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2.1.0[${PYTHON_USEDEP}]
+ cli? (
+ $(python_gen_cond_dep '
+ dev-python/black[${PYTHON_USEDEP}]
+ dev-python/click[${PYTHON_USEDEP}]
+ ' python3_{7..9})
+ )
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pexpect[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ !!dev-python/pytest-describe
+ !!<dev-python/typing-3.7.4.1
+ )
+"
+
+distutils_enable_tests --install pytest
+
+python_prepare() {
+ if ! use cli || ! has "${EPYTHON}" python3_{7..9}; then
+ sed -i -e '/console_scripts/d' setup.py || die
+ fi
+}
+
+python_test() {
+ distutils_install_for_testing
+ epytest tests/cover tests/pytest tests/quality \
+ -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")"
+}
+
+pkg_postinst() {
+ optfeature "datetime support" dev-python/pytz
+ optfeature "dateutil support" dev-python/python-dateutil
+ optfeature "numpy support" dev-python/numpy
+ optfeature "django support" dev-python/django dev-python/pytz
+ optfeature "pandas support" dev-python/pandas
+ optfeature "pytest support" dev-python/pytest
+}
diff --git a/dev-python/importlib_metadata/Manifest b/dev-python/importlib_metadata/Manifest
index 9537462d0baa..ee25a531a697 100644
--- a/dev-python/importlib_metadata/Manifest
+++ b/dev-python/importlib_metadata/Manifest
@@ -1,3 +1,4 @@
DIST importlib_metadata-3.10.1.tar.gz 39980 BLAKE2B 9e7ba25618c9a530d122e43d6d56cc0386aad87accef111574b24aa53aaea51e08c422275acf4650eae2102a92de30d066a66c72c02b3a3b432ce9bd9453dacc SHA512 e028fb6abba0c7775943c346db0e733b5ba879583184c99f8413ded6314162e5dce03e10661b16392825038096fac8f6fbbea47ceac9565c60227129f3a3a48d
DIST importlib_metadata-4.0.0.tar.gz 41881 BLAKE2B cd0330e2a5959f651ef6ceee722762c3cbb034a534dab6c24523ca76d25dde4cb2c6bb06cef7e787db9a9cd83ca08a71bfd7b849db57ef4a95e461e6d887b14e SHA512 bbdf7b3f1e714c5a02babe0f9ff5eb366942e21b626d1d61839ee04040d0ed529cd299afd446639795b34665be20e6438d8e9970292b282946a8b6495682f726
DIST importlib_metadata-4.3.0.tar.gz 38461 BLAKE2B 5c8387aa618b6561910adf48a701b28556574abe0a4aacc6ae8fbecb258cd0308f637a95402a07c2452ba92daca39034a5fdaac03608e5112534c379e66aa4b9 SHA512 44e3da5207ae6900059758ab26636798fafa9d186d045096e382660083909305887e28c63c2147c940f0af5870d1781f69968c9cc992e50811b5f9b055048459
+DIST importlib_metadata-4.3.1.tar.gz 38637 BLAKE2B f9c9330fd9b63bbea3fc30ed6d3cc384f9b241f0089ca7b0b5fe1934214e9f644c3884ecfc866b9b9e6af6c0fd7d04fc5e8af83e252d2e1b0e274fcf408a7323 SHA512 2202be5f7b7f1c1fdad4c6b290da60fa5c9576c665c11f9c62012791b50ee0b6da029bbe424c9501ac1f663f4df883fbd3c6cb9179cb80491b2b350cfa2eec30
diff --git a/dev-python/importlib_metadata/importlib_metadata-4.3.1.ebuild b/dev-python/importlib_metadata/importlib_metadata-4.3.1.ebuild
new file mode 100644
index 000000000000..e67ddfddb764
--- /dev/null
+++ b/dev-python/importlib_metadata/importlib_metadata-4.3.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+# NB: this package extends beyond built-in importlib stuff in py3.8+
+# new entry_point API not yet included in cpython release
+PYTHON_COMPAT=( python3_{6,7,8,9,10} pypy3 )
+inherit distutils-r1
+
+DESCRIPTION="Read metadata from Python packages"
+HOMEPAGE="https://github.com/python/importlib_metadata"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+RDEPEND="
+ $(python_gen_cond_dep 'dev-python/typing-extensions[${PYTHON_USEDEP}]' python3_{6,7} pypy3)
+ dev-python/zipp[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/pyfakefs[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/importlib_resources[${PYTHON_USEDEP}]
+ ' pypy3 python3_{7,8})
+ )
+"
+
+distutils_enable_sphinx docs dev-python/jaraco-packaging dev-python/rst-linker
+distutils_enable_tests unittest
+
+python_prepare_all() {
+ # Skip a test that requires pep517 which is not in the tree
+ sed -e 's:test_find_local:_&:' -i tests/test_integration.py || die
+
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/ipython/Manifest b/dev-python/ipython/Manifest
index cbd1b6eaa3c2..c906b9a3ff54 100644
--- a/dev-python/ipython/Manifest
+++ b/dev-python/ipython/Manifest
@@ -1,2 +1,3 @@
DIST ipython-7.22.0.tar.gz 5143229 BLAKE2B be78fc7089d620cb9ad437ed8154b37ac8c7cd68ca18a2569cfcf7ea9af968c58eeee18c8d18a1f26459ccef73e59083ac27055c19e4df254836e484ce0a9908 SHA512 2647dcd5e0d9b6afc8d990d2c099ad7ed581b5eff6d657630929e0d0d9f8965e7c7924c51a10a797e7d7406212d7a06c941c163e6f6046aa62130049a9bbc0d0
DIST ipython-7.23.1.tar.gz 5188898 BLAKE2B 9713b0f1f75e283e53ba19044c9919f0c4d0b1c120e63d7a79ab9c6b8783499ed115e86a24cab34fc13c46245fb43865b851e6f98a2ee729ee35c3db242fa2ba SHA512 9b35626a8a07c6bd0b93552341e5a61d3d90a60c72ad6e3fc71266d9509134366c46a7ae8aeca9c3acc7509dfeab47b5144f105cb3d1d05ef1c7acca6c2f365d
+DIST ipython-7.24.0.tar.gz 5146172 BLAKE2B 9d10eea9c329c78d7698adda999d746cdb305fad71ad521bd2f856590dd1e34010adfef045633bec07f8a6705201325815bbc254c23d74f0a17d73d2c3c060fe SHA512 67f6392b5448f1526da67577e8fa84958c99b3ac71c616c78a034e5c20cd06224134da45a8c3930a3779ce98ebc983bea2f237b5be7e8ba9d6fe97fde91a0608
diff --git a/dev-python/ipython/ipython-7.24.0.ebuild b/dev-python/ipython/ipython-7.24.0.ebuild
new file mode 100644
index 000000000000..491c7fdba8e5
--- /dev/null
+++ b/dev-python/ipython/ipython-7.24.0.ebuild
@@ -0,0 +1,139 @@
+# 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} )
+PYTHON_REQ_USE='readline,sqlite,threads(+)'
+
+inherit distutils-r1 optfeature virtualx
+
+DESCRIPTION="Advanced interactive shell for Python"
+HOMEPAGE="https://ipython.org/ https://github.com/ipython/ipython/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="doc examples matplotlib notebook nbconvert qt5 +smp test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-python/backcall[${PYTHON_USEDEP}]
+ dev-python/decorator[${PYTHON_USEDEP}]
+ >=dev-python/jedi-0.16[${PYTHON_USEDEP}]
+ >=dev-python/pexpect-4.3[${PYTHON_USEDEP}]
+ dev-python/pickleshare[${PYTHON_USEDEP}]
+ >=dev-python/prompt_toolkit-2[${PYTHON_USEDEP}]
+ <dev-python/prompt_toolkit-3.1[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/traitlets[${PYTHON_USEDEP}]
+ matplotlib? (
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/matplotlib-inline[${PYTHON_USEDEP}]
+ )
+"
+
+BDEPEND="
+ test? (
+ app-text/dvipng[truetype]
+ >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/matplotlib-inline[${PYTHON_USEDEP}]
+ dev-python/nbformat[${PYTHON_USEDEP}]
+ dev-python/nose[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.17[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/testpath[${PYTHON_USEDEP}]
+ )
+ doc? (
+ >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-2[${PYTHON_USEDEP}]
+ dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests pytest
+
+RDEPEND+="
+ nbconvert? ( dev-python/nbconvert[${PYTHON_USEDEP}] )"
+PDEPEND="
+ notebook? (
+ dev-python/notebook[${PYTHON_USEDEP}]
+ dev-python/ipywidgets[${PYTHON_USEDEP}]
+ dev-python/widgetsnbextension[${PYTHON_USEDEP}]
+ )
+ qt5? ( dev-python/qtconsole[${PYTHON_USEDEP}] )
+ smp? (
+ >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}]
+ >=dev-python/ipyparallel-6.2.3[${PYTHON_USEDEP}]
+ )"
+
+PATCHES=( "${FILESDIR}"/2.1.0-substitute-files.patch )
+
+DISTUTILS_IN_SOURCE_BUILD=1
+
+python_prepare_all() {
+ # Remove out of date insource files
+ rm IPython/extensions/cythonmagic.py || die
+ rm IPython/extensions/rmagic.py || die
+
+ # Prevent un-needed download during build
+ if use doc; then
+ sed -e "/^ 'sphinx.ext.intersphinx',/d" -i docs/source/conf.py || die
+ fi
+
+ # Rename the test directory to reduce sys.path pollution
+ # https://github.com/ipython/ipython/issues/12892
+ mv IPython/extensions/{,ipython_}tests || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+ if use doc; then
+ emake -C docs html_noapi
+ HTML_DOCS=( docs/build/html/. )
+ fi
+}
+
+src_test() {
+ virtx distutils-r1_src_test
+}
+
+python_install() {
+ distutils-r1_python_install
+
+ # Create ipythonX.Y symlinks.
+ # TODO:
+ # 1. do we want them for pypy? No. pypy has no numpy
+ # 2. handle it in the eclass instead (use _python_ln_rel).
+ # With pypy not an option the dosym becomes unconditional
+ dosym ../lib/python-exec/${EPYTHON}/ipython \
+ /usr/bin/ipython${EPYTHON#python}
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
+
+pkg_postinst() {
+ optfeature "sympyprinting" dev-python/sympy
+ optfeature "cythonmagic" dev-python/cython
+ optfeature "%lprun magic command" dev-python/line_profiler
+ optfeature "%mprun magic command" dev-python/memory_profiler
+
+ if use nbconvert; then
+ if ! has_version app-text/pandoc ; then
+ einfo "Node.js will be used to convert notebooks to other formats"
+ einfo "like HTML. Support for that is still experimental. If you"
+ einfo "encounter any problems, please use app-text/pandoc instead."
+ fi
+ fi
+}
diff --git a/dev-python/ntplib/Manifest b/dev-python/ntplib/Manifest
index 4b9abac69aa7..8ee3b8ffbac1 100644
--- a/dev-python/ntplib/Manifest
+++ b/dev-python/ntplib/Manifest
@@ -1 +1,2 @@
DIST ntplib-0.3.3.tar.gz 6808 BLAKE2B 192640fd46a12e6f6829b2e252bc3d8126104a15f6186d2f5164b74d6fd8aaa715c6df7c9d2d896512d82f729f85335d81e44eb86b6a7240595c40c8927c0b7b SHA512 4175ebb78228475b32744a59ad4c404f7b88344859c19874606967c7d83a4680bbc78ff42d13b866b8e6ef939d2f1948b0a0b42819c78a8520856bae48ec907f
+DIST ntplib-0.4.0.gh.tar.gz 7315 BLAKE2B 508936a01e23dcb2ac9446f4ef6a1f8084a250cfb58e456efc25646b8fec49d3317f751fcffc9d397201d7b41c2b9d387afae2e4a75518225eacc4f3fb01c1c9 SHA512 ad735b1bccc4dc149622423b2877dc1d4b461f245dd0bd5b0cf963918ea63806772783e03eb8a66c75934746981fbd28789f19efa339c87b2f83e8218ee4a4c3
diff --git a/dev-python/ntplib/ntplib-0.4.0.ebuild b/dev-python/ntplib/ntplib-0.4.0.ebuild
new file mode 100644
index 000000000000..b9d328a03e83
--- /dev/null
+++ b/dev-python/ntplib/ntplib-0.4.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+inherit distutils-r1
+
+DESCRIPTION="Python NTP library"
+HOMEPAGE="https://pypi.org/project/ntplib/"
+SRC_URI="
+ https://github.com/cf-natali/ntplib/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# tests fail with network-sandbox
+PROPERTIES="test_network"
+RESTRICT="test"
+
+python_test() {
+ "${EPYTHON}" ./test_ntplib.py -v || die
+}
diff --git a/dev-python/pyatspi/pyatspi-2.38.1.ebuild b/dev-python/pyatspi/pyatspi-2.38.1.ebuild
index 6ba6a20a25f3..bf924b0b07d6 100644
--- a/dev-python/pyatspi/pyatspi-2.38.1.ebuild
+++ b/dev-python/pyatspi/pyatspi-2.38.1.ebuild
@@ -12,7 +12,7 @@ HOMEPAGE="https://wiki.gnome.org/Accessibility"
# Note: only some of the tests are GPL-licensed, everything else is LGPL
LICENSE="LGPL-2 GPL-2+"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 sparc ~x86"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 sparc x86"
IUSE="test"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
diff --git a/dev-python/pygobject/pygobject-3.40.1.ebuild b/dev-python/pygobject/pygobject-3.40.1.ebuild
index 7bfa9a345c6e..a9801425aaa1 100644
--- a/dev-python/pygobject/pygobject-3.40.1.ebuild
+++ b/dev-python/pygobject/pygobject-3.40.1.ebuild
@@ -12,7 +12,7 @@ HOMEPAGE="https://pygobject.readthedocs.io/"
LICENSE="LGPL-2.1+"
SLOT="3"
-KEYWORDS="~alpha ~amd64 arm ~arm64 ~hppa ~ia64 ~mips ppc ~ppc64 ~riscv ~s390 sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~mips ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="+cairo examples test"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
diff --git a/dev-python/sqlalchemy/Manifest b/dev-python/sqlalchemy/Manifest
index 0b8f7b8059f3..ee6cc113e14d 100644
--- a/dev-python/sqlalchemy/Manifest
+++ b/dev-python/sqlalchemy/Manifest
@@ -4,3 +4,4 @@ DIST SQLAlchemy-1.4.12.tar.gz 7583069 BLAKE2B a3097c53ba1c8e979c3eab712e51da3921
DIST SQLAlchemy-1.4.13.tar.gz 7589942 BLAKE2B 08e9fb6112aa71738f27dc4ce86ebe2274dd2513f39ded7211a5617ecd677f37fe31de754a24ecd519b227b141287ad86d0d0337f3d278d4c4ca5b67e2a1a79d SHA512 fb81c71922a768221f6675686fb2696b5e6d1f2e72231611e9afd20b7659193247eef4191841799fb1fe6a51304629efb6d3fba5dc298fdf70f248010bce8bb3
DIST SQLAlchemy-1.4.14.tar.gz 7599698 BLAKE2B 500a6257829244e1181b8ef5cb39fb87b62ae2d7ca054fedb580b7431b32d15c8f68600b881eb67eb97a73301660ab96793ab12094ae901782ce4eebdc8929db SHA512 2f33ab034467344ffb19aa3934148faaa4a57e4ffa5f97008d814d54149da4e15cfca14d138b9fb656227e25932ca95cf7321209c31c2706405d3916dc2fb9c0
DIST SQLAlchemy-1.4.15.tar.gz 7621840 BLAKE2B 74299b92e8ae9d6017c961c44281cc43921f8505e9b141c75cc19899f693a2276b2849daef6dbe35f0d62179354740c76adc318b6b37d551679cc8ba3c47681f SHA512 b9a640ccfb7caabb88c4891748699442073db2bea6d1e5a33eb508863616c94ddbf162b3ecd5e502daf20d798d20b8ef5b4b29ed679af9161e117a23862327c2
+DIST SQLAlchemy-1.4.16.tar.gz 7629704 BLAKE2B 46626cb38e3ec2c5b5c203a03da1a613cb5b66f2906edc54c03843b87ce8f12fbacb6fcd8b2b36584c53516de24b8c1bae041489a376472e4d2e6e2a301b707b SHA512 035c740b49356b1226ed79f188d022904d93190e5391edd350e44e63301333efcfc6c47477ce5119fdbebd49aa3e21b2764d3e4dcc6be5948428f1d8cf11c84c
diff --git a/dev-python/sqlalchemy/sqlalchemy-1.4.16.ebuild b/dev-python/sqlalchemy/sqlalchemy-1.4.16.ebuild
new file mode 100644
index 000000000000..aa99618e929b
--- /dev/null
+++ b/dev-python/sqlalchemy/sqlalchemy-1.4.16.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/websockets/websockets-9.1.ebuild b/dev-python/websockets/websockets-9.1.ebuild
index e565adbebbbc..8d4d0b27b41a 100644
--- a/dev-python/websockets/websockets-9.1.ebuild
+++ b/dev-python/websockets/websockets-9.1.ebuild
@@ -13,6 +13,6 @@ SRC_URI="https://github.com/aaugustin/${PN}/archive/${PV}.tar.gz -> ${P}-src.tar
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc x86"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc x86"
distutils_enable_tests unittest