summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2023-03-17 08:08:31 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2023-03-17 08:08:31 +0000
commitcd81b436ec4fa3eba4bc96b21fe57d0c5eeeae64 (patch)
tree33ef371a65dc371c27996d3845114662506b87c6 /dev-python
parent79a31323451038e0452003af29d2240edd194c4f (diff)
downloadbaldeagleos-repo-cd81b436ec4fa3eba4bc96b21fe57d0c5eeeae64.tar.gz
baldeagleos-repo-cd81b436ec4fa3eba4bc96b21fe57d0c5eeeae64.tar.xz
baldeagleos-repo-cd81b436ec4fa3eba4bc96b21fe57d0c5eeeae64.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/bcrypt/bcrypt-4.0.1.ebuild5
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.26.93.ebuild68
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.29.93.ebuild74
-rw-r--r--dev-python/cfn-lint/Manifest1
-rw-r--r--dev-python/cfn-lint/cfn-lint-0.75.0.ebuild55
-rw-r--r--dev-python/citeproc-py/citeproc-py-0.6.0.ebuild12
-rw-r--r--dev-python/coverage/Manifest1
-rw-r--r--dev-python/coverage/coverage-7.2.2.ebuild77
-rw-r--r--dev-python/dbfread/dbfread-2.0.7-r1.ebuild10
-rw-r--r--dev-python/enzyme/enzyme-0.4.1-r3.ebuild5
-rw-r--r--dev-python/fonttools/Manifest1
-rw-r--r--dev-python/fonttools/fonttools-4.39.2.ebuild66
-rw-r--r--dev-python/httpcore/Manifest1
-rw-r--r--dev-python/httpcore/httpcore-0.17.0.ebuild48
-rw-r--r--dev-python/hypothesis/Manifest1
-rw-r--r--dev-python/hypothesis/hypothesis-6.70.0.ebuild77
-rw-r--r--dev-python/identify/Manifest1
-rw-r--r--dev-python/identify/identify-2.5.21.ebuild29
-rw-r--r--dev-python/ipyparallel/ipyparallel-8.4.1.ebuild2
-rw-r--r--dev-python/jq/Manifest1
-rw-r--r--dev-python/jq/jq-1.4.1.ebuild37
-rw-r--r--dev-python/jupyter-lsp/jupyter-lsp-1.5.1.ebuild2
-rw-r--r--dev-python/jupyter-server-fileid/jupyter-server-fileid-0.8.0.ebuild2
-rw-r--r--dev-python/jupyter-server-proxy/jupyter-server-proxy-3.2.2.ebuild2
-rw-r--r--dev-python/jupyter-server-terminals/jupyter-server-terminals-0.4.4.ebuild2
-rw-r--r--dev-python/jupyter-server/Manifest (renamed from dev-python/jupyter_server/Manifest)0
-rw-r--r--dev-python/jupyter-server/files/jupyter-server-2.0.1-skip-npm.patch (renamed from dev-python/jupyter_server/files/jupyter_server-2.0.1-skip-npm.patch)0
-rw-r--r--dev-python/jupyter-server/jupyter-server-2.4.0.ebuild (renamed from dev-python/jupyter_server/jupyter_server-2.4.0.ebuild)0
-rw-r--r--dev-python/jupyter-server/metadata.xml (renamed from dev-python/jupyter_server/metadata.xml)4
-rw-r--r--dev-python/jupyter/jupyter-1.0.0-r4.ebuild10
-rw-r--r--dev-python/jupyter_core/Manifest1
-rw-r--r--dev-python/jupyter_core/jupyter_core-5.3.0.ebuild38
-rw-r--r--dev-python/jupyter_server_mathjax/jupyter_server_mathjax-0.2.6.ebuild2
-rw-r--r--dev-python/jupyterlab-server/jupyterlab-server-2.20.0.ebuild6
-rw-r--r--dev-python/jupyterlab/jupyterlab-3.5.3.ebuild2
-rw-r--r--dev-python/jupyterlab/jupyterlab-3.6.1-r1.ebuild2
-rw-r--r--dev-python/nbclassic/nbclassic-0.5.1.ebuild2
-rw-r--r--dev-python/nbdime/metadata.xml5
-rw-r--r--dev-python/nbdime/nbdime-3.1.1-r2.ebuild2
-rw-r--r--dev-python/notebook_shim/notebook_shim-0.2.2-r1.ebuild4
-rw-r--r--dev-python/psutil/psutil-5.9.4.ebuild5
-rw-r--r--dev-python/pyacoustid/pyacoustid-1.2.2-r1.ebuild5
-rw-r--r--dev-python/pybind11/Manifest1
-rw-r--r--dev-python/pybind11/pybind11-2.10.4.ebuild68
-rw-r--r--dev-python/pytest_jupyter/pytest_jupyter-0.6.2.ebuild2
-rw-r--r--dev-python/python-engineio/Manifest1
-rw-r--r--dev-python/python-engineio/python-engineio-4.4.0.ebuild53
-rw-r--r--dev-python/rdflib/Manifest1
-rw-r--r--dev-python/rdflib/rdflib-6.3.0.ebuild84
-rw-r--r--dev-python/reportlab/reportlab-3.6.12.ebuild5
-rw-r--r--dev-python/sentry-sdk/Manifest1
-rw-r--r--dev-python/sentry-sdk/sentry-sdk-1.17.0.ebuild106
-rw-r--r--dev-python/sgmllib3k/sgmllib3k-1.0.0-r1.ebuild5
-rw-r--r--dev-python/uvicorn/Manifest1
-rw-r--r--dev-python/uvicorn/uvicorn-0.21.1.ebuild79
57 files changed, 1022 insertions, 55 deletions
diff --git a/dev-python/bcrypt/bcrypt-4.0.1.ebuild b/dev-python/bcrypt/bcrypt-4.0.1.ebuild
index fae9592f87a2..b26fb56efd09 100644
--- a/dev-python/bcrypt/bcrypt-4.0.1.ebuild
+++ b/dev-python/bcrypt/bcrypt-4.0.1.ebuild
@@ -58,15 +58,14 @@ CRATES="
zeroize-1.5.7
"
-inherit cargo distutils-r1
+inherit cargo distutils-r1 pypi
DESCRIPTION="Modern password hashing for software and servers"
HOMEPAGE="
https://github.com/pyca/bcrypt/
https://pypi.org/project/bcrypt/
"
-SRC_URI="
- mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
+SRC_URI+="
$(cargo_crate_uris)
"
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index bcec4096b974..8f5411c225be 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -9,3 +9,4 @@ DIST boto3-1.26.89.gh.tar.gz 615718 BLAKE2B 3257e6efafaf139daf935385c252c10929be
DIST boto3-1.26.90.gh.tar.gz 616132 BLAKE2B 1c6fb20ca08c75fce5bc192cd49c8540fb5a702790f5abcdcafd4ee803e4967e55c97a99214cfae57701e6f808501d48e3bf3b5c73e1737ca3f3909af2522d4d SHA512 da438af104c3362e366785da71b9892f45b2238d280c0c39df27572afc076d4535e73fe58aa7cc7fb565b92ed8423938ddb0f16e3a5ed641231e5efadb1bf0b5
DIST boto3-1.26.91.gh.tar.gz 616798 BLAKE2B 51e61db07beeb39d8fc4be88818a13e259bc71fe25d1a52df10f7ffb364ca5d42509f4cda526fa1eb41e97bb6db1a453ab8865d8032b279523c3a994ca28bb7a SHA512 e1bde413d836ae5e3332e84a73c2f687b0d6800dcaed16ef24354f95a5e39995aeeeba3ca4a82158a7752e1cfd61fb6e39c301d9156b94e021ec0794463d1f90
DIST boto3-1.26.92.gh.tar.gz 617090 BLAKE2B ce559b42c3d1e0d0d79444d7c86e9b6451c9419625bc54ffe816c662df886169e086f2389acfa3e9c634c292eda186758e14df492deb06d09e077e750c350150 SHA512 8ec2b0f5d9b605d9e62ccaad442b6caeef6d0ba1f8b65e5276c96d9624e14e934391cce83619f68dc57c8c46b41d187521fe30aae19b6159dc69888a26ead10f
+DIST boto3-1.26.93.gh.tar.gz 617542 BLAKE2B 08f045cdac7c977d9a575ca7f487314baf6f358e82b13ff3a2063d85ed23aa98c38445d444ce78730b01381fe04eb5bd5909868a5e01a529d2028c065294714b SHA512 9af0dad9189030bbd310b634af80b731799166d89c561d640308ae913c1f81f0ce50e1a0c303bff974006281be03125e454495936cca30db3cf33a4d95d66783
diff --git a/dev-python/boto3/boto3-1.26.93.ebuild b/dev-python/boto3/boto3-1.26.93.ebuild
new file mode 100644
index 000000000000..9523f65d5fb9
--- /dev/null
+++ b/dev-python/boto3/boto3-1.26.93.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1 multiprocessing
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="
+ https://github.com/boto/boto3/
+ https://pypi.org/project/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/boto3/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ "
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~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.6.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_sphinx docs/source \
+ 'dev-python/guzzle_sphinx_theme'
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # don't lock versions to narrow ranges
+ sed -e '/botocore/ d' \
+ -e '/jmespath/ d' \
+ -e '/s3transfer/ d' \
+ -i setup.py || die
+
+ # do not rely on bundled deps in botocore (sic!)
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ epytest tests/{functional,unit} -n "$(makeopts_jobs)"
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index 3fa14db1bec9..83b5ffd8813c 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -9,3 +9,4 @@ DIST botocore-1.29.89.gh.tar.gz 11227280 BLAKE2B 41a1243972e591ea23fb2eebaa5b5fb
DIST botocore-1.29.90.gh.tar.gz 11234660 BLAKE2B 9472b843e9a36b59ffb8171a5148d07736690fef62a88a1853011b0fc6cfabe8588ea1e48b66696f1f9a5ade17c53261349249d20b704d91c1b8e0aac3528b12 SHA512 cdf20dbdac7146f2fb19ac8adce2d4b6605241cbfcbf15b5df7d7b8ccf1cf95f04e683de8bfc71322f2bdc467a15ada3502b19c43f0e5d1bd5c1a07996a1e731
DIST botocore-1.29.91.gh.tar.gz 11238226 BLAKE2B b2bf854f37cc05f1c3bd873691bc0968f7bd2d7374479ce8b72ecbf168a7ba503b8e871212a8dd802e52a28f4913d70f2bfc42c19ebeff838466d7d5702640db SHA512 a1108a45f262716b955c7674e5098324727bcd17b130deed6cb7c88451a92f302272c55c767e7c1c6947be8f77eccece3eccc2ffb7d9da2f6649e21e87d9e5c6
DIST botocore-1.29.92.gh.tar.gz 11238265 BLAKE2B 42afd2517fe251ba5d7f0d948fb7892d90809cc289681f47bceab76b6a29b10425e7e7967e9c2b267166f6cae949dfd3f4ac98824b843ea23d37fd6ff6f363ca SHA512 eb8b7e6daa759fecf387b3ca04acb43aa11fb3a614edaed4d4e55361d2270220bb3c30f06fdc736a3ee57c52cf07afb97471221ab2a2c9205c3033969b7673a6
+DIST botocore-1.29.93.gh.tar.gz 11239506 BLAKE2B 7a05d5c611cbeda21e62abbbe13ab18cceae2d8b28136fc8669b09e3ebdcad5e5e352b32e807af7f2f038b6d045f82cf1a9cb3ec854f37db1f3204725fd8971e SHA512 df4ba05c28323321eae25412b97eb9f48978563aad5a0c166515bac3193b0404ebe111565be3b1e42ea47439f749e339ce11cc21736d5403ffbbe689f6fd8da8
diff --git a/dev-python/botocore/botocore-1.29.93.ebuild b/dev-python/botocore/botocore-1.29.93.ebuild
new file mode 100644
index 000000000000..0f4daaa48e81
--- /dev/null
+++ b/dev-python/botocore/botocore-1.29.93.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1 multiprocessing
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="
+ https://github.com/boto/botocore/
+ https://pypi.org/project/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="
+ https://github.com/boto/botocore/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ "
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+
+RDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+ <dev-python/jmespath-2[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_sphinx docs/source \
+ 'dev-python/guzzle_sphinx_theme'
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin deps
+ sed -i -e "s:>=.*':':" setup.py || die
+
+ # unbundle deps
+ rm -r botocore/vendored || die
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # rely on bundled six
+ tests/functional/test_six_imports.py::test_no_bare_six_imports
+ tests/functional/test_six_threading.py::test_six_thread_safety
+ # fails on unrelated warnings
+ tests/unit/test_client.py::TestAutoGeneratedClient::test_BOTO_DISABLE_COMMONNAME
+ tests/unit/test_client.py::TestClientErrors::test_BOTO_DISABLE_COMMONNAME
+ # TODO
+ tests/functional/test_credentials.py::SSOSessionTest::test_token_chosen_from_provider
+ )
+
+ epytest tests/{functional,unit} -n "$(makeopts_jobs)"
+}
diff --git a/dev-python/cfn-lint/Manifest b/dev-python/cfn-lint/Manifest
index b8e752ae3b98..8b7f31feca95 100644
--- a/dev-python/cfn-lint/Manifest
+++ b/dev-python/cfn-lint/Manifest
@@ -3,3 +3,4 @@ DIST cfn-lint-0.74.0.gh.tar.gz 3633749 BLAKE2B 68ba32c66a6cc4ddf1260523679565e70
DIST cfn-lint-0.74.1.gh.tar.gz 3465800 BLAKE2B eb142f07f8a49fe52d7263ecbd359f6c31d89b8895ce97a816dfe2fd14fec4f82a8da708e0ed43734ae8c5184ba718da32dd517dae3068aac7ee8deeff230fbb SHA512 5b792919553292f40018d968bdb5049e07d95f7ee9e40dded439ed6ef3ab778b64d3b964d075e60c7b513f221e0e5b49fa0daa3a20135b765cdbfe3c495d2fc2
DIST cfn-lint-0.74.2.gh.tar.gz 3455745 BLAKE2B 0ca6f9d6e13264180ae2948858acdc3deab0135bfa7ddd16711b49cf7cce651257c7ba26ae155bec091d69aecc33903bd4098f23207aec5d7d414b5b826c7ccf SHA512 9aa918232214f5f0e165bcf8b4e3e7c5aaad1703825befc5347000f7ad143630220fdf9369015d449be4abf593380510b405d04dfe27d6615602c4a725b06681
DIST cfn-lint-0.74.3.gh.tar.gz 3456672 BLAKE2B 9cc68ddefda86ee26e900989e40c7ded067fecb35cf077d559ebcacd6838378028010630e340dd52f04750dcc12094fb800e8e48a4c9e0607645463d3ca55827 SHA512 aad2209fa16f717d20127b2cf47d9aba586b85ccd41caf3ad8a50a6894cc3402d929be4cf9f76530223a3d69d79d843ef0edf802e53984b5c34563cf766f8189
+DIST cfn-lint-0.75.0.gh.tar.gz 3457050 BLAKE2B 440b7e03cfc40bbea6a7a6f55c7bed854e73f4d2a7f7ff05e11dfa88d4824f17f488517cf735bc453076e1d77f13c110183dc44a39ebd539609d7aae2a2553af SHA512 9ee87ccaef5b39abdb14814eec3516ae94e532df53de3d3930540ec9ec474e0291971fa7a4a40ca70fe4b1a943a32c12d867e23ce97c7aa0e585bfe49ec03055
diff --git a/dev-python/cfn-lint/cfn-lint-0.75.0.ebuild b/dev-python/cfn-lint/cfn-lint-0.75.0.ebuild
new file mode 100644
index 000000000000..8354055752aa
--- /dev/null
+++ b/dev-python/cfn-lint/cfn-lint-0.75.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1
+
+DESCRIPTION="CloudFormation Linter"
+HOMEPAGE="
+ https://github.com/aws-cloudformation/cfn-lint/
+ https://pypi.org/project/cfn-lint/
+"
+# pypi sdist is missing tests, as of 0.74.3
+# https://github.com/aws-cloudformation/cfn-lint/pull/2630
+SRC_URI="
+ https://github.com/aws-cloudformation/cfn-lint/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/aws-sam-translator-1.60.1[${PYTHON_USEDEP}]
+ dev-python/jsonpatch[${PYTHON_USEDEP}]
+ >=dev-python/jschema_to_python-1.2.3[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.0[${PYTHON_USEDEP}]
+ dev-python/junit-xml[${PYTHON_USEDEP}]
+ <dev-python/networkx-4[${PYTHON_USEDEP}]
+ >dev-python/pyyaml-5.4[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.15.0[${PYTHON_USEDEP}]
+ >=dev-python/sarif_om-1.0.4[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # TODO
+ test/unit/module/test_template.py::TestTemplate::test_build_graph
+ # requires git repo
+ test/unit/module/maintenance/test_update_documentation.py::TestUpdateDocumentation::test_update_docs
+ # Internet
+ test/unit/module/formatters/test_formatters.py::TestFormatters::test_sarif_formatter
+ test/unit/module/maintenance/test_update_resource_specs.py::TestUpdateResourceSpecs::test_update_resource_specs_python_3
+)
+
+src_prepare() {
+ # unpin the deps
+ sed -e 's:~=[0-9.]*::' -i setup.py || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/citeproc-py/citeproc-py-0.6.0.ebuild b/dev-python/citeproc-py/citeproc-py-0.6.0.ebuild
index 9a16079a3330..48677852aca8 100644
--- a/dev-python/citeproc-py/citeproc-py-0.6.0.ebuild
+++ b/dev-python/citeproc-py/citeproc-py-0.6.0.ebuild
@@ -3,20 +3,22 @@
EAPI=8
+PYPI_NO_NORMALIZE=1
PYTHON_COMPAT=( python3_{7,8,9,10,11} )
# Keep synced with tests/citeproc-test.py
TEST_SUITE_COMMIT="c3db429ab7c6b9b9ccaaa6d3c6bb9e503f0d7b11"
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="Yet another Python CSL Processor"
HOMEPAGE="https://pypi.org/project/citeproc-py/"
-SRC_URI="
- mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
+SRC_URI+="
test? (
- https://github.com/citation-style-language/test-suite/archive/${TEST_SUITE_COMMIT}.tar.gz -> ${PN}-test-suite-${TEST_SUITE_COMMIT}.tar.gz
- )"
+ https://github.com/citation-style-language/test-suite/archive/${TEST_SUITE_COMMIT}.tar.gz
+ -> ${PN}-test-suite-${TEST_SUITE_COMMIT}.tar.gz
+ )
+"
LICENSE="BSD-2"
SLOT="0"
diff --git a/dev-python/coverage/Manifest b/dev-python/coverage/Manifest
index 10cb3d3074a6..f96bc5a40bcd 100644
--- a/dev-python/coverage/Manifest
+++ b/dev-python/coverage/Manifest
@@ -1,2 +1,3 @@
DIST coverage-7.1.0.tar.gz 809785 BLAKE2B 3720aee79ecfdd6aa652b5198bad4d6b5827a85f1d58986eec51bab1e72800dac28eb0ebbeb15d547ef03694ca1397bec47c37a9233dc34b2d3d2a6a22a48274 SHA512 80920b337391e47f1e631ba8a892792b6d2c72e753ddf403222c6ad527637699889f29cfee40721949e5eeb6e7977f319635c44d79f58e7e19676d1165dfdde2
DIST coverage-7.2.1.tar.gz 812219 BLAKE2B bb6b482990b0620d7e264244a9e31ee44b37fe83436c1d7d016d20e36d9ecbea85a614a4142683757bb1284bfbe2a157fc4748b01c76b5495c5eca5834e9a848 SHA512 40a7f1d25c7100b8f2f4ba1f877c241f65e1f560cdad861dab05254a4e177de37615888441d47a6c2ebc525ad2b52b476da7111efe5583708f094dd3a1b39984
+DIST coverage-7.2.2.tar.gz 812407 BLAKE2B 901ed01eb8411e01c3386dcecccf975f4ac0e46c14fd2c6086bcf83647ff7e26deccb3926f173a207ef2851c0f8c5f99874659a1ba2e16f85b6eb9a1ac23142c SHA512 7d2ba6540ca42c3a72b65343348a64c58156bac915434249fd8740a6727ebf034590f62a5557f6b2f76e67ed1adc2a153ce61eee71f3bc903538c440e080e3e7
diff --git a/dev-python/coverage/coverage-7.2.2.ebuild b/dev-python/coverage/coverage-7.2.2.ebuild
new file mode 100644
index 000000000000..8c640e8c1553
--- /dev/null
+++ b/dev-python/coverage/coverage-7.2.2.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
+PYTHON_REQ_USE="threads(+),sqlite(+)"
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Code coverage measurement for Python"
+HOMEPAGE="
+ https://coverage.readthedocs.io/en/latest/
+ https://github.com/nedbat/coveragepy/
+ https://pypi.org/project/coverage/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/tomli[${PYTHON_USEDEP}]
+ ' 3.{8..10})
+"
+BDEPEND="
+ test? (
+ dev-python/flaky[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ >=dev-python/unittest-mixins-1.4[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -i -e '/^addopts/s:-q -n auto::' setup.cfg || die
+ distutils-r1_src_prepare
+}
+
+test_tracer() {
+ local -x COVERAGE_TEST_TRACER=${1}
+ einfo " Testing with the ${COVERAGE_TEST_TRACER} tracer ..."
+ epytest tests
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # pip these days insists on fetching build deps from Internet
+ tests/test_venv.py
+ )
+
+ "${EPYTHON}" igor.py zip_mods || die
+
+ local -x COVERAGE_TESTING=True
+ # TODO: figure out why they can't be imported inside test env
+ local -x COVERAGE_NO_CONTRACTS=1
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=_hypothesis_pytestplugin,flaky.flaky_pytest_plugin,xdist.plugin
+
+ local prev_opt=$(shopt -p nullglob)
+ shopt -s nullglob
+ local c_ext=( "${BUILD_DIR}/install$(python_get_sitedir)"/coverage/*.so )
+ ${prev_opt}
+
+ if [[ -n ${c_ext} ]]; then
+ cp "${c_ext}" \
+ coverage/ || die
+ test_tracer c
+ rm coverage/*.so || die
+ else
+ test_tracer py
+ fi
+}
diff --git a/dev-python/dbfread/dbfread-2.0.7-r1.ebuild b/dev-python/dbfread/dbfread-2.0.7-r1.ebuild
index c0dee56dfe92..c9a1f81e3389 100644
--- a/dev-python/dbfread/dbfread-2.0.7-r1.ebuild
+++ b/dev-python/dbfread/dbfread-2.0.7-r1.ebuild
@@ -6,12 +6,16 @@ EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{7,8,9,10,11} )
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="Read DBF Files with Python"
HOMEPAGE="https://github.com/olemb/dbfread https://pypi.org/project/dbfread/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
- test? ( https://github.com/olemb/dbfread/archive/refs/tags/${PV}.tar.gz -> ${P}-src.tar.gz )"
+SRC_URI+="
+ test? (
+ https://github.com/olemb/dbfread/archive/refs/tags/${PV}.tar.gz
+ -> ${P}-src.tar.gz
+ )
+"
LICENSE="MIT"
SLOT="0"
diff --git a/dev-python/enzyme/enzyme-0.4.1-r3.ebuild b/dev-python/enzyme/enzyme-0.4.1-r3.ebuild
index 4f6536f75e4f..6ba21230bd3e 100644
--- a/dev-python/enzyme/enzyme-0.4.1-r3.ebuild
+++ b/dev-python/enzyme/enzyme-0.4.1-r3.ebuild
@@ -7,12 +7,11 @@ DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{7,8,9,10,11} )
PYTHON_REQ_USE='xml(+)'
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="Python video metadata parser"
HOMEPAGE="https://github.com/Diaoul/enzyme https://pypi.org/project/enzyme/"
-SRC_URI="
- mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
+SRC_URI+="
test? ( mirror://sourceforge/matroska/test_files/matroska_test_w1_1.zip )
"
diff --git a/dev-python/fonttools/Manifest b/dev-python/fonttools/Manifest
index 946a4d399caf..14fb6b0fc8e3 100644
--- a/dev-python/fonttools/Manifest
+++ b/dev-python/fonttools/Manifest
@@ -1,2 +1,3 @@
DIST fonttools-4.38.0.gh.tar.gz 3603281 BLAKE2B 8ec558c35cc10b32760eb199dce7c40934210db9ba8c9b0ad7a8cd2ca206260d2d73769bd1ff4cb597dd46cd50a42d733c967199120366e22abc5ee2b81e0919 SHA512 438694e7a4c19ee63ab504763793c0219d96fdc58095fe55a4f44726e96a3ec8ae63066aa47a341a059c7a2c9893b9bbbdfc8ab4d75c177cbd90986debc31431
DIST fonttools-4.39.0.gh.tar.gz 3673934 BLAKE2B 468f8798b06593f69b4130f06d52134b9c86a414ba534a352e15bb16d787e11a6b692d406e545aa137d5d132aa33684f44e98a520ce13fe6c8e4dcf81fc64e69 SHA512 f9613651082ae8fb0dd3fba66549f90001d8cb3c71785f9e5b692513984d26d63d027dfb67e1dbe1a22c6e8c393e6ed21af1bfcd5b2f766c8534577cbd211616
+DIST fonttools-4.39.2.gh.tar.gz 3694973 BLAKE2B 1a752fe62f5f2e1092e8df8f16a6a9cbb0a6f121bab1d910a2db9bc8a404f749d746aa85b82fd51d3fc1e0aa225b0515d0c3a7d0d25860a7d09afdab8c878c0e SHA512 27d892e2949355ed7762ad969e9fcb950029a82e63cba10e99b5dfc209ab055b46942de740d0ec1dda6bb2461f64565d6a4678c4d89a4d4fe3f37221a863d69e
diff --git a/dev-python/fonttools/fonttools-4.39.2.ebuild b/dev-python/fonttools/fonttools-4.39.2.ebuild
new file mode 100644
index 000000000000..23353db9bf05
--- /dev/null
+++ b/dev-python/fonttools/fonttools-4.39.2.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10,11} )
+PYTHON_REQ_USE="xml(+)"
+
+inherit distutils-r1 virtualx
+
+DESCRIPTION="Library for manipulating TrueType, OpenType, AFM and Type1 fonts"
+HOMEPAGE="
+ https://github.com/fonttools/fonttools/
+ https://pypi.org/project/fonttools/
+"
+SRC_URI="
+ https://github.com/fonttools/fonttools/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+RDEPEND="
+ >=dev-python/fs-2.4.9[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+ test? (
+ app-arch/brotli[python,${PYTHON_USEDEP}]
+ app-arch/zopfli
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # When dev-python/pytest-shutil is installed, we get weird import errors.
+ # This is due to incomplete nesting in the Tests/ tree:
+ #
+ # Tests/feaLib/__init__.py
+ # Tests/ufoLib/__init__.py
+ # Tests/svgLib/path/__init__.py
+ # Tests/otlLib/__init__.py
+ # Tests/varLib/__init__.py
+ #
+ # This tree requires an __init__.py in Tests/svgLib/ too, bug #701148.
+ touch Tests/svgLib/__init__.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+src_configure() {
+ export FONTTOOLS_WITH_CYTHON=1
+}
+
+src_test() {
+ # virtualx used when matplotlib is installed causing plot module tests to run
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ epytest Tests fontTools || die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/httpcore/Manifest b/dev-python/httpcore/Manifest
index 8de6d298cf02..bf20db5dbc27 100644
--- a/dev-python/httpcore/Manifest
+++ b/dev-python/httpcore/Manifest
@@ -1 +1,2 @@
DIST httpcore-0.16.3.gh.tar.gz 79132 BLAKE2B c06d55ce1390085db6c15d3e96160cfb037a935d1298304856defd1778783ad1954924a48653ce165dae9cde18abec157aa72865f57e97d91a564d1b823c863c SHA512 d889da0a3fee4f190ecc3981b8af34fa9b285d00f4ad92158a085c65f3ad8fa5a97a8c711bd51f8b9518b9d2c90ecd457dee1a3d7bbf853715473f4707cc421a
+DIST httpcore-0.17.0.gh.tar.gz 82103 BLAKE2B a12d2843cd19f98d86868802fbb5af37f7223e6cbdb64ec4a36bda93237543d940cc7e71647ffbee67de57b46900a9496f2d3019d9bf0ac4cb74f5d13232708d SHA512 4bec9830df75b35a470e745955058e86cb4cc59c0eacef8d67d76be91c9297009f9af2bf745bf553607a60ff5fd2eaee5b8a497bb8b48ba3daffa08e80188ef4
diff --git a/dev-python/httpcore/httpcore-0.17.0.ebuild b/dev-python/httpcore/httpcore-0.17.0.ebuild
new file mode 100644
index 000000000000..98686208df69
--- /dev/null
+++ b/dev-python/httpcore/httpcore-0.17.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="A minimal low-level HTTP client"
+HOMEPAGE="
+ https://www.encode.io/httpcore/
+ https://github.com/encode/httpcore/
+ https://pypi.org/project/httpcore/
+"
+SRC_URI="
+ https://github.com/encode/httpcore/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ <dev-python/anyio-5[${PYTHON_USEDEP}]
+ dev-python/certifi[${PYTHON_USEDEP}]
+ <dev-python/h11-0.15[${PYTHON_USEDEP}]
+ <dev-python/h2-5[${PYTHON_USEDEP}]
+ =dev-python/sniffio-1*[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-httpbin[${PYTHON_USEDEP}]
+ dev-python/pytest-trio[${PYTHON_USEDEP}]
+ dev-python/socksio[${PYTHON_USEDEP}]
+ dev-python/trio[${PYTHON_USEDEP}]
+ dev-python/trustme[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+pkg_postinst() {
+ optfeature "SOCKS support" dev-python/socksio
+}
diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest
index 0e59f80bdb70..9952a8380e9e 100644
--- a/dev-python/hypothesis/Manifest
+++ b/dev-python/hypothesis/Manifest
@@ -2,3 +2,4 @@ DIST hypothesis-6.68.0.gh.tar.gz 9350032 BLAKE2B c122455b7f941eaba8b37b7c4bd4760
DIST hypothesis-6.68.1.gh.tar.gz 9350091 BLAKE2B 5d6d6912b20d3badca440b668838f456239653c393d8f148ba5dd16227e078586167f0d7ff0adbdca0efe2a81ff27e0307d97b63492658dc28c9abd7c7691551 SHA512 6dbaefa411f7945081158b7d730dc1893dfe02ec4b45f7bdd645f6f2198d39b3f4313d1e18dbe9a82d13e36df5bc541f1b31539128f9de5480b82b916bd74c0c
DIST hypothesis-6.68.2.gh.tar.gz 9350253 BLAKE2B 5f98aac845a2f4e1dd9f54809d3e7e1b201bdecdec1c5c9cff10a37851af7d8d9e8cb643c1a9b0545672862b3639a17aed5f4197653d48d3114edd0105668307 SHA512 c3507f99376af924e375c51e0d56d4e444204d2ebe147d813a3f33a69594f83493c499714567b127556ea620df7bde58f4a1ba662bb182907e5e0d14cf13ee81
DIST hypothesis-6.69.0.gh.tar.gz 9350681 BLAKE2B e28bca5be08809d7f10723186957ab72a650d93403fc0c5ed91b329ca3c68b084a69aba093e8dc7fdc742316287dc585b7b8794403e0b3fa29adfc7bf2d76ee7 SHA512 b6a263a10f78841706f6fa58a237f2f1e7ef5efd4d859e0fb79bae0ad3eff86774bc0cb7bb581af89605f80514a08386b5f501a6154bcc5ae1f56e7eb2ba61b4
+DIST hypothesis-6.70.0.gh.tar.gz 9351669 BLAKE2B 04e6739a1e6cf5907486c5fc6e09d17996831fe7967df4a24e6fb3c3ab992ef0c1ade9f250a1776eed4d6880893db1e8f284df60465a81a9f14f4aa64b0b0fc9 SHA512 6fb15addd86f8737b5a99a5c4ae5f2899133772e25426cc8a9bd086ddc0246b8fd323a10213df45d5b13c0740df19597a2b7ee7566611d5d01e6897954ac0f4c
diff --git a/dev-python/hypothesis/hypothesis-6.70.0.ebuild b/dev-python/hypothesis/hypothesis-6.70.0.ebuild
new file mode 100644
index 000000000000..c1f03337fcd2
--- /dev/null
+++ b/dev-python/hypothesis/hypothesis-6.70.0.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+CLI_COMPAT=( python3_{9..10} )
+PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
+PYTHON_REQ_USE="threads(+),sqlite"
+
+inherit distutils-r1 multiprocessing optfeature
+
+TAG=hypothesis-python-${PV}
+MY_P=hypothesis-${TAG}
+DESCRIPTION="A library for property based testing"
+HOMEPAGE="
+ https://github.com/HypothesisWorks/hypothesis/
+ https://pypi.org/project/hypothesis/
+"
+SRC_URI="
+ https://github.com/HypothesisWorks/hypothesis/archive/${TAG}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S="${WORKDIR}/${MY_P}/hypothesis-python"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="cli"
+
+RDEPEND="
+ >=dev-python/attrs-19.2.0[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2.1.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/exceptiongroup-1.0.0_rc8[${PYTHON_USEDEP}]
+ ' 3.8 3.9 3.10)
+ cli? (
+ $(python_gen_cond_dep '
+ dev-python/black[${PYTHON_USEDEP}]
+ dev-python/click[${PYTHON_USEDEP}]
+ ' "${CLI_COMPAT[@]}")
+ )
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pexpect[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ !!<dev-python/requests-toolbelt-0.10.1
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ # subtests are broken by warnings from random plugins
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=xdist.plugin,pytest_forked,_hypothesis_pytestplugin
+
+ epytest tests/cover tests/pytest tests/quality -n "$(makeopts_jobs)"
+}
+
+python_install() {
+ distutils-r1_python_install
+ if ! use cli || ! has "${EPYTHON}" "${CLI_COMPAT[@]/_/.}"; then
+ rm -r "${ED}/usr/bin" "${D}$(python_get_scriptdir)" || die
+ fi
+}
+
+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/identify/Manifest b/dev-python/identify/Manifest
index b7575fb36df1..3e15af0b0e58 100644
--- a/dev-python/identify/Manifest
+++ b/dev-python/identify/Manifest
@@ -2,3 +2,4 @@ DIST identify-2.5.17.gh.tar.gz 101448 BLAKE2B d9319bbbe67f8c2c7a0ed8b7db8efc64f7
DIST identify-2.5.18.gh.tar.gz 101457 BLAKE2B 4575b4084dc28678275704f44a02d171d79a02f015e6d2267545b18c4288b55609cc64af2f9eca866bc2d164ed534cac59d69915e23fd3100cb680fcb08ceae0 SHA512 c7c6998340b77ddb13c88df8dbcc9b72efb68bf3cbf8a7ab2b81a4bda1180d04d4bdd9db360b7203235e2ebd252852de2c806b73e6a7236786bffbd3f4d4a672
DIST identify-2.5.19.gh.tar.gz 101475 BLAKE2B 12302ccfaeebd38cca84a530775e5acb2a6b9ef8a741a8d924c09a15f0d410058354e3725df31683a8d20f01767fe78745f60efba6f553b728bce089b463a9d5 SHA512 d188080a83cb26c45108d676dd47498c2a10caa4af02cae3c11950ebd3c1c9478c5e730b68d6a02297c6e563dbb9df41dd324627c6e5f28f60b337e439f7e3c7
DIST identify-2.5.20.gh.tar.gz 101473 BLAKE2B eaf6994d7b2f8e0449b84fcb6eca14210b3a123ad48709cf9e7bc9557b116dc9fbb5103566b60bfda1a19f6428b8432b2ad6099c471b1f86b898d46dc2c0b4f1 SHA512 00905b2937766c3885b9a604cc55e6201ffcea486cfd553217659652d97632ed11cd12512ecbe2ddd3394e836fbab5ec439a55257dcccd6ed3a2f148df5ca92b
+DIST identify-2.5.21.gh.tar.gz 101486 BLAKE2B 9c70c401d37afa8689d39bc4df38ca2006ecb2f78d427c0e213319074c5d0ec8a3865fafcde70ab903e641ada100ef4207196fea78bda9e60f3aa8c9e345c30d SHA512 6760eb53e99e52f51d24499b240450e0f1d8e4faf0190a6c7768246bc2ec527bfd0b081113058be4ad7646212f8b4043479e83edf6021d36d483f3af672a4010
diff --git a/dev-python/identify/identify-2.5.21.ebuild b/dev-python/identify/identify-2.5.21.ebuild
new file mode 100644
index 000000000000..718b36c70087
--- /dev/null
+++ b/dev-python/identify/identify-2.5.21.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10,11} )
+
+inherit distutils-r1
+
+DESCRIPTION="File identification library for Python"
+HOMEPAGE="
+ https://github.com/pre-commit/identify/
+ https://pypi.org/project/identify/
+"
+SRC_URI="
+ https://github.com/pre-commit/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ dev-python/ukkonen[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/ipyparallel/ipyparallel-8.4.1.ebuild b/dev-python/ipyparallel/ipyparallel-8.4.1.ebuild
index d284bf45f70b..bace4982f515 100644
--- a/dev-python/ipyparallel/ipyparallel-8.4.1.ebuild
+++ b/dev-python/ipyparallel/ipyparallel-8.4.1.ebuild
@@ -27,7 +27,7 @@ RDEPEND="
>=dev-python/traitlets-4.3[${PYTHON_USEDEP}]
>=dev-python/ipython-4[${PYTHON_USEDEP}]
dev-python/jupyter_client[${PYTHON_USEDEP}]
- dev-python/jupyter_server[${PYTHON_USEDEP}]
+ dev-python/jupyter-server[${PYTHON_USEDEP}]
>=dev-python/ipykernel-4.4[${PYTHON_USEDEP}]
dev-python/psutil[${PYTHON_USEDEP}]
>=dev-python/python-dateutil-2.1[${PYTHON_USEDEP}]
diff --git a/dev-python/jq/Manifest b/dev-python/jq/Manifest
index 24c9a0106170..3be69fe725f8 100644
--- a/dev-python/jq/Manifest
+++ b/dev-python/jq/Manifest
@@ -1 +1,2 @@
DIST jq.py-1.4.0.gh.tar.gz 2648402 BLAKE2B 5efc35fd9ee52e5c1c87ac46d980d1557121eedb14beb5d534987d81a37b05c5c765ef69cecf65141d7c451623d05d378bdcf9a6e48667c07a9f52e7d0317bbf SHA512 8acd9c4094e0e6f5ffd43303432347448e8cb160f2c33250a386afc75eac53134b15142da3f344b0ea3eac4df838ffa322771580a27349299f32a2c525e09555
+DIST jq.py-1.4.1.gh.tar.gz 2648592 BLAKE2B b1413a07ba03f61d3b2e8cfa3f2c646408e24139f76fb9637d23968d953fa78f82b1dd04c355d5a6e6c6761095a4814d8cfd1f012382ca810ad5a44e007c7878 SHA512 03924793e8cab8041b4b2ecb8ef45bafdf31f14b4502170358ddecc027ead7cc17eda37fc04743eeef073e29144d2f7e6c4428e2a92f1bb8aa859100dce4521b
diff --git a/dev-python/jq/jq-1.4.1.ebuild b/dev-python/jq/jq-1.4.1.ebuild
new file mode 100644
index 000000000000..fb174dd2fd71
--- /dev/null
+++ b/dev-python/jq/jq-1.4.1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10,11} )
+
+inherit distutils-r1
+
+MY_P="jq.py-${PV}"
+DESCRIPTION="Python bindings for jq"
+HOMEPAGE="
+ https://github.com/mwilliamson/jq.py/
+ https://pypi.org/project/jq/
+"
+SRC_URI="
+ https://github.com/mwilliamson/jq.py/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+python_compile() {
+ # Cython compilation isn't part of setup.py, so do it manually
+ "${EPYTHON}" -m cython -3 jq.pyx -o jq.c || die
+ distutils-r1_python_compile
+}
diff --git a/dev-python/jupyter-lsp/jupyter-lsp-1.5.1.ebuild b/dev-python/jupyter-lsp/jupyter-lsp-1.5.1.ebuild
index 85f366cbbe94..351bc3a7c810 100644
--- a/dev-python/jupyter-lsp/jupyter-lsp-1.5.1.ebuild
+++ b/dev-python/jupyter-lsp/jupyter-lsp-1.5.1.ebuild
@@ -21,7 +21,7 @@ RESTRICT="test"
RDEPEND="
dev-python/entrypoints[${PYTHON_USEDEP}]
- >=dev-python/jupyter_server-1.1.2[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-server-1.1.2[${PYTHON_USEDEP}]
"
distutils_enable_tests pytest
diff --git a/dev-python/jupyter-server-fileid/jupyter-server-fileid-0.8.0.ebuild b/dev-python/jupyter-server-fileid/jupyter-server-fileid-0.8.0.ebuild
index 3f7f38576b16..96af61ae1156 100644
--- a/dev-python/jupyter-server-fileid/jupyter-server-fileid-0.8.0.ebuild
+++ b/dev-python/jupyter-server-fileid/jupyter-server-fileid-0.8.0.ebuild
@@ -20,7 +20,7 @@ SLOT="0"
KEYWORDS="~amd64"
RDEPEND="
- dev-python/jupyter_server[${PYTHON_USEDEP}]
+ dev-python/jupyter-server[${PYTHON_USEDEP}]
~dev-python/jupyter_events-0.5.0[${PYTHON_USEDEP}]
"
diff --git a/dev-python/jupyter-server-proxy/jupyter-server-proxy-3.2.2.ebuild b/dev-python/jupyter-server-proxy/jupyter-server-proxy-3.2.2.ebuild
index e05e70651905..c8300ff326b0 100644
--- a/dev-python/jupyter-server-proxy/jupyter-server-proxy-3.2.2.ebuild
+++ b/dev-python/jupyter-server-proxy/jupyter-server-proxy-3.2.2.ebuild
@@ -18,7 +18,7 @@ KEYWORDS="~amd64 ~x86"
RDEPEND="
dev-python/aiohttp[${PYTHON_USEDEP}]
- >=dev-python/jupyter_server-1.0[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-server-1.0[${PYTHON_USEDEP}]
>=dev-python/simpervisor-0.4[${PYTHON_USEDEP}]
"
BDEPEND="dev-python/jupyter_packaging[${PYTHON_USEDEP}]"
diff --git a/dev-python/jupyter-server-terminals/jupyter-server-terminals-0.4.4.ebuild b/dev-python/jupyter-server-terminals/jupyter-server-terminals-0.4.4.ebuild
index 57ea55412304..3af37418dd27 100644
--- a/dev-python/jupyter-server-terminals/jupyter-server-terminals-0.4.4.ebuild
+++ b/dev-python/jupyter-server-terminals/jupyter-server-terminals-0.4.4.ebuild
@@ -25,7 +25,7 @@ RDEPEND="
BDEPEND="
test? (
- dev-python/jupyter_server[${PYTHON_USEDEP}]
+ dev-python/jupyter-server[${PYTHON_USEDEP}]
dev-python/pytest_jupyter[${PYTHON_USEDEP}]
dev-python/pytest-timeout[${PYTHON_USEDEP}]
)
diff --git a/dev-python/jupyter_server/Manifest b/dev-python/jupyter-server/Manifest
index cc3d08ee89ad..cc3d08ee89ad 100644
--- a/dev-python/jupyter_server/Manifest
+++ b/dev-python/jupyter-server/Manifest
diff --git a/dev-python/jupyter_server/files/jupyter_server-2.0.1-skip-npm.patch b/dev-python/jupyter-server/files/jupyter-server-2.0.1-skip-npm.patch
index f7b484e020b6..f7b484e020b6 100644
--- a/dev-python/jupyter_server/files/jupyter_server-2.0.1-skip-npm.patch
+++ b/dev-python/jupyter-server/files/jupyter-server-2.0.1-skip-npm.patch
diff --git a/dev-python/jupyter_server/jupyter_server-2.4.0.ebuild b/dev-python/jupyter-server/jupyter-server-2.4.0.ebuild
index 3bf169f3e4f7..3bf169f3e4f7 100644
--- a/dev-python/jupyter_server/jupyter_server-2.4.0.ebuild
+++ b/dev-python/jupyter-server/jupyter-server-2.4.0.ebuild
diff --git a/dev-python/jupyter_server/metadata.xml b/dev-python/jupyter-server/metadata.xml
index 155de73d3957..f779b78a9efd 100644
--- a/dev-python/jupyter_server/metadata.xml
+++ b/dev-python/jupyter-server/metadata.xml
@@ -9,9 +9,7 @@
<email>python@gentoo.org</email>
<name>Python</name>
</maintainer>
- <upstream>
- <remote-id type="cpe">cpe:/a:jupyter:jupyter_server</remote-id>
- </upstream>
+
<origin>gentoo-staging</origin>
<stabilize-allarches/>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/jupyter/jupyter-1.0.0-r4.ebuild b/dev-python/jupyter/jupyter-1.0.0-r4.ebuild
index 708b25a0253c..b1f841f1c988 100644
--- a/dev-python/jupyter/jupyter-1.0.0-r4.ebuild
+++ b/dev-python/jupyter/jupyter-1.0.0-r4.ebuild
@@ -6,14 +6,14 @@ EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{7,8,9,10,11} )
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="Jupyter metapackage. Install all the Jupyter components in one go"
HOMEPAGE="https://jupyter.org"
-SRC_URI="
- mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
- https://patch-diff.githubusercontent.com/raw/jupyter/jupyter/pull/198.patch -> ${P}-file-colision.patch
- "
+SRC_URI+="
+ https://patch-diff.githubusercontent.com/raw/jupyter/jupyter/pull/198.patch
+ -> ${P}-file-colision.patch
+"
LICENSE="BSD"
SLOT="0"
diff --git a/dev-python/jupyter_core/Manifest b/dev-python/jupyter_core/Manifest
index 33608e78bbc6..0539241f01f5 100644
--- a/dev-python/jupyter_core/Manifest
+++ b/dev-python/jupyter_core/Manifest
@@ -1,2 +1,3 @@
DIST jupyter_core-5.1.5.tar.gz 82838 BLAKE2B 33e9f569bfcf66e679611b00fd99f272b845685d7132f616141143ab0b894b54cb499c6da2112ccd760a00e5313c742830943e77ac6b40277db371b6002b6220 SHA512 2fc9150de96e7a084aa9bf334a71e342f0ab1946943e25a66a4760097fa662290a732ac30356c8ddb595fc05414edb1d9c06ac5eaf41099aaccb695d6a9357a6
DIST jupyter_core-5.2.0.tar.gz 83861 BLAKE2B 97a96201199640963e9ebedf1b8ecffb66d6153e40a77cbe1d615ad9a5b60d3c7deb5c5965bdf7f8001db4967af30f39e576570160229201cc9a5b585c37abcf SHA512 7e4e6bbc338876fd213ae1a8028066f1f33010bb0196e26d6c6d7b872b60612d38d9d32b3d2ee4155f86dabf3b89e8282fef268d1dcd6fd740fd2fd3f0bd0bc2
+DIST jupyter_core-5.3.0.tar.gz 83909 BLAKE2B c0e5418770a4d3527e825bcd63cb9371855f544f19493b82f49db892fc92e91fd257b07b45d7cf20760f9ac9205346b3ec533491baf45f225764e6d310524bb8 SHA512 2c63f59a9618ee01d200e233cf85d586d88976c8d545235be224f9c64a54eb3a70e8b47220cc29b8ad3c102cc6c8754c8ccff2a771899986f322def5f539e072
diff --git a/dev-python/jupyter_core/jupyter_core-5.3.0.ebuild b/dev-python/jupyter_core/jupyter_core-5.3.0.ebuild
new file mode 100644
index 000000000000..c2dbe090375d
--- /dev/null
+++ b/dev-python/jupyter_core/jupyter_core-5.3.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{7,8,9,10,11} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Core common functionality of Jupyter projects"
+HOMEPAGE="
+ https://jupyter.org/
+ https://github.com/jupyter/jupyter_core/
+ https://pypi.org/project/jupyter-core/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/platformdirs-2.5[${PYTHON_USEDEP}]
+ >=dev-python/traitlets-5.3[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/ipython-4.0.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_sphinx docs \
+ dev-python/myst-parser \
+ dev-python/sphinx-autodoc-typehints \
+ dev-python/sphinxcontrib-github-alt \
+ dev-python/sphinxcontrib-spelling \
+ dev-python/traitlets
+distutils_enable_tests pytest
diff --git a/dev-python/jupyter_server_mathjax/jupyter_server_mathjax-0.2.6.ebuild b/dev-python/jupyter_server_mathjax/jupyter_server_mathjax-0.2.6.ebuild
index 02f10f27de09..3a2a98453030 100644
--- a/dev-python/jupyter_server_mathjax/jupyter_server_mathjax-0.2.6.ebuild
+++ b/dev-python/jupyter_server_mathjax/jupyter_server_mathjax-0.2.6.ebuild
@@ -20,7 +20,7 @@ SLOT="0"
KEYWORDS="~amd64 ~riscv"
RDEPEND="
- >=dev-python/jupyter_server-1.1[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-server-1.1[${PYTHON_USEDEP}]
"
BDEPEND="
dev-python/jupyter_packaging[${PYTHON_USEDEP}]
diff --git a/dev-python/jupyterlab-server/jupyterlab-server-2.20.0.ebuild b/dev-python/jupyterlab-server/jupyterlab-server-2.20.0.ebuild
index 15219ac76946..2be148047212 100644
--- a/dev-python/jupyterlab-server/jupyterlab-server-2.20.0.ebuild
+++ b/dev-python/jupyterlab-server/jupyterlab-server-2.20.0.ebuild
@@ -26,8 +26,8 @@ RDEPEND="
>=dev-python/jsonschema-3.0.1[${PYTHON_USEDEP}]
>=dev-python/packaging-21.3[${PYTHON_USEDEP}]
>=dev-python/requests-2.28[${PYTHON_USEDEP}]
- >=dev-python/jupyter_server-1.21[${PYTHON_USEDEP}]
- <dev-python/jupyter_server-3[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-server-1.21[${PYTHON_USEDEP}]
+ <dev-python/jupyter-server-3[${PYTHON_USEDEP}]
$(python_gen_cond_dep '
>=dev-python/importlib_metadata-4.8.3[${PYTHON_USEDEP}]
' 3.8 3.9)
@@ -36,7 +36,7 @@ RDEPEND="
BDEPEND="
test? (
dev-python/ipykernel[${PYTHON_USEDEP}]
- dev-python/jupyter_server[${PYTHON_USEDEP}]
+ dev-python/jupyter-server[${PYTHON_USEDEP}]
<dev-python/openapi-core-0.17[${PYTHON_USEDEP}]
>=dev-python/openapi-core-0.16.1[${PYTHON_USEDEP}]
<dev-python/openapi-spec-validator-0.6[${PYTHON_USEDEP}]
diff --git a/dev-python/jupyterlab/jupyterlab-3.5.3.ebuild b/dev-python/jupyterlab/jupyterlab-3.5.3.ebuild
index ccc5df62e0e5..809b2a3930f6 100644
--- a/dev-python/jupyterlab/jupyterlab-3.5.3.ebuild
+++ b/dev-python/jupyterlab/jupyterlab-3.5.3.ebuild
@@ -25,7 +25,7 @@ RDEPEND="
dev-python/packaging[${PYTHON_USEDEP}]
dev-python/jupyter_core[${PYTHON_USEDEP}]
>=dev-python/jupyterlab-server-2.10[${PYTHON_USEDEP}]
- >=dev-python/jupyter_server-1.16[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-server-1.16[${PYTHON_USEDEP}]
>=dev-python/nbclassic-0.2[${PYTHON_USEDEP}]
<dev-python/notebook-7[${PYTHON_USEDEP}]
>=dev-python/jinja-2.1[${PYTHON_USEDEP}]
diff --git a/dev-python/jupyterlab/jupyterlab-3.6.1-r1.ebuild b/dev-python/jupyterlab/jupyterlab-3.6.1-r1.ebuild
index 71ae042f2318..81d7c2c1cc15 100644
--- a/dev-python/jupyterlab/jupyterlab-3.6.1-r1.ebuild
+++ b/dev-python/jupyterlab/jupyterlab-3.6.1-r1.ebuild
@@ -24,7 +24,7 @@ RDEPEND="
dev-python/packaging[${PYTHON_USEDEP}]
dev-python/jupyter_core[${PYTHON_USEDEP}]
>=dev-python/jupyterlab-server-2.19[${PYTHON_USEDEP}]
- >=dev-python/jupyter_server-1.16[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-server-1.16[${PYTHON_USEDEP}]
~dev-python/jupyter_ydoc-0.2.2[${PYTHON_USEDEP}]
>=dev-python/jupyter-server-ydoc-0.6.0[${PYTHON_USEDEP}]
<dev-python/jupyter-server-ydoc-0.7.0[${PYTHON_USEDEP}]
diff --git a/dev-python/nbclassic/nbclassic-0.5.1.ebuild b/dev-python/nbclassic/nbclassic-0.5.1.ebuild
index 316914884b6d..3f161c63feaf 100644
--- a/dev-python/nbclassic/nbclassic-0.5.1.ebuild
+++ b/dev-python/nbclassic/nbclassic-0.5.1.ebuild
@@ -27,7 +27,7 @@ RDEPEND="
dev-python/jinja[${PYTHON_USEDEP}]
>=dev-python/jupyter_client-6.1.1[${PYTHON_USEDEP}]
>=dev-python/jupyter_core-4.6.1[${PYTHON_USEDEP}]
- >=dev-python/jupyter_server-1.17.0[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-server-1.17.0[${PYTHON_USEDEP}]
>=dev-python/nbconvert-5[${PYTHON_USEDEP}]
dev-python/nbformat[${PYTHON_USEDEP}]
>=dev-python/nest_asyncio-1.5[${PYTHON_USEDEP}]
diff --git a/dev-python/nbdime/metadata.xml b/dev-python/nbdime/metadata.xml
index f73643416257..67748c196872 100644
--- a/dev-python/nbdime/metadata.xml
+++ b/dev-python/nbdime/metadata.xml
@@ -8,11 +8,6 @@
<upstream>
<remote-id type="cpe">cpe:/a:jupyter:nbdime</remote-id>
</upstream>
- <use>
- <flag name="webtools">
- Install web-based diff and merge tools.
- </flag>
- </use>
<origin>gentoo-staging</origin>
<stabilize-allarches/>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/nbdime/nbdime-3.1.1-r2.ebuild b/dev-python/nbdime/nbdime-3.1.1-r2.ebuild
index 13aa9d39055e..ff03cfa626a5 100644
--- a/dev-python/nbdime/nbdime-3.1.1-r2.ebuild
+++ b/dev-python/nbdime/nbdime-3.1.1-r2.ebuild
@@ -29,7 +29,7 @@ RDEPEND="
dev-python/colorama[${PYTHON_USEDEP}]
dev-python/GitPython[${PYTHON_USEDEP}]
dev-python/jinja[${PYTHON_USEDEP}]
- dev-python/jupyter_server[${PYTHON_USEDEP}]
+ dev-python/jupyter-server[${PYTHON_USEDEP}]
dev-python/jupyter_server_mathjax[${PYTHON_USEDEP}]
dev-python/nbformat[${PYTHON_USEDEP}]
dev-python/pygments[${PYTHON_USEDEP}]
diff --git a/dev-python/notebook_shim/notebook_shim-0.2.2-r1.ebuild b/dev-python/notebook_shim/notebook_shim-0.2.2-r1.ebuild
index 377030283fb7..71ff6c61be1b 100644
--- a/dev-python/notebook_shim/notebook_shim-0.2.2-r1.ebuild
+++ b/dev-python/notebook_shim/notebook_shim-0.2.2-r1.ebuild
@@ -19,8 +19,8 @@ SLOT="0"
KEYWORDS="~amd64 ~ia64 ~ppc ~riscv ~x86"
RDEPEND="
- <dev-python/jupyter_server-3[${PYTHON_USEDEP}]
- >=dev-python/jupyter_server-1.8[${PYTHON_USEDEP}]
+ <dev-python/jupyter-server-3[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-server-1.8[${PYTHON_USEDEP}]
"
BDEPEND="
diff --git a/dev-python/psutil/psutil-5.9.4.ebuild b/dev-python/psutil/psutil-5.9.4.ebuild
index 4dcb48277486..00398145c739 100644
--- a/dev-python/psutil/psutil-5.9.4.ebuild
+++ b/dev-python/psutil/psutil-5.9.4.ebuild
@@ -6,7 +6,7 @@ EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
-inherit distutils-r1
+inherit distutils-r1 pypi
TEST_PATCH=psutil-5.9.3-tests-r1.patch
DESCRIPTION="Retrieve information on running processes and system utilization"
@@ -14,8 +14,7 @@ HOMEPAGE="
https://github.com/giampaolo/psutil/
https://pypi.org/project/psutil/
"
-SRC_URI="
- mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
+SRC_URI+="
https://dev.gentoo.org/~mgorny/dist/${TEST_PATCH}.xz
"
diff --git a/dev-python/pyacoustid/pyacoustid-1.2.2-r1.ebuild b/dev-python/pyacoustid/pyacoustid-1.2.2-r1.ebuild
index e9930783ecbc..a3ad5909945c 100644
--- a/dev-python/pyacoustid/pyacoustid-1.2.2-r1.ebuild
+++ b/dev-python/pyacoustid/pyacoustid-1.2.2-r1.ebuild
@@ -5,12 +5,11 @@ EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{7,8,9,10,11} )
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="Python bindings for Chromaprint and the AcoustID web service"
HOMEPAGE="https://pypi.org/project/pyacoustid/"
-SRC_URI="
- mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
+SRC_URI+="
test? (
https://s3.wasabisys.com/blocsonic/releases/maxblocs/bsmx0198/01-Follow_192kb.mp3
-> ${PN}-test.mp3
diff --git a/dev-python/pybind11/Manifest b/dev-python/pybind11/Manifest
index 62b1e9ba2955..70f46887e541 100644
--- a/dev-python/pybind11/Manifest
+++ b/dev-python/pybind11/Manifest
@@ -1 +1,2 @@
DIST pybind11-2.10.3.gh.tar.gz 740214 BLAKE2B 967b93cbf7d1f8faad25db9a4d3e84fd33b48429cdf527c167e65faad5c01df83a5634021cf99f07adf443855d9f6bb076f0cc67b0e6555e189b794a845b533a SHA512 3894400f04cd08e2dbb14b3d696339f0364434f1d6f8bb057338ac88157ec7491b2df1e1e46ebd5abccdcd5775c5e9238de6404f0db87f64f5a1802db3a5b18c
+DIST pybind11-2.10.4.gh.tar.gz 740622 BLAKE2B 7b2d86e8262581b2cc6dd720b83336206e242ef8ca99b257b01a11141ed8b127d7f35d7d573bc763dd36f2fe8c8ac91766089deb63a76e9c10029c34eec2d6d3 SHA512 7970defbb6d057a44468ed707c80bfa6ef8c9578528fbc084b03aeea20a52dbd681581f82d55ff90af11ee89693379bd79e2ab6603239ba05b0aa8da29dd93c7
diff --git a/dev-python/pybind11/pybind11-2.10.4.ebuild b/dev-python/pybind11/pybind11-2.10.4.ebuild
new file mode 100644
index 000000000000..d461115d45e1
--- /dev/null
+++ b/dev-python/pybind11/pybind11-2.10.4.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
+
+inherit cmake distutils-r1
+
+DESCRIPTION="AST-based Python refactoring library"
+HOMEPAGE="
+ https://pybind11.readthedocs.io/en/stable/
+ https://github.com/pybind/pybind11/
+ https://pypi.org/project/pybind11/
+"
+SRC_URI="
+ https://github.com/pybind/pybind11/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ dev-cpp/eigen:3
+"
+BDEPEND="
+ test? (
+ >=dev-cpp/catch-2.13.5
+ dev-libs/boost
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ export PYBIND11_USE_CMAKE=1
+ cmake_src_prepare
+ distutils-r1_python_prepare_all
+}
+
+python_configure() {
+ local mycmakeargs=(
+ # disable forced lto
+ -DPYBIND11_LTO_CXX_FLAGS=
+ -DPYBIND11_INSTALL=ON
+ -DPYBIND11_TEST=$(usex test)
+ )
+ cmake_src_configure
+}
+
+python_compile() {
+ distutils-r1_python_compile
+ # Compilation only does anything for tests
+ use test && cmake_src_compile
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ cmake_build check
+}
+
+python_install() {
+ distutils-r1_python_install
+ cmake_src_install
+}
diff --git a/dev-python/pytest_jupyter/pytest_jupyter-0.6.2.ebuild b/dev-python/pytest_jupyter/pytest_jupyter-0.6.2.ebuild
index ff9d2e51251d..a9ee8ffc0f7b 100644
--- a/dev-python/pytest_jupyter/pytest_jupyter-0.6.2.ebuild
+++ b/dev-python/pytest_jupyter/pytest_jupyter-0.6.2.ebuild
@@ -18,7 +18,7 @@ KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
>=dev-python/jupyter_client-7.4.0[${PYTHON_USEDEP}]
>=dev-python/ipykernel-6.14[${PYTHON_USEDEP}]
- >=dev-python/jupyter_server-1.21[${PYTHON_USEDEP}]
+ >=dev-python/jupyter-server-1.21[${PYTHON_USEDEP}]
>=dev-python/nbformat-5.3[${PYTHON_USEDEP}]
"
BDEPEND="
diff --git a/dev-python/python-engineio/Manifest b/dev-python/python-engineio/Manifest
index 1dedeaffeac0..2e769948f6fb 100644
--- a/dev-python/python-engineio/Manifest
+++ b/dev-python/python-engineio/Manifest
@@ -1 +1,2 @@
DIST python-engineio-4.3.4.gh.tar.gz 300665 BLAKE2B 78488fb7deb54136a255b1027e52e1869e7d09b38769d3dd144b26146ac8db58091238c3f1cfa81d4c29af4d1bd8bb998559756053e53f6c7876c2866da31575 SHA512 427f224ae24d939d55316931cd087676741195d578415224de291f9871b535fdd02b835ac32a65d73be0428c8c4be0414faefca06a4964b1fe34e2ac91b02694
+DIST python-engineio-4.4.0.gh.tar.gz 309353 BLAKE2B 4cf40802fddcce2e53e205bdbe73bdf0ec822e15581fe4a9939b8d05c3eb6ba82a99d089d4708169b197aa79e5b5f14001ff86f72025fc6d96c99ed6d73fe620 SHA512 b7995aaf2583ec58ac87f048608653ade3846dd103616ee90b3dc12cc7e27c7d37959cd3e1ebf6e138395ff6fad8cd011407b6660258715e513bf72c8a3e1f6f
diff --git a/dev-python/python-engineio/python-engineio-4.4.0.ebuild b/dev-python/python-engineio/python-engineio-4.4.0.ebuild
new file mode 100644
index 000000000000..f8623866bbb6
--- /dev/null
+++ b/dev-python/python-engineio/python-engineio-4.4.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10,11} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python implementation of the Engine.IO realtime server"
+HOMEPAGE="
+ https://python-engineio.readthedocs.io/
+ https://github.com/miguelgrinberg/python-engineio/
+ https://pypi.org/project/python-engineio/"
+SRC_URI="
+ https://github.com/miguelgrinberg/python-engineio/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/websocket-client[${PYTHON_USEDEP}]
+"
+# Can use eventlet, werkzeug, or gevent, but no tests for werkzeug
+BDEPEND="
+ test? (
+ dev-python/tornado[${PYTHON_USEDEP}]
+ dev-python/websockets[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ dev-python/alabaster
+
+EPYTEST_IGNORE=(
+ # eventlet is masked for removal
+ tests/common/test_async_eventlet.py
+)
+
+EPYTEST_DESELECT=(
+ # also eventlet
+ tests/common/test_server.py::TestServer::test_async_mode_eventlet
+ tests/common/test_server.py::TestServer::test_connect
+ tests/common/test_server.py::TestServer::test_service_task_started
+ tests/common/test_server.py::TestServer::test_upgrades
+)
diff --git a/dev-python/rdflib/Manifest b/dev-python/rdflib/Manifest
index 2e463c1f67d3..bfbcb8ce50f6 100644
--- a/dev-python/rdflib/Manifest
+++ b/dev-python/rdflib/Manifest
@@ -1 +1,2 @@
DIST rdflib-6.2.0.gh.tar.gz 4886953 BLAKE2B 74044b0cbaf6c1ba6f2a43347112118dcf92b5237afdd49782ca6d637df092379ff2d81eaec254ad0bf25057f8c0cd44c82a35a89d4ce7b21c8e222de9aef16a SHA512 8177c50e9c2d48859a061dfee24c3560b8f979bc306b3d940a9251ec130e3a324bbad474f4fa7ced5e11522d3bd4e13931461bf106f31177fd972806968d8245
+DIST rdflib-6.3.0.gh.tar.gz 4980436 BLAKE2B 07f86418a0d598f59e4912057f4e11183bc0ad66a4cc5d7a83df6abce325f708a4920303afcbcdc97fb19b39199725a6410552704011e0f154815b7692724d88 SHA512 b8fd7d43f22779175e4d29f6256f070cb58f694fbfc9d068932c992ac732c687668ef68defbb6fa49f55f0b11d3b8f65b3a9d94aa8693ad9b8ab7c670625d06c
diff --git a/dev-python/rdflib/rdflib-6.3.0.ebuild b/dev-python/rdflib/rdflib-6.3.0.ebuild
new file mode 100644
index 000000000000..66435453afeb
--- /dev/null
+++ b/dev-python/rdflib/rdflib-6.3.0.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{7,8,9,10,11} )
+PYTHON_REQ_USE="sqlite?,threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="RDF library containing a triple store and parser/serializer"
+HOMEPAGE="
+ https://github.com/RDFLib/rdflib/
+ https://pypi.org/project/rdflib/
+"
+SRC_URI="
+ https://github.com/RDFLib/rdflib/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="examples sqlite"
+
+RDEPEND="
+ <dev-python/isodate-1[${PYTHON_USEDEP}]
+ >=dev-python/isodate-0.6.0[${PYTHON_USEDEP}]
+ dev-python/html5lib[${PYTHON_USEDEP}]
+ <dev-python/pyparsing-4[${PYTHON_USEDEP}]
+ >=dev-python/pyparsing-2.1.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/requests[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # doctests require internet
+ sed -i -e '/doctest-modules/d' pyproject.toml || die
+
+ # we disable pytest-cov
+ sed -i -e 's@, no_cover: None@@' test/test_misc/test_plugins.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # Internet
+ "test/test_examples.py::test_example[sparqlstore_example.py]"
+ test/test_sparql/test_service.py
+ "test/jsonld/test_onedotone.py::test_suite[https://w3c.github.io/json-ld-api/tests/toRdf-manifest#tc034-do_test_parser-https://w3c.github.io/json-ld-api/tests/-toRdf-c034-toRdf/c034-in.jsonld-toRdf/c034-out.nq-False-options66]"
+ "test/jsonld/test_onedotone.py::test_suite[https://w3c.github.io/json-ld-api/tests/toRdf-manifest#te126-do_test_parser-https://w3c.github.io/json-ld-api/tests/-toRdf-e126-toRdf/e126-in.jsonld-toRdf/e126-out.nq-False-options167]"
+ "test/jsonld/test_onedotone.py::test_suite[https://w3c.github.io/json-ld-api/tests/toRdf-manifest#te127-do_test_parser-https://w3c.github.io/json-ld-api/tests/-toRdf-e127-toRdf/e127-in.jsonld-toRdf/e127-out.nq-False-options168]"
+ "test/jsonld/test_onedotone.py::test_suite[https://w3c.github.io/json-ld-api/tests/toRdf-manifest#tso05-do_test_parser-https://w3c.github.io/json-ld-api/tests/-toRdf-so05-toRdf/so05-in.jsonld-toRdf/so05-out.nq-False-options253]"
+ "test/jsonld/test_onedotone.py::test_suite[https://w3c.github.io/json-ld-api/tests/toRdf-manifest#tso08-do_test_parser-https://w3c.github.io/json-ld-api/tests/-toRdf-so08-toRdf/so08-in.jsonld-toRdf/so08-out.nq-False-options254]"
+ "test/jsonld/test_onedotone.py::test_suite[https://w3c.github.io/json-ld-api/tests/toRdf-manifest#tso09-do_test_parser-https://w3c.github.io/json-ld-api/tests/-toRdf-so09-toRdf/so09-in.jsonld-toRdf/so09-out.nq-False-options255]"
+ "test/jsonld/test_onedotone.py::test_suite[https://w3c.github.io/json-ld-api/tests/toRdf-manifest#tso11-do_test_parser-https://w3c.github.io/json-ld-api/tests/-toRdf-so11-toRdf/so11-in.jsonld-toRdf/so11-out.nq-False-options256]"
+ test/test_extras/test_infixowl/test_basic.py::test_infix_owl_example1
+ test/test_extras/test_infixowl/test_context.py::test_context
+ test/test_graph/test_graph.py::test_guess_format_for_parse
+ )
+ local EPYTEST_IGNORE=(
+ # Uses network
+ test/test_so_69984830.py
+ )
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+
+ epytest
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/dev-python/reportlab/reportlab-3.6.12.ebuild b/dev-python/reportlab/reportlab-3.6.12.ebuild
index a0e280c46f59..e69a00a195ff 100644
--- a/dev-python/reportlab/reportlab-3.6.12.ebuild
+++ b/dev-python/reportlab/reportlab-3.6.12.ebuild
@@ -6,15 +6,14 @@ EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{7,8,9,10,11} )
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="Tools for generating printable PDF documents from any data source"
HOMEPAGE="
https://www.reportlab.com/
https://pypi.org/project/reportlab/
"
-SRC_URI="
- mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz
+SRC_URI+="
https://www.reportlab.com/ftp/fonts/pfbfer-20070710.zip
"
diff --git a/dev-python/sentry-sdk/Manifest b/dev-python/sentry-sdk/Manifest
index e3091addb126..de7b6b4b8c09 100644
--- a/dev-python/sentry-sdk/Manifest
+++ b/dev-python/sentry-sdk/Manifest
@@ -1 +1,2 @@
DIST sentry-python-1.16.0.gh.tar.gz 325763 BLAKE2B e53f6051a74065950c4f1ce9010a87071b4a715990643cb7e955411ffb784fabc7ca6f2ade3cc6c66eb0718c6fc4993c6035763a0937b8a1cd66289f3f026806 SHA512 7f46f6c66b0e4f97e7f64a0eba9c396fbb9ab95607ba8ecb4880bb117c4f3fff7881a6787ea814981bdfabd84ea2b172c878821877403852661e746b6fe666bb
+DIST sentry-python-1.17.0.gh.tar.gz 332229 BLAKE2B 5c94f80d8cbe9582fe03e948c74e37024c4d6fce4f6293bdb755ada0651c5a898db23826d23ed7e31845b7426c3f6a52014e0f4226b9810f13222a700e063f91 SHA512 e3f0b9287f703e36f55bb96f31a76638b99fc66f4cf6898ddcddeb57a5ee27a3d782815c9dae9cd1177ff7f5c606e62b7807adada1f841294f3b6d7449d950e1
diff --git a/dev-python/sentry-sdk/sentry-sdk-1.17.0.ebuild b/dev-python/sentry-sdk/sentry-sdk-1.17.0.ebuild
new file mode 100644
index 000000000000..d3fb5e2dedf7
--- /dev/null
+++ b/dev-python/sentry-sdk/sentry-sdk-1.17.0.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10,11} )
+
+inherit distutils-r1
+
+MY_P=sentry-python-${PV}
+DESCRIPTION="Python client for Sentry"
+HOMEPAGE="
+ https://sentry.io/
+ https://github.com/getsentry/sentry-python/
+ https://pypi.org/project/sentry-sdk/
+"
+SRC_URI="
+ https://github.com/getsentry/sentry-python/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="PSF-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ dev-python/urllib3[${PYTHON_USEDEP}]
+ dev-python/certifi[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/asttokens[${PYTHON_USEDEP}]
+ dev-python/django[${PYTHON_USEDEP}]
+ dev-python/executing[${PYTHON_USEDEP}]
+ dev-python/fakeredis[${PYTHON_USEDEP}]
+ dev-python/flask-login[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/pyrsistent[${PYTHON_USEDEP}]
+ dev-python/pytest-aiohttp[${PYTHON_USEDEP}]
+ dev-python/pytest-django[${PYTHON_USEDEP}]
+ dev-python/pytest-forked[${PYTHON_USEDEP}]
+ dev-python/pytest-localserver[${PYTHON_USEDEP}]
+ dev-python/responses[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+ dev-python/zope-event[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_IGNORE=(
+ # tests require Internet access
+ tests/integrations/httpx/test_httpx.py
+ tests/integrations/requests/test_requests.py
+ tests/integrations/stdlib/test_httplib.py
+ tests/integrations/flask/test_flask.py
+ tests/integrations/django/test_basic.py
+ # wtf is it supposed to do?!
+ tests/integrations/gcp/test_gcp.py
+ # broken by rq-1.10.1 (optional dep)
+ tests/integrations/rq/test_rq.py
+ # fastapi is not packaged
+ tests/integrations/asgi/test_fastapi.py
+ # TODO
+ tests/integrations/bottle
+ # TODO: causes breakage in other tests
+ tests/integrations/starlette
+ # TODO
+ tests/integrations/tornado
+ # requires mockupdb
+ tests/integrations/pymongo
+)
+
+EPYTEST_DESELECT=(
+ # hangs
+ 'tests/test_transport.py::test_transport_works'
+ # TODO
+ 'tests/test_basics.py::test_auto_enabling_integrations_catches_import_error'
+ tests/test_client.py::test_databag_depth_stripping
+ tests/test_client.py::test_databag_string_stripping
+ tests/test_client.py::test_databag_breadth_stripping
+ tests/integrations/asgi/test_asgi.py::test_auto_session_tracking_with_aggregates
+ tests/integrations/asgi/test_asgi.py::test_websocket
+ tests/integrations/aiohttp/test_aiohttp.py::test_transaction_style
+ tests/integrations/aiohttp/test_aiohttp.py::test_traces_sampler_gets_request_object_in_sampling_context
+ # incompatible version?
+ tests/integrations/falcon/test_falcon.py
+ tests/integrations/sqlalchemy/test_sqlalchemy.py::test_too_large_event_truncated
+ # test_circular_references: apparently fragile
+ 'tests/integrations/threading/test_threading.py::test_circular_references'
+ # test for new feature, fails with IndexError
+ tests/integrations/wsgi/test_wsgi.py::test_session_mode_defaults_to_request_mode_in_wsgi_handler
+ # TODO
+ tests/integrations/wsgi/test_wsgi.py::test_auto_session_tracking_with_aggregates
+ tests/integrations/wsgi/test_wsgi.py::test_profile_sent_when_profiling_enabled
+ tests/test_profiler.py::test_sample_buffer
+ tests/test_profiler.py::test_thread_scheduler_takes_first_samples
+ tests/test_profiler.py::test_thread_scheduler_takes_more_samples
+ tests/test_profiler.py::test_thread_scheduler_single_background_thread
+ # broken with py3.11, *shrug*
+ tests/test_profiler.py::test_extract_stack_with_max_depth
+ # TODO
+ tests/integrations/sqlalchemy/test_sqlalchemy.py::test_long_sql_query_preserved
+)
diff --git a/dev-python/sgmllib3k/sgmllib3k-1.0.0-r1.ebuild b/dev-python/sgmllib3k/sgmllib3k-1.0.0-r1.ebuild
index 4d74c402a286..b6303a16a608 100644
--- a/dev-python/sgmllib3k/sgmllib3k-1.0.0-r1.ebuild
+++ b/dev-python/sgmllib3k/sgmllib3k-1.0.0-r1.ebuild
@@ -6,14 +6,13 @@ EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="Py3k port of sgmllib"
HOMEPAGE="
https://pypi.org/project/sgmllib3k/
"
-SRC_URI="
- mirror://pypi/${PN::1}/${PN}/${P}.tar.gz
+SRC_URI+="
test? (
https://dev.gentoo.org/~arthurzam/distfiles/dev-python/${PN}/test_sgmllib.py.gz
)
diff --git a/dev-python/uvicorn/Manifest b/dev-python/uvicorn/Manifest
index 2810f1ccfc3e..88bac752726a 100644
--- a/dev-python/uvicorn/Manifest
+++ b/dev-python/uvicorn/Manifest
@@ -1,3 +1,4 @@
DIST uvicorn-0.19.0.gh.tar.gz 713679 BLAKE2B ee83cd7d318b0e54bd2dc240b5bfe3874ef41933ba7e2376e8dd3bdce90387b3d253c02c16ef28bbb54435b2e666309769cd057fe703d4be498f3c0ef19532c0 SHA512 d030a0c5e61b5bec985fa1640a74bf5da1dfa1a48d0b3f758096eaff2e3bf1d1b3bee1c3a024f5960cafbf928e9ee94e285a8c24404e1c4b6b6aa29f0d4cb15a
DIST uvicorn-0.20.0.gh.tar.gz 716073 BLAKE2B 7f1cf4808e985199d39e54e3563119cef1fe3af31361ad05a91278d32bc6f0dd741ad87f6073fbb720e9d9d4119fc8389b4e2feaaede665d8f68c56d56b37a17 SHA512 fa089da78dd7ce3cc02d83405e7db401e6055e947b80bf4abb0e3a4dce6575d97761f3bd6fcc253f3338caad5f797fc4f01bd40d833514d9cc0bcd0f072ad793
DIST uvicorn-0.21.0.gh.tar.gz 717952 BLAKE2B 116153af13360f228032889feb63c4a652f298690fa0dc235e6ccead8e75a01bf3949e76b3eca4db0b8a6f1a4752127fd06b14c2cd83c88c5b247cba5c68eea8 SHA512 054355cbf09449d54255aebcfb43b77c9d8178d91d16a710e3d7213922908f2c107809116b635319fca2d3c12a738c9c6fbcd0e318a208f6a068075b9f997a2c
+DIST uvicorn-0.21.1.gh.tar.gz 717974 BLAKE2B ac4e1ec6a2533e364fe2ad7cd52558ad70b82e3c739756f33123d08737cc406ba879f50f7fa1cba875d0f0a284da5467e4ca15139558462401fb6a7938a17f61 SHA512 9f8dfe42df5d7f3923609e177def66d68fac24e3016fc1c6fead489320c2e5eaf7816a43e242f4426e670ce16f200db41679ac6ebd29a000ba76ca72b9ccec76
diff --git a/dev-python/uvicorn/uvicorn-0.21.1.ebuild b/dev-python/uvicorn/uvicorn-0.21.1.ebuild
new file mode 100644
index 000000000000..a120e4fde260
--- /dev/null
+++ b/dev-python/uvicorn/uvicorn-0.21.1.ebuild
@@ -0,0 +1,79 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Lightning-fast ASGI server implementation"
+HOMEPAGE="
+ https://www.uvicorn.org/
+ https://github.com/encode/uvicorn/
+ https://pypi.org/project/uvicorn/
+"
+# as of 0.21.0, no tests in sdist
+SRC_URI="
+ https://github.com/encode/uvicorn/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/asgiref-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/click-7.0[${PYTHON_USEDEP}]
+ >=dev-python/h11-0.8[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/a2wsgi[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/httpx[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/python-dotenv[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/trustme[${PYTHON_USEDEP}]
+ >=dev-python/websockets-10.4[${PYTHON_USEDEP}]
+ dev-python/wsproto[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # too long path for unix socket
+ tests/test_config.py::test_bind_unix_socket_works_with_reload_or_workers
+ # need unpackaged httptools
+ "tests/middleware/test_logging.py::test_trace_logging_on_http_protocol[httptools]"
+ tests/protocols/test_http.py::test_fragmentation
+ # TODO
+ tests/protocols/test_websocket.py::test_connection_lost_before_handshake_complete
+ )
+ if [[ ${EPYTHON} == pypy3 ]]; then
+ # TODO
+ EPYTEST_DESELECT+=(
+ tests/middleware/test_logging.py::test_running_log_using_fd
+ )
+ fi
+
+ local EPYTEST_IGNORE=()
+ # love from Rust world
+ if ! has_version "dev-python/watchfiles[${PYTHON_USEDEP}]"; then
+ EPYTEST_IGNORE+=(
+ tests/supervisors/test_reload.py
+ )
+ fi
+
+ epytest
+}
+
+pkg_postinst() {
+ optfeature "auto reload on file changes" dev-python/watchfiles
+}