summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-11-11 21:30:43 +0000
committerV3n3RiX <venerix@koprulu.sector>2022-11-11 21:30:43 +0000
commit7236d0a40beeff3f6f0fcede52d54dfb81880faa (patch)
tree5eb555a5b67950ef35c1149881ab3fb6b6eba836 /dev-python
parent469b5d8f31adfd054c5c493fc3df2f9c89c9fa00 (diff)
gentoo auto-resync : 11:11:2022 - 21:30:43
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Manifest.gzbin262049 -> 262041 bytes
-rw-r--r--dev-python/libvirt-python/Manifest5
-rw-r--r--dev-python/libvirt-python/libvirt-python-8.9.0.ebuild56
-rw-r--r--dev-python/libvirt-python/libvirt-python-9999.ebuild2
-rw-r--r--dev-python/parsedatetime/Manifest2
-rw-r--r--dev-python/parsedatetime/parsedatetime-2.6-r1.ebuild22
-rw-r--r--dev-python/pyrfc3339/Manifest5
-rw-r--r--dev-python/pyrfc3339/files/pyrfc3339-1.1-pytest.patch193
-rw-r--r--dev-python/pyrfc3339/metadata.xml1
-rw-r--r--dev-python/pyrfc3339/pyrfc3339-1.1-r1.ebuild32
10 files changed, 315 insertions, 3 deletions
diff --git a/dev-python/Manifest.gz b/dev-python/Manifest.gz
index 1527142be08a..66b724fea183 100644
--- a/dev-python/Manifest.gz
+++ b/dev-python/Manifest.gz
Binary files differ
diff --git a/dev-python/libvirt-python/Manifest b/dev-python/libvirt-python/Manifest
index 526a4297217c..cd5c0d1806a8 100644
--- a/dev-python/libvirt-python/Manifest
+++ b/dev-python/libvirt-python/Manifest
@@ -2,7 +2,10 @@ DIST libvirt-python-8.7.0.tar.gz 236343 BLAKE2B 563cd1a18f06c0210465905267c46b3e
DIST libvirt-python-8.7.0.tar.gz.asc 833 BLAKE2B 5386780d75114c21105d012fd0ec2fd22fdd979dd6cdaea59f578eff4c0616e377da52d8aec05f337b837fda663ce8afb6d670e960ee65146679cd8c9a60b12b SHA512 499324c7cb520edbd1778a16434de43be062545255abb271832a636ff1ce9f4ba87e90226a181e081d084fccd6c190acc15763fecfc89e80093845589c12f535
DIST libvirt-python-8.8.0.tar.gz 236523 BLAKE2B 56504045d4c44c2419fb8f97b1c147f12539122acc35644aef748631db5bce0d1ded8ebb5c1bd1160d2472757c0887105f3dd5e41c271a56f963ef21616565c8 SHA512 bcfe69b1279d8e2fc1343959f2c17ff29ef957c1d7f98b233c8bb32cffe50285138d1be11b0c327f6b18e2395b6353c3552cecfd9bbfcb5cc6bc97981f9d6f26
DIST libvirt-python-8.8.0.tar.gz.asc 833 BLAKE2B 2769a404916227ce9d77ec0e76d2985b67f7e59e3f280486b59f9a9edb4fe5405ae22dd03c2d4c9f1c620a977eef90ec8fdc93d3891d8824021a226a0581cb9a SHA512 edeace09e2de739d318f63ac7b33f814ac3d2e4ad7a32164fb0691723b4872d64bc60d0f96baf1809158e76fd7dbbff75c6ee4e9112b1ba6c264287c36d691b4
+DIST libvirt-python-8.9.0.tar.gz 240769 BLAKE2B 992f02fe584f33ea5bd91a28338e281d49515bae392d5209e07a916b9449965c753b9a12b2f4d8433069efc1e3c5907a378e3e2d8ee1d55ab682a3e983b2eca3 SHA512 f13767528518189bb4a6094dc029f3dee16179a269b25f1224ba448569e3a2f8b036124711060d4dda8de0f7719474a700b616e1e8e8d29028d585c2a631aa32
+DIST libvirt-python-8.9.0.tar.gz.asc 833 BLAKE2B 690613f7f558155db56a5194042bdf49e004143b2066bcaccb48fc9082364a88b5f8d4112623095838a116817a55e34e8ca29e01221299efc396fb1501a060ae SHA512 a490284745c948d87f0239b70257b5cd66ae2515a4f3f33c05a2b3e1ccc28e2769c8c61d45e4f855b595a6d82b6d73e50bcd00a8bbfc7cb7fbe1a4969e48e17b
EBUILD libvirt-python-8.7.0.ebuild 1345 BLAKE2B 0a86ea375248535734389a9ca5bc6fb9c7e9784d17c7d18317ded9e5b657e717628375e235cd13c11a5a4f238eb51017210a5e8d6cc0f56cc7a9a7a626ee1b0e SHA512 b66b59e71ac0eed4f8a1ea330897ac8a865e5021838e9ef6c514c79e800773f834962321cd1b3b217e1a50679a99b61f25e7c25776dd718829f2c0be5293875b
EBUILD libvirt-python-8.8.0.ebuild 1347 BLAKE2B b0e62429ecc6c357f082c3a86d2e60449862de600fb4cd5ea9fd26ee823b81432d39a6b6aa32671a57d5ed8ee94de5f041fbf108ed735bae60bb66ea1e77b5c6 SHA512 3d479e70d507625f86db1a2f03144d42b40f128047e8d58f0a14d3f7c54591ecdfa4ce81475ba659cd56881a07d2501dd799d65ddb429ab27b682a9dbe392ccc
-EBUILD libvirt-python-9999.ebuild 1347 BLAKE2B b0e62429ecc6c357f082c3a86d2e60449862de600fb4cd5ea9fd26ee823b81432d39a6b6aa32671a57d5ed8ee94de5f041fbf108ed735bae60bb66ea1e77b5c6 SHA512 3d479e70d507625f86db1a2f03144d42b40f128047e8d58f0a14d3f7c54591ecdfa4ce81475ba659cd56881a07d2501dd799d65ddb429ab27b682a9dbe392ccc
+EBUILD libvirt-python-8.9.0.ebuild 1335 BLAKE2B 6a2e5decfd3ccd4bd477281d70059668e7d729b130dc2034e37f2d07dabbe90eaff459bee1fb652cee9cde7b9e124bf8439917fb6b31ba5f774b119c7da6045d SHA512 c9a4a2aca31abce00aee67bf34b1bb5e74099ec6902fe72816d2652c4bf76bf2b6f258e5400b0ae261bf899cf188e04bf3878c61ce3ff1f9ba745888795733d3
+EBUILD libvirt-python-9999.ebuild 1335 BLAKE2B 6a2e5decfd3ccd4bd477281d70059668e7d729b130dc2034e37f2d07dabbe90eaff459bee1fb652cee9cde7b9e124bf8439917fb6b31ba5f774b119c7da6045d SHA512 c9a4a2aca31abce00aee67bf34b1bb5e74099ec6902fe72816d2652c4bf76bf2b6f258e5400b0ae261bf899cf188e04bf3878c61ce3ff1f9ba745888795733d3
MISC metadata.xml 581 BLAKE2B b0ce75afc6b03055de71b4903b3d8ea2198790873051f4aaa5e15a2c3e77b50f320ec3d9fb7f379194889e771296f81c65f2826ca2283ba4d4a9a5ccc8af932f SHA512 a123b9833c1154c96842d234f5c8b729bd6be5a987a5d09035109261a27b0c6f2b26c3bed5865f4cc3b5b262e8a3d2c69908550fb804da15ea47d297ed9e39c8
diff --git a/dev-python/libvirt-python/libvirt-python-8.9.0.ebuild b/dev-python/libvirt-python/libvirt-python-8.9.0.ebuild
new file mode 100644
index 000000000000..e84055ce32c2
--- /dev/null
+++ b/dev-python/libvirt-python/libvirt-python-8.9.0.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Packages which get releases together:
+# app-emacs/nxml-libvirt-schemas
+# dev-python/libvirt-python
+# dev-perl/Sys-Virt
+# app-emulation/libvirt
+# Please bump them together!
+
+PYTHON_COMPAT=( python3_{8..11} )
+DISTUTILS_USE_PEP517=setuptools
+MY_P="${P/_rc/-rc}"
+VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/libvirt.org.asc
+inherit distutils-r1 verify-sig
+
+if [[ ${PV} == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://gitlab.com/libvirt/libvirt-python.git"
+ RDEPEND="app-emulation/libvirt:="
+else
+ SRC_URI="https://libvirt.org/sources/python/${MY_P}.tar.gz
+ verify-sig? ( https://libvirt.org/sources/python/${MY_P}.tar.gz.asc )"
+ KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+ RDEPEND="app-emulation/libvirt:0/${PV}"
+fi
+S="${WORKDIR}/${P%_rc*}"
+
+DESCRIPTION="libvirt Python bindings"
+HOMEPAGE="https://www.libvirt.org"
+
+LICENSE="LGPL-2"
+SLOT="0"
+IUSE="examples test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ virtual/pkgconfig
+ test? (
+ dev-python/lxml[${PYTHON_USEDEP}]
+ )
+ verify-sig? ( sec-keys/openpgp-keys-libvirt )
+"
+
+distutils_enable_tests pytest
+
+python_install_all() {
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/libvirt-python/libvirt-python-9999.ebuild b/dev-python/libvirt-python/libvirt-python-9999.ebuild
index 59818c6c51d9..e84055ce32c2 100644
--- a/dev-python/libvirt-python/libvirt-python-9999.ebuild
+++ b/dev-python/libvirt-python/libvirt-python-9999.ebuild
@@ -19,7 +19,7 @@ inherit distutils-r1 verify-sig
if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://gitlab.com/libvirt/libvirt-python.git"
- RDEPEND="app-emulation/libvirt:=[-python(-)]"
+ RDEPEND="app-emulation/libvirt:="
else
SRC_URI="https://libvirt.org/sources/python/${MY_P}.tar.gz
verify-sig? ( https://libvirt.org/sources/python/${MY_P}.tar.gz.asc )"
diff --git a/dev-python/parsedatetime/Manifest b/dev-python/parsedatetime/Manifest
index da16cbcb714e..6ea35e723436 100644
--- a/dev-python/parsedatetime/Manifest
+++ b/dev-python/parsedatetime/Manifest
@@ -1,3 +1,5 @@
+DIST parsedatetime-2.6.gh.tar.gz 70732 BLAKE2B 099b2d4d434fabf3e3d587923a037608a982eee7986f5843f7a463acc52a736a0661261da557a16cfb310414778ef49b1d2bcde62bbf53807132004b526aa175 SHA512 ed7649feb8773fdb33d609ef0abe4d20f555744bd70e9766aba6b9a79d8415c7e2efea1d7ef5c6b5906f3bc90bff124ef92992ce17d83fe70575da2db918e543
DIST parsedatetime-2.6.tar.gz 70732 BLAKE2B 099b2d4d434fabf3e3d587923a037608a982eee7986f5843f7a463acc52a736a0661261da557a16cfb310414778ef49b1d2bcde62bbf53807132004b526aa175 SHA512 ed7649feb8773fdb33d609ef0abe4d20f555744bd70e9766aba6b9a79d8415c7e2efea1d7ef5c6b5906f3bc90bff124ef92992ce17d83fe70575da2db918e543
+EBUILD parsedatetime-2.6-r1.ebuild 506 BLAKE2B 0e063f7f9eb9e0cc9668575c28f6b521ff6e81ba44800ebce3f6d0e3dd56a7c13a6dc1ec0d8eb0cdd7bdac7842e286ef19ae7f78dbf3fa6e786695208ac103f9 SHA512 8ba19269d0e3e421e79e345ebda860f20927880f92a1ee6878d239a8b260ce3ab00f8b89f2f0d59e4a6df091d3bcb3afd790f37428ef74c1909172f83b6d0e26
EBUILD parsedatetime-2.6.ebuild 554 BLAKE2B 94315e4bd91ef50da5b5c82a367859afb0acd2b78ffa5c26836378d45b7652bfb54a96cb446d613ad93a1b586bfff59d814b2a1e7ecc8ac4b03c99d476528dd1 SHA512 50810d5b069edb8bd5003df7ed36c9e1db26a4de49ee6e379091f4fbed2c3b56e7e5be0167330f62960594926cc057997ba7d24946836ebe7d2c7b9a47969ca8
MISC metadata.xml 465 BLAKE2B 5e3487abd250c58c950ac03390ac0f62456552e5b7de1f17265df08dce01fb693d677aa8c8b0b27c789f2ae08d75cd6d9520a2ba4756db81109447d452e3601f SHA512 655e257c64c529b1ac34cd7a6ad466ff0eca85fed3a395e0bbbfc7f12c0df34ba0325ffb9f690dff23020b058ec2f5e9721b5f720708240e8d71afdfa9e14ed5
diff --git a/dev-python/parsedatetime/parsedatetime-2.6-r1.ebuild b/dev-python/parsedatetime/parsedatetime-2.6-r1.ebuild
new file mode 100644
index 000000000000..3a5beb2d1d1c
--- /dev/null
+++ b/dev-python/parsedatetime/parsedatetime-2.6-r1.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=( pypy3 python3_{8..11} )
+
+inherit distutils-r1
+
+DESCRIPTION="Parse human-readable date/time strings"
+HOMEPAGE="https://github.com/bear/parsedatetime"
+SRC_URI="
+ https://github.com/bear/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pyrfc3339/Manifest b/dev-python/pyrfc3339/Manifest
index 2b0fcfbaf5a6..292a2cb2b2e0 100644
--- a/dev-python/pyrfc3339/Manifest
+++ b/dev-python/pyrfc3339/Manifest
@@ -1,3 +1,6 @@
+AUX pyrfc3339-1.1-pytest.patch 7009 BLAKE2B d8bb9cdbb758ef990bb74c2b03991dc3cdcc89dbfa7d0ac4c3649bdeab27a2c34a943dc2ac9d9a56b68bd3679a5216e3176e7cf5401146c439760788ff7adfbe SHA512 8289e64a9c7cd01d13da0f7bf9d373a9f03b64c0a0f3f3ad53970106ca5791f7c52d27ed5e0c0a9004531e14a0bf57514989e95fc03bbb9d408283101fe45fdb
DIST pyRFC3339-1.1.tar.gz 5290 BLAKE2B d3094a22b6903937ae5cfee1210f04b65eb05dd606fe1d3245dca8ec0719ca1a079b720568d8c8e87fea691cebe1944098f99913b97a04570f06354a883e5694 SHA512 958b7761fab590aa42bb57a955c5d834441f717796a452b60df21663099dcf2fc046afe60f8157fd0f1edfd95c5e9c9c5349ab10ca4078d210fc63d848496a2f
+DIST pyrfc3339-1.1.gh.tar.gz 11727 BLAKE2B 210104e5e7c3ed917d6a3475335fce74e4da1c55fddbb76c539b3dd37ec4ce943334e530a9558d13954bc625d4f7f1a7ac2296abf0fd01e87a9664167f7de4be SHA512 96627bcaa64556cc0a87be985fd4f42e7733b342882a4dc5bc5b7d0712bf3f197e09d7c9b7f760117a772bb012829176a61b848903fc41584f26776d3f18ec8f
+EBUILD pyrfc3339-1.1-r1.ebuild 681 BLAKE2B 761d9046cb7f734bce738b9b6ef8469dd8868fe533f86d18fe751d247c666e06f76c196c4c8b6960cd0545335afacbdeb7ccb08150346d675ffebe743e768460 SHA512 ef401a910a08d137b60827e15fbb496dd1a4bbfe9509ea6244afb79ea1c60da018b11d3f5a6f79b482d2819900be1b38beb630d004e47f781a30471c61649184
EBUILD pyrfc3339-1.1.ebuild 540 BLAKE2B 369ad23bf3b80756e102afac86e1b79a40d4de9ae545c151d2d8dabb19807bde153067d45276f3745db4bffe60083b135bd8257b18ebab68ea30835fbc549730 SHA512 b6d4a2f048412cbdbdccc5e827cdf0fd4237a8f598e78ebcaccd1dcbe35feb19d35a69235f81187a1328416935939e1aa8414ed4ddf68197eaf4a909576134c2
-MISC metadata.xml 374 BLAKE2B c78560e5a89c6217862b26e6d1034afbaa32f40f0d2cf0814be6b12cdd1545e6e359ca824789950cbbee57f84c0862b604ce8c93a31c912a8fdb8f2d6bc2f586 SHA512 23e62dfe15993f74a6bb366770b2a731c466441917fa61ed00dfee0e31786bf175318cda7a3fd641983a3fc158b67c302d385e278063b6b886d4a13057b580ab
+MISC metadata.xml 398 BLAKE2B bfad31a8be665f06a25a74223b53564db718e6fd0f4aa2f66cec6f4e6af71ed1ebacdd81c647b48e01989a0515fba6fca1e0e0b63838cf6e2d102a2d3c8bbbf1 SHA512 fdb8053e8e073f3b545424812d1f46f7451ba1c8b36c6d3bef3286d4f32385e20fa41958d54125da07f56cd07c446ec550398e91483a38c117c5141ac0ea0bd1
diff --git a/dev-python/pyrfc3339/files/pyrfc3339-1.1-pytest.patch b/dev-python/pyrfc3339/files/pyrfc3339-1.1-pytest.patch
new file mode 100644
index 000000000000..82dbbb32f3dc
--- /dev/null
+++ b/dev-python/pyrfc3339/files/pyrfc3339-1.1-pytest.patch
@@ -0,0 +1,193 @@
+https://github.com/kurtraschke/pyRFC3339/pull/16
+From: Matthew Davis <github@virtual.drop.net>
+Date: Thu, 7 Apr 2022 18:29:02 -0400
+Subject: [PATCH] Remove python-nose requirements from tests
+
+Converted nose related tests to pytest.
+--- a/pyrfc3339/tests/tests.py
++++ b/pyrfc3339/tests/tests.py
+@@ -8,12 +8,11 @@
+
+ from pyrfc3339 import generate, parse
+ from pyrfc3339.utils import timezone
++import unittest
++import pytest
+ import pytz
+
+-from nose.tools import eq_, raises
+-
+-
+-class TestCore():
++class TestCore(unittest.TestCase):
+ '''
+ This test suite contains tests to address cases not tested in the doctests,
+ as well as additional tests for end-to-end verification.
+@@ -24,8 +23,11 @@ def test_timezone_rounding(self):
+ Test rounding of timezone values to the nearest second.
+
+ '''
+- eq_(timezone(5429), '+01:30')
+- eq_(timezone(5431), '+01:31')
++ if not timezone(5429) == '+01:30':
++ raise AssertionError("%r != %r" % (timezone(5429), '+01:30'))
++
++ if not timezone(5431) == '+01:31':
++ raise AssertionError("%r != %r" % (timezone(5431), '+01:31'))
+
+ def test_zero_offset(self):
+ '''
+@@ -34,11 +36,13 @@ def test_zero_offset(self):
+ '''
+ timestamp = '2009-01-01T10:02:03+00:00'
+ dt = parse(timestamp)
+- eq_(dt.tzinfo, pytz.utc)
++ if not dt.tzinfo == pytz.utc:
++ raise AssertionError("%r != %r" % (dt.tzinfo, pytz.utc))
+
+ timestamp = '2009-01-01T10:02:03-00:00'
+ dt = parse(timestamp)
+- eq_(dt.tzinfo, pytz.utc)
++ if not dt.tzinfo == pytz.utc:
++ raise AssertionError("%r != %r" % (dt.tzinfo, pytz.utc))
+
+ def test_deepcopy(self):
+ '''
+@@ -56,7 +60,8 @@ def test_parse_microseconds(self):
+ '''
+ timestamp = '2009-01-01T10:02:03.25Z'
+ dt = parse(timestamp)
+- eq_(dt.microsecond, 250000)
++ if not dt.microsecond == 250000:
++ raise AssertionError("%r != %r" % (dt.microsecond, 250000))
+
+ def test_generate_microseconds(self):
+ '''
+@@ -65,7 +70,8 @@ def test_generate_microseconds(self):
+ '''
+ dt = datetime(2009, 1, 1, 10, 2, 3, 500000, pytz.utc)
+ timestamp = generate(dt, microseconds=True)
+- eq_(timestamp, '2009-01-01T10:02:03.500000Z')
++ if not timestamp == '2009-01-01T10:02:03.500000Z':
++ raise AssertionError("%r != %r" % (timestamp, '2009-01-01T10:02:03.500000Z'))
+
+ def test_mixed_case(self):
+ '''
+@@ -76,7 +82,8 @@ def test_mixed_case(self):
+ dt1 = parse('2009-01-01t10:01:02z')
+ dt2 = datetime(2009, 1, 1, 10, 1, 2, tzinfo=pytz.utc)
+
+- eq_(dt1, dt2)
++ if not dt1 == dt2:
++ raise AssertionError("%r != %r" % (dt1, dt2))
+
+ def test_parse_naive_utc(self):
+ '''
+@@ -84,15 +91,17 @@ def test_parse_naive_utc(self):
+
+ '''
+ dt1 = parse('2009-01-01T10:01:02Z', produce_naive=True)
+- eq_(dt1.tzinfo, None)
++ if not dt1.tzinfo == None:
++ raise AssertionError("%r != %r" % (dt1.tzinfo, None))
+
+- @raises(ValueError)
+ def test_parse_naive_local(self):
+ '''
+ Test that parsing a local timestamp to a naive datetime fails.
+
+ '''
+- parse('2009-01-01T10:01:02-04:00', produce_naive=True)
++ with self.assertRaises(ValueError) as context:
++ parse('2009-01-01T10:01:02-04:00', produce_naive=True)
++
+
+ def test_generate_utc_parse_utc(self):
+ '''
+@@ -103,7 +112,8 @@ def test_generate_utc_parse_utc(self):
+ dt1 = dt1.replace(tzinfo=pytz.utc)
+
+ dt2 = parse(generate(dt1, microseconds=True))
+- eq_(dt1, dt2)
++ if not dt1 == dt2:
++ raise AssertionError("%r != %r" % (dt1, dt2))
+
+ def test_generate_local_parse_local(self):
+ '''
+@@ -113,7 +123,8 @@ def test_generate_local_parse_local(self):
+ eastern = pytz.timezone('US/Eastern')
+ dt1 = eastern.localize(datetime.utcnow())
+ dt2 = parse(generate(dt1, utc=False, microseconds=True), utc=False)
+- eq_(dt1, dt2)
++ if not dt1 == dt2:
++ raise AssertionError("%r != %r" % (dt1, dt2))
+
+ def test_generate_local_parse_utc(self):
+ '''
+@@ -123,10 +134,12 @@ def test_generate_local_parse_utc(self):
+ eastern = pytz.timezone('US/Eastern')
+ dt1 = eastern.localize(datetime.utcnow())
+ dt2 = parse(generate(dt1, utc=False, microseconds=True))
+- eq_(dt1, dt2)
++ if not dt1 == dt2:
++ raise AssertionError("%r != %r" % (dt1, dt2))
+
+
+-class TestExhaustiveRoundtrip():
++@pytest.mark.parametrize('tz_name', pytz.all_timezones)
++class TestExhaustiveRoundtrip:
+ '''
+ This test suite exhaustively tests parsing and generation by generating
+ a local RFC 3339 timestamp for every timezone supported by pytz,
+@@ -135,36 +148,32 @@ class TestExhaustiveRoundtrip():
+
+ slow = True
+
+- def test_local_roundtrip(self):
+- for tz_name in pytz.all_timezones:
+- yield self.local_roundtrip, tz_name
+-
+- def local_roundtrip(self, tz_name):
++ def test_local_roundtrip(self, tz_name):
+ '''
+ Generates a local datetime using the given timezone,
+ produces a local timestamp from the datetime, parses the timestamp
+ to a local datetime, and verifies that the two datetimes are equal.
+
+ '''
+- tzinfo = pytz.timezone(tz_name)
+- dt1 = tzinfo.localize(datetime.utcnow())
+- timestamp = generate(dt1, utc=False, microseconds=True)
+- dt2 = parse(timestamp, utc=False)
+- eq_(dt1, dt2)
+-
+- def test_utc_roundtrip(self):
+- for tz_name in pytz.all_timezones:
+- yield self.utc_roundtrip, tz_name
++ if not tz_name == 'leapseconds':
++ tzinfo = pytz.timezone(tz_name)
++ dt1 = tzinfo.localize(datetime.utcnow())
++ timestamp = generate(dt1, utc=False, microseconds=True)
++ dt2 = parse(timestamp, utc=False)
++ if not dt1 == dt2:
++ raise AssertionError("%r != %r" % (dt1, dt2))
+
+- def utc_roundtrip(self, tz_name):
++ def test_utc_roundtrip(self, tz_name):
+ '''
+ Generates a local datetime using the given timezone,
+ produces a local timestamp from the datetime, parses the timestamp
+ to a UTC datetime, and verifies that the two datetimes are equal.
+
+ '''
+- tzinfo = pytz.timezone(tz_name)
+- dt1 = tzinfo.localize(datetime.utcnow())
+- timestamp = generate(dt1, utc=False, microseconds=True)
+- dt2 = parse(timestamp)
+- eq_(dt1, dt2)
++ if not tz_name == 'leapseconds':
++ tzinfo = pytz.timezone(tz_name)
++ dt1 = tzinfo.localize(datetime.utcnow())
++ timestamp = generate(dt1, utc=False, microseconds=True)
++ dt2 = parse(timestamp)
++ if not dt1 == dt2:
++ raise AssertionError("%r != %r" % (dt1, dt2))
diff --git a/dev-python/pyrfc3339/metadata.xml b/dev-python/pyrfc3339/metadata.xml
index d7b294b6dd87..e281084bc91a 100644
--- a/dev-python/pyrfc3339/metadata.xml
+++ b/dev-python/pyrfc3339/metadata.xml
@@ -5,6 +5,7 @@
<email>python@gentoo.org</email>
<name>Python</name>
</maintainer>
+ <stabilize-allarches/>
<upstream>
<remote-id type="pypi">pyRFC3339</remote-id>
<remote-id type="github">kurtraschke/pyRFC3339</remote-id>
diff --git a/dev-python/pyrfc3339/pyrfc3339-1.1-r1.ebuild b/dev-python/pyrfc3339/pyrfc3339-1.1-r1.ebuild
new file mode 100644
index 000000000000..4e06f4131a77
--- /dev/null
+++ b/dev-python/pyrfc3339/pyrfc3339-1.1-r1.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_{8..11} )
+inherit distutils-r1
+
+DESCRIPTION="Generates and parses RFC 3339 timestamps"
+HOMEPAGE="https://github.com/kurtraschke/pyRFC3339"
+SRC_URI="
+ https://github.com/kurtraschke/pyRFC3339/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S=${WORKDIR}/pyRFC3339-${PV}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+RDEPEND="dev-python/pytz[${PYTHON_USEDEP}]"
+
+PATCHES=(
+ "${FILESDIR}/${P}-pytest.patch"
+)
+
+distutils_enable_tests pytest
+
+python_test() {
+ epytest pyrfc3339/tests/tests.py
+}