summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2022-07-29 12:48:43 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2022-07-29 12:48:43 +0000
commit592fbb5d52993361de4fc6aa46d50d38f1e60679 (patch)
tree6035c7ec474efccf595d7ef37df0a57082e86a10 /dev-python
parent2c101f45160c834802e206160f90e106fdc2aad4 (diff)
downloadbaldeagleos-repo-592fbb5d52993361de4fc6aa46d50d38f1e60679.tar.gz
baldeagleos-repo-592fbb5d52993361de4fc6aa46d50d38f1e60679.tar.xz
baldeagleos-repo-592fbb5d52993361de4fc6aa46d50d38f1e60679.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/PySDL2/Manifest1
-rw-r--r--dev-python/PySDL2/PySDL2-0.9.13.ebuild66
-rw-r--r--dev-python/asttokens/asttokens-2.0.5.ebuild15
-rw-r--r--dev-python/attrs/Manifest1
-rw-r--r--dev-python/attrs/attrs-22.1.0.ebuild37
-rw-r--r--dev-python/bleach/bleach-5.0.1.ebuild2
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.24.40.ebuild68
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.27.40.ebuild69
-rw-r--r--dev-python/chardet/chardet-5.0.0.ebuild2
-rw-r--r--dev-python/configupdater/configupdater-3.1.1.ebuild2
-rw-r--r--dev-python/cython/Manifest1
-rw-r--r--dev-python/cython/cython-0.29.32.ebuild90
-rw-r--r--dev-python/executing/Manifest1
-rw-r--r--dev-python/executing/executing-0.9.1.ebuild42
-rw-r--r--dev-python/flask-security/Manifest1
-rw-r--r--dev-python/flask-security/flask-security-4.1.5.ebuild67
-rw-r--r--dev-python/fsspec/Manifest1
-rw-r--r--dev-python/fsspec/fsspec-2022.7.1.ebuild58
-rw-r--r--dev-python/geventhttpclient/Manifest1
-rw-r--r--dev-python/geventhttpclient/geventhttpclient-2.0.ebuild52
-rw-r--r--dev-python/google-api-python-client/Manifest1
-rw-r--r--dev-python/google-api-python-client/google-api-python-client-2.55.0.ebuild53
-rw-r--r--dev-python/iminuit/Manifest1
-rw-r--r--dev-python/iminuit/iminuit-2.15.1.ebuild42
-rw-r--r--dev-python/importlib_metadata/importlib_metadata-4.12.0.ebuild2
-rw-r--r--dev-python/ini2toml/ini2toml-0.11-r1.ebuild2
-rw-r--r--dev-python/ini2toml/ini2toml-0.11.ebuild2
-rw-r--r--dev-python/jsonschema/Manifest1
-rw-r--r--dev-python/jsonschema/jsonschema-4.6.2.ebuild2
-rw-r--r--dev-python/jsonschema/jsonschema-4.8.0.ebuild53
-rw-r--r--dev-python/meson-python/Manifest1
-rw-r--r--dev-python/meson-python/meson-python-0.8.1.ebuild45
-rw-r--r--dev-python/nose2/nose2-0.12.0.ebuild2
-rw-r--r--dev-python/pdm-pep517/Manifest1
-rw-r--r--dev-python/pdm-pep517/pdm-pep517-1.0.3.ebuild58
-rw-r--r--dev-python/pikepdf/Manifest1
-rw-r--r--dev-python/pikepdf/pikepdf-5.4.2.ebuild61
-rw-r--r--dev-python/pip/Manifest1
-rw-r--r--dev-python/pip/files/pip-22.2.1-no-coverage.patch52
-rw-r--r--dev-python/pip/pip-22.2.1.ebuild132
-rw-r--r--dev-python/psycopg/Manifest1
-rw-r--r--dev-python/psycopg/psycopg-3.0.16.ebuild73
-rw-r--r--dev-python/pyopenssl/pyopenssl-22.0.0.ebuild2
-rw-r--r--dev-python/pyproject-fmt/pyproject-fmt-0.3.4.ebuild2
-rw-r--r--dev-python/pypugjs/Manifest1
-rw-r--r--dev-python/pypugjs/pypugjs-5.9.12.ebuild48
-rw-r--r--dev-python/pytest-mock/pytest-mock-3.8.2.ebuild2
-rw-r--r--dev-python/pytest-shell-utilities/Manifest1
-rw-r--r--dev-python/pytest-shell-utilities/pytest-shell-utilities-1.6.0.ebuild42
-rw-r--r--dev-python/python-nbxmpp/Manifest1
-rw-r--r--dev-python/python-nbxmpp/python-nbxmpp-3.1.1.ebuild32
-rw-r--r--dev-python/regex/Manifest1
-rw-r--r--dev-python/regex/regex-2022.7.25.ebuild35
-rw-r--r--dev-python/semantic_version/semantic_version-2.10.0.ebuild2
-rw-r--r--dev-python/sentry-sdk/Manifest1
-rw-r--r--dev-python/sentry-sdk/sentry-sdk-1.9.0.ebuild96
-rw-r--r--dev-python/serpent/serpent-1.41.ebuild2
-rw-r--r--dev-python/setproctitle/Manifest1
-rw-r--r--dev-python/setproctitle/setproctitle-1.3.0.ebuild22
-rw-r--r--dev-python/setuptools-rust/setuptools-rust-1.3.0.ebuild2
-rw-r--r--dev-python/sphinx-autodoc-typehints/Manifest1
-rw-r--r--dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-1.19.0.ebuild44
-rw-r--r--dev-python/sphinx-gallery/Manifest1
-rw-r--r--dev-python/sphinx-gallery/sphinx-gallery-0.11.0.ebuild44
-rw-r--r--dev-python/sphinx/Manifest1
-rw-r--r--dev-python/sphinx/sphinx-5.1.1.ebuild124
-rw-r--r--dev-python/sphinxcontrib-doxylink/Manifest1
-rw-r--r--dev-python/sphinxcontrib-doxylink/sphinxcontrib-doxylink-1.12.1.ebuild47
-rw-r--r--dev-python/tifffile/Manifest1
-rw-r--r--dev-python/tifffile/tifffile-2022.7.28.ebuild53
-rw-r--r--dev-python/virtualenv/Manifest1
-rw-r--r--dev-python/virtualenv/virtualenv-20.15.1.ebuild2
-rw-r--r--dev-python/virtualenv/virtualenv-20.16.2.ebuild106
-rw-r--r--dev-python/watchfiles/Manifest1
-rw-r--r--dev-python/watchfiles/watchfiles-0.16.1.ebuild109
-rw-r--r--dev-python/werkzeug/Manifest1
-rw-r--r--dev-python/werkzeug/werkzeug-2.2.1.ebuild66
79 files changed, 2038 insertions, 24 deletions
diff --git a/dev-python/PySDL2/Manifest b/dev-python/PySDL2/Manifest
index dddcf0dee0dd..44192d98cba7 100644
--- a/dev-python/PySDL2/Manifest
+++ b/dev-python/PySDL2/Manifest
@@ -1,2 +1,3 @@
DIST PySDL2-0.9.11.tar.gz 736026 BLAKE2B ebf5a98958681cc61155aeffdb67ca9d1aeef8143ca876b63772ce95b7bf23cc5708a01cfa83d3128d4fe20c2b714bf2f1e7dc64454c7d063590c55cfc236f24 SHA512 4e3383ef64f4f164d60a69a5a2c6ea153269b45661c9bba988d4c44a5cce7195cec0d29384d1855e9c9d507af2608bc808b9885449aea61c5ee51fc2d4f4af6f
DIST PySDL2-0.9.12.tar.gz 741668 BLAKE2B 82f1f63f0b637981a8e98966f34d721495764630f9f0f95e0f6fd4c428d8adf0a31c540f0dcc36da24f073b3485cdb4987e0deb79d7df484ed05bad93c17a2ed SHA512 e4dd5b11a8e1082751bc45b9a18c1c3f7ff977091a35c35965f93b1946f634ea096ba94088404153c712c42cf3b4a8876c9ae05496def51b296be55c31b3b59b
+DIST PySDL2-0.9.13.tar.gz 754811 BLAKE2B fe9d3fb32cac104303d67741c3b9e0d78d3d03198ed512464bbdf5bc487a5f4c9a92aafb100c53c02d8be87bb107034f67ebb72294ad67cc0a8b42ab7a678a31 SHA512 f866e7ed35e3ccfbb5b98f797e87d5b20c6f7dadbc3396b297cbb6c2d83a7f3290fde63940a4d8f190e40a4a9269d2df9efc1932d9578d3df1617e5fcbe6ecad
diff --git a/dev-python/PySDL2/PySDL2-0.9.13.ebuild b/dev-python/PySDL2/PySDL2-0.9.13.ebuild
new file mode 100644
index 000000000000..94ed1364ab87
--- /dev/null
+++ b/dev-python/PySDL2/PySDL2-0.9.13.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2022 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} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python (ctypes) bindings for SDL2 libraries"
+HOMEPAGE="
+ https://github.com/py-sdl/py-sdl2/
+ https://pypi.org/project/PySDL2/
+"
+SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
+
+LICENSE="|| ( public-domain CC0-1.0 ZLIB )"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# Optional deps:
+# - dev-python/numpy,
+# - dev-python/pillow,
+# - media-libs/sdl2-* (loaded dynamically via ctypes).
+#
+# If a reverse dependency needs the specific module, it should
+# explicitly depend on the optional module in question. You also
+# probably need to explicitly require some media-libs/libsdl2 flags.
+RDEPEND="media-libs/libsdl2"
+
+# Require all of SDL2 libraries and at least the most common subsystems
+# for better test coverage.
+DEPEND="
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ media-libs/libsdl2[joystick,sound,video]
+ media-libs/sdl2-gfx
+ media-libs/sdl2-image[gif,jpeg,png,tiff,webp]
+ || (
+ media-libs/sdl2-mixer[flac]
+ media-libs/sdl2-mixer[midi]
+ media-libs/sdl2-mixer[mod]
+ media-libs/sdl2-mixer[mp3]
+ media-libs/sdl2-mixer[opus]
+ )
+ media-libs/sdl2-ttf
+ )"
+
+EPYTEST_DESELECT=(
+ # Both tests fail and seem machine-dependent?
+ sdl2/test/sdlttf_test.py::test_TTF_SetFontSize
+ sdl2/test/sdlttf_test.py::test_TTF_SetFontSizeDPI
+)
+
+distutils_enable_tests pytest
+
+src_test() {
+ # from .travis.yml
+ local -x SDL_VIDEODRIVER=dummy
+ local -x SDL_AUDIODRIVER=dummy
+ local -x SDL_RENDER_DRIVER=software
+
+ distutils-r1_src_test
+}
diff --git a/dev-python/asttokens/asttokens-2.0.5.ebuild b/dev-python/asttokens/asttokens-2.0.5.ebuild
index 968d978f6312..23b1e8227535 100644
--- a/dev-python/asttokens/asttokens-2.0.5.ebuild
+++ b/dev-python/asttokens/asttokens-2.0.5.ebuild
@@ -27,13 +27,10 @@ BDEPEND="
distutils_enable_tests pytest
-export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
-
-python_test() {
- local deselect=()
- [[ ${EPYTHON} == python3.8 ]] && deselect+=(
- tests/test_astroid.py::TestAstroid::test_slices
- )
+EPYTEST_DESELECT=(
+ # test suite itself broken with new astroid versions, upstream less care
+ # https://github.com/gristlabs/asttokens/issues/79
+ tests/test_astroid.py
+)
- epytest ${deselect[@]/#/--deselect }
-}
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
diff --git a/dev-python/attrs/Manifest b/dev-python/attrs/Manifest
index c4394f891c6f..c5fe304d927e 100644
--- a/dev-python/attrs/Manifest
+++ b/dev-python/attrs/Manifest
@@ -1 +1,2 @@
DIST attrs-21.4.0.tar.gz 201839 BLAKE2B f8e9ca1385efe6f5b9bf468f622f0bf5390830c5f3c3526821446113146a61460b17e8750ea763f6da50221a8aa65f5f1ff98a6ddf69b1a87344508ca6495560 SHA512 5a52776eb505c8a354912fa037a9710e49830fa6ad37272cb6d8c3298f4179a5b237e36cd7db3b1c9af19fbf0194ad6b83c3db9a473f9349769180073273ba65
+DIST attrs-22.1.0.tar.gz 201288 BLAKE2B 5da48b3cbcd99cdcc531a0859be264a4d209778caa53bd95480a103549b816c8a805079e1555fce38eb33f8bd3d5b7bfa6f814ef2b60dc405bda6686c7746f0b SHA512 447637bc82b31d565479e364869b996eaf7b67e526ad97f79ba1c27f287bbb25a2c40663e35437bc19037f605fac9322bd35f303f2769f0eb2ee673900551885
diff --git a/dev-python/attrs/attrs-22.1.0.ebuild b/dev-python/attrs/attrs-22.1.0.ebuild
new file mode 100644
index 000000000000..23cbd546a771
--- /dev/null
+++ b/dev-python/attrs/attrs-22.1.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2022 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} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Attributes without boilerplate"
+HOMEPAGE="
+ https://github.com/python-attrs/attrs/
+ https://attrs.readthedocs.io/
+ https://pypi.org/project/attrs/
+"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+
+RDEPEND="
+ dev-python/zope-interface[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep sqlite)
+ $(python_gen_cond_dep '
+ dev-python/cloudpickle[${PYTHON_USEDEP}]
+ ' python3_{8..10})
+ >=dev-python/hypothesis-3.6.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-4.3.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/bleach/bleach-5.0.1.ebuild b/dev-python/bleach/bleach-5.0.1.ebuild
index fd20b3a3d47d..98027a40334f 100644
--- a/dev-python/bleach/bleach-5.0.1.ebuild
+++ b/dev-python/bleach/bleach-5.0.1.ebuild
@@ -17,7 +17,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
RDEPEND="
dev-python/packaging[${PYTHON_USEDEP}]
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 51eedb136387..c706364b9664 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -2,3 +2,4 @@ DIST boto3-1.24.26.gh.tar.gz 515531 BLAKE2B 34f99c4dd224731e07c2f0b175d6d172661c
DIST boto3-1.24.31.gh.tar.gz 519387 BLAKE2B 8581d1018f0e1f0802779851edb52fdb6860c44bf46e6315eddd3b603cb65a0763707686286aa06447e90df6c8e6cae3de0e6bae8a9836ad90e5a3f4335797bf SHA512 370773f2365f4dcc7b73d0828bc84f0de5c15b189d23b799738c2358b1b0119e5e457f26529b7a6c90d637c2142121a2874d088671715c8deb4b793afbf7fd38
DIST boto3-1.24.36.gh.tar.gz 522156 BLAKE2B b76cb50f01ff85c960a0984f950e72f02ac6e85131fd344142b886a3c745cb8b9073f865527911b88c462912413fce6df4066752ab5eec8ad1561d349ad22437 SHA512 fe00e78cc522248c449f83f869bb7d76793db9aa436259e74d0aa25984a02876191a7df41b1ad7658b06e418f248ad616743698c87a5c9696f77a196a53c561e
DIST boto3-1.24.37.gh.tar.gz 522233 BLAKE2B ab361fd7443ff499c18a8e86c9a80da14e6a1d960fbac26d2e12d8806684daf169010225ce7a402626a814cb29fcc281ea61d293eb5eb197f48dccdb8a7a14ef SHA512 b75ea002f3a3e3b8c498797278adbf5f7d4b220baf7b8fa3be8c972bf2981933d962878b7d96a7c01c9a28be267effea34b48692716e7eabfa077ede380c816e
+DIST boto3-1.24.40.gh.tar.gz 524303 BLAKE2B 750d366914ebbfaab262a88d96afb1df6f16c108e1e07537e0ae2234df95500c7dabaeae27afc5c5cbb8b0370b3a088b97c16a8c48e3d2f5741744841f29fa1b SHA512 240b78619783a30919dc62c6240b07d51c8a4e4ee0fcb6c4daba19c6d5830d8623923de6cb984e7310bf5e745b0d20a2471578a2f8650089aca96e9575d3542a
diff --git a/dev-python/boto3/boto3-1.24.40.ebuild b/dev-python/boto3/boto3-1.24.40.ebuild
new file mode 100644
index 000000000000..e4a98e2e28f5
--- /dev/null
+++ b/dev-python/boto3/boto3-1.24.40.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2022 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} )
+
+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 78f6879011d4..c58306720607 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -2,3 +2,4 @@ DIST botocore-1.27.26.tar.gz 9167551 BLAKE2B 9e95c1e6e5261b08247615446a589318d92
DIST botocore-1.27.31.tar.gz 9184651 BLAKE2B 01dcd9e94490923f7d0f463d3019007f58c5e441ae65ea2c365ed20417e8f7b532228a335c6f461ca97411269aaa78aa48fa33cccd8b2e45a6665c2410bb4352 SHA512 27f810e0519144fae71600ea7f6d9a15cca30386ee0f2b06beeeb64c06da8728b54709fb770673f708697dd930fe744703728ce00b6a1149361ab550fef9ccb4
DIST botocore-1.27.36.gh.tar.gz 9465835 BLAKE2B c22c341d6e762316f3d8719bd8c1fd52140642739361a7ade326d739005dbd141a6b4e1798287b40bf7ba40cd5e158d36f195893d529f5ba375b06087d2122b9 SHA512 09ef156b3c0457ceef341bf26e3f060d3e91808f1da66d1dbb06ba2826be3c61e047383dc9d8a719bb8e172e91f6475f4613c14d30c57c6a909b51c8ba7334cc
DIST botocore-1.27.37.gh.tar.gz 9466348 BLAKE2B 56c670e22204dcd12164094d52b1ed4ec820241f1423738e008f24762a5702149f2eb57283ec194a77cc2d57bc1183d91a90ca55ae0cf977aa1abdacb922ed86 SHA512 adb18c54a757077f7cff4b9b6716d015998432faeb3eb7d0a631631e5b0cf7814b40843ba379841cef920d3eca1367623f52491f53fed9f318898b3a6197eac9
+DIST botocore-1.27.40.gh.tar.gz 9491717 BLAKE2B 4c4e96969432426b711642265573b1a3026ea60dbee2328ff34f0c64ad5c911bb773078e8f86882c94abc2b340567e65475ebed146651e92307ddf1629cbe2a0 SHA512 03d174f3c8490470a40ba54568b3ec1fed740acae143964db0618e7d57fd03fd6aae992d7e9dfe3882eae70a082a6974d3356cd7e2c49625eec8270fcb2ef784
diff --git a/dev-python/botocore/botocore-1.27.40.ebuild b/dev-python/botocore/botocore-1.27.40.ebuild
new file mode 100644
index 000000000000..6a8e7e93c947
--- /dev/null
+++ b/dev-python/botocore/botocore-1.27.40.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2022 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} )
+
+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
+ )
+
+ epytest tests/{functional,unit} -n "$(makeopts_jobs)"
+}
diff --git a/dev-python/chardet/chardet-5.0.0.ebuild b/dev-python/chardet/chardet-5.0.0.ebuild
index 242b6c45364b..06975eb9d807 100644
--- a/dev-python/chardet/chardet-5.0.0.ebuild
+++ b/dev-python/chardet/chardet-5.0.0.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="LGPL-2.1"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
distutils_enable_tests pytest
diff --git a/dev-python/configupdater/configupdater-3.1.1.ebuild b/dev-python/configupdater/configupdater-3.1.1.ebuild
index 75bea26b0c1a..eafefffca871 100644
--- a/dev-python/configupdater/configupdater-3.1.1.ebuild
+++ b/dev-python/configupdater/configupdater-3.1.1.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="MIT PSF-2 PYTHON"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv"
+KEYWORDS="~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc"
distutils_enable_tests pytest
diff --git a/dev-python/cython/Manifest b/dev-python/cython/Manifest
index deeba64d3ae8..3f80946566a6 100644
--- a/dev-python/cython/Manifest
+++ b/dev-python/cython/Manifest
@@ -1 +1,2 @@
DIST cython-0.29.30.gh.tar.gz 2105561 BLAKE2B c995bc710d2c397b8d6e4edee0f989e43969a51efb29b83643149d8c4110ae0331a35b9cc2ec7a45a43fea19ab8d63f1ef934f92d451c62d057e0e04ec79a871 SHA512 f6b07adfa1ebe9d52dfb72857ffd40b35d8777914299de101c7b96ee2d64cdd85ac0374ed41b382881b1f3ce535a9af9419dfabee9a4781a3f818125292627d4
+DIST cython-0.29.32.gh.tar.gz 2110417 BLAKE2B 008ffe325c87d165bf45afb2ff92db5286f611bbe425d0e9f18b530202135ca21f5f5ab564a4d0c6251ec2479ea0fd19207274a255fb1faf8863d3b067d17ae9 SHA512 55462792fa70d8edf60aa470627ab494918d7297fd7d282a7a54da76ee5a180233108404a1c8f3d79f6408f19b6e4f46b36e59fd47c38ede24f061f374437b6f
diff --git a/dev-python/cython/cython-0.29.32.ebuild b/dev-python/cython/cython-0.29.32.ebuild
new file mode 100644
index 000000000000..4a76e6166a38
--- /dev/null
+++ b/dev-python/cython/cython-0.29.32.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2022 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} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1 toolchain-funcs elisp-common
+
+DESCRIPTION="A Python to C compiler"
+HOMEPAGE="
+ https://cython.org/
+ https://github.com/cython/cython/
+ https://pypi.org/project/Cython/
+"
+SRC_URI="
+ https://github.com/cython/cython/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris ~x86-solaris"
+IUSE="emacs test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ emacs? ( >=app-editors/emacs-23.1:* )
+"
+BDEPEND="
+ ${RDEPEND}
+ test? (
+ $(python_gen_cond_dep '
+ dev-python/numpy[${PYTHON_USEDEP}]
+ ' python3_{8..10})
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-0.29.22-spawn-multiprocessing.patch"
+ "${FILESDIR}/${PN}-0.29.23-test_exceptions-py310.patch"
+)
+
+SITEFILE=50cython-gentoo.el
+
+distutils_enable_sphinx docs
+
+python_compile() {
+ # Python gets confused when it is in sys.path before build.
+ local -x PYTHONPATH=
+
+ distutils-r1_python_compile
+}
+
+python_compile_all() {
+ use emacs && elisp-compile Tools/cython-mode.el
+}
+
+python_test() {
+ if has "${EPYTHON}" pypy3 python3.11; then
+ einfo "Skipping tests on ${EPYTHON} (xfail)"
+ return
+ fi
+
+ tc-export CC
+ # https://github.com/cython/cython/issues/1911
+ local -x CFLAGS="${CFLAGS} -fno-strict-overflow"
+ "${PYTHON}" runtests.py -vv --work-dir "${BUILD_DIR}"/tests ||
+ die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+ local DOCS=( CHANGES.rst README.rst ToDo.txt USAGE.txt )
+ distutils-r1_python_install_all
+
+ if use emacs; then
+ elisp-install ${PN} Tools/cython-mode.*
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-python/executing/Manifest b/dev-python/executing/Manifest
index 36e284379a1a..1af86a9bd601 100644
--- a/dev-python/executing/Manifest
+++ b/dev-python/executing/Manifest
@@ -1,2 +1,3 @@
DIST executing-0.8.3.gh.tar.gz 495111 BLAKE2B ccb1a7df974f94b48960fc84a8365f6e57a7f34590972192e692f03340662e2bde97498c2ebf5617e45d8dfb6e866fd7de290644adb58e5338b2e0fdccc215f1 SHA512 4e01c1f48734c9568412b84160150e7e50ebdf5ba3dd466cf9d37b7f875ca2993915db75e2f6dd8e75e60b7b952fb0146928a41dde100ad38384b9be2ed60522
DIST executing-0.9.0.gh.tar.gz 506632 BLAKE2B 195e6dc896bcb0add7377ba7fbfdaaf09322a5480127150a3c37eef94f57d24dfcc3c83c5a0dd7c9154c5bb7688f47754550d45adafb82d72a4b0c38d094dd50 SHA512 461a8350d55ab0346de35d7d8423164b616e2ec8152d229e3462208497b478e51fd75085dc11f7d3cace42a82d4c2cbd1b102a680aa6c2b31fa18f1f9ec69cdc
+DIST executing-0.9.1.gh.tar.gz 506644 BLAKE2B 04d7012a348186c44c892d9f442b33042a9e01951c47b1d9a42ca22195dc7fa0b8f17ebf552ca65e9aa038942a6962941aeafee2d15bdcef834d413d5512c910 SHA512 98ba2f155324e05ae927d0a97ec6ff54bcfd8d38551dde872f12aedfefc2297003b50d17e6e32e89a909a9b1e70cec9d474db03d6a4f9fb1814ebcca045bb982
diff --git a/dev-python/executing/executing-0.9.1.ebuild b/dev-python/executing/executing-0.9.1.ebuild
new file mode 100644
index 000000000000..a4f6970d55d8
--- /dev/null
+++ b/dev-python/executing/executing-0.9.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2020-2022 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} )
+
+inherit distutils-r1
+
+DESCRIPTION="Get information about what a Python frame is currently doing"
+HOMEPAGE="
+ https://github.com/alexmojaki/executing/
+ https://pypi.org/project/executing/
+"
+SRC_URI="
+ https://github.com/alexmojaki/executing/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+# asttokens is optional runtime dep
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/asttokens[${PYTHON_USEDEP}]
+ dev-python/littleutils[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+python_test() {
+ # this test explodes when collected by pytest
+ "${EPYTHON}" tests/test_main.py || die "Tests failed with ${EPYTHON}"
+ epytest tests/test_pytest.py
+}
diff --git a/dev-python/flask-security/Manifest b/dev-python/flask-security/Manifest
index 07841efb0a27..372f0361383a 100644
--- a/dev-python/flask-security/Manifest
+++ b/dev-python/flask-security/Manifest
@@ -1 +1,2 @@
DIST flask-security-4.1.4.gh.tar.gz 408532 BLAKE2B 5fd401da8a907ff56ab7fe1fc79ec586222c26d60d921534afea4743cbc6840098f8a1d231741f83f061e2a4f747c4937be848aa4bfee8b3cf4bc06a8928e437 SHA512 d9ec87d1d2baa11b00db437135060630ea06451d96057fc8712ced8bc433fb6779f7b2561ad1c96d8f192a43acdc93dddf7f44ec75f89297204fd1796dcad1df
+DIST flask-security-4.1.5.gh.tar.gz 408704 BLAKE2B 18a1711e99794293fec17cca90ab9fcc7437c4882d7f14fb8c5abfddf137724a37ecf968cebd3801ef509f5b34f9671428405477894166d9c4350e1fd4a59054 SHA512 cf0a4ea6d8ad519ae5055898d2b7eb1bea8b3ceb3fffd2a79b47b92c6ccb72b692ed9483088fbea3987ff6fa3aaf60fcc388b7553a7e3e6ba8edfce63c714ad3
diff --git a/dev-python/flask-security/flask-security-4.1.5.ebuild b/dev-python/flask-security/flask-security-4.1.5.ebuild
new file mode 100644
index 000000000000..6533123f2db3
--- /dev/null
+++ b/dev-python/flask-security/flask-security-4.1.5.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2022 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} )
+
+inherit distutils-r1
+
+DESCRIPTION="Simple security for Flask apps"
+HOMEPAGE="
+ https://github.com/Flask-Middleware/flask-security/
+ https://pypi.org/project/Flask-Security-Too/"
+SRC_URI="
+ https://github.com/Flask-Middleware/flask-security/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/bleach-3.3.1[${PYTHON_USEDEP}]
+ >=dev-python/blinker-1.4[${PYTHON_USEDEP}]
+ dev-python/cachetools[${PYTHON_USEDEP}]
+ >=dev-python/flask-1.1.1[${PYTHON_USEDEP}]
+ >=dev-python/flask-babelex-0.9.3[${PYTHON_USEDEP}]
+ >=dev-python/flask-login-0.4.1[${PYTHON_USEDEP}]
+ >=dev-python/flask-principal-0.4.0[${PYTHON_USEDEP}]
+ >=dev-python/flask-wtf-0.14.3[${PYTHON_USEDEP}]
+ >=dev-python/itsdangerous-1.1.0[${PYTHON_USEDEP}]
+ >=dev-python/passlib-1.7.2[${PYTHON_USEDEP}]
+ >=dev-python/python-email-validator-1.1.1[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ dev-python/Babel[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/argon2-cffi-19.1.0[${PYTHON_USEDEP}]
+ >=dev-python/bcrypt-3.1.5[${PYTHON_USEDEP}]
+ dev-python/bleach[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-2.3.1[${PYTHON_USEDEP}]
+ >=dev-python/flask-mail-0.9.1[${PYTHON_USEDEP}]
+ >=dev-python/flask-sqlalchemy-2.3[${PYTHON_USEDEP}]
+ >=dev-python/mongomock-3.19.0[${PYTHON_USEDEP}]
+ >=dev-python/peewee-3.11.2[${PYTHON_USEDEP}]
+ >=dev-python/phonenumbers-8.11.1[${PYTHON_USEDEP}]
+ >=dev-python/psycopg-2.8.4:2[${PYTHON_USEDEP}]
+ >=dev-python/pymysql-0.9.3[${PYTHON_USEDEP}]
+ >=dev-python/pyqrcode-1.2[${PYTHON_USEDEP}]
+ >=dev-python/zxcvbn-4.4.28[${PYTHON_USEDEP}]
+ >=dev-python/pony-0.7.11[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -e 's/--cache-clear/-p no:httpbin/' -i pytest.ini || die
+ distutils-r1_src_prepare
+}
+
+python_configure_all() {
+ esetup.py compile_catalog
+}
diff --git a/dev-python/fsspec/Manifest b/dev-python/fsspec/Manifest
index 10a101bed812..7aaa962afbdb 100644
--- a/dev-python/fsspec/Manifest
+++ b/dev-python/fsspec/Manifest
@@ -1 +1,2 @@
DIST filesystem_spec-2022.5.0.gh.tar.gz 337607 BLAKE2B 80f22e6c1ca0ec4194b41a85171d466792812c456129a05c286d8c46de950aeed4cd7a0ee01082e9dbfee5b89ca1a36441f961d7e61be816eb783cad8bca0979 SHA512 687dd0e7018e04d719f7c11e2238afe06f4e8d5eb7193e24dd000dbd79e5c52bed5fde919de47b0dab2d66e9ba93f28370a32f2458a6771e728b0ece68609504
+DIST filesystem_spec-2022.7.1.gh.tar.gz 338526 BLAKE2B ef19c41a4e9fe3fb1a5146967bab505c26590aa4c074152523b705d8cac5eeb6e30834e1adbbb1669f5bbb58891cabd3960208cdfa9f619e0bbc5cbfe5f4ef55 SHA512 07178bf22e07091935256296b303e273c03e2ddc15a5aa1110f84c27cadaf9c650204e37c472cb10280e92f24b01fa8b16fe32db21a30d14d232c5a11e05a45c
diff --git a/dev-python/fsspec/fsspec-2022.7.1.ebuild b/dev-python/fsspec/fsspec-2022.7.1.ebuild
new file mode 100644
index 000000000000..e6bba4b5cfd5
--- /dev/null
+++ b/dev-python/fsspec/fsspec-2022.7.1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 2020-2022 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} )
+
+inherit distutils-r1
+
+MY_P=filesystem_spec-${PV}
+DESCRIPTION="A specification that python filesystems should adhere to"
+HOMEPAGE="
+ https://github.com/fsspec/filesystem_spec/
+ https://pypi.org/project/fsspec/
+"
+SRC_URI="
+ https://github.com/fsspec/filesystem_spec/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/tqdm[${PYTHON_USEDEP}]
+ dev-vcs/git
+ )
+"
+
+distutils_enable_tests pytest
+
+src_test() {
+ git config --global user.email "you@example.com" || die
+ git config --global user.name "Your Name" || die
+ distutils-r1_src_test
+}
+
+EPYTEST_DESELECT=(
+ fsspec/tests/test_spec.py::test_find
+)
+
+EPYTEST_IGNORE=(
+ # sftp and smb require server started via docker
+ fsspec/implementations/tests/test_dbfs.py
+ fsspec/implementations/tests/test_sftp.py
+ fsspec/implementations/tests/test_smb.py
+ # unhappy about dev-python/fuse-python (?)
+ fsspec/tests/test_fuse.py
+)
diff --git a/dev-python/geventhttpclient/Manifest b/dev-python/geventhttpclient/Manifest
index 0697e6a0ca7c..9b9982cfb17c 100644
--- a/dev-python/geventhttpclient/Manifest
+++ b/dev-python/geventhttpclient/Manifest
@@ -1 +1,2 @@
DIST geventhttpclient-1.5.5.tar.gz 59566 BLAKE2B f43ffe9880eefe77f19adc00bcef612df057f96e256f50ca4081658d7e0d01deca2473da3d2055dbc1cb98fc4f7f0a7442809fdcab635c43042792e2601efdb9 SHA512 89efe008099935ac8715ddf09c13e70c1a3552da50c495522b2a62e1ff51a407808e6b797f8fd3b0863a3a59e5b03e604bda8b1027c0326da75cb1fddb5d0fa3
+DIST geventhttpclient-2.0.tar.gz 73677 BLAKE2B b466f7153e646b3d9af0b301789aaa92df28dad505c375ec7fdcfb8d888d8942edba3f4c776ef4fc252756fb2a37bbee7d61c4a1e912c8c7d716a57fd49fee0e SHA512 1f53cf8636e6baba4cb0d8d7b233f903efec2d74413cfb2d768bff94f3a9b91ae59444981a1399b010e73120c390b52b1449424571c7ee9bdad818e5ce72ae8c
diff --git a/dev-python/geventhttpclient/geventhttpclient-2.0.ebuild b/dev-python/geventhttpclient/geventhttpclient-2.0.ebuild
new file mode 100644
index 000000000000..7311df75b222
--- /dev/null
+++ b/dev-python/geventhttpclient/geventhttpclient-2.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2022 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} )
+
+inherit distutils-r1
+
+DESCRIPTION="A high performance, concurrent HTTP client library for Python using gevent"
+HOMEPAGE="
+ https://github.com/geventhttpclient/geventhttpclient/
+ https://pypi.org/project/geventhttpclient/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+
+RDEPEND="
+ app-arch/brotli[python,${PYTHON_USEDEP}]
+ dev-python/certifi[${PYTHON_USEDEP}]
+ dev-python/gevent[events(+),${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # Avoid ModuleNotFoundError for tests we skip later
+ sed -e '/^import dpkt.ssl/d' -i src/geventhttpclient/tests/test_ssl.py || die
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # These SNI tests require dpkt which is not in the tree
+ src/geventhttpclient/tests/test_ssl.py::test_implicit_sni_from_host_in_ssl
+ src/geventhttpclient/tests/test_ssl.py::test_implicit_sni_from_header_in_ssl
+ src/geventhttpclient/tests/test_ssl.py::test_explicit_sni_in_ssl
+ )
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ # Skip tests which require internet access
+ epytest -m "not online"
+}
diff --git a/dev-python/google-api-python-client/Manifest b/dev-python/google-api-python-client/Manifest
index 88305cf8c176..60be64d2bd85 100644
--- a/dev-python/google-api-python-client/Manifest
+++ b/dev-python/google-api-python-client/Manifest
@@ -1,2 +1,3 @@
DIST google-api-python-client-2.53.0.gh.tar.gz 32251370 BLAKE2B 880024a220bb793b53042c8b2192dee666b7f5ad6dd8b0b68d51ff7b18ebd2ba220974f86656ac13b4c421c191ec66b269007a3f68a1992b0672623db046ef6b SHA512 1cb251d8abbec0b33b62b661ea8235224e94f807571b47e8422b6908b6636f844c639328cf0c07b4820a083b265e71f54dc3f6c48447f0cfd20bca738d7ab86a
DIST google-api-python-client-2.54.0.gh.tar.gz 32389268 BLAKE2B 568ff657ea5093ff927208cd38d0125bf4aea8b725c5ded0a232c4de77f59c97f639b7f2b0ab8cf0e121bafd4512c23f9ac4c3c6cce6b6ab407c6ad2bb5a4983 SHA512 f33525bee9b6cede8955af4e208b64d1c82185cff08173d9ae30a704c3239b9a2ee9972e083fd4a823091b76669a7df02bf60cd950a3e20ddf21c6fd2e5ee18b
+DIST google-api-python-client-2.55.0.gh.tar.gz 32614590 BLAKE2B f7344903e4782940cb277b0b4ebc48b36c5b3403ea7f309205c4b27bee3488ecc5cd83b0487989da56b840dda7b0661f598c21307ba9afc9b52137f3b155737d SHA512 c674c038e911140e3ad64426be629d1498db382d96d18a5a51a4c2d5cb4375ad84e21e5dd68aedfa29b4bdc017d7996351f42ff34bff293a4d2c8cfb26820f0d
diff --git a/dev-python/google-api-python-client/google-api-python-client-2.55.0.ebuild b/dev-python/google-api-python-client/google-api-python-client-2.55.0.ebuild
new file mode 100644
index 000000000000..95188afdf1fa
--- /dev/null
+++ b/dev-python/google-api-python-client/google-api-python-client-2.55.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2022 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} )
+
+inherit distutils-r1
+
+DESCRIPTION="Google API Client for Python"
+HOMEPAGE="
+ https://github.com/googleapis/google-api-python-client/
+ https://pypi.org/project/google-api-python-client/
+"
+SRC_URI="
+ https://github.com/googleapis/google-api-python-client/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/httplib2-0.15[${PYTHON_USEDEP}]
+ <dev-python/httplib2-1[${PYTHON_USEDEP}]
+ >=dev-python/google-api-core-2.3.1[${PYTHON_USEDEP}]
+ >=dev-python/google-auth-1.35.0[${PYTHON_USEDEP}]
+ >=dev-python/google-auth-httplib2-0.1.0[${PYTHON_USEDEP}]
+ >=dev-python/uritemplate-3.0.0[${PYTHON_USEDEP}]
+ <dev-python/uritemplate-5[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/oauth2client[${PYTHON_USEDEP}]
+ dev-python/pandas[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # require Internet access (and credentials)
+ tests/test_discovery.py::DiscoveryErrors::test_credentials_and_credentials_file_mutually_exclusive
+ tests/test_discovery.py::DiscoveryFromDocument::test_api_endpoint_override_from_client_options_mapping_object
+ )
+
+ epytest tests
+}
diff --git a/dev-python/iminuit/Manifest b/dev-python/iminuit/Manifest
index 0219931648e5..d726cb7934ea 100644
--- a/dev-python/iminuit/Manifest
+++ b/dev-python/iminuit/Manifest
@@ -4,3 +4,4 @@ DIST iminuit-2.12.1.tar.gz 420488 BLAKE2B 8910017f27d683b5129a506c7536def9b70b3d
DIST iminuit-2.12.2.tar.gz 420639 BLAKE2B b158dd0916d5de229a1af16c402d8f51fd01cb9ed8e894677c2cb941fb587ac10ec94ce6787fb76291315c4e91cbf6c1492e65b821580a395385b2f50a38cdfd SHA512 620cfe19862ca6559ea5b2bc3f04a3212d8041e6de97056a17fe1e2a9dfe37d1c2128ae4bf6b2a5b796ce48719eeaa0d31dd025a0f469f401b1d9858685b3c82
DIST iminuit-2.13.0.tar.gz 422872 BLAKE2B 756c43cfa89037ee80c274e0e4e9a70fe8fbbc3dd6508964361221740f8b159657d944c2c1fe32056ce0118489ad427c074f822ec6e8c9b809cc04cf34e9be45 SHA512 4a7d4eab7ea996069fce439eeaf9459d86d35d8cb95efb3893601f30cabab28c56da8ada7ae4ae1b9d0b8ce41f8d4ecc36e0a98a5e67ca1f739b40dda61cfd54
DIST iminuit-2.14.0.tar.gz 427380 BLAKE2B 1ed6119bb6ee3ed91a6f40064959c138d12526d534520104cede88f14f298ff25f51d3e17515b3d3b78b7cbb4361a6cb704e24dc02930ad9414c42fed96c830c SHA512 8370c62a02e99e4eaf19153fabb6dc1dbd5db50fed94df73be28bbdc3b5f2d27cb1e770e5d6a031cbf780799363c69da0fb78e12a7f8cdc832e6120e4e78bd0b
+DIST iminuit-2.15.1.tar.gz 429180 BLAKE2B b23f2200cc2279136bc5fa01bdd26f44f9cdad8150e503ef11ac70916f1ec52f9e1568a2ab0c5dcb9a8db714580c036fb2764e3a36f866bde87614d0c62e1867 SHA512 e651fedc9c387a21b07201fc5e3cf1f76d8ab6bf50d276068c17fc8a19262afcb2fcc8204619a090a58514cf1e67d372141fc3c558f1c53beab405ea404e8c0d
diff --git a/dev-python/iminuit/iminuit-2.15.1.ebuild b/dev-python/iminuit/iminuit-2.15.1.ebuild
new file mode 100644
index 000000000000..4bc2076a752f
--- /dev/null
+++ b/dev-python/iminuit/iminuit-2.15.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2022 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} )
+
+# forced implicitly
+CMAKE_MAKEFILE_GENERATOR=emake
+inherit cmake distutils-r1 virtualx
+
+DESCRIPTION="Minuit numerical function minimization in Python"
+HOMEPAGE="https://github.com/scikit-hep/iminuit/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="MIT LGPL-2.1"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ dev-python/numpy[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+ test? (
+ dev-python/ipython[${PYTHON_USEDEP}]
+ dev-python/ipywidgets[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/scipy[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_test() {
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ epytest -p no:pytest-describe || die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/importlib_metadata/importlib_metadata-4.12.0.ebuild b/dev-python/importlib_metadata/importlib_metadata-4.12.0.ebuild
index 9f2607c4bb0d..541d4a848602 100644
--- a/dev-python/importlib_metadata/importlib_metadata-4.12.0.ebuild
+++ b/dev-python/importlib_metadata/importlib_metadata-4.12.0.ebuild
@@ -17,7 +17,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
RDEPEND="
dev-python/zipp[${PYTHON_USEDEP}]
diff --git a/dev-python/ini2toml/ini2toml-0.11-r1.ebuild b/dev-python/ini2toml/ini2toml-0.11-r1.ebuild
index 02d3d28e6ee5..400fcec16de7 100644
--- a/dev-python/ini2toml/ini2toml-0.11-r1.ebuild
+++ b/dev-python/ini2toml/ini2toml-0.11-r1.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="MPL-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv"
+KEYWORDS="~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc"
RDEPEND="
>=dev-python/packaging-20.7[${PYTHON_USEDEP}]
diff --git a/dev-python/ini2toml/ini2toml-0.11.ebuild b/dev-python/ini2toml/ini2toml-0.11.ebuild
index 810211c2516e..6e6bc3eeb9c6 100644
--- a/dev-python/ini2toml/ini2toml-0.11.ebuild
+++ b/dev-python/ini2toml/ini2toml-0.11.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="MPL-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
>=dev-python/packaging-20.7[${PYTHON_USEDEP}]
diff --git a/dev-python/jsonschema/Manifest b/dev-python/jsonschema/Manifest
index 3aef010825e1..d834174d6328 100644
--- a/dev-python/jsonschema/Manifest
+++ b/dev-python/jsonschema/Manifest
@@ -3,3 +3,4 @@ DIST jsonschema-4.6.1.tar.gz 278452 BLAKE2B 0b5c90b790cf7430bfbea4b38f90acec6fc2
DIST jsonschema-4.6.2.tar.gz 275975 BLAKE2B 7c587e8b5c5eff097390e6254ae633445ffece2bd3e9c003dca730bd332c4d3c236ea10225dc81b95ef9359a9309831290b106a07e80945574dcc2937bcd4983 SHA512 e41d6bda1bd6b12174201a70b5ad5209ab7c445faa6c947408f0fbc255839f3379ffe8b539760d993b435972936e4052300dbc420d4b87051f33180bced7efb2
DIST jsonschema-4.7.1.tar.gz 278393 BLAKE2B 6840e84fac982c011c8ee7f7112d5dec0575f8491efa00b319e4d7a1d36f306a893a77ce962265505efe2493266fa6da932fe744dbf9906c2a5439d19e291135 SHA512 5fa43906a2d766c8b568f375ace8ff96d131dff634fc3c65ab9c8f4a70e973935f3626e4537ab8a04d374dd0b5e6a311849abed0dde4faabd53a2d48cd6a5ac7
DIST jsonschema-4.7.2.tar.gz 278495 BLAKE2B 55c25847e210e0bdd3bec672b4b6a4eb1a2e2ec5167c115c34a2d0b2de079a00eaff8d901386b475fc26660887090896e78e3a38c1805f5b767fa1eece740e3b SHA512 c624d7bf317ca20fd8cdd248ec7d7679fde907ab304f1a092fc7a172464f43e41904d3f88df57e1351043b978448f51166a09af3625f00a9ad4d7353033b80af
+DIST jsonschema-4.8.0.tar.gz 279424 BLAKE2B 9e8936bde13841f9edf42ffe214ce8d1aaae8b9be4c3040871f228399a31b4292e8cfbf4bf4261822ca1b88622cb69cdf0d55bd2cc51bf191f6e364e9bfb94f8 SHA512 75a7593eb8b0163ba428f507ed4fd9fa6d51567f284776af96f4d79cb507a69666cc048034bfa3a401f960295779e935562dde4e97cf3f7b3b4571bc28b9dde7
diff --git a/dev-python/jsonschema/jsonschema-4.6.2.ebuild b/dev-python/jsonschema/jsonschema-4.6.2.ebuild
index 2cdb3b0783a9..efbcbaf1266e 100644
--- a/dev-python/jsonschema/jsonschema-4.6.2.ebuild
+++ b/dev-python/jsonschema/jsonschema-4.6.2.ebuild
@@ -17,7 +17,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
>=dev-python/attrs-17.4.0[${PYTHON_USEDEP}]
diff --git a/dev-python/jsonschema/jsonschema-4.8.0.ebuild b/dev-python/jsonschema/jsonschema-4.8.0.ebuild
new file mode 100644
index 000000000000..2cdb3b0783a9
--- /dev/null
+++ b/dev-python/jsonschema/jsonschema-4.8.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2022 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} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="An implementation of JSON-Schema validation for Python"
+HOMEPAGE="
+ https://pypi.org/project/jsonschema/
+ https://github.com/python-jsonschema/jsonschema/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/attrs-17.4.0[${PYTHON_USEDEP}]
+ >=dev-python/pyrsistent-0.18.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/importlib_resources-1.4.0[${PYTHON_USEDEP}]
+ ' 3.8)
+"
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+"
+
+# formatter deps
+RDEPEND+="
+ dev-python/fqdn[${PYTHON_USEDEP}]
+ dev-python/idna[${PYTHON_USEDEP}]
+ dev-python/isoduration[${PYTHON_USEDEP}]
+ >=dev-python/jsonpointer-1.13[${PYTHON_USEDEP}]
+ dev-python/rfc3339-validator[${PYTHON_USEDEP}]
+ dev-python/rfc3986-validator[${PYTHON_USEDEP}]
+ dev-python/rfc3987[${PYTHON_USEDEP}]
+ dev-python/uri_template[${PYTHON_USEDEP}]
+ >=dev-python/webcolors-1.11[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # requires pip, does not make much sense for the users
+ jsonschema/tests/test_cli.py::TestCLIIntegration::test_license
+ # wtf?
+ jsonschema/tests/test_deprecations.py::TestDeprecations::test_version
+)
diff --git a/dev-python/meson-python/Manifest b/dev-python/meson-python/Manifest
index 4c6858f6c287..1e3d198dbc6f 100644
--- a/dev-python/meson-python/Manifest
+++ b/dev-python/meson-python/Manifest
@@ -1,3 +1,4 @@
DIST meson-python-0.6.0.gh.tar.gz 26783 BLAKE2B d5c5b95d5d609487a0efee1ce05b133794705cdb16f2d05d6e08b9201541e31f61a832c7770b4b5ad675f8dd91860c30c67769ce8fc0af2c48e65b0aad187ddb SHA512 25042ea030d2ad323c67daa0a520db936a4a4efa0de1c9f631c47fac22d797e01d1f1707ed407e2931164a35b3916e19a774ee16ab1d45fc91e41c75add57fa1
DIST meson-python-0.7.0.gh.tar.gz 28959 BLAKE2B 6b60855d19c7dbbc4c8aca474ad55d4ce2a5db553ba86d2831adea7138d540433733d3b8e4077bf7314a6e6b68cd15b538b336afecaff3b262ae6d2157d8d5f0 SHA512 df529a3d31c67199cf72700734ea62b0de4f8eb03b437af9b53968e37c0350cbe60ba7385f8c3026d66fe2050df4c59912bf65e4a6e62ce19bace52fdcfef2e7
DIST meson-python-0.8.0.gh.tar.gz 29367 BLAKE2B bf501ef73baa5481f5367b642cefca5a8b8655b4d74776aea21f0be4608c3e42d765f17ffdd037f39e7fc9c48d162293f93af61a30533e1823a66de5151ec1f9 SHA512 1709cdf3b357970566b25958cead88be2062e35ee8576275d0ca2571eca1f6a0211986b2693af0944026f2693511729b9d5cb30279952c65a287fa510c19186d
+DIST meson-python-0.8.1.gh.tar.gz 29353 BLAKE2B 13d6ab25da404301bddb2fb7eaaeb5af256efb5ce6d09581e4a8fa90d21c3a45cc8f455b09dc99b454e8457b55eb41261743c6ffd612c6c674ac9a28bcb98f51 SHA512 e46f6dbbcc2b5f89b17c7ea3f00e8ff9d68cad458bcbfe462e09de8e0074316c15f71fd88304ccf65cc42d98b193bcc0b3547be3ec2519e8c25d31556beb1468
diff --git a/dev-python/meson-python/meson-python-0.8.1.ebuild b/dev-python/meson-python/meson-python-0.8.1.ebuild
new file mode 100644
index 000000000000..975e50e74db1
--- /dev/null
+++ b/dev-python/meson-python/meson-python-0.8.1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=standalone
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Meson PEP 517 Python build backend"
+HOMEPAGE="
+ https://pypi.org/project/meson-python/
+ https://github.com/FFY00/meson-python/
+"
+SRC_URI="
+ https://github.com/FFY00/meson-python/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pyproject-metadata-0.5.0[${PYTHON_USEDEP}]
+ >=dev-python/tomli-1.0.0[${PYTHON_USEDEP}]
+ >=dev-util/meson-0.60.0[${PYTHON_USEDEP}]
+ dev-util/patchelf
+"
+BDEPEND="
+ test? (
+ dev-python/GitPython[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.7.0-defaults.patch
+)
+
+distutils_enable_sphinx docs \
+ dev-python/furo \
+ dev-python/sphinx-autodoc-typehints
+distutils_enable_tests pytest
diff --git a/dev-python/nose2/nose2-0.12.0.ebuild b/dev-python/nose2/nose2-0.12.0.ebuild
index 10fb7631d1c0..b15e131da0a2 100644
--- a/dev-python/nose2/nose2-0.12.0.ebuild
+++ b/dev-python/nose2/nose2-0.12.0.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ppc ppc64 ~sparc x86"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ppc ppc64 ~sparc x86"
RDEPEND="
>=dev-python/coverage-4.4.1[${PYTHON_USEDEP}]
diff --git a/dev-python/pdm-pep517/Manifest b/dev-python/pdm-pep517/Manifest
index e4b3ed5e2496..010aed3362a1 100644
--- a/dev-python/pdm-pep517/Manifest
+++ b/dev-python/pdm-pep517/Manifest
@@ -1,2 +1,3 @@
DIST pdm-pep517-1.0.1.gh.tar.gz 307357 BLAKE2B f833179b0ea011c4304625f08d3eca85b17163d4af6144f72e6faa2fe1091f9607f53ae051fca4e837009c3132ad6f06ae69cc5288ca8731ffb1ff2ef555d0d0 SHA512 7d90829a351e95f7b53f53d356a60cb170036059f5e6311df46989253b33f126f384a93cd6aa22c95b1ec7aa501e13773ccafabbb41e5237e84537b73dc43f58
DIST pdm-pep517-1.0.2.gh.tar.gz 307938 BLAKE2B 711cc77c4ec4a3002557b5537c931215254d6fd724bf80f5457750100d55aba580b0f5fdbf8b17a31e5b02b42a94b62bc72eb99693fb59c3ab76364666b51b15 SHA512 bb827a6130299acab18714c7380f81fa530b95e3bc1e78bca810c116472269f050df45d04ef69d90a1ad96dd6bc965a50edc01bc9c429b96eefb76d62c66b8ae
+DIST pdm-pep517-1.0.3.gh.tar.gz 314957 BLAKE2B d0beff961b3f324c4d4c74943387e82cbeca90e5441391347b2ea06639af9965ea27426cab9e8dbbdceb296eb1461319fb375a3e078d673bbdf386b578b8f35c SHA512 ca9983e95f803243fb04b1add424449adfac472a94973013f669440d18d2118bdaf6610830f686cc700e86973935df26a7fea0ceed415b2c7604330de3325d05
diff --git a/dev-python/pdm-pep517/pdm-pep517-1.0.3.ebuild b/dev-python/pdm-pep517/pdm-pep517-1.0.3.ebuild
new file mode 100644
index 000000000000..773c078ae24f
--- /dev/null
+++ b/dev-python/pdm-pep517/pdm-pep517-1.0.3.ebuild
@@ -0,0 +1,58 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=standalone
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="A PEP 517 backend for PDM that supports PEP 621 metadata"
+HOMEPAGE="
+ https://pypi.org/project/pdm-pep517/
+ https://github.com/pdm-project/pdm-pep517/
+"
+SRC_URI="
+ https://github.com/pdm-project/pdm-pep517/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/cerberus-1.3.4[${PYTHON_USEDEP}]
+ dev-python/license-expression[${PYTHON_USEDEP}]
+ >=dev-python/packaging-21.0[${PYTHON_USEDEP}]
+ >=dev-python/tomli-2[${PYTHON_USEDEP}]
+ dev-python/tomli-w[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${RDEPEND}
+ test? (
+ dev-vcs/git
+ )
+"
+# setuptools are used to build C extensions
+RDEPEND+="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ rm -r pdm/pep517/_vendor || die
+ find -name '*.py' -exec sed \
+ -e 's:from pdm\.pep517\._vendor\.:from :' \
+ -e 's:from pdm\.pep517\._vendor ::' \
+ -i {} + || die
+ distutils-r1_src_prepare
+}
+
+src_test() {
+ git config --global user.email "test@example.com" || die
+ git config --global user.name "Test User" || die
+ distutils-r1_src_test
+}
diff --git a/dev-python/pikepdf/Manifest b/dev-python/pikepdf/Manifest
index d5f844b07c21..e5d38b5fe5e7 100644
--- a/dev-python/pikepdf/Manifest
+++ b/dev-python/pikepdf/Manifest
@@ -2,3 +2,4 @@ DIST pikepdf-5.2.0.gh.tar.gz 2359546 BLAKE2B 953a5268eb7dc52934967b593237bb3006e
DIST pikepdf-5.3.1.gh.tar.gz 2360816 BLAKE2B 02b36814144acbf05cf50d8bca6542271208af0ed7548dd8f41493b6e95183851033a3d4f3335f10d4bf6798606e9031aa2b38d28a9e824692fe8f78f1e68077 SHA512 b0256533011dae384ce657200db69b6e3ac93b4364fe55a2e0fb8fb2d993550dcfe4e05b723b81d62ed1db3cd544023e81a9e70fd807bcfb618f125ae5a35117
DIST pikepdf-5.3.2.gh.tar.gz 2886857 BLAKE2B 343006c8123bd814a93d1863442e9fdf80d93ae020ae6b4471cbae640653e74f3652c7c3e32d2e5ec68f5425f24a34543c0d712d78320d46db9bdb8db64ce1bb SHA512 3586a8f33550698d9b49852d741ebea7fd06e3afdbd7f1ed74ba7d9f8bbc086ff35ed964dd065f1e764f6690b3a708440eee97857591829a565acf2f0702ae33
DIST pikepdf-5.4.0.gh.tar.gz 2891493 BLAKE2B 12aec9e7fe22c9e372886bdf3c32d509f13a92fe0526469445f801ecb3b92d8fb27ad817bee6fc1845a3057d6fe56cfde5712907e9a89fc16412a1528e988504 SHA512 5be5f1d79a4fb9119aa4aed8fd4e0d02f53a7affe39c8b019aad3717b20ec303e8dbd3ac19d57e099c591ea7a29cbaf786b40d5235850f756bc17fe5335324fd
+DIST pikepdf-5.4.2.gh.tar.gz 2901145 BLAKE2B d7559901f59e5bd08ef660b88a4e9d50ac1bb64b397bcd56c1ed707ea7c0d9eca61d7ffe9e98361c01f3b71b640a9da1376c130fa5dff3324bbe2d64ce267347 SHA512 9afbd565ae82c65f743ffe7dc37509a15b03a1057bbdf4243ebacf4e0d315f9dead31fcd0f8b34023850a4d85aec302c229b1df0f045db4b1a8c171b58732b48
diff --git a/dev-python/pikepdf/pikepdf-5.4.2.ebuild b/dev-python/pikepdf/pikepdf-5.4.2.ebuild
new file mode 100644
index 000000000000..cea416014946
--- /dev/null
+++ b/dev-python/pikepdf/pikepdf-5.4.2.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2022 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} )
+
+inherit distutils-r1
+
+MY_P=${P/_p/.post}
+DESCRIPTION="Python library to work with pdf files based on qpdf"
+HOMEPAGE="
+ https://github.com/pikepdf/pikepdf/
+ https://pypi.org/project/pikepdf/
+"
+SRC_URI="
+ https://github.com/${PN}/${PN}/archive/v${PV/_p/.post}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="
+ >=app-text/qpdf-10.6.2:0=
+"
+RDEPEND="
+ ${DEPEND}
+ dev-python/deprecation[${PYTHON_USEDEP}]
+ >=dev-python/lxml-4.0[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/pillow-9[${PYTHON_USEDEP}]
+ >=dev-python/pybind11-2.9.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/pybind11-2.9.1[${PYTHON_USEDEP}]
+ >=dev-python/setuptools_scm-7.0.5[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/tomli[${PYTHON_USEDEP}]
+ ' 3.8 3.9 3.10)
+ test? (
+ >=dev-python/attrs-20.2.0[${PYTHON_USEDEP}]
+ >=dev-python/hypothesis-5[${PYTHON_USEDEP}]
+ >=dev-python/pillow-5.0.0[${PYTHON_USEDEP},jpeg,lcms,tiff]
+ >=dev-python/psutil-5[${PYTHON_USEDEP}]
+ >=dev-python/pytest-6[${PYTHON_USEDEP}]
+ >=dev-python/pytest-timeout-1.4.2[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/python-xmp-toolkit-2.0.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -e '/-n auto/d' -i pyproject.toml || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/pip/Manifest b/dev-python/pip/Manifest
index bd7ad8308546..126c95ac5d6f 100644
--- a/dev-python/pip/Manifest
+++ b/dev-python/pip/Manifest
@@ -1,4 +1,5 @@
DIST pip-22.1.2.gh.tar.gz 9346675 BLAKE2B f709f8977d467d5a3170884bb75cd2f74a2f40801ae02a3725d442e18e4073f9c4a39cd1c9d2ce3949eb888be69d151f67d0cf2d0cbad7e2ec1ec6e78150b5c7 SHA512 7dd13150023f1cca8f5e01da7688ae418b5d0b36364efcfc15374a5147c7cabd46ff1d34e6499bc8e182dc0d34a366f5fe21d8ab4de4d112d269a97200401305
+DIST pip-22.2.1.gh.tar.gz 9279141 BLAKE2B 61906027e36c8b3b82f3d17a59cbc995864622184c7f4099e9dfbb5082d1953dff72551558b8fe0d463d7defcd8b9403a978e4a8c7d79af5cd6b9dbbbcc9c7b5 SHA512 77996ce7e1aa4b5aab0c55dfee5e9bfe9f5f09f33cb796ce78bba7365f37ce9f1cce4eeaf5fdbeddde0819ecc6a30ffdafa6b7e25f93c672fcc8646303a7946e
DIST pip-22.2.gh.tar.gz 9278410 BLAKE2B e32fe63e81593a0ec9c0110af0f07f1a47ddd3d6c660c11e9eb9142c251b7f45e3a1cc343193b123364a6a3a69490add7d4ebb368aac027c448f00f7cd163d7c SHA512 2ff3f9c2dc84c65c14c978e8c58cd3cee6cfff9753655c726763d6d7780d147479f32c47873d402ad9e0821fef940b971a7df93fabd6b998f07dea5af1251c9b
DIST setuptools-62.3.2-py3-none-any.whl 1225929 BLAKE2B 608952e201f749ebf557e3962ba9856d5bdcbc534f3a25598cab0d6c53282cfb3b9f007ba135497a8addf49db4c02bc4387c486d95a4529d01ce4114154ec28a SHA512 366d69dc44e326dd7549cdacd8dec481a14dce4feef4338adc38b9de5c4c338f04d61696e13ce8603be1315f2e8734100f92d3fe4b4b11843e19f550c9631978
DIST virtualenv-16.7.12.gh.tar.gz 8906590 BLAKE2B a1f206769e4e5797562906162e492e44c4a72720e4f88a0362dc802ce2df20c65aaab6a72dce2238445601a10fae59bd90cd362217994d30911f105afd71c5fa SHA512 0278b33fb19f6553e70ad3dcffa6ea1a455ff435b216ac9b4fadff216b2932714faa2bb6027af3058010111d8511a5c2fcd424f31c9645be361603971f111c8e
diff --git a/dev-python/pip/files/pip-22.2.1-no-coverage.patch b/dev-python/pip/files/pip-22.2.1-no-coverage.patch
new file mode 100644
index 000000000000..bd9523956ca8
--- /dev/null
+++ b/dev-python/pip/files/pip-22.2.1-no-coverage.patch
@@ -0,0 +1,52 @@
+From fe4438ee999938da3b6f67b4dd53d6676d67c3e7 Mon Sep 17 00:00:00 2001
+From: Arthur Zamarin <arthurzam@gentoo.org>
+Date: Fri, 29 Jul 2022 14:06:03 +0300
+Subject: [PATCH] Disable coverage testing support inside test venvs
+
+---
+ tests/conftest.py | 15 ---------------
+ 1 file changed, 15 deletions(-)
+
+diff --git a/tests/conftest.py b/tests/conftest.py
+index c9ab292..e7c14df 100644
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -403,13 +403,6 @@ def wheel_install(tmpdir_factory: pytest.TempPathFactory, common_wheels: Path) -
+ return _common_wheel_editable_install(tmpdir_factory, common_wheels, "wheel")
+
+
+-@pytest.fixture(scope="session")
+-def coverage_install(
+- tmpdir_factory: pytest.TempPathFactory, common_wheels: Path
+-) -> Path:
+- return _common_wheel_editable_install(tmpdir_factory, common_wheels, "coverage")
+-
+-
+ def install_pth_link(
+ venv: VirtualEnvironment, project_name: str, lib_dir: Path
+ ) -> None:
+@@ -424,7 +417,6 @@ def virtualenv_template(
+ tmpdir_factory: pytest.TempPathFactory,
+ pip_src: Path,
+ setuptools_install: Path,
+- coverage_install: Path,
+ ) -> Iterator[VirtualEnvironment]:
+
+ venv_type: VirtualEnvironmentType
+@@ -451,13 +443,6 @@ def virtualenv_template(
+ [os.fspath(venv.bin / "python"), "setup.py", "-q", "develop"], cwd=pip_editable
+ )
+
+- # Install coverage and pth file for executing it in any spawned processes
+- # in this virtual environment.
+- install_pth_link(venv, "coverage", coverage_install)
+- # zz prefix ensures the file is after easy-install.pth.
+- with open(venv.site / "zz-coverage-helper.pth", "a") as f:
+- f.write("import coverage; coverage.process_startup()")
+-
+ # Drop (non-relocatable) launchers.
+ for exe in os.listdir(venv.bin):
+ if not (
+--
+2.35.1
+
diff --git a/dev-python/pip/pip-22.2.1.ebuild b/dev-python/pip/pip-22.2.1.ebuild
new file mode 100644
index 000000000000..94dd306063a2
--- /dev/null
+++ b/dev-python/pip/pip-22.2.1.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_TESTED=( python3_{7,8,9,10} )
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+PYTHON_REQ_USE="ssl(+),threads(+)"
+
+inherit bash-completion-r1 distutils-r1 multiprocessing
+
+# setuptools & wheel .whl files are required for testing,
+# the exact version is not very important.
+SETUPTOOLS_WHL="setuptools-62.3.2-py3-none-any.whl"
+WHEEL_WHL="wheel-0.36.2-py2.py3-none-any.whl"
+# upstream still requires virtualenv-16 for testing, we are now fetching
+# it directly to avoid blockers with virtualenv-20
+VENV_PV=16.7.12
+
+DESCRIPTION="The PyPA recommended tool for installing Python packages"
+HOMEPAGE="
+ https://pip.pypa.io/en/stable/
+ https://pypi.org/project/pip/
+ https://github.com/pypa/pip/
+"
+SRC_URI="
+ https://github.com/pypa/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz
+ test? (
+ https://files.pythonhosted.org/packages/py3/s/setuptools/${SETUPTOOLS_WHL}
+ https://files.pythonhosted.org/packages/py2.py3/w/wheel/${WHEEL_WHL}
+ https://github.com/pypa/virtualenv/archive/${VENV_PV}.tar.gz
+ -> virtualenv-${VENV_PV}.gh.tar.gz
+ )
+"
+
+LICENSE="MIT"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+SLOT="0"
+IUSE="vanilla"
+
+RDEPEND="
+ >=dev-python/setuptools-39.2.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${RDEPEND}
+ test? (
+ $(python_gen_cond_dep '
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ dev-python/pretend[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/scripttest[${PYTHON_USEDEP}]
+ dev-python/tomli-w[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+ dev-python/wheel[${PYTHON_USEDEP}]
+ !alpha? ( !hppa? ( !ia64? (
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ ) ) )
+ ' "${PYTHON_TESTED[@]}")
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ local PATCHES=(
+ "${FILESDIR}/pip-22.2.1-no-coverage.patch"
+ )
+ if ! use vanilla; then
+ PATCHES+=( "${FILESDIR}/pip-20.0.2-disable-system-install.patch" )
+ fi
+
+ distutils-r1_python_prepare_all
+
+ if use test; then
+ mkdir tests/data/common_wheels/ || die
+ cp "${DISTDIR}"/{${SETUPTOOLS_WHL},${WHEEL_WHL}} \
+ tests/data/common_wheels/ || die
+ fi
+}
+
+python_compile_all() {
+ # 'pip completion' command embeds full $0 into completion script, which confuses
+ # 'complete' and causes QA warning when running as "${PYTHON} -m pip".
+ # This trick sets correct $0 while still calling just installed pip.
+ local pipcmd='import sys; sys.argv[0] = "pip"; __file__ = ""; from pip._internal.cli.main import main; sys.exit(main())'
+ "${EPYTHON}" -c "${pipcmd}" completion --bash > completion.bash || die
+ "${EPYTHON}" -c "${pipcmd}" completion --zsh > completion.zsh || die
+}
+
+python_test() {
+ if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
+ einfo "Skipping tests on ${EPYTHON} since virtualenv-16 is broken"
+ return 0
+ fi
+
+ local EPYTEST_DESELECT=(
+ tests/functional/test_inspect.py::test_inspect_basic
+ tests/functional/test_install.py::test_double_install_fail
+ tests/functional/test_list.py::test_multiple_exclude_and_normalization
+ # Internet
+ tests/functional/test_install.py::test_install_dry_run
+ tests/functional/test_install.py::test_install_editable_with_prefix_setup_cfg
+ tests/functional/test_install.py::test_editable_install__local_dir_no_setup_py_with_pyproject
+ tests/functional/test_install.py::test_editable_install__local_dir_setup_requires_with_pyproject
+ )
+
+ if ! has_version "dev-python/cryptography[${PYTHON_USEDEP}]"; then
+ EPYTEST_DESELECT+=(
+ tests/functional/test_install.py::test_install_sends_client_cert
+ tests/functional/test_install_config.py::test_do_not_prompt_for_authentication
+ tests/functional/test_install_config.py::test_prompt_for_authentication
+ tests/functional/test_install_config.py::test_prompt_for_keyring_if_needed
+ )
+ fi
+
+ local -x GENTOO_PIP_TESTING=1
+ local -x PYTHONPATH="${WORKDIR}/virtualenv-${VENV_PV}"
+ local -x SETUPTOOLS_USE_DISTUTILS=stdlib
+ local -x PIP_DISABLE_PIP_VERSION_CHECK=1
+ epytest -m "not network" -n "$(makeopts_jobs)"
+}
+
+python_install_all() {
+ local DOCS=( AUTHORS.txt docs/html/**/*.rst )
+ distutils-r1_python_install_all
+
+ newbashcomp completion.bash pip
+
+ insinto /usr/share/zsh/site-functions
+ newins completion.zsh _pip
+}
diff --git a/dev-python/psycopg/Manifest b/dev-python/psycopg/Manifest
index 321c8a649dd9..e6d4340a4c28 100644
--- a/dev-python/psycopg/Manifest
+++ b/dev-python/psycopg/Manifest
@@ -1,2 +1,3 @@
DIST psycopg-3.0.15.gh.tar.gz 384815 BLAKE2B feed19f8482767de12a549530b8fbef5cd374636f1b1e84b2746f23379760bf3b75fbbaed64b8d45d120b84a1e56b4ce6fe26bf29fb13e6fd20eb39e4aebad9a SHA512 65c0e081821ca580f56495073ca69fa38e98888ff3531dc55faacec647cfeafcc74767c53a7d3edbeea1e5bbc557ba08fbc089be8b6bc73963cbb459b029e313
+DIST psycopg-3.0.16.gh.tar.gz 386693 BLAKE2B c6c0bd9832e65180e7de76b04ef7c81f4c2d0981894d090b933ce0efaaafdf6b62d1d71a4c70c7c9b848b67e576a71953116925f9e991a4ed99b53067e24cbba SHA512 655e01bb00972dacae590f2e8ce5948226acb827b55099e7f362fdee9210f07b755f4da10d2fadd468aa95eaa3f72e7658a1ab26870d4ac159ee266ce1f8140c
DIST psycopg2-2.9.3.tar.gz 380611 BLAKE2B 78099da7378dcfa8b7f28aae4d533a7e890cdb7ae4c0cc718a9411e630fd07b56f074760fc29de8fe08fe727328cca39414a5f297fb92ed2f7471a24e633d18d SHA512 048184d1d162a371fc0fba711448a6fa8a6aac193421f4484c7f7b91c39065d5b632fa34fc15a901eca055d597302b1f9e38330b248ed0e4653dcdc544b0d660
diff --git a/dev-python/psycopg/psycopg-3.0.16.ebuild b/dev-python/psycopg/psycopg-3.0.16.ebuild
new file mode 100644
index 000000000000..7008eef40317
--- /dev/null
+++ b/dev-python/psycopg/psycopg-3.0.16.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2022 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} )
+
+inherit distutils-r1
+
+DESCRIPTION="PostgreSQL database adapter for Python"
+HOMEPAGE="
+ https://www.psycopg.org/psycopg3/
+ https://github.com/psycopg/psycopg/
+ https://pypi.org/project/psycopg/
+"
+SRC_URI="
+ https://github.com/psycopg/psycopg/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S=${WORKDIR}/${P}/psycopg
+
+LICENSE="LGPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-solaris"
+
+DEPEND="
+ >=dev-db/postgresql-8.1:*
+"
+RDEPEND="
+ ${DEPEND}
+ $(python_gen_cond_dep '
+ >=dev-python/backports-zoneinfo-0.2.0[${PYTHON_USEDEP}]
+ ' 3.8)
+ $(python_gen_cond_dep '
+ >=dev-python/typing-extensions-3.10[${PYTHON_USEDEP}]
+ ' 3.8 3.9)
+"
+BDEPEND="
+ test? (
+ >=dev-db/postgresql-8.1[server]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # tests for the psycopg_pool package
+ tests/pool
+ # some broken mypy magic
+ tests/test_module.py::test_version
+ tests/test_module.py::test_version_c
+ tests/test_typing.py
+ # TODO, relying on undefined ordering in Python?
+ tests/test_dns_srv.py::test_srv
+)
+
+src_test() {
+ # tests are lurking in top-level directory
+ cd .. || die
+
+ initdb -D "${T}"/pgsql || die
+ # TODO: random port
+ pg_ctl -w -D "${T}"/pgsql start \
+ -o "-h '' -k '${T}'" || die
+ createdb -h "${T}" test || die
+
+ local -x PSYCOPG_TEST_DSN="host=${T} dbname=test"
+ distutils-r1_src_test
+
+ pg_ctl -w -D "${T}"/pgsql stop || die
+}
diff --git a/dev-python/pyopenssl/pyopenssl-22.0.0.ebuild b/dev-python/pyopenssl/pyopenssl-22.0.0.ebuild
index 7a8edc63b69d..4ce7eb7cec88 100644
--- a/dev-python/pyopenssl/pyopenssl-22.0.0.ebuild
+++ b/dev-python/pyopenssl/pyopenssl-22.0.0.ebuild
@@ -23,7 +23,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
>=dev-python/cryptography-35.0[${PYTHON_USEDEP}]
diff --git a/dev-python/pyproject-fmt/pyproject-fmt-0.3.4.ebuild b/dev-python/pyproject-fmt/pyproject-fmt-0.3.4.ebuild
index 08277f505f2c..dc6ace58340e 100644
--- a/dev-python/pyproject-fmt/pyproject-fmt-0.3.4.ebuild
+++ b/dev-python/pyproject-fmt/pyproject-fmt-0.3.4.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv"
+KEYWORDS="~amd64 ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc"
RDEPEND="
>=dev-python/packaging-21.3[${PYTHON_USEDEP}]
diff --git a/dev-python/pypugjs/Manifest b/dev-python/pypugjs/Manifest
index 0669f5554d5c..49867b260501 100644
--- a/dev-python/pypugjs/Manifest
+++ b/dev-python/pypugjs/Manifest
@@ -1 +1,2 @@
DIST pypugjs-5.9.11.tar.gz 51440 BLAKE2B 19aa91fadb1bcfe871420001429ac17559e136015649b94d2a0ec4b80fffa5dcbed672ac036f8865623acdf51b6188bf195a9a27b55612cf7f1c8285fd8d4a68 SHA512 512f5e0296166e73fc12fff816acf35729173a0d275661df36e536ea9a86300f2eea01440d028fa6faeab0d7bfe6e634acab22ed89d97558eec948d3726197c6
+DIST pypugjs-5.9.12.gh.tar.gz 51164 BLAKE2B 32b7bbc2bde966ea53c6f52a77482f4f6ca1e0cb09948c1c9850cdd66e4449ecc60e2f6b812f57a7ade5bc323c48be5d105d63ab6680d5e2197cd203fce40d85 SHA512 c6e4bd3bb27d321e3721504e7c01f97d869eb2e29e3ac8f086aa696ca29436978ceaa420ef8ac9b5addd859f7764817b1f159e0f41784a3fdb9cd3a0620eb7dd
diff --git a/dev-python/pypugjs/pypugjs-5.9.12.ebuild b/dev-python/pypugjs/pypugjs-5.9.12.ebuild
new file mode 100644
index 000000000000..06470b987327
--- /dev/null
+++ b/dev-python/pypugjs/pypugjs-5.9.12.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2022 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} )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Pug (Jade) syntax adapter for Django, Jinja2 and Mako templates"
+HOMEPAGE="https://github.com/kakulukia/pypugjs"
+SRC_URI="
+ https://github.com/kakulukia/pypugjs/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv"
+
+RDEPEND="
+ >=dev-python/six-1.15.0[${PYTHON_USEDEP}]
+ >=dev-python/chardet-4.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/django[${PYTHON_USEDEP}]
+ >=dev-python/jinja-3.1.1[${PYTHON_USEDEP}]
+ >=dev-python/mako-1.1.3[${PYTHON_USEDEP}]
+ >=www-servers/tornado-6.0.4[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests nose
+
+src_prepare() {
+ # Remove pyramid backend as pyramid isn't packaged
+ rm -r pypugjs/ext/pyramid || die
+ distutils-r1_src_prepare
+}
+
+pkg_postinst() {
+ optfeature "converting to Django output" dev-python/django
+ optfeature "converting to Jinja2 output" dev-python/jinja
+ optfeature "converting to Mako output" dev-python/mako
+ optfeature "converting to Tornado output" www-servers/tornado
+}
diff --git a/dev-python/pytest-mock/pytest-mock-3.8.2.ebuild b/dev-python/pytest-mock/pytest-mock-3.8.2.ebuild
index 6e9f0a8e51b0..6b89ed1c8c7c 100644
--- a/dev-python/pytest-mock/pytest-mock-3.8.2.ebuild
+++ b/dev-python/pytest-mock/pytest-mock-3.8.2.ebuild
@@ -17,7 +17,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
RDEPEND="
>=dev-python/pytest-6[${PYTHON_USEDEP}]
diff --git a/dev-python/pytest-shell-utilities/Manifest b/dev-python/pytest-shell-utilities/Manifest
index 0b50e6f5d592..b03da1fa5eed 100644
--- a/dev-python/pytest-shell-utilities/Manifest
+++ b/dev-python/pytest-shell-utilities/Manifest
@@ -1 +1,2 @@
DIST pytest-shell-utilities-1.5.0.gh.tar.gz 92287 BLAKE2B 015f78838eaff93438cbd7cd395926ac8f61653f6d27275ca87b379e5f27d60165157880e41e603823c17e639dcff91ac4f5fda1e904ad505bb9db0a577b800c SHA512 00cb5fa6979e09c90ba82928a135f644dd4056fd004f6bee8d216ca63e2cf4549f944930bf16e7a124f26a79c1b696d18ecf210bee3273343b9a90f9126f340e
+DIST pytest-shell-utilities-1.6.0.gh.tar.gz 92343 BLAKE2B 39239aff1d7d4970a706926ea9f4c7808f8c12760d8f1ccaff760d8320024bba7373a25bb2ad8db2e0a6fee1f8ef4dd5b85b4e7eb1fb6e2aab64711686acf25e SHA512 e979f5bbf34de99c1dac33b4cb27265a210852d39792cd7660b717e43de0baaf47785d57ade226f08de43ef9d83600b4e46f70ceed341c7fccde554f7a838b8e
diff --git a/dev-python/pytest-shell-utilities/pytest-shell-utilities-1.6.0.ebuild b/dev-python/pytest-shell-utilities/pytest-shell-utilities-1.6.0.ebuild
new file mode 100644
index 000000000000..d056422762ac
--- /dev/null
+++ b/dev-python/pytest-shell-utilities/pytest-shell-utilities-1.6.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2022 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} )
+
+inherit distutils-r1
+
+DESCRIPTION="pytest plugin: fixtures and code to help with running shell commands on tests"
+HOMEPAGE="
+ https://pypi.org/project/pytest-shell-utilities/
+ https://github.com/saltstack/pytest-shell-utilities/
+"
+SRC_URI="
+ https://github.com/saltstack/pytest-shell-utilities/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/pytest-6.0.0[${PYTHON_USEDEP}]
+ dev-python/attrs[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ dev-python/pytest-helpers-namespace[${PYTHON_USEDEP}]
+ dev-python/pytest-skip-markers[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-subtests[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
diff --git a/dev-python/python-nbxmpp/Manifest b/dev-python/python-nbxmpp/Manifest
index 91244edb6923..bcd46835457c 100644
--- a/dev-python/python-nbxmpp/Manifest
+++ b/dev-python/python-nbxmpp/Manifest
@@ -1,2 +1,3 @@
DIST python-nbxmpp-3.1.0.tar.bz2 128551 BLAKE2B bbff0bd92b12addb73e661136531df7629baa7936a1d52a86a17b59047681d30744dbc3618143a0b4ff5460bb64ad01a70b1bfb018f32bd78cfd9dc848f18668 SHA512 6676da4a21915305952118b9d35d91f3b420a23f1f3bc1fa22ee885face3f9b4474417f58e4a2c6446fec48ff632822ab83343e104df480d33d75f1b46cf8fec
+DIST python-nbxmpp-3.1.1.tar.bz2 128913 BLAKE2B 938701b95d3b41638d2e9173d52ce69737bc7160b1113bbbb54e958ee0269a2d209d146a67c7caaf8f4e7aa394549360ecb3ad4c3a1a731b329b10cbc9654109 SHA512 9571d890112da8380d55894e52279bfb002151432d6c8103ce62f5ab08b198f847c50cb2c1c4a7502cbefff8c3c77cbb0e86ca24355af86136b0caceb0d75c0f
DIST python-nbxmpp-nbxmpp-2.0.6.tar.bz2 122203 BLAKE2B 925604002f4363f1e0b72f05c13742f4652ba565a9faa48faf8d47688f480a7f1d7585c593b0dcf07bded8c4aa3a1d02e9697742a07b9e815daec062dfb93104 SHA512 a536b25c8a6298892a51adef4b64b75ffab88ce02fb08fc07ecd1cfe2bc794262d4d58a93248439723e6e0544485da7351bb98189b0e422a1f77b01c6f6d238e
diff --git a/dev-python/python-nbxmpp/python-nbxmpp-3.1.1.ebuild b/dev-python/python-nbxmpp/python-nbxmpp-3.1.1.ebuild
new file mode 100644
index 000000000000..b38c02ceed64
--- /dev/null
+++ b/dev-python/python-nbxmpp/python-nbxmpp-3.1.1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2022 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} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python library to use Jabber/XMPP networks in a non-blocking way"
+HOMEPAGE="
+ https://dev.gajim.org/gajim/python-nbxmpp/
+ https://pypi.org/project/nbxmpp/
+"
+SRC_URI="
+ https://dev.gajim.org/gajim/python-nbxmpp/-/archive/${PV}/${P}.tar.bz2
+"
+
+SLOT="0"
+LICENSE="GPL-3"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ dev-libs/gobject-introspection
+ net-libs/libsoup[introspection]
+ dev-python/idna[${PYTHON_USEDEP}]
+ dev-python/precis-i18n[${PYTHON_USEDEP}]
+ dev-python/pygobject[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/regex/Manifest b/dev-python/regex/Manifest
index c131f57bdd5f..d03486fa01f1 100644
--- a/dev-python/regex/Manifest
+++ b/dev-python/regex/Manifest
@@ -1,3 +1,4 @@
DIST regex-2022.6.2.tar.gz 383342 BLAKE2B 48587a91366203301c517dc9cfe4f09e70905924484b906481bc89cf376854d406871312e154ac8b5833feeb50848636a95fdf99511df4feda4f16794a70856b SHA512 ce69a058aa05c471ce8728d29d5a498e387e5661d754d13bee51558a85f5e9e059a1464cc1b7721294cab421bae7219da7fd067e331e6cd6fd3dc464fdf0ecc1
DIST regex-2022.7.24.tar.gz 385003 BLAKE2B 996cdec63ec35f893f3bbf3afa7731944c496547f0cf3d97b85a90b8ceb8d4a1571a680608ea01c5d845a11de43365cc30fd98519bb2cfacc01eb5ff36950d0c SHA512 23ce018a4275ffc49ac9ad71e9ed70984e2118421e0d97d497ad41bc5ff4e19a5b783dbce82a94ad15b59681be668092594fa3ace44250d111693e046e953030
+DIST regex-2022.7.25.tar.gz 385022 BLAKE2B 64c2ff2e9a41d6d559ed199e978b7eb453ffe872d3cbe3d14f31ed6f7df546aa33079ce1d8279b815a35a18d9ea75da6f0beb38e4df576037995518a38db688a SHA512 1179239e8e2a1ff55150b6c2e483f2d2b795a7f5cb400310c315a59aad19590d410cc9c1a862c66be2ca93b24b387a4c4fa0a5467d497a9bc5ffc79dac7cb0ff
DIST regex-2022.7.9.tar.gz 383431 BLAKE2B 9773b3e5c516d79ec6b37d288addb0638016716093ec49d8cdc4a2132fc16ea76c4a21fd02cc6bc6547fd0dd76bb0ec9984bb7f41eb88e4f89623a8d4a5be40d SHA512 0c8b78fc10e5ba4e95a3603a4958efb610168b63a490715c2556243af7bab4d04e6eab6cad6bc98816cfa94209404806ede28cf48643d7e92c9b8323c2b0c5e2
diff --git a/dev-python/regex/regex-2022.7.25.ebuild b/dev-python/regex/regex-2022.7.25.ebuild
new file mode 100644
index 000000000000..d2f1386cd89a
--- /dev/null
+++ b/dev-python/regex/regex-2022.7.25.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2022 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} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Alternative regular expression module to replace re"
+HOMEPAGE="
+ https://bitbucket.org/mrabarnett/mrab-regex/
+ https://pypi.org/project/regex/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+IUSE="doc"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2021.4.4-pypy3-fix-test_empty_array.patch"
+ "${FILESDIR}/${PN}-2021.4.4-pypy3-fix-test_issue_18468.patch"
+)
+
+distutils_enable_tests unittest
+
+python_install_all() {
+ use doc && local HTML_DOCS=( docs/Features.html )
+ local DOCS=( README.rst docs/*.rst )
+
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/semantic_version/semantic_version-2.10.0.ebuild b/dev-python/semantic_version/semantic_version-2.10.0.ebuild
index ae1828349a89..403ee81f7781 100644
--- a/dev-python/semantic_version/semantic_version-2.10.0.ebuild
+++ b/dev-python/semantic_version/semantic_version-2.10.0.ebuild
@@ -17,7 +17,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv ~s390 sparc x86"
distutils_enable_sphinx docs \
dev-python/sphinx_rtd_theme
diff --git a/dev-python/sentry-sdk/Manifest b/dev-python/sentry-sdk/Manifest
index fadd966bab3d..c92c15368e65 100644
--- a/dev-python/sentry-sdk/Manifest
+++ b/dev-python/sentry-sdk/Manifest
@@ -1,3 +1,4 @@
DIST sentry-sdk-1.6.0.gh.tar.gz 249637 BLAKE2B c4d6788c80184ce9127ed85dfb5305363fd27bcbebd74763e4c14c4fed35dd05069ad4a244fa2d8a59f8cb618df22d4d864bf72510fe42600d23fcc6bf8228cf SHA512 d2999831af595ed7f1861ec78887e46887eea8c4c931f22bd4003aede508511287f67eb6100232362a110d16b7bdec892572225440be52a9bd37952c30478f15
DIST sentry-sdk-1.7.2.gh.tar.gz 254370 BLAKE2B e65b2236bfec9279a4aa05b77c9492547f657e461a7c96c4158acb6bc0887571186bfa71893dce34251ef8d783fb5d583b25aa12539c5db7993cec65fdf05229 SHA512 9fe2c283a326b78c8be95500e4916bb633dc7369960a4e0ef69c0f29de74c38db81f43b3931c47d50431ee7f1a66a2b18e8c4fc02ce71c404a5e9700644cb76c
DIST sentry-sdk-1.8.0.gh.tar.gz 286488 BLAKE2B d47f33a1c83cfffa6e4a801a6fdfde132d4cfe1b734e464c4db60e97abf53ebe503c53c3edd89d1a84e655a348a4463a75c3475d4824d03cd9b95733b13b5532 SHA512 aa3be96dbc55265f17371d8f20f8b3116b4310cbc1d078b62beeb1fd90bdbb840db85c25309e16f793a188d373c6dbcfd11a104db21b60221a5fb06d8deacc2d
+DIST sentry-sdk-1.9.0.gh.tar.gz 290271 BLAKE2B fcb4c45c129faf23a1177167e2bdd567a7ff228abbaa782676abb16c29e9c4cccef89f67ae5cd28c4f2b25e6687152fdc5eab0c7d981021a8df16374dc4e1fec SHA512 4f287bad8e9dd8eaad8f8a31d7335ccf6bfe72cc0ba8c0b26abcbd7e326bad886709d001976966a7b917f39e1ca249fa881abf29778cfd4bd65c63f05a6f6ef2
diff --git a/dev-python/sentry-sdk/sentry-sdk-1.9.0.ebuild b/dev-python/sentry-sdk/sentry-sdk-1.9.0.ebuild
new file mode 100644
index 000000000000..aa4b4106f18f
--- /dev/null
+++ b/dev-python/sentry-sdk/sentry-sdk-1.9.0.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2022 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} )
+
+inherit distutils-r1
+
+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
+ -> ${P}.gh.tar.gz
+"
+S="${WORKDIR}/sentry-python-${PV}"
+
+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/gevent[${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/werkzeug[${PYTHON_USEDEP}]
+ dev-python/zope-event[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/eventlet[${PYTHON_USEDEP}]
+ ' python3_{8..9})
+ )
+"
+
+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
+ # requires python-multipart (TODO: package it)
+ tests/integrations/starlette
+)
+
+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
+)
diff --git a/dev-python/serpent/serpent-1.41.ebuild b/dev-python/serpent/serpent-1.41.ebuild
index 6829950995a5..f52783343b38 100644
--- a/dev-python/serpent/serpent-1.41.ebuild
+++ b/dev-python/serpent/serpent-1.41.ebuild
@@ -14,7 +14,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm64 ppc ppc64 x86"
BDEPEND="
test? (
diff --git a/dev-python/setproctitle/Manifest b/dev-python/setproctitle/Manifest
index 5c6bf7b95ed1..aa4cd6bb9d21 100644
--- a/dev-python/setproctitle/Manifest
+++ b/dev-python/setproctitle/Manifest
@@ -1 +1,2 @@
DIST setproctitle-1.2.3.tar.gz 23618 BLAKE2B 58bafb30a9b0da9cd552c7ed1ccd197a2ee7a3c70ae02773e6a857e4f16069126d2507f30206c83a24d84d030a1fc9306d024f4e5b988f73d95df049fa9c055f SHA512 ae94e3f5e1dd10e80488f81250e979a6a15c7c3ae399bf557612b9b1edbdcb8aec4e68a7f44ff7375a399ab53d6319dfb5c5c4a1e3a0bb824c40f6921c9d9c6b
+DIST setproctitle-1.3.0.tar.gz 26778 BLAKE2B 620df2c342fd76ff762135eed88b4d6d921c1c85c7865e3921c95e968de07b10cccf86e2d62297fdfb91aa5b44e9e9fb7c496aa2fdbbe039eecda668b079328e SHA512 41f0557b73ed41323c8d71d87d143ccd78f980c01027e76c7e6ff4cf375cb8cda55f01a5c4a3cd12fea3459070382b84fd1346995696df7a3e1cc03ff8e71b4e
diff --git a/dev-python/setproctitle/setproctitle-1.3.0.ebuild b/dev-python/setproctitle/setproctitle-1.3.0.ebuild
new file mode 100644
index 000000000000..7821486621be
--- /dev/null
+++ b/dev-python/setproctitle/setproctitle-1.3.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2022 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} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Allow customization of the process title"
+HOMEPAGE="
+ https://github.com/dvarrazzo/py-setproctitle/
+ https://pypi.org/project/setproctitle/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+
+distutils_enable_tests pytest
diff --git a/dev-python/setuptools-rust/setuptools-rust-1.3.0.ebuild b/dev-python/setuptools-rust/setuptools-rust-1.3.0.ebuild
index f021f10da3e7..55f654311306 100644
--- a/dev-python/setuptools-rust/setuptools-rust-1.3.0.ebuild
+++ b/dev-python/setuptools-rust/setuptools-rust-1.3.0.ebuild
@@ -96,7 +96,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv ~s390 ~sparc x86"
+KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/sphinx-autodoc-typehints/Manifest b/dev-python/sphinx-autodoc-typehints/Manifest
index 969c6dc88d2d..ceb71bfa6118 100644
--- a/dev-python/sphinx-autodoc-typehints/Manifest
+++ b/dev-python/sphinx-autodoc-typehints/Manifest
@@ -1 +1,2 @@
DIST sphinx-autodoc-typehints-1.18.3.gh.tar.gz 26457 BLAKE2B 343a6ffcbca40f28a66c67266431f3a9b2292bd0d991de4287b9adf9e02b7d8fb24094646caa55790f32cd9081abca525f310367335d60fa1b7ea3bc9623bb1c SHA512 549bdfad8f5c07f5edb1c6cdeaff39df22cc7bfa475c70b5c54ff46b311d14c9f3682bf68663d852b95ebff8fd1b71038fc077495d99d870ae2efbf72ec99a42
+DIST sphinx-autodoc-typehints-1.19.0.gh.tar.gz 26950 BLAKE2B 4e530c0b16500d8489bed7f50518b1bc30fdc824d41eb6cc66786096c09c910deb92ac580438395e3b71fd2d3b64690986cb035ff2d784e26918a42bdc73d8fc SHA512 d9459aca1091da0fa446d7ce72ef83c172775b66081d87431c14fd9cfda42770dbd08450ff193e3accffe0eb11efde22804e4ffff20a8e0e9072a05bc34a99e9
diff --git a/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-1.19.0.ebuild b/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-1.19.0.ebuild
new file mode 100644
index 000000000000..78ea695ff82e
--- /dev/null
+++ b/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-1.19.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2022 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} )
+
+inherit distutils-r1
+
+DESCRIPTION="Type hints support for the Sphinx autodoc extension"
+HOMEPAGE="
+ https://github.com/tox-dev/sphinx-autodoc-typehints/
+ https://pypi.org/project/sphinx-autodoc-typehints/
+"
+SRC_URI="
+ https://github.com/tox-dev/sphinx-autodoc-typehints/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/sphinx-4.5[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/nptyping-2.1.1[${PYTHON_USEDEP}]
+ dev-python/sphobjinv[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # this package is addicted to Internet
+ tests/test_sphinx_autodoc_typehints.py::test_format_annotation
+)
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
diff --git a/dev-python/sphinx-gallery/Manifest b/dev-python/sphinx-gallery/Manifest
index 19231d782581..92a1d6e5108e 100644
--- a/dev-python/sphinx-gallery/Manifest
+++ b/dev-python/sphinx-gallery/Manifest
@@ -1 +1,2 @@
DIST sphinx-gallery-0.10.1.tar.gz 6546135 BLAKE2B 1f4ead74b848f28944820a77717183d845d1fba7459d11fa9bece16c5cd83742e012cce6906f8f5cd357e5c7db01107b6c7c32e2f7d5b7ce46dcd8d6a4b36e9c SHA512 da3b35907782846a58402fddf2a7f507eba76cd708725ff0ba097ec7bda6e9029252c9fb4df6d192aa7f64c6873465d4ff5e634b5c4cc6c4294e0d38c6db2f02
+DIST sphinx-gallery-0.11.0.tar.gz 395136 BLAKE2B 4380484cb37baeb749469f810cbaf24f51a4f83a24a6ff868d1b8872f58db7b189575e8023926b70c576b029b895e18c3de070d69d20a87c70db5d959ebe8915 SHA512 8c97c9bea3bdeb400715bf7ad36e277c01efd5a5d9a85eaeac397eb1f7066112eaf8ef46cc42226275e50e030bfb1010d7516db70e415fbde953f051f4c3cbf4
diff --git a/dev-python/sphinx-gallery/sphinx-gallery-0.11.0.ebuild b/dev-python/sphinx-gallery/sphinx-gallery-0.11.0.ebuild
new file mode 100644
index 000000000000..15ed284ca00a
--- /dev/null
+++ b/dev-python/sphinx-gallery/sphinx-gallery-0.11.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2022 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} )
+inherit distutils-r1
+
+DESCRIPTION="Sphinx extension to automatically generate an examples gallery"
+HOMEPAGE="
+ https://sphinx-gallery.github.io/
+ https://github.com/sphinx-gallery/sphinx-gallery"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+RDEPEND="
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/sphinx[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/joblib[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -i -e 's:--cov-report= --cov=sphinx_gallery::' setup.cfg || die
+ distutils-r1_src_prepare
+}
+
+EPYTEST_DESELECT=(
+ # Internet
+ sphinx_gallery/tests/test_docs_resolv.py::test_embed_code_links_get_data
+ sphinx_gallery/tests/test_full.py::test_run_sphinx
+ sphinx_gallery/tests/test_full.py::test_embed_links_and_styles
+)
diff --git a/dev-python/sphinx/Manifest b/dev-python/sphinx/Manifest
index 73c06f7708ae..a993fd2cfc5e 100644
--- a/dev-python/sphinx/Manifest
+++ b/dev-python/sphinx/Manifest
@@ -1,3 +1,4 @@
DIST Sphinx-4.5.0.tar.gz 6698212 BLAKE2B e6c46d35492c3d3068c4f97e497d33973ca86b40934578804fcec901fa89d2c52b45a7546b835b873846dd16936c1bd34a7b053aec8206c688d974671155fd56 SHA512 b44d2a81ed67adaefe16a07ae0cf053b5e6c775023aaa6c57d7b3950f171deac410e8004f787b151c3c2fc350650aa69a4dc2dc7239d1fd3d351e5194617cb2c
DIST Sphinx-5.0.2.tar.gz 6729086 BLAKE2B a2cbf8efca673d15e364d0db74a8c5e2c0ff469f2a102317fb9bf23aac12c12ced2593e3a5e2dd0ee2bc114f2018356d382d601a3c7ff9b2943e38b59fe45db4 SHA512 d564697f0b82a9a59dd6a81e7822dbeac00fb6cc98cdc2422f04ec87c5133b5e03057ccdfdcfe38dccff41f6c53262d49f4ee6f77047c579aa2e55370bfe2dc6
DIST sphinx-5.1.0.gh.tar.gz 6766298 BLAKE2B d12ef1ec0edd931a597457d868e8fc3b68675df266d8bb626021fa098aacd6027af925275ccf482b7a0d1c8d3cf4c872fca96359f433017274d66bbdcc0d7efa SHA512 595f6f75703d0849393043f24ac216e0bc726a6bf9a23964f8c024e42f2558e2c4f184752835e4016da85391d494fd20bb526d7d379fa9198ac97ff5eca605a2
+DIST sphinx-5.1.1.gh.tar.gz 6766329 BLAKE2B ff385abe35d4a700cbb3cd8acc72313f7c923d48b38934cc35ea6128ef6c16eb6a33604daea25f81f60b65951b4623f62cd4c1a482b2c5e7285ce0ddb6226c80 SHA512 23261cabbcc73072134c22e7fb36f4c7911f4284cea9cc7be6006e500d9de65727f43214fb4427d307845cc684b9a569960ed276320855283a33b9542a2a6918
diff --git a/dev-python/sphinx/sphinx-5.1.1.ebuild b/dev-python/sphinx/sphinx-5.1.1.ebuild
new file mode 100644
index 000000000000..c8dd85e64db5
--- /dev/null
+++ b/dev-python/sphinx/sphinx-5.1.1.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2022 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} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="Python documentation generator"
+HOMEPAGE="
+ https://www.sphinx-doc.org/
+ https://github.com/sphinx-doc/sphinx/
+ https://pypi.org/project/Sphinx/
+"
+SRC_URI="
+ https://github.com/sphinx-doc/sphinx/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+IUSE="doc latex"
+
+RDEPEND="
+ <dev-python/alabaster-0.8[${PYTHON_USEDEP}]
+ >=dev-python/Babel-1.3[${PYTHON_USEDEP}]
+ <dev-python/docutils-0.20[${PYTHON_USEDEP}]
+ dev-python/imagesize[${PYTHON_USEDEP}]
+ >=dev-python/jinja-2.3[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/snowballstemmer-1.1[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-applehelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-devhelp[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-jsmath[${PYTHON_USEDEP}]
+ >=dev-python/sphinxcontrib-htmlhelp-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/sphinxcontrib-serializinghtml-1.1.5[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-qthelp[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/importlib_metadata-4.4[${PYTHON_USEDEP}]
+ ' 3.8 3.9)
+ latex? (
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )
+ !dev-python/namespace-sphinxcontrib
+"
+BDEPEND="
+ doc? (
+ dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
+ media-gfx/graphviz
+ )
+ test? (
+ dev-python/html5lib[${PYTHON_USEDEP}]
+ virtual/imagemagick-tools[jpeg,png,svg]
+ dev-texlive/texlive-fontsextra
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-luatex
+ app-text/dvipng
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/sphinx-3.2.1-doc-link.patch"
+ "${FILESDIR}/sphinx-4.3.2-doc-link.patch"
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # disable internet access
+ sed -i -e 's:^intersphinx_mapping:disabled_&:' \
+ doc/conf.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+ if use doc; then
+ esetup.py build_sphinx
+ HTML_DOCS=( "${BUILD_DIR}"/sphinx/html/. )
+ fi
+}
+
+python_test() {
+ mkdir -p "${BUILD_DIR}/sphinx_tempdir" || die
+ local -x SPHINX_TEST_TEMPDIR="${BUILD_DIR}/sphinx_tempdir"
+
+ local EPYTEST_DESELECT=(
+ # these tests require Internet access
+ tests/test_build_latex.py::test_latex_images
+ tests/test_build_linkcheck.py::test_defaults
+ tests/test_build_linkcheck.py::test_defaults_json
+ tests/test_build_linkcheck.py::test_anchors_ignored
+ # TODO
+ tests/test_ext_autodoc_autoclass.py::test_classes
+ tests/test_ext_autodoc_autofunction.py::test_classes
+ tests/test_ext_inheritance_diagram.py::test_import_classes
+ )
+ [[ ${EPYTHON} == pypy3 ]] && EPYTEST_DESELECT+=(
+ tests/test_ext_autodoc.py::test_autodoc_inherited_members_None
+ tests/test_ext_autodoc.py::test_automethod_for_builtin
+ tests/test_ext_autodoc.py::test_cython
+ tests/test_ext_autodoc.py::test_partialfunction
+ tests/test_ext_autodoc_autoclass.py::test_autodoc_process_bases
+ tests/test_ext_autodoc_autoclass.py::test_show_inheritance_for_decendants_of_generic_type
+ tests/test_ext_autodoc_autoclass.py::test_show_inheritance_for_subclass_of_generic_type
+ tests/test_ext_autodoc_autofunction.py::test_builtin_function
+ tests/test_ext_autodoc_autofunction.py::test_methoddescriptor
+ tests/test_ext_autodoc_automodule.py::test_automodule_inherited_members
+ tests/test_ext_autosummary.py::test_autosummary_generate_content_for_module
+ tests/test_ext_autosummary.py::test_autosummary_generate_content_for_module_skipped
+ tests/test_util_inspect.py::test_isattributedescriptor
+ tests/test_util_typing.py::test_stringify_type_hints_pep_585
+ )
+
+ epytest
+}
diff --git a/dev-python/sphinxcontrib-doxylink/Manifest b/dev-python/sphinxcontrib-doxylink/Manifest
index a37f9d4d74ff..2b92572c2717 100644
--- a/dev-python/sphinxcontrib-doxylink/Manifest
+++ b/dev-python/sphinxcontrib-doxylink/Manifest
@@ -1 +1,2 @@
DIST sphinxcontrib-doxylink-1.12.0.gh.tar.gz 22589 BLAKE2B 322fdd0968147abc480a88247ee724daa8c4da4519ff97280af1d81e9f36d4636aca358f5bb1ba08e5ff0f138cf8446194d1fe819a9d18a227eb463b20ee5738 SHA512 7626fad06613a614b5d6efdea088825732571c7ed45f6f2d69f34e0aede020df0930716cb34ca14260891a29aa152019c7bfae8aad729039642ea1c6bbf7d09e
+DIST sphinxcontrib-doxylink-1.12.1.gh.tar.gz 22622 BLAKE2B 2818dc9e155156e60a23183ac35e72b51f316e5e3a8f08379236a141436bbca4fee2ad534a391495dbe9bbc7c0d9f32526f5646592d16c1610121c36275a4c27 SHA512 164c523d6fb081d2ee70fa249901eb0fa3233d20a2ba73b52c4f7bf5f31c3f088c0420e39ace36c66a65fceccc137d6d62c28f7b7b58f3fbf96a3f2f73372fc8
diff --git a/dev-python/sphinxcontrib-doxylink/sphinxcontrib-doxylink-1.12.1.ebuild b/dev-python/sphinxcontrib-doxylink/sphinxcontrib-doxylink-1.12.1.ebuild
new file mode 100644
index 000000000000..a7509236861c
--- /dev/null
+++ b/dev-python/sphinxcontrib-doxylink/sphinxcontrib-doxylink-1.12.1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2022 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} )
+
+inherit distutils-r1
+
+DESCRIPTION="Extension to link to external Doxygen API documentation"
+HOMEPAGE="
+ https://pypi.org/project/sphinxcontrib-doxylink/
+ https://pythonhosted.org/sphinxcontrib-doxylink/
+ https://github.com/sphinx-contrib/doxylink/
+"
+SRC_URI="
+ https://github.com/sphinx-contrib/doxylink/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S="${WORKDIR}/doxylink-${PV}"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/sphinx-1.6[${PYTHON_USEDEP}]
+ >=dev-python/pyparsing-3.0.8[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.8.2[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ test? (
+ app-doc/doxygen
+ >=dev-python/testfixtures-6.18.5[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx doc
+
+python_test() {
+ distutils_write_namespace sphinxcontrib
+ cd "${T}" || die
+ epytest "${S}"/tests
+}
diff --git a/dev-python/tifffile/Manifest b/dev-python/tifffile/Manifest
index 0516edac84ea..88f31bde4230 100644
--- a/dev-python/tifffile/Manifest
+++ b/dev-python/tifffile/Manifest
@@ -1 +1,2 @@
DIST tifffile-2022.5.4.gh.tar.gz 290116 BLAKE2B 4c608ad38ad7ada0e1b41512eae7b4109680cab1f5623ea3cd6c01dfe17b534b518868ee21879ecfa9909f7680a04fbb63967b5c8064062cc325286baaaccb6b SHA512 cc6139872c42e0e2840a9774989b5cba57ef8957e2efa4349e7b224c61ebb8ad34287b9305dddd85b1239d03be4ada73526259b038c19c73513007e5f63d224d
+DIST tifffile-2022.7.28.gh.tar.gz 309010 BLAKE2B 4a52a688ce7f09265592f8bd2bed2eaf9648304908aa1b190c07a22b58f10bb3f71f9ea1f9a612a2592f75f457acc04cc2139ef0cbd75ea40a7e91408075062b SHA512 12647884cb77fc8e414c09aface82def1ad2bb0a11a1f17fa00e6954cf565a906b6a8c9e861d0a476a86ef8ea25da12d1069199109cb84030d312021d722f23e
diff --git a/dev-python/tifffile/tifffile-2022.7.28.ebuild b/dev-python/tifffile/tifffile-2022.7.28.ebuild
new file mode 100644
index 000000000000..3afef0f99871
--- /dev/null
+++ b/dev-python/tifffile/tifffile-2022.7.28.ebuild
@@ -0,0 +1,53 @@
+# Copyright 2021-2022 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} )
+
+inherit distutils-r1
+
+DESCRIPTION="Read and write TIFF files"
+HOMEPAGE="
+ https://pypi.org/project/tifffile/
+ https://github.com/cgohlke/tifffile/
+ https://www.lfd.uci.edu/~gohlke/
+"
+SRC_URI="
+ https://github.com/cgohlke/tifffile/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/numpy-1.19.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/dask[${PYTHON_USEDEP}]
+ >=dev-python/fsspec-2021.5.0[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/xarray[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # Internet
+ tests/test_tifffile.py::test_class_omexml
+ tests/test_tifffile.py::test_class_omexml_fail
+ tests/test_tifffile.py::test_class_omexml_modulo
+ tests/test_tifffile.py::test_class_omexml_attributes
+ tests/test_tifffile.py::test_class_omexml_multiimage
+ tests/test_tifffile.py::test_write_ome
+ tests/test_tifffile.py::test_write_ome_manual
+ # requires tons of free space
+ tests/test_tifffile.py::test_write_3gb
+ tests/test_tifffile.py::test_write_bigtiff
+ 'tests/test_tifffile.py::test_write_imagej_raw'
+)
diff --git a/dev-python/virtualenv/Manifest b/dev-python/virtualenv/Manifest
index c4e9ec5619ea..a6a9227684fa 100644
--- a/dev-python/virtualenv/Manifest
+++ b/dev-python/virtualenv/Manifest
@@ -2,3 +2,4 @@ DIST virtualenv-20.14.1.tar.gz 12216889 BLAKE2B 7d06b47629dcf4a60299b9b0a192478b
DIST virtualenv-20.15.0.tar.gz 13523195 BLAKE2B c5d4b1fd78998ccdc7a041d11e0fcb569bfd00151975170260e245726eee03b4ef1cf758d43175312e69e4b482f9ec17b4e93e6854c3bfeafa2304eef2688a20 SHA512 2e3cddae926f89ef986a85ddf592b38d53401212e974b65243b9f47290b653798ab2405920c28d3a7961aeb726f25ed6401e19661f1e9ce7afd195e87a0524ab
DIST virtualenv-20.15.1.tar.gz 13523736 BLAKE2B 4f8d491fae7c0c28ae349845c4c5ddd27e53b9007a427c8a36e66a427269b519829f1c351f028b63fe38b49e934f4e209bd2cf2e07363171f732c6b0a052a3bc SHA512 244e3b091c8b049edbb07d808633fd44b3327200e1d38394814794773d05723ef535721ee163b382d23bc16572d55657b5c2544efd83494753746cc85116696a
DIST virtualenv-20.16.0.tar.gz 12217565 BLAKE2B 534d665b56191c2e804306677b6771d3d0fa6104c476f8f17fbf40c2f8a3b7ccf6ffa9f8dec4d8de515f610f2ffc7b5d67bc99d82be4c0cc73990e5664a1d1e3 SHA512 f34827ec0e1b7325ee23b53b5fa2c36c1377d3fe7265b7187cf43592f74b37d66747abf69f0f33850212bf3aa69c98147cfffc37b311b98a1127f7ac5d9c69e4
+DIST virtualenv-20.16.2.tar.gz 12217706 BLAKE2B 1dff9c8697eb80cf590819c451790599977d52dcfe2935c7d9e355aeb34c9b3bd4f6d97bb051c7a02ba95878717fac82766a0370124d21a4c89fee42a31bbb31 SHA512 3998ea1e70a56d859be808059249251ca944216998a48af70db731cf5655624c12078d94caa5827ab41326cfd702319d3a486fbc0fe424369e07df39c9cd8ce9
diff --git a/dev-python/virtualenv/virtualenv-20.15.1.ebuild b/dev-python/virtualenv/virtualenv-20.15.1.ebuild
index 59946a3286d1..d1df9021d54c 100644
--- a/dev-python/virtualenv/virtualenv-20.15.1.ebuild
+++ b/dev-python/virtualenv/virtualenv-20.15.1.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
SLOT="0"
RDEPEND="
diff --git a/dev-python/virtualenv/virtualenv-20.16.2.ebuild b/dev-python/virtualenv/virtualenv-20.16.2.ebuild
new file mode 100644
index 000000000000..b2a8d7d69b43
--- /dev/null
+++ b/dev-python/virtualenv/virtualenv-20.16.2.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2022 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} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Virtual Python Environment builder"
+HOMEPAGE="
+ https://virtualenv.pypa.io/en/stable/
+ https://pypi.org/project/virtualenv/
+ https://github.com/pypa/virtualenv/
+"
+SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/distlib-0.3.1[${PYTHON_USEDEP}]
+ >=dev-python/filelock-3[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-2[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-41[${PYTHON_USEDEP}]
+ >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+"
+# coverage is used somehow magically in virtualenv, maybe it actually
+# tests something useful
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/coverage[${PYTHON_USEDEP}]
+ dev-python/flaky[${PYTHON_USEDEP}]
+ >=dev-python/pip-20.0.2[${PYTHON_USEDEP}]
+ >=dev-python/pytest-freezegun-0.4.1[${PYTHON_USEDEP}]
+ >=dev-python/pytest-mock-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-timeout-1.3.4[${PYTHON_USEDEP}]
+ dev-python/wheel[${PYTHON_USEDEP}]
+ >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
+ )
+"
+
+# (unpackaged deps)
+#distutils_enable_sphinx docs \
+# dev-python/sphinx-argparse \
+# dev-python/sphinx_rtd_theme \
+# dev-python/towncrier
+distutils_enable_tests pytest
+
+src_configure() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ tests/unit/activation/test_xonsh.py
+ tests/unit/seed/embed/test_bootstrap_link_via_app_data.py::test_seed_link_via_app_data
+ tests/unit/create/test_creator.py::test_cross_major
+ # tests failing without python2 installed
+ "tests/unit/create/test_creator.py::test_py_pyc_missing[True-False]"
+ "tests/unit/create/test_creator.py::test_py_pyc_missing[False-False]"
+ )
+ [[ ${EPYTHON} == pypy3 ]] && EPYTEST_DESELECT+=(
+ 'tests/unit/create/test_creator.py::test_create_no_seed[root-pypy3-posix-copies-isolated]'
+ 'tests/unit/create/test_creator.py::test_create_no_seed[root-pypy3-posix-copies-global]'
+ 'tests/unit/create/test_creator.py::test_create_no_seed[venv-pypy3-posix-copies-isolated]'
+ 'tests/unit/create/test_creator.py::test_create_no_seed[venv-pypy3-posix-copies-global]'
+ 'tests/unit/create/test_creator.py::test_create_no_seed[root-venv-copies-isolated]'
+ 'tests/unit/create/test_creator.py::test_create_no_seed[root-venv-copies-global]'
+ 'tests/unit/create/test_creator.py::test_create_no_seed[venv-venv-copies-isolated]'
+ 'tests/unit/create/test_creator.py::test_create_no_seed[venv-venv-copies-global]'
+ 'tests/unit/create/test_creator.py::test_zip_importer_can_import_setuptools'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3.7.9-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3.7.9--bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3.7.10-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3.7.10--bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3.7-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3.7--bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[PyPy-3--bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3.7.9-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3.7.9--bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3.7.10-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3.7.10--bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3.7-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3.7--bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3-64-bin-]'
+ 'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3--bin-]'
+ )
+ [[ ${EPYTHON} == python3.11 ]] && EPYTEST_DESELECT+=(
+ # TODO
+ tests/unit/discovery/py_info/test_py_info.py::test_py_info_setuptools
+ tests/unit/discovery/py_info/test_py_info.py::test_custom_venv_install_scheme_is_prefered
+ )
+
+ epytest
+}
+
+pkg_postinst() {
+ elog "Please note that while virtualenv package no longer supports"
+ elog "Python 2.7, you can still create py2.7 virtualenvs via:"
+ elog " $ virtualenv -p 2.7 ..."
+}
diff --git a/dev-python/watchfiles/Manifest b/dev-python/watchfiles/Manifest
index 2650595fa5a5..902da412506d 100644
--- a/dev-python/watchfiles/Manifest
+++ b/dev-python/watchfiles/Manifest
@@ -40,6 +40,7 @@ DIST walkdir-2.3.2.crate 23516 BLAKE2B 473f2b51aafd6ac17e5c3da8d545d179b31486b3a
DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
DIST watchfiles-0.15.0.gh.tar.gz 38496 BLAKE2B b748904540c28bac3a3be3a1a236352bdba316d1230b196ce1d0ec90324299664c065d1644f7eeafa232e197493aba5b8685db5583c9899f57262651f0e53dc7 SHA512 1398c3337cd0f36bfd489dbca4c968bae2c23949d43567777411c1e9773ac633962164d61dcc84d462adba9d79e108ec98fc31866f364bfa72c26599d12a6fdc
DIST watchfiles-0.16.0.gh.tar.gz 40356 BLAKE2B beb71a54a12a36f97bdbd710a6a9f0d82d1ecb9a4a19f64dfa503ff96b882afbb90679925d86d74d2bbc570a1e98e3c18df8dac539c19e2536bea69d343dddb7 SHA512 72bb989643111257326fb2185e2d7a5ee945ee75c1645287ab05486c1ada700b4f7924c0871ea304c72ee6f222e776e1f86ab8718d0300f916f9948009f721d5
+DIST watchfiles-0.16.1.gh.tar.gz 40404 BLAKE2B 885cb2a0a8ccaf7cbde85524a9f6efbaba713ad8e3eff39b1685cfea201d56ddb006be96169de25e6d7000b8bf7d9bc71de449a7f8493f4bf55b1239ff2c8444 SHA512 fd797c471d3f0db475322398d09cc88f390fb4c348d9fa01c3a41cefa8f797e007e8b223acf5e09f277bb7f37443063daa9a38bda3cd137edc102d23a7f15e65
DIST winapi-0.3.9.crate 1200382 BLAKE2B cb5799749ccd935ea2d7068d953cecf19f543d9db7dc16ad4584bb7005373ada34937a3ced7225544d8bc765da599911c7a3190efefb3a25b7c1bb7123b4f673 SHA512 ff8b7b78065f3d8999ec03c725a0460ebc059771bf071c7a3df3f0ecd733edf3b0a2450024d4e24e1aedddaecd9038ce1376c0d8bbf45132068cf45cf4a53a97
DIST winapi-i686-pc-windows-gnu-0.4.0.crate 2918815 BLAKE2B 4d357e4d30f9552972170d65b9a5358b69c46a3e772fe05efc22f3d4ffc1caeeaad7aacdc7abd503a7ad0545f8bd7d22bf351dcb6df76f812fa4d45c34d65df0 SHA512 a672ccefd0730a8166fef1d4e39f9034d9ae426a3f5e28d1f4169fa5c5790767693f281d890e7804773b34acdb0ae1febac33cde8c50c0044a5a6152c7209ec2
DIST winapi-util-0.1.5.crate 10164 BLAKE2B fc800aceae5249a858c806c3e969ef2545766099872d856ebee51c883d9acf1122278db9607d50ca53eac351502b700fd2463900932d342240f97f683d517963 SHA512 7baeb661f397c4693dfa001fdc774b323c51a7c55caad40f2de5112a1cefd1d6151e3df41fa4ee193460a5905917c83d2b1de5fa10b4bd014ad96690af95c0fd
diff --git a/dev-python/watchfiles/watchfiles-0.16.1.ebuild b/dev-python/watchfiles/watchfiles-0.16.1.ebuild
new file mode 100644
index 000000000000..09b761cc42da
--- /dev/null
+++ b/dev-python/watchfiles/watchfiles-0.16.1.ebuild
@@ -0,0 +1,109 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=maturin
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+CRATES="
+ autocfg-1.1.0
+ bitflags-1.3.2
+ cfg-if-1.0.0
+ crossbeam-channel-0.5.4
+ crossbeam-utils-0.8.8
+ filetime-0.2.16
+ fsevent-sys-4.1.0
+ indoc-1.0.4
+ inotify-0.9.6
+ inotify-sys-0.1.5
+ kqueue-1.0.5
+ kqueue-sys-1.0.3
+ lazy_static-1.4.0
+ libc-0.2.124
+ lock_api-0.4.7
+ log-0.4.16
+ mio-0.8.2
+ miow-0.3.7
+ notify-5.0.0-pre.15
+ ntapi-0.3.7
+ once_cell-1.10.0
+ parking_lot-0.12.0
+ parking_lot_core-0.9.2
+ proc-macro2-1.0.37
+ pyo3-0.16.4
+ pyo3-build-config-0.16.4
+ pyo3-ffi-0.16.4
+ pyo3-macros-0.16.4
+ pyo3-macros-backend-0.16.4
+ quote-1.0.18
+ redox_syscall-0.2.13
+ same-file-1.0.6
+ scopeguard-1.1.0
+ smallvec-1.8.0
+ syn-1.0.91
+ target-lexicon-0.12.3
+ unicode-xid-0.2.2
+ unindent-0.1.8
+ walkdir-2.3.2
+ wasi-0.11.0+wasi-snapshot-preview1
+ winapi-0.3.9
+ winapi-i686-pc-windows-gnu-0.4.0
+ winapi-util-0.1.5
+ winapi-x86_64-pc-windows-gnu-0.4.0
+ windows-sys-0.34.0
+ windows_aarch64_msvc-0.34.0
+ windows_i686_gnu-0.34.0
+ windows_i686_msvc-0.34.0
+ windows_x86_64_gnu-0.34.0
+ windows_x86_64_msvc-0.34.0
+"
+
+inherit cargo distutils-r1
+
+DESCRIPTION="Simple, modern file watching and code reload in Python"
+HOMEPAGE="
+ https://pypi.org/project/watchfiles/
+ https://github.com/samuelcolvin/watchfiles/
+"
+SRC_URI="
+ https://github.com/samuelcolvin/watchfiles/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ $(cargo_crate_uris ${CRATES})
+"
+
+LICENSE="MIT"
+# crates
+LICENSE+=" Apache-2.0 Apache-2.0-with-LLVM-exceptions Artistic-2 BSD"
+LICENSE+=" CC0-1.0 ISC MIT Unlicense"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ =dev-python/anyio-3*[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools-rust[${PYTHON_USEDEP}]
+ test? (
+ dev-python/dirty-equals[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ )
+"
+
+# enjoy Rust
+QA_FLAGS_IGNORED=".*/_rust_notify.*"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # fix version number
+ sed -i -e "/^version/s:0\.0\.0:${PV}:" Cargo.toml || die
+}
+
+python_test() {
+ rm -rf watchfiles || die
+ epytest
+}
diff --git a/dev-python/werkzeug/Manifest b/dev-python/werkzeug/Manifest
index 1eca60fcf8c3..e1aff198a676 100644
--- a/dev-python/werkzeug/Manifest
+++ b/dev-python/werkzeug/Manifest
@@ -1,2 +1,3 @@
DIST werkzeug-2.1.2.gh.tar.gz 833667 BLAKE2B e045f566862bfe0f86185cd10aa26bf94a4fc2f7b23173c6a28c9b55d0f239fbba5c66071fab5df6102717b51a1c1fada872e9d9383b9d3b34ab92ffcfd96e59 SHA512 28c4a794a3dbc8423e59244fbcf192b60b53f378444aaaf60330bdd62cec38a4625033b5d72b55613c8b26053a60153ddcb816331ff28ad3ee03bede74d8b1b3
DIST werkzeug-2.2.0.gh.tar.gz 839619 BLAKE2B b6eae91d9a44d030517be5da13c448cf4a2778db7cde61ce36add8dea6f2ac251b31e71d128c4156f44083a4c1b77e546a7e6c55787d8beb93c49538d45b51fd SHA512 2de05269ccd3d83728d435d2f155887a5fd3f3bda9b71c32ffd64b089116c80e89319870fa082f1c6feeeb797b665521b9692ce6c87dcb48b7fa49b2fc63516b
+DIST werkzeug-2.2.1.gh.tar.gz 840062 BLAKE2B da7c59eb182e2318c291a6d346a2a444cc054726dd3cf47617b82440383a4c1068b4a31adb6f44d1b965e2efbacf7469c1845d3666fe24288e976bc25794ebcf SHA512 466d164f8a5861cd36eaaf3674a8bb6640593981007d1d6bced1abbdaf8c6a39666601960ebfb2dc35b7c9c17a961ea07bf919cd646c282d27fd5e0f36cc3035
diff --git a/dev-python/werkzeug/werkzeug-2.2.1.ebuild b/dev-python/werkzeug/werkzeug-2.2.1.ebuild
new file mode 100644
index 000000000000..43c043feb11d
--- /dev/null
+++ b/dev-python/werkzeug/werkzeug-2.2.1.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2022 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} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Collection of various utilities for WSGI applications"
+HOMEPAGE="
+ https://palletsprojects.com/p/werkzeug/
+ https://pypi.org/project/Werkzeug/
+ https://github.com/pallets/werkzeug/
+"
+SRC_URI="
+ https://github.com/pallets/werkzeug/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/markupsafe-2.1.1[${PYTHON_USEDEP}]
+"
+# NOTE: remove the loong mask after greenlet gains support for loong
+# see https://github.com/python-greenlet/greenlet/pull/257
+BDEPEND="
+ test? (
+ dev-python/ephemeral-port-reserve[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/pytest-xprocess[${PYTHON_USEDEP}]
+ dev-python/watchdog[${PYTHON_USEDEP}]
+ !alpha? ( !hppa? ( !ia64? (
+ $(python_gen_cond_dep '
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ ' python3_{8..11} pypy3 # TODO: add py3.11 when ported
+ )
+ ) ) )
+ !hppa? ( !ia64? ( !loong? (
+ $(python_gen_cond_dep '
+ dev-python/greenlet[${PYTHON_USEDEP}]
+ ' python3_{8..10})
+ ) ) )
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=()
+ if ! has_version "dev-python/cryptography[${PYTHON_USEDEP}]"; then
+ EPYTEST_DESELECT+=(
+ "tests/test_serving.py::test_server[https]"
+ tests/test_serving.py::test_ssl_dev_cert
+ tests/test_serving.py::test_ssl_object
+ )
+ fi
+
+ # the default portage tempdir is too long for AF_UNIX sockets
+ local -x TMPDIR=/tmp
+ epytest -p no:django -p no:httpbin tests
+}