summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2023-05-29 01:23:18 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2023-05-29 01:23:18 +0000
commit4ac9d95b9cabcb380254e7c7f1060a3c281c83a3 (patch)
treed7d09e3e2a0a36a6a5590c0655965934b4f69465 /dev-python
parentc75cc8dbd0ca371afa6f110fd0ca079d48d572ed (diff)
downloadbaldeagleos-repo-4ac9d95b9cabcb380254e7c7f1060a3c281c83a3.tar.gz
baldeagleos-repo-4ac9d95b9cabcb380254e7c7f1060a3c281c83a3.tar.xz
baldeagleos-repo-4ac9d95b9cabcb380254e7c7f1060a3c281c83a3.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Babel/Babel-2.12.1.ebuild13
-rw-r--r--dev-python/argcomplete/argcomplete-3.0.8.ebuild2
-rw-r--r--dev-python/bottle/bottle-0.12.25-r1.ebuild50
-rw-r--r--dev-python/bottle/files/bottle-0.12.25-py312.patch35
-rw-r--r--dev-python/constantly/constantly-15.1.0-r3.ebuild33
-rw-r--r--dev-python/dogpile-cache/dogpile-cache-1.2.1.ebuild2
-rw-r--r--dev-python/incremental/incremental-22.10.0-r1.ebuild29
-rw-r--r--dev-python/ipython/ipython-8.13.2.ebuild2
-rw-r--r--dev-python/langdetect/Manifest2
-rw-r--r--dev-python/langdetect/metadata.xml10
-rw-r--r--dev-python/logical-unification/logical-unification-0.4.6.ebuild2
-rw-r--r--dev-python/mkdocs-i18n/mkdocs-i18n-0.4.5.ebuild2
-rw-r--r--dev-python/notebook-shim/notebook-shim-0.2.3.ebuild2
-rw-r--r--dev-python/openstacksdk/openstacksdk-1.2.0.ebuild2
-rw-r--r--dev-python/pallets-sphinx-themes/pallets-sphinx-themes-2.1.0.ebuild2
-rw-r--r--dev-python/paste/paste-3.5.3.ebuild2
-rw-r--r--dev-python/platformdirs/platformdirs-3.5.1.ebuild2
-rw-r--r--dev-python/priority/priority-1.3.0-r1.ebuild19
-rw-r--r--dev-python/priority/priority-2.0.0-r1.ebuild19
-rw-r--r--dev-python/pycurl/files/pycurl-7.45.2-skip-http3-test.patch28
-rw-r--r--dev-python/pycurl/pycurl-7.45.2.ebuild4
-rw-r--r--dev-python/pylibacl/pylibacl-0.7.0.ebuild2
-rw-r--r--dev-python/pyproject-fmt/pyproject-fmt-0.11.2.ebuild2
-rw-r--r--dev-python/redis/redis-4.5.5.ebuild2
-rw-r--r--dev-python/send2trash/send2trash-1.8.2.ebuild2
-rw-r--r--dev-python/setuptools-rust/setuptools-rust-1.6.0.ebuild2
-rw-r--r--dev-python/survey/Manifest2
-rw-r--r--dev-python/survey/survey-4.3.0_alpha.ebuild (renamed from dev-python/survey/survey-4.2.1_alpha.ebuild)0
-rw-r--r--dev-python/tldextract/tldextract-3.4.4.ebuild2
-rw-r--r--dev-python/tomlkit/tomlkit-0.11.8.ebuild2
-rw-r--r--dev-python/tornado/files/tornado-6.3.2-ignore-deprecationwarning.patch12
-rw-r--r--dev-python/tornado/tornado-6.3.2.ebuild6
-rw-r--r--dev-python/twisted/files/twisted-22.10.0-python3.11-tests.patch100
-rw-r--r--dev-python/twisted/files/twisted-22.10.0-sendmail.patch28
-rw-r--r--dev-python/twisted/files/twisted-22.10.0-time.patch113
-rw-r--r--dev-python/twisted/twisted-22.10.0-r3.ebuild173
-rw-r--r--dev-python/werkzeug/werkzeug-2.3.4.ebuild2
37 files changed, 683 insertions, 29 deletions
diff --git a/dev-python/Babel/Babel-2.12.1.ebuild b/dev-python/Babel/Babel-2.12.1.ebuild
index 70f7a0671818..e04d0ad971e9 100644
--- a/dev-python/Babel/Babel-2.12.1.ebuild
+++ b/dev-python/Babel/Babel-2.12.1.ebuild
@@ -61,6 +61,19 @@ python_configure() {
}
python_test() {
+ local EPYTEST_DESELECT=()
+ if [[ ${EPYTHON} == python3.12 ]]; then
+ EPYTEST_DESELECT+=(
+ # seems to be a corner case, might be a regression in cpython
+ # https://github.com/python-babel/babel/issues/1005
+ tests/messages/test_extract.py::ExtractPythonTestCase::test_utf8_message_with_utf8_bom
+ tests/messages/test_extract.py::ExtractPythonTestCase::test_utf8_message_with_utf8_bom_and_magic_comment
+ tests/messages/test_extract.py::ExtractPythonTestCase::test_utf8_raw_strings_match_unicode_strings
+ tests/messages/test_extract.py::ExtractTestCase::test_f_strings
+ tests/messages/test_extract.py::ExtractTestCase::test_f_strings_non_utf8
+ )
+ fi
+
local -x TZ=UTC
epytest
}
diff --git a/dev-python/argcomplete/argcomplete-3.0.8.ebuild b/dev-python/argcomplete/argcomplete-3.0.8.ebuild
index a8131e060a2c..60e3cbc3a816 100644
--- a/dev-python/argcomplete/argcomplete-3.0.8.ebuild
+++ b/dev-python/argcomplete/argcomplete-3.0.8.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
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 ~x64-macos"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/bottle/bottle-0.12.25-r1.ebuild b/dev-python/bottle/bottle-0.12.25-r1.ebuild
new file mode 100644
index 000000000000..50a8bdb36d03
--- /dev/null
+++ b/dev-python/bottle/bottle-0.12.25-r1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
+
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="A fast and simple micro-framework for small web-applications"
+HOMEPAGE="
+ https://bottlepy.org/
+ https://github.com/bottlepy/bottle/
+ https://pypi.org/project/bottle/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/mako[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ # https://github.com/bottlepy/bottle/issues/1422
+ "${FILESDIR}/${P}-py312.patch"
+)
+
+distutils_enable_tests unittest
+
+python_prepare_all() {
+ sed -e '/scripts/d' -i setup.py || die
+
+ # Remove test file requiring connection to network
+ rm test/test_server.py || die
+ distutils-r1_python_prepare_all
+}
+
+pkg_postinst() {
+ optfeature "Templating support" dev-python/mako
+ elog "Due to problems with bottle.py being in /usr/bin (see bug #474874)"
+ elog "we do as most other distros and do not install the script anymore."
+ elog "If you do want/have to call it directly rather than through your app,"
+ elog "please use the following instead:"
+ elog ' `python -m bottle`'
+}
diff --git a/dev-python/bottle/files/bottle-0.12.25-py312.patch b/dev-python/bottle/files/bottle-0.12.25-py312.patch
new file mode 100644
index 000000000000..717463841af5
--- /dev/null
+++ b/dev-python/bottle/files/bottle-0.12.25-py312.patch
@@ -0,0 +1,35 @@
+From ca6762c559c5e71e0dff71dc97eb4c6b3ed9bbcd Mon Sep 17 00:00:00 2001
+From: Marcel Hellkamp <marc@gsites.de>
+Date: Sun, 12 Jun 2022 15:15:35 +0200
+Subject: [PATCH] Fix #1378: Module loader should move from find_mdoule to
+ find_spec.
+
+---
+ bottle.py | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/bottle.py b/bottle.py
+index 8e7e3d7..63e55cf 100755
+--- a/bottle.py
++++ b/bottle.py
+@@ -2068,10 +2068,15 @@ class _ImportRedirect(object):
+ })
+ sys.meta_path.append(self)
+
++ def find_spec(self, fullname, path, target=None):
++ if '.' not in fullname: return
++ if fullname.rsplit('.', 1)[0] != self.name: return
++ from importlib.util import spec_from_loader
++ return spec_from_loader(fullname, self)
++
+ def find_module(self, fullname, path=None):
+ if '.' not in fullname: return
+- packname = fullname.rsplit('.', 1)[0]
+- if packname != self.name: return
++ if fullname.rsplit('.', 1)[0] != self.name: return
+ return self
+
+ def load_module(self, fullname):
+--
+2.40.1
+
diff --git a/dev-python/constantly/constantly-15.1.0-r3.ebuild b/dev-python/constantly/constantly-15.1.0-r3.ebuild
new file mode 100644
index 000000000000..870d97fe86e9
--- /dev/null
+++ b/dev-python/constantly/constantly-15.1.0-r3.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Symbolic constants in Python"
+HOMEPAGE="https://github.com/twisted/constantly https://pypi.org/project/constantly/"
+SRC_URI="https://github.com/twisted/constantly/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ dev-python/versioneer[${PYTHON_USEDEP}]
+ test? ( dev-python/twisted[${PYTHON_USEDEP}] )
+"
+
+distutils_enable_tests setup.py
+
+python_prepare_all() {
+ # https://github.com/twisted/constantly/pull/27
+ rm versioneer.py || die
+
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/dogpile-cache/dogpile-cache-1.2.1.ebuild b/dev-python/dogpile-cache/dogpile-cache-1.2.1.ebuild
index 1fd73411dc78..6e62e209e2a7 100644
--- a/dev-python/dogpile-cache/dogpile-cache-1.2.1.ebuild
+++ b/dev-python/dogpile-cache/dogpile-cache-1.2.1.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm arm64 ~riscv x86"
RDEPEND="
>=dev-python/decorator-4.0.0[${PYTHON_USEDEP}]
diff --git a/dev-python/incremental/incremental-22.10.0-r1.ebuild b/dev-python/incremental/incremental-22.10.0-r1.ebuild
new file mode 100644
index 000000000000..5785730b2c3e
--- /dev/null
+++ b/dev-python/incremental/incremental-22.10.0-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Incremental is a small library that versions your Python projects"
+HOMEPAGE="https://github.com/twisted/incremental https://pypi.org/project/incremental/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-python/click[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? ( dev-python/twisted[${PYTHON_USEDEP}] )"
+
+python_test() {
+ "${EPYTHON}" -m twisted.trial incremental ||
+ die "Tests failed on ${EPYTHON}"
+}
diff --git a/dev-python/ipython/ipython-8.13.2.ebuild b/dev-python/ipython/ipython-8.13.2.ebuild
index 1aaaa18f9562..aab38ab1ea02 100644
--- a/dev-python/ipython/ipython-8.13.2.ebuild
+++ b/dev-python/ipython/ipython-8.13.2.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="doc examples notebook nbconvert qt5 +smp test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest
index e9da2ac43cac..a11d7c268c91 100644
--- a/dev-python/langdetect/Manifest
+++ b/dev-python/langdetect/Manifest
@@ -1,3 +1 @@
DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db
-EBUILD langdetect-1.0.9.ebuild 493 BLAKE2B 0df8bce19bc80f79f8e76bcef5a4c2caf333365fe0cb9a3c076b7858bceded5a3e58921474f866a2709dd657b7ed330c1ec4a7f9d7bab0fcf1bc92d77cabc32d SHA512 ea2a1adcb133ac5fc951ba1aa90ef1ce3dfcc424e59727591763d4875aa044a74188be2d15fd89c6b2e83ed6ea04ec3d9851ed584ae79d2c2c127bde7d994b48
-MISC metadata.xml 457 BLAKE2B 630128a3e982b6d60cc7b9f74c79fcb5ee47a71a02c73a50af9da8cedb6fad8e20a7f74b881e5b25c6483b92c9edbd56552cd38b2d9cbfa8b3eb4530facea969 SHA512 674f4f5cd809c6c77bc14e0f5687fa972bef14bdfa0b3343c5d66b7163eef1906eb87d060c8288732f825de71dce291ad0b841a5f2f0dd230f957b5687e45d45
diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml
index 020e07f2a3dd..ddb5b0f1787e 100644
--- a/dev-python/langdetect/metadata.xml
+++ b/dev-python/langdetect/metadata.xml
@@ -2,11 +2,9 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>marcin.deranek@slonko.net</email>
- <name>Marcin Deranek</name>
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
</maintainer>
- <upstream>
- <bugs-to>https://github.com/Mimino666/langdetect/issues</bugs-to>
- </upstream>
- <origin>slonko-overlay</origin>
+
+ <origin>gentoo-guru-overlay</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/logical-unification/logical-unification-0.4.6.ebuild b/dev-python/logical-unification/logical-unification-0.4.6.ebuild
index b40803afbbfd..6ecf2ea42f9d 100644
--- a/dev-python/logical-unification/logical-unification-0.4.6.ebuild
+++ b/dev-python/logical-unification/logical-unification-0.4.6.ebuild
@@ -33,4 +33,6 @@ distutils_enable_tests pytest
EPYTEST_DESELECT=(
tests/test_benchmarks.py
+ # weird test for testing limits of runtime
+ tests/test_core.py::test_reify_recursion_limit
)
diff --git a/dev-python/mkdocs-i18n/mkdocs-i18n-0.4.5.ebuild b/dev-python/mkdocs-i18n/mkdocs-i18n-0.4.5.ebuild
index aa593ceb52c2..56ee53995cef 100644
--- a/dev-python/mkdocs-i18n/mkdocs-i18n-0.4.5.ebuild
+++ b/dev-python/mkdocs-i18n/mkdocs-i18n-0.4.5.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="AGPL-3"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv x86"
RDEPEND="
>=dev-python/mkdocs-1.1[${PYTHON_USEDEP}]
diff --git a/dev-python/notebook-shim/notebook-shim-0.2.3.ebuild b/dev-python/notebook-shim/notebook-shim-0.2.3.ebuild
index d969ec9350f3..89f5e7914bbb 100644
--- a/dev-python/notebook-shim/notebook-shim-0.2.3.ebuild
+++ b/dev-python/notebook-shim/notebook-shim-0.2.3.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
<dev-python/jupyter-server-3[${PYTHON_USEDEP}]
diff --git a/dev-python/openstacksdk/openstacksdk-1.2.0.ebuild b/dev-python/openstacksdk/openstacksdk-1.2.0.ebuild
index 90a810d51d04..3ba28fe7fb8c 100644
--- a/dev-python/openstacksdk/openstacksdk-1.2.0.ebuild
+++ b/dev-python/openstacksdk/openstacksdk-1.2.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm arm64 ~riscv x86"
RDEPEND="
>=dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
diff --git a/dev-python/pallets-sphinx-themes/pallets-sphinx-themes-2.1.0.ebuild b/dev-python/pallets-sphinx-themes/pallets-sphinx-themes-2.1.0.ebuild
index 4c74b60e9330..8fea8f168998 100644
--- a/dev-python/pallets-sphinx-themes/pallets-sphinx-themes-2.1.0.ebuild
+++ b/dev-python/pallets-sphinx-themes/pallets-sphinx-themes-2.1.0.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
dev-python/jinja[${PYTHON_USEDEP}]
diff --git a/dev-python/paste/paste-3.5.3.ebuild b/dev-python/paste/paste-3.5.3.ebuild
index b9c5f56e0660..3908600e0346 100644
--- a/dev-python/paste/paste-3.5.3.ebuild
+++ b/dev-python/paste/paste-3.5.3.ebuild
@@ -40,7 +40,7 @@ python_test() {
tests/test_proxy.py
)
- [[ ${EPYTHON} == python3.11 ]] && EPYTEST_DESELECT+=(
+ [[ ${EPYTHON} == python3.1[12] ]] && EPYTEST_DESELECT+=(
# fails due to cgi deprecation warning
tests/test_cgiapp.py::test_form
)
diff --git a/dev-python/platformdirs/platformdirs-3.5.1.ebuild b/dev-python/platformdirs/platformdirs-3.5.1.ebuild
index 2c65d0f2dfcc..7b5d8dcef438 100644
--- a/dev-python/platformdirs/platformdirs-3.5.1.ebuild
+++ b/dev-python/platformdirs/platformdirs-3.5.1.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos ~x64-solaris"
BDEPEND="
test? (
diff --git a/dev-python/priority/priority-1.3.0-r1.ebuild b/dev-python/priority/priority-1.3.0-r1.ebuild
index 43edb3c815cd..cdd3e85a3774 100644
--- a/dev-python/priority/priority-1.3.0-r1.ebuild
+++ b/dev-python/priority/priority-1.3.0-r1.ebuild
@@ -4,7 +4,8 @@
EAPI=8
DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
+PYTHON_TESTED=( python3_{7,8,9,10,11} pypy3 )
+PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
inherit distutils-r1 pypi
@@ -20,7 +21,11 @@ SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
BDEPEND="
- test? ( >=dev-python/hypothesis-3.4.2[${PYTHON_USEDEP}] )
+ test? (
+ $(python_gen_cond_dep '
+ >=dev-python/hypothesis-3.4.2[${PYTHON_USEDEP}]
+ ' "${PYTHON_TESTED[@]}")
+ )
"
PATCHES=(
@@ -28,3 +33,13 @@ PATCHES=(
)
distutils_enable_tests pytest
+
+python_test() {
+ # https://github.com/python/cpython/issues/105042
+ if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
+ einfo "Skipping tests on ${EPYTHON} (xfail)"
+ return
+ fi
+
+ epytest
+}
diff --git a/dev-python/priority/priority-2.0.0-r1.ebuild b/dev-python/priority/priority-2.0.0-r1.ebuild
index 8bd57c3acfad..ae42b9c61c28 100644
--- a/dev-python/priority/priority-2.0.0-r1.ebuild
+++ b/dev-python/priority/priority-2.0.0-r1.ebuild
@@ -4,7 +4,8 @@
EAPI=8
DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
+PYTHON_TESTED=( python3_{7,8,9,10,11} pypy3 )
+PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
inherit distutils-r1 pypi
@@ -20,7 +21,21 @@ SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
BDEPEND="
- test? ( >=dev-python/hypothesis-3.4.2[${PYTHON_USEDEP}] )
+ test? (
+ $(python_gen_cond_dep '
+ >=dev-python/hypothesis-3.4.2[${PYTHON_USEDEP}]
+ ' "${PYTHON_TESTED[@]}")
+ )
"
distutils_enable_tests pytest
+
+python_test() {
+ # https://github.com/python/cpython/issues/105042
+ if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
+ einfo "Skipping tests on ${EPYTHON} (xfail)"
+ return
+ fi
+
+ epytest
+}
diff --git a/dev-python/pycurl/files/pycurl-7.45.2-skip-http3-test.patch b/dev-python/pycurl/files/pycurl-7.45.2-skip-http3-test.patch
new file mode 100644
index 000000000000..4ebf3b4b1ba8
--- /dev/null
+++ b/dev-python/pycurl/files/pycurl-7.45.2-skip-http3-test.patch
@@ -0,0 +1,28 @@
+In Gentoo, we don't yet usually have HTTP3 for curl either.
+
+https://src.fedoraproject.org/rpms/python-pycurl/raw/rawhide/f/0002-python-pycurl-7.45.2-disable-test_http_version_3.patch
+
+From 6c55e6822a064edb8dd6dfe1ee21080f4f30b5cf Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Zaoral?= <lzaoral@redhat.com>
+Date: Tue, 7 Mar 2023 16:32:19 +0100
+Subject: [PATCH] tests: temporarily disable test_http_version_3
+
+HTTP3 support in curl is only experimental at the moment and is disabled
+in the corresponding Fedora package.
+--- a/tests/option_constants_test.py
++++ b/tests/option_constants_test.py
+@@ -508,10 +508,6 @@ class OptionConstantsSettingTest(unittest.TestCase):
+ def test_http_version_2prior_knowledge(self):
+ self.curl.setopt(self.curl.HTTP_VERSION, self.curl.CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE)
+
+- @util.min_libcurl(7, 66, 0)
+- def test_http_version_3(self):
+- self.curl.setopt(self.curl.HTTP_VERSION, self.curl.CURL_HTTP_VERSION_3)
+-
+ @util.min_libcurl(7, 21, 5)
+ def test_sockopt_constants(self):
+ assert self.curl.SOCKOPT_OK is not None
+--
+2.39.2
+
+
diff --git a/dev-python/pycurl/pycurl-7.45.2.ebuild b/dev-python/pycurl/pycurl-7.45.2.ebuild
index d91a3a53a07e..5e105a787075 100644
--- a/dev-python/pycurl/pycurl-7.45.2.ebuild
+++ b/dev-python/pycurl/pycurl-7.45.2.ebuild
@@ -47,6 +47,10 @@ BDEPEND="
)
"
+PATCHES=(
+ "${FILESDIR}"/${PN}-7.45.2-skip-http3-test.patch
+)
+
distutils_enable_tests pytest
python_prepare_all() {
diff --git a/dev-python/pylibacl/pylibacl-0.7.0.ebuild b/dev-python/pylibacl/pylibacl-0.7.0.ebuild
index 923090211913..1c8c9508982b 100644
--- a/dev-python/pylibacl/pylibacl-0.7.0.ebuild
+++ b/dev-python/pylibacl/pylibacl-0.7.0.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="LGPL-2.1"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm ~ia64 ~mips ppc ppc64 sparc x86"
DEPEND="
sys-apps/acl
diff --git a/dev-python/pyproject-fmt/pyproject-fmt-0.11.2.ebuild b/dev-python/pyproject-fmt/pyproject-fmt-0.11.2.ebuild
index ddbc1f3f5156..ae7eb6576943 100644
--- a/dev-python/pyproject-fmt/pyproject-fmt-0.11.2.ebuild
+++ b/dev-python/pyproject-fmt/pyproject-fmt-0.11.2.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
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/natsort-8.3.1[${PYTHON_USEDEP}]
diff --git a/dev-python/redis/redis-4.5.5.ebuild b/dev-python/redis/redis-4.5.5.ebuild
index a2bd31a2e7f5..30d92426ee55 100644
--- a/dev-python/redis/redis-4.5.5.ebuild
+++ b/dev-python/redis/redis-4.5.5.ebuild
@@ -47,6 +47,8 @@ python_test() {
tests/test_commands.py::TestRedisCommands::test_acl_list
# redis-7 different return
tests/test_commands.py::TestRedisCommands::test_xautoclaim
+ # hangs on all targets
+ tests/test_asyncio/test_cwe_404.py::test_standalone
)
# TODO: try to run more servers?
diff --git a/dev-python/send2trash/send2trash-1.8.2.ebuild b/dev-python/send2trash/send2trash-1.8.2.ebuild
index 9a7eb7d49c62..36881ad863ab 100644
--- a/dev-python/send2trash/send2trash-1.8.2.ebuild
+++ b/dev-python/send2trash/send2trash-1.8.2.ebuild
@@ -18,6 +18,6 @@ HOMEPAGE="
SLOT="0"
LICENSE="BSD"
-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"
distutils_enable_tests pytest
diff --git a/dev-python/setuptools-rust/setuptools-rust-1.6.0.ebuild b/dev-python/setuptools-rust/setuptools-rust-1.6.0.ebuild
index 14000e94ba1c..c96503f76111 100644
--- a/dev-python/setuptools-rust/setuptools-rust-1.6.0.ebuild
+++ b/dev-python/setuptools-rust/setuptools-rust-1.6.0.ebuild
@@ -101,7 +101,7 @@ SRC_URI="
# crates are used at test time only, update via pycargoebuild -L -i ...
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/survey/Manifest b/dev-python/survey/Manifest
index 108c1808435e..827c60e33c79 100644
--- a/dev-python/survey/Manifest
+++ b/dev-python/survey/Manifest
@@ -1,2 +1,2 @@
DIST survey-3.4.3.tar.gz 21219 BLAKE2B e866addd9233409c603f2b34bbf811209f3f6c2ade1bee00258c4f25d741dc526948d16b2e9e0dc3632e6e20fa7863f573c4c27ed1f48ddaa954c7d53a8c51e3 SHA512 47ff72dd1223a32ec038ccf57709e8fe64806ecc9bb8e54daaced27afaa1c2a45e76fc1b149232a107729c462db7657ad0fd08d8b14bb314e3905aabd23fff4a
-DIST survey-4.2.1_alpha.gh.tar.gz 826833 BLAKE2B d4835ec34f47fff64ab157e2c46fd8755394abbdfc7d7c5aefda685ae43c380cc13932753e54a182302d2b5cd80ff74f4e2d96c50a62a7d50e1b274093772b44 SHA512 174d26c4cd7719cf429399a041dd965155a4cf2135e86944c04d753075fddeb85116e38da09e993874059f4d7e022c61f211efaa94033bc82fb37c46b18a1124
+DIST survey-4.3.0_alpha.gh.tar.gz 827020 BLAKE2B 3a9048e53c2ab1ff6509a9d9f67c366ae09c14389388d34d1a7e9114823c3935c259c2f92ea7fc1a10519c9a4018901305b0e32fb10cae09ad93bddacef47c11 SHA512 ae48cf9d98593224a3fc31904ab035e2d1b7079d63d1beee7a21bf6f35fb9b89e7d83f52dfca78d9abd037fcd86dbe6ac1d47d2037210eebc96a879a92d18925
diff --git a/dev-python/survey/survey-4.2.1_alpha.ebuild b/dev-python/survey/survey-4.3.0_alpha.ebuild
index fc808bfc652c..fc808bfc652c 100644
--- a/dev-python/survey/survey-4.2.1_alpha.ebuild
+++ b/dev-python/survey/survey-4.3.0_alpha.ebuild
diff --git a/dev-python/tldextract/tldextract-3.4.4.ebuild b/dev-python/tldextract/tldextract-3.4.4.ebuild
index 8ed1050e7c1f..bd8a75c039b1 100644
--- a/dev-python/tldextract/tldextract-3.4.4.ebuild
+++ b/dev-python/tldextract/tldextract-3.4.4.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 ~arm64 ~x86"
RDEPEND="
dev-python/filelock[${PYTHON_USEDEP}]
diff --git a/dev-python/tomlkit/tomlkit-0.11.8.ebuild b/dev-python/tomlkit/tomlkit-0.11.8.ebuild
index 6f23d40c90c0..d600ea13dda5 100644
--- a/dev-python/tomlkit/tomlkit-0.11.8.ebuild
+++ b/dev-python/tomlkit/tomlkit-0.11.8.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
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"
BDEPEND="
test? (
diff --git a/dev-python/tornado/files/tornado-6.3.2-ignore-deprecationwarning.patch b/dev-python/tornado/files/tornado-6.3.2-ignore-deprecationwarning.patch
new file mode 100644
index 000000000000..7a6139173faf
--- /dev/null
+++ b/dev-python/tornado/files/tornado-6.3.2-ignore-deprecationwarning.patch
@@ -0,0 +1,12 @@
+https://src.fedoraproject.org/rpms/python-tornado/raw/rawhide/f/Do-not-turn-DeprecationWarning-into-Exception.patch
+--- a/tornado/test/runtests.py
++++ b/tornado/test/runtests.py
+@@ -126,7 +126,6 @@
+ # Tornado generally shouldn't use anything deprecated, but some of
+ # our dependencies do (last match wins).
+ warnings.filterwarnings("ignore", category=DeprecationWarning)
+- warnings.filterwarnings("error", category=DeprecationWarning, module=r"tornado\..*")
+ warnings.filterwarnings("ignore", category=PendingDeprecationWarning)
+ warnings.filterwarnings(
+ "error", category=PendingDeprecationWarning, module=r"tornado\..*"
+
diff --git a/dev-python/tornado/tornado-6.3.2.ebuild b/dev-python/tornado/tornado-6.3.2.ebuild
index fd6a977a02fb..86a7e5949b81 100644
--- a/dev-python/tornado/tornado-6.3.2.ebuild
+++ b/dev-python/tornado/tornado-6.3.2.ebuild
@@ -37,6 +37,7 @@ BDEPEND="
PATCHES=(
"${FILESDIR}"/${PN}-6.3.2-test-timeout-increase.patch
+ "${FILESDIR}"/${PN}-6.3.2-ignore-deprecationwarning.patch
)
src_prepare() {
@@ -49,6 +50,11 @@ src_prepare() {
python_test() {
local -x ASYNC_TEST_TIMEOUT=60
+ # Avoid time-sensitive tests
+ # https://github.com/tornadoweb/tornado/blob/10974e6ebee80a26a2a65bb9bd715cf858fafde5/tornado/test/util.py#L19
+ local -x TRAVIS=1
+ local -x NO_NETWORK=1
+
cd "${T}" || die
"${EPYTHON}" -m tornado.test.runtests --verbose ||
die "tests failed under ${EPYTHON}"
diff --git a/dev-python/twisted/files/twisted-22.10.0-python3.11-tests.patch b/dev-python/twisted/files/twisted-22.10.0-python3.11-tests.patch
new file mode 100644
index 000000000000..b75c97d4997f
--- /dev/null
+++ b/dev-python/twisted/files/twisted-22.10.0-python3.11-tests.patch
@@ -0,0 +1,100 @@
+https://src.fedoraproject.org/rpms/python-twisted/blob/rawhide/f/0003-Fix-tests-for-Python-3.11.patch
+
+From b0574816f622bc187389df2183e2bef0492fe5f5 Mon Sep 17 00:00:00 2001
+From: eevel <eevel@weezel3.weezelnet>
+Date: Wed, 2 Nov 2022 20:35:55 -0500
+Subject: [PATCH 3/6] Fix tests for Python 3.11
+
+This is based on a subset of commits from this pull request.
+
+https://github.com/twisted/twisted/pull/11734
+
+- fix twisted.persisted tests (cherry picked from commit 4f6d7fb0749429b092fe7538a7d2b11fe58319a6)
+- fix tests for twisted.spread (cherry picked from commit 525377178adfa987ed56be753aec0fce35d721dc)
+- fix test for twisted.web (cherry picked from commit afcc224a02f72e5d12fa35d223bd753e8086b135)
+- fix persisted tests in twisted.test (cherry picked from commit 4b5ab38b09b326cec7967e04bd4cae8a84bb6784)
+- fix twisted.trial tests (cherry picked from commit f8f56d45113e5f2467a5e8375186e5db6309dfc6)
+- make test_flatten backwards-compatible (cherry picked from commit d91675ac5ffe907fcdbb3d1cedb1240008d81fd1)
+--- a/src/twisted/persisted/aot.py
++++ b/src/twisted/persisted/aot.py
+@@ -399,8 +399,10 @@ class AOTUnjellier:
+ inst = klass.__new__(klass)
+ if hasattr(klass, "__setstate__"):
+ self.callAfter(inst.__setstate__, state)
+- else:
++ elif isinstance(state, dict):
+ inst.__dict__ = state
++ else:
++ inst.__dict__ = state.__getstate__()
+ return inst
+
+ elif c is Ref:
+--- a/src/twisted/spread/flavors.py
++++ b/src/twisted/spread/flavors.py
+@@ -398,6 +398,8 @@ class RemoteCopy(Unjellyable):
+ object's dictionary (or a filtered approximation of it depending
+ on my peer's perspective).
+ """
++ if not state:
++ state = {}
+ state = {
+ x.decode("utf8") if isinstance(x, bytes) else x: y for x, y in state.items()
+ }
+--- a/src/twisted/spread/jelly.py
++++ b/src/twisted/spread/jelly.py
+@@ -154,7 +154,8 @@ def _newInstance(cls, state):
+ instance = _createBlank(cls)
+
+ def defaultSetter(state):
+- instance.__dict__ = state
++ if isinstance(state, dict):
++ instance.__dict__ = state or {}
+
+ setter = getattr(instance, "__setstate__", defaultSetter)
+ setter(state)
+--- a/src/twisted/test/test_persisted.py
++++ b/src/twisted/test/test_persisted.py
+@@ -378,6 +378,10 @@ class AOTTests(TestCase):
+ def __dict__(self):
+ raise AttributeError()
+
++ @property
++ def __getstate__(self):
++ raise AttributeError()
++
+ self.assertRaises(TypeError, aot.jellyToSource, UnknownType())
+
+ def test_basicIdentity(self):
+--- a/src/twisted/trial/test/test_pyunitcompat.py
++++ b/src/twisted/trial/test/test_pyunitcompat.py
+@@ -218,8 +218,10 @@ class PyUnitResultTests(SynchronousTestCase):
+ pyresult = pyunit.TestResult()
+ result = PyUnitResultAdapter(pyresult)
+ result.addError(self, f)
++ tback = "".join(traceback.format_exception(*exc_info))
+ self.assertEqual(
+- pyresult.errors[0][1], "".join(traceback.format_exception(*exc_info))
++ pyresult.errors[0][1].endswith("ZeroDivisionError: division by zero\n"),
++ tback.endswith("ZeroDivisionError: division by zero\n"),
+ )
+
+ def test_trialSkip(self):
+--- a/src/twisted/web/test/test_flatten.py
++++ b/src/twisted/web/test/test_flatten.py
+@@ -706,10 +706,9 @@ class FlattenerErrorTests(SynchronousTestCase):
+ Exception while flattening:
+ \\[<unrenderable>\\]
+ <unrenderable>
+- .*
++ <Deferred at .* current result: <twisted.python.failure.Failure builtins.RuntimeError: example>>
+ File ".*", line \\d*, in _flattenTree
+- element = await element
+- RuntimeError: example
++ element = await element.*
+ """
+ ),
+ flags=re.MULTILINE,
+--
+2.39.2
+
+
diff --git a/dev-python/twisted/files/twisted-22.10.0-sendmail.patch b/dev-python/twisted/files/twisted-22.10.0-sendmail.patch
new file mode 100644
index 000000000000..eec57752815d
--- /dev/null
+++ b/dev-python/twisted/files/twisted-22.10.0-sendmail.patch
@@ -0,0 +1,28 @@
+https://src.fedoraproject.org/rpms/python-twisted/raw/rawhide/f/0005-fix-sendmail-tests-for-python-3.11.patch
+
+From f29ae1ae433cd9529410a93fd5675cb01460460e Mon Sep 17 00:00:00 2001
+From: eevel <eevel@weezel3.weezelnet>
+Date: Wed, 26 Oct 2022 19:49:33 -0500
+Subject: [PATCH 5/6] fix sendmail tests for python 3.11
+
+(cherry picked from commit 00bf5be704bee022ba4d9b24eb6c2c768b4a1921)
+--- a/src/twisted/mail/test/test_smtp.py
++++ b/src/twisted/mail/test/test_smtp.py
+@@ -1771,7 +1771,8 @@ class SendmailTests(TestCase):
+ The default C{reactor} parameter of L{twisted.mail.smtp.sendmail} is
+ L{twisted.internet.reactor}.
+ """
+- args, varArgs, keywords, defaults = inspect.getargspec(smtp.sendmail)
++ fullSpec = inspect.getfullargspec(smtp.sendmail)
++ defaults = fullSpec[3]
+ self.assertEqual(reactor, defaults[2])
+
+ def _honorsESMTPArguments(self, username, password):
+--- /dev/null
++++ b/src/twisted/newsfragments/10345.misc
+@@ -0,0 +1 @@
++Fix SendmailTests for python 3.11.
+--
+2.39.2
+
+
diff --git a/dev-python/twisted/files/twisted-22.10.0-time.patch b/dev-python/twisted/files/twisted-22.10.0-time.patch
new file mode 100644
index 000000000000..1723d69c8a3c
--- /dev/null
+++ b/dev-python/twisted/files/twisted-22.10.0-time.patch
@@ -0,0 +1,113 @@
+From 75e5e6ba1793efdfef2e2cfada0425bad5f0bcfa Mon Sep 17 00:00:00 2001
+From: Paul Eggert <eggert@cs.ucla.edu>
+Date: Fri, 9 Dec 2022 10:16:42 -0800
+Subject: [PATCH 4/6] #11786 fix misuse of mktime in tests
+
+(cherry picked from commit da3bf3dc29f067e7019b2a1c205834ab64b2139a)
+--- a/src/twisted/logger/test/test_format.py
++++ b/src/twisted/logger/test/test_format.py
+@@ -166,16 +166,17 @@ class TimeFormattingTests(unittest.TestCase):
+ def testForTimeZone(name: str, expectedDST: str, expectedSTD: str) -> None:
+ setTZ(name)
+
+- localDST = mktime((2006, 6, 30, 0, 0, 0, 4, 181, 1))
+ localSTD = mktime((2007, 1, 31, 0, 0, 0, 2, 31, 0))
+-
+- self.assertEqual(formatTime(localDST), expectedDST)
+ self.assertEqual(formatTime(localSTD), expectedSTD)
+
++ if expectedDST:
++ localDST = mktime((2006, 6, 30, 0, 0, 0, 4, 181, 1))
++ self.assertEqual(formatTime(localDST), expectedDST)
++
+ # UTC
+ testForTimeZone(
+ "UTC+00",
+- "2006-06-30T00:00:00+0000",
++ None,
+ "2007-01-31T00:00:00+0000",
+ )
+
+@@ -196,7 +197,7 @@ class TimeFormattingTests(unittest.TestCase):
+ # No DST
+ testForTimeZone(
+ "CST+06",
+- "2006-06-30T00:00:00-0600",
++ None,
+ "2007-01-31T00:00:00-0600",
+ )
+
+@@ -211,7 +212,7 @@ class TimeFormattingTests(unittest.TestCase):
+ """
+ If C{timeFormat} argument is L{None}, we get the default output.
+ """
+- t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, 1))
++ t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, -1))
+ self.assertEqual(formatTime(t, timeFormat=None), "-")
+ self.assertEqual(formatTime(t, timeFormat=None, default="!"), "!")
+
+@@ -219,7 +220,7 @@ class TimeFormattingTests(unittest.TestCase):
+ """
+ Alternate time format in output.
+ """
+- t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, 1))
++ t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, -1))
+ self.assertEqual(formatTime(t, timeFormat="%Y/%W"), "2013/38")
+
+ def test_formatTimePercentF(self) -> None:
+@@ -246,7 +247,7 @@ class ClassicLogFormattingTests(unittest.TestCase):
+ addTZCleanup(self)
+ setTZ("UTC+00")
+
+- t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, 1))
++ t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, -1))
+ event = dict(log_format="XYZZY", log_time=t)
+ self.assertEqual(
+ formatEventAsClassicLogText(event),
+@@ -539,7 +540,7 @@ class EventAsTextTests(unittest.TestCase):
+ except CapturedError:
+ f = Failure()
+
+- t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, 1))
++ t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, -1))
+ event: LogEvent = {
+ "log_format": "ABCD",
+ "log_system": "fake_system",
+@@ -573,7 +574,7 @@ class EventAsTextTests(unittest.TestCase):
+ except CapturedError:
+ f = Failure()
+
+- t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, 1))
++ t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, -1))
+ event: LogEvent = {
+ "log_format": "ABCD",
+ "log_system": "fake_system",
+@@ -601,7 +602,7 @@ class EventAsTextTests(unittest.TestCase):
+ except CapturedError:
+ f = Failure()
+
+- t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, 1))
++ t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, -1))
+ event: LogEvent = {
+ "log_format": "ABCD",
+ "log_time": t,
+@@ -628,7 +629,7 @@ class EventAsTextTests(unittest.TestCase):
+ except CapturedError:
+ f = Failure()
+
+- t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, 1))
++ t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, -1))
+ event: LogEvent = {
+ "log_format": "ABCD",
+ "log_time": t,
+@@ -657,7 +658,7 @@ class EventAsTextTests(unittest.TestCase):
+ except CapturedError:
+ f = Failure()
+
+- t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, 1))
++ t = mktime((2013, 9, 24, 11, 40, 47, 1, 267, -1))
+ event: LogEvent = {
+ "log_format": "ABCD",
+ "log_time": t,
+--
+2.39.2
diff --git a/dev-python/twisted/twisted-22.10.0-r3.ebuild b/dev-python/twisted/twisted-22.10.0-r3.ebuild
new file mode 100644
index 000000000000..42dc3ecc1445
--- /dev/null
+++ b/dev-python/twisted/twisted-22.10.0-r3.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2023 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,11} pypy3 )
+PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1 virtualx
+
+DESCRIPTION="An asynchronous networking framework written in Python"
+HOMEPAGE="https://www.twistedmatrix.com/trac/"
+SRC_URI="
+ https://github.com/twisted/twisted/archive/${P}.tar.gz -> ${P}.gh.tar.gz
+ https://dev.gentoo.org/~mgorny/dist/twisted-regen-cache.gz
+"
+S=${WORKDIR}/${PN}-${P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="conch http2 serial ssl test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/attrs-19.2.0[${PYTHON_USEDEP}]
+ >=dev-python/automat-0.8.0[${PYTHON_USEDEP}]
+ >=dev-python/constantly-15.1[${PYTHON_USEDEP}]
+ >=dev-python/hyperlink-17.1.1[${PYTHON_USEDEP}]
+ >=dev-python/incremental-21.3.0[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-3.6.5[${PYTHON_USEDEP}]
+ >=dev-python/zope-interface-4.4.2[${PYTHON_USEDEP}]
+ conch? (
+ >=dev-python/appdirs-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/bcrypt-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-2.6[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ )
+ http2? (
+ <dev-python/h2-5.0.0[${PYTHON_USEDEP}]
+ >=dev-python/h2-3.0.0[${PYTHON_USEDEP}]
+ <dev-python/priority-2.0[${PYTHON_USEDEP}]
+ >=dev-python/priority-1.1.0[${PYTHON_USEDEP}]
+ )
+ serial? (
+ >=dev-python/pyserial-3.0[${PYTHON_USEDEP}]
+ )
+ ssl? (
+ >=dev-python/pyopenssl-21.0.0[${PYTHON_USEDEP}]
+ >=dev-python/service_identity-18.1.0[${PYTHON_USEDEP}]
+ >=dev-python/idna-2.4[${PYTHON_USEDEP}]
+ )
+"
+BDEPEND="
+ >=dev-python/incremental-21.3.0[${PYTHON_USEDEP}]
+ test? (
+ $(python_gen_cond_dep '
+ >=dev-python/appdirs-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/constantly-15.1.0[${PYTHON_USEDEP}]
+ >=dev-python/cython-test-exception-raiser-1.0.2[${PYTHON_USEDEP}]
+ >=dev-python/idna-2.4[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ >=dev-python/pyhamcrest-1.9.0[${PYTHON_USEDEP}]
+ >=dev-python/pyserial-3.0[${PYTHON_USEDEP}]
+ virtual/openssh
+ conch? (
+ >=dev-python/bcrypt-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-2.6[${PYTHON_USEDEP}]
+ )
+ ssl? (
+ >=dev-python/pyopenssl-21.0.0[${PYTHON_USEDEP}]
+ >=dev-python/service_identity-18.1.0[${PYTHON_USEDEP}]
+ )
+ ' "${PYTHON_TESTED[@]}")
+ $(python_gen_cond_dep '
+ dev-python/gmpy[${PYTHON_USEDEP}]
+ ' python3_{8..10})
+ )
+"
+
+PATCHES=(
+ # https://twistedmatrix.com/trac/ticket/10200
+ "${FILESDIR}/${PN}-22.1.0-force-gtk3.patch"
+
+ "${FILESDIR}/${PN}-22.10.0-python3.11-tests.patch"
+ "${FILESDIR}/${PN}-22.10.0-time.patch"
+ "${FILESDIR}/${PN}-22.10.0-sendmail.patch"
+)
+
+python_prepare_all() {
+ # upstream test for making releases; not very useful and requires
+ # sphinx (including on py2)
+ rm src/twisted/python/test/test_release.py || die
+
+ # puts system in EMFILE state, then the exception handler may fail
+ # trying to open more files due to some gi magic
+ sed -e '/SKIP_EMFILE/s:False:True:' \
+ -i src/twisted/internet/test/test_tcp.py || die
+
+ # multicast tests fail within network-sandbox
+ sed -e 's:test_joinLeave:_&:' \
+ -e 's:test_loopback:_&:' \
+ -e 's:test_multiListen:_&:' \
+ -e 's:test_multicast:_&:' \
+ -i src/twisted/test/test_udp.py || die
+
+ # These tests rely on warnings which seems work unreliably between python versions
+ sed -e 's:test_currentEUID:_&:' \
+ -e 's:test_currentUID:_&:' -i src/twisted/python/test/test_util.py || die
+
+ # broken by new expat
+ sed -e 's:test_namespaceWithWhitespace:_&:' \
+ -i src/twisted/words/test/test_domish.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+src_test() {
+ # the test suite handles missing file & failing ioctl()s gracefully
+ # but not permission errors from sandbox
+ addwrite /dev/net/tun
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
+ einfo "Skipping tests on ${EPYTHON} (xfail)"
+ return
+ fi
+
+ "${EPYTHON}" -m twisted.trial twisted ||
+ die "Tests failed with ${EPYTHON}"
+}
+
+python_install() {
+ distutils-r1_python_install
+
+ # own the dropin.cache so we don't leave orphans
+ > "${D}$(python_get_sitedir)"/twisted/plugins/dropin.cache || die
+
+ python_doscript "${WORKDIR}"/twisted-regen-cache
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ newconfd "${FILESDIR}/twistd.conf" twistd
+ newinitd "${FILESDIR}/twistd.init" twistd
+}
+
+python_postinst() {
+ twisted-regen-cache || die
+}
+
+pkg_postinst() {
+ if [[ -z ${ROOT} ]]; then
+ python_foreach_impl python_postinst
+ fi
+}
+
+python_postrm() {
+ rm -f "${ROOT}$(python_get_sitedir)/twisted/plugins/dropin.cache" || die
+}
+
+pkg_postrm() {
+ # if we're removing the last version, remove the cache file
+ if [[ ! ${REPLACING_VERSIONS} ]]; then
+ python_foreach_impl python_postrm
+ fi
+}
diff --git a/dev-python/werkzeug/werkzeug-2.3.4.ebuild b/dev-python/werkzeug/werkzeug-2.3.4.ebuild
index b062edcf26a4..19d61a826269 100644
--- a/dev-python/werkzeug/werkzeug-2.3.4.ebuild
+++ b/dev-python/werkzeug/werkzeug-2.3.4.ebuild
@@ -21,7 +21,7 @@ SRC_URI="
LICENSE="BSD"
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"
IUSE="test-rust"
RDEPEND="