aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/DAWG-Python/DAWG-Python-0.7.2.ebuild17
-rw-r--r--dev-python/DAWG-Python/metadata.xml4
-rw-r--r--dev-python/EbookLib/EbookLib-0.17.1.ebuild16
-rw-r--r--dev-python/EbookLib/Manifest1
-rw-r--r--dev-python/EbookLib/metadata.xml12
-rw-r--r--dev-python/ManimPango/Manifest2
-rw-r--r--dev-python/ManimPango/ManimPango-0.4.4.ebuild43
-rw-r--r--dev-python/ManimPango/ManimPango-0.5.0-r1.ebuild43
-rw-r--r--dev-python/ManimPango/metadata.xml14
-rw-r--r--dev-python/MutatorMath/Manifest1
-rw-r--r--dev-python/MutatorMath/MutatorMath-3.0.1.ebuild30
-rw-r--r--dev-python/MutatorMath/metadata.xml14
-rw-r--r--dev-python/NSKeyedUnArchiver/Manifest1
-rw-r--r--dev-python/NSKeyedUnArchiver/NSKeyedUnArchiver-1.5.ebuild17
-rw-r--r--dev-python/NSKeyedUnArchiver/metadata.xml13
-rw-r--r--dev-python/PyPubSub/Manifest1
-rw-r--r--dev-python/PyPubSub/PyPubSub-4.0.3-r1.ebuild36
-rw-r--r--dev-python/PyQt5-stubs/Manifest2
-rw-r--r--dev-python/PyQt5-stubs/PyQt5-stubs-5.15.2.0.ebuild31
-rw-r--r--dev-python/PyQt5-stubs/PyQt5-stubs-5.15.6.0.ebuild32
-rw-r--r--dev-python/PyQt5-stubs/metadata.xml12
-rw-r--r--dev-python/PyWavefront/Manifest1
-rw-r--r--dev-python/PyWavefront/PyWavefront-1.3.3-r1.ebuild29
-rw-r--r--dev-python/PyWavefront/metadata.xml12
-rw-r--r--dev-python/PythonQwt/Manifest2
-rw-r--r--dev-python/PythonQwt/PythonQwt-0.11.2.ebuild21
-rw-r--r--dev-python/PythonQwt/PythonQwt-0.12.1.ebuild21
-rw-r--r--dev-python/PythonQwt/metadata.xml (renamed from dev-python/hijri-converter/metadata.xml)8
-rw-r--r--dev-python/SLPP/Manifest1
-rw-r--r--dev-python/SLPP/SLPP-1.2.3.ebuild19
-rw-r--r--dev-python/SLPP/metadata.xml12
-rw-r--r--dev-python/TakeTheTime/Manifest1
-rw-r--r--dev-python/TakeTheTime/TakeTheTime-0.3.1.ebuild25
-rw-r--r--dev-python/TakeTheTime/metadata.xml12
-rw-r--r--dev-python/WSME/Manifest1
-rw-r--r--dev-python/WSME/WSME-0.10.0.ebuild25
-rw-r--r--dev-python/WSME/metadata.xml13
-rw-r--r--dev-python/XenAPI/Manifest1
-rw-r--r--dev-python/XenAPI/XenAPI-2.14.ebuild17
-rw-r--r--dev-python/XenAPI/metadata.xml12
-rw-r--r--dev-python/adb-shell/Manifest2
-rw-r--r--dev-python/adb-shell/adb-shell-0.4.3.ebuild35
-rw-r--r--dev-python/adb-shell/adb-shell-0.4.4-r1.ebuild36
-rw-r--r--dev-python/adb-shell/adb-shell-0.4.4.ebuild35
-rw-r--r--dev-python/adb-shell/metadata.xml12
-rw-r--r--dev-python/ahocorasick/Manifest1
-rw-r--r--dev-python/ahocorasick/ahocorasick-2.0.0.ebuild21
-rw-r--r--dev-python/ahocorasick/metadata.xml21
-rw-r--r--dev-python/aiomysql/Manifest1
-rw-r--r--dev-python/aiomysql/aiomysql-0.1.1.ebuild65
-rw-r--r--dev-python/aiomysql/files/aiomysql-0.1.1-git_archive.patch12
-rw-r--r--dev-python/aiomysql/metadata.xml8
-rw-r--r--dev-python/aionotify/Manifest1
-rw-r--r--dev-python/aionotify/aionotify-0.2.0.ebuild16
-rw-r--r--dev-python/aionotify/metadata.xml9
-rw-r--r--dev-python/aiopg/Manifest3
-rw-r--r--dev-python/aiopg/aiopg-1.2.1.ebuild37
-rw-r--r--dev-python/aiopg/aiopg-1.4.0.ebuild (renamed from dev-python/aiopg/aiopg-1.3.2_beta1.ebuild)17
-rw-r--r--dev-python/aiopg/metadata.xml27
-rw-r--r--dev-python/aiosmtplib/Manifest1
-rw-r--r--dev-python/aiosmtplib/aiosmtplib-1.1.6.ebuild36
-rw-r--r--dev-python/aiosmtplib/metadata.xml8
-rw-r--r--dev-python/aiosqlite/Manifest1
-rw-r--r--dev-python/aiosqlite/aiosqlite-0.17.0-r1.ebuild29
-rw-r--r--dev-python/aiosqlite/metadata.xml9
-rw-r--r--dev-python/aiounittest/Manifest1
-rw-r--r--dev-python/aiounittest/aiounittest-1.4.0.ebuild21
-rw-r--r--dev-python/aiounittest/metadata.xml9
-rw-r--r--dev-python/almost/Manifest1
-rw-r--r--dev-python/almost/almost-0.1.5.ebuild30
-rw-r--r--dev-python/almost/files/almost-0.1.5-setuptools.patch11
-rw-r--r--dev-python/almost/metadata.xml17
-rw-r--r--dev-python/aodhclient/Manifest1
-rw-r--r--dev-python/aodhclient/aodhclient-2.1.1.ebuild31
-rw-r--r--dev-python/aodhclient/metadata.xml14
-rw-r--r--dev-python/arpy/Manifest1
-rw-r--r--dev-python/arpy/arpy-2.3.0.ebuild25
-rw-r--r--dev-python/arpy/metadata.xml (renamed from dev-python/py3nvml/metadata.xml)8
-rw-r--r--dev-python/asciimatics/Manifest1
-rw-r--r--dev-python/asciimatics/asciimatics-1.13.0.ebuild36
-rw-r--r--dev-python/asciimatics/asciimatics-9999.ebuild39
-rw-r--r--dev-python/asciimatics/metadata.xml14
-rw-r--r--dev-python/ascim/Manifest2
-rw-r--r--dev-python/ascim/ascim-0.1.1.ebuild24
-rw-r--r--dev-python/ascim/ascim-9999.ebuild24
-rw-r--r--dev-python/ascim/metadata.xml7
-rw-r--r--dev-python/asgi-lifespan/Manifest1
-rw-r--r--dev-python/asgi-lifespan/asgi-lifespan-2.1.0.ebuild38
-rw-r--r--dev-python/asgi-lifespan/metadata.xml13
-rw-r--r--dev-python/aspectlib/Manifest2
-rw-r--r--dev-python/aspectlib/aspectlib-1.5.2.ebuild41
-rw-r--r--dev-python/aspectlib/aspectlib-2.0.0-r1.ebuild37
-rw-r--r--dev-python/aspectlib/metadata.xml24
-rw-r--r--dev-python/asyncinotify/Manifest1
-rw-r--r--dev-python/asyncinotify/asyncinotify-4.0.1.ebuild26
-rw-r--r--dev-python/asyncinotify/metadata.xml21
-rw-r--r--dev-python/asyncmy/Manifest1
-rw-r--r--dev-python/asyncmy/asyncmy-0.2.8.ebuild74
-rw-r--r--dev-python/asyncmy/metadata.xml9
-rw-r--r--dev-python/asyncpg/Manifest2
-rw-r--r--dev-python/asyncpg/asyncpg-0.23.0.ebuild26
-rw-r--r--dev-python/asyncpg/asyncpg-0.29.0-r1.ebuild73
-rw-r--r--dev-python/asyncpg/files/cython-3.patch26
-rw-r--r--dev-python/asyncpg/metadata.xml12
-rw-r--r--dev-python/asyncssh/Manifest2
-rw-r--r--dev-python/asyncssh/asyncssh-2.6.0.ebuild54
-rw-r--r--dev-python/asyncssh/asyncssh-2.7.0.ebuild53
-rw-r--r--dev-python/asyncssh/metadata.xml55
-rw-r--r--dev-python/auditok/Manifest1
-rw-r--r--dev-python/auditok/auditok-0.1.5.ebuild38
-rw-r--r--dev-python/auditok/auditok-0.2.0-r1.ebuild (renamed from dev-python/auditok/auditok-0.2.0.ebuild)7
-rw-r--r--dev-python/auditok/metadata.xml5
-rw-r--r--dev-python/autoflake/Manifest2
-rw-r--r--dev-python/autoflake/autoflake-1.4.ebuild29
-rw-r--r--dev-python/autoflake/autoflake-2.3.1.ebuild30
-rw-r--r--dev-python/autoflake/metadata.xml10
-rw-r--r--dev-python/automaton/Manifest1
-rw-r--r--dev-python/automaton/automaton-2.2.0.ebuild28
-rw-r--r--dev-python/avro/Manifest1
-rw-r--r--dev-python/avro/avro-1.11.3.ebuild24
-rw-r--r--dev-python/avro/metadata.xml (renamed from dev-python/fchroot/metadata.xml)4
-rw-r--r--dev-python/azure-core/Manifest2
-rw-r--r--dev-python/azure-core/azure-core-1.27.1.ebuild48
-rw-r--r--dev-python/azure-core/azure-core-1.28.0.ebuild48
-rw-r--r--dev-python/azure-core/metadata.xml9
-rw-r--r--dev-python/azure-storage-blob/Manifest3
-rw-r--r--dev-python/azure-storage-blob/azure-storage-blob-12.16.0.ebuild42
-rw-r--r--dev-python/azure-storage-blob/azure-storage-blob-12.17.0.ebuild42
-rw-r--r--dev-python/azure-storage-blob/azure-storage-blob-12.8.1.ebuild17
-rw-r--r--dev-python/azure-storage-blob/metadata.xml14
-rw-r--r--dev-python/b2sdk/Manifest3
-rw-r--r--dev-python/b2sdk/b2sdk-1.21.0.ebuild61
-rw-r--r--dev-python/b2sdk/b2sdk-1.8.0.ebuild41
-rw-r--r--dev-python/b2sdk/b2sdk-2.0.0-r1.ebuild67
-rw-r--r--dev-python/b2sdk/files/b2sdk-1.17.2-disable-requirement-installation.patch22
-rw-r--r--dev-python/b2sdk/files/b2sdk-1.2.0-skip-integration-test.patch12
-rw-r--r--dev-python/b2sdk/metadata.xml5
-rw-r--r--dev-python/babelfont/Manifest1
-rw-r--r--dev-python/babelfont/babelfont-2.0.1.ebuild25
-rw-r--r--dev-python/babelfont/metadata.xml14
-rw-r--r--dev-python/baron/Manifest2
-rw-r--r--dev-python/baron/baron-0.9.ebuild14
-rw-r--r--dev-python/baron/metadata.xml7
-rw-r--r--dev-python/base58/Manifest2
-rw-r--r--dev-python/base58/base58-2.1.0.ebuild26
-rw-r--r--dev-python/base58/base58-2.1.1-r1.ebuild30
-rw-r--r--dev-python/base58/metadata.xml17
-rw-r--r--dev-python/betamax-serializers/Manifest1
-rw-r--r--dev-python/betamax-serializers/betamax-serializers-0.2.1.ebuild24
-rw-r--r--dev-python/betamax-serializers/metadata.xml14
-rw-r--r--dev-python/betterproto/Manifest2
-rw-r--r--dev-python/betterproto/betterproto-2.0.0_beta4.ebuild56
-rw-r--r--dev-python/betterproto/betterproto-2.0.0_beta5.ebuild52
-rw-r--r--dev-python/betterproto/betterproto-9999.ebuild52
-rw-r--r--dev-python/betterproto/files/betterproto-2.0.0b4-fix-tests.patch1086
-rw-r--r--dev-python/betterproto/metadata.xml13
-rw-r--r--dev-python/beziers/Manifest1
-rw-r--r--dev-python/beziers/beziers-0.3.1.ebuild34
-rw-r--r--dev-python/beziers/metadata.xml13
-rw-r--r--dev-python/bidict/Manifest2
-rw-r--r--dev-python/bidict/bidict-0.21.2.ebuild27
-rw-r--r--dev-python/bidict/bidict-0.22.1.ebuild44
-rw-r--r--dev-python/bidict/metadata.xml26
-rw-r--r--dev-python/billiard/Manifest3
-rw-r--r--dev-python/billiard/billiard-3.6.3.0.ebuild47
-rw-r--r--dev-python/billiard/billiard-3.6.4.0.ebuild34
-rw-r--r--dev-python/billiard/billiard-4.0.2.ebuild25
-rw-r--r--dev-python/billiard/metadata.xml2
-rw-r--r--dev-python/biplist/Manifest1
-rw-r--r--dev-python/biplist/biplist-1.0.3.ebuild27
-rw-r--r--dev-python/biplist/files/biplist-python3-compat.patch33
-rw-r--r--dev-python/biplist/metadata.xml12
-rw-r--r--dev-python/bitbox02/Manifest1
-rw-r--r--dev-python/bitbox02/bitbox02-5.3.0.ebuild26
-rw-r--r--dev-python/bitbox02/metadata.xml11
-rw-r--r--dev-python/blurhash/Manifest1
-rw-r--r--dev-python/blurhash/blurhash-1.1.4.ebuild35
-rw-r--r--dev-python/blurhash/metadata.xml9
-rw-r--r--dev-python/browserstack-local-python/Manifest1
-rw-r--r--dev-python/browserstack-local-python/browserstack-local-python-1.2.2.ebuild18
-rw-r--r--dev-python/browserstack-local-python/metadata.xml14
-rw-r--r--dev-python/bson/Manifest1
-rw-r--r--dev-python/bson/bson-0.5.8.ebuild29
-rw-r--r--dev-python/bson/metadata.xml14
-rw-r--r--dev-python/cassowary/Manifest1
-rw-r--r--dev-python/cassowary/cassowary-0.6.ebuild53
-rw-r--r--dev-python/cassowary/files/cassowary.desktop9
-rw-r--r--dev-python/cassowary/metadata.xml11
-rw-r--r--dev-python/castellan/Manifest1
-rw-r--r--dev-python/castellan/castellan-3.6.0.ebuild35
-rw-r--r--dev-python/castellan/metadata.xml13
-rw-r--r--dev-python/cchardet/Manifest1
-rw-r--r--dev-python/cchardet/cchardet-2.1.7.ebuild39
-rw-r--r--dev-python/cchardet/metadata.xml144
-rw-r--r--dev-python/celery/Manifest2
-rw-r--r--dev-python/celery/celery-5.1.1.ebuild102
-rw-r--r--dev-python/celery/celery-5.3.6.ebuild118
-rw-r--r--dev-python/celery/files/celery.initd-r253
-rw-r--r--dev-python/celery/metadata.xml8
-rw-r--r--dev-python/cffsubr/Manifest1
-rw-r--r--dev-python/cffsubr/cffsubr-0.2.8.ebuild39
-rw-r--r--dev-python/cffsubr/files/cffsubr-0.2.8-fix-setup-py.patch18
-rw-r--r--dev-python/cffsubr/files/cffsubr-system_tx.diff12
-rw-r--r--dev-python/cffsubr/metadata.xml14
-rw-r--r--dev-python/check-manifest/Manifest1
-rw-r--r--dev-python/check-manifest/check-manifest-0.46.ebuild38
-rw-r--r--dev-python/check-manifest/metadata.xml12
-rw-r--r--dev-python/click-aliases/Manifest1
-rw-r--r--dev-python/click-aliases/click-aliases-1.0.4.ebuild24
-rw-r--r--dev-python/click-aliases/metadata.xml13
-rw-r--r--dev-python/click-command-tree/Manifest1
-rw-r--r--dev-python/click-command-tree/click-command-tree-1.1.1.ebuild23
-rw-r--r--dev-python/click-command-tree/metadata.xml9
-rw-r--r--dev-python/click-didyoumean/Manifest1
-rw-r--r--dev-python/click-didyoumean/click-didyoumean-0.0.3.ebuild25
-rw-r--r--dev-python/click-didyoumean/metadata.xml9
-rw-r--r--dev-python/click-option-group/Manifest2
-rw-r--r--dev-python/click-option-group/click-option-group-0.5.5.ebuild32
-rw-r--r--dev-python/click-option-group/click-option-group-0.5.6.ebuild32
-rw-r--r--dev-python/click-option-group/metadata.xml25
-rw-r--r--dev-python/click-repl/Manifest2
-rw-r--r--dev-python/click-repl/click-repl-0.2.0-r1.ebuild (renamed from dev-python/click-repl/click-repl-0.2.0.ebuild)17
-rw-r--r--dev-python/click-repl/metadata.xml12
-rw-r--r--dev-python/cloudflare/Manifest2
-rw-r--r--dev-python/cloudflare/cloudflare-2.19.2.ebuild70
-rw-r--r--dev-python/cloudflare/cloudflare-2.19.4.ebuild70
-rw-r--r--dev-python/cloudflare/metadata.xml12
-rw-r--r--dev-python/cloup/Manifest1
-rw-r--r--dev-python/cloup/cloup-3.0.5.ebuild41
-rw-r--r--dev-python/cloup/metadata.xml14
-rw-r--r--dev-python/clufter/Manifest1
-rw-r--r--dev-python/clufter/clufter-0.77.2.ebuild34
-rw-r--r--dev-python/cmarkgfm/Manifest1
-rw-r--r--dev-python/cmarkgfm/cmarkgfm-0.6.0.ebuild32
-rw-r--r--dev-python/cmarkgfm/files/cmarkgfm-0.6.0-use-system-cmark-gfm.patch47
-rw-r--r--dev-python/cmarkgfm/metadata.xml13
-rw-r--r--dev-python/codecov/Manifest1
-rw-r--r--dev-python/codecov/codecov-2.1.12.ebuild39
-rw-r--r--dev-python/codecov/metadata.xml16
-rw-r--r--dev-python/collidoscope/Manifest1
-rw-r--r--dev-python/collidoscope/collidoscope-0.0.6.ebuild24
-rw-r--r--dev-python/collidoscope/metadata.xml13
-rw-r--r--dev-python/colored/Manifest2
-rw-r--r--dev-python/colored/colored-2.2.4.ebuild (renamed from dev-python/colored/colored-1.4.2.ebuild)19
-rw-r--r--dev-python/colored/metadata.xml7
-rw-r--r--dev-python/colorthief/Manifest1
-rw-r--r--dev-python/colorthief/colorthief-0.2.1.ebuild20
-rw-r--r--dev-python/colorthief/metadata.xml12
-rw-r--r--dev-python/commandlines/Manifest1
-rw-r--r--dev-python/commandlines/commandlines-0.4.1.ebuild22
-rw-r--r--dev-python/commandlines/metadata.xml13
-rw-r--r--dev-python/compreffor/Manifest1
-rw-r--r--dev-python/compreffor/compreffor-0.5.1.ebuild35
-rw-r--r--dev-python/compreffor/files/remove-pytest-runner.patch11
-rw-r--r--dev-python/compreffor/metadata.xml13
-rw-r--r--dev-python/convertdate/Manifest3
-rw-r--r--dev-python/convertdate/convertdate-2.3.1.ebuild24
-rw-r--r--dev-python/convertdate/convertdate-2.4.0.ebuild (renamed from dev-python/convertdate/convertdate-2.3.0.ebuild)20
-rw-r--r--dev-python/convertdate/metadata.xml15
-rw-r--r--dev-python/cryptg/Manifest65
-rw-r--r--dev-python/cryptg/cryptg-0.4.ebuild91
-rw-r--r--dev-python/cryptg/metadata.xml22
-rw-r--r--dev-python/cu2qu/Manifest1
-rw-r--r--dev-python/cu2qu/cu2qu-1.6.7.ebuild32
-rw-r--r--dev-python/cu2qu/metadata.xml48
-rw-r--r--dev-python/curio/Manifest3
-rw-r--r--dev-python/curio/curio-0.9.ebuild39
-rw-r--r--dev-python/curio/curio-1.4-r1.ebuild50
-rw-r--r--dev-python/curio/curio-1.5.ebuild50
-rw-r--r--dev-python/curio/metadata.xml16
-rw-r--r--dev-python/cursive/Manifest1
-rw-r--r--dev-python/cursive/cursive-0.2.2-r1.ebuild28
-rw-r--r--dev-python/cursive/metadata.xml9
-rw-r--r--dev-python/cx-oracle/Manifest1
-rw-r--r--dev-python/cx-oracle/cx-oracle-8.2.1.ebuild52
-rw-r--r--dev-python/cx-oracle/metadata.xml14
-rw-r--r--dev-python/dacite/Manifest2
-rw-r--r--dev-python/dacite/dacite-1.8.1.ebuild (renamed from dev-python/dacite/dacite-1.6.0.ebuild)13
-rw-r--r--dev-python/dacite/metadata.xml5
-rw-r--r--dev-python/daff/daff-1.3.46.ebuild18
-rw-r--r--dev-python/daff/metadata.xml9
-rw-r--r--dev-python/daiquiri/Manifest1
-rw-r--r--dev-python/daiquiri/daiquiri-3.2.3.ebuild29
-rw-r--r--dev-python/daiquiri/metadata.xml16
-rw-r--r--dev-python/darkdetect/Manifest1
-rw-r--r--dev-python/darkdetect/darkdetect-0.8.0.ebuild15
-rw-r--r--dev-python/darkdetect/metadata.xml16
-rw-r--r--dev-python/dasbus/Manifest1
-rw-r--r--dev-python/dasbus/dasbus-1.7-r1.ebuild21
-rw-r--r--dev-python/dasbus/metadata.xml10
-rw-r--r--dev-python/databases/Manifest1
-rw-r--r--dev-python/databases/databases-0.4.3.ebuild63
-rw-r--r--dev-python/databases/metadata.xml9
-rw-r--r--dev-python/dataclasses-json/Manifest1
-rw-r--r--dev-python/dataclasses-json/dataclasses-json-0.5.14.ebuild35
-rw-r--r--dev-python/dataclasses-json/metadata.xml9
-rw-r--r--dev-python/dateparser/Manifest2
-rw-r--r--dev-python/dateparser/dateparser-1.0.0.ebuild38
-rw-r--r--dev-python/dateparser/dateparser-1.2.0.ebuild55
-rw-r--r--dev-python/dateparser/files/dateparser-1.2.0-migrate-hijridate.patch71
-rw-r--r--dev-python/dateparser/metadata.xml15
-rw-r--r--dev-python/decopatch/Manifest1
-rw-r--r--dev-python/decopatch/decopatch-1.4.10.ebuild40
-rw-r--r--dev-python/decopatch/files/decopatch-1.4.10-python12.patch61
-rw-r--r--dev-python/decopatch/metadata.xml14
-rw-r--r--dev-python/defcon/Manifest1
-rw-r--r--dev-python/defcon/defcon-0.10.2.ebuild32
-rw-r--r--dev-python/defcon/metadata.xml9
-rw-r--r--dev-python/desktop-notifier/Manifest1
-rw-r--r--dev-python/desktop-notifier/desktop-notifier-4.0.0.ebuild33
-rw-r--r--dev-python/desktop-notifier/metadata.xml16
-rw-r--r--dev-python/devtools/Manifest2
-rw-r--r--dev-python/devtools/devtools-0.10.0-r1.ebuild47
-rw-r--r--dev-python/devtools/devtools-0.6.1.ebuild38
-rw-r--r--dev-python/devtools/metadata.xml20
-rw-r--r--dev-python/digitalocean/Manifest1
-rw-r--r--dev-python/digitalocean/digitalocean-1.17.0-r1.ebuild32
-rw-r--r--dev-python/digitalocean/metadata.xml11
-rw-r--r--dev-python/dotmap/Manifest1
-rw-r--r--dev-python/dotmap/dotmap-1.3.8.ebuild19
-rw-r--r--dev-python/dotmap/metadata.xml13
-rw-r--r--dev-python/doxypypy/Manifest2
-rw-r--r--dev-python/doxypypy/doxypypy-0.8.8.6_p20210405-r1.ebuild (renamed from dev-python/doxypypy/doxypypy-0.8.8.6_p20210405.ebuild)20
-rw-r--r--dev-python/doxypypy/metadata.xml2
-rw-r--r--dev-python/dropbox/Manifest1
-rw-r--r--dev-python/dropbox/dropbox-11.36.2.ebuild43
-rw-r--r--dev-python/dropbox/metadata.xml12
-rw-r--r--dev-python/dtreeviz/Manifest1
-rw-r--r--dev-python/dtreeviz/dtreeviz-2.2.2.ebuild32
-rw-r--r--dev-python/dtreeviz/metadata.xml13
-rw-r--r--dev-python/evernote2/evernote2-9999.ebuild26
-rw-r--r--dev-python/evernote2/metadata.xml12
-rw-r--r--dev-python/evernote3/Manifest1
-rw-r--r--dev-python/evernote3/evernote3-1.25.14.ebuild21
-rw-r--r--dev-python/evernote3/metadata.xml13
-rw-r--r--dev-python/exif/Manifest1
-rw-r--r--dev-python/exif/exif-1.6.0.ebuild22
-rw-r--r--dev-python/exif/metadata.xml12
-rw-r--r--dev-python/factory_boy/Manifest1
-rw-r--r--dev-python/factory_boy/factory_boy-3.2.0.ebuild46
-rw-r--r--dev-python/factory_boy/metadata.xml26
-rw-r--r--dev-python/fake-useragent/Manifest1
-rw-r--r--dev-python/fake-useragent/fake-useragent-0.1.11-r1.ebuild57
-rw-r--r--dev-python/fake-useragent/metadata.xml18
-rw-r--r--dev-python/faust-cchardet/Manifest3
-rw-r--r--dev-python/faust-cchardet/faust-cchardet-2.1.18.ebuild46
-rw-r--r--dev-python/faust-cchardet/faust-cchardet-2.1.19.ebuild46
-rw-r--r--dev-python/faust-cchardet/metadata.xml11
-rw-r--r--dev-python/fchroot/Manifest1
-rw-r--r--dev-python/fchroot/fchroot-0.1.2.ebuild25
-rw-r--r--dev-python/ffmpeg-python/Manifest1
-rw-r--r--dev-python/ffmpeg-python/ffmpeg-python-0.2.0.ebuild28
-rw-r--r--dev-python/flask-restx/Manifest1
-rw-r--r--dev-python/flask-restx/files/flask-restx-avoid-importlib_resources.patch22
-rw-r--r--dev-python/flask-restx/files/flask-restx-fix-flask-compat.patch147
-rw-r--r--dev-python/flask-restx/flask-restx-1.3.0.ebuild50
-rw-r--r--dev-python/flask-restx/metadata.xml11
-rw-r--r--dev-python/font-v/Manifest1
-rw-r--r--dev-python/font-v/font-v-1.0.5.ebuild39
-rw-r--r--dev-python/font-v/metadata.xml14
-rw-r--r--dev-python/fontMath/Manifest2
-rw-r--r--dev-python/fontMath/fontMath-0.6.0.ebuild23
-rw-r--r--dev-python/fontMath/fontMath-0.8.1.ebuild27
-rw-r--r--dev-python/fontMath/metadata.xml14
-rw-r--r--dev-python/fontParts/Manifest1
-rw-r--r--dev-python/fontParts/fontParts-0.9.10.ebuild35
-rw-r--r--dev-python/fontParts/metadata.xml14
-rw-r--r--dev-python/fontPens/Manifest1
-rw-r--r--dev-python/fontPens/fontPens-0.2.4.ebuild25
-rw-r--r--dev-python/fontPens/metadata.xml14
-rw-r--r--dev-python/funcsigs/Manifest1
-rw-r--r--dev-python/funcsigs/funcsigs-0.4.ebuild19
-rw-r--r--dev-python/funcsigs/metadata.xml8
-rw-r--r--dev-python/futurist/Manifest1
-rw-r--r--dev-python/futurist/futurist-2.3.0.ebuild23
-rw-r--r--dev-python/futurist/metadata.xml9
-rw-r--r--dev-python/gbinder/Manifest1
-rw-r--r--dev-python/gbinder/files/gbinder-1.1.1-setuptools.patch37
-rw-r--r--dev-python/gbinder/gbinder-1.1.2-r1.ebuild45
-rw-r--r--dev-python/gbinder/gbinder-9999.ebuild45
-rw-r--r--dev-python/gbinder/metadata.xml36
-rw-r--r--dev-python/gemcall/Manifest2
-rw-r--r--dev-python/gemcall/gemcall-0.9.1.ebuild17
-rw-r--r--dev-python/gemcall/gemcall-0.9.2.ebuild17
-rw-r--r--dev-python/gemcall/metadata.xml12
-rw-r--r--dev-python/geopy/Manifest1
-rw-r--r--dev-python/geopy/geopy-2.1.0.ebuild74
-rw-r--r--dev-python/geopy/metadata.xml20
-rw-r--r--dev-python/gevent/Manifest1
-rw-r--r--dev-python/gevent/gevent-23.9.1.ebuild31
-rw-r--r--dev-python/gevent/metadata.xml17
-rw-r--r--dev-python/github-sublee-glicko2/Manifest1
-rw-r--r--dev-python/github-sublee-glicko2/github-sublee-glicko2-0_pre20191010-r1.ebuild29
-rw-r--r--dev-python/github-sublee-glicko2/metadata.xml11
-rw-r--r--dev-python/glance_store/Manifest1
-rw-r--r--dev-python/glance_store/glance_store-2.3.0.ebuild47
-rw-r--r--dev-python/glance_store/metadata.xml20
-rw-r--r--dev-python/glcontext/Manifest1
-rw-r--r--dev-python/glcontext/glcontext-2.5.0.ebuild39
-rw-r--r--dev-python/glcontext/metadata.xml12
-rw-r--r--dev-python/glfw/Manifest1
-rw-r--r--dev-python/glfw/glfw-2.7.0.ebuild20
-rw-r--r--dev-python/glfw/metadata.xml12
-rw-r--r--dev-python/glicko2/glicko2-2.0.0-r2.ebuild24
-rw-r--r--dev-python/glicko2/glicko2-2.0.0.ebuild24
-rw-r--r--dev-python/glicko2/metadata.xml2
-rw-r--r--dev-python/glyphsLib/Manifest1
-rw-r--r--dev-python/glyphsLib/glyphsLib-5.3.2.ebuild38
-rw-r--r--dev-python/glyphsLib/metadata.xml21
-rw-r--r--dev-python/glyphtools/Manifest1
-rw-r--r--dev-python/glyphtools/glyphtools-0.7.3.ebuild29
-rw-r--r--dev-python/glyphtools/metadata.xml13
-rw-r--r--dev-python/gnuplot-py/Manifest2
-rw-r--r--dev-python/gnuplot-py/gnuplot-py-1.8_p8-r1.ebuild45
-rw-r--r--dev-python/gnuplot-py/metadata.xml12
-rw-r--r--dev-python/google-cloud-storage/Manifest1
-rw-r--r--dev-python/google-cloud-storage/google-cloud-storage-1.36.0.ebuild15
-rw-r--r--dev-python/google-cloud-storage/metadata.xml8
-rw-r--r--dev-python/googletrans/Manifest2
-rw-r--r--dev-python/googletrans/googletrans-4.0.0_rc1-r1.ebuild (renamed from dev-python/googletrans/googletrans-4.0.0_rc1.ebuild)14
-rw-r--r--dev-python/googletrans/metadata.xml4
-rw-r--r--dev-python/googletransx/Manifest1
-rw-r--r--dev-python/googletransx/googletransx-2.4.2-r1.ebuild23
-rw-r--r--dev-python/googletransx/metadata.xml42
-rw-r--r--dev-python/graphene/Manifest4
-rw-r--r--dev-python/graphene/graphene-3.0.0_beta7.ebuild63
-rw-r--r--dev-python/graphene/graphene-3.2.2.ebuild67
-rw-r--r--dev-python/graphene/metadata.xml12
-rw-r--r--dev-python/graphql-core/Manifest2
-rw-r--r--dev-python/graphql-core/graphql-core-3.1.5.ebuild28
-rw-r--r--dev-python/graphql-core/graphql-core-3.2.3.ebuild49
-rw-r--r--dev-python/graphql-core/metadata.xml11
-rw-r--r--dev-python/graphql-relay/Manifest2
-rw-r--r--dev-python/graphql-relay/graphql-relay-3.1.0.ebuild31
-rw-r--r--dev-python/graphql-relay/graphql-relay-3.2.0.ebuild29
-rw-r--r--dev-python/graphql-relay/metadata.xml12
-rw-r--r--dev-python/grpc-stubs/Manifest1
-rw-r--r--dev-python/grpc-stubs/files/grpc-stubs-1.53.0.3-die-on-missing-import.patch12
-rw-r--r--dev-python/grpc-stubs/grpc-stubs-1.53.0.3.ebuild40
-rw-r--r--dev-python/grpc-stubs/metadata.xml12
-rw-r--r--dev-python/grpclib/Manifest2
-rw-r--r--dev-python/grpclib/files/grpclib-add_css_file.patch10
-rw-r--r--dev-python/grpclib/grpclib-0.4.2.ebuild56
-rw-r--r--dev-python/grpclib/grpclib-0.4.3.ebuild48
-rw-r--r--dev-python/grpclib/metadata.xml13
-rw-r--r--dev-python/guidata/Manifest3
-rw-r--r--dev-python/guidata/guidata-1.7.9.ebuild24
-rw-r--r--dev-python/guidata/guidata-3.3.0.ebuild39
-rw-r--r--dev-python/guidata/guidata-3.5.0.ebuild39
-rw-r--r--dev-python/guidata/metadata.xml8
-rw-r--r--dev-python/guiqwt/Manifest1
-rw-r--r--dev-python/guiqwt/guiqwt-4.4.5-r1.ebuild29
-rw-r--r--dev-python/guiqwt/metadata.xml (renamed from dev-python/ovsdbapp/metadata.xml)9
-rw-r--r--dev-python/guppy3/Manifest2
-rw-r--r--dev-python/guppy3/files/guppy3-3.1.3-py311-refcount-assert.patch44
-rw-r--r--dev-python/guppy3/guppy3-3.1.3-r1.ebuild28
-rw-r--r--dev-python/guppy3/guppy3-3.1.4.ebuild24
-rw-r--r--dev-python/guppy3/metadata.xml18
-rw-r--r--dev-python/hachoir/Manifest1
-rw-r--r--dev-python/hachoir/hachoir-3.3.0.ebuild21
-rw-r--r--dev-python/hachoir/metadata.xml19
-rw-r--r--dev-python/hidapi/Manifest1
-rw-r--r--dev-python/hidapi/hidapi-0.10.1.ebuild28
-rw-r--r--dev-python/hidapi/metadata.xml8
-rw-r--r--dev-python/hijri-converter/Manifest2
-rw-r--r--dev-python/hijri-converter/hijri-converter-2.1.1.ebuild19
-rw-r--r--dev-python/hijridate/Manifest1
-rw-r--r--dev-python/hijridate/hijridate-2.4.1.ebuild (renamed from dev-python/hijri-converter/hijri-converter-2.1.3.ebuild)16
-rw-r--r--dev-python/hijridate/metadata.xml10
-rw-r--r--dev-python/hstspreload/Manifest1
-rw-r--r--dev-python/hstspreload/hstspreload-2021.7.5.ebuild25
-rw-r--r--dev-python/hstspreload/metadata.xml16
-rw-r--r--dev-python/http-ece/Manifest2
-rw-r--r--dev-python/http-ece/http-ece-1.1.0.ebuild28
-rw-r--r--dev-python/http-ece/http-ece-1.2.0.ebuild26
-rw-r--r--dev-python/http-ece/metadata.xml9
-rw-r--r--dev-python/httptools/Manifest1
-rw-r--r--dev-python/httptools/httptools-0.1.1.ebuild21
-rw-r--r--dev-python/httptools/metadata.xml13
-rw-r--r--dev-python/hunter/Manifest2
-rw-r--r--dev-python/hunter/files/fix_backend.patch12
-rw-r--r--dev-python/hunter/files/remove-setuptools_scm-upper-constraint.patch15
-rw-r--r--dev-python/hunter/hunter-3.3.8.ebuild76
-rw-r--r--dev-python/hunter/hunter-3.6.1.ebuild77
-rw-r--r--dev-python/hunter/metadata.xml66
-rw-r--r--dev-python/hwi/Manifest2
-rw-r--r--dev-python/hwi/hwi-1.2.1.ebuild56
-rw-r--r--dev-python/hwi/hwi-2.0.2.ebuild56
-rw-r--r--dev-python/hwi/metadata.xml11
-rw-r--r--dev-python/hypercorn/Manifest1
-rw-r--r--dev-python/hypercorn/files/hypercorn-0.11.2-no-coverage.patch9
-rw-r--r--dev-python/hypercorn/hypercorn-0.11.2.ebuild61
-rw-r--r--dev-python/hypercorn/metadata.xml28
-rw-r--r--dev-python/hypothesmith/Manifest1
-rw-r--r--dev-python/hypothesmith/hypothesmith-0.2.0.ebuild46
-rw-r--r--dev-python/hypothesmith/metadata.xml9
-rw-r--r--dev-python/i3ipc/i3ipc-2.2.1-r1.ebuild38
-rw-r--r--dev-python/i3ipc/i3ipc-2.2.1.ebuild11
-rw-r--r--dev-python/i3ipc/metadata.xml7
-rw-r--r--dev-python/iOSbackup/Manifest1
-rw-r--r--dev-python/iOSbackup/iOSbackup-0.9.925.ebuild23
-rw-r--r--dev-python/iOSbackup/metadata.xml13
-rw-r--r--dev-python/icecream/Manifest1
-rw-r--r--dev-python/icecream/icecream-2.1.3.ebuild34
-rw-r--r--dev-python/icecream/metadata.xml12
-rw-r--r--dev-python/injector/Manifest2
-rw-r--r--dev-python/injector/injector-0.18.4.ebuild21
-rw-r--r--dev-python/injector/injector-0.21.0-r1.ebuild26
-rw-r--r--dev-python/injector/metadata.xml9
-rw-r--r--dev-python/internetarchive/Manifest1
-rw-r--r--dev-python/internetarchive/internetarchive-3.7.0.ebuild31
-rw-r--r--dev-python/internetarchive/metadata.xml12
-rw-r--r--dev-python/invoke/Manifest1
-rw-r--r--dev-python/invoke/invoke-2.2.0.ebuild33
-rw-r--r--dev-python/invoke/metadata.xml15
-rw-r--r--dev-python/isosurfaces/Manifest1
-rw-r--r--dev-python/isosurfaces/isosurfaces-0.1.0.ebuild21
-rw-r--r--dev-python/isosurfaces/metadata.xml9
-rw-r--r--dev-python/itemadapter/Manifest1
-rw-r--r--dev-python/itemadapter/itemadapter-0.8.0.ebuild27
-rw-r--r--dev-python/itemadapter/metadata.xml11
-rw-r--r--dev-python/itemloaders/Manifest1
-rw-r--r--dev-python/itemloaders/itemloaders-1.1.0.ebuild25
-rw-r--r--dev-python/itemloaders/metadata.xml12
-rw-r--r--dev-python/iuliia/Manifest1
-rw-r--r--dev-python/iuliia/iuliia-0.11.5.ebuild21
-rw-r--r--dev-python/iuliia/metadata.xml9
-rw-r--r--dev-python/jellyfin-apiclient-python/Manifest2
-rw-r--r--dev-python/jellyfin-apiclient-python/jellyfin-apiclient-python-1.6.2.ebuild23
-rw-r--r--dev-python/jellyfin-apiclient-python/jellyfin-apiclient-python-1.7.2.ebuild23
-rw-r--r--dev-python/jellyfin-apiclient-python/metadata.xml8
-rw-r--r--dev-python/jinja2-cli/Manifest1
-rw-r--r--dev-python/jinja2-cli/jinja2-cli-0.8.2.ebuild24
-rw-r--r--dev-python/jinja2-cli/metadata.xml8
-rw-r--r--dev-python/jplephem/Manifest2
-rw-r--r--dev-python/jplephem/jplephem-2.21.ebuild (renamed from dev-python/jplephem/jplephem-2.16.ebuild)11
-rw-r--r--dev-python/jplephem/metadata.xml2
-rw-r--r--dev-python/jsonfeed/Manifest1
-rw-r--r--dev-python/jsonfeed/jsonfeed-1.1.2.ebuild26
-rw-r--r--dev-python/jsonfeed/metadata.xml11
-rw-r--r--dev-python/jsonlines/Manifest1
-rw-r--r--dev-python/jsonlines/jsonlines-4.0.0.ebuild34
-rw-r--r--dev-python/jsonlines/metadata.xml12
-rw-r--r--dev-python/jsonpath-rw-ext/Manifest1
-rw-r--r--dev-python/jsonpath-rw-ext/jsonpath-rw-ext-1.2.2-r1.ebuild40
-rw-r--r--dev-python/jsonpath-rw-ext/metadata.xml10
-rw-r--r--dev-python/jsonpath-rw/Manifest1
-rw-r--r--dev-python/jsonpath-rw/jsonpath-rw-1.4.0-r1.ebuild30
-rw-r--r--dev-python/jsonpath-rw/metadata.xml14
-rw-r--r--dev-python/jupyter-sphinx/Manifest2
-rw-r--r--dev-python/jupyter-sphinx/jupyter-sphinx-0.4.0.ebuild (renamed from dev-python/jupyter-sphinx/jupyter-sphinx-0.3.2.ebuild)10
-rw-r--r--dev-python/jupyter-sphinx/metadata.xml10
-rw-r--r--dev-python/k5test/Manifest1
-rw-r--r--dev-python/k5test/k5test-0.9.2.ebuild23
-rw-r--r--dev-python/k5test/metadata.xml19
-rw-r--r--dev-python/keystonemiddleware/Manifest1
-rw-r--r--dev-python/keystonemiddleware/keystonemiddleware-9.1.0.ebuild41
-rw-r--r--dev-python/keystonemiddleware/metadata.xml14
-rw-r--r--dev-python/kitchen/Manifest1
-rw-r--r--dev-python/kitchen/kitchen-1.2.6.ebuild36
-rw-r--r--dev-python/kitchen/metadata.xml8
-rw-r--r--dev-python/kurbopy/Manifest33
-rw-r--r--dev-python/kurbopy/kurbopy-0.10.40.ebuild64
-rw-r--r--dev-python/kurbopy/metadata.xml22
-rw-r--r--dev-python/langdetect/Manifest1
-rw-r--r--dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch13
-rw-r--r--dev-python/langdetect/langdetect-1.0.9.ebuild24
-rw-r--r--dev-python/langdetect/metadata.xml9
-rw-r--r--dev-python/latexify-py/Manifest1
-rw-r--r--dev-python/latexify-py/latexify-py-0.4.3.1.ebuild36
-rw-r--r--dev-python/latexify-py/metadata.xml12
-rw-r--r--dev-python/ldappool/Manifest1
-rw-r--r--dev-python/ldappool/ldappool-2.4.1.ebuild26
-rw-r--r--dev-python/ldappool/metadata.xml13
-rw-r--r--dev-python/libusb1/Manifest2
-rw-r--r--dev-python/libusb1/libusb1-1.9.2.ebuild21
-rw-r--r--dev-python/libusb1/libusb1-2.0.1-r1.ebuild23
-rw-r--r--dev-python/libusb1/metadata.xml3
-rw-r--r--dev-python/lru-dict/Manifest1
-rw-r--r--dev-python/lru-dict/lru-dict-1.3.0.ebuild27
-rw-r--r--dev-python/lru-dict/metadata.xml15
-rw-r--r--dev-python/manhole/Manifest2
-rw-r--r--dev-python/manhole/files/importlib.patch11
-rw-r--r--dev-python/manhole/manhole-1.8.0-r2.ebuild73
-rw-r--r--dev-python/manhole/manhole-1.8.0.ebuild49
-rw-r--r--dev-python/manhole/metadata.xml30
-rw-r--r--dev-python/markdown-include/Manifest1
-rw-r--r--dev-python/markdown-include/markdown-include-0.6.0.ebuild18
-rw-r--r--dev-python/markdown-include/metadata.xml16
-rw-r--r--dev-python/markdownify/Manifest1
-rw-r--r--dev-python/markdownify/markdownify-0.11.6.ebuild31
-rw-r--r--dev-python/markdownify/metadata.xml12
-rw-r--r--dev-python/marshmallow_enum/Manifest1
-rw-r--r--dev-python/marshmallow_enum/marshmallow_enum-1.5.1.ebuild28
-rw-r--r--dev-python/marshmallow_enum/metadata.xml8
-rw-r--r--dev-python/mastodon-py/Manifest1
-rw-r--r--dev-python/mastodon-py/mastodon-py-1.8.1.ebuild59
-rw-r--r--dev-python/mastodon-py/metadata.xml9
-rw-r--r--dev-python/material-color-utilities/Manifest1
-rw-r--r--dev-python/material-color-utilities/material-color-utilities-0.1.5.ebuild37
-rw-r--r--dev-python/material-color-utilities/material-color-utilities-9999.ebuild35
-rw-r--r--dev-python/material-color-utilities/metadata.xml17
-rw-r--r--dev-python/mautrix/Manifest1
-rw-r--r--dev-python/mautrix/mautrix-0.20.4-r1.ebuild69
-rw-r--r--dev-python/mautrix/mautrix-0.20.4-r2.ebuild65
-rw-r--r--dev-python/mautrix/metadata.xml19
-rw-r--r--dev-python/md-environ/Manifest1
-rw-r--r--dev-python/md-environ/md-environ-0.1.0.ebuild24
-rw-r--r--dev-python/md-environ/metadata.xml15
-rw-r--r--dev-python/microversion-parse/Manifest1
-rw-r--r--dev-python/microversion-parse/metadata.xml10
-rw-r--r--dev-python/microversion-parse/microversion-parse-1.0.1.ebuild22
-rw-r--r--dev-python/mitype/Manifest1
-rw-r--r--dev-python/mitype/metadata.xml12
-rw-r--r--dev-python/mitype/mitype-0.2.5.ebuild27
-rw-r--r--dev-python/mkdocs-blog-plugin/metadata.xml12
-rw-r--r--dev-python/mkdocs-blog-plugin/mkdocs-blog-plugin-9999.ebuild21
-rw-r--r--dev-python/mkdocs-bootstrap-tables-plugin/Manifest1
-rw-r--r--dev-python/mkdocs-bootstrap-tables-plugin/metadata.xml11
-rw-r--r--dev-python/mkdocs-bootstrap-tables-plugin/mkdocs-bootstrap-tables-plugin-0.1.1.ebuild19
-rw-r--r--dev-python/mkdocs-exclude/metadata.xml3
-rw-r--r--dev-python/mkdocs-exclude/mkdocs-exclude-1.0.2-r1.ebuild22
-rw-r--r--dev-python/mkdocs-exclude/mkdocs-exclude-1.0.2.ebuild20
-rw-r--r--dev-python/mkdocs-git-committers-plugin/Manifest1
-rw-r--r--dev-python/mkdocs-git-committers-plugin/metadata.xml11
-rw-r--r--dev-python/mkdocs-git-committers-plugin/mkdocs-git-committers-plugin-0.2.3.ebuild26
-rw-r--r--dev-python/mkdocs-rss-plugin/Manifest1
-rw-r--r--dev-python/mkdocs-rss-plugin/metadata.xml13
-rw-r--r--dev-python/mkdocs-rss-plugin/mkdocs-rss-plugin-1.12.1.ebuild76
-rw-r--r--dev-python/mnemonic/Manifest1
-rw-r--r--dev-python/mnemonic/metadata.xml11
-rw-r--r--dev-python/mnemonic/mnemonic-0.19.ebuild25
-rw-r--r--dev-python/mobi/Manifest1
-rw-r--r--dev-python/mobi/metadata.xml12
-rw-r--r--dev-python/mobi/mobi-0.3.3.ebuild23
-rw-r--r--dev-python/moderngl-window/Manifest1
-rw-r--r--dev-python/moderngl-window/metadata.xml13
-rw-r--r--dev-python/moderngl-window/moderngl-window-2.4.6.ebuild55
-rw-r--r--dev-python/moderngl/Manifest1
-rw-r--r--dev-python/moderngl/metadata.xml14
-rw-r--r--dev-python/moderngl/moderngl-5.10.0.ebuild48
-rw-r--r--dev-python/moreorless/Manifest1
-rw-r--r--dev-python/moreorless/metadata.xml9
-rw-r--r--dev-python/moreorless/moreorless-0.4.0.ebuild30
-rw-r--r--dev-python/msrest/Manifest1
-rw-r--r--dev-python/msrest/metadata.xml11
-rw-r--r--dev-python/msrest/msrest-0.7.1.ebuild43
-rw-r--r--dev-python/multipart/Manifest1
-rw-r--r--dev-python/multipart/files/multipart-urlencoded-test.patch35
-rw-r--r--dev-python/multipart/metadata.xml20
-rw-r--r--dev-python/multipart/multipart-0.2.4.ebuild28
-rw-r--r--dev-python/neutron-lib/Manifest1
-rw-r--r--dev-python/neutron-lib/metadata.xml14
-rw-r--r--dev-python/neutron-lib/neutron-lib-2.6.1.ebuild51
-rw-r--r--dev-python/nkdfu/Manifest1
-rw-r--r--dev-python/nkdfu/metadata.xml9
-rw-r--r--dev-python/nkdfu/nkdfu-0.2.ebuild23
-rw-r--r--dev-python/noiseprotocol/Manifest1
-rw-r--r--dev-python/noiseprotocol/metadata.xml11
-rw-r--r--dev-python/noiseprotocol/noiseprotocol-0.3.1.ebuild29
-rw-r--r--dev-python/notion-client/Manifest1
-rw-r--r--dev-python/notion-client/metadata.xml9
-rw-r--r--dev-python/notion-client/notion-client-2.0.0.ebuild40
-rw-r--r--dev-python/notofonttools/Manifest1
-rw-r--r--dev-python/notofonttools/metadata.xml9
-rw-r--r--dev-python/notofonttools/notofonttools-0.2.17-r1.ebuild29
-rw-r--r--dev-python/oauth2/Manifest1
-rw-r--r--dev-python/oauth2/metadata.xml25
-rw-r--r--dev-python/oauth2/oauth2-1.9.ebuild31
-rw-r--r--dev-python/opentype-sanitizer/Manifest1
-rw-r--r--dev-python/opentype-sanitizer/metadata.xml9
-rw-r--r--dev-python/opentype-sanitizer/opentype-sanitizer-9.1.0.ebuild32
-rw-r--r--dev-python/opentypespec/Manifest1
-rw-r--r--dev-python/opentypespec/metadata.xml13
-rw-r--r--dev-python/opentypespec/opentypespec-1.8.4.ebuild21
-rw-r--r--dev-python/orderedmultidict/Manifest1
-rw-r--r--dev-python/orderedmultidict/metadata.xml23
-rw-r--r--dev-python/orderedmultidict/orderedmultidict-1.0.1.ebuild24
-rw-r--r--dev-python/orjson-bin/Manifest2
-rw-r--r--dev-python/orjson-bin/metadata.xml12
-rw-r--r--dev-python/orjson-bin/orjson-bin-3.6.0.ebuild57
-rw-r--r--dev-python/orjson/Manifest33
-rw-r--r--dev-python/orjson/metadata.xml13
-rw-r--r--dev-python/orjson/orjson-3.5.3.ebuild110
-rw-r--r--dev-python/os-api-ref/Manifest1
-rw-r--r--dev-python/os-api-ref/metadata.xml16
-rw-r--r--dev-python/os-api-ref/os-api-ref-2.2.0.ebuild39
-rw-r--r--dev-python/os-brick/Manifest1
-rw-r--r--dev-python/os-brick/metadata.xml14
-rw-r--r--dev-python/os-brick/os-brick-4.0.1-r1.ebuild39
-rw-r--r--dev-python/os-ken/Manifest1
-rw-r--r--dev-python/os-ken/metadata.xml14
-rw-r--r--dev-python/os-ken/os-ken-1.2.0.ebuild34
-rw-r--r--dev-python/os-resource-classes/Manifest1
-rw-r--r--dev-python/os-resource-classes/metadata.xml14
-rw-r--r--dev-python/os-resource-classes/os-resource-classes-1.0.0.ebuild21
-rw-r--r--dev-python/os-traits/Manifest1
-rw-r--r--dev-python/os-traits/metadata.xml14
-rw-r--r--dev-python/os-traits/os-traits-2.4.0.ebuild18
-rw-r--r--dev-python/os-vif/Manifest1
-rw-r--r--dev-python/os-vif/metadata.xml14
-rw-r--r--dev-python/os-vif/os-vif-2.2.0.ebuild37
-rw-r--r--dev-python/os-win/Manifest1
-rw-r--r--dev-python/os-win/metadata.xml14
-rw-r--r--dev-python/os-win/os-win-5.1.0.ebuild34
-rw-r--r--dev-python/os-xenapi/Manifest1
-rw-r--r--dev-python/os-xenapi/metadata.xml14
-rw-r--r--dev-python/os-xenapi/os-xenapi-0.3.4-r1.ebuild30
-rw-r--r--dev-python/oscrypto/Manifest2
-rw-r--r--dev-python/oscrypto/files/openssl-3.0.10-fix.patch38
-rw-r--r--dev-python/oscrypto/files/py3.12.patch902
-rw-r--r--dev-python/oscrypto/metadata.xml16
-rw-r--r--dev-python/oscrypto/oscrypto-1.2.1.ebuild34
-rw-r--r--dev-python/oscrypto/oscrypto-1.3.0-r2.ebuild47
-rw-r--r--dev-python/oslo-cache/Manifest1
-rw-r--r--dev-python/oslo-cache/metadata.xml14
-rw-r--r--dev-python/oslo-cache/oslo-cache-2.6.1.ebuild34
-rw-r--r--dev-python/oslo-concurrency/Manifest1
-rw-r--r--dev-python/oslo-concurrency/metadata.xml16
-rw-r--r--dev-python/oslo-concurrency/oslo-concurrency-4.4.0.ebuild30
-rw-r--r--dev-python/oslo-db/Manifest1
-rw-r--r--dev-python/oslo-db/metadata.xml14
-rw-r--r--dev-python/oslo-db/oslo-db-8.4.0.ebuild52
-rw-r--r--dev-python/oslo-messaging/Manifest1
-rw-r--r--dev-python/oslo-messaging/metadata.xml13
-rw-r--r--dev-python/oslo-messaging/oslo-messaging-12.5.1.ebuild42
-rw-r--r--dev-python/oslo-middleware/Manifest1
-rw-r--r--dev-python/oslo-middleware/metadata.xml16
-rw-r--r--dev-python/oslo-middleware/oslo-middleware-4.1.1.ebuild37
-rw-r--r--dev-python/oslo-policy/Manifest1
-rw-r--r--dev-python/oslo-policy/metadata.xml13
-rw-r--r--dev-python/oslo-policy/oslo-policy-3.5.0.ebuild36
-rw-r--r--dev-python/oslo-privsep/Manifest1
-rw-r--r--dev-python/oslo-privsep/metadata.xml13
-rw-r--r--dev-python/oslo-privsep/oslo-privsep-2.4.0.ebuild38
-rw-r--r--dev-python/oslo-reports/Manifest1
-rw-r--r--dev-python/oslo-reports/metadata.xml13
-rw-r--r--dev-python/oslo-reports/oslo-reports-2.2.0.ebuild33
-rw-r--r--dev-python/oslo-rootwrap/Manifest1
-rw-r--r--dev-python/oslo-rootwrap/metadata.xml13
-rw-r--r--dev-python/oslo-rootwrap/oslo-rootwrap-6.2.0.ebuild22
-rw-r--r--dev-python/oslo-service/Manifest1
-rw-r--r--dev-python/oslo-service/metadata.xml13
-rw-r--r--dev-python/oslo-service/oslo-service-2.4.0.ebuild41
-rw-r--r--dev-python/oslo-upgradecheck/Manifest1
-rw-r--r--dev-python/oslo-upgradecheck/metadata.xml14
-rw-r--r--dev-python/oslo-upgradecheck/oslo-upgradecheck-1.1.1.ebuild32
-rw-r--r--dev-python/oslo-versionedobjects/Manifest1
-rw-r--r--dev-python/oslo-versionedobjects/metadata.xml13
-rw-r--r--dev-python/oslo-versionedobjects/oslo-versionedobjects-2.3.0.ebuild36
-rw-r--r--dev-python/oslo-vmware/Manifest1
-rw-r--r--dev-python/oslo-vmware/metadata.xml16
-rw-r--r--dev-python/oslo-vmware/oslo-vmware-3.7.0.ebuild42
-rw-r--r--dev-python/osprofiler/Manifest1
-rw-r--r--dev-python/osprofiler/metadata.xml14
-rw-r--r--dev-python/osprofiler/osprofiler-3.4.0.ebuild31
-rw-r--r--dev-python/ots-python/Manifest1
-rw-r--r--dev-python/ots-python/files/ots-python-8.1.4-ots-sanitize.patch21
-rw-r--r--dev-python/ots-python/metadata.xml14
-rw-r--r--dev-python/ots-python/ots-python-8.1.4.ebuild27
-rw-r--r--dev-python/ovsdbapp/Manifest1
-rw-r--r--dev-python/ovsdbapp/ovsdbapp-1.5.0.ebuild28
-rw-r--r--dev-python/parsel/Manifest1
-rw-r--r--dev-python/parsel/files/parsel-1.6.0-pytest-runner.patch30
-rw-r--r--dev-python/parsel/metadata.xml12
-rw-r--r--dev-python/parsel/parsel-1.8.1.ebuild48
-rw-r--r--dev-python/pdfminer-six/Manifest1
-rw-r--r--dev-python/pdfminer-six/pdfminer-six-20201018.ebuild29
-rw-r--r--dev-python/pem/Manifest1
-rw-r--r--dev-python/pem/metadata.xml14
-rw-r--r--dev-python/pem/pem-23.1.0.ebuild28
-rw-r--r--dev-python/pep517/Manifest1
-rw-r--r--dev-python/pep517/metadata.xml18
-rw-r--r--dev-python/pep517/pep517-0.9.1.ebuild48
-rw-r--r--dev-python/persist-queue/Manifest1
-rw-r--r--dev-python/persist-queue/metadata.xml12
-rw-r--r--dev-python/persist-queue/persist-queue-0.8.1.ebuild27
-rw-r--r--dev-python/pg8000/Manifest1
-rw-r--r--dev-python/pg8000/metadata.xml10
-rw-r--r--dev-python/pg8000/pg8000-1.29.4.ebuild89
-rw-r--r--dev-python/phx-class-registry/Manifest3
-rw-r--r--dev-python/phx-class-registry/metadata.xml5
-rw-r--r--dev-python/phx-class-registry/phx-class-registry-4.0.6-r1.ebuild (renamed from dev-python/phx-class-registry/phx-class-registry-3.0.5.ebuild)13
-rw-r--r--dev-python/phx-class-registry/phx-class-registry-4.1.0.ebuild23
-rw-r--r--dev-python/pip-api/Manifest1
-rw-r--r--dev-python/pip-api/metadata.xml13
-rw-r--r--dev-python/pip-api/pip-api-0.0.20.ebuild31
-rw-r--r--dev-python/playsound/Manifest1
-rw-r--r--dev-python/playsound/metadata.xml12
-rw-r--r--dev-python/playsound/playsound-1.3.0.ebuild18
-rw-r--r--dev-python/plexapi/Manifest1
-rw-r--r--dev-python/plexapi/metadata.xml12
-rw-r--r--dev-python/plexapi/plexapi-4.15.11.ebuild37
-rw-r--r--dev-python/plotext/Manifest1
-rw-r--r--dev-python/plotext/metadata.xml (renamed from dev-python/clufter/metadata.xml)7
-rw-r--r--dev-python/plotext/plotext-5.3.0.ebuild18
-rw-r--r--dev-python/plum/Manifest1
-rw-r--r--dev-python/plum/metadata.xml12
-rw-r--r--dev-python/plum/plum-0.8.7.ebuild16
-rw-r--r--dev-python/podman-compose/Manifest1
-rw-r--r--dev-python/podman-compose/metadata.xml12
-rw-r--r--dev-python/podman-compose/podman-compose-1.0.6.ebuild33
-rw-r--r--dev-python/portio/Manifest1
-rw-r--r--dev-python/portio/metadata.xml19
-rw-r--r--dev-python/portio/portio-0.5.ebuild28
-rw-r--r--dev-python/portion/Manifest2
-rw-r--r--dev-python/portion/metadata.xml19
-rw-r--r--dev-python/portion/portion-2.4.1.ebuild29
-rw-r--r--dev-python/portion/portion-2.4.2.ebuild31
-rw-r--r--dev-python/pproxy/Manifest1
-rw-r--r--dev-python/pproxy/metadata.xml36
-rw-r--r--dev-python/pproxy/pproxy-2.7.8.ebuild27
-rw-r--r--dev-python/praw/Manifest2
-rw-r--r--dev-python/praw/metadata.xml15
-rw-r--r--dev-python/praw/praw-7.6.1.ebuild51
-rw-r--r--dev-python/praw/praw-7.7.0.ebuild51
-rw-r--r--dev-python/prawcore/Manifest1
-rw-r--r--dev-python/prawcore/metadata.xml14
-rw-r--r--dev-python/prawcore/prawcore-2.3.0.ebuild35
-rw-r--r--dev-python/promise/Manifest1
-rw-r--r--dev-python/promise/metadata.xml14
-rw-r--r--dev-python/promise/promise-2.3.0.ebuild23
-rw-r--r--dev-python/proselint/Manifest1
-rw-r--r--dev-python/proselint/proselint-0.13.0.ebuild26
-rw-r--r--dev-python/protego/Manifest1
-rw-r--r--dev-python/protego/metadata.xml12
-rw-r--r--dev-python/protego/protego-0.3.0.ebuild24
-rw-r--r--dev-python/proxy_tools/Manifest1
-rw-r--r--dev-python/proxy_tools/metadata.xml12
-rw-r--r--dev-python/proxy_tools/proxy_tools-0.1.0_p1.ebuild26
-rw-r--r--dev-python/psycopg2cffi/Manifest1
-rw-r--r--dev-python/psycopg2cffi/files/psycopg2cffi-2.9.0-include-tests.patch10
-rw-r--r--dev-python/psycopg2cffi/metadata.xml10
-rw-r--r--dev-python/psycopg2cffi/psycopg2cffi-2.9.0-r1.ebuild57
-rw-r--r--dev-python/pure-protobuf/Manifest3
-rw-r--r--dev-python/pure-protobuf/files/pure-protobuf-3.0.1-static-version.patch12
-rw-r--r--dev-python/pure-protobuf/files/pure-protobuf-do-not-install-tests.patch13
-rw-r--r--dev-python/pure-protobuf/metadata.xml24
-rw-r--r--dev-python/pure-protobuf/pure-protobuf-2.0.0-r1.ebuild25
-rw-r--r--dev-python/pure-protobuf/pure-protobuf-2.0.1.ebuild23
-rw-r--r--dev-python/pure-protobuf/pure-protobuf-3.0.1.ebuild22
-rw-r--r--dev-python/py-nanoid/metadata.xml12
-rw-r--r--dev-python/py-nanoid/py-nanoid-9999.ebuild18
-rw-r--r--dev-python/py3nvml/Manifest1
-rw-r--r--dev-python/py3nvml/py3nvml-0.2.6.ebuild18
-rw-r--r--dev-python/pyagentx/Manifest1
-rw-r--r--dev-python/pyagentx/files/python3.patch255
-rw-r--r--dev-python/pyagentx/files/updater.patch27
-rw-r--r--dev-python/pyagentx/metadata.xml16
-rw-r--r--dev-python/pyagentx/pyagentx-0.4-r1.ebuild20
-rw-r--r--dev-python/pybeam/Manifest1
-rw-r--r--dev-python/pybeam/metadata.xml12
-rw-r--r--dev-python/pybeam/pybeam-0.7.ebuild23
-rw-r--r--dev-python/pybrowserstack-screenshots/Manifest1
-rw-r--r--dev-python/pybrowserstack-screenshots/metadata.xml14
-rw-r--r--dev-python/pybrowserstack-screenshots/pybrowserstack-screenshots-0.1.ebuild22
-rw-r--r--dev-python/pycadf/Manifest1
-rw-r--r--dev-python/pycadf/metadata.xml8
-rw-r--r--dev-python/pycadf/pycadf-3.1.1.ebuild27
-rw-r--r--dev-python/pyclip/Manifest1
-rw-r--r--dev-python/pyclip/metadata.xml12
-rw-r--r--dev-python/pyclip/pyclip-0.7.0-r1.ebuild53
-rw-r--r--dev-python/pyclip/pyclip-9999.ebuild53
-rw-r--r--dev-python/pycpio/Manifest2
-rw-r--r--dev-python/pycpio/metadata.xml11
-rw-r--r--dev-python/pycpio/pycpio-1.0.0.ebuild18
-rw-r--r--dev-python/pycpio/pycpio-1.1.2.ebuild18
-rw-r--r--dev-python/pydispatcher/Manifest1
-rw-r--r--dev-python/pydispatcher/metadata.xml16
-rw-r--r--dev-python/pydispatcher/pydispatcher-2.0.7.ebuild19
-rw-r--r--dev-python/pydub/metadata.xml5
-rw-r--r--dev-python/pydub/pydub-0.25.1.ebuild7
-rw-r--r--dev-python/pyfiglet/Manifest2
-rw-r--r--dev-python/pyfiglet/metadata.xml7
-rw-r--r--dev-python/pyfiglet/pyfiglet-0.8_p1.ebuild33
-rw-r--r--dev-python/pyfiglet/pyfiglet-9999.ebuild28
-rw-r--r--dev-python/pygaljs/metadata.xml8
-rw-r--r--dev-python/pygaljs/pygaljs-1.0.2-r1.ebuild10
-rw-r--r--dev-python/pygments-promql/Manifest1
-rw-r--r--dev-python/pygments-promql/metadata.xml12
-rw-r--r--dev-python/pygments-promql/pygments-promql-0.0.9-r1.ebuild22
-rw-r--r--dev-python/pygsl/Manifest2
-rw-r--r--dev-python/pygsl/metadata.xml12
-rw-r--r--dev-python/pygsl/pygsl-2.3.0.ebuild38
-rw-r--r--dev-python/pygsl/pygsl-2.3.4.ebuild36
-rw-r--r--dev-python/pyinquirer/Manifest1
-rw-r--r--dev-python/pyinquirer/metadata.xml22
-rw-r--r--dev-python/pyinquirer/pyinquirer-1.0.3_p20200708.ebuild53
-rw-r--r--dev-python/pyinquirer/pyinquirer-9999.ebuild51
-rw-r--r--dev-python/pyinstaller/Manifest1
-rw-r--r--dev-python/pyinstaller/metadata.xml8
-rw-r--r--dev-python/pyinstaller/pyinstaller-4.2.ebuild19
-rw-r--r--dev-python/pykeepass/Manifest2
-rw-r--r--dev-python/pykeepass/files/pykeepass-4.0.0-fix-tests-install.patch33
-rw-r--r--dev-python/pykeepass/metadata.xml10
-rw-r--r--dev-python/pykeepass/pykeepass-4.0.7.ebuild (renamed from dev-python/pykeepass/pykeepass-4.0.0.ebuild)21
-rw-r--r--dev-python/pymeeus/Manifest3
-rw-r--r--dev-python/pymeeus/metadata.xml15
-rw-r--r--dev-python/pymeeus/pymeeus-0.3.13.ebuild24
-rw-r--r--dev-python/pymeeus/pymeeus-0.4.2.ebuild24
-rw-r--r--dev-python/pymeeus/pymeeus-0.5.12.ebuild25
-rw-r--r--dev-python/pymemcache/Manifest1
-rw-r--r--dev-python/pymemcache/files/pymemcache-3.5.1-no-coverage.patch10
-rw-r--r--dev-python/pymemcache/metadata.xml21
-rw-r--r--dev-python/pymemcache/pymemcache-4.0.0.ebuild49
-rw-r--r--dev-python/pymorphy2-dicts-ru/metadata.xml7
-rw-r--r--dev-python/pymorphy2-dicts-ru/pymorphy2-dicts-ru-2.4.417127.4579844-r1.ebuild (renamed from dev-python/pymorphy2-dicts-ru/pymorphy2-dicts-ru-2.4.417127.4579844.ebuild)10
-rw-r--r--dev-python/pymorphy2-dicts-uk/Manifest1
-rw-r--r--dev-python/pymorphy2-dicts-uk/metadata.xml12
-rw-r--r--dev-python/pymorphy2-dicts-uk/pymorphy2-dicts-uk-2.4.1.1.1460299261.ebuild16
-rw-r--r--dev-python/pymorphy2-dicts/Manifest1
-rw-r--r--dev-python/pymorphy2-dicts/metadata.xml12
-rw-r--r--dev-python/pymorphy2-dicts/pymorphy2-dicts-2.4.393442.3710985-r1.ebuild16
-rw-r--r--dev-python/pymorphy2/metadata.xml4
-rw-r--r--dev-python/pymorphy2/pymorphy2-0.9.1.ebuild5
-rw-r--r--dev-python/pymorphy3-dicts-ru/Manifest1
-rw-r--r--dev-python/pymorphy3-dicts-ru/metadata.xml11
-rw-r--r--dev-python/pymorphy3-dicts-ru/pymorphy3-dicts-ru-2.4.417150.4580142.ebuild16
-rw-r--r--dev-python/pymorphy3-dicts-uk/Manifest1
-rw-r--r--dev-python/pymorphy3-dicts-uk/metadata.xml11
-rw-r--r--dev-python/pymorphy3-dicts-uk/pymorphy3-dicts-uk-2.4.1.1.1663094765.ebuild16
-rw-r--r--dev-python/pymorphy3/Manifest1
-rw-r--r--dev-python/pymorphy3/metadata.xml12
-rw-r--r--dev-python/pymorphy3/pymorphy3-1.2.0.ebuild21
-rw-r--r--dev-python/pynput/Manifest1
-rw-r--r--dev-python/pynput/metadata.xml12
-rw-r--r--dev-python/pynput/pynput-1.7.6.ebuild20
-rw-r--r--dev-python/pyodbc/Manifest1
-rw-r--r--dev-python/pyodbc/metadata.xml10
-rw-r--r--dev-python/pyodbc/pyodbc-5.1.0.ebuild64
-rw-r--r--dev-python/pypandoc/Manifest2
-rw-r--r--dev-python/pypandoc/metadata.xml21
-rw-r--r--dev-python/pypandoc/pypandoc-1.13.ebuild41
-rw-r--r--dev-python/pypandoc/pypandoc-1.6.3.ebuild40
-rw-r--r--dev-python/pyperscan/Manifest80
-rw-r--r--dev-python/pyperscan/metadata.xml (renamed from dev-python/automaton/metadata.xml)9
-rw-r--r--dev-python/pyperscan/pyperscan-0.3.0.ebuild118
-rw-r--r--dev-python/pypowervm/Manifest1
-rw-r--r--dev-python/pypowervm/metadata.xml14
-rw-r--r--dev-python/pypowervm/pypowervm-1.1.24.ebuild31
-rw-r--r--dev-python/pyqtdarktheme/Manifest1
-rw-r--r--dev-python/pyqtdarktheme/metadata.xml13
-rw-r--r--dev-python/pyqtdarktheme/pyqtdarktheme-2.1.0.ebuild18
-rw-r--r--dev-python/pyrr/Manifest1
-rw-r--r--dev-python/pyrr/metadata.xml12
-rw-r--r--dev-python/pyrr/pyrr-0.10.3.ebuild56
-rw-r--r--dev-python/pysaml2/Manifest1
-rw-r--r--dev-python/pysaml2/metadata.xml17
-rw-r--r--dev-python/pysaml2/pysaml2-6.1.0.ebuild26
-rw-r--r--dev-python/pysftp/Manifest1
-rw-r--r--dev-python/pysftp/metadata.xml8
-rw-r--r--dev-python/pysftp/pysftp-0.2.9.ebuild15
-rw-r--r--dev-python/pysnooper/Manifest2
-rw-r--r--dev-python/pysnooper/metadata.xml13
-rw-r--r--dev-python/pysnooper/pysnooper-1.1.1.ebuild22
-rw-r--r--dev-python/pysnooper/pysnooper-1.2.0.ebuild22
-rw-r--r--dev-python/pystardict/Manifest2
-rw-r--r--dev-python/pystardict/metadata.xml4
-rw-r--r--dev-python/pystardict/pystardict-0.8-r1.ebuild26
-rw-r--r--dev-python/pystardict/pystardict-0.8.ebuild21
-rw-r--r--dev-python/pystray/Manifest1
-rw-r--r--dev-python/pystray/metadata.xml8
-rw-r--r--dev-python/pystray/pystray-0.17.3.ebuild23
-rw-r--r--dev-python/pysubs2/Manifest4
-rw-r--r--dev-python/pysubs2/metadata.xml5
-rw-r--r--dev-python/pysubs2/pysubs2-1.4.4.ebuild (renamed from dev-python/pysubs2/pysubs2-1.2.0.ebuild)7
-rw-r--r--dev-python/pysubs2/pysubs2-1.5.0.ebuild19
-rw-r--r--dev-python/pysubs2/pysubs2-1.6.1.ebuild19
-rw-r--r--dev-python/pytest-benchmark/Manifest2
-rw-r--r--dev-python/pytest-benchmark/metadata.xml30
-rw-r--r--dev-python/pytest-benchmark/pytest-benchmark-3.4.1.ebuild51
-rw-r--r--dev-python/pytest-benchmark/pytest-benchmark-4.0.0.ebuild55
-rw-r--r--dev-python/pytest-cases/Manifest1
-rw-r--r--dev-python/pytest-cases/metadata.xml14
-rw-r--r--dev-python/pytest-cases/pytest-cases-3.8.2.ebuild49
-rw-r--r--dev-python/pytest-celery/Manifest2
-rw-r--r--dev-python/pytest-celery/metadata.xml9
-rw-r--r--dev-python/pytest-celery/pytest-celery-0.1.0.ebuild (renamed from dev-python/pytest-celery/pytest-celery-0.0.0.ebuild)17
-rw-r--r--dev-python/pytest-click/Manifest1
-rw-r--r--dev-python/pytest-click/metadata.xml13
-rw-r--r--dev-python/pytest-click/pytest-click-1.1.0.ebuild27
-rw-r--r--dev-python/pytest-cython/Manifest1
-rw-r--r--dev-python/pytest-cython/metadata.xml20
-rw-r--r--dev-python/pytest-cython/pytest-cython-0.1.1.ebuild33
-rw-r--r--dev-python/pytest-flask/Manifest1
-rw-r--r--dev-python/pytest-flask/files/pytest-flask-fix-flask-compat.patch74
-rw-r--r--dev-python/pytest-flask/metadata.xml11
-rw-r--r--dev-python/pytest-flask/pytest-flask-1.3.0.ebuild30
-rw-r--r--dev-python/pytest-harvest/Manifest1
-rw-r--r--dev-python/pytest-harvest/files/pytest-harvest-1.10.4-strict-mkdocs.patch20
-rw-r--r--dev-python/pytest-harvest/metadata.xml14
-rw-r--r--dev-python/pytest-harvest/pytest-harvest-1.10.4.ebuild59
-rw-r--r--dev-python/pytest-instafail/Manifest1
-rw-r--r--dev-python/pytest-instafail/metadata.xml13
-rw-r--r--dev-python/pytest-instafail/pytest-instafail-0.4.2.ebuild27
-rw-r--r--dev-python/pytest-isort/Manifest1
-rw-r--r--dev-python/pytest-isort/metadata.xml10
-rw-r--r--dev-python/pytest-isort/pytest-isort-1.3.0.ebuild23
-rw-r--r--dev-python/pytest-mypy-plugins/Manifest1
-rw-r--r--dev-python/pytest-mypy-plugins/metadata.xml15
-rw-r--r--dev-python/pytest-mypy-plugins/pytest-mypy-plugins-3.1.0.ebuild52
-rw-r--r--dev-python/pytest-pythonpath/Manifest1
-rw-r--r--dev-python/pytest-pythonpath/metadata.xml9
-rw-r--r--dev-python/pytest-pythonpath/pytest-pythonpath-0.7.3.ebuild25
-rw-r--r--dev-python/pytest-randomly/Manifest1
-rw-r--r--dev-python/pytest-randomly/metadata.xml41
-rw-r--r--dev-python/pytest-randomly/pytest-randomly-3.8.0.ebuild43
-rw-r--r--dev-python/pytest-relaxed/Manifest1
-rw-r--r--dev-python/pytest-relaxed/metadata.xml12
-rw-r--r--dev-python/pytest-relaxed/pytest-relaxed-2.0.2.ebuild24
-rw-r--r--dev-python/pytest-sanic/Manifest1
-rw-r--r--dev-python/pytest-sanic/metadata.xml19
-rw-r--r--dev-python/pytest-sanic/pytest-sanic-1.7.1.ebuild53
-rw-r--r--dev-python/pytest-steps/Manifest1
-rw-r--r--dev-python/pytest-steps/files/pytest-steps-1.8.0-strict-mkdocs.patch20
-rw-r--r--dev-python/pytest-steps/metadata.xml14
-rw-r--r--dev-python/pytest-steps/pytest-steps-1.8.0.ebuild60
-rw-r--r--dev-python/pytest-syrupy/Manifest1
-rw-r--r--dev-python/pytest-syrupy/metadata.xml12
-rw-r--r--dev-python/pytest-syrupy/pytest-syrupy-4.0.1.ebuild40
-rw-r--r--dev-python/pytest-vcr/Manifest1
-rw-r--r--dev-python/pytest-vcr/metadata.xml13
-rw-r--r--dev-python/pytest-vcr/pytest-vcr-1.0.2.ebuild42
-rw-r--r--dev-python/python-barbicanclient/Manifest1
-rw-r--r--dev-python/python-barbicanclient/metadata.xml14
-rw-r--r--dev-python/python-barbicanclient/python-barbicanclient-5.0.1.ebuild28
-rw-r--r--dev-python/python-blazarclient/Manifest1
-rw-r--r--dev-python/python-blazarclient/metadata.xml13
-rw-r--r--dev-python/python-blazarclient/python-blazarclient-3.1.1.ebuild35
-rw-r--r--dev-python/python-designateclient/Manifest1
-rw-r--r--dev-python/python-designateclient/metadata.xml17
-rw-r--r--dev-python/python-designateclient/python-designateclient-4.1.0.ebuild36
-rw-r--r--dev-python/python-fire/Manifest1
-rw-r--r--dev-python/python-fire/metadata.xml9
-rw-r--r--dev-python/python-fire/python-fire-0.6.0.ebuild31
-rw-r--r--dev-python/python-heatclient/Manifest1
-rw-r--r--dev-python/python-heatclient/metadata.xml13
-rw-r--r--dev-python/python-heatclient/python-heatclient-2.2.1.ebuild39
-rw-r--r--dev-python/python-http-client/Manifest1
-rw-r--r--dev-python/python-http-client/metadata.xml12
-rw-r--r--dev-python/python-http-client/python-http-client-3.3.5.ebuild32
-rw-r--r--dev-python/python-lsp-isort/Manifest1
-rw-r--r--dev-python/python-lsp-isort/metadata.xml13
-rw-r--r--dev-python/python-lsp-isort/python-lsp-isort-0.1.ebuild33
-rw-r--r--dev-python/python-lsp-mypy/Manifest1
-rw-r--r--dev-python/python-lsp-mypy/metadata.xml13
-rw-r--r--dev-python/python-lsp-mypy/python-lsp-mypy-0.6.8.ebuild34
-rw-r--r--dev-python/python-magnumclient/Manifest1
-rw-r--r--dev-python/python-magnumclient/metadata.xml14
-rw-r--r--dev-python/python-magnumclient/python-magnumclient-3.2.1.ebuild39
-rw-r--r--dev-python/python-manilaclient/Manifest1
-rw-r--r--dev-python/python-manilaclient/metadata.xml14
-rw-r--r--dev-python/python-manilaclient/python-manilaclient-2.3.0.ebuild36
-rw-r--r--dev-python/python-mistralclient/Manifest1
-rw-r--r--dev-python/python-mistralclient/metadata.xml14
-rw-r--r--dev-python/python-mistralclient/python-mistralclient-4.1.1.ebuild34
-rw-r--r--dev-python/python-monascaclient/Manifest1
-rw-r--r--dev-python/python-monascaclient/metadata.xml14
-rw-r--r--dev-python/python-monascaclient/python-monascaclient-2.2.1.ebuild34
-rw-r--r--dev-python/python-mpv-jsonipc/Manifest2
-rw-r--r--dev-python/python-mpv-jsonipc/metadata.xml8
-rw-r--r--dev-python/python-mpv-jsonipc/python-mpv-jsonipc-1.1.12.ebuild16
-rw-r--r--dev-python/python-mpv-jsonipc/python-mpv-jsonipc-1.1.13.ebuild16
-rw-r--r--dev-python/python-multipart/Manifest1
-rw-r--r--dev-python/python-multipart/metadata.xml9
-rw-r--r--dev-python/python-multipart/python-multipart-0.0.5.ebuild29
-rw-r--r--dev-python/python-oauth2/Manifest3
-rw-r--r--dev-python/python-oauth2/metadata.xml (renamed from dev-python/pdfminer-six/metadata.xml)7
-rw-r--r--dev-python/python-oauth2/python-oauth2-1.1.1-r1.ebuild32
-rw-r--r--dev-python/python-octaviaclient/Manifest1
-rw-r--r--dev-python/python-octaviaclient/metadata.xml13
-rw-r--r--dev-python/python-octaviaclient/python-octaviaclient-2.2.0.ebuild34
-rw-r--r--dev-python/python-olm/Manifest1
-rw-r--r--dev-python/python-olm/metadata.xml14
-rw-r--r--dev-python/python-olm/python-olm-3.2.16.ebuild38
-rw-r--r--dev-python/python-pidfile/Manifest1
-rw-r--r--dev-python/python-pidfile/metadata.xml12
-rw-r--r--dev-python/python-pidfile/python-pidfile-3.0.0-r1.ebuild (renamed from dev-python/python-pidfile/python-pidfile-3.0.0.ebuild)10
-rw-r--r--dev-python/python-pidfile/python-pidfile-3.1.1.ebuild28
-rw-r--r--dev-python/python-pkcs11/Manifest1
-rw-r--r--dev-python/python-pkcs11/metadata.xml30
-rw-r--r--dev-python/python-pkcs11/python-pkcs11-0.7.0.ebuild41
-rw-r--r--dev-python/python-saharaclient/Manifest1
-rw-r--r--dev-python/python-saharaclient/metadata.xml14
-rw-r--r--dev-python/python-saharaclient/python-saharaclient-3.2.1.ebuild35
-rw-r--r--dev-python/python-senlinclient/Manifest1
-rw-r--r--dev-python/python-senlinclient/metadata.xml14
-rw-r--r--dev-python/python-senlinclient/python-senlinclient-2.1.1.ebuild31
-rw-r--r--dev-python/python-skywater-pdk/Manifest1
-rw-r--r--dev-python/python-skywater-pdk/metadata.xml8
-rw-r--r--dev-python/python-skywater-pdk/python-skywater-pdk-0.0.0_p20220424.ebuild29
-rw-r--r--dev-python/python-socketio/Manifest2
-rw-r--r--dev-python/python-socketio/metadata.xml16
-rw-r--r--dev-python/python-socketio/python-socketio-5.11.0.ebuild33
-rw-r--r--dev-python/python-socketio/python-socketio-5.11.1.ebuild33
-rw-r--r--dev-python/python-statemachine/Manifest1
-rw-r--r--dev-python/python-statemachine/metadata.xml12
-rw-r--r--dev-python/python-statemachine/python-statemachine-2.1.2.ebuild35
-rw-r--r--dev-python/python-telegram-bot/Manifest3
-rw-r--r--dev-python/python-telegram-bot/metadata.xml14
-rw-r--r--dev-python/python-telegram-bot/python-telegram-bot-13.1.ebuild68
-rw-r--r--dev-python/python-telegram-bot/python-telegram-bot-20.6-r1.ebuild150
-rw-r--r--dev-python/python-telegram-bot/python-telegram-bot-21.1.1.ebuild161
-rw-r--r--dev-python/python-telegram-bot/python-telegram-bot-9999.ebuild74
-rw-r--r--dev-python/python-troveclient/Manifest1
-rw-r--r--dev-python/python-troveclient/metadata.xml14
-rw-r--r--dev-python/python-troveclient/python-troveclient-5.1.1.ebuild35
-rw-r--r--dev-python/python-vitrageclient/Manifest1
-rw-r--r--dev-python/python-vitrageclient/metadata.xml13
-rw-r--r--dev-python/python-vitrageclient/python-vitrageclient-4.1.1.ebuild29
-rw-r--r--dev-python/python-zaqarclient/Manifest1
-rw-r--r--dev-python/python-zaqarclient/metadata.xml14
-rw-r--r--dev-python/python-zaqarclient/python-zaqarclient-2.0.1.ebuild35
-rw-r--r--dev-python/python-zunclient/Manifest1
-rw-r--r--dev-python/python-zunclient/metadata.xml13
-rw-r--r--dev-python/python-zunclient/python-zunclient-4.1.1.ebuild33
-rw-r--r--dev-python/pywebview/Manifest3
-rw-r--r--dev-python/pywebview/metadata.xml14
-rw-r--r--dev-python/pywebview/pywebview-3.4.ebuild22
-rw-r--r--dev-python/pywebview/pywebview-4.3.3.ebuild40
-rw-r--r--dev-python/pywebview/pywebview-4.4.1.ebuild40
-rw-r--r--dev-python/queuelib/Manifest1
-rw-r--r--dev-python/queuelib/metadata.xml11
-rw-r--r--dev-python/queuelib/queuelib-1.6.2.ebuild19
-rw-r--r--dev-python/readability-lxml/Manifest1
-rw-r--r--dev-python/readability-lxml/metadata.xml9
-rw-r--r--dev-python/readability-lxml/readability-lxml-0.8.1.ebuild52
-rw-r--r--dev-python/readmdict/Manifest1
-rw-r--r--dev-python/readmdict/metadata.xml12
-rw-r--r--dev-python/readmdict/readmdict-0.1.1-r1.ebuild22
-rw-r--r--dev-python/recordclass/Manifest1
-rw-r--r--dev-python/recordclass/metadata.xml7
-rw-r--r--dev-python/recordclass/recordclass-0.14.3.ebuild33
-rw-r--r--dev-python/rectangle-packer/Manifest1
-rw-r--r--dev-python/rectangle-packer/metadata.xml12
-rw-r--r--dev-python/rectangle-packer/rectangle-packer-2.0.2.ebuild21
-rw-r--r--dev-python/redbaron/Manifest2
-rw-r--r--dev-python/redbaron/metadata.xml12
-rw-r--r--dev-python/redbaron/redbaron-0.9.2.ebuild39
-rw-r--r--dev-python/redbaron/redbaron-0.9.ebuild39
-rw-r--r--dev-python/repology-client/Manifest2
-rw-r--r--dev-python/repology-client/metadata.xml17
-rw-r--r--dev-python/repology-client/repology-client-0.0.2.ebuild37
-rw-r--r--dev-python/repology-client/repology-client-0.2.0.ebuild40
-rw-r--r--dev-python/rpmautospec-core/Manifest1
-rw-r--r--dev-python/rpmautospec-core/metadata.xml12
-rw-r--r--dev-python/rpmautospec-core/rpmautospec-core-0.1.4.ebuild26
-rw-r--r--dev-python/rst2ansi/metadata.xml7
-rw-r--r--dev-python/rst2ansi/rst2ansi-0.1.5-r2.ebuild18
-rw-r--r--dev-python/rst2ansi/rst2ansi-0.1.5.ebuild15
-rw-r--r--dev-python/rstcheck/Manifest3
-rw-r--r--dev-python/rstcheck/metadata.xml21
-rw-r--r--dev-python/rstcheck/rstcheck-6.2.0.ebuild (renamed from dev-python/rstcheck/rstcheck-3.3.1.ebuild)22
-rw-r--r--dev-python/rstcheck/rstcheck-6.2.1.ebuild24
-rw-r--r--dev-python/rstr/Manifest1
-rw-r--r--dev-python/rstr/metadata.xml17
-rw-r--r--dev-python/rstr/rstr-2.2.6.ebuild27
-rw-r--r--dev-python/ryu/Manifest1
-rw-r--r--dev-python/ryu/metadata.xml9
-rw-r--r--dev-python/ryu/ryu-4.34.ebuild24
-rw-r--r--dev-python/sanic-routing/Manifest2
-rw-r--r--dev-python/sanic-routing/metadata.xml8
-rw-r--r--dev-python/sanic-routing/sanic-routing-0.7.0.ebuild30
-rw-r--r--dev-python/sanic-routing/sanic-routing-0.7.1.ebuild28
-rw-r--r--dev-python/sanic-testing/Manifest2
-rw-r--r--dev-python/sanic-testing/metadata.xml11
-rw-r--r--dev-python/sanic-testing/sanic-testing-0.4.0.ebuild34
-rw-r--r--dev-python/sanic-testing/sanic-testing-0.6.0.ebuild33
-rw-r--r--dev-python/sanic/Manifest2
-rw-r--r--dev-python/sanic/metadata.xml12
-rw-r--r--dev-python/sanic/sanic-21.3.4.ebuild56
-rw-r--r--dev-python/sanic/sanic-21.6.0.ebuild55
-rw-r--r--dev-python/scenedetect/Manifest1
-rw-r--r--dev-python/scenedetect/metadata.xml8
-rw-r--r--dev-python/scenedetect/scenedetect-0.5.5.ebuild35
-rw-r--r--dev-python/schedule/Manifest1
-rw-r--r--dev-python/schedule/metadata.xml15
-rw-r--r--dev-python/schedule/schedule-1.1.0.ebuild32
-rw-r--r--dev-python/scramp/Manifest1
-rw-r--r--dev-python/scramp/metadata.xml10
-rw-r--r--dev-python/scramp/scramp-1.4.4.ebuild31
-rw-r--r--dev-python/scrapy/Manifest1
-rw-r--r--dev-python/scrapy/files/scrapy-2.11.0-lift-twisted-restriction.patch99
-rw-r--r--dev-python/scrapy/metadata.xml13
-rw-r--r--dev-python/scrapy/scrapy-2.11.0-r1.ebuild61
-rw-r--r--dev-python/screeninfo/Manifest1
-rw-r--r--dev-python/screeninfo/metadata.xml12
-rw-r--r--dev-python/screeninfo/screeninfo-0.8.1.ebuild19
-rw-r--r--dev-python/sdnotify/Manifest1
-rw-r--r--dev-python/sdnotify/metadata.xml12
-rw-r--r--dev-python/sdnotify/sdnotify-0.3.2.ebuild25
-rw-r--r--dev-python/sendgrid/Manifest1
-rw-r--r--dev-python/sendgrid/metadata.xml12
-rw-r--r--dev-python/sendgrid/sendgrid-6.9.7.ebuild33
-rw-r--r--dev-python/sentence-splitter/Manifest1
-rw-r--r--dev-python/sentence-splitter/metadata.xml12
-rw-r--r--dev-python/sentence-splitter/sentence-splitter-1.4-r2.ebuild23
-rw-r--r--dev-python/signalstickers-client/Manifest1
-rw-r--r--dev-python/signalstickers-client/metadata.xml18
-rw-r--r--dev-python/signalstickers-client/signalstickers-client-3.3.0.ebuild33
-rw-r--r--dev-python/simplemma/Manifest2
-rw-r--r--dev-python/simplemma/metadata.xml4
-rw-r--r--dev-python/simplemma/simplemma-0.3.0.ebuild18
-rw-r--r--dev-python/simplemma/simplemma-0.9.1.ebuild22
-rw-r--r--dev-python/sjcl/Manifest1
-rw-r--r--dev-python/sjcl/metadata.xml11
-rw-r--r--dev-python/sjcl/sjcl-0.2.1-r1.ebuild28
-rw-r--r--dev-python/sjcl/sjcl-0.2.1.ebuild28
-rw-r--r--dev-python/skia-pathops/Manifest3
-rw-r--r--dev-python/skia-pathops/files/skia-pathops-0.7.4-no-net.patch11
-rw-r--r--dev-python/skia-pathops/metadata.xml8
-rw-r--r--dev-python/skia-pathops/skia-pathops-0.4.1.ebuild52
-rw-r--r--dev-python/skia-pathops/skia-pathops-0.6.0_p2.ebuild48
-rw-r--r--dev-python/skia-pathops/skia-pathops-0.8.0.ebuild41
-rw-r--r--dev-python/skills/Manifest1
-rw-r--r--dev-python/skills/metadata.xml27
-rw-r--r--dev-python/skills/skills-0.3.0.ebuild26
-rw-r--r--dev-python/sortedcollections/Manifest2
-rw-r--r--dev-python/sortedcollections/metadata.xml9
-rw-r--r--dev-python/sortedcollections/sortedcollections-2.1.0.ebuild9
-rw-r--r--dev-python/sphinx-argparse-cli/Manifest1
-rw-r--r--dev-python/sphinx-argparse-cli/metadata.xml15
-rw-r--r--dev-python/sphinx-argparse-cli/sphinx-argparse-cli-1.11.1.ebuild28
-rw-r--r--dev-python/sphinx-argparse/Manifest1
-rw-r--r--dev-python/sphinx-argparse/metadata.xml8
-rw-r--r--dev-python/sphinx-argparse/sphinx-argparse-0.2.5.ebuild42
-rw-r--r--dev-python/sphinx-click/Manifest3
-rw-r--r--dev-python/sphinx-click/metadata.xml24
-rw-r--r--dev-python/sphinx-click/sphinx-click-3.0.0.ebuild29
-rw-r--r--dev-python/sphinx-click/sphinx-click-4.2.0.ebuild (renamed from dev-python/sphinx-click/sphinx-click-3.0.1.ebuild)21
-rw-r--r--dev-python/sphinx-design/Manifest1
-rw-r--r--dev-python/sphinx-design/metadata.xml12
-rw-r--r--dev-python/sphinx-design/sphinx-design-0.5.0.ebuild31
-rw-r--r--dev-python/sphinx-hoverxref/Manifest1
-rw-r--r--dev-python/sphinx-hoverxref/metadata.xml15
-rw-r--r--dev-python/sphinx-hoverxref/sphinx-hoverxref-1.3.0.ebuild49
-rw-r--r--dev-python/sphinx-paramlinks/Manifest1
-rw-r--r--dev-python/sphinx-paramlinks/metadata.xml12
-rw-r--r--dev-python/sphinx-paramlinks/sphinx-paramlinks-0.6.0.ebuild21
-rw-r--r--dev-python/sphinx-rtd-dark-mode/Manifest1
-rw-r--r--dev-python/sphinx-rtd-dark-mode/metadata.xml9
-rw-r--r--dev-python/sphinx-rtd-dark-mode/sphinx-rtd-dark-mode-1.2.4.ebuild36
-rw-r--r--dev-python/sphinx-sitemap/Manifest2
-rw-r--r--dev-python/sphinx-sitemap/metadata.xml9
-rw-r--r--dev-python/sphinx-sitemap/sphinx-sitemap-2.5.1.ebuild29
-rw-r--r--dev-python/sphinx-sitemap/sphinx-sitemap-2.6.0.ebuild29
-rw-r--r--dev-python/sphinx-version-warning/Manifest1
-rw-r--r--dev-python/sphinx-version-warning/metadata.xml10
-rw-r--r--dev-python/sphinx-version-warning/sphinx-version-warning-1.1.2.ebuild29
-rw-r--r--dev-python/sphinxcontrib-katex/Manifest2
-rw-r--r--dev-python/sphinxcontrib-katex/metadata.xml2
-rw-r--r--dev-python/sphinxcontrib-katex/sphinxcontrib-katex-0.8.6.ebuild26
-rw-r--r--dev-python/sphinxcontrib-katex/sphinxcontrib-katex-0.9.9.ebuild34
-rw-r--r--dev-python/sphinxcontrib-napoleon/Manifest1
-rw-r--r--dev-python/sphinxcontrib-napoleon/metadata.xml6
-rw-r--r--dev-python/sphinxcontrib-napoleon/sphinxcontrib-napoleon-0.7.ebuild29
-rw-r--r--dev-python/sphinxcontrib-restbuilder/Manifest1
-rw-r--r--dev-python/sphinxcontrib-restbuilder/metadata.xml13
-rw-r--r--dev-python/sphinxcontrib-restbuilder/sphinxcontrib-restbuilder-0.3.ebuild29
-rw-r--r--dev-python/sphinxext-opengraph/Manifest1
-rw-r--r--dev-python/sphinxext-opengraph/metadata.xml13
-rw-r--r--dev-python/sphinxext-opengraph/sphinxext-opengraph-0.9.1.ebuild43
-rw-r--r--dev-python/spotipy/Manifest1
-rw-r--r--dev-python/spotipy/metadata.xml6
-rw-r--r--dev-python/spotipy/spotipy-2.17.1.ebuild54
-rw-r--r--dev-python/sre_yield/Manifest1
-rw-r--r--dev-python/sre_yield/metadata.xml13
-rw-r--r--dev-python/sre_yield/sre_yield-1.2.ebuild18
-rw-r--r--dev-python/srt/Manifest4
-rw-r--r--dev-python/srt/metadata.xml6
-rw-r--r--dev-python/srt/srt-3.5.1.ebuild (renamed from dev-python/srt/srt-3.4.1.ebuild)11
-rw-r--r--dev-python/srt/srt-3.5.2.ebuild38
-rw-r--r--dev-python/srt/srt-3.5.3.ebuild38
-rw-r--r--dev-python/sse-starlette/Manifest2
-rw-r--r--dev-python/sse-starlette/metadata.xml12
-rw-r--r--dev-python/sse-starlette/sse-starlette-1.1.6.ebuild (renamed from dev-python/sse-starlette/sse-starlette-0.7.2.ebuild)20
-rw-r--r--dev-python/starkbank-ecdsa/Manifest1
-rw-r--r--dev-python/starkbank-ecdsa/metadata.xml12
-rw-r--r--dev-python/starkbank-ecdsa/starkbank-ecdsa-2.2.0.ebuild33
-rw-r--r--dev-python/starlette/Manifest1
-rw-r--r--dev-python/starlette/metadata.xml9
-rw-r--r--dev-python/starlette/starlette-0.14.2.ebuild60
-rw-r--r--dev-python/statmake/Manifest1
-rw-r--r--dev-python/statmake/metadata.xml14
-rw-r--r--dev-python/statmake/statmake-0.3.0-r1.ebuild43
-rw-r--r--dev-python/stdlibs/Manifest1
-rw-r--r--dev-python/stdlibs/metadata.xml10
-rw-r--r--dev-python/stdlibs/stdlibs-2022.6.8.ebuild18
-rw-r--r--dev-python/steam/Manifest1
-rw-r--r--dev-python/steam/metadata.xml11
-rw-r--r--dev-python/steam/steam-1.4.4.ebuild34
-rw-r--r--dev-python/steam/steam-9999.ebuild32
-rw-r--r--dev-python/stone/Manifest1
-rw-r--r--dev-python/stone/metadata.xml12
-rw-r--r--dev-python/stone/stone-3.3.5.ebuild35
-rw-r--r--dev-python/strictyaml/Manifest1
-rw-r--r--dev-python/strictyaml/metadata.xml14
-rw-r--r--dev-python/strictyaml/strictyaml-1.3.2.ebuild21
-rw-r--r--dev-python/stringbrewer/Manifest1
-rw-r--r--dev-python/stringbrewer/metadata.xml13
-rw-r--r--dev-python/stringbrewer/stringbrewer-0.0.1.ebuild22
-rw-r--r--dev-python/stringcase/metadata.xml4
-rw-r--r--dev-python/stringcase/stringcase-1.2.0-r1.ebuild (renamed from dev-python/stringcase/stringcase-1.2.0.ebuild)5
-rw-r--r--dev-python/survey/Manifest2
-rw-r--r--dev-python/survey/metadata.xml12
-rw-r--r--dev-python/survey/survey-4.5.4.ebuild23
-rw-r--r--dev-python/survey/survey-5.3.0.ebuild35
-rw-r--r--dev-python/svgelements/Manifest1
-rw-r--r--dev-python/svgelements/files/fix_tests.patch20
-rw-r--r--dev-python/svgelements/metadata.xml12
-rw-r--r--dev-python/svgelements/svgelements-1.9.6-r1.ebuild47
-rw-r--r--dev-python/sysv_ipc/Manifest1
-rw-r--r--dev-python/sysv_ipc/metadata.xml8
-rw-r--r--dev-python/sysv_ipc/sysv_ipc-1.1.0.ebuild19
-rw-r--r--dev-python/taskflow/Manifest1
-rw-r--r--dev-python/taskflow/metadata.xml14
-rw-r--r--dev-python/taskflow/taskflow-4.5.0.ebuild38
-rw-r--r--dev-python/templated-dictionary/Manifest1
-rw-r--r--dev-python/templated-dictionary/metadata.xml12
-rw-r--r--dev-python/templated-dictionary/templated-dictionary-1.4.ebuild24
-rw-r--r--dev-python/tempus-themes/Manifest1
-rw-r--r--dev-python/tempus-themes/metadata.xml9
-rw-r--r--dev-python/tempus-themes/tempus-themes-2.3.0.20220206.ebuild21
-rw-r--r--dev-python/tempy/Manifest1
-rw-r--r--dev-python/tempy/metadata.xml11
-rw-r--r--dev-python/tempy/tempy-1.4.0.ebuild31
-rw-r--r--dev-python/termynal/Manifest1
-rw-r--r--dev-python/termynal/metadata.xml11
-rw-r--r--dev-python/termynal/termynal-0.12.1.ebuild43
-rw-r--r--dev-python/textual-dev/Manifest1
-rw-r--r--dev-python/textual-dev/metadata.xml13
-rw-r--r--dev-python/textual-dev/textual-dev-1.5.1.ebuild38
-rw-r--r--dev-python/textual/Manifest1
-rw-r--r--dev-python/textual/files/fix-mkdocstrings.patch26
-rw-r--r--dev-python/textual/metadata.xml13
-rw-r--r--dev-python/textual/textual-0.58.1.ebuild67
-rw-r--r--dev-python/timeslot/Manifest1
-rw-r--r--dev-python/timeslot/metadata.xml12
-rw-r--r--dev-python/timeslot/timeslot-0.1.2.ebuild19
-rw-r--r--dev-python/tinyrpc/Manifest1
-rw-r--r--dev-python/tinyrpc/metadata.xml21
-rw-r--r--dev-python/tinyrpc/tinyrpc-1.0.1.ebuild30
-rw-r--r--dev-python/tooz/Manifest1
-rw-r--r--dev-python/tooz/metadata.xml16
-rw-r--r--dev-python/tooz/tooz-2.7.1.ebuild35
-rw-r--r--dev-python/toposort/Manifest1
-rw-r--r--dev-python/toposort/metadata.xml13
-rw-r--r--dev-python/toposort/toposort-1.6.ebuild27
-rw-r--r--dev-python/trailrunner/Manifest1
-rw-r--r--dev-python/trailrunner/metadata.xml9
-rw-r--r--dev-python/trailrunner/trailrunner-1.2.1.ebuild21
-rw-r--r--dev-python/trueskill/Manifest1
-rw-r--r--dev-python/trueskill/metadata.xml24
-rw-r--r--dev-python/trueskill/trueskill-0.4.5_p20191014.ebuild37
-rw-r--r--dev-python/ttfautohint-py/Manifest1
-rw-r--r--dev-python/ttfautohint-py/files/ttfautohint-py-0.4.3-no-ext_modules.patch10
-rw-r--r--dev-python/ttfautohint-py/metadata.xml14
-rw-r--r--dev-python/ttfautohint-py/ttfautohint-py-0.4.3.ebuild32
-rw-r--r--dev-python/tulir-telethon/Manifest1
-rw-r--r--dev-python/tulir-telethon/metadata.xml16
-rw-r--r--dev-python/tulir-telethon/tulir-telethon-1.35.0_alpha1.ebuild29
-rw-r--r--dev-python/tweepy/Manifest2
-rw-r--r--dev-python/tweepy/metadata.xml13
-rw-r--r--dev-python/tweepy/tweepy-3.10.0.ebuild31
-rw-r--r--dev-python/tweepy/tweepy-4.14.0.ebuild36
-rw-r--r--dev-python/types-protobuf/Manifest1
-rw-r--r--dev-python/types-protobuf/metadata.xml13
-rw-r--r--dev-python/types-protobuf/types-protobuf-4.24.0.20240408.ebuild18
-rw-r--r--dev-python/types-requests/Manifest1
-rw-r--r--dev-python/types-requests/metadata.xml11
-rw-r--r--dev-python/types-requests/types-requests-2.31.0.20240311.ebuild22
-rw-r--r--dev-python/typing-inspect/Manifest1
-rw-r--r--dev-python/typing-inspect/metadata.xml9
-rw-r--r--dev-python/typing-inspect/typing-inspect-0.9.0.ebuild32
-rw-r--r--dev-python/ufo2ft/Manifest1
-rw-r--r--dev-python/ufo2ft/metadata.xml79
-rw-r--r--dev-python/ufo2ft/ufo2ft-2.21.0.ebuild40
-rw-r--r--dev-python/ufoLib2/Manifest1
-rw-r--r--dev-python/ufoLib2/metadata.xml13
-rw-r--r--dev-python/ufoLib2/ufoLib2-0.11.1.ebuild45
-rw-r--r--dev-python/ufoNormalizer/Manifest1
-rw-r--r--dev-python/ufoNormalizer/metadata.xml27
-rw-r--r--dev-python/ufoNormalizer/ufoNormalizer-0.5.4.ebuild23
-rw-r--r--dev-python/ufoProcessor/Manifest1
-rw-r--r--dev-python/ufoProcessor/metadata.xml14
-rw-r--r--dev-python/ufoProcessor/ufoProcessor-1.9.0.ebuild41
-rw-r--r--dev-python/uharfbuzz/Manifest1
-rw-r--r--dev-python/uharfbuzz/files/uharfbuzz-0.16.1-system-harfbuzz.patch23
-rw-r--r--dev-python/uharfbuzz/metadata.xml14
-rw-r--r--dev-python/uharfbuzz/uharfbuzz-0.16.1.ebuild38
-rw-r--r--dev-python/ukpostcodeparser/Manifest1
-rw-r--r--dev-python/ukpostcodeparser/files/ukpostcodeparser-1.1.2-test.patch70
-rw-r--r--dev-python/ukpostcodeparser/metadata.xml13
-rw-r--r--dev-python/ukpostcodeparser/ukpostcodeparser-1.1.2.ebuild30
-rw-r--r--dev-python/undervolt/Manifest1
-rw-r--r--dev-python/undervolt/metadata.xml11
-rw-r--r--dev-python/undervolt/undervolt-0.4.0.ebuild17
-rw-r--r--dev-python/undervolt/undervolt-9999.ebuild24
-rw-r--r--dev-python/unicodedata2/Manifest1
-rw-r--r--dev-python/unicodedata2/metadata.xml14
-rw-r--r--dev-python/unicodedata2/unicodedata2-13.0.0.2.ebuild19
-rw-r--r--dev-python/urlmatch/Manifest1
-rw-r--r--dev-python/urlmatch/metadata.xml (renamed from dev-python/ffmpeg-python/metadata.xml)5
-rw-r--r--dev-python/urlmatch/urlmatch-1.0.1-r2.ebuild28
-rw-r--r--dev-python/validator-collection/Manifest1
-rw-r--r--dev-python/validator-collection/metadata.xml13
-rw-r--r--dev-python/validator-collection/validator-collection-1.5.0-r1.ebuild44
-rw-r--r--dev-python/vharfbuzz/Manifest2
-rw-r--r--dev-python/vharfbuzz/files/vharfbuzz-0.1.1-fix-package-dir.patch11
-rw-r--r--dev-python/vharfbuzz/metadata.xml13
-rw-r--r--dev-python/vharfbuzz/vharfbuzz-0.1.1.ebuild26
-rw-r--r--dev-python/vharfbuzz/vharfbuzz-0.1.2.ebuild24
-rw-r--r--dev-python/volatile/Manifest1
-rw-r--r--dev-python/volatile/metadata.xml8
-rw-r--r--dev-python/volatile/volatile-2.1.0.ebuild19
-rw-r--r--dev-python/vttlib/Manifest1
-rw-r--r--dev-python/vttlib/metadata.xml24
-rw-r--r--dev-python/vttlib/vttlib-0.11.0.ebuild43
-rw-r--r--dev-python/w3lib/Manifest1
-rw-r--r--dev-python/w3lib/metadata.xml12
-rw-r--r--dev-python/w3lib/w3lib-2.1.2.ebuild32
-rw-r--r--dev-python/webpy/Manifest2
-rw-r--r--dev-python/webpy/metadata.xml2
-rw-r--r--dev-python/webpy/webpy-0.62.ebuild39
-rw-r--r--dev-python/webrtcvad/Manifest1
-rw-r--r--dev-python/webrtcvad/metadata.xml5
-rw-r--r--dev-python/webrtcvad/webrtcvad-2.0.10-r1.ebuild30
-rw-r--r--dev-python/webrtcvad/webrtcvad-2.0.10.ebuild26
-rw-r--r--dev-python/wrapio/Manifest1
-rw-r--r--dev-python/wrapio/metadata.xml12
-rw-r--r--dev-python/wrapio/wrapio-2.0.0.ebuild18
-rw-r--r--dev-python/xattr/Manifest2
-rw-r--r--dev-python/xattr/metadata.xml14
-rw-r--r--dev-python/xattr/xattr-1.0.0.ebuild53
-rw-r--r--dev-python/xattr/xattr-1.1.0.ebuild53
-rw-r--r--dev-python/xunitparser/Manifest2
-rw-r--r--dev-python/xunitparser/metadata.xml5
-rw-r--r--dev-python/xunitparser/xunitparser-1.3.3.ebuild22
-rw-r--r--dev-python/xunitparser/xunitparser-1.3.4.ebuild21
-rw-r--r--dev-python/yams/Manifest2
-rw-r--r--dev-python/yams/metadata.xml7
-rw-r--r--dev-python/yams/yams-0.7.3-r1.ebuild37
-rw-r--r--dev-python/yams/yams-0.7.3.ebuild48
-rw-r--r--dev-python/yams/yams-9999.ebuild29
-rw-r--r--dev-python/yaql/Manifest1
-rw-r--r--dev-python/yaql/metadata.xml20
-rw-r--r--dev-python/yaql/yaql-1.1.3.ebuild24
-rw-r--r--dev-python/yara-python/Manifest1
-rw-r--r--dev-python/yara-python/files/yara-python-4.1.0-system-libyara.patch10
-rw-r--r--dev-python/yara-python/metadata.xml14
-rw-r--r--dev-python/yara-python/yara-python-4.1.0.ebuild35
-rw-r--r--dev-python/zVMCloudConnector/Manifest1
-rw-r--r--dev-python/zVMCloudConnector/metadata.xml15
-rw-r--r--dev-python/zVMCloudConnector/zVMCloudConnector-1.4.1.ebuild27
-rw-r--r--dev-python/zenlib/Manifest4
-rw-r--r--dev-python/zenlib/metadata.xml11
-rw-r--r--dev-python/zenlib/zenlib-2.0.0.ebuild16
-rw-r--r--dev-python/zenlib/zenlib-2.0.4.ebuild16
-rw-r--r--dev-python/zenlib/zenlib-2.1.1.ebuild16
-rw-r--r--dev-python/zenlib/zenlib-2.1.2.ebuild16
-rw-r--r--dev-python/zopfli/Manifest1
-rw-r--r--dev-python/zopfli/metadata.xml9
-rw-r--r--dev-python/zopfli/zopfli-0.2.2.ebuild34
1463 files changed, 17122 insertions, 11712 deletions
diff --git a/dev-python/DAWG-Python/DAWG-Python-0.7.2.ebuild b/dev-python/DAWG-Python/DAWG-Python-0.7.2.ebuild
index dae9acae0..36063bdac 100644
--- a/dev-python/DAWG-Python/DAWG-Python-0.7.2.ebuild
+++ b/dev-python/DAWG-Python/DAWG-Python-0.7.2.ebuild
@@ -1,15 +1,18 @@
-# Copyright 2021 Gentoo Authors
+# Copyright 2021-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{8,9} pypy3 )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-inherit distutils-r1
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
DESCRIPTION="Pure-python reader for DAWGs (DAFSAs) created by dawgdic C++ library."
-HOMEPAGE="https://pypi.org/project/DAWG-Python/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+HOMEPAGE="
+ https://github.com/pytries/DAWG-Python
+ https://pypi.org/project/DAWG-Python/
+"
LICENSE="MIT"
SLOT="0"
diff --git a/dev-python/DAWG-Python/metadata.xml b/dev-python/DAWG-Python/metadata.xml
index 57eac8149..86c83234a 100644
--- a/dev-python/DAWG-Python/metadata.xml
+++ b/dev-python/DAWG-Python/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
<pkgmetadata>
<maintainer type="person">
- <email>shaoyu0209@tuta.io</email>
+ <email>dev@notyourcomputer.net</email>
<name>Shaoyu Tseng</name>
</maintainer>
<upstream>
diff --git a/dev-python/EbookLib/EbookLib-0.17.1.ebuild b/dev-python/EbookLib/EbookLib-0.17.1.ebuild
new file mode 100644
index 000000000..14f9ac085
--- /dev/null
+++ b/dev-python/EbookLib/EbookLib-0.17.1.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Ebook library which can handle EPUB2/EPUB3 and Kindle format"
+HOMEPAGE="https://github.com/aerkalov/ebooklib https://pypi.org/project/EbookLib/"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/EbookLib/Manifest b/dev-python/EbookLib/Manifest
new file mode 100644
index 000000000..bc40ed43d
--- /dev/null
+++ b/dev-python/EbookLib/Manifest
@@ -0,0 +1 @@
+DIST EbookLib-0.17.1.tar.gz 111567 BLAKE2B 371a187b37e2975e00bcc2680fbffe557c922a13cbb90fc446b367c4e0d1ad761573f3161b62a16471f56b2b2da444e1b7d16536d30cf1b3f850e31746868942 SHA512 0c8147c5d0435e448b35913503e670bf314e17b200591296b2ebfe9557607cf3a3f09c7ff2fae1c8c28950ceb808d8b9ab8e44e0bfcf80e7d9ee402cebbc6bc0
diff --git a/dev-python/EbookLib/metadata.xml b/dev-python/EbookLib/metadata.xml
new file mode 100644
index 000000000..b3b17c37d
--- /dev/null
+++ b/dev-python/EbookLib/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">EbookLib</remote-id>
+ <remote-id type="github">aerkalov/ebooklib</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/ManimPango/Manifest b/dev-python/ManimPango/Manifest
new file mode 100644
index 000000000..09b22ffe0
--- /dev/null
+++ b/dev-python/ManimPango/Manifest
@@ -0,0 +1,2 @@
+DIST ManimPango-0.4.4.gh.tar.gz 4144021 BLAKE2B 88f33b8d2585abbc1f118e1df6a76be68789da6d704302de311086a775c6ba1d9a58afe83ad9845d5bf4461df43790c3a49c962d299053d37608f8b695d0c524 SHA512 3d9261c2787677039096ec20b8c4f17249189dea984cbc51c570b2af7ddf8bd6abdc8fde4cf577a435a4a4cf3d4cd33a66f39ec6e545f446e2bffb8cd48d0f84
+DIST ManimPango-0.5.0.gh.tar.gz 4144029 BLAKE2B 0920111f9c52ccbce5bed86ddfdf6c52d2afa715694093703686f3ae6573b42813d0624a12d2a5db2f6b0fccf633882f4a8c57420ebc06e2c7549994a5261a5f SHA512 6dbcb02913eedc28f88dca4d6e57a5a470cce323b423b7cfb0d5e4042d7769f98713cb03690e269be1d08c80c74c78c7a7876ec81794e5cc1a3cd257585d3669
diff --git a/dev-python/ManimPango/ManimPango-0.4.4.ebuild b/dev-python/ManimPango/ManimPango-0.4.4.ebuild
new file mode 100644
index 000000000..edf6a566f
--- /dev/null
+++ b/dev-python/ManimPango/ManimPango-0.4.4.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Binding for Pango, to use with Manim."
+HOMEPAGE="https://github.com/ManimCommunity/ManimPango https://pypi.org/project/manimpango"
+SRC_URI="https://github.com/ManimCommunity/ManimPango/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug"
+
+RDEPEND="
+ dev-libs/glib:2
+ media-libs/fontconfig
+ x11-libs/cairo
+ x11-libs/pango
+"
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+ x11-libs/pango
+"
+ # doc? (
+ # dev-python/furo[${PYTHON_USEDEP}]
+ # dev-python/sphinxext-opengraph[${PYTHON_USEDEP}]
+ # )
+DEPEND="${BDEPEND}"
+
+src_prepare() {
+ # The tests always fails (ManimPango has to be installed for them to work)
+ rm -rf "${S}/tests"
+ distutils-r1_src_prepare
+}
+
+# distutils_enable_sphinx docs # We need a lot of other packages if we allow doc
diff --git a/dev-python/ManimPango/ManimPango-0.5.0-r1.ebuild b/dev-python/ManimPango/ManimPango-0.5.0-r1.ebuild
new file mode 100644
index 000000000..ebaa05ca3
--- /dev/null
+++ b/dev-python/ManimPango/ManimPango-0.5.0-r1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Binding for Pango, to use with Manim."
+HOMEPAGE="https://github.com/ManimCommunity/ManimPango https://pypi.org/project/manimpango"
+SRC_URI="https://github.com/ManimCommunity/ManimPango/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="debug"
+
+RDEPEND="
+ dev-libs/glib:2
+ media-libs/fontconfig
+ x11-libs/cairo
+ x11-libs/pango
+"
+BDEPEND="
+ >=dev-python/cython-3.0.2[${PYTHON_USEDEP}]
+ x11-libs/pango
+"
+ # doc? (
+ # dev-python/furo[${PYTHON_USEDEP}]
+ # dev-python/sphinxext-opengraph[${PYTHON_USEDEP}]
+ # )
+DEPEND="${BDEPEND}"
+
+src_prepare() {
+ # The tests always fails (ManimPango has to be installed for them to work)
+ rm -rf "${S}/tests"
+ distutils-r1_src_prepare
+}
+
+# distutils_enable_sphinx docs # We need a lot of other packages if we allow doc
diff --git a/dev-python/ManimPango/metadata.xml b/dev-python/ManimPango/metadata.xml
new file mode 100644
index 000000000..c3abb3e0a
--- /dev/null
+++ b/dev-python/ManimPango/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">manimpango</remote-id>
+ <remote-id type="github">ManimCommunity/ManimPango</remote-id>
+ <doc>https://manimpango.manim.community/</doc>
+ <changelog>https://github.com/ManimCommunity/ManimPango/releases/</changelog>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/MutatorMath/Manifest b/dev-python/MutatorMath/Manifest
deleted file mode 100644
index bb4890bf5..000000000
--- a/dev-python/MutatorMath/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST MutatorMath-3.0.1.tar.gz 234416 BLAKE2B 999b0fb3c5cca8252fc27efa099e5046d17604b77a38322fd3a13b7e96d7b6ac123dafe75f3a295e908ec8891e5342df319c7faca3612d953849895e8c99f17a SHA512 a1be360c866783543b375872a406eb61ac41ce21a6fd7c9b8d349758525c998d7d2613ad55208a5f8709a81c0ea8ea7e4bad76f0a554e8ce8e62aa6c9a00bbb5
diff --git a/dev-python/MutatorMath/MutatorMath-3.0.1.ebuild b/dev-python/MutatorMath/MutatorMath-3.0.1.ebuild
deleted file mode 100644
index e6face056..000000000
--- a/dev-python/MutatorMath/MutatorMath-3.0.1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/LettError/MutatorMath/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-DESCRIPTION="A library for piecewise linear interpolation in multiple dimensions"
-HOMEPAGE="https://github.com/LettError/MutatorMath"
-LICENSE="BSD"
-SLOT="0"
-
-RDEPEND="
- dev-python/defcon[${PYTHON_USEDEP}]
- dev-python/fontMath[${PYTHON_USEDEP}]
- >=dev-python/fonttools-3.32[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- test? (
- dev-python/pytest[${PYTHON_USEDEP}]
- dev-python/unicodedata2[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests setup.py
diff --git a/dev-python/MutatorMath/metadata.xml b/dev-python/MutatorMath/metadata.xml
deleted file mode 100644
index 9a5b10643..000000000
--- a/dev-python/MutatorMath/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/LettError/MutatorMath/issues</bugs-to>
- <remote-id type="github">LettError/MutatorMath</remote-id>
- <remote-id type="pypi">MutatorMath</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/NSKeyedUnArchiver/Manifest b/dev-python/NSKeyedUnArchiver/Manifest
new file mode 100644
index 000000000..e249e5042
--- /dev/null
+++ b/dev-python/NSKeyedUnArchiver/Manifest
@@ -0,0 +1 @@
+DIST NSKeyedUnArchiver-1.5.tar.gz 3431 BLAKE2B c66ca90e3585abb60efb2142111ccae8102de90ebf8fd904679abe0b24a4311616e051260cc018ac8128d8e3d81652d4e7d4e1ee6ae1dc6d7418fb82ed160407 SHA512 ecdf53bdcfff34366c4fb0d4e4ff45e765a7571374af803a1f9acf6c42fa5d300f00a7e58cb1380e1f5d1e1ad06696652225a6ae4fcfe9b6627f510b749f32e1
diff --git a/dev-python/NSKeyedUnArchiver/NSKeyedUnArchiver-1.5.ebuild b/dev-python/NSKeyedUnArchiver/NSKeyedUnArchiver-1.5.ebuild
new file mode 100644
index 000000000..94075658a
--- /dev/null
+++ b/dev-python/NSKeyedUnArchiver/NSKeyedUnArchiver-1.5.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYPI_NO_NORMALIZE=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Unserializes binary|text|file|memory plist data to Python dict"
+HOMEPAGE="https://github.com/avibrazil/NSKeyedUnArchiver"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
diff --git a/dev-python/NSKeyedUnArchiver/metadata.xml b/dev-python/NSKeyedUnArchiver/metadata.xml
new file mode 100644
index 000000000..267525b63
--- /dev/null
+++ b/dev-python/NSKeyedUnArchiver/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Vitaly Zdanevich</name>
+ <email>zdanevich.vitaly@ya.ru</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">avibrazil/NSKeyedUnArchiver</remote-id>
+ <remote-id type="pypi">NSKeyedUnArchiver</remote-id>
+ <bugs-to>https://github.com/avibrazil/NSKeyedUnArchiver</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/PyPubSub/Manifest b/dev-python/PyPubSub/Manifest
new file mode 100644
index 000000000..66e4ca178
--- /dev/null
+++ b/dev-python/PyPubSub/Manifest
@@ -0,0 +1 @@
+DIST PyPubSub-4.0.3.gh.tar.gz 174033 BLAKE2B 65fcd960ce2f0548f152546faa7a98055a823414c453b475d6ade339f55e72a60dcb8d627f6272cc844d181f772b76dba4e53b2ecc521bb05420abc09f6c30d2 SHA512 cf9aca44e91a5d0e5ecf6739deabf2980f9464395c89e3c5335c5248e47c570701e0534bb660c5005325a994d9f8e7f261f36bc8bea74cfc7eb760b73c572652
diff --git a/dev-python/PyPubSub/PyPubSub-4.0.3-r1.ebuild b/dev-python/PyPubSub/PyPubSub-4.0.3-r1.ebuild
new file mode 100644
index 000000000..541fbda26
--- /dev/null
+++ b/dev-python/PyPubSub/PyPubSub-4.0.3-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# Forked from : https://data.gpo.zugaina.org/HomeAssistantRepository/dev-python/PyPubSub/PyPubSub-4.0.3.ebuild
+
+EAPI=8
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+DESCRIPTION="Python Publish-Subscribe Package"
+HOMEPAGE="https://github.com/schollii/pypubsub https://pypi.org/project/PyPubSub/"
+MY_PN="pypubsub"
+SRC_URI="https://github.com/schollii/${MY_PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DOCS="README.rst"
+
+BDEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests pytest
+
+python_test() {
+ cd tests/suite
+ distutils-r1_python_test
+}
diff --git a/dev-python/PyQt5-stubs/Manifest b/dev-python/PyQt5-stubs/Manifest
new file mode 100644
index 000000000..ad56a471a
--- /dev/null
+++ b/dev-python/PyQt5-stubs/Manifest
@@ -0,0 +1,2 @@
+DIST PyQt5-stubs-5.15.2.0.gh.tar.gz 344714 BLAKE2B 67e07fd5851748fb0f3161f82ccf699a69399da004f16daae3a3bd28c0a5ef49c91d14dfccc9b49d2071a727e3b7cff9540ffdb3c9751a341ed628dbea295010 SHA512 9b33a8f999b12e6cf73277835f72f303b243e33638c4f751ce5f6d5c8c50e30326b505f4235ea2cb09e46004186b92bc3ab320f5143a9899d99767cc0f173314
+DIST PyQt5-stubs-5.15.6.0.gh.tar.gz 496888 BLAKE2B 01c0d8478783fe7ef4e460cb5b5823315dbb389ef29213ce77444fa021b43508a30c125e66d59bd28b017ee0798e7815dd2a8eff86a6ce9bf25fbe0f4274771a SHA512 76c7a94f9f949dd4d9c67fedb74aab2c9246834a6ad99fb28003e35bdad6a262b26051c17180b9a2b511e228a038e5c64ccc9885095c4239740cda339e91801e
diff --git a/dev-python/PyQt5-stubs/PyQt5-stubs-5.15.2.0.ebuild b/dev-python/PyQt5-stubs/PyQt5-stubs-5.15.2.0.ebuild
new file mode 100644
index 000000000..b916a46b0
--- /dev/null
+++ b/dev-python/PyQt5-stubs/PyQt5-stubs-5.15.2.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Stubs for PyQt5"
+HOMEPAGE="
+ https://pypi.org/project/PyQt5-stubs/
+ https://github.com/python-qt-tools/PyQt5-stubs
+
+"
+
+# no tests on pypi
+SRC_URI="https://github.com/python-qt-tools/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="test? (
+ dev-python/mypy[${PYTHON_USEDEP}]
+ dev-python/PyQt5[${PYTHON_USEDEP},widgets]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/PyQt5-stubs/PyQt5-stubs-5.15.6.0.ebuild b/dev-python/PyQt5-stubs/PyQt5-stubs-5.15.6.0.ebuild
new file mode 100644
index 000000000..cd625375d
--- /dev/null
+++ b/dev-python/PyQt5-stubs/PyQt5-stubs-5.15.6.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Stubs for PyQt5"
+HOMEPAGE="
+ https://pypi.org/project/PyQt5-stubs/
+ https://github.com/python-qt-tools/PyQt5-stubs
+
+"
+
+# no tests on pypi
+SRC_URI="https://github.com/python-qt-tools/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="test? (
+ dev-python/mypy[${PYTHON_USEDEP}]
+ dev-python/PyQtWebEngine[${PYTHON_USEDEP}]
+ dev-python/PyQt5[${PYTHON_USEDEP},bluetooth,dbus,declarative,designer,location,multimedia,network,opengl,positioning,serialport,sql,svg,widgets]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/PyQt5-stubs/metadata.xml b/dev-python/PyQt5-stubs/metadata.xml
new file mode 100644
index 000000000..f17babbee
--- /dev/null
+++ b/dev-python/PyQt5-stubs/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">python-qt-tools/PyQt5-stubs</remote-id>
+ <remote-id type="pypi">PyQt5-stubs</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/PyWavefront/Manifest b/dev-python/PyWavefront/Manifest
new file mode 100644
index 000000000..ceec33ced
--- /dev/null
+++ b/dev-python/PyWavefront/Manifest
@@ -0,0 +1 @@
+DIST v1.3.3.gh.tar.gz 3531475 BLAKE2B 4c6493ce5df9767a4ae69ff70c9ac18fcefc8039498c90d66aa493657cb190a58b6e7ab24cb469be1e0d16098c4e4b29a397a003281bcc742cc9d4d711db8c8c SHA512 9d78282dc626bbb9f20c45d4a0a1911e8dd1f11c3e8c50e3637ed33e976c253e4dd9c5faee29bbad5edf241877b2df4d25f77fd3bcc6dd438b7e46c8d821918d
diff --git a/dev-python/PyWavefront/PyWavefront-1.3.3-r1.ebuild b/dev-python/PyWavefront/PyWavefront-1.3.3-r1.ebuild
new file mode 100644
index 000000000..168632f97
--- /dev/null
+++ b/dev-python/PyWavefront/PyWavefront-1.3.3-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 virtualx
+
+DESCRIPTION="Python library for importing Wavefront .obj files"
+HOMEPAGE="https://github.com/pywavefront/PyWavefront https://pypi.org/project/PyWavefront"
+SRC_URI="https://github.com/pywavefront/PyWavefront/archive/refs/tags/${PV}.tar.gz -> v${PV}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${BDEPEND}"
+
+distutils_enable_tests pytest
+src_test() {
+ virtx distutils-r1_src_test
+}
diff --git a/dev-python/PyWavefront/metadata.xml b/dev-python/PyWavefront/metadata.xml
new file mode 100644
index 000000000..90a5c1476
--- /dev/null
+++ b/dev-python/PyWavefront/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">PyWavefront</remote-id>
+ <remote-id type="github">pywavefront/PyWavefront</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/PythonQwt/Manifest b/dev-python/PythonQwt/Manifest
new file mode 100644
index 000000000..55cc24a1a
--- /dev/null
+++ b/dev-python/PythonQwt/Manifest
@@ -0,0 +1,2 @@
+DIST PythonQwt-0.11.2.tar.gz 1216322 BLAKE2B cecc5cbcfc4266690692e2bd358dbcd9d6f949b64ffff38879b1df84b0e4c4a562ffac18ce436fd7ccdb3dbb43e77b9bc998e73d53855ab065b53363d3256ccc SHA512 1f5210943dec77fc72426a1da5db6b783ae9d27aa9f7f76c69e9a5d40e306b7bfde0f1a16990cbb622ab2f66289fd65e7d0887b5ac777389859c64e6ef372d69
+DIST PythonQwt-0.12.1.tar.gz 1216628 BLAKE2B 9428d3c8d0fe671c6182e4664d53ea684bf18e0bf7c8462fc56e669e7745f17064c890e37a75766f6165bfe381847c06f1d532eb524949445b0efe6ddd1486e9 SHA512 cdfe02c8db8a3d81af71412590f12a86779143bb8f3411bc442b23760fc6c51d1f0aac320c6418c9e32ef68abe706b952ed172f5f0bb39aca17427c8ecc34e07
diff --git a/dev-python/PythonQwt/PythonQwt-0.11.2.ebuild b/dev-python/PythonQwt/PythonQwt-0.11.2.ebuild
new file mode 100644
index 000000000..e331c4810
--- /dev/null
+++ b/dev-python/PythonQwt/PythonQwt-0.11.2.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYPI_NO_NORMALIZE=true
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Qt plotting widgets for Python "
+HOMEPAGE="https://pypi.python.org/pypi/PythonQwt"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# Test directory seems to contain demo instead
+RESTRICT="test"
+
+RDEPEND="dev-python/PyQt5[${PYTHON_USEDEP},svg]"
diff --git a/dev-python/PythonQwt/PythonQwt-0.12.1.ebuild b/dev-python/PythonQwt/PythonQwt-0.12.1.ebuild
new file mode 100644
index 000000000..e331c4810
--- /dev/null
+++ b/dev-python/PythonQwt/PythonQwt-0.12.1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYPI_NO_NORMALIZE=true
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Qt plotting widgets for Python "
+HOMEPAGE="https://pypi.python.org/pypi/PythonQwt"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+# Test directory seems to contain demo instead
+RESTRICT="test"
+
+RDEPEND="dev-python/PyQt5[${PYTHON_USEDEP},svg]"
diff --git a/dev-python/hijri-converter/metadata.xml b/dev-python/PythonQwt/metadata.xml
index d2b2c8ce9..e255c3cdf 100644
--- a/dev-python/hijri-converter/metadata.xml
+++ b/dev-python/PythonQwt/metadata.xml
@@ -2,8 +2,10 @@
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
</maintainer>
+ <upstream>
+ <remote-id type="pypi">PythonQwt</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/SLPP/Manifest b/dev-python/SLPP/Manifest
new file mode 100644
index 000000000..ca879d877
--- /dev/null
+++ b/dev-python/SLPP/Manifest
@@ -0,0 +1 @@
+DIST SLPP-1.2.3.tar.gz 4750 BLAKE2B 34b6f54e71817ad8b2c655937511226597f9cbb9ca65451c59f93f60b29cba9b4f4053b164594f36fc883665992b5dd7313f6139622e7818f22a9a2cb64e8116 SHA512 c2ae6f38d956009cea1ae48877a056c5beceb0a8b9868a1a3f306ee0263d7f93d385bd470a31151c9dae9a79c688d3d9fca27e6e1a61981d76156a24a27a33e2
diff --git a/dev-python/SLPP/SLPP-1.2.3.ebuild b/dev-python/SLPP/SLPP-1.2.3.ebuild
new file mode 100644
index 000000000..d9e993fd4
--- /dev/null
+++ b/dev-python/SLPP/SLPP-1.2.3.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Simple lua-python parser"
+HOMEPAGE="
+ https://github.com/SirAnthony/slpp
+ https://pypi.org/project/SLPP/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/SLPP/metadata.xml b/dev-python/SLPP/metadata.xml
new file mode 100644
index 000000000..f01275ea8
--- /dev/null
+++ b/dev-python/SLPP/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">SLPP</remote-id>
+ <remote-id type="github">SirAnthony/slpp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/TakeTheTime/Manifest b/dev-python/TakeTheTime/Manifest
new file mode 100644
index 000000000..b920959ef
--- /dev/null
+++ b/dev-python/TakeTheTime/Manifest
@@ -0,0 +1 @@
+DIST TakeTheTime-0.3.1.gh.tar.gz 2916 BLAKE2B 841edd7e06d45ce6f2774a8464c391500651a9762ff85115d9b13d9f45e68f7ae7e0aef0d588d5e9cce0ee98b1c5343cef83fe9b026c074cbe27c2e6837ffb72 SHA512 ef33101d850ff39ed85b5f26fa90fb7ece1e85ee39e7f611b444e0d2cba181698cc99bd4183285b24da2a740b6fbf315f2f35d7f67ce67b53acefab0b2eaaee5
diff --git a/dev-python/TakeTheTime/TakeTheTime-0.3.1.ebuild b/dev-python/TakeTheTime/TakeTheTime-0.3.1.ebuild
new file mode 100644
index 000000000..900821987
--- /dev/null
+++ b/dev-python/TakeTheTime/TakeTheTime-0.3.1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1
+
+DESCRIPTION="Take The Time, a super-neat Python library for timing chunks of code"
+HOMEPAGE="https://github.com/ErikBjare/TakeTheTime"
+
+# pypi doesn't contains the tests
+SRC_URI="https://github.com/ErikBjare/TakeTheTime/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests unittest
+
+python_test() {
+ eunittest tests
+}
diff --git a/dev-python/TakeTheTime/metadata.xml b/dev-python/TakeTheTime/metadata.xml
new file mode 100644
index 000000000..ce38925e5
--- /dev/null
+++ b/dev-python/TakeTheTime/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ErikBjare/TakeTheTime</remote-id>
+ <remote-id type="pypi">TakeTheTime</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/WSME/Manifest b/dev-python/WSME/Manifest
deleted file mode 100644
index 8438e2f06..000000000
--- a/dev-python/WSME/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST WSME-0.10.0.tar.gz 89701 BLAKE2B 8ce4160919b66c4c858d71af02cc40741fda0261fe0c23f390805a3913e85879011975a7a562c647a877ce6b40cd0c5d273f4f44f0affff4efe5717339a143cb SHA512 2015ed56e12f566e9c40cf2d37d3dce1edf5f4678a2703b3477d362abb52866a519addc77cfcc57b712de58ab6bcad707c6971eb3de60d7f6f209fdf4cfb7a88
diff --git a/dev-python/WSME/WSME-0.10.0.ebuild b/dev-python/WSME/WSME-0.10.0.ebuild
deleted file mode 100644
index 0d20cce03..000000000
--- a/dev-python/WSME/WSME-0.10.0.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-
-inherit distutils-r1
-
-DESCRIPTION="Simplify the writing of REST APIs, and extend them with additional protocols."
-HOMEPAGE="https://pythonhosted.org/WSME"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND=">=dev-python/pbr-1.3[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/pbr-1.3[${PYTHON_USEDEP}]
- >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
- >=dev-python/webob-1.8.0[${PYTHON_USEDEP}]
- dev-python/simplegeneric[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- >=dev-python/netaddr-0.7.12[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/WSME/metadata.xml b/dev-python/WSME/metadata.xml
deleted file mode 100644
index 8f47315d1..000000000
--- a/dev-python/WSME/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">WSME</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/XenAPI/Manifest b/dev-python/XenAPI/Manifest
deleted file mode 100644
index 430c88992..000000000
--- a/dev-python/XenAPI/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST XenAPI-2.14.tar.gz 5110 BLAKE2B 0391ccfffe8c2a264360eef4057a666e92bcbc8b31e7848f15704fff4d554db9758b1aa0b5210d1bfc41c4df261096b04961a4ff6722a8ea25305971b70f8562 SHA512 a56245b617fa049bcc62ee78e85167e322b632e53d2a6bc3e042e1cb0541ea0004aee4b957f9190c30685cef935f236d980a224322ac593896abd7a31e36abd2
diff --git a/dev-python/XenAPI/XenAPI-2.14.ebuild b/dev-python/XenAPI/XenAPI-2.14.ebuild
deleted file mode 100644
index f5c99f0c2..000000000
--- a/dev-python/XenAPI/XenAPI-2.14.ebuild
+++ /dev/null
@@ -1,17 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Xen API SDK, for communication with Citrix XenServer and Xen Cloud Platform"
-HOMEPAGE="http://community.citrix.com/display/xs/Download+SDKs"
-SRC_URI="mirror://pypi/X/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-2"
-SLOT="0"
-KEYWORDS="~amd64"
-
-DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
diff --git a/dev-python/XenAPI/metadata.xml b/dev-python/XenAPI/metadata.xml
deleted file mode 100644
index 8f8712d85..000000000
--- a/dev-python/XenAPI/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <remote-id type="pypi">XenAPI</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/adb-shell/Manifest b/dev-python/adb-shell/Manifest
new file mode 100644
index 000000000..b02bd49af
--- /dev/null
+++ b/dev-python/adb-shell/Manifest
@@ -0,0 +1,2 @@
+DIST adb-shell-0.4.3.gh.tar.gz 75004 BLAKE2B c7e49766dfa70db60eb300f747957397c252325670b40d0d7355ae321558ac671bdcc5beb6b16876b79f7d803b933c1d26d41a5799b4fe058fbdb9739442389a SHA512 be6d5a86ab094af0191dccea816a6688ed8d0e33811efe810d6d6306e0ff30f2afddc8f51e48981eb0d767eb4f98ab0fbbac924b7340f217b7bfbbf800241e54
+DIST adb-shell-0.4.4.gh.tar.gz 77869 BLAKE2B f10cfd62fee6a7f81ef47b91b32fc2ea53121c29388bcd6722c2c30276f0f81d69dd93c63c9bb376009dda1ce0b0163a675672e882824619e6b858b5af44b27b SHA512 55533cdc04b5ff78bd5edbbf784a624ba33885933061fd7399194b529ce1d93deb8fea358909c6aee0133e95e4d6865be07a5ad48a612bb01686ae9f0e29565b
diff --git a/dev-python/adb-shell/adb-shell-0.4.3.ebuild b/dev-python/adb-shell/adb-shell-0.4.3.ebuild
new file mode 100644
index 000000000..fccb97f6e
--- /dev/null
+++ b/dev-python/adb-shell/adb-shell-0.4.3.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_11 )
+
+inherit distutils-r1
+
+DESCRIPTION="A Python implementation of ADB with shell and FileSync functionality."
+HOMEPAGE="https://pypi.org/project/adb-shell/ https://github.com/JeffLIrion/adb_shell"
+SRC_URI="https://github.com/JeffLIrion/adb_shell/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+S="${WORKDIR}/adb_shell-${PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/aiofiles[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ dev-python/rsa[${PYTHON_USEDEP}]
+"
+DEPEND="test? (
+ ${RDEPEND}
+ dev-python/pycryptodome[${PYTHON_USEDEP}]
+ dev-python/libusb1[${PYTHON_USEDEP}]
+
+)"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+distutils_enable_tests unittest
diff --git a/dev-python/adb-shell/adb-shell-0.4.4-r1.ebuild b/dev-python/adb-shell/adb-shell-0.4.4-r1.ebuild
new file mode 100644
index 000000000..9334ecc9d
--- /dev/null
+++ b/dev-python/adb-shell/adb-shell-0.4.4-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_11 )
+
+inherit distutils-r1
+
+DESCRIPTION="A Python implementation of ADB with shell and FileSync functionality."
+HOMEPAGE="https://pypi.org/project/adb-shell/ https://github.com/JeffLIrion/adb_shell"
+SRC_URI="https://github.com/JeffLIrion/adb_shell/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+S="${WORKDIR}/adb_shell-${PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/aiofiles[${PYTHON_USEDEP}]
+ dev-python/async-timeout[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ dev-python/rsa[${PYTHON_USEDEP}]
+"
+DEPEND="test? (
+ ${RDEPEND}
+ dev-python/pycryptodome[${PYTHON_USEDEP}]
+ dev-python/libusb1[${PYTHON_USEDEP}]
+
+)"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+distutils_enable_tests unittest
diff --git a/dev-python/adb-shell/adb-shell-0.4.4.ebuild b/dev-python/adb-shell/adb-shell-0.4.4.ebuild
new file mode 100644
index 000000000..fccb97f6e
--- /dev/null
+++ b/dev-python/adb-shell/adb-shell-0.4.4.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_11 )
+
+inherit distutils-r1
+
+DESCRIPTION="A Python implementation of ADB with shell and FileSync functionality."
+HOMEPAGE="https://pypi.org/project/adb-shell/ https://github.com/JeffLIrion/adb_shell"
+SRC_URI="https://github.com/JeffLIrion/adb_shell/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+S="${WORKDIR}/adb_shell-${PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/aiofiles[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ dev-python/rsa[${PYTHON_USEDEP}]
+"
+DEPEND="test? (
+ ${RDEPEND}
+ dev-python/pycryptodome[${PYTHON_USEDEP}]
+ dev-python/libusb1[${PYTHON_USEDEP}]
+
+)"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+distutils_enable_tests unittest
diff --git a/dev-python/adb-shell/metadata.xml b/dev-python/adb-shell/metadata.xml
new file mode 100644
index 000000000..66ade2abf
--- /dev/null
+++ b/dev-python/adb-shell/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">JeffLIrion/adb_shell</remote-id>
+ <remote-id type="pypi">adb-shell</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/ahocorasick/Manifest b/dev-python/ahocorasick/Manifest
new file mode 100644
index 000000000..72b4c43d0
--- /dev/null
+++ b/dev-python/ahocorasick/Manifest
@@ -0,0 +1 @@
+DIST pyahocorasick-2.0.0.tar.gz 99662 BLAKE2B 0cc0e7de18c035e3f6b0dff7da421df8ea47c7d2d93ba8b5e2fa4f3b36e11efa688b0d67c5224e7cc55e6d410f86a2af3502d482c7c0a8db6d45d0518216625e SHA512 38bc56c67ada0af6ae124d8c98dc933cbf26861e522288fa6152dde4f75ea49870c35dd041de2cfc2e16f5767c3da3af83b20f35af0788c662da00707b080fa6
diff --git a/dev-python/ahocorasick/ahocorasick-2.0.0.ebuild b/dev-python/ahocorasick/ahocorasick-2.0.0.ebuild
new file mode 100644
index 000000000..8afff33d9
--- /dev/null
+++ b/dev-python/ahocorasick/ahocorasick-2.0.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_EXT=1
+PYTHON_COMPAT=( python3_{8..12} )
+PYPI_PN="py${PN}"
+PYPI_NO_NORMALIZE=1
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python module implementing Aho-Corasick algorithm"
+HOMEPAGE="https://github.com/WojciechMula/pyahocorasick"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+distutils_enable_tests pytest
diff --git a/dev-python/ahocorasick/metadata.xml b/dev-python/ahocorasick/metadata.xml
new file mode 100644
index 000000000..4442d5ac0
--- /dev/null
+++ b/dev-python/ahocorasick/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
+ </maintainer>
+ <longdescription lang="en">
+ pyahocorasick is a fast and memory efficient library for exact or
+ approximate multi-pattern string search meaning that you can find
+ multiple key strings occurrences at once in some input text.
+ The library provides an ahocorasick Python module that you can use
+ as a plain dict-like Trie or convert a Trie to an automaton for
+ efficient Aho-Corasick search.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">WojciechMula/pyahocorasick</remote-id>
+ <remote-id type="pypi">pyahocorasick</remote-id>
+ </upstream>
+</pkgmetadata>
+
diff --git a/dev-python/aiomysql/Manifest b/dev-python/aiomysql/Manifest
new file mode 100644
index 000000000..fa6fcb8a1
--- /dev/null
+++ b/dev-python/aiomysql/Manifest
@@ -0,0 +1 @@
+DIST aiomysql-0.1.1.tar.gz 106303 BLAKE2B d7726ba0c8bf27d115b6bae092679e4365debf22ecb01eb1dd0664396d29c43c49a9b3c30bc585d91d2866dc1f48dd61bc4464afe445ba4d77f7a9232bb23649 SHA512 b83a91465caf756f8a3046651d90b5a39d9b2714d96d8bb1c6df4fa6b47189c24979d88901d7f7fb1d2dd235c4a19e2d9ed3f73c8ace42950d12e1cdbb0e46ac
diff --git a/dev-python/aiomysql/aiomysql-0.1.1.ebuild b/dev-python/aiomysql/aiomysql-0.1.1.ebuild
new file mode 100644
index 000000000..5baa1e318
--- /dev/null
+++ b/dev-python/aiomysql/aiomysql-0.1.1.ebuild
@@ -0,0 +1,65 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit databases distutils-r1
+
+DESCRIPTION="aiomysql is a library for accessing a MySQL database from the asyncio"
+HOMEPAGE="
+ https://pypi.python.org/pypi/aiomysql
+ https://github.com/aio-libs/aiomysql
+ https://aiomysql.readthedocs.io/en/latest/
+"
+SRC_URI="https://github.com/aio-libs/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-python/pymysql[${PYTHON_USEDEP}]"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ ${DATABASES_DEPEND[mysql]}
+ $(python_gen_impl_dep "ssl")
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ dev-python/uvloop[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( CHANGES.txt {CONTRIBUTING,README}.rst )
+PATCHES=( "${FILESDIR}/${P}-git_archive.patch" )
+
+EPYTEST_IGNORE=(
+ # No Table.count() method in recent PyMySQL
+ tests/test_async_with.py
+ tests/sa/test_sa_connection.py
+ tests/sa/test_sa_transaction.py
+)
+
+distutils_enable_tests pytest
+
+#distutils_enable_sphinx docs \
+ #dev-python/sphinxcontrib-asyncio
+
+python_test() {
+ epytest "${S}"/tests --mysql-unix-socket "$(emysql --get-sockfile)"
+}
+
+src_test() {
+ emysql --start 3333
+ local sockfile=$(emysql --get-sockfile)
+ local -x MYSQL_ROOT_PASSWORD="rootpw"
+
+ ebegin "Changing database password"
+ mysql --user=root --socket="${sockfile}" --silent \
+ --execute="ALTER USER 'root'@'localhost' IDENTIFIED BY '${MYSQL_ROOT_PASSWORD}';"
+ eend $? || emysql --die "Changing database password failed"
+
+ distutils-r1_src_test
+
+ emysql --stop
+}
diff --git a/dev-python/aiomysql/files/aiomysql-0.1.1-git_archive.patch b/dev-python/aiomysql/files/aiomysql-0.1.1-git_archive.patch
new file mode 100644
index 000000000..6663bb74a
--- /dev/null
+++ b/dev-python/aiomysql/files/aiomysql-0.1.1-git_archive.patch
@@ -0,0 +1,12 @@
+diff --git a/pyproject.toml b/pyproject.toml
+index 4e903b7..ad127f2 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -5,7 +5,6 @@ requires = [
+
+ # Plugins
+ "setuptools_scm[toml] >= 6.4",
+- "setuptools_scm_git_archive >= 1.1",
+ ]
+ build-backend = "setuptools.build_meta"
+
diff --git a/dev-python/aiomysql/metadata.xml b/dev-python/aiomysql/metadata.xml
new file mode 100644
index 000000000..35e897761
--- /dev/null
+++ b/dev-python/aiomysql/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">aio-libs/aiomysql</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/aionotify/Manifest b/dev-python/aionotify/Manifest
deleted file mode 100644
index 58d0b4a94..000000000
--- a/dev-python/aionotify/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST aionotify-0.2.0.tar.gz 9567 BLAKE2B a4b32519c2cfeb9dd87cb94e9363335cc39e3060631c7085825289183a94f2f5b073e4b0f737fe592f967c83ea05741b0b956fbd956d61ac4289dfde0bdc777a SHA512 23c1a6f86076c069346721cdce89f2aea656ad6afa8c89cbb96ae31bdd478592c9ca475c764da91762dd615454005f82b8666644a3121eb8dfc4b875060d51df
diff --git a/dev-python/aionotify/aionotify-0.2.0.ebuild b/dev-python/aionotify/aionotify-0.2.0.ebuild
deleted file mode 100644
index ec9f1337d..000000000
--- a/dev-python/aionotify/aionotify-0.2.0.ebuild
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Simple, asyncio-based inotify library for Python"
-HOMEPAGE="https://github.com/rbarrois/aionotify"
-SRC_URI="https://github.com/rbarrois/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
diff --git a/dev-python/aionotify/metadata.xml b/dev-python/aionotify/metadata.xml
deleted file mode 100644
index a507be0a7..000000000
--- a/dev-python/aionotify/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <maintainer type="person">
- <email>piotr.staroszczyk@get24.org</email>
- <name>Piotr Staroszczyk</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/aiopg/Manifest b/dev-python/aiopg/Manifest
index 3f8a28ff8..de3f4b5f3 100644
--- a/dev-python/aiopg/Manifest
+++ b/dev-python/aiopg/Manifest
@@ -1,2 +1 @@
-DIST aiopg-1.2.1.tar.gz 197099 BLAKE2B 3c4300724da13d6f9d439a31a0fad02361eb3f95fde90abd4718a2298d291f760e2a4a2c15691cd90a2996c101759422bb372202768f43b2ad6923c4921d1387 SHA512 19c00a77cbf8bc60c7704bcc17f9baab6ec1b0554dc62c1bf8fbd4f97f56636fc5edf9479da5a9c27dfc06108c9d650b3fe5d2cddca445f1ffa7b18cbc1d896c
-DIST aiopg-1.3.2_beta1.tar.gz 202058 BLAKE2B a303ef66ded1a0f77a33d83c0d498e16519521c87e930b3ab9097ac56c8ad6e111e5edc145c869aef2530900f3f2c2400ef785e307c2333053a0dfae1439f2f6 SHA512 855ab21528a8eb572f2b0b7965bcca37cacd42ef79910f4b042c22654c6bb37b2528dd2cddd1fa66dba24cccdc0996ba8281b44bb9d99a1607fc146747ffd642
+DIST aiopg-1.4.0.gh.tar.gz 202204 BLAKE2B 9f4dda868c919aef05e58608b353d51f0526ef1f847e8da8f4f11e75264a47b9eb4d948a87d591e66baf7052c00706b8f4cb6befd6bf33668987cfbfad451afc SHA512 cbb28b0b15eb89fa3162e59e3e88dac18bddbad3d95458b5c3eb487d15767c26810e941f83c3478cac8a8a085b23723690c8d294bf6aac433a14c3defcef1138
diff --git a/dev-python/aiopg/aiopg-1.2.1.ebuild b/dev-python/aiopg/aiopg-1.2.1.ebuild
deleted file mode 100644
index c34f8f75a..000000000
--- a/dev-python/aiopg/aiopg-1.2.1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit distutils-r1 optfeature
-
-DESCRIPTION="aiopg is a library for accessing a PostgreSQL database from the asyncio"
-HOMEPAGE="
- https://aiopg.readthedocs.io
- https://github.com/aio-libs/aiopg
-"
-SRC_URI="https://github.com/aio-libs/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-# tests seem to be wanting to send/recieve things
-# which is probably not allowed inside emerge so they fail?
-RESTRICT="test"
-
-RDEPEND="dev-python/psycopg[${PYTHON_USEDEP}]"
-
-DEPEND="test? (
- dev-python/pytest-timeout[${PYTHON_USEDEP}]
- dev-python/sqlalchemy[${PYTHON_USEDEP}]
-)"
-
-pkg_postinst() {
- optfeature "sqlalchemy support" dev-python/sqlalchemy
-}
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs dev-python/sphinxcontrib-asyncio
diff --git a/dev-python/aiopg/aiopg-1.3.2_beta1.ebuild b/dev-python/aiopg/aiopg-1.4.0.ebuild
index fc777fdc7..467b0a438 100644
--- a/dev-python/aiopg/aiopg-1.3.2_beta1.ebuild
+++ b/dev-python/aiopg/aiopg-1.4.0.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1 optfeature
MY_PV=${PV/_beta/b}
@@ -13,7 +13,7 @@ HOMEPAGE="
https://aiopg.readthedocs.io
https://github.com/aio-libs/aiopg
"
-SRC_URI="https://github.com/aio-libs/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/aio-libs/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
S="${WORKDIR}/${PN}-${MY_PV}"
LICENSE="BSD"
@@ -23,10 +23,13 @@ KEYWORDS="~amd64 ~x86"
# tests use docker containers -- that's wild!
RESTRICT="test"
-RDEPEND="dev-python/psycopg[${PYTHON_USEDEP}]"
+RDEPEND="
+ dev-python/async-timeout[${PYTHON_USEDEP}]
+ dev-python/psycopg:2[${PYTHON_USEDEP}]
+"
DEPEND="test? (
- dev-python/docker-py[${PYTHON_USEDEP}]
+ dev-python/docker[${PYTHON_USEDEP}]
dev-python/pytest-timeout[${PYTHON_USEDEP}]
dev-python/sqlalchemy[${PYTHON_USEDEP}]
)"
@@ -34,7 +37,7 @@ DEPEND="test? (
DOCS=( CHANGES.txt README.rst )
distutils_enable_tests pytest
-distutils_enable_sphinx docs dev-python/sphinxcontrib-asyncio
+#distutils_enable_sphinx docs dev-python/sphinxcontrib-asyncio
python_test() {
epytest --no-pull
diff --git a/dev-python/aiopg/metadata.xml b/dev-python/aiopg/metadata.xml
index a507be0a7..630abc02e 100644
--- a/dev-python/aiopg/metadata.xml
+++ b/dev-python/aiopg/metadata.xml
@@ -1,9 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>piotr.staroszczyk@get24.org</email>
- <name>Piotr Staroszczyk</name>
- </maintainer>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">aio-libs/aiopg</remote-id>
+ <maintainer>
+ <name>Andrew Svetlov</name>
+ <email>andrew.svetlov@gmail.com</email>
+ </maintainer>
+ <maintainer>
+ <name>Alexey Firsov</name>
+ <email>virmir49@gmail.com</email>
+ </maintainer>
+ <maintainer>
+ <name>Alexey Popravka</name>
+ <email>alexey.popravka@horsedevel.com</email>
+ </maintainer>
+ <maintainer>
+ <name>Yury Pliner</name>
+ <email>yury.pliner@gmail.com</email>
+ </maintainer>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/aiosmtplib/Manifest b/dev-python/aiosmtplib/Manifest
deleted file mode 100644
index 239317649..000000000
--- a/dev-python/aiosmtplib/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST aiosmtplib-1.1.6.tar.gz 55637 BLAKE2B e2f3ccf01fdd1e488d1159ad711325957fd9831c56561a58e2f0a67e42f28b295903bd046b4dddac6686b99753911f7eea9d882e5060a09687541b3ace716e26 SHA512 6a5d79e1c55b5fa5f8961ce2e52dff55ec440c32fae4a78543338fdcf045a92801b71b2d86999d338e300fbc1a385370786e103fc3c4630e81098c85f2f57ea1
diff --git a/dev-python/aiosmtplib/aiosmtplib-1.1.6.ebuild b/dev-python/aiosmtplib/aiosmtplib-1.1.6.ebuild
deleted file mode 100644
index c3e86b778..000000000
--- a/dev-python/aiosmtplib/aiosmtplib-1.1.6.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_USE_SETUPTOOLS=pyproject.toml
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Asynchronous SMTP client for use with asyncio"
-HOMEPAGE="https://pypi.org/project/aiosmtplib/ https://github.com/cole/aiosmtplib"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-DEPEND="
- test? (
- dev-python/aiosmtpd
- dev-python/atpublic
- dev-python/hypothesis
- dev-python/pytest-asyncio
- )
-"
-
-RESTRICT="mirror"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs "dev-python/sphinx-autodoc-typehints"
-
-python_test() {
- epytest --event-loop=asyncio \
- --deselect tests/test_connect.py::test_connect_via_socket_path
-}
diff --git a/dev-python/aiosmtplib/metadata.xml b/dev-python/aiosmtplib/metadata.xml
deleted file mode 100644
index 28bfb7940..000000000
--- a/dev-python/aiosmtplib/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>gentoo@samip.fi</email>
- <name>Skyler Mäntysaari</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/aiosqlite/Manifest b/dev-python/aiosqlite/Manifest
deleted file mode 100644
index fb7002456..000000000
--- a/dev-python/aiosqlite/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST aiosqlite-0.17.0.tar.gz 25941 BLAKE2B 869d165bc8c791cb94159f6508f5113d915f5531117d0d79ac1f297de16cbb78574a7eaafc1bceccc9e4397f88f490b90d49becb4b7cc2c0d51e14f0afd7561b SHA512 50f9965ef7dafe91a2f41dc41489395e437080aa4b7853800d806d21f4f8042d92ff6cfd2aeadefa7ca5e4debd14f39d93ca28c89f3116b3b61b2e8829533e6e
diff --git a/dev-python/aiosqlite/aiosqlite-0.17.0-r1.ebuild b/dev-python/aiosqlite/aiosqlite-0.17.0-r1.ebuild
deleted file mode 100644
index ac181b019..000000000
--- a/dev-python/aiosqlite/aiosqlite-0.17.0-r1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-DISTUTILS_USE_SETUPTOOLS="pyproject.toml"
-inherit distutils-r1
-
-DESCRIPTION="asyncio bridge to the standard sqlite3 module"
-HOMEPAGE="
- https://aiosqlite.omnilib.dev
- https://pypi.org/project/aiosqlite
- https://github.com/jreese/aiosqlite
-"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="dev-python/typing-extensions[${PYTHON_USEDEP}]"
-BDEPEND="test? (
- dev-python/aiounittest[${PYTHON_USEDEP}]
-)"
-
-distutils_enable_tests unittest
-# AttributeError: 'str' object has no attribute 'supported'
-#distutils_enable_sphinx docs dev-python/m2r
diff --git a/dev-python/aiosqlite/metadata.xml b/dev-python/aiosqlite/metadata.xml
deleted file mode 100644
index a507be0a7..000000000
--- a/dev-python/aiosqlite/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <maintainer type="person">
- <email>piotr.staroszczyk@get24.org</email>
- <name>Piotr Staroszczyk</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/aiounittest/Manifest b/dev-python/aiounittest/Manifest
deleted file mode 100644
index 754319e1a..000000000
--- a/dev-python/aiounittest/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST aiounittest-1.4.0.tar.gz 15316 BLAKE2B 7b2eb9a0b92428b71b01c20b4d48f27cc5a2d32d4cdd93e1b22d27f8e7afb6d1d3af9549564358a418baec3db206eca7b1cc23d6b26410683dacebb9b84e0fc8 SHA512 5a8921debbf3be4a36e1ac4af39cdb46f802c06454b3be06c2b143122ba016d6badbb496b18d9379cb9a4b99c9fb7facc59f0676c5a776859c408fd1bdd74e1f
diff --git a/dev-python/aiounittest/aiounittest-1.4.0.ebuild b/dev-python/aiounittest/aiounittest-1.4.0.ebuild
deleted file mode 100644
index a2165b483..000000000
--- a/dev-python/aiounittest/aiounittest-1.4.0.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-inherit distutils-r1
-
-DESCRIPTION="Test python asyncio-based code with ease"
-HOMEPAGE="https://github.com/kwarunek/aiounittest"
-SRC_URI="https://github.com/kwarunek/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-RDEPEND="dev-python/wrapt[${PYTHON_USEDEP}]"
-
-distutils_enable_tests nose
-# Reason: TemplateNotFound('g')
-#distutils_enable_sphinx docs
diff --git a/dev-python/aiounittest/metadata.xml b/dev-python/aiounittest/metadata.xml
deleted file mode 100644
index a507be0a7..000000000
--- a/dev-python/aiounittest/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <maintainer type="person">
- <email>piotr.staroszczyk@get24.org</email>
- <name>Piotr Staroszczyk</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/almost/Manifest b/dev-python/almost/Manifest
deleted file mode 100644
index c18f6bb2a..000000000
--- a/dev-python/almost/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST almost-0.1.5.tar.gz 4529 BLAKE2B 098b6fdaf03799fe6269249cfbd1609e514fa2672c3f71bef6feb16e7679a16d1ea45845cfe2d355c4cb1e39936fa356e50af94f1c7d6a67c7491b6bf1fdedcd SHA512 707bad3a4ef0a910271af93c739a9139b10e5afbadfd329a522ab3992a6a7baf47b0f272154482eabecf3029814542eaef535baea5f7995b7fd39c0a51671b4c
diff --git a/dev-python/almost/almost-0.1.5.ebuild b/dev-python/almost/almost-0.1.5.ebuild
deleted file mode 100644
index 09e1e2cc7..000000000
--- a/dev-python/almost/almost-0.1.5.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="8"
-
-COMMIT="cc3eeb0abde7ff95a222d571443989c74a112ff7"
-DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="A helper for approximate comparison"
-HOMEPAGE="
- https://github.com/sublee/almost
- https://pypi.org/project/almost
-"
-SRC_URI="https://github.com/sublee/almost/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/${PN}-${COMMIT}"
-
-SLOT="0"
-LICENSE="BSD"
-KEYWORDS="~amd64"
-IUSE="test"
-
-DEPEND="test? ( dev-python/pytest[${PYTHON_USEDEP}] )"
-
-RESTRICT="!test? ( test )"
-PATCHES=( "${FILESDIR}/${P}-setuptools.patch" )
-
-distutils_enable_tests setup.py
diff --git a/dev-python/almost/files/almost-0.1.5-setuptools.patch b/dev-python/almost/files/almost-0.1.5-setuptools.patch
deleted file mode 100644
index fc87ec01f..000000000
--- a/dev-python/almost/files/almost-0.1.5-setuptools.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/setup.py
-+++ b/setup.py
-@@ -82,7 +82,7 @@
- 'Programming Language :: Python :: Implementation :: Jython',
- 'Programming Language :: Python :: Implementation :: PyPy',
- 'Topic :: Software Development :: Testing'],
-- install_requires=['distribute'],
-+ install_requires=['setuptools'],
- test_suite='almosttests',
- tests_require=['pytest'],
- )
diff --git a/dev-python/almost/metadata.xml b/dev-python/almost/metadata.xml
deleted file mode 100644
index 13f1d02d7..000000000
--- a/dev-python/almost/metadata.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/sublee/almost/issues</bugs-to>
- <maintainer>
- <email>sub@subl.ee</email>
- <name>Heungsub Lee</name>
- </maintainer>
- <remote-id type="pypi">almost</remote-id>
- <remote-id type="github">sublee/almost</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/aodhclient/Manifest b/dev-python/aodhclient/Manifest
deleted file mode 100644
index 5e9751ea8..000000000
--- a/dev-python/aodhclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST aodhclient-2.1.1.tar.gz 46687 BLAKE2B 5f229e36f1b840b346fb4c85ca52185d6c3714c9f75e269ab7cfc8dc010c3afb08d387d06d419fb81cb3b8b1056afe970bc6e8c91dbe5e62c048e7c1f1fac36d SHA512 acb8f2571caa248a35625335f5c04794ff24c16bc775cad8f78621dfe159645d6ed39da62722fc990cea1c5f86b4bd08f40d1c5c82d08b632f913367fc723386
diff --git a/dev-python/aodhclient/aodhclient-2.1.1.ebuild b/dev-python/aodhclient/aodhclient-2.1.1.ebuild
deleted file mode 100644
index 13c581ce7..000000000
--- a/dev-python/aodhclient/aodhclient-2.1.1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="A client for the OpenStack Aodh API"
-HOMEPAGE="https://github.com/openstack/python-aodhclient"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-
-DEPEND=">=dev-python/pbr-1.8[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/pbr-1.8[${PYTHON_USEDEP}]
- >=dev-python/cliff-1.14.0[${PYTHON_USEDEP}]
- !~dev-python/cliff-1.16.0[${PYTHON_USEDEP}]
- >=dev-python/osc-lib-1.0.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.16.0[${PYTHON_USEDEP}]
- >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-2.10.0[${PYTHON_USEDEP}]
- >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
- dev-python/pyparsing[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/aodhclient/metadata.xml b/dev-python/aodhclient/metadata.xml
deleted file mode 100644
index 32907fdb2..000000000
--- a/dev-python/aodhclient/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-aodhclient</remote-id>
- <remote-id type="github">openstack/python-aodhclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/arpy/Manifest b/dev-python/arpy/Manifest
new file mode 100644
index 000000000..ac5cd29f5
--- /dev/null
+++ b/dev-python/arpy/Manifest
@@ -0,0 +1 @@
+DIST arpy-2.3.0.tar.gz 9572 BLAKE2B fd3f35fe4b7cf5e0fd31679a2bd181411b8e4e2952bd646795601cee1f42e6675c144e73da56715b4468d47e19b1c0a8e4f106ea789dcd4efaf490a90c956a6a SHA512 307275e1459751acf3f2faa17609a08428b20c65c03225c0787ac980ee5e59b84ab4e8266c72cf085a56fd23d8d95120fff9dd25a2e875dbf224905b62829086
diff --git a/dev-python/arpy/arpy-2.3.0.ebuild b/dev-python/arpy/arpy-2.3.0.ebuild
new file mode 100644
index 000000000..df3fd3e47
--- /dev/null
+++ b/dev-python/arpy/arpy-2.3.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Library for accessing ar files"
+HOMEPAGE="https://github.com/viraptor/arpy"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="test"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+distutils_enable_tests unittest
+
+python_test() {
+ eunittest -v test
+}
diff --git a/dev-python/py3nvml/metadata.xml b/dev-python/arpy/metadata.xml
index 8bd3f1784..2d5b733e2 100644
--- a/dev-python/py3nvml/metadata.xml
+++ b/dev-python/arpy/metadata.xml
@@ -2,11 +2,11 @@
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>myrvogna@electrosphe.re</email>
- <name>Octiabrina Terrien-Puig</name>
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
</maintainer>
<upstream>
- <remote-id type="pypi">py3nvml</remote-id>
- <remote-id type="github">fbcotter/py3nvml</remote-id>
+ <remote-id type="github">viraptor/arpy</remote-id>
+ <remote-id type="pypi">arpy</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-python/asciimatics/Manifest b/dev-python/asciimatics/Manifest
deleted file mode 100644
index d92fb4dc1..000000000
--- a/dev-python/asciimatics/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST asciimatics-1.13.0.tar.gz 2521962 BLAKE2B 35b564f7b0a33c658b93ad8bdad5bfb53c12da8dbe3347c1651fe3e1886c1721282455c7a668cbc85a12cd34944cc4d701d86862a622efb384739122ad983ba5 SHA512 b3943765c151b030e41bb08f3e85891449fb51533b18fae792289274f53b8548d2c7507533a56eb45797c9f44ae4963c0c247c37d6f375535900a4204238a95f
diff --git a/dev-python/asciimatics/asciimatics-1.13.0.ebuild b/dev-python/asciimatics/asciimatics-1.13.0.ebuild
deleted file mode 100644
index 7a1e7728e..000000000
--- a/dev-python/asciimatics/asciimatics-1.13.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-inherit distutils-r1
-
-DESCRIPTION="Package for curses-like operations, text UIs and ASCII art animations"
-HOMEPAGE="https://pypi.org/project/asciimatics/ https://github.com/peterbrittain/asciimatics"
-
-if [[ "${PV}" == 9999 ]]
-then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/peterbrittain/asciimatics.git"
-else
- SRC_URI="https://github.com/peterbrittain/asciimatics/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64"
-fi
-
-LICENSE="Apache-2.0"
-SLOT="0"
-
-RESTRICT="mirror test"
-
-RDEPEND="
- >=dev-python/pyfiglet-0.7.2[${PYTHON_USEDEP}]
- >=dev-python/pillow-2.7.0[${PYTHON_USEDEP}]
- dev-python/wcwidth[${PYTHON_USEDEP}]
- dev-python/future[${PYTHON_USEDEP}]
-"
-
-src_prepare() {
- default
- sed -i -e "s/use_scm_version={/\0'fallback_version': '${PV}',/" setup.py
-}
diff --git a/dev-python/asciimatics/asciimatics-9999.ebuild b/dev-python/asciimatics/asciimatics-9999.ebuild
deleted file mode 100644
index 47254c49f..000000000
--- a/dev-python/asciimatics/asciimatics-9999.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-inherit distutils-r1
-
-DESCRIPTION="Package for curses-like operations, text UIs and ASCII art animations"
-HOMEPAGE="https://pypi.org/project/asciimatics/ https://github.com/peterbrittain/asciimatics"
-
-if [[ "${PV}" == 9999 ]]
-then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/peterbrittain/asciimatics.git"
-else
- SRC_URI="https://github.com/peterbrittain/asciimatics/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64"
-fi
-
-LICENSE="Apache-2.0"
-SLOT="0"
-
-RESTRICT="mirror"
-
-RDEPEND="
- >=dev-python/pyfiglet-0.7.2[${PYTHON_USEDEP}]
- >=dev-python/pillow-2.7.0[${PYTHON_USEDEP}]
- dev-python/wcwidth[${PYTHON_USEDEP}]
- dev-python/future[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- ${RDEPEND}
- dev-python/mock
- )
-"
-
-distutils_enable_tests nose
diff --git a/dev-python/asciimatics/metadata.xml b/dev-python/asciimatics/metadata.xml
deleted file mode 100644
index 89cf7a58f..000000000
--- a/dev-python/asciimatics/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>coppens.matthias.abc@gmail.com</email>
- <name>Matthias Coppens</name>
- </maintainer>
- <upstream>
- <doc>https://asciimatics.readthedocs.io/en/stable/</doc>
- <remote-id type="github">peterbrittain/asciimatics</remote-id>
- <remote-id type="pypi">asciimatics</remote-id>
- <bugs-to>https://github.com/peterbrittain/asciimatics/issues</bugs-to>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/ascim/Manifest b/dev-python/ascim/Manifest
index 2e38aa4a9..98a316774 100644
--- a/dev-python/ascim/Manifest
+++ b/dev-python/ascim/Manifest
@@ -1 +1 @@
-DIST ascim-0.1.1.tar.gz 10745 BLAKE2B a417c98c67e14f742a062014792e686e4c95af1d489a2ef9cd4a56a5fe056f2b825f991f6af735397bcdb3e161fba34b961859fb90ea7e85c655ea73f34e54be SHA512 abcb86399da13d1481d20025360efcced08fbb5117af63aa74af146ad72a455cefa5799578f7f5668db455b37cf6cbfcc04a9f418315870c0d754c9e98e98f26
+DIST ascim-0.1.1.gh.tar.gz 10745 BLAKE2B a417c98c67e14f742a062014792e686e4c95af1d489a2ef9cd4a56a5fe056f2b825f991f6af735397bcdb3e161fba34b961859fb90ea7e85c655ea73f34e54be SHA512 abcb86399da13d1481d20025360efcced08fbb5117af63aa74af146ad72a455cefa5799578f7f5668db455b37cf6cbfcc04a9f418315870c0d754c9e98e98f26
diff --git a/dev-python/ascim/ascim-0.1.1.ebuild b/dev-python/ascim/ascim-0.1.1.ebuild
index 4adefca36..cd5f68d6f 100644
--- a/dev-python/ascim/ascim-0.1.1.ebuild
+++ b/dev-python/ascim/ascim-0.1.1.ebuild
@@ -1,24 +1,18 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-EGIT_REPO_URI="https://github.com/fakefred/${PN}"
-case "${PV}" in
- 9999)
- inherit git-r3
- ;;
- *)
- SRC_URI="${EGIT_REPO_URI}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64"
-esac
-
-PYTHON_COMPAT=( python3_{7,8} )
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
-distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
DESCRIPTION="Manipulate ASCII art as you would do with raster images"
HOMEPAGE="https://github.com/fakefred/ascim"
-LICENSE="MIT"
+SRC_URI="https://github.com/fakefred/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+LICENSE="MIT"
SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_sphinx docs dev-python/sphinx-rtd-theme
diff --git a/dev-python/ascim/ascim-9999.ebuild b/dev-python/ascim/ascim-9999.ebuild
deleted file mode 100644
index 4adefca36..000000000
--- a/dev-python/ascim/ascim-9999.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-EGIT_REPO_URI="https://github.com/fakefred/${PN}"
-case "${PV}" in
- 9999)
- inherit git-r3
- ;;
- *)
- SRC_URI="${EGIT_REPO_URI}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64"
-esac
-
-PYTHON_COMPAT=( python3_{7,8} )
-inherit distutils-r1
-distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
-
-DESCRIPTION="Manipulate ASCII art as you would do with raster images"
-HOMEPAGE="https://github.com/fakefred/ascim"
-LICENSE="MIT"
-
-SLOT="0"
diff --git a/dev-python/ascim/metadata.xml b/dev-python/ascim/metadata.xml
index 41d14a1ef..870a9ad63 100644
--- a/dev-python/ascim/metadata.xml
+++ b/dev-python/ascim/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>coppens.matthias.abc@gmail.com</email>
- <name>Matthias Coppens</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<doc>https://github.com/fakefred/ascim#usage</doc>
<bugs-to>https://github.com/fakefred/ascim/issues</bugs-to>
diff --git a/dev-python/asgi-lifespan/Manifest b/dev-python/asgi-lifespan/Manifest
new file mode 100644
index 000000000..e32f4569f
--- /dev/null
+++ b/dev-python/asgi-lifespan/Manifest
@@ -0,0 +1 @@
+DIST asgi-lifespan-2.1.0.gh.tar.gz 10652 BLAKE2B 95a37be55b361741f8afe6c102b719e5b21582f642712988f342c93d848dcf164b53b7112c0f423b1f035a7eeb060867b68f177aead0bf398e7997043da8aeb3 SHA512 cd2be831a8ae7eac1545e87b43158dfe2fc52edf25538907edb6efe54eb7155ccac9f3972fdd10cff41974cd32fe312f7648a4757ee2ab40dc295f1a61875348
diff --git a/dev-python/asgi-lifespan/asgi-lifespan-2.1.0.ebuild b/dev-python/asgi-lifespan/asgi-lifespan-2.1.0.ebuild
new file mode 100644
index 000000000..dd901bc63
--- /dev/null
+++ b/dev-python/asgi-lifespan/asgi-lifespan-2.1.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Programmatic startup/shutdown of ASGI apps"
+HOMEPAGE="
+ https://pypi.org/project/asgi-lifespan/
+ https://github.com/florimondmanca/asgi-lifespan
+"
+SRC_URI="https://github.com/florimondmanca/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-python/sniffio[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ dev-python/httpx[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-trio[${PYTHON_USEDEP}]
+ dev-python/starlette[${PYTHON_USEDEP}]
+ dev-python/trio[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ rm setup.cfg || die
+}
diff --git a/dev-python/asgi-lifespan/metadata.xml b/dev-python/asgi-lifespan/metadata.xml
new file mode 100644
index 000000000..fc3580161
--- /dev/null
+++ b/dev-python/asgi-lifespan/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">asgi-lifespan</remote-id>
+ <remote-id type="github">florimondmanca/asgi-lifespan</remote-id>
+ <maintainer>
+ <name>Florimond Manca</name>
+ <email>florimond.manca@protonmail.com</email>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/aspectlib/Manifest b/dev-python/aspectlib/Manifest
index c0a357938..d54f34361 100644
--- a/dev-python/aspectlib/Manifest
+++ b/dev-python/aspectlib/Manifest
@@ -1 +1 @@
-DIST aspectlib-1.5.2.tar.gz 155976 BLAKE2B a5f98c78e098226002a9cfb95cd69d2da057fe5a56cab5ae13c80666e1220c8a0fb9ae1b3f652e85d54ab9829429f9aad37162eac9cc74a4ffaab9ab1f609c1c SHA512 33642f828989d07c6af78bdf9adc9f2abbc419df89b878cfe7bd9c8df226a59401176b56b1f2b3ba48661ea5a145520de0bc7a0980226b742b0a79f31ab7dd7f
+DIST aspectlib-2.0.0.tar.gz 156591 BLAKE2B b3800164e25e4414fe502fc62efcce163070d743cd1f4ebc6f95a51123895cf0ce72f1df5088a580a345f48b2dd03cf30340b4a7b27c0cf6ecab614e6e79da38 SHA512 3611d3f887febae8a60df6ad5567437adaa2105e6622a7d9b543c02f593c9dee43002cd91b89f5d005fc70a8b197b5c568eefa3a0fdb6fc05665f4a1c5107316
diff --git a/dev-python/aspectlib/aspectlib-1.5.2.ebuild b/dev-python/aspectlib/aspectlib-1.5.2.ebuild
deleted file mode 100644
index 30b270f7c..000000000
--- a/dev-python/aspectlib/aspectlib-1.5.2.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-inherit distutils-r1
-
-DESCRIPTION="An aspect-oriented programming, monkey-patch and decorators library"
-HOMEPAGE="
- https://github.com/ionelmc/python-aspectlib
- https://pypi.org/project/python-aspectlib
-"
-SRC_URI="https://github.com/ionelmc/python-${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-RDEPEND="dev-python/fields[${PYTHON_USEDEP}]"
-BDEPEND="test? (
- dev-python/process-tests[${PYTHON_USEDEP}]
- www-servers/tornado[${PYTHON_USEDEP}]
-)"
-
-S="${WORKDIR}/python-${P}"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs dev-python/sphinx-py3doc-enhanced-theme
-
-python_test() {
- local epytest_args=(
- # fails because error message text is slightly different
- --deselect tests/test_aspectlib_test.py::test_story_empty_play_proxy_class
- --deselect tests/test_aspectlib_test.py::test_story_half_play_proxy_class
- # Test fails with tornado>=6
- # https://github.com/ionelmc/python-aspectlib/issues/15
- --deselect tests/test_integrations_py3.py::test_decorate_tornado_coroutine
- )
- epytest "${epytest_args[@]}"
-}
diff --git a/dev-python/aspectlib/aspectlib-2.0.0-r1.ebuild b/dev-python/aspectlib/aspectlib-2.0.0-r1.ebuild
new file mode 100644
index 000000000..f63949dbf
--- /dev/null
+++ b/dev-python/aspectlib/aspectlib-2.0.0-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="Aspect-oriented programming, monkey-patch and decorators library"
+HOMEPAGE="
+ https://github.com/ionelmc/python-aspectlib
+ https://pypi.org/project/aspectlib/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="dev-python/fields[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ dev-python/process-tests[${PYTHON_USEDEP}]
+ dev-python/tornado[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-py3doc-enhanced-theme
+
+EEPYTEST_DESELECT=(
+ # fails because error message text is slightly different
+ tests/test_aspectlib_test.py::test_story_empty_play_proxy_class
+ tests/test_aspectlib_test.py::test_story_half_play_proxy_class
+)
diff --git a/dev-python/aspectlib/metadata.xml b/dev-python/aspectlib/metadata.xml
index 3a4e403f6..2a6d2bf5b 100644
--- a/dev-python/aspectlib/metadata.xml
+++ b/dev-python/aspectlib/metadata.xml
@@ -1,16 +1,14 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
+ <!-- maintainer-needed -->
+ <longdescription lang="en">
An aspect-oriented programming, monkey-patch and decorators library. It is useful when changing behavior in existing code is desired. It includes tools for debugging and testing: simple mock/record and a complete capture/replay framework.
- </longdescription>
- <upstream>
- <remote-id type="github">ionelmc/python-aspectlib</remote-id>
- <remote-id type="pypi">aspectlib</remote-id>
- </upstream>
+ </longdescription>
+ <upstream>
+ <remote-id type="github">ionelmc/python-aspectlib</remote-id>
+ <remote-id type="pypi">aspectlib</remote-id>
+ <doc>https://python-aspectlib.readthedocs.io/</doc>
+ <changelog>https://python-aspectlib.readthedocs.io/en/latest/changelog.html</changelog>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/asyncinotify/Manifest b/dev-python/asyncinotify/Manifest
new file mode 100644
index 000000000..9f6b18b70
--- /dev/null
+++ b/dev-python/asyncinotify/Manifest
@@ -0,0 +1 @@
+DIST asyncinotify-4.0.1.tar.bz2 15598 BLAKE2B 58bbd6743bc857a12045f99c0a740e656edec2f62f2f6475e7ace4c9276bee4b3ae139001efedeff9d916115edfdc932f430c16b4fe989c0cc995843518b8ef6 SHA512 08dda86e57898ec2ee1cfd8831d7e3f3ca963cf9b0a45e9ad690b976ba13d3a0510f7bd4eff6e6030089af4c14da700276ba0573e0eaa5dc23abe9d09c61bcd3
diff --git a/dev-python/asyncinotify/asyncinotify-4.0.1.ebuild b/dev-python/asyncinotify/asyncinotify-4.0.1.ebuild
new file mode 100644
index 000000000..76c1577d0
--- /dev/null
+++ b/dev-python/asyncinotify/asyncinotify-4.0.1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+MY_PV="v${PV}"
+MY_P="${PN}-${MY_PV}"
+
+DESCRIPTION="An async python inotify package"
+HOMEPAGE="https://gitlab.com/Taywee/asyncinotify"
+SRC_URI="https://gitlab.com/Taywee/${PN}/-/archive/${MY_PV}/${MY_P}.tar.bz2 -> ${P}.tar.bz2"
+
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_sphinx docs "dev-python/tomli"
+
+distutils_enable_tests unittest
diff --git a/dev-python/asyncinotify/metadata.xml b/dev-python/asyncinotify/metadata.xml
new file mode 100644
index 000000000..6bfd0e2fb
--- /dev/null
+++ b/dev-python/asyncinotify/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Kamal Abdellatif</name>
+ <email>gentoo.kamal@tgf.pw</email>
+ </maintainer>
+ <longdescription>
+ An async python inotify package. Kept as simple and easy-to-understand as
+ possible, while still being flexible and powerful. This is built on no external
+ dependencies, and works through ctypes in a very obvious fashion.
+ </longdescription>
+ <upstream>
+ <remote-id type="gitlab">Taywee/asyncinotify</remote-id>
+ <doc>https://asyncinotify.readthedocs.io/en/latest/asyncinotify.html</doc>
+ <maintainer>
+ <name>Taylor C. Richberger</name>
+ <email>tcr@absolute-performance.com</email>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/asyncmy/Manifest b/dev-python/asyncmy/Manifest
new file mode 100644
index 000000000..dcd24947e
--- /dev/null
+++ b/dev-python/asyncmy/Manifest
@@ -0,0 +1 @@
+DIST asyncmy-0.2.8.gh.tar.gz 141544 BLAKE2B 12b18165706da58cf44a2df70e23c20084baf9f4464ca5aa419f7c824fee241963ae1d3c56d6fb098c804916fb09db6e3fda75376b42c5d83bf913f6b07e7e25 SHA512 949c643f79ce8d614bab664c563ed0a79fed1b30e4229d823a3dd2a1c6f01e37df52f7ccde5cadb663cad6474835ad4039fc8f5c314ae4196d1265e537063512
diff --git a/dev-python/asyncmy/asyncmy-0.2.8.ebuild b/dev-python/asyncmy/asyncmy-0.2.8.ebuild
new file mode 100644
index 000000000..de742a792
--- /dev/null
+++ b/dev-python/asyncmy/asyncmy-0.2.8.ebuild
@@ -0,0 +1,74 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_REQ_USE="ssl"
+DISTUTILS_USE_PEP517=poetry
+DISTUTILS_EXT=1
+inherit databases distutils-r1 optfeature
+
+DESCRIPTION="A fast asyncio MySQL driver"
+HOMEPAGE="
+ https://pypi.org/project/asyncmy/
+ https://github.com/long2ice/asyncmy
+"
+SRC_URI="https://github.com/long2ice/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+TEST_S="${S}_test"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ ${DATABASES_DEPEND[mysql]}
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_unpack() {
+ default
+
+ cp -a "${S}" "${TEST_S}" || die
+ rm -r "${TEST_S}"/asyncmy || die
+}
+
+src_test() {
+ emysql --start
+ local sockfile=$(emysql --get-sockfile)
+
+ local myargs=(
+ --user=root
+ --socket="${sockfile}"
+ --silent
+ --execute="ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';"
+ )
+
+ ebegin "Changing database password"
+ mysql "${myargs[@]}"
+ eend $? || emysql --die "Changing database password failed"
+
+ distutils-r1_src_test
+ emysql --stop
+}
+
+python_test() {
+ cd "${T}" || die
+ epytest "${TEST_S}"
+}
+
+python_install() {
+ distutils-r1_python_install
+ find "${ED}"/usr/lib -name '*.md' -delete || die
+ find "${ED}"/usr/lib -name LICENSE -delete || die
+}
+
+pkg_postinst() {
+ optfeature "sha256_password and caching_sha2_password auth methods" dev-python/cryptography
+}
diff --git a/dev-python/asyncmy/metadata.xml b/dev-python/asyncmy/metadata.xml
new file mode 100644
index 000000000..007f9230b
--- /dev/null
+++ b/dev-python/asyncmy/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">asyncmy</remote-id>
+ <remote-id type="github">long2ice/asyncmy</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/asyncpg/Manifest b/dev-python/asyncpg/Manifest
index 2ffeaebfa..cbbcfd1ac 100644
--- a/dev-python/asyncpg/Manifest
+++ b/dev-python/asyncpg/Manifest
@@ -1 +1 @@
-DIST asyncpg-0.23.0.tar.gz 775098 BLAKE2B 8afcbf1a39de87b29089fec871bae36f4bdbb38114d08b9badf7b0e2b2d19b074efe5a2ea90b611bb1d32b3b9365124cc17bba10874d2d73a267fc13028aff6a SHA512 bfb47b9d7faac4c7a0d49164c062b68c3fa3a9abac822b75b975bf41c45f6c6be25c4537140e75e1323fe1615bb03353d5ba50ef13d64c5a646293629a643b39
+DIST asyncpg-0.29.0.tar.gz 820455 BLAKE2B 9bb5606dfb103e066dcfd15c327fe8a8135bf4433c816dc354d84227e40b9f18bb2788ead0dd25b087f97b3113645b6dcfd8991a7bb6e2e71528d122c41105d5 SHA512 5db979496323fcf4068d5de111b52f2ae1ad9efe68f80c28e6303ad936eb051d1792409f1e31fb86dc35caad5ef9b92c40e4f6dcbcccc3907ab2247f61db5504
diff --git a/dev-python/asyncpg/asyncpg-0.23.0.ebuild b/dev-python/asyncpg/asyncpg-0.23.0.ebuild
deleted file mode 100644
index e551bb1b9..000000000
--- a/dev-python/asyncpg/asyncpg-0.23.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..10} )
-
-inherit distutils-r1
-
-DESCRIPTION="A fast PostgreSQL Database Client Library for Python/asyncio."
-HOMEPAGE="https://github.com/MagicStack/asyncpg"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-# ModuleNotFoundError: No module named 'asyncpg.protocol.protocol'
-# for some reason, still doesn't work if package is already installed
-# or with distutils_install_for_testing function
-RESTRICT="test"
-
-BDEPEND="dev-python/cython[${PYTHON_USEDEP}]"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs dev-python/sphinxcontrib-asyncio dev-python/sphinx_rtd_theme
diff --git a/dev-python/asyncpg/asyncpg-0.29.0-r1.ebuild b/dev-python/asyncpg/asyncpg-0.29.0-r1.ebuild
new file mode 100644
index 000000000..4c3f9c68a
--- /dev/null
+++ b/dev-python/asyncpg/asyncpg-0.29.0-r1.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} ) # doesn't build with pypy3
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="PostgreSQL driver for asyncio"
+HOMEPAGE="
+ https://pypi.org/project/asyncpg/
+ https://github.com/MagicStack/asyncpg
+"
+
+LICENSE="Apache-2.0 PSF-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/async-timeout-4.0.3[${PYTHON_USEDEP}]
+ ' python3_{10..11})
+"
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+ test? (
+ dev-db/postgresql[server]
+ dev-python/uvloop[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ # Works fine with >=dev-python/cython-3
+ # https://github.com/MagicStack/asyncpg/pull/1101
+ "${FILESDIR}"/cython-3.patch
+)
+
+EPYTEST_IGNORE=(
+ # checks versions from env variables
+ "${S}"/tests/test__environment.py
+ # runs flake8 (???)
+ "${S}"/tests/test__sourcecode.py
+)
+
+distutils_enable_tests pytest
+
+#distutils_enable_sphinx docs \
+ #dev-python/sphinxcontrib-asyncio \
+ #dev-python/sphinx-rtd-theme
+
+src_prepare() {
+ # remove pre-generated Cython sources
+ rm asyncpg/{pgproto/pgproto,protocol/protocol}.c || die
+
+ distutils-r1_src_prepare
+}
+
+src_configure() {
+ use debug && \
+ export ASYNCPG_DEBUG=1
+
+ distutils-r1_src_configure
+}
+
+python_test() {
+ cd "${T}" || die
+ for opt in "" "1"; do
+ einfo " testing with USE_UVLOOP='${opt}'"
+ USE_UVLOOP="${opt}" epytest "${S}"/tests
+ done
+}
diff --git a/dev-python/asyncpg/files/cython-3.patch b/dev-python/asyncpg/files/cython-3.patch
new file mode 100644
index 000000000..89c51c0eb
--- /dev/null
+++ b/dev-python/asyncpg/files/cython-3.patch
@@ -0,0 +1,26 @@
+diff --git a/pyproject.toml b/pyproject.toml
+index ed2340a..825af6a 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -50,7 +50,7 @@ requires = [
+ "setuptools>=60",
+ "wheel",
+
+- "Cython(>=0.29.24,<3.0.0)"
++ "Cython(>=3.0.0)"
+ ]
+ build-backend = "setuptools.build_meta"
+
+diff --git a/setup.py b/setup.py
+index c4d42d8..c4d6ed1 100644
+--- a/setup.py
++++ b/setup.py
+@@ -25,7 +25,7 @@ from setuptools.command import sdist as setuptools_sdist
+ from setuptools.command import build_ext as setuptools_build_ext
+
+
+-CYTHON_DEPENDENCY = 'Cython(>=0.29.24,<0.30.0)'
++CYTHON_DEPENDENCY = 'Cython(>=0.30.0)'
+
+ CFLAGS = ['-O2']
+ LDFLAGS = []
diff --git a/dev-python/asyncpg/metadata.xml b/dev-python/asyncpg/metadata.xml
index a507be0a7..4125c5cb9 100644
--- a/dev-python/asyncpg/metadata.xml
+++ b/dev-python/asyncpg/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>piotr.staroszczyk@get24.org</email>
- <name>Piotr Staroszczyk</name>
- </maintainer>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">MagicStack/asyncpg</remote-id>
+ <remote-id type="pypi">asyncpg</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/asyncssh/Manifest b/dev-python/asyncssh/Manifest
deleted file mode 100644
index 88408ea69..000000000
--- a/dev-python/asyncssh/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST asyncssh-2.6.0.tar.gz 419074 BLAKE2B ecac549c3b95b024cf6135e8809720f547607842506e874fd066c351fd89d48b705c4056efdfebed4e88e74f544e8d362d95690c9574e5cd4e0de5cafd84b44e SHA512 b1421ba03bbc3f919ebdc3f4936e024ecb579e9a6823ff507be5fb3b6e03ff0b7aaebf364282902b53f82eeaa095894d747e200eb9fc28cad19d94ec809448a3
-DIST asyncssh-2.7.0.tar.gz 420765 BLAKE2B 4beab38843951cb9e86f5dc88b4bde4efd9a29178160381ea359233b675d2fa8bbfe58750b8d3fdded65998ea3c472b7b26c07fa191bd8428a06e3e014794dfe SHA512 0f25b199075fc5ff2f27c040b81d679c17fdebb68e919abc23af5b10dc0626eb10141bd6d6de7d92f797f84394a54c34757a8332c4aa08bab36ec6f04e353204
diff --git a/dev-python/asyncssh/asyncssh-2.6.0.ebuild b/dev-python/asyncssh/asyncssh-2.6.0.ebuild
deleted file mode 100644
index cf8388c46..000000000
--- a/dev-python/asyncssh/asyncssh-2.6.0.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-DOCS_DIR="docs"
-DOCS_BUILDER="sphinx"
-
-inherit distutils-r1 docs optfeature
-
-DESCRIPTION="Asynchronous SSHv2 client and server library"
-HOMEPAGE="
- https://asyncssh.timeheart.net
- https://pypi.org/project/asyncssh
- https://github.com/ronf/asyncssh
-"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="ECL-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND=">=dev-python/cryptography-2.8[${PYTHON_USEDEP}]"
-BDEPEND="
- ${REDEPEND}
- test? (
- >=dev-python/bcrypt-3.1.3[${PYTHON_USEDEP}]
- >=dev-python/gssapi-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/libnacl-1.4.2[${PYTHON_USEDEP}]
- >=dev-python/pyopenssl-17.0.0[${PYTHON_USEDEP}]
- >=dev-python/python-pkcs11-0.7.0[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-distutils_enable_sphinx docs
-
-python_test() {
- epytest \
- --deselect tests/test_agent.py::_TestAgent::test_confirm \
- --deselect tests/test_x509.py::_TestX509::test_expired_root
-}
-
-pkg_postinst() {
- optfeature "support for OpenSSH private key encryption" dev-python/bcrypt
- optfeature "support for key exchange and authentication with U2F/FIDO2 security keys" dev-python/fido2
- optfeature "support for accessing PIV keys on PKCS#11 security tokens" dev-python/python-pkcs11
- optfeature "support for GSSAPI key exchange and authentication on UNIX" dev-python/gssapi
- optfeature "if you have a version of OpenSSL older than 1.1.1b installed and you want support for Curve25519 key exchange, Ed25519 keys and certificates, or the Chacha20-Poly1305 cipher" dev-python/libnacl
- optfeature "support for UMAC cryptographic hashes" dev-python/libnettle
- optfeature "support for X.509 certificate authentication" dev-python/pyopenssl
-}
diff --git a/dev-python/asyncssh/asyncssh-2.7.0.ebuild b/dev-python/asyncssh/asyncssh-2.7.0.ebuild
deleted file mode 100644
index fb28de3c9..000000000
--- a/dev-python/asyncssh/asyncssh-2.7.0.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DOCS_BUILDER="sphinx"
-DOCS_DIR="docs"
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1 docs optfeature
-
-DESCRIPTION="Asynchronous SSHv2 client and server library"
-HOMEPAGE="
- https://asyncssh.timeheart.net
- https://pypi.org/project/asyncssh
- https://github.com/ronf/asyncssh
-"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="ECL-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND=">=dev-python/cryptography-2.8[${PYTHON_USEDEP}]"
-BDEPEND="
- ${REDEPEND}
- test? (
- >=dev-python/bcrypt-3.1.3[${PYTHON_USEDEP}]
- >=dev-python/gssapi-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/libnacl-1.4.2[${PYTHON_USEDEP}]
- >=dev-python/pyopenssl-17.0.0[${PYTHON_USEDEP}]
- >=dev-python/python-pkcs11-0.7.0[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs
-
-#python_test() {
-# epytest \
-# --deselect tests/test_agent.py::_TestAgent::test_confirm \
-# --deselect tests/test_x509.py::_TestX509::test_expired_root
-#}
-
-pkg_postinst() {
- optfeature "support for OpenSSH private key encryption" dev-python/bcrypt
- optfeature "support for key exchange and authentication with U2F/FIDO2 security keys" dev-python/fido2
- optfeature "support for accessing PIV keys on PKCS#11 security tokens" dev-python/python-pkcs11
- optfeature "support for GSSAPI key exchange and authentication on UNIX" dev-python/gssapi
- optfeature "if you have a version of OpenSSL older than 1.1.1b installed and you want support for Curve25519 key exchange, Ed25519 keys and certificates, or the Chacha20-Poly1305 cipher" dev-python/libnacl
- optfeature "support for UMAC cryptographic hashes" dev-python/libnettle
- optfeature "support for X.509 certificate authentication" dev-python/pyopenssl
-}
diff --git a/dev-python/asyncssh/metadata.xml b/dev-python/asyncssh/metadata.xml
deleted file mode 100644
index 316963e86..000000000
--- a/dev-python/asyncssh/metadata.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-AsyncSSH is a Python package which provides an asynchronous client and server implementation of the SSHv2 protocol on top of the Python 3.6+ asyncio framework.
-
-Features
-
-Full support for SSHv2, SFTP, and SCP client and server functions
-Shell, command, and subsystem channels
-Environment variables, terminal type, and window size
-Direct and forwarded TCP/IP channels
-OpenSSH-compatible direct and forwarded UNIX domain socket channels
-Local and remote TCP/IP port forwarding
-Local and remote UNIX domain socket forwarding
-Dynamic TCP/IP port forwarding via SOCKS
-X11 forwarding support on both the client and the server
-SFTP protocol version 3 with OpenSSH extensions
-SCP protocol support, including third-party remote to remote copies
-Multiple simultaneous sessions on a single SSH connection
-Multiple SSH connections in a single event loop
-Byte and string based I/O with settable encoding
-A variety of key exchange, encryption, and MAC algorithms
-Support for gzip compression
-Including OpenSSH variant to delay compression until after auth
-User and host-based public key, password, and keyboard-interactive authentication methods
-Many types and formats of public keys and certificates
-Including OpenSSH-compatible support for U2F and FIDO2 security keys
-Including PKCS#11 support for accessing PIV security tokens
-Including support for X.509 certificates as defined in RFC 6187
-Support for accessing keys managed by ssh-agent on UNIX systems
-Including agent forwarding support on both the client and the server
-Support for accessing keys managed by PuTTY's Pageant agent on Windows
-Support for accessing host keys via OpenSSH's ssh-keysign
-OpenSSH-style known_hosts file support
-OpenSSH-style authorized_keys file support
-Partial support for OpenSSH-style configuration files
-Compatibility with OpenSSH "Encrypt then MAC" option for better security
-Time and byte-count based session key renegotiation
-Designed to be easy to extend to support new forms of key exchange, authentication, encryption, and compression algorithms
- </longdescription>
- <upstream>
- <remote-id type="github">ronf/asyncssh</remote-id>
- <remote-id type="pypi">asyncssh</remote-id>
- <maintainer status="unknown">
- <email>ronf@timeheart.net</email>
- <name>Ron Frederick</name>
- </maintainer>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/auditok/Manifest b/dev-python/auditok/Manifest
index 93a374199..9ef2bbd3c 100644
--- a/dev-python/auditok/Manifest
+++ b/dev-python/auditok/Manifest
@@ -1 +1,2 @@
+DIST auditok-0.1.5.tar.gz 1940153 BLAKE2B 5cdd6b2b810fcaa29026974d10e602ef8b464da29a104bc4d8ef8203fe9bab492e9921f0bd2f8e649b75551036eb617302df598855fd31f435b07b73d3803def SHA512 52dbd2fa66dbf0da52ea6f456b41d117029d45939c581ca270ecdecca4e05dd551fe6f681baad8fd0f6ab828b38157e214ff7df61bf0c88e57738a4e44023ce5
DIST auditok-0.2.0.tar.gz 2482517 BLAKE2B 8db341116e74d875f73757c758ad24c3f8b06cf69a95b09cf7dda30495e46e456861c03ce0bdea2a0c714225a452f6d8a85348c625343fc1e247acb11db31ee6 SHA512 aa9e05d03fde68277395134d247cf7c211b48852fe0e8ac6df9d773242363b692f0505317d54268e81dc29a49250775c4695f0f826d576589850d2290efadffb
diff --git a/dev-python/auditok/auditok-0.1.5.ebuild b/dev-python/auditok/auditok-0.1.5.ebuild
new file mode 100644
index 000000000..c1b04c9a3
--- /dev/null
+++ b/dev-python/auditok/auditok-0.1.5.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="A module for Audio/Acoustic Activity Detection"
+HOMEPAGE="https://github.com/amsehili/auditok/"
+SRC_URI="https://github.com/amsehili/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ test? (
+ dev-python/pydub[${PYTHON_USEDEP}]
+ dev-python/genty[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ )
+ "
+
+distutils_enable_tests unittest
+
+python_test() {
+ eunittest tests/
+}
+
+pkg_postinst() {
+ optfeature "reading audio files in popular audio formats (ogg, mp3, etc.) or extracting audio from a video file" dev-python/pydub
+ optfeature "reading audio data from the microphone and playing audio back" dev-python/pyaudio
+ optfeature "plotting audio signal and detections" dev-python/matplotlib
+ optfeature "matplotlib. Also used for some math operations instead of standard python if available" dev-python/numpy
+}
diff --git a/dev-python/auditok/auditok-0.2.0.ebuild b/dev-python/auditok/auditok-0.2.0-r1.ebuild
index 4859fe11a..7203619b4 100644
--- a/dev-python/auditok/auditok-0.2.0.ebuild
+++ b/dev-python/auditok/auditok-0.2.0-r1.ebuild
@@ -1,9 +1,10 @@
-# Copyright 2021 Gentoo Authors
+# Copyright 2021-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{8..9} )
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
inherit distutils-r1 optfeature
diff --git a/dev-python/auditok/metadata.xml b/dev-python/auditok/metadata.xml
index cbe3c6a53..7ddafc258 100644
--- a/dev-python/auditok/metadata.xml
+++ b/dev-python/auditok/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>smaniotto.nicola@gmail.com</email>
<name>Nicola Smaniotto</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">amsehili/auditok</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/autoflake/Manifest b/dev-python/autoflake/Manifest
index 1c009f0b6..6fd578500 100644
--- a/dev-python/autoflake/Manifest
+++ b/dev-python/autoflake/Manifest
@@ -1 +1 @@
-DIST autoflake-1.4.tar.gz 24219 BLAKE2B 622c82b9ab5e7fd68e8bc2678c5868282e605640e1c52d1a8f81fbaaba26dfb738ac1ceb9eb20195bb820256fbae27222953a5271130e74b8708988516e20e00 SHA512 53e542a765cbd18df7c35a90f16786e173bdc332b4410abfbc6d24f1009bf5d6f8a383e897e72558617bdf339573d8aa9b8de6901aac392caf48889aacf0c9a6
+DIST autoflake-2.3.1.tar.gz 27642 BLAKE2B 5002b404c39a5a1e18c5dc6e8a70f958b9d02e412b9320ba4b801b1a20427110cd15363bb3e4acb25de4ceca77ce86d49c1c36cef5ba3e886fecffb996ef7b81 SHA512 bad9a34f253e1182f3128867eb8699c8c02b99f35479c1b65669f0411d7dff29fe477a267d0398e60a5e833530ace3cf28443a4b2a8924bd019447cc7ee8ab08
diff --git a/dev-python/autoflake/autoflake-1.4.ebuild b/dev-python/autoflake/autoflake-1.4.ebuild
deleted file mode 100644
index d2b5ae13f..000000000
--- a/dev-python/autoflake/autoflake-1.4.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Removes unused imports and unused variables as reported by pyflakes"
-HOMEPAGE="
- https://github.com/myint/autoflake
- https://pypi.org/project/autoflake
-"
-SRC_URI="https://github.com/myint/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND=">=dev-python/pyflakes-1.1.0[${PYTHON_USEDEP}]"
-RDEPEND="${DEPEND}"
-
-python_test() {
- "${EPYTHON}" test_autoflake.py || die
-}
diff --git a/dev-python/autoflake/autoflake-2.3.1.ebuild b/dev-python/autoflake/autoflake-2.3.1.ebuild
new file mode 100644
index 000000000..8612868bc
--- /dev/null
+++ b/dev-python/autoflake/autoflake-2.3.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=hatchling
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Removes unused imports and unused variables from Python code"
+HOMEPAGE="https://github.com/PyCQA/autoflake/ https://pypi.org/project/autoflake/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/tomli-2.0.1
+ >=dev-python/pyflakes-3.0.0"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ sed -Ei -e '/include/,/]/ { /(test_.*|LICENSE|README)/d }' pyproject.toml || die "Sed failed :-("
+ default
+}
+
+python_test() {
+ # unit test
+ eunittest -p "test_autoflake.py"
+}
diff --git a/dev-python/autoflake/metadata.xml b/dev-python/autoflake/metadata.xml
index dd525596e..227c02478 100644
--- a/dev-python/autoflake/metadata.xml
+++ b/dev-python/autoflake/metadata.xml
@@ -1,11 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
+ <!-- maintainer-needed -->
<longdescription lang="en">
autoflake removes unused imports and unused variables from Python code. It makes use of pyflakes to do this.
@@ -14,7 +10,7 @@ By default, autoflake only removes unused imports for modules that are part of t
autoflake also removes useless pass statements.
</longdescription>
<upstream>
- <remote-id type="github">myint/autoflake</remote-id>
+ <remote-id type="github">PyCQA/autoflake</remote-id>
<remote-id type="pypi">autoflake</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-python/automaton/Manifest b/dev-python/automaton/Manifest
deleted file mode 100644
index 46260e7a6..000000000
--- a/dev-python/automaton/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST automaton-2.2.0.tar.gz 31629 BLAKE2B 1db3968bf2eb3dcec77edd6ca8f7ad6afd16d4e1a23fe3f5520ab78d8b78e817cf9bde14bb008e8740fdbd03e4b871361402283407133def0c15485962a210ce SHA512 9b773ac93f17542800b93e36ca8b42ab522b2fb1c72d36256a62a37463e49e9f299fbdb9d4507b7f2a6cf678bbcd16fc86be9d20720acf0b254e1bacca4c0300
diff --git a/dev-python/automaton/automaton-2.2.0.ebuild b/dev-python/automaton/automaton-2.2.0.ebuild
deleted file mode 100644
index 6c1330df7..000000000
--- a/dev-python/automaton/automaton-2.2.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-
-inherit distutils-r1
-
-DESCRIPTION="Friendly state machines for python."
-HOMEPAGE="https://pypi.org/project/automaton/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
- <dev-python/prettytable-0.8.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/avro/Manifest b/dev-python/avro/Manifest
new file mode 100644
index 000000000..4fbc4f875
--- /dev/null
+++ b/dev-python/avro/Manifest
@@ -0,0 +1 @@
+DIST avro-1.11.3.tar.gz 90621 BLAKE2B 3fbd8ea80eeea212e9136207c5207af5571ad74e21d5ab469fc1a86525cffb2f80477757be8b63cd026d9b75ec596d30b2c1bdf4abba6b15711cd3dffafcf80e SHA512 2f7877dce1ff2bde8e9cbf531f8c8149c68026ee9274d53bcbe99e7ecb678004701ad5c7cb001c01c0351aaa4d8b5d5d699f8952d95368ad2713204dd1c21895
diff --git a/dev-python/avro/avro-1.11.3.ebuild b/dev-python/avro/avro-1.11.3.ebuild
new file mode 100644
index 000000000..f09b598b4
--- /dev/null
+++ b/dev-python/avro/avro-1.11.3.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Apache Avro is a data serialization system"
+HOMEPAGE="
+ https://pypi.org/project/avro/
+ https://avro.apache.org
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RESTRICT="test"
+PROPERTIES="test_network"
+
+distutils_enable_tests pytest
diff --git a/dev-python/fchroot/metadata.xml b/dev-python/avro/metadata.xml
index 5dd777152..23cf0889f 100644
--- a/dev-python/fchroot/metadata.xml
+++ b/dev-python/avro/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
- <remote-id type="pypi">fchroot</remote-id>
+ <remote-id type="pypi">avro</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-python/azure-core/Manifest b/dev-python/azure-core/Manifest
new file mode 100644
index 000000000..d39c41d62
--- /dev/null
+++ b/dev-python/azure-core/Manifest
@@ -0,0 +1,2 @@
+DIST azure-core-1.27.1.zip 371779 BLAKE2B 0f2805d6299b0129d546d79d56c8be1de019b46dc64dd22b8191017d2bae1d1a126480186836f52eedfba50b250b0fbb3ed36d56b0e0b6de5da3954d51cdbb14 SHA512 979c8194b32acf89ada5604742a00452023b4d671b55f9a60766a11dec5502ffc5c53bc4f899ef73ae63fa8638a0d69771d590f5851f5fcd20f5b7fd85a4c53f
+DIST azure-core-1.28.0.zip 384884 BLAKE2B c76dc327cf35ab7c1c243bb03f9410989cb065daf9c8f2648b0a6a784a367a2f4a35ee97d7df0ab0adb57d479cf0c6d972dca70e60ee6bc1329889d75c92f920 SHA512 f3b74c87df2a4bcf0dacddce8a508389d80237a930b0138895c5cc239d3cf6918e98d77f4e02fe5ed5784e76d8eec6e0acc75fc978fcbfd0733fdf7bb38b2ae3
diff --git a/dev-python/azure-core/azure-core-1.27.1.ebuild b/dev-python/azure-core/azure-core-1.27.1.ebuild
new file mode 100644
index 000000000..6daaa3e57
--- /dev/null
+++ b/dev-python/azure-core/azure-core-1.27.1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="Microsoft Azure Core Library for Python"
+HOMEPAGE="
+ https://pypi.org/project/azure-core/
+ https://github.com/Azure/azure-sdk-for-python
+"
+SRC_URI="$(pypi_sdist_url --no-normalize ${PN} ${PV} .zip)"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+RESTRICT="test"
+
+RDEPEND="
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+"
+BDEPEND="app-arch/unzip"
+# TODO: package azure-sdk-tools
+#BDEPEND="
+# app-arch/unzip
+# test? (
+# dev-python/aiohttp[${PYTHON_USEDEP}]
+# dev-python/azure-sdk-tools[${PYTHON_USEDEP}]
+# dev-python/flask[${PYTHON_USEDEP}]
+# dev-python/msrest[${PYTHON_USEDEP}]
+# dev-python/pytest-trio[${PYTHON_USEDEP}]
+# dev-python/requests[${PYTHON_USEDEP}]
+# )
+#"
+
+DOCS=( {CHANGELOG,CLIENT_LIBRARY_DEVELOPER,README}.md )
+
+distutils_enable_tests pytest
+
+pkg_postinst() {
+ optfeature "aio support" dev-python/aiohttp
+}
diff --git a/dev-python/azure-core/azure-core-1.28.0.ebuild b/dev-python/azure-core/azure-core-1.28.0.ebuild
new file mode 100644
index 000000000..6daaa3e57
--- /dev/null
+++ b/dev-python/azure-core/azure-core-1.28.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="Microsoft Azure Core Library for Python"
+HOMEPAGE="
+ https://pypi.org/project/azure-core/
+ https://github.com/Azure/azure-sdk-for-python
+"
+SRC_URI="$(pypi_sdist_url --no-normalize ${PN} ${PV} .zip)"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+RESTRICT="test"
+
+RDEPEND="
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+"
+BDEPEND="app-arch/unzip"
+# TODO: package azure-sdk-tools
+#BDEPEND="
+# app-arch/unzip
+# test? (
+# dev-python/aiohttp[${PYTHON_USEDEP}]
+# dev-python/azure-sdk-tools[${PYTHON_USEDEP}]
+# dev-python/flask[${PYTHON_USEDEP}]
+# dev-python/msrest[${PYTHON_USEDEP}]
+# dev-python/pytest-trio[${PYTHON_USEDEP}]
+# dev-python/requests[${PYTHON_USEDEP}]
+# )
+#"
+
+DOCS=( {CHANGELOG,CLIENT_LIBRARY_DEVELOPER,README}.md )
+
+distutils_enable_tests pytest
+
+pkg_postinst() {
+ optfeature "aio support" dev-python/aiohttp
+}
diff --git a/dev-python/azure-core/metadata.xml b/dev-python/azure-core/metadata.xml
new file mode 100644
index 000000000..65d893c68
--- /dev/null
+++ b/dev-python/azure-core/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">azure-core</remote-id>
+ <remote-id type="github">Azure/azure-sdk-for-python</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/azure-storage-blob/Manifest b/dev-python/azure-storage-blob/Manifest
index 662be0b5e..5dbe28161 100644
--- a/dev-python/azure-storage-blob/Manifest
+++ b/dev-python/azure-storage-blob/Manifest
@@ -1 +1,2 @@
-DIST azure-storage-blob-12.8.1.zip 629903 BLAKE2B cf8d4fb8a52d370c11517019e3dc00349dc9e96f065665936db7089ff15e5ce969ea430e39cd39fdc5d62ee6570969bdd918fd7ab0cfcefdc860d7c4d9d62765 SHA512 0c760b48021e2607d0e7bb9dec7fef25d238542d0b150a0727bb58d8eab94a5d265c4bcb95d7087a113735a2f62c01f0f98711d4f320799f164ef53536e103e6
+DIST azure-storage-blob-12.16.0.zip 698521 BLAKE2B d976a3ce89620ca9b87aa76a6da0f63d7a85cf6e7573ed3b93833a6d273993b43c9b4edb42b8c6b32e7739d2f717eb81580d7144ab174469cdb7ac0e6cef3caf SHA512 18a7ff7b841a6c76680a5fef622b981b551b7106926b43cefb35b6e2a7e6288947e4e92e62e78f797890cab682d158382f8d90f432c27a05e7ed86d234383b40
+DIST azure-storage-blob-12.17.0.zip 698725 BLAKE2B 4baed9738f55d693fa86fe79da36915f0c6f118c58e8a3f7a259a7d6f85abb27f0bc2696c0f7ff94b6ed6345f4a3d348fecabe4e99759f8ac830f0c8ec46a67e SHA512 fc146efa4853724a1c0b68a2f22bc5c04f91502cabcb135d717ece9c087eb729a5eb05b943f84fcb0dfd400cd8490fbb50235a128bb0e5457f8257f18d0c8032
diff --git a/dev-python/azure-storage-blob/azure-storage-blob-12.16.0.ebuild b/dev-python/azure-storage-blob/azure-storage-blob-12.16.0.ebuild
new file mode 100644
index 000000000..10b7e8ca4
--- /dev/null
+++ b/dev-python/azure-storage-blob/azure-storage-blob-12.16.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Microsoft Azure Blob Storage Client Library for Python"
+HOMEPAGE="
+ https://pypi.org/project/azure-storage-blob/
+ https://github.com/Azure/azure-sdk-for-python
+"
+SRC_URI="$(pypi_sdist_url --no-normalize ${PN} ${PV} .zip)"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-python/azure-core-1.24.2[${PYTHON_USEDEP}]
+ <dev-python/azure-core-2.0.0[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/msrest[${PYTHON_USEDEP}]
+"
+BDEPEND="app-arch/unzip"
+# TODO: package azure-sdk-tools (https://github.com/Azure/azure-sdk-for-python/tree/main/tools/azure-sdk-tools)
+#BDEPEND="
+# app-arch/unzip
+# test? (
+# dev-python/aiohttp[${PYTHON_USEDEP}]
+# dev-python/azure-sdk-tools[${PYTHON_USEDEP}]
+# dev-python/requests[${PYTHON_USEDEP}]
+# )
+#"
+
+DOCS=( {CHANGELOG,README,migration_guide}.md )
+
+distutils_enable_tests pytest
diff --git a/dev-python/azure-storage-blob/azure-storage-blob-12.17.0.ebuild b/dev-python/azure-storage-blob/azure-storage-blob-12.17.0.ebuild
new file mode 100644
index 000000000..10b7e8ca4
--- /dev/null
+++ b/dev-python/azure-storage-blob/azure-storage-blob-12.17.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Microsoft Azure Blob Storage Client Library for Python"
+HOMEPAGE="
+ https://pypi.org/project/azure-storage-blob/
+ https://github.com/Azure/azure-sdk-for-python
+"
+SRC_URI="$(pypi_sdist_url --no-normalize ${PN} ${PV} .zip)"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-python/azure-core-1.24.2[${PYTHON_USEDEP}]
+ <dev-python/azure-core-2.0.0[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/msrest[${PYTHON_USEDEP}]
+"
+BDEPEND="app-arch/unzip"
+# TODO: package azure-sdk-tools (https://github.com/Azure/azure-sdk-for-python/tree/main/tools/azure-sdk-tools)
+#BDEPEND="
+# app-arch/unzip
+# test? (
+# dev-python/aiohttp[${PYTHON_USEDEP}]
+# dev-python/azure-sdk-tools[${PYTHON_USEDEP}]
+# dev-python/requests[${PYTHON_USEDEP}]
+# )
+#"
+
+DOCS=( {CHANGELOG,README,migration_guide}.md )
+
+distutils_enable_tests pytest
diff --git a/dev-python/azure-storage-blob/azure-storage-blob-12.8.1.ebuild b/dev-python/azure-storage-blob/azure-storage-blob-12.8.1.ebuild
deleted file mode 100644
index f0957d088..000000000
--- a/dev-python/azure-storage-blob/azure-storage-blob-12.8.1.ebuild
+++ /dev/null
@@ -1,17 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-inherit distutils-r1
-
-DESCRIPTION="Microsoft Azure Blob Storage Client Library for Python"
-HOMEPAGE="https://pypi.org/project/azure-storage-blob/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.zip"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-BDEPEND="app-arch/unzip"
diff --git a/dev-python/azure-storage-blob/metadata.xml b/dev-python/azure-storage-blob/metadata.xml
index ad8cead24..41a541a9e 100644
--- a/dev-python/azure-storage-blob/metadata.xml
+++ b/dev-python/azure-storage-blob/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>svdm-gentoo@protonmail.com</email>
- <name>Simon van der Maas</name>
- </maintainer>
+ <maintainer type="person">
+ <email>svdm-gentoo@protonmail.com</email>
+ <name>Simon van der Maas</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">Azure/azure-sdk-for-python</remote-id>
+ <remote-id type="pypi">azure-storage-blob</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/b2sdk/Manifest b/dev-python/b2sdk/Manifest
index 245834d91..84564c521 100644
--- a/dev-python/b2sdk/Manifest
+++ b/dev-python/b2sdk/Manifest
@@ -1 +1,2 @@
-DIST b2sdk-1.8.0.tar.gz 250511 BLAKE2B dad792589148fc3cad91fed1aeb43e02afca6f67f35e2f8239510606d601067abbdd36a3f0b2b2b8264697004d548d8077c999437f027c058072d7383d13c48c SHA512 ee1e1987f127835b2016bba9485c7a9d9503b4a675662a7364310fec7c963214805ed6bc15b3a1f07477f202bbe06325f480997eb202bcdfa1cb24f006d0a900
+DIST b2sdk-1.21.0.tar.gz 335333 BLAKE2B 7aa3a9664844e1f5ef71b7eec2fc28f456bed0a8ae431a90f23865cb9d73526090f78926b943f67bb1745bb9760718666202a9bd67790d92d90c14a0f1510bab SHA512 3d431ce8a3be536d6e49d20a0e6eef2d435bfccf2dd36c0b501c03ebd013de68063302f3ae4d8c9cd6fcfa7b77e3ea2c00b06c3a5e044e30f545a4ab5248fa62
+DIST b2sdk-2.0.0.tar.gz 378875 BLAKE2B 0d65eb0b9238fccb5f6ef2252280cb9891c1fbf9bfddc2ef38692f5063fc0384eefab26876126d9dc056f178788e72a970f604fb8f9952e1ef6cd62a2417ab9d SHA512 97700574cd948a8a177bb52edc89e67d8f1cf6efcc7227c8581af30cdc95dc7e54afd30357f5723f2abee05cdbbf17d6b26494c586c2851782bebb72224386c0
diff --git a/dev-python/b2sdk/b2sdk-1.21.0.ebuild b/dev-python/b2sdk/b2sdk-1.21.0.ebuild
new file mode 100644
index 000000000..6bba19c7a
--- /dev/null
+++ b/dev-python/b2sdk/b2sdk-1.21.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_PEP517="setuptools"
+PYTHON_COMPAT=( python3_10 python3_11 python3_12 )
+inherit distutils-r1
+
+DESCRIPTION="The client library for BackBlaze's B2 product"
+HOMEPAGE="https://github.com/Backblaze/b2-sdk-python"
+SRC_URI="https://github.com/Backblaze/b2-sdk-python/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.17.2-disable-requirement-installation.patch"
+)
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/logfury-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.9.1[${PYTHON_USEDEP}]
+ >=dev-python/tqdm-4.5.0[${PYTHON_USEDEP}]
+ ')
+"
+
+distutils_enable_tests pytest
+
+BDEPEND+=" test? (
+ $(python_gen_cond_dep '
+ >=dev-python/pytest-mock-3.6.1[${PYTHON_USEDEP}]
+ >=dev-python/pytest-lazy-fixture-0.6.3[${PYTHON_USEDEP}]
+ ')
+)"
+
+# These tests seem to require some b2 authentication (they're integration tests
+# so this is not unreasonable)
+python_test() {
+ # note: used to avoid an ExcessiveLineLength lint below.
+ local sqlite_test_path="test/unit/account_info/test_sqlite_account_info.py"
+ epytest \
+ --deselect test/integration/test_large_files.py::TestLargeFile::test_large_file \
+ --deselect test/integration/test_raw_api.py::test_raw_api \
+ --deselect test/integration/test_download.py::TestDownload::test_large_file \
+ --deselect test/integration/test_download.py::TestDownload::test_small \
+ --deselect test/integration/test_download.py::TestDownload::test_small_unverified \
+ --deselect test/integration/test_download.py::TestDownload::test_gzip \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_invalid_profile_name \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile_and_file_name_conflict \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile_and_env_var_conflict \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile_and_xdg_config_env_var \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_file_name \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_env_var \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_default_file_if_exists \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_xdg_config_env_var \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_default_file
+}
diff --git a/dev-python/b2sdk/b2sdk-1.8.0.ebuild b/dev-python/b2sdk/b2sdk-1.8.0.ebuild
deleted file mode 100644
index e0953aa8f..000000000
--- a/dev-python/b2sdk/b2sdk-1.8.0.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-inherit distutils-r1
-
-DESCRIPTION="The client library for BackBlaze's B2 product"
-HOMEPAGE="https://github.com/Backblaze/b2-sdk-python"
-SRC_URI="https://github.com/Backblaze/b2-sdk-python/releases/download/v${PV}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.2.0-skip-integration-test.patch"
- "${FILESDIR}/${PN}-1.8.0-disable-requirement-installation.patch"
-)
-
-RDEPEND="
- $(python_gen_cond_dep '
- >=dev-python/arrow-0.8.0[${PYTHON_USEDEP}]
- >=dev-python/logfury-0.1.2[${PYTHON_USEDEP}]
- >=dev-python/requests-2.9.1[${PYTHON_USEDEP}]
- >=dev-python/tqdm-4.5.0[${PYTHON_USEDEP}]
- ')
- $(python_gen_cond_dep '
- dev-python/importlib_metadata[${PYTHON_USEDEP}]
- ' pypy3 python3_7)
-"
-
-distutils_enable_tests pytest
-
-BDEPEND+=" test? (
- $(python_gen_cond_dep '
- >=dev-python/pytest-mock-3.3.1[${PYTHON_USEDEP}]
- dev-python/pytest-lazy-fixture[${PYTHON_USEDEP}]
- ')
-)"
diff --git a/dev-python/b2sdk/b2sdk-2.0.0-r1.ebuild b/dev-python/b2sdk/b2sdk-2.0.0-r1.ebuild
new file mode 100644
index 000000000..8075dc394
--- /dev/null
+++ b/dev-python/b2sdk/b2sdk-2.0.0-r1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_PEP517="pdm-backend"
+PYTHON_COMPAT=( python3_10 python3_11 python3_12 )
+inherit distutils-r1
+
+DESCRIPTION="The client library for BackBlaze's B2 product"
+HOMEPAGE="https://github.com/Backblaze/b2-sdk-python"
+SRC_URI="https://github.com/Backblaze/b2-sdk-python/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+S="${WORKDIR}/b2-sdk-python-${PV}"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+export PDM_BUILD_SCM_VERSION=${PV}
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/logfury-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.9.1[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.7.1[${PYTHON_USEDEP}]
+ ')
+"
+
+distutils_enable_tests pytest
+
+# tqdm dependency is temporary, see
+# https://github.com/Backblaze/b2-sdk-python/issues/489
+BDEPEND+=" test? (
+ $(python_gen_cond_dep '
+ >=dev-python/pytest-mock-3.6.1[${PYTHON_USEDEP}]
+ >=dev-python/pytest-lazy-fixture-0.6.3[${PYTHON_USEDEP}]
+ >=dev-python/tqdm-4.66.2[${PYTHON_USEDEP}]
+ ')
+)"
+
+# These tests seem to require some b2 authentication (they're integration tests
+# so this is not unreasonable)
+python_test() {
+ # note: used to avoid an ExcessiveLineLength lint below.
+ local sqlite_test_path="test/unit/account_info/test_sqlite_account_info.py"
+
+ # https://github.com/Backblaze/b2-sdk-python/issues/488
+ epytest \
+ --deselect test/integration/test_large_files.py::TestLargeFile::test_large_file \
+ --deselect test/integration/test_raw_api.py::test_raw_api \
+ --deselect test/integration/test_download.py::TestDownload::test_large_file \
+ --deselect test/integration/test_download.py::TestDownload::test_small \
+ --deselect test/integration/test_download.py::TestDownload::test_small_unverified \
+ --deselect test/integration/test_download.py::TestDownload::test_gzip \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_invalid_profile_name \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile_and_file_name_conflict \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile_and_env_var_conflict \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile_and_xdg_config_env_var \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_file_name \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_env_var \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_default_file_if_exists \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_xdg_config_env_var \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_default_file \
+ --deselect test/unit/b2http/test_b2http.py::TestSetLocaleContextManager::test_set_locale_context_manager \
+ test/unit
+}
diff --git a/dev-python/b2sdk/files/b2sdk-1.17.2-disable-requirement-installation.patch b/dev-python/b2sdk/files/b2sdk-1.17.2-disable-requirement-installation.patch
new file mode 100644
index 000000000..d6d1952b0
--- /dev/null
+++ b/dev-python/b2sdk/files/b2sdk-1.17.2-disable-requirement-installation.patch
@@ -0,0 +1,22 @@
+# This will disable the setup.py features that attempt to install missing
+# requirements using pip
+--- a/setup.py
++++ b/setup.py
+@@ -102,7 +102,7 @@ setup(
+ # your project is installed. For an analysis of "install_requires" vs pip's
+ # requirements files see:
+ # https://packaging.python.org/en/latest/requirements.html
+- install_requires=read_requirements(),
++ # install_requires=read_requirements(),
+
+ # List additional groups of dependencies here (e.g. development
+ # dependencies). You can install these using the following syntax,
+@@ -109,7 +109,7 @@ setup(
+ # for example:
+ # $ pip install -e .[dev,test]
+ extras_require={'doc': read_requirements('doc')},
+- setup_requires=['setuptools_scm<6.0'],
++ # setup_requires=['setuptools_scm<6.0'],
+ use_scm_version=True,
+
+ # If there are data files included in your packages that need to be
diff --git a/dev-python/b2sdk/files/b2sdk-1.2.0-skip-integration-test.patch b/dev-python/b2sdk/files/b2sdk-1.2.0-skip-integration-test.patch
deleted file mode 100644
index bd13d9944..000000000
--- a/dev-python/b2sdk/files/b2sdk-1.2.0-skip-integration-test.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/test/integration/test_raw_api.py b/test/integration/test_raw_api.py
-index e6cd288..ec89604 100644
---- a/test/integration/test_raw_api.py
-+++ b/test/integration/test_raw_api.py
-@@ -15,6 +15,7 @@ from b2sdk import raw_api
-
-
- # TODO: move the test_raw_api test logic here
-+@pytest.mark.skip(reason="Cannot do this in portage")
- def test_raw_api():
- application_key_id = os.environ.get('B2_TEST_APPLICATION_KEY_ID')
- if application_key_id is None:
diff --git a/dev-python/b2sdk/metadata.xml b/dev-python/b2sdk/metadata.xml
index 5440a39c6..5cdee8c4c 100644
--- a/dev-python/b2sdk/metadata.xml
+++ b/dev-python/b2sdk/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>ezzieyguywuf@gmail.com</email>
@@ -11,4 +11,7 @@
This program provides command-line access to the B2 service.
</longdescription>
+ <upstream>
+ <remote-id type="github">Backblaze/b2-sdk-python</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/babelfont/Manifest b/dev-python/babelfont/Manifest
deleted file mode 100644
index 960d6f5ea..000000000
--- a/dev-python/babelfont/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST babelfont-2.0.1.tar.gz 731550 BLAKE2B df941bc1e0dfe92e5cb1ccc4610b8ad2674405a947605d01b87fa365417b061591b5e9e6265af009516c24890fc5ecfa6314e6e49ac3b6cf255dcbdf446a338e SHA512 40cd60fe81d28218601be6903cced481b82bc7f205aa6715f729c4936f4608c232c809a566e7b3ca65f56cf15238d3056fef1e5de000b86264365168c4c7f3e3
diff --git a/dev-python/babelfont/babelfont-2.0.1.ebuild b/dev-python/babelfont/babelfont-2.0.1.ebuild
deleted file mode 100644
index fd0a82b88..000000000
--- a/dev-python/babelfont/babelfont-2.0.1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/simoncozens/babelfont/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-DESCRIPTION="Interrogate and manipulate UFO, TTF and OTF fonts with a common interface"
-HOMEPAGE="https://github.com/simoncozens/babelfont"
-LICENSE="MIT"
-SLOT="0"
-
-RDEPEND="
- dev-python/defcon[${PYTHON_USEDEP}]
- dev-python/fontParts[${PYTHON_USEDEP}]
- dev-python/fonttools[${PYTHON_USEDEP}]
- dev-python/glyphsLib[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-
-distutils_enable_tests pytest
diff --git a/dev-python/babelfont/metadata.xml b/dev-python/babelfont/metadata.xml
deleted file mode 100644
index 9d9dfd3ef..000000000
--- a/dev-python/babelfont/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/simoncozens/babelfont/issues</bugs-to>
- <remote-id type="github">simoncozens/babelfont</remote-id>
- <remote-id type="pypi">babelfont</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/baron/Manifest b/dev-python/baron/Manifest
index 1ca7a27b6..78c5b0c33 100644
--- a/dev-python/baron/Manifest
+++ b/dev-python/baron/Manifest
@@ -1 +1 @@
-DIST baron-0.9.tar.gz 835127 BLAKE2B be5aee3b5f7d8c317295cb88429eb2feb45c2fba135ba1a57370a070bd27dd6ee1fea8048201f40d7579bea56c535855a8605d6304f1987f4b138ed5591d0b77 SHA512 ed31bad1442b8d868ab9872f057db31ad8730654a7e8d49119c75d5631c881b074baf5754b0b0b5023dad62eda1f40461e4445321695248cfa3530b608d48c8e
+DIST baron-0.9.gh.tar.gz 835127 BLAKE2B be5aee3b5f7d8c317295cb88429eb2feb45c2fba135ba1a57370a070bd27dd6ee1fea8048201f40d7579bea56c535855a8605d6304f1987f4b138ed5591d0b77 SHA512 ed31bad1442b8d868ab9872f057db31ad8730654a7e8d49119c75d5631c881b074baf5754b0b0b5023dad62eda1f40461e4445321695248cfa3530b608d48c8e
diff --git a/dev-python/baron/baron-0.9.ebuild b/dev-python/baron/baron-0.9.ebuild
index 5537308f9..594e518bd 100644
--- a/dev-python/baron/baron-0.9.ebuild
+++ b/dev-python/baron/baron-0.9.ebuild
@@ -1,15 +1,15 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
DESCRIPTION="Full Syntax Tree for python to make writing refactoring code a realist task"
HOMEPAGE="https://github.com/PyCQA/baron https://baron.pycqa.org"
-SRC_URI="https://github.com/PyCQA/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/PyCQA/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
LICENSE="LGPL-3"
SLOT="0"
@@ -20,6 +20,8 @@ RDEPEND="
"
distutils_enable_tests pytest
+
# Doc building fails:
-# RuntimeError: Non Expected warning in `/var/tmp/portage/dev-python/baron-0.9/work/baron-0.9/docs/advanced.rst` line 48
+# RuntimeError: Non Expected warning in
+# `/var/tmp/portage/dev-python/baron-0.9/work/baron-0.9/docs/advanced.rst` line 48
#distutils_enable_sphinx docs dev-python/matplotlib dev-python/ipython
diff --git a/dev-python/baron/metadata.xml b/dev-python/baron/metadata.xml
index 129faf78a..af2d9ad12 100644
--- a/dev-python/baron/metadata.xml
+++ b/dev-python/baron/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>xgqt@riseup.net</email>
- <name>Maciej Barć</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="github">PyCQA/baron</remote-id>
<remote-id type="pypi">baron</remote-id>
diff --git a/dev-python/base58/Manifest b/dev-python/base58/Manifest
index db3fd16b5..1e93990c3 100644
--- a/dev-python/base58/Manifest
+++ b/dev-python/base58/Manifest
@@ -1 +1 @@
-DIST base58-2.1.0.tar.gz 6351 BLAKE2B 0ec76670a5257cc9ff855f0cee359932ba8a25733bdf034e98a41c9cd42a30d89765c399b0e4ef211ed90be23eb41bd790c3d8bae283c35afc36a0c9f8416788 SHA512 1912d01eed30d923fecef72f643f1a1e9954c80505805ef5d673e361eb8ee73d5cbb7cdb48599cfa3b28969b79fb4fd9994aea21dc7a9779a1bb21d729dc058c
+DIST base58-2.1.1.tar.gz 6528 BLAKE2B 7ef740243fed7e2f39d3e6f1abe4782c0877415f7f8edbeba419e0ccf4ac7c6e0f6425f419a883df7f040abede7b88071c5d34f95b8e5f26d572cfda39b3af31 SHA512 b62620cf19716a70acaef1d2361f11e4188661935b1c349a73e8f0757b7643807a0e0ff2f98c7a672fd24d8d5301352998b86953583e690fb687c66929632a54
diff --git a/dev-python/base58/base58-2.1.0.ebuild b/dev-python/base58/base58-2.1.0.ebuild
deleted file mode 100644
index c629e7932..000000000
--- a/dev-python/base58/base58-2.1.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Base58 and Base58Check implementation"
-HOMEPAGE="https://github.com/keis/base58"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-BDEPEND="
- test? (
- dev-python/pyhamcrest[${PYTHON_USEDEP}]
- dev-python/pytest-benchmark[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/base58/base58-2.1.1-r1.ebuild b/dev-python/base58/base58-2.1.1-r1.ebuild
new file mode 100644
index 000000000..3a4300baf
--- /dev/null
+++ b/dev-python/base58/base58-2.1.1-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="Base58 and Base58Check implementation"
+HOMEPAGE="
+ https://pypi.org/project/base58/
+ https://github.com/keis/base58
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ test? ( dev-python/pyhamcrest[${PYTHON_USEDEP}] )
+"
+
+EPYTEST_DESELECT=(
+ # need pytest-benchmark
+ test_base58.py::test_encode_random
+ test_base58.py::test_decode_random
+)
+
+distutils_enable_tests pytest
diff --git a/dev-python/base58/metadata.xml b/dev-python/base58/metadata.xml
index e3fbb3b31..eb56a913c 100644
--- a/dev-python/base58/metadata.xml
+++ b/dev-python/base58/metadata.xml
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>a.zuber@gmx.ch</email>
- <name>Andreas Zuber</name>
- </maintainer>
- <upstream>
- <remote-id type="github">keis/base58</remote-id>
- </upstream>
+ <maintainer type="person">
+ <email>a.zuber@gmx.ch</email>
+ <name>Andreas Zuber</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">base58</remote-id>
+ <remote-id type="github">keis/base58</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/betamax-serializers/Manifest b/dev-python/betamax-serializers/Manifest
new file mode 100644
index 000000000..e93e9eec8
--- /dev/null
+++ b/dev-python/betamax-serializers/Manifest
@@ -0,0 +1 @@
+DIST betamax-serializers-0.2.1.tar.gz 3261 BLAKE2B 802a797c480ce0db4f1c84a9579c004699edddf1659e49a191835474a9fa500718a79b371ee0b510387fdf009935e761616cd6c17c427ae091897e6ffd681a52 SHA512 0297b91a0a5af17e02ec663151458df5721d5c773febc891985191dccea36ba349e81d39a5884e662c3b7b8899d1fd252a890970b6099d98bfa0aaab8f2b909f
diff --git a/dev-python/betamax-serializers/betamax-serializers-0.2.1.ebuild b/dev-python/betamax-serializers/betamax-serializers-0.2.1.ebuild
new file mode 100644
index 000000000..2cf15548d
--- /dev/null
+++ b/dev-python/betamax-serializers/betamax-serializers-0.2.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( pypy3 python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="A set of third-party serializers for Betamax"
+HOMEPAGE="https://pypi.org/project/betamax-serializers/ https://gitlab.com/betamax/serializers"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/betamax[${PYTHON_USEDEP}]"
+
+DOCS=( {AUTHORS,HISTORY,README}.rst )
+
+pkg_postinst() {
+ optfeature "YAML serializer support" dev-python/pyyaml
+}
diff --git a/dev-python/betamax-serializers/metadata.xml b/dev-python/betamax-serializers/metadata.xml
new file mode 100644
index 000000000..df2a59bc2
--- /dev/null
+++ b/dev-python/betamax-serializers/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <maintainer>
+ <email>graffatcolmingov@gmail.com</email>
+ <name>Ian Cordasco</name>
+ </maintainer>
+ <remote-id type="pypi">betamax-serializers</remote-id>
+ <remote-id type="gitlab">betamax/serializers</remote-id>
+ <changelog>https://pypi.org/rss/project/betamax-serializers/releases.xml</changelog>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/betterproto/Manifest b/dev-python/betterproto/Manifest
new file mode 100644
index 000000000..11fc008e0
--- /dev/null
+++ b/dev-python/betterproto/Manifest
@@ -0,0 +1,2 @@
+DIST betterproto-2.0.0_beta4.gh.tar.gz 137744 BLAKE2B 55cde21cca516ae935d8ff99303e3dcf78d952c470eaac2f91b5fa1dc20069e0ad150a0b59518d450c897547a3b3025d9ad683294adca5be6d66f06ba8034615 SHA512 10fc514e7a6d1ab87dd44e00d75d8f48752fa1ece26ccc671eeac502164aee2b8e4a30ec908e4abbb4b1c6671c72fc982764d74ccd0ac0f099d3533dcde64352
+DIST betterproto-2.0.0_beta5.gh.tar.gz 122701 BLAKE2B 6083afab1759653c53f97fd0d65b96941588e7038bc24138d486105fe6d419eb79ca6b8d585263237b02fa40b626560c272c114db15fe5f649e499ba5d6798ab SHA512 b40ecd77ff731d1b157debcc81361aa11a8c94d8198e9e99e94014b883d1f8f34fec86a071de3db06edda37afa5813a5c04f6e29ff75d23da6b0ba1f990f827d
diff --git a/dev-python/betterproto/betterproto-2.0.0_beta4.ebuild b/dev-python/betterproto/betterproto-2.0.0_beta4.ebuild
new file mode 100644
index 000000000..d14f1bea4
--- /dev/null
+++ b/dev-python/betterproto/betterproto-2.0.0_beta4.ebuild
@@ -0,0 +1,56 @@
+# 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_{10..11} )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Better Protobuf / gRPC Support for Python"
+HOMEPAGE="https://github.com/danielgtaylor/python-betterproto"
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/danielgtaylor/python-betterproto"
+else
+ MY_PV="${PV/_beta/b}"
+ S="${WORKDIR}/python-${PN}-${MY_PV}"
+ SRC_URI="https://github.com/danielgtaylor/python-${PN}/archive/refs/tags/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+PATCHES=(
+ "${FILESDIR}/betterproto-2.0.0b4-fix-tests.patch"
+ )
+
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/grpclib-0.4.1[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.8.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/black-19.3[${PYTHON_USEDEP}]
+ >=dev-python/isort-5.10.1[${PYTHON_USEDEP}]
+ >=dev-python/jinja-2.11.2[${PYTHON_USEDEP}]
+ >=dev-python/grpcio-tools-1.40.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-mock-3.1.1[${PYTHON_USEDEP}]
+ >=dev-python/pytest-asyncio-0.12.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ '>=dev-python/sphinx-rtd-theme-0.5.0'
+
+python_test() {
+ "${EPYTHON}" -m tests.generate
+ epytest
+}
+
+pkg_postinst() {
+ optfeature "protoc compilation support" "dev-python/black dev-python/isort dev-python/grpcio-tools dev-python/jinja"
+}
diff --git a/dev-python/betterproto/betterproto-2.0.0_beta5.ebuild b/dev-python/betterproto/betterproto-2.0.0_beta5.ebuild
new file mode 100644
index 000000000..954c2ac03
--- /dev/null
+++ b/dev-python/betterproto/betterproto-2.0.0_beta5.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=poetry
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Better Protobuf / gRPC Support for Python"
+HOMEPAGE="https://github.com/danielgtaylor/python-betterproto"
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/danielgtaylor/python-betterproto"
+else
+ MY_PV="${PV/_beta/b}"
+ S="${WORKDIR}/python-${PN}-${MY_PV}"
+ SRC_URI="https://github.com/danielgtaylor/python-${PN}/archive/refs/tags/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/grpclib-0.4.1[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.8.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/black-19.3[${PYTHON_USEDEP}]
+ >=dev-python/isort-5.10.1[${PYTHON_USEDEP}]
+ >=dev-python/jinja-3.0.3[${PYTHON_USEDEP}]
+ >=dev-python/grpcio-tools-1.40.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-mock-3.1.1[${PYTHON_USEDEP}]
+ >=dev-python/pytest-asyncio-0.12.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ '>=dev-python/sphinx-rtd-theme-0.5.0'
+
+python_test() {
+ "${EPYTHON}" -m tests.generate
+ epytest
+}
+
+pkg_postinst() {
+ optfeature "protoc compilation support" "dev-python/black dev-python/isort dev-python/grpcio-tools dev-python/jinja"
+}
diff --git a/dev-python/betterproto/betterproto-9999.ebuild b/dev-python/betterproto/betterproto-9999.ebuild
new file mode 100644
index 000000000..e54eff02a
--- /dev/null
+++ b/dev-python/betterproto/betterproto-9999.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=poetry
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Better Protobuf / gRPC Support for Python"
+HOMEPAGE="https://github.com/danielgtaylor/python-betterproto"
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/danielgtaylor/python-betterproto"
+else
+ MY_PV="${PV/_beta/b}"
+ S="${WORKDIR}/python-${PN}-${MY_PV}"
+ SRC_URI="https://github.com/danielgtaylor/python-${PN}/archive/refs/tags/v${MY_PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/grpclib-0.4.1[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.8.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/black-19.3[${PYTHON_USEDEP}]
+ >=dev-python/isort-5.10.1[${PYTHON_USEDEP}]
+ >=dev-python/jinja-2.11.2[${PYTHON_USEDEP}]
+ >=dev-python/grpcio-tools-1.40.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-mock-3.1.1[${PYTHON_USEDEP}]
+ >=dev-python/pytest-asyncio-0.12.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ '>=dev-python/sphinx-rtd-theme-0.5.0'
+
+python_test() {
+ "${EPYTHON}" -m tests.generate
+ epytest
+}
+
+pkg_postinst() {
+ optfeature "protoc compilation support" "dev-python/black dev-python/isort dev-python/grpcio-tools dev-python/jinja"
+}
diff --git a/dev-python/betterproto/files/betterproto-2.0.0b4-fix-tests.patch b/dev-python/betterproto/files/betterproto-2.0.0b4-fix-tests.patch
new file mode 100644
index 000000000..f97267741
--- /dev/null
+++ b/dev-python/betterproto/files/betterproto-2.0.0b4-fix-tests.patch
@@ -0,0 +1,1086 @@
+From bd69862a0200eee369ddd44ab2a28e0066ca582d Mon Sep 17 00:00:00 2001
+From: Arun Babu Neelicattu <arun.neelicattu@gmail.com>
+Date: Thu, 3 Mar 2022 14:34:53 +0100
+Subject: [PATCH] test input: use explicit package declaration (#345)
+
+---
+ .github/workflows/ci.yml | 5 ++---
+ tests/conftest.py | 10 ++++++++++
+ tests/generate.py | 2 +-
+ tests/grpc/test_grpclib_client.py | 4 ++--
+ tests/grpc/thing_service.py | 2 +-
+ tests/inputs/bool/bool.proto | 2 ++
+ tests/inputs/bytes/bytes.proto | 2 ++
+ tests/inputs/casing/casing.proto | 2 ++
+ .../casing_message_field_uppercase.proto | 2 ++
+ tests/inputs/deprecated/deprecated.proto | 2 ++
+ tests/inputs/deprecated_field/deprecated_field.proto | 2 ++
+ tests/inputs/double/double.proto | 2 ++
+ tests/inputs/empty_repeated/empty_repeated.proto | 2 ++
+ tests/inputs/enum/enum.proto | 2 ++
+ tests/inputs/example/example.proto | 2 ++
+ tests/inputs/example_service/test_example_service.py | 2 +-
+ .../field_name_identical_to_type.proto | 2 ++
+ tests/inputs/fixed/fixed.proto | 2 ++
+ tests/inputs/float/float.proto | 2 ++
+ .../google_impl_behavior_equivalence.proto | 2 ++
+ tests/inputs/googletypes/googletypes.proto | 2 ++
+ .../googletypes_response/googletypes_response.proto | 2 ++
+ .../googletypes_response_embedded.proto | 2 ++
+ .../googletypes_service_returns_empty.proto | 2 ++
+ .../googletypes_service_returns_googletype.proto | 2 ++
+ .../googletypes_struct/googletypes_struct.proto | 2 ++
+ .../inputs/googletypes_value/googletypes_value.proto | 2 ++
+ .../import_capitalized_package/capitalized.proto | 2 +-
+ tests/inputs/import_capitalized_package/test.proto | 2 ++
+ .../import_child_package_from_package/child.proto | 2 +-
+ .../import_child_package_from_package.proto | 2 ++
+ .../package_message.proto | 2 +-
+ .../inputs/import_child_package_from_root/child.proto | 2 +-
+ .../import_child_package_from_root.proto | 2 ++
+ .../import_circular_dependency.proto | 2 ++
+ tests/inputs/import_circular_dependency/other.proto | 2 +-
+ tests/inputs/import_circular_dependency/root.proto | 2 ++
+ tests/inputs/import_cousin_package/cousin.proto | 2 +-
+ tests/inputs/import_cousin_package/test.proto | 2 +-
+ .../import_cousin_package_same_name/cousin.proto | 2 +-
+ .../inputs/import_cousin_package_same_name/test.proto | 2 +-
+ .../import_packages_same_name.proto | 2 ++
+ tests/inputs/import_packages_same_name/posts_v1.proto | 2 +-
+ tests/inputs/import_packages_same_name/users_v1.proto | 2 +-
+ .../import_parent_package_from_child.proto | 2 +-
+ .../parent_package_message.proto | 2 +-
+ .../inputs/import_root_package_from_child/child.proto | 2 +-
+ .../inputs/import_root_package_from_child/root.proto | 2 ++
+ .../import_root_sibling/import_root_sibling.proto | 2 ++
+ tests/inputs/import_root_sibling/sibling.proto | 2 ++
+ .../child_package_request_message.proto | 2 +-
+ .../import_service_input_message.proto | 2 ++
+ .../request_message.proto | 2 ++
+ tests/inputs/int32/int32.proto | 2 ++
+ tests/inputs/map/map.proto | 2 ++
+ tests/inputs/mapmessage/mapmessage.proto | 2 ++
+ .../namespace_builtin_types.proto | 2 ++
+ .../namespace_keywords/namespace_keywords.proto | 2 ++
+ tests/inputs/nested/nested.proto | 2 ++
+ tests/inputs/nested2/nested2.proto | 2 ++
+ tests/inputs/nested2/package.proto | 2 +-
+ tests/inputs/nestedtwice/nestedtwice.proto | 2 ++
+ tests/inputs/oneof/oneof.proto | 2 ++
+ .../oneof_default_value_serialization.proto | 2 ++
+ tests/inputs/oneof_empty/oneof_empty.proto | 2 ++
+ tests/inputs/oneof_enum/oneof_enum.proto | 2 ++
+ .../proto3_field_presence/proto3_field_presence.proto | 2 ++
+ .../proto3_field_presence_oneof.proto | 2 ++
+ tests/inputs/recursivemessage/recursivemessage.proto | 2 ++
+ tests/inputs/ref/ref.proto | 2 ++
+ tests/inputs/repeated/repeated.proto | 2 ++
+ .../repeated_duration_timestamp.proto | 2 ++
+ tests/inputs/repeatedpacked/repeatedpacked.proto | 2 ++
+ tests/inputs/service_separate_packages/messages.proto | 2 +-
+ tests/inputs/service_separate_packages/service.proto | 2 +-
+ tests/inputs/signed/signed.proto | 2 ++
+ tests/test_features.py | 2 +-
+ tests/test_inputs.py | 11 +----------
+ 78 files changed, 141 insertions(+), 37 deletions(-)
+
+diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
+index 02f5ea9..120bfa8 100644
+--- a/.github/workflows/ci.yml
++++ b/.github/workflows/ci.yml
+@@ -13,6 +13,7 @@ jobs:
+ name: ${{ matrix.os }} / ${{ matrix.python-version }}
+ runs-on: ${{ matrix.os }}-latest
+ strategy:
++ fail-fast: false
+ matrix:
+ os: [Ubuntu, MacOS, Windows]
+ python-version: ['3.6.7', '3.7', '3.8', '3.9', '3.10']
+@@ -56,9 +57,7 @@ jobs:
+
+ - name: Install dependencies
+ shell: bash
+- run: |
+- poetry run python -m pip install pip -U
+- poetry install
++ run: poetry install
+
+ - name: Generate code from proto files
+ shell: bash
+diff --git a/tests/conftest.py b/tests/conftest.py
+index 6ab4f03..c6b256d 100644
+--- a/tests/conftest.py
++++ b/tests/conftest.py
+@@ -1,3 +1,6 @@
++import copy
++import sys
++
+ import pytest
+
+
+@@ -10,3 +13,10 @@ def pytest_addoption(parser):
+ @pytest.fixture(scope="session")
+ def repeat(request):
+ return request.config.getoption("repeat")
++
++
++@pytest.fixture
++def reset_sys_path():
++ original = copy.deepcopy(sys.path)
++ yield
++ sys.path = original
+diff --git a/tests/generate.py b/tests/generate.py
+index 1d7d3e9..8599804 100755
+--- a/tests/generate.py
++++ b/tests/generate.py
+@@ -78,7 +78,7 @@ async def generate_test_case_output(
+ """
+
+ test_case_output_path_reference = output_path_reference.joinpath(test_case_name)
+- test_case_output_path_betterproto = output_path_betterproto.joinpath(test_case_name)
++ test_case_output_path_betterproto = output_path_betterproto
+
+ os.makedirs(test_case_output_path_reference, exist_ok=True)
+ os.makedirs(test_case_output_path_betterproto, exist_ok=True)
+diff --git a/tests/grpc/test_grpclib_client.py b/tests/grpc/test_grpclib_client.py
+index dc13885..28ce56f 100644
+--- a/tests/grpc/test_grpclib_client.py
++++ b/tests/grpc/test_grpclib_client.py
+@@ -7,12 +7,12 @@ import grpclib.server
+ import asyncio
+ import sys
+
+-from tests.output_betterproto.service.service import (
++from tests.output_betterproto.service import (
+ DoThingRequest,
+ DoThingResponse,
+ GetThingRequest,
+ TestStub as ThingServiceClient,
+ )
+ import grpclib
+ import grpclib.metadata
+
+diff --git a/tests/grpc/thing_service.py b/tests/grpc/thing_service.py
+index ae05852..835d6f1 100644
+--- a/tests/grpc/thing_service.py
++++ b/tests/grpc/thing_service.py
+@@ -1,4 +1,4 @@
+-from tests.output_betterproto.service.service import (
++from tests.output_betterproto.service import (
+ DoThingResponse,
+ DoThingRequest,
+ GetThingRequest,
+diff --git a/tests/inputs/bool/bool.proto b/tests/inputs/bool/bool.proto
+index 237e7db..77836b8 100644
+--- a/tests/inputs/bool/bool.proto
++++ b/tests/inputs/bool/bool.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package bool;
++
+ message Test {
+ bool value = 1;
+ }
+diff --git a/tests/inputs/bytes/bytes.proto b/tests/inputs/bytes/bytes.proto
+index de677e3..9895468 100644
+--- a/tests/inputs/bytes/bytes.proto
++++ b/tests/inputs/bytes/bytes.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package bytes;
++
+ message Test {
+ bytes data = 1;
+ }
+diff --git a/tests/inputs/casing/casing.proto b/tests/inputs/casing/casing.proto
+index ca458b5..2023d93 100644
+--- a/tests/inputs/casing/casing.proto
++++ b/tests/inputs/casing/casing.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package casing;
++
+ enum my_enum {
+ ZERO = 0;
+ ONE = 1;
+diff --git a/tests/inputs/casing_message_field_uppercase/casing_message_field_uppercase.proto b/tests/inputs/casing_message_field_uppercase/casing_message_field_uppercase.proto
+index 9964dfa..c6d42c3 100644
+--- a/tests/inputs/casing_message_field_uppercase/casing_message_field_uppercase.proto
++++ b/tests/inputs/casing_message_field_uppercase/casing_message_field_uppercase.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package casing_message_field_uppercase;
++
+ message Test {
+ int32 UPPERCASE = 1;
+ int32 UPPERCASE_V2 = 2;
+diff --git a/tests/inputs/deprecated/deprecated.proto b/tests/inputs/deprecated/deprecated.proto
+index aa1f818..d7102d0 100644
+--- a/tests/inputs/deprecated/deprecated.proto
++++ b/tests/inputs/deprecated/deprecated.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package deprecated;
++
+ // Some documentation about the Test message.
+ message Test {
+ // Some documentation about the value.
+diff --git a/tests/inputs/deprecated_field/deprecated_field.proto b/tests/inputs/deprecated_field/deprecated_field.proto
+index 04de1a9..d303c8d 100644
+--- a/tests/inputs/deprecated_field/deprecated_field.proto
++++ b/tests/inputs/deprecated_field/deprecated_field.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package deprecated_field;
++
+ // Some documentation about the Test message.
+ message Test {
+ // Some documentation about the value.
+diff --git a/tests/inputs/double/double.proto b/tests/inputs/double/double.proto
+index 88525d9..66aea95 100644
+--- a/tests/inputs/double/double.proto
++++ b/tests/inputs/double/double.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package double;
++
+ message Test {
+ double count = 1;
+ }
+diff --git a/tests/inputs/empty_repeated/empty_repeated.proto b/tests/inputs/empty_repeated/empty_repeated.proto
+index 3be831a..f787301 100644
+--- a/tests/inputs/empty_repeated/empty_repeated.proto
++++ b/tests/inputs/empty_repeated/empty_repeated.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package empty_repeated;
++
+ message MessageA {
+ repeated float values = 1;
+ }
+diff --git a/tests/inputs/enum/enum.proto b/tests/inputs/enum/enum.proto
+index a2dfe43..97e12b4 100644
+--- a/tests/inputs/enum/enum.proto
++++ b/tests/inputs/enum/enum.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package enum;
++
+ // Tests that enums are correctly serialized and that it correctly handles skipped and out-of-order enum values
+ message Test {
+ Choice choice = 1;
+diff --git a/tests/inputs/example/example.proto b/tests/inputs/example/example.proto
+index 3111058..56bd364 100644
+--- a/tests/inputs/example/example.proto
++++ b/tests/inputs/example/example.proto
+@@ -39,6 +39,8 @@
+
+ syntax = "proto2";
+
++package example;
++
+ // package google.protobuf;
+
+ option go_package = "google.golang.org/protobuf/types/descriptorpb";
+diff --git a/tests/inputs/example_service/test_example_service.py b/tests/inputs/example_service/test_example_service.py
+index a770ed5..49c58f6 100644
+--- a/tests/inputs/example_service/test_example_service.py
++++ b/tests/inputs/example_service/test_example_service.py
+@@ -2,8 +2,8 @@ from typing import AsyncIterable, AsyncIterator
+
+ import pytest
+ from grpclib.testing import ChannelFor
+
+-from tests.output_betterproto.example_service.example_service import (
++from tests.output_betterproto.example_service import (
+ TestBase,
+ TestStub,
+ ExampleRequest,
+diff --git a/tests/inputs/field_name_identical_to_type/field_name_identical_to_type.proto b/tests/inputs/field_name_identical_to_type/field_name_identical_to_type.proto
+index 50fd590..81a0fc4 100644
+--- a/tests/inputs/field_name_identical_to_type/field_name_identical_to_type.proto
++++ b/tests/inputs/field_name_identical_to_type/field_name_identical_to_type.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package field_name_identical_to_type;
++
+ // Tests that messages may contain fields with names that are identical to their python types (PR #294)
+
+ message Test {
+diff --git a/tests/inputs/fixed/fixed.proto b/tests/inputs/fixed/fixed.proto
+index 50dad84..0f0ffb4 100644
+--- a/tests/inputs/fixed/fixed.proto
++++ b/tests/inputs/fixed/fixed.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package fixed;
++
+ message Test {
+ fixed32 foo = 1;
+ sfixed32 bar = 2;
+diff --git a/tests/inputs/float/float.proto b/tests/inputs/float/float.proto
+index 79922af..fea12b3 100644
+--- a/tests/inputs/float/float.proto
++++ b/tests/inputs/float/float.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package float;
++
+ // Some documentation about the Test message.
+ message Test {
+ double positive = 1;
+diff --git a/tests/inputs/google_impl_behavior_equivalence/google_impl_behavior_equivalence.proto b/tests/inputs/google_impl_behavior_equivalence/google_impl_behavior_equivalence.proto
+index 31b6bd3..5357a7c 100644
+--- a/tests/inputs/google_impl_behavior_equivalence/google_impl_behavior_equivalence.proto
++++ b/tests/inputs/google_impl_behavior_equivalence/google_impl_behavior_equivalence.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package google_impl_behavior_equivalence;
++
+ message Foo{
+ int64 bar = 1;
+ }
+diff --git a/tests/inputs/googletypes/googletypes.proto b/tests/inputs/googletypes/googletypes.proto
+index ba3db12..ef8cb4a 100644
+--- a/tests/inputs/googletypes/googletypes.proto
++++ b/tests/inputs/googletypes/googletypes.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package googletypes;
++
+ import "google/protobuf/duration.proto";
+ import "google/protobuf/timestamp.proto";
+ import "google/protobuf/wrappers.proto";
+diff --git a/tests/inputs/googletypes_response/googletypes_response.proto b/tests/inputs/googletypes_response/googletypes_response.proto
+index 9b0be5c..8917d1c 100644
+--- a/tests/inputs/googletypes_response/googletypes_response.proto
++++ b/tests/inputs/googletypes_response/googletypes_response.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package googletypes_response;
++
+ import "google/protobuf/wrappers.proto";
+
+ // Tests that wrapped values can be used directly as return values
+diff --git a/tests/inputs/googletypes_response_embedded/googletypes_response_embedded.proto b/tests/inputs/googletypes_response_embedded/googletypes_response_embedded.proto
+index 89ae4cc..47284e3 100644
+--- a/tests/inputs/googletypes_response_embedded/googletypes_response_embedded.proto
++++ b/tests/inputs/googletypes_response_embedded/googletypes_response_embedded.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package googletypes_response_embedded;
++
+ import "google/protobuf/wrappers.proto";
+
+ // Tests that wrapped values are supported as part of output message
+diff --git a/tests/inputs/googletypes_service_returns_empty/googletypes_service_returns_empty.proto b/tests/inputs/googletypes_service_returns_empty/googletypes_service_returns_empty.proto
+index c454691..2153ad5 100644
+--- a/tests/inputs/googletypes_service_returns_empty/googletypes_service_returns_empty.proto
++++ b/tests/inputs/googletypes_service_returns_empty/googletypes_service_returns_empty.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package googletypes_service_returns_empty;
++
+ import "google/protobuf/empty.proto";
+
+ service Test {
+diff --git a/tests/inputs/googletypes_service_returns_googletype/googletypes_service_returns_googletype.proto b/tests/inputs/googletypes_service_returns_googletype/googletypes_service_returns_googletype.proto
+index 49b2a55..457707b 100644
+--- a/tests/inputs/googletypes_service_returns_googletype/googletypes_service_returns_googletype.proto
++++ b/tests/inputs/googletypes_service_returns_googletype/googletypes_service_returns_googletype.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package googletypes_service_returns_googletype;
++
+ import "google/protobuf/empty.proto";
+ import "google/protobuf/struct.proto";
+
+diff --git a/tests/inputs/googletypes_struct/googletypes_struct.proto b/tests/inputs/googletypes_struct/googletypes_struct.proto
+index 1dbd64a..2b8b5c5 100644
+--- a/tests/inputs/googletypes_struct/googletypes_struct.proto
++++ b/tests/inputs/googletypes_struct/googletypes_struct.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package googletypes_struct;
++
+ import "google/protobuf/struct.proto";
+
+ message Test {
+diff --git a/tests/inputs/googletypes_value/googletypes_value.proto b/tests/inputs/googletypes_value/googletypes_value.proto
+index 379d336..d5089d5 100644
+--- a/tests/inputs/googletypes_value/googletypes_value.proto
++++ b/tests/inputs/googletypes_value/googletypes_value.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package googletypes_value;
++
+ import "google/protobuf/struct.proto";
+
+ // Tests that fields of type google.protobuf.Value can contain arbitrary JSON-values.
+diff --git a/tests/inputs/import_capitalized_package/capitalized.proto b/tests/inputs/import_capitalized_package/capitalized.proto
+index 0b73bab..e80c95c 100644
+--- a/tests/inputs/import_capitalized_package/capitalized.proto
++++ b/tests/inputs/import_capitalized_package/capitalized.proto
+@@ -1,7 +1,7 @@
+ syntax = "proto3";
+
+
+-package Capitalized;
++package import_capitalized_package.Capitalized;
+
+ message Message {
+
+diff --git a/tests/inputs/import_capitalized_package/test.proto b/tests/inputs/import_capitalized_package/test.proto
+index f94bbc9..38c9b2d 100644
+--- a/tests/inputs/import_capitalized_package/test.proto
++++ b/tests/inputs/import_capitalized_package/test.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package import_capitalized_package;
++
+ import "capitalized.proto";
+
+ // Tests that we can import from a package with a capital name, that looks like a nested type, but isn't.
+diff --git a/tests/inputs/import_child_package_from_package/child.proto b/tests/inputs/import_child_package_from_package/child.proto
+index 0865fc8..d99c7c3 100644
+--- a/tests/inputs/import_child_package_from_package/child.proto
++++ b/tests/inputs/import_child_package_from_package/child.proto
+@@ -1,6 +1,6 @@
+ syntax = "proto3";
+
+-package package.childpackage;
++package import_child_package_from_package.package.childpackage;
+
+ message ChildMessage {
+
+diff --git a/tests/inputs/import_child_package_from_package/import_child_package_from_package.proto b/tests/inputs/import_child_package_from_package/import_child_package_from_package.proto
+index 0d09132..66e0aa8 100644
+--- a/tests/inputs/import_child_package_from_package/import_child_package_from_package.proto
++++ b/tests/inputs/import_child_package_from_package/import_child_package_from_package.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package import_child_package_from_package;
++
+ import "package_message.proto";
+
+ // Tests generated imports when a message in a package refers to a message in a nested child package.
+diff --git a/tests/inputs/import_child_package_from_package/package_message.proto b/tests/inputs/import_child_package_from_package/package_message.proto
+index 943282c..79d66f3 100644
+--- a/tests/inputs/import_child_package_from_package/package_message.proto
++++ b/tests/inputs/import_child_package_from_package/package_message.proto
+@@ -2,7 +2,7 @@ syntax = "proto3";
+
+ import "child.proto";
+
+-package package;
++package import_child_package_from_package.package;
+
+ message PackageMessage {
+ package.childpackage.ChildMessage c = 1;
+diff --git a/tests/inputs/import_child_package_from_root/child.proto b/tests/inputs/import_child_package_from_root/child.proto
+index c874e14..2a46d5f 100644
+--- a/tests/inputs/import_child_package_from_root/child.proto
++++ b/tests/inputs/import_child_package_from_root/child.proto
+@@ -1,6 +1,6 @@
+ syntax = "proto3";
+
+-package childpackage;
++package import_child_package_from_root.childpackage;
+
+ message Message {
+
+diff --git a/tests/inputs/import_child_package_from_root/import_child_package_from_root.proto b/tests/inputs/import_child_package_from_root/import_child_package_from_root.proto
+index d0c111f..6299831 100644
+--- a/tests/inputs/import_child_package_from_root/import_child_package_from_root.proto
++++ b/tests/inputs/import_child_package_from_root/import_child_package_from_root.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package import_child_package_from_root;
++
+ import "child.proto";
+
+ // Tests generated imports when a message in root refers to a message in a child package.
+diff --git a/tests/inputs/import_circular_dependency/import_circular_dependency.proto b/tests/inputs/import_circular_dependency/import_circular_dependency.proto
+index 7d02aad..8b159e2 100644
+--- a/tests/inputs/import_circular_dependency/import_circular_dependency.proto
++++ b/tests/inputs/import_circular_dependency/import_circular_dependency.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package import_circular_dependency;
++
+ import "root.proto";
+ import "other.proto";
+
+diff --git a/tests/inputs/import_circular_dependency/other.proto b/tests/inputs/import_circular_dependency/other.proto
+index 2b936a9..833b869 100644
+--- a/tests/inputs/import_circular_dependency/other.proto
++++ b/tests/inputs/import_circular_dependency/other.proto
+@@ -1,7 +1,7 @@
+ syntax = "proto3";
+
+ import "root.proto";
+-package other;
++package import_circular_dependency.other;
+
+ message OtherPackageMessage {
+ RootPackageMessage rootPackageMessage = 1;
+diff --git a/tests/inputs/import_circular_dependency/root.proto b/tests/inputs/import_circular_dependency/root.proto
+index 63d15bf..7383947 100644
+--- a/tests/inputs/import_circular_dependency/root.proto
++++ b/tests/inputs/import_circular_dependency/root.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package import_circular_dependency;
++
+ message RootPackageMessage {
+
+ }
+diff --git a/tests/inputs/import_cousin_package/cousin.proto b/tests/inputs/import_cousin_package/cousin.proto
+index 4361545..2870dfe 100644
+--- a/tests/inputs/import_cousin_package/cousin.proto
++++ b/tests/inputs/import_cousin_package/cousin.proto
+@@ -1,6 +1,6 @@
+ syntax = "proto3";
+
+-package cousin.cousin_subpackage;
++package import_cousin_package.cousin.cousin_subpackage;
+
+ message CousinMessage {
+ }
+diff --git a/tests/inputs/import_cousin_package/test.proto b/tests/inputs/import_cousin_package/test.proto
+index 53f3b7f..89ec3d8 100644
+--- a/tests/inputs/import_cousin_package/test.proto
++++ b/tests/inputs/import_cousin_package/test.proto
+@@ -1,6 +1,6 @@
+ syntax = "proto3";
+
+-package test.subpackage;
++package import_cousin_package.test.subpackage;
+
+ import "cousin.proto";
+
+diff --git a/tests/inputs/import_cousin_package_same_name/cousin.proto b/tests/inputs/import_cousin_package_same_name/cousin.proto
+index 9253b95..84b6a40 100644
+--- a/tests/inputs/import_cousin_package_same_name/cousin.proto
++++ b/tests/inputs/import_cousin_package_same_name/cousin.proto
+@@ -1,6 +1,6 @@
+ syntax = "proto3";
+
+-package cousin.subpackage;
++package import_cousin_package_same_name.cousin.subpackage;
+
+ message CousinMessage {
+ }
+diff --git a/tests/inputs/import_cousin_package_same_name/test.proto b/tests/inputs/import_cousin_package_same_name/test.proto
+index fe31b5f..7b420d3 100644
+--- a/tests/inputs/import_cousin_package_same_name/test.proto
++++ b/tests/inputs/import_cousin_package_same_name/test.proto
+@@ -1,6 +1,6 @@
+ syntax = "proto3";
+
+-package test.subpackage;
++package import_cousin_package_same_name.test.subpackage;
+
+ import "cousin.proto";
+
+diff --git a/tests/inputs/import_packages_same_name/import_packages_same_name.proto b/tests/inputs/import_packages_same_name/import_packages_same_name.proto
+index c1f28e9..dff7efe 100644
+--- a/tests/inputs/import_packages_same_name/import_packages_same_name.proto
++++ b/tests/inputs/import_packages_same_name/import_packages_same_name.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package import_packages_same_name;
++
+ import "users_v1.proto";
+ import "posts_v1.proto";
+
+diff --git a/tests/inputs/import_packages_same_name/posts_v1.proto b/tests/inputs/import_packages_same_name/posts_v1.proto
+index 506bf11..d3b9b1c 100644
+--- a/tests/inputs/import_packages_same_name/posts_v1.proto
++++ b/tests/inputs/import_packages_same_name/posts_v1.proto
+@@ -1,6 +1,6 @@
+ syntax = "proto3";
+
+-package posts.v1;
++package import_packages_same_name.posts.v1;
+
+ message Post {
+
+diff --git a/tests/inputs/import_packages_same_name/users_v1.proto b/tests/inputs/import_packages_same_name/users_v1.proto
+index 6e46ba8..d3a17e9 100644
+--- a/tests/inputs/import_packages_same_name/users_v1.proto
++++ b/tests/inputs/import_packages_same_name/users_v1.proto
+@@ -1,6 +1,6 @@
+ syntax = "proto3";
+
+-package users.v1;
++package import_packages_same_name.users.v1;
+
+ message User {
+
+diff --git a/tests/inputs/import_parent_package_from_child/import_parent_package_from_child.proto b/tests/inputs/import_parent_package_from_child/import_parent_package_from_child.proto
+index c43c1bc..edc4736 100644
+--- a/tests/inputs/import_parent_package_from_child/import_parent_package_from_child.proto
++++ b/tests/inputs/import_parent_package_from_child/import_parent_package_from_child.proto
+@@ -2,7 +2,7 @@ syntax = "proto3";
+
+ import "parent_package_message.proto";
+
+-package parent.child;
++package import_parent_package_from_child.parent.child;
+
+ // Tests generated imports when a message refers to a message defined in its parent package
+
+diff --git a/tests/inputs/import_parent_package_from_child/parent_package_message.proto b/tests/inputs/import_parent_package_from_child/parent_package_message.proto
+index cea3066..fb3fd31 100644
+--- a/tests/inputs/import_parent_package_from_child/parent_package_message.proto
++++ b/tests/inputs/import_parent_package_from_child/parent_package_message.proto
+@@ -1,6 +1,6 @@
+ syntax = "proto3";
+
+-package parent;
++package import_parent_package_from_child.parent;
+
+ message ParentPackageMessage {
+ }
+diff --git a/tests/inputs/import_root_package_from_child/child.proto b/tests/inputs/import_root_package_from_child/child.proto
+index d2b29cc..bd51967 100644
+--- a/tests/inputs/import_root_package_from_child/child.proto
++++ b/tests/inputs/import_root_package_from_child/child.proto
+@@ -1,6 +1,6 @@
+ syntax = "proto3";
+
+-package child;
++package import_root_package_from_child.child;
+
+ import "root.proto";
+
+diff --git a/tests/inputs/import_root_package_from_child/root.proto b/tests/inputs/import_root_package_from_child/root.proto
+index 650b29b..6ae955a 100644
+--- a/tests/inputs/import_root_package_from_child/root.proto
++++ b/tests/inputs/import_root_package_from_child/root.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package import_root_package_from_child;
++
+
+ message RootMessage {
+ }
+diff --git a/tests/inputs/import_root_sibling/import_root_sibling.proto b/tests/inputs/import_root_sibling/import_root_sibling.proto
+index 1d671b8..759e606 100644
+--- a/tests/inputs/import_root_sibling/import_root_sibling.proto
++++ b/tests/inputs/import_root_sibling/import_root_sibling.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package import_root_sibling;
++
+ import "sibling.proto";
+
+ // Tests generated imports when a message in the root package refers to another message in the root package
+diff --git a/tests/inputs/import_root_sibling/sibling.proto b/tests/inputs/import_root_sibling/sibling.proto
+index 870baff..6b6ba2e 100644
+--- a/tests/inputs/import_root_sibling/sibling.proto
++++ b/tests/inputs/import_root_sibling/sibling.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package import_root_sibling;
++
+ message SiblingMessage {
+
+ }
+diff --git a/tests/inputs/import_service_input_message/child_package_request_message.proto b/tests/inputs/import_service_input_message/child_package_request_message.proto
+index 6380db2..54fc112 100644
+--- a/tests/inputs/import_service_input_message/child_package_request_message.proto
++++ b/tests/inputs/import_service_input_message/child_package_request_message.proto
+@@ -1,6 +1,6 @@
+ syntax = "proto3";
+
+-package child;
++package import_service_input_message.child;
+
+ message ChildRequestMessage {
+ int32 child_argument = 1;
+diff --git a/tests/inputs/import_service_input_message/import_service_input_message.proto b/tests/inputs/import_service_input_message/import_service_input_message.proto
+index 7ca9c46..cbf48fa 100644
+--- a/tests/inputs/import_service_input_message/import_service_input_message.proto
++++ b/tests/inputs/import_service_input_message/import_service_input_message.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package import_service_input_message;
++
+ import "request_message.proto";
+ import "child_package_request_message.proto";
+
+diff --git a/tests/inputs/import_service_input_message/request_message.proto b/tests/inputs/import_service_input_message/request_message.proto
+index 5bfceed..36a6e78 100644
+--- a/tests/inputs/import_service_input_message/request_message.proto
++++ b/tests/inputs/import_service_input_message/request_message.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package import_service_input_message;
++
+ message RequestMessage {
+ int32 argument = 1;
+ }
+\ No newline at end of file
+diff --git a/tests/inputs/int32/int32.proto b/tests/inputs/int32/int32.proto
+index cae0dc7..4721c23 100644
+--- a/tests/inputs/int32/int32.proto
++++ b/tests/inputs/int32/int32.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package int32;
++
+ // Some documentation about the Test message.
+ message Test {
+ // Some documentation about the count.
+diff --git a/tests/inputs/map/map.proto b/tests/inputs/map/map.proto
+index 669e287..ecef3cc 100644
+--- a/tests/inputs/map/map.proto
++++ b/tests/inputs/map/map.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package map;
++
+ message Test {
+ map<string, int32> counts = 1;
+ }
+diff --git a/tests/inputs/mapmessage/mapmessage.proto b/tests/inputs/mapmessage/mapmessage.proto
+index 07dcce5..2c704a4 100644
+--- a/tests/inputs/mapmessage/mapmessage.proto
++++ b/tests/inputs/mapmessage/mapmessage.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package mapmessage;
++
+ message Test {
+ map<string, Nested> items = 1;
+ }
+diff --git a/tests/inputs/namespace_builtin_types/namespace_builtin_types.proto b/tests/inputs/namespace_builtin_types/namespace_builtin_types.proto
+index 636bb55..71cb029 100644
+--- a/tests/inputs/namespace_builtin_types/namespace_builtin_types.proto
++++ b/tests/inputs/namespace_builtin_types/namespace_builtin_types.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package namespace_builtin_types;
++
+ // Tests that messages may contain fields with names that are python types
+
+ message Test {
+diff --git a/tests/inputs/namespace_keywords/namespace_keywords.proto b/tests/inputs/namespace_keywords/namespace_keywords.proto
+index 6d1a7c5..ac3e5c5 100644
+--- a/tests/inputs/namespace_keywords/namespace_keywords.proto
++++ b/tests/inputs/namespace_keywords/namespace_keywords.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package namespace_keywords;
++
+ // Tests that messages may contain fields that are Python keywords
+ //
+ // Generated with Python 3.7.6
+diff --git a/tests/inputs/nested/nested.proto b/tests/inputs/nested/nested.proto
+index 98bafd9..043cee0 100644
+--- a/tests/inputs/nested/nested.proto
++++ b/tests/inputs/nested/nested.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package nested;
++
+ // A test message with a nested message inside of it.
+ message Test {
+ // This is the nested type.
+diff --git a/tests/inputs/nested2/nested2.proto b/tests/inputs/nested2/nested2.proto
+index 3e39918..cd6510c 100644
+--- a/tests/inputs/nested2/nested2.proto
++++ b/tests/inputs/nested2/nested2.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package nested2;
++
+ import "package.proto";
+
+ message Game {
+diff --git a/tests/inputs/nested2/package.proto b/tests/inputs/nested2/package.proto
+index 4466256..e12abb1 100644
+--- a/tests/inputs/nested2/package.proto
++++ b/tests/inputs/nested2/package.proto
+@@ -1,6 +1,6 @@
+ syntax = "proto3";
+
+-package equipment;
++package nested2.equipment;
+
+ message Weapon {
+
+diff --git a/tests/inputs/nestedtwice/nestedtwice.proto b/tests/inputs/nestedtwice/nestedtwice.proto
+index 7e9c206..9a54a86 100644
+--- a/tests/inputs/nestedtwice/nestedtwice.proto
++++ b/tests/inputs/nestedtwice/nestedtwice.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package nestedtwice;
++
+ message Test {
+ message Top {
+ message Middle {
+diff --git a/tests/inputs/oneof/oneof.proto b/tests/inputs/oneof/oneof.proto
+index 1f9c4b2..21aa6c6 100644
+--- a/tests/inputs/oneof/oneof.proto
++++ b/tests/inputs/oneof/oneof.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package oneof;
++
+ message Test {
+ oneof foo {
+ int32 pitied = 1;
+diff --git a/tests/inputs/oneof_default_value_serialization/oneof_default_value_serialization.proto b/tests/inputs/oneof_default_value_serialization/oneof_default_value_serialization.proto
+index 44163c7..f7ac6fe 100644
+--- a/tests/inputs/oneof_default_value_serialization/oneof_default_value_serialization.proto
++++ b/tests/inputs/oneof_default_value_serialization/oneof_default_value_serialization.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package oneof_default_value_serialization;
++
+ import "google/protobuf/duration.proto";
+ import "google/protobuf/timestamp.proto";
+ import "google/protobuf/wrappers.proto";
+diff --git a/tests/inputs/oneof_empty/oneof_empty.proto b/tests/inputs/oneof_empty/oneof_empty.proto
+index 45ca371..ca51d5a 100644
+--- a/tests/inputs/oneof_empty/oneof_empty.proto
++++ b/tests/inputs/oneof_empty/oneof_empty.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package oneof_empty;
++
+ message Nothing {}
+
+ message MaybeNothing {
+diff --git a/tests/inputs/oneof_enum/oneof_enum.proto b/tests/inputs/oneof_enum/oneof_enum.proto
+index dfe19d4..906abcb 100644
+--- a/tests/inputs/oneof_enum/oneof_enum.proto
++++ b/tests/inputs/oneof_enum/oneof_enum.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package oneof_enum;
++
+ message Test {
+ oneof action {
+ Signal signal = 1;
+diff --git a/tests/inputs/proto3_field_presence/proto3_field_presence.proto b/tests/inputs/proto3_field_presence/proto3_field_presence.proto
+index d647843..f28123d 100644
+--- a/tests/inputs/proto3_field_presence/proto3_field_presence.proto
++++ b/tests/inputs/proto3_field_presence/proto3_field_presence.proto
+@@ -1,3 +1,5 @@
+ syntax = "proto3";
+
++package proto3_field_presence;
++
+ message InnerTest {
+diff --git a/tests/inputs/proto3_field_presence_oneof/proto3_field_presence_oneof.proto b/tests/inputs/proto3_field_presence_oneof/proto3_field_presence_oneof.proto
+index c4dc9d4..caa76ec 100644
+--- a/tests/inputs/proto3_field_presence_oneof/proto3_field_presence_oneof.proto
++++ b/tests/inputs/proto3_field_presence_oneof/proto3_field_presence_oneof.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package proto3_field_presence_oneof;
++
+ message Test {
+ oneof kind {
+ Nested nested = 1;
+diff --git a/tests/inputs/recursivemessage/recursivemessage.proto b/tests/inputs/recursivemessage/recursivemessage.proto
+index f988316..1da2b57 100644
+--- a/tests/inputs/recursivemessage/recursivemessage.proto
++++ b/tests/inputs/recursivemessage/recursivemessage.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package recursivemessage;
++
+ message Test {
+ string name = 1;
+ Test child = 2;
+diff --git a/tests/inputs/ref/ref.proto b/tests/inputs/ref/ref.proto
+index e09fb15..6945590 100644
+--- a/tests/inputs/ref/ref.proto
++++ b/tests/inputs/ref/ref.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package ref;
++
+ import "repeatedmessage.proto";
+
+ message Test {
+diff --git a/tests/inputs/repeated/repeated.proto b/tests/inputs/repeated/repeated.proto
+index 42c1132..4f3c788 100644
+--- a/tests/inputs/repeated/repeated.proto
++++ b/tests/inputs/repeated/repeated.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package repeated;
++
+ message Test {
+ repeated string names = 1;
+ }
+diff --git a/tests/inputs/repeated_duration_timestamp/repeated_duration_timestamp.proto b/tests/inputs/repeated_duration_timestamp/repeated_duration_timestamp.proto
+index 7b7bf36..38f1eaa 100644
+--- a/tests/inputs/repeated_duration_timestamp/repeated_duration_timestamp.proto
++++ b/tests/inputs/repeated_duration_timestamp/repeated_duration_timestamp.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package repeated_duration_timestamp;
++
+ import "google/protobuf/duration.proto";
+ import "google/protobuf/timestamp.proto";
+
+diff --git a/tests/inputs/repeatedpacked/repeatedpacked.proto b/tests/inputs/repeatedpacked/repeatedpacked.proto
+index ea86dde..a037d1b 100644
+--- a/tests/inputs/repeatedpacked/repeatedpacked.proto
++++ b/tests/inputs/repeatedpacked/repeatedpacked.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package repeatedpacked;
++
+ message Test {
+ repeated int32 counts = 1;
+ repeated sint64 signed = 2;
+diff --git a/tests/inputs/service_separate_packages/messages.proto b/tests/inputs/service_separate_packages/messages.proto
+index add0ed8..270b188 100644
+--- a/tests/inputs/service_separate_packages/messages.proto
++++ b/tests/inputs/service_separate_packages/messages.proto
+@@ -3,7 +3,7 @@ syntax = "proto3";
+ import "google/protobuf/duration.proto";
+ import "google/protobuf/timestamp.proto";
+
+-package things.messages;
++package service_separate_packages.things.messages;
+
+ message DoThingRequest {
+ string name = 1;
+diff --git a/tests/inputs/service_separate_packages/service.proto b/tests/inputs/service_separate_packages/service.proto
+index 48acc25..950eab4 100644
+--- a/tests/inputs/service_separate_packages/service.proto
++++ b/tests/inputs/service_separate_packages/service.proto
+@@ -2,7 +2,7 @@ syntax = "proto3";
+
+ import "messages.proto";
+
+-package things.service;
++package service_separate_packages.things.service;
+
+ service Test {
+ rpc DoThing (things.messages.DoThingRequest) returns (things.messages.DoThingResponse);
+diff --git a/tests/inputs/signed/signed.proto b/tests/inputs/signed/signed.proto
+index 23fc9ee..b40aad4 100644
+--- a/tests/inputs/signed/signed.proto
++++ b/tests/inputs/signed/signed.proto
+@@ -1,5 +1,7 @@
+ syntax = "proto3";
+
++package signed;
++
+ message Test {
+ // todo: rename fields after fixing bug where 'signed_32_positive' will map to 'signed_32Positive' as output json
+ sint32 signed32 = 1; // signed_32_positive
+diff --git a/tests/test_features.py b/tests/test_features.py
+index 0fedce2..7dc3f35 100644
+--- a/tests/test_features.py
++++ b/tests/test_features.py
+@@ -480,7 +480,7 @@ def test_iso_datetime_list():
+
+
+ def test_enum_service_argument__expected_default_value():
+- from tests.output_betterproto.service.service import ThingType, TestStub
++ from tests.output_betterproto.service import ThingType, TestStub
+
+ sig = signature(TestStub.do_thing)
+ assert sig.parameters["type"].default == ThingType.UNKNOWN
+diff --git a/tests/test_inputs.py b/tests/test_inputs.py
+index dbcf197..278a4da 100644
+--- a/tests/test_inputs.py
++++ b/tests/test_inputs.py
+@@ -23,8 +23,6 @@ from tests.util import (
+ # break things because we can't properly reset the symbol database.
+ os.environ["PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION"] = "python"
+
+-from google.protobuf import symbol_database
+-from google.protobuf.descriptor_pool import DescriptorPool
+ from google.protobuf.json_format import Parse
+
+
+@@ -125,14 +123,9 @@ def dict_replace_nans(input_dict: Dict[Any, Any]) -> Dict[Any, Any]:
+
+
+ @pytest.fixture
+-def test_data(request):
++def test_data(request, reset_sys_path):
+ test_case_name = request.param
+
+- # Reset the internal symbol database so we can import the `Test` message
+- # multiple times. Ugh.
+- sym = symbol_database.Default()
+- sym.pool = DescriptorPool()
+-
+ reference_module_root = os.path.join(
+ *reference_output_package.split("."), test_case_name
+ )
+@@ -158,8 +151,6 @@ def test_data(request):
+ )
+ )
+
+- sys.path.remove(reference_module_root)
+-
+
+ @pytest.mark.parametrize("test_data", test_cases.messages, indirect=True)
+ def test_message_can_instantiated(test_data: TestData) -> None:
+--
+2.40.0
+
diff --git a/dev-python/betterproto/metadata.xml b/dev-python/betterproto/metadata.xml
new file mode 100644
index 000000000..abd46b430
--- /dev/null
+++ b/dev-python/betterproto/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>antonin.riha@protonmail.com</email>
+ <name>Antonín Říha</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/danielgtaylor/python-betterproto/issues</bugs-to>
+ <remote-id type="pypi">betterproto</remote-id>
+ <remote-id type="github">danielgtaylor/python-betterproto</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/beziers/Manifest b/dev-python/beziers/Manifest
deleted file mode 100644
index 9fdb7e7cb..000000000
--- a/dev-python/beziers/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST beziers-0.3.1.tar.gz 486554 BLAKE2B 4458913acfd8d72607f4154547e895b7eac0f3f7d5ddc0a3adee1cd4a33c508b085643cb3adffcab47a6a3782395a1e54d686759dcb3566f31ac624f12b00922 SHA512 f49e9a84a1e2f8c06758211341ab2ba981c349ed546e3dabb8012c6bfa4f8bfb0c8b23ca38fe4877a5e286634f7353e4eb350c4b343643b86b0c32b4df9353d4
diff --git a/dev-python/beziers/beziers-0.3.1.ebuild b/dev-python/beziers/beziers-0.3.1.ebuild
deleted file mode 100644
index d0233c664..000000000
--- a/dev-python/beziers/beziers-0.3.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-MYPN="${PN}.py"
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python bezier manipulation library"
-HOMEPAGE="https://github.com/simoncozens/beziers.py"
-SRC_URI="https://github.com/simoncozens/${MYPN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/${MYPN}-${PV}"
-
-LICENSE="MIT"
-KEYWORDS="~amd64"
-SLOT="0"
-
-RDEPEND="
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pyclipper[${PYTHON_USEDEP}]
- dev-python/scipy[${PYTHON_USEDEP}]
- sci-libs/shapely[${PYTHON_USEDEP}]
-"
-DEPEND="
- ${RDEPEND}
- test? (
- dev-python/dotmap[${PYTHON_USEDEP}]
- dev-python/matplotlib[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/beziers/metadata.xml b/dev-python/beziers/metadata.xml
deleted file mode 100644
index 14ba178d6..000000000
--- a/dev-python/beziers/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/simoncozens/beziers.py/issues</bugs-to>
- <remote-id type="github">simoncozens/beziers.py</remote-id>
- <remote-id type="pypi">beziers</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/bidict/Manifest b/dev-python/bidict/Manifest
index f649988e1..eaefb5239 100644
--- a/dev-python/bidict/Manifest
+++ b/dev-python/bidict/Manifest
@@ -1 +1 @@
-DIST bidict-0.21.2.tar.gz 381613 BLAKE2B 6bc154cd49d33f9f144c0122175355327f16fbf3f701f751ecc0b65d335c78e5cb66126ef055545ec35a0b56a18efc4446a471477f9c2984f7c9a60cb80e2120 SHA512 d4f055bfc8b9e99727e4d6eb19535802cbe0dd03def4d94f30771c26c9e39963c721bdb33e4055d7e10471ae5f4047b7d14ba978390628d03bc53b6c9a664db8
+DIST bidict-0.22.1.gh.tar.gz 181134 BLAKE2B aa8606d2d48da1f8a4756bcaf450527c867f67fe284a95299df54b3c711d28d60b869a41d4494f16580c37f197263918bdd9e3d2c6bc347497caa85b4b4dd425 SHA512 c85355125fa0a56c8e763e9c2662be52ca753827d06276adcbe60d87265095e7e59669ec1e4bf3361301a3ae942a9aa47b084f8c3a4a066041d54e353e7b2ea8
diff --git a/dev-python/bidict/bidict-0.21.2.ebuild b/dev-python/bidict/bidict-0.21.2.ebuild
deleted file mode 100644
index 61ecb2e16..000000000
--- a/dev-python/bidict/bidict-0.21.2.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-inherit distutils-r1
-
-DESCRIPTION="The bidirectional mapping library for Python"
-HOMEPAGE="https://github.com/jab/bidict https://pypi.org/project/bidict/"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MPL-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-BDEPEND="test? (
- dev-python/hypothesis[${PYTHON_USEDEP}]
- dev-python/pytest-benchmark[${PYTHON_USEDEP}]
- dev-python/sortedcontainers[${PYTHON_USEDEP}]
- dev-python/sortedcollections[${PYTHON_USEDEP}]
-)"
-
-DOCS=( CHANGELOG.rst README.rst SECURITY.rst )
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs dev-python/alabaster
diff --git a/dev-python/bidict/bidict-0.22.1.ebuild b/dev-python/bidict/bidict-0.22.1.ebuild
new file mode 100644
index 000000000..59c6c817c
--- /dev/null
+++ b/dev-python/bidict/bidict-0.22.1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="The bidirectional mapping library for Python"
+HOMEPAGE="
+ https://pypi.org/project/bidict/
+ https://github.com/jab/bidict
+"
+SRC_URI="https://github.com/jab/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/sortedcontainers[${PYTHON_USEDEP}]
+ dev-python/sortedcollections[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( {CHANGELOG,README,SECURITY}.rst )
+
+EPYTEST_IGNORE=( tests/test_microbenchmarks.py )
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs \
+ dev-python/furo
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ sed -i pytest.ini \
+ -e "/--numprocesses/d" \
+ -e "/--benchmark/d" || die
+}
diff --git a/dev-python/bidict/metadata.xml b/dev-python/bidict/metadata.xml
index d526adc82..1f50be851 100644
--- a/dev-python/bidict/metadata.xml
+++ b/dev-python/bidict/metadata.xml
@@ -1,12 +1,18 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<upstream>
-<remote-id type="pypi">bidict</remote-id>
-<remote-id type="github">jab/bidict</remote-id>
-</upstream>
-<maintainer type="person">
-<email>shaoyu0209@tuta.io</email>
-<name>Shaoyu Tseng</name>
-</maintainer>
+ <upstream>
+ <remote-id type="pypi">bidict</remote-id>
+ <remote-id type="github">jab/bidict</remote-id>
+ <maintainer>
+ <name>Joshua Bronson</name>
+ <email>jabronson@gmail.com</email>
+ </maintainer>
+ <doc>https://bidict.readthedocs.io</doc>
+ <changelog>https://bidict.readthedocs.io/changelog.html</changelog>
+ </upstream>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
</pkgmetadata>
diff --git a/dev-python/billiard/Manifest b/dev-python/billiard/Manifest
index cd3c1909a..9318a0077 100644
--- a/dev-python/billiard/Manifest
+++ b/dev-python/billiard/Manifest
@@ -1,2 +1 @@
-DIST billiard-3.6.3.0.tar.gz 153944 BLAKE2B 72a63f859a3798481d068e0e1c7f411e5c4b5de43f95eb6e56345738c9247e8b6f7a0cca88e85cfc74891e83a2c2b20f067ce16471f5c83c13e23699bed267e7 SHA512 3977137ec5ca558294df2e7653d2d2bc100d7be0e0aa24fd0395b244e946739c3de49b124064e9887b938c0237db6212ae65d8474816f2849c550df9a23e7a06
-DIST billiard-3.6.4.0.tar.gz 154182 BLAKE2B 3c42c2c72e2a7e2ac7a1e84685ca592f48edc6ca025eac2ab52c3162bee591fbd06db5d9800ef3a9df00265dc1f373a4130963f428b4a5c6db2d90f701c8ebb7 SHA512 8d6013c170ce54e64fdb5d7da85569f31c928d34cc4242318a124e763092be4680e8d7c3007576bac3337b0c1d86a2ead768b1563e5b673da5d73ab600048ba7
+DIST billiard-4.0.2.gh.tar.gz 154301 BLAKE2B 5a4d1e185219886a419c82acb18e8f4adcba980d7732c7909a34f9e81af9936280ff1817ba92bef92333e7b57a4385339503e158d8766b8a8a9a1acd9de3202b SHA512 499ef834b98b2ce4a1afc4e069f43a96b9db8d7f52607fa5fe12298fc06faf25307a0208ac6df7643c0fff87deb5014d9bd1e375ab19731e98ac65ba3199fd4e
diff --git a/dev-python/billiard/billiard-3.6.3.0.ebuild b/dev-python/billiard/billiard-3.6.3.0.ebuild
deleted file mode 100644
index 8bf53bf6b..000000000
--- a/dev-python/billiard/billiard-3.6.3.0.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8} pypy3 )
-
-inherit distutils-r1 flag-o-matic
-
-DESCRIPTION="Python multiprocessing fork"
-HOMEPAGE="
- https://pypi.org/project/billiard
- https://github.com/celery/billiard
-"
-SRC_URI="https://github.com/celery/billiard/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="doc test"
-RESTRICT="!test? ( test )"
-RESTRICT="test"
-
-RDEPEND=""
-DEPEND="
- test? (
- >=dev-python/case-1.3.1[${PYTHON_USEDEP}]
- >=dev-python/pytest-3.0[${PYTHON_USEDEP}]
- <dev-python/pytest-6[${PYTHON_USEDEP}]
- dev-python/psutil[${PYTHON_USEDEP}]
- )
-"
-# The usual req'd for tests
-DISTUTILS_IN_SOURCE_BUILD=1
-
-python_compile_all() {
- use doc && esetup.py build_sphinx --builder="html" --source-dir=Doc/
-}
-
-python_test() {
- esetup.py test
-}
-
-python_install_all() {
- use doc && local HTML_DOCS=( build/sphinx/html/. )
- distutils-r1_python_install_all
-}
diff --git a/dev-python/billiard/billiard-3.6.4.0.ebuild b/dev-python/billiard/billiard-3.6.4.0.ebuild
deleted file mode 100644
index 1de9ff86b..000000000
--- a/dev-python/billiard/billiard-3.6.4.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8,9} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="Python multiprocessing fork"
-HOMEPAGE="
- https://pypi.org/project/billiard
- https://github.com/celery/billiard
-"
-SRC_URI="https://github.com/celery/billiard/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND=""
-DEPEND="
- test? (
- >=dev-python/case-1.3.1[${PYTHON_USEDEP}]
- >=dev-python/pytest-3.0[${PYTHON_USEDEP}]
- <dev-python/pytest-6.2[${PYTHON_USEDEP}]
- dev-python/psutil[${PYTHON_USEDEP}]
- )
-"
-# The usual req'd for tests
-DISTUTILS_IN_SOURCE_BUILD=1
-
-distutils_enable_tests pytest
-distutils_enable_sphinx Doc
diff --git a/dev-python/billiard/billiard-4.0.2.ebuild b/dev-python/billiard/billiard-4.0.2.ebuild
new file mode 100644
index 000000000..56589b0d7
--- /dev/null
+++ b/dev-python/billiard/billiard-4.0.2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Python multiprocessing fork"
+HOMEPAGE="
+ https://pypi.org/project/billiard/
+ https://github.com/celery/billiard
+"
+SRC_URI="https://github.com/celery/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+BDEPEND="test? ( dev-python/psutil[${PYTHON_USEDEP}] )"
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx Doc
diff --git a/dev-python/billiard/metadata.xml b/dev-python/billiard/metadata.xml
index 6e34e7272..b03e8bad8 100644
--- a/dev-python/billiard/metadata.xml
+++ b/dev-python/billiard/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/dev-python/biplist/Manifest b/dev-python/biplist/Manifest
new file mode 100644
index 000000000..87a542312
--- /dev/null
+++ b/dev-python/biplist/Manifest
@@ -0,0 +1 @@
+DIST biplist-1.0.3.tar.gz 21258 BLAKE2B 9ef9b827e3e4e0496545627e435a64a40fadc4580b8f61fe0cb40c96df5f3fa7559af4d117fe28ee777629efff0bc0f5789f03eca1314e375c93a0ada0018452 SHA512 186927481229988c713d9bb703115493001b129ed4e540e9a028e99b4f10e1576291c75f98d39b28e04092c14a9c96e4843c1445d9a318ced322323c7c1134b5
diff --git a/dev-python/biplist/biplist-1.0.3.ebuild b/dev-python/biplist/biplist-1.0.3.ebuild
new file mode 100644
index 000000000..a1b9c14d9
--- /dev/null
+++ b/dev-python/biplist/biplist-1.0.3.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A binary plist parser/generator for Python"
+HOMEPAGE="https://pypi.org/project/biplist/ https://github.com/wooster/biplist"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
+
+RESTRICT="test"
+# Because using dev-python/nose test framework -
+# that is abandonware for 10 years
+# Related ticket on the upstream: https://github.com/wooster/biplist/issues/14
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+PATCHES=( "${FILESDIR}/${PN}-python3-compat.patch" )
diff --git a/dev-python/biplist/files/biplist-python3-compat.patch b/dev-python/biplist/files/biplist-python3-compat.patch
new file mode 100644
index 000000000..d16ac809f
--- /dev/null
+++ b/dev-python/biplist/files/biplist-python3-compat.patch
@@ -0,0 +1,33 @@
+From: Stefano Rivera <stefanor@debian.org>
+Date: Mon, 1 Feb 2021 17:58:06 -0700
+Subject: Python 3.9: Use bytes with plistlib
+
+Python 3.9 dropped the deprecated plistlib.Data class. Instead of
+plistlib.Data, we can just use bytes directly.
+
+Bug-Debian: https://bugs.debian.org/973082
+Bug-Upstream: https://bitbucket.org/wooster/biplist/issues/12/python-39-compatibility
+---
+ biplist/__init__.py | 9 +--------
+ 1 file changed, 1 insertion(+), 8 deletions(-)
+
+diff --git a/biplist/__init__.py b/biplist/__init__.py
+index f9d5836..4a40602 100644
+--- a/biplist/__init__.py
++++ b/biplist/__init__.py
+@@ -147,14 +147,7 @@ def readPlist(pathOrFile):
+ return result
+
+ def wrapDataObject(o, for_binary=False):
+- if isinstance(o, Data) and not for_binary:
+- v = sys.version_info
+- if not (v[0] >= 3 and v[1] >= 4):
+- o = plistlib.Data(o)
+- elif isinstance(o, (bytes, plistlib.Data)) and for_binary:
+- if hasattr(o, 'data'):
+- o = Data(o.data)
+- elif isinstance(o, tuple):
++ if isinstance(o, tuple):
+ o = wrapDataObject(list(o), for_binary)
+ o = tuple(o)
+ elif isinstance(o, list):
diff --git a/dev-python/biplist/metadata.xml b/dev-python/biplist/metadata.xml
new file mode 100644
index 000000000..7c8a69771
--- /dev/null
+++ b/dev-python/biplist/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">wooster/biplist</remote-id>
+ <remote-id type="pypi">biplist</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/bitbox02/Manifest b/dev-python/bitbox02/Manifest
deleted file mode 100644
index f90182aba..000000000
--- a/dev-python/bitbox02/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST bitbox02-5.3.0.tar.gz 54294 BLAKE2B acb2188b272787a86643b1884b87441d4753ef3d792a3a400046984a9272635aa8ceac874193e7b85fb73583da2b71a7450802f34a32d529ccd182bcd82d4e4c SHA512 4be284b431ddc5dcf2b774286b7383523f6dc2fda32f95c9676bb2f1ef3f88f692966b31d906e0fa272a92c4e1d3314a2f2e09adca6dab66b75487e0e0b2206f
diff --git a/dev-python/bitbox02/bitbox02-5.3.0.ebuild b/dev-python/bitbox02/bitbox02-5.3.0.ebuild
deleted file mode 100644
index 7590b04e7..000000000
--- a/dev-python/bitbox02/bitbox02-5.3.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-inherit distutils-r1
-
-DESCRIPTION="Python API for communicating with the BitBox02 device"
-HOMEPAGE="https://github.com/digitalbitbox/bitbox02-firmware"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND="
- >=dev-python/base58-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/ecdsa-0.14.0[${PYTHON_USEDEP}]
- >=dev-python/hidapi-0.7.99[${PYTHON_USEDEP}]
- >=dev-python/noiseprotocol-0.3.0[${PYTHON_USEDEP}]
- >=dev-python/protobuf-python-3.7.0[${PYTHON_USEDEP}]
- >=dev-python/semver-2.8.1[${PYTHON_USEDEP}]
- >=dev-python/typing-extensions-3.7.4[${PYTHON_USEDEP}]"
-BDEPEND=""
diff --git a/dev-python/bitbox02/metadata.xml b/dev-python/bitbox02/metadata.xml
deleted file mode 100644
index 8fb0fba37..000000000
--- a/dev-python/bitbox02/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>a.zuber@gmx.ch</email>
- <name>Andreas Zuber</name>
- </maintainer>
- <upstream>
- <remote-id type="github">digitalbitbox/bitbox02-firmware</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/blurhash/Manifest b/dev-python/blurhash/Manifest
new file mode 100644
index 000000000..38372e9d5
--- /dev/null
+++ b/dev-python/blurhash/Manifest
@@ -0,0 +1 @@
+DIST blurhash-1.1.4.tar.gz 4738 BLAKE2B a25804938443e140e6d5a649e52c9c07cc91bb914be81efc33887161113f80362fba0b6711f520063461c7d4645022e559a11ecffdfeac9521a86cb23d279510 SHA512 eacef78927a1299bec19f73709435b1be55797273888e7856bbfd46d2aa1afa02f54505c15b76dcd6bd15a6817da0171aa412570c33c7ad487bfe10940ef3fd6
diff --git a/dev-python/blurhash/blurhash-1.1.4.ebuild b/dev-python/blurhash/blurhash-1.1.4.ebuild
new file mode 100644
index 000000000..282d96229
--- /dev/null
+++ b/dev-python/blurhash/blurhash-1.1.4.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="Pure-Python implementation of the blurhash algorithm"
+HOMEPAGE="
+ https://pypi.org/project/blurhash/
+ https://github.com/halcy/blurhash-python
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# no tests in v1.1.4 tarball
+RESTRICT="test"
+
+BDEPEND="
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+ rm setup.cfg || die
+}
diff --git a/dev-python/blurhash/metadata.xml b/dev-python/blurhash/metadata.xml
new file mode 100644
index 000000000..25cebaef4
--- /dev/null
+++ b/dev-python/blurhash/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">blurhash</remote-id>
+ <remote-id type="github">halcy/blurhash-python</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/browserstack-local-python/Manifest b/dev-python/browserstack-local-python/Manifest
deleted file mode 100644
index 5e42dadbd..000000000
--- a/dev-python/browserstack-local-python/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST browserstack-local-python-1.2.2.tar.gz 5888 BLAKE2B 3b325c81bd7e88ef2e7feef5907fc21391a22d159b04ea673518ea045de9afd392c3a2213c1765ad8cd0d15fba957202a958b5b4fe3c98ef74a7962f251775e1 SHA512 0212c5392ed44832e2e2c8694b89acfda9a9697865f47de89471b33f1831c094085630a452f7bbd3b4e3f1d53bb3da928ad6ff05d1646eb660d0ee29340ffce2
diff --git a/dev-python/browserstack-local-python/browserstack-local-python-1.2.2.ebuild b/dev-python/browserstack-local-python/browserstack-local-python-1.2.2.ebuild
deleted file mode 100644
index db7163ba3..000000000
--- a/dev-python/browserstack-local-python/browserstack-local-python-1.2.2.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} pypy3 )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/browserstack/browserstack-local-python/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-DESCRIPTION="Python bindings for BrowserStack Local"
-HOMEPAGE="https://github.com/browserstack/browserstack-local-python"
-LICENSE="MIT"
-SLOT="0"
-
-RDEPEND="dev-python/psutil[${PYTHON_USEDEP}]"
-DEPEND="${RDEPEND}"
diff --git a/dev-python/browserstack-local-python/metadata.xml b/dev-python/browserstack-local-python/metadata.xml
deleted file mode 100644
index dfd006d29..000000000
--- a/dev-python/browserstack-local-python/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/browserstack/browserstack-local-python/issues</bugs-to>
- <remote-id type="github">browserstack/browserstack-local-python</remote-id>
- <remote-id type="pypi">browserstack-local-python</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/bson/Manifest b/dev-python/bson/Manifest
deleted file mode 100644
index b9926ce14..000000000
--- a/dev-python/bson/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST bson-0.5.8.tar.gz 24114 BLAKE2B e35055dcd3c8b1cf77ec9d9496d32d4bca4e9ab31ecf79399a8449c459d1b5e67375bd88743175f1450311519b55cbca8c11a8da736ba87907e1497b5a94b363 SHA512 68bd69d1f5d0d11014d51c0901e7f44b7a3d9f7ad013af4137b7ac48bc42f81bd1423115b67939beedf6e7336794e7ffd4d0d539222d4eaa50845ae25622f21a
diff --git a/dev-python/bson/bson-0.5.8.ebuild b/dev-python/bson/bson-0.5.8.ebuild
deleted file mode 100644
index 70373627b..000000000
--- a/dev-python/bson/bson-0.5.8.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="Independent BSON codec for Python that doesn't depend on MongoDB"
-HOMEPAGE="https://github.com/py-bson/bson"
-SRC_URI="https://github.com/py-bson/bson/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- >=dev-python/python-dateutil-2.4.0[${PYTHON_USEDEP}]
- >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
-"
-RDEPEND="${DEPEND}"
-
-python_test() {
- "${EPYTHON}" test.py || die
-}
diff --git a/dev-python/bson/metadata.xml b/dev-python/bson/metadata.xml
deleted file mode 100644
index 6798dda1a..000000000
--- a/dev-python/bson/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/py-bson/bson/issues</bugs-to>
- <remote-id type="github">py-bson/bson</remote-id>
- <remote-id type="pypi">bson</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/cassowary/Manifest b/dev-python/cassowary/Manifest
new file mode 100644
index 000000000..f8f236950
--- /dev/null
+++ b/dev-python/cassowary/Manifest
@@ -0,0 +1 @@
+DIST cassowary-0.6.tar.gz 1045957 BLAKE2B 0144868db866dc744377812760285a5a64657478d3212ef5c969a2b48ac187a3efdbb4688b637a8fdd7fd648b75fcda28c99f90dba1945ee735173889b27744c SHA512 2e8b2841b203d2a13a399988d3e0d35d7cd70e765370dd31bfc998989bef0bbad99a94d794e8f96b25990f355850d2db4ce3543fa4aedce61d4d36a4d6e8ec3c
diff --git a/dev-python/cassowary/cassowary-0.6.ebuild b/dev-python/cassowary/cassowary-0.6.ebuild
new file mode 100644
index 000000000..aedcfde5e
--- /dev/null
+++ b/dev-python/cassowary/cassowary-0.6.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=no
+PYTHON_COMPAT=(python3_{9..12})
+
+inherit linux-mod-r1 distutils-r1 desktop
+
+DESCRIPTION="Run Windows Applications on Linux as if they are native (Using a VM and FreeRDP)"
+HOMEPAGE="https://github.com/casualsnek/cassowary"
+SRC_URI="https://github.com/casualsnek/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="X wayland"
+
+BDEPEND="dev-python/setuptools
+ dev-python/build
+ dev-python/installer
+"
+
+RDEPEND="net-misc/freerdp
+ dev-python/libvirt-python
+ dev-python/PyQt5
+"
+
+DEPEND="${RDEPEND}"
+
+MODULES_KERNEL_MIN=5.10
+
+python_compile() {
+ cd "${S}/app-linux" || die
+ echo "See documenation of cassowary" >README.md || die # Dummy Readme file (solve qa error)
+ sed -i "s/version = 0.5/version = ${PV}/g" setup.cfg || die #version typo upstream
+ ${EPYTHON} -m build --wheel --no-isolation
+}
+
+python_install() {
+ cd "${S}/app-linux" || die
+ ${EPYTHON} -m installer --destdir="${D}" dist/cassowary-${PV}-py3-none-any.whl
+ domenu "${FILESDIR}/cassowary.desktop"
+ doicon "${S}/app-linux/src/cassowary/gui/extrares/cassowary.png"
+}
+
+pkg_postinst() {
+ ewarn "This application requires Pre-Configuration"
+ ewarn "Pls Follow the docs of the project:"
+ ewarn "https://github.com/casualsnek/cassowary/docs"
+}
diff --git a/dev-python/cassowary/files/cassowary.desktop b/dev-python/cassowary/files/cassowary.desktop
new file mode 100644
index 000000000..d7ef7ecf3
--- /dev/null
+++ b/dev-python/cassowary/files/cassowary.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Version=1.0
+Type=Application
+Name=Cassowary
+Icon=cassowary
+Exec=/usr/bin/cassowary -a
+Comment=Cassowary Configuration (Gui App)
+Categories=System
+Terminal=false \ No newline at end of file
diff --git a/dev-python/cassowary/metadata.xml b/dev-python/cassowary/metadata.xml
new file mode 100644
index 000000000..2944e7876
--- /dev/null
+++ b/dev-python/cassowary/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>gonegrier.duarte@gmail.com</email>
+ <name>Gonçalo Negrier Duarte</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">casualsnek/cassowary</remote-id>
+ </upstream>
+</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/castellan/Manifest b/dev-python/castellan/Manifest
deleted file mode 100644
index 2bf4ddb57..000000000
--- a/dev-python/castellan/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST castellan-3.6.0.tar.gz 70924 BLAKE2B bbd9bf5b411332d5454b4c0d69b63c16b751f8e23c01e723a95acbc722f57fb5f1286c20855b9a9a0e36607737e417f9c5b02a1f7ea4e394c210fa812feb6323 SHA512 d2eb7d7e9ecf29f43d16f0d95dbc18165bde7c9087670fde817fc476a58d57cd3765e9706e4108da99159065748b78dc1f25b9a6ae024359ed98ea5a10dfe3c4
diff --git a/dev-python/castellan/castellan-3.6.0.ebuild b/dev-python/castellan/castellan-3.6.0.ebuild
deleted file mode 100644
index 382236424..000000000
--- a/dev-python/castellan/castellan-3.6.0.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Generic Key Manager interface for OpenStack"
-HOMEPAGE="https://pypi.org/project/castellan/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-CDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/cryptography-2.7[${PYTHON_USEDEP}]
- >=dev-python/python-barbicanclient-4.5.2[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-6.4.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.18.0[${PYTHON_USEDEP}]
- !~dev-python/requests-2.20.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/castellan/metadata.xml b/dev-python/castellan/metadata.xml
deleted file mode 100644
index a7271b566..000000000
--- a/dev-python/castellan/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">castellan</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/cchardet/Manifest b/dev-python/cchardet/Manifest
deleted file mode 100644
index 0bcc88256..000000000
--- a/dev-python/cchardet/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST cchardet-2.1.7.tar.gz 653617 BLAKE2B 0ca9becac01c67da191290c7de0dc52d5c8e6c2715f660811c8e67d9a06e74ac155a081de81af96ade74ccc4065093fc226f232a26f66236fafe9fc1b48a9c9e SHA512 43e663e30ec079b2a954862de5e8136a2e40f69e300d65eb4ce9d7ffa5d8c496dc7c0937b3306b4096cfad12a1d0617628f8f0115534ab6faf9eb39d2b3935a2
diff --git a/dev-python/cchardet/cchardet-2.1.7.ebuild b/dev-python/cchardet/cchardet-2.1.7.ebuild
deleted file mode 100644
index 7e6bb0515..000000000
--- a/dev-python/cchardet/cchardet-2.1.7.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8,9} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="cChardet is high speed universal character encoding detector"
-HOMEPAGE="https://github.com/PyYoshi/cChardet"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MPL-1.1"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- dev-python/chardet[${PYTHON_USEDEP}]
-"
-#bundled ...
-# app-i18n/uchardet
-DEPEND="
- ${RDEPEND}
- dev-python/cython[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests nose
-
-#src_prepare() {
-# append-cppflags "-I/usr/include/uchardet"
- #bundled uchardet
-# rm -rf src/ext/uchardet || die
-# default
-#}
-
-python_test() {
- esetup.py nosetests || die "Tests fail with ${EPYTHON}"
-}
diff --git a/dev-python/cchardet/metadata.xml b/dev-python/cchardet/metadata.xml
deleted file mode 100644
index 6f65771c9..000000000
--- a/dev-python/cchardet/metadata.xml
+++ /dev/null
@@ -1,144 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-Supported Languages/Encodings
-
- International (Unicode)
- UTF-8
- UTF-16BE / UTF-16LE
- UTF-32BE / UTF-32LE / X-ISO-10646-UCS-4-34121 / X-ISO-10646-UCS-4-21431
- Arabic
- ISO-8859-6
- WINDOWS-1256
- Bulgarian
- ISO-8859-5
- WINDOWS-1251
- Chinese
- ISO-2022-CN
- BIG5
- EUC-TW
- GB18030
- HZ-GB-2312
- Croatian:
- ISO-8859-2
- ISO-8859-13
- ISO-8859-16
- Windows-1250
- IBM852
- MAC-CENTRALEUROPE
- Czech
- Windows-1250
- ISO-8859-2
- IBM852
- MAC-CENTRALEUROPE
- Danish
- ISO-8859-1
- ISO-8859-15
- WINDOWS-1252
- English
- ASCII
- Esperanto
- ISO-8859-3
- Estonian
- ISO-8859-4
- ISO-8859-13
- ISO-8859-13
- Windows-1252
- Windows-1257
- Finnish
- ISO-8859-1
- ISO-8859-4
- ISO-8859-9
- ISO-8859-13
- ISO-8859-15
- WINDOWS-1252
- French
- ISO-8859-1
- ISO-8859-15
- WINDOWS-1252
- German
- ISO-8859-1
- WINDOWS-1252
- Greek
- ISO-8859-7
- WINDOWS-1253
- Hebrew
- ISO-8859-8
- WINDOWS-1255
- Hungarian:
- ISO-8859-2
- WINDOWS-1250
- Irish Gaelic
- ISO-8859-1
- ISO-8859-9
- ISO-8859-15
- WINDOWS-1252
- Italian
- ISO-8859-1
- ISO-8859-3
- ISO-8859-9
- ISO-8859-15
- WINDOWS-1252
- Japanese
- ISO-2022-JP
- SHIFT_JIS
- EUC-JP
- Korean
- ISO-2022-KR
- EUC-KR / UHC
- Lithuanian
- ISO-8859-4
- ISO-8859-10
- ISO-8859-13
- Latvian
- ISO-8859-4
- ISO-8859-10
- ISO-8859-13
- Maltese
- ISO-8859-3
- Polish:
- ISO-8859-2
- ISO-8859-13
- ISO-8859-16
- Windows-1250
- IBM852
- MAC-CENTRALEUROPE
- Portuguese
- ISO-8859-1
- ISO-8859-9
- ISO-8859-15
- WINDOWS-1252
- Romanian:
- ISO-8859-2
- ISO-8859-16
- Windows-1250
- IBM852
- Russian
- ISO-8859-5
- KOI8-R
- WINDOWS-1251
- MAC-CYRILLIC
- IBM866
- IBM855
- Slovak
- Windows-1250
- ISO-8859-2
- IBM852
- MAC-CENTRALEUROPE
- Slovene
- ISO-8859-2
- ISO-8859-16
- Windows-1250
- IBM852
- M
- </longdescription>
- <upstream>
- <remote-id type="pypi">googletransx</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/celery/Manifest b/dev-python/celery/Manifest
index dd1ff1e6e..8dcffe5f8 100644
--- a/dev-python/celery/Manifest
+++ b/dev-python/celery/Manifest
@@ -1 +1 @@
-DIST celery-5.1.1.tar.gz 1471516 BLAKE2B bfdabf255cffa19deb80607c3a2063b6dd8c56a803a991453b8b07914e75630fee9d189ccb8e6be1f7e88e43fb22d31353968ffea222d75a7b7765ec3a5148b5 SHA512 b50fe494ec8346b5a90236536dbc809341b4b2328c1a2b7485210fb88cd5d8142f3e53b40c6b49e9e495eecaca1abcec2000f2af6d2f2bd719265410802eb572
+DIST celery-5.3.6.gh.tar.gz 1563926 BLAKE2B c5f86110f7907b8ae084354dafe4e26adb07702150658ddb60a85f58c3e80106aafb921150c78670d05c68c26f17ad1144b4142d6ec9b86e9c9cdb1b653baaa6 SHA512 529611c0d3bfcbfcc931e5d20cf89a4710a8d2e70639e5c2e991ba020c3c2402bfd38b7ef17ecfbc5fe493f046531094158e81b03610191c3af2b531cc913762
diff --git a/dev-python/celery/celery-5.1.1.ebuild b/dev-python/celery/celery-5.1.1.ebuild
deleted file mode 100644
index c200bfdd9..000000000
--- a/dev-python/celery/celery-5.1.1.ebuild
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-DISTUTILS_USE_SETUPTOOLS=rdepend
-MYPV="${PV/_beta/b}"
-PYTHON_COMPAT=( python3_8 )
-
-inherit bash-completion-r1 distutils-r1 eutils optfeature
-
-DESCRIPTION="Asynchronous task queue/job queue based on distributed message passing"
-HOMEPAGE="
- http://celeryproject.org
- https://pypi.org/project/celery
- https://github.com/celery/celery
-"
-SRC_URI="https://github.com/celery/celery/archive/v${MYPV}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/${PN}-${MYPV}"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-# There are a number of other optional 'extras'
-IUSE="examples"
-#RESTRICT="!test? ( test )"
-RESTRICT="test" # 'celery' not found in `markers` configuration option
-
-RDEPEND="
- >=dev-python/billiard-3.6.4.0[${PYTHON_USEDEP}]
- <dev-python/billiard-4.0.0[${PYTHON_USEDEP}]
- >=dev-python/click-7[${PYTHON_USEDEP}]
- <dev-python/click-8[${PYTHON_USEDEP}]
- >=dev-python/click-didyoumean-0.0.3[${PYTHON_USEDEP}]
- >=dev-python/click-plugins-1.1.1[${PYTHON_USEDEP}]
- >=dev-python/click-repl-0.1.6[${PYTHON_USEDEP}]
- <dev-python/kombu-6.0[${PYTHON_USEDEP}]
- >=dev-python/kombu-5[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- >=dev-python/vine-5[${PYTHON_USEDEP}]
- <dev-python/vine-6[${PYTHON_USEDEP}]
-"
-DEPEND="
- ${RDEPEND}
- test? (
- >=dev-python/boto3-1.9.178[${PYTHON_USEDEP}]
- >=dev-python/case-1.3.1[${PYTHON_USEDEP}]
- >=dev-python/moto-1.3.7[${PYTHON_USEDEP}]
- >=dev-python/pytest-6.2[${PYTHON_USEDEP}]
- dev-python/pytest-celery[${PYTHON_USEDEP}]
- dev-python/pytest-subtests[${PYTHON_USEDEP}]
- >=dev-python/pytest-timeout-1.4.2[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
- >=dev-python/pyzmq-13.1.0[${PYTHON_USEDEP}]
- )
- doc? (
- dev-python/docutils[${PYTHON_USEDEP}]
- >=dev-python/sphinx_celery-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/sphinx-click-2.5.0[${PYTHON_USEDEP}]
- dev-python/jinja[${PYTHON_USEDEP}]
- dev-python/sqlalchemy[${PYTHON_USEDEP}]
- )
-"
-
-# testsuite needs it own source
-DISTUTILS_IN_SOURCE_BUILD=1
-distutils_enable_tests pytest
-distutils_enable_sphinx docs --no-autodoc
-
-python_install_all() {
- # Main celeryd init.d and conf.d
- newinitd "${FILESDIR}/celery.initd-r2" celery
- newconfd "${FILESDIR}/celery.confd-r2" celery
-
- if use examples; then
- docinto examples
- dodoc -r examples/.
- docompress -x "/usr/share/doc/${PF}/examples"
- fi
-
- newbashcomp extra/bash-completion/celery.bash "${PN}"
-
- distutils-r1_python_install_all
-}
-
-pkg_postinst() {
- optfeature "zookeeper support" dev-python/kazoo
- optfeature "msgpack support" dev-python/msgpack
- #optfeature "rabbitmq support" dev-python/librabbitmq
- #optfeature "slmq support" dev-python/softlayer_messaging
- optfeature "eventlet support" dev-python/eventlet
- #optfeature "couchbase support" dev-python/couchbase
- optfeature "redis support" dev-db/redis dev-python/redis-py
- optfeature "gevent support" dev-python/gevent
- optfeature "auth support" dev-python/pyopenssl
- optfeature "pyro support" dev-python/pyro:4
- optfeature "yaml support" dev-python/pyyaml
- optfeature "memcache support" dev-python/pylibmc
- optfeature "mongodb support" dev-python/pymongo
- optfeature "sqlalchemy support" dev-python/sqlalchemy
- optfeature "sqs support" dev-python/boto
- #optfeature "cassandra support" dev-python/cassandra-driver
-}
diff --git a/dev-python/celery/celery-5.3.6.ebuild b/dev-python/celery/celery-5.3.6.ebuild
new file mode 100644
index 000000000..465f82d71
--- /dev/null
+++ b/dev-python/celery/celery-5.3.6.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_11 )
+
+inherit bash-completion-r1 check-reqs distutils-r1 optfeature
+
+MY_PV="${PV/_beta/b}"
+DESCRIPTION="Asynchronous task queue/job queue based on distributed message passing"
+HOMEPAGE="
+ https://docs.celeryproject.org/en/stable/index.html
+ https://pypi.org/project/celery/
+ https://github.com/celery/celery
+"
+SRC_URI="https://github.com/celery/celery/archive/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="examples"
+
+RDEPEND="
+ >=dev-python/billiard-3.6.4.0[${PYTHON_USEDEP}]
+ <dev-python/billiard-5.0.0[${PYTHON_USEDEP}]
+ dev-python/click[${PYTHON_USEDEP}]
+ dev-python/click-didyoumean[${PYTHON_USEDEP}]
+ dev-python/click-plugins[${PYTHON_USEDEP}]
+ dev-python/click-repl[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.8.2[${PYTHON_USEDEP}]
+ >=dev-python/kombu-5.3.0_beta1[${PYTHON_USEDEP}]
+ <dev-python/kombu-6.0.0[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/vine[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep 'ncurses(+)')
+ dev-python/azure-storage-blob[${PYTHON_USEDEP}]
+ >=dev-python/boto3-1.9.178[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/elasticsearch[${PYTHON_USEDEP}]
+ >=dev-python/moto-1.3.7[${PYTHON_USEDEP}]
+ dev-python/msgpack[${PYTHON_USEDEP}]
+ dev-python/pylibmc[${PYTHON_USEDEP}]
+ dev-python/pymongo[${PYTHON_USEDEP}]
+ dev-python/pytest-celery[${PYTHON_USEDEP}]
+ dev-python/pytest-click[${PYTHON_USEDEP}]
+ dev-python/pytest-subtests[${PYTHON_USEDEP}]
+ >=dev-python/pytest-timeout-1.4.2[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.10[${PYTHON_USEDEP}]
+ dev-python/redis[${PYTHON_USEDEP}]
+ dev-python/tblib[${PYTHON_USEDEP}]
+ sci-astronomy/pyephem[${PYTHON_USEDEP}]
+ )
+ doc? (
+ dev-python/docutils[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-celery-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-click-2.5.0[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ )
+"
+
+CHECKREQS_MEMORY="2G"
+
+EPYTEST_DESELECT=(
+ t/unit/backends/test_elasticsearch.py::test_ElasticsearchBackend::test_backend_concurrent_update
+ t/unit/backends/test_elasticsearch.py::test_ElasticsearchBackend::test_exception_safe_to_retry
+ t/unit/tasks/test_stamping.py::test_canvas_stamping::test_stamping_headers_in_options
+ t/unit/tasks/test_stamping.py::test_canvas_stamping::test_stamping_with_replace
+)
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs --no-autodoc
+
+pkg_setup() {
+ use test && check-reqs_pkg_setup
+}
+
+pkg_pretend() {
+ use test && check-reqs_pkg_pretend
+}
+
+python_install_all() {
+ # Main celeryd init.d and conf.d
+ newinitd "${FILESDIR}/celery.initd-r2" celery
+ newconfd "${FILESDIR}/celery.confd-r2" celery
+
+ if use examples; then
+ docinto examples
+ dodoc -r examples/.
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+
+ newbashcomp extra/bash-completion/celery.bash "${PN}"
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature "msgpack support" dev-python/msgpack
+ #optfeature "rabbitmq support" dev-python/librabbitmq
+ #optfeature "slmq support" dev-python/softlayer_messaging
+ #optfeature "couchbase support" dev-python/couchbase
+ optfeature "redis support" dev-python/redis-py
+ optfeature "auth support" dev-python/pyopenssl
+ optfeature "yaml support" dev-python/pyyaml
+ optfeature "memcache support" dev-python/pylibmc
+ optfeature "mongodb support" dev-python/pymongo
+ optfeature "sqlalchemy support" dev-python/sqlalchemy
+ optfeature "sqs support" dev-python/boto
+ #optfeature "cassandra support" dev-python/cassandra-driver
+}
diff --git a/dev-python/celery/files/celery.initd-r2 b/dev-python/celery/files/celery.initd-r2
index f34c13669..2f10491fe 100644
--- a/dev-python/celery/files/celery.initd-r2
+++ b/dev-python/celery/files/celery.initd-r2
@@ -1,5 +1,5 @@
#!/sbin/openrc-run
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the BSD license
extra_started_commands="reload"
@@ -9,31 +9,30 @@ depend() {
use rabbitmq redis logger dns
}
-CELERYD_ENABLED=${CELERYD_ENABLED:-"no"}
-CELERYD_PID_FILE=${CELERYD_PID_FILE:-"/run/celery/celeryd@%n.pid"}
-CELERYD_LOG_FILE=${CELERYD_LOG_FILE:-"/var/log/celery/celeryd@%n.log"}
-CELERYD_LOG_LEVEL=${CELERYD_LOG_LEVEL:-"INFO"}
-CELERYD_NODES=${CELERYD_NODES:-"celery"}
+: ${CELERYD_ENABLED:="no"}
+: ${CELERYD_PID_FILE:="/run/celery/celeryd@%n.pid"}
+: ${CELERYD_LOG_FILE:="/var/log/celery/celeryd@%n.log"}
+: ${CELERYD_LOG_LEVEL:="INFO"}
+: ${CELERYD_NODES:="celery"}
-CELERYBEAT_ENABLED=${CELERYBEAT_ENABLED:-"no"}
-CELERYBEAT_PID_FILE=${CELERYBEAT_PID_FILE:-"/run/celery/celerybeat.pid"}
-CELERYBEAT_LOG_FILE=${CELERYBEAT_LOG_FILE:-"/var/log/celery/celerybeat.log"}
-CELERYBEAT_LOG_LEVEL=${CELERYBEAT_LOG_LEVEL:-"INFO"}
+: ${CELERYBEAT_ENABLED:="no"}
+: ${CELERYBEAT_PID_FILE:="/run/celery/celerybeat.pid"}
+: ${CELERYBEAT_LOG_FILE:="/var/log/celery/celerybeat.log"}
+: ${CELERYBEAT_LOG_LEVEL:="INFO"}
export CELERY_LOADER
-CELERYD_MULTI=${CELERYD_MULTI:-"celery multi"}
-CELERYCTL=${CELERYCTL:-"celery"}
-CELERYBEAT=${CELERYBEAT:-"celery beat"}
+: ${CELERYD_MULTI:="celery multi"}
+: ${CELERYCTL:="celery"}
+: ${CELERYBEAT:="celery beat"}
-CELERYD_OPTS="${CELERYD_OPTS}"
CELERYBEAT_OPTS="${CELERYBEAT_OPTS} -f ${CELERYBEAT_LOG_FILE} -l ${CELERYBEAT_LOG_LEVEL}"
create_dirs() {
- local logfile="${1}"
- local pidfile="${2}"
- local logdir=$(dirname ${logfile})
- local piddir=$(dirname ${pidfile})
+ logfile="${1}"
+ pidfile="${2}"
+ logdir=$(dirname ${logfile})
+ piddir=$(dirname ${pidfile})
checkpath -d -q -m 0750 -o ${CELERY_USER:-"root"}:${CELERY_GROUP:-"root"} ${logdir} ${piddir}
}
@@ -66,9 +65,9 @@ celery_chdir() {
}
wait_pid () {
- local pidfile=${1}
- local timeout=${STOPTIMEOUT:-"10"}
- local PID=$(cat "${pidfile}" 2>/dev/null)
+ pidfile=${1}
+ timeout=${STOPTIMEOUT:-"10"}
+ PID=$(cat "${pidfile}" 2>/dev/null)
while [ -n "${PID}" ] && [ "${timeout}" -ge 1 ]; do
kill -0 ${PID} 2>/dev/null || break
@@ -96,14 +95,14 @@ start_workers() {
stop_workers() {
yesno "${CELERYD_ENABLED}" || return 0
- local timeout=${STOPTIMEOUT:-"10"}
+ timeout=${STOPTIMEOUT:-"10"}
${CELERYD_MULTI} stop ${CELERYD_NODES} --pidfile="${CELERYD_PID_FILE}" || return 1
# Wait for each node
for node in ${CELERYD_NODES}; do
- local pidfile=${CELERYD_PID_FILE/\%n/${node}}
- local PID=$(cat "${pidfile}" 2>/dev/null)
+ pidfile=$(echo "${CELERYD_PID_FILE}" | sed "s/%n/${node}/g")
+ PID=$(cat "${pidfile}" 2>/dev/null)
while [ -n "${PID}" ] && [ "${timeout}" -ge 1 ]; do
kill -0 ${PID} 2>/dev/null || break
timeout=$((${timeout} - 1))
@@ -150,7 +149,7 @@ stop_beat() {
start() {
- local cr=0
+ cr=0
checkconfig || return 1
@@ -166,7 +165,7 @@ start() {
}
stop() {
- local cr=0
+ cr=0
checkconfig || return 1
@@ -182,7 +181,7 @@ stop() {
}
reload() {
- local cr=0
+ cr=0
checkconfig || return 1
diff --git a/dev-python/celery/metadata.xml b/dev-python/celery/metadata.xml
index 914451b64..5ca07e299 100644
--- a/dev-python/celery/metadata.xml
+++ b/dev-python/celery/metadata.xml
@@ -1,8 +1,12 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
<remote-id type="pypi">celery</remote-id>
+ <remote-id type="github">celery/celery</remote-id>
+ <doc>https://docs.celeryq.dev/en/stable/</doc>
+ <changelog>https://docs.celeryq.dev/en/stable/changelog.html</changelog>
+ <bugs-to>https://github.com/celery/celery/issues</bugs-to>
</upstream>
</pkgmetadata>
diff --git a/dev-python/cffsubr/Manifest b/dev-python/cffsubr/Manifest
deleted file mode 100644
index d42a93d36..000000000
--- a/dev-python/cffsubr/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST cffsubr-0.2.8.tar.gz 124245 BLAKE2B fa78acf9158faf3917f194a2c30a13c2a598a7476a89dc79f95440eb04fe91663e7620729e6be1635ce1df24fff34068c42ea155abb17f016f50e961d13f52af SHA512 5f5a655168c6157799d17e20762893f23a7f7d90e739fb5bbe0a4fd895dc2b1c5359b5bdb92f4cb8333f841cd5b471359825d709f2477afd2bd7322760359d24
diff --git a/dev-python/cffsubr/cffsubr-0.2.8.ebuild b/dev-python/cffsubr/cffsubr-0.2.8.ebuild
deleted file mode 100644
index 8f691deed..000000000
--- a/dev-python/cffsubr/cffsubr-0.2.8.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/adobe-type-tools/cffsubr/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64"
-DESCRIPTION="Standalone CFF subroutinizer based on AFDKO tx tool"
-HOMEPAGE="https://github.com/adobe-type-tools/cffsubr"
-LICENSE="Apache-2.0"
-SLOT="0"
-
-RDEPEND="
- >=dev-util/afdko-3.6.1[${PYTHON_USEDEP}]
-"
-BDEPEND="
- dev-python/setuptools_scm[${PYTHON_USEDEP}]
-"
-
-PATCHES=(
- "${FILESDIR}/${PN}-system_tx.diff"
- "${FILESDIR}/${P}-fix-setup-py.patch"
-)
-
-distutils_enable_tests pytest
-
-pkg_setup() {
- export SETUPTOOLS_SCM_PRETEND_VERSION="${PV%_*}"
-}
-
-src_prepare() {
- #no bundled afdko
- rm -rf external || die
- default
-}
diff --git a/dev-python/cffsubr/files/cffsubr-0.2.8-fix-setup-py.patch b/dev-python/cffsubr/files/cffsubr-0.2.8-fix-setup-py.patch
deleted file mode 100644
index 2d429c2b8..000000000
--- a/dev-python/cffsubr/files/cffsubr-0.2.8-fix-setup-py.patch
+++ /dev/null
@@ -1,18 +0,0 @@
---- a/setup.py
-+++ b//setup.py
-@@ -135,7 +135,6 @@
- platforms=["posix", "nt"],
- package_dir={"": "src"},
- packages=find_packages("src"),
-- ext_modules=[tx],
- zip_safe=False,
- cmdclass=cmdclass,
- install_requires=[
-@@ -145,7 +144,6 @@
- setup_requires=[
- "setuptools_scm",
- # finds all git tracked files including submodules when making sdist MANIFEST
-- "setuptools-git-ls-files",
- ],
- extras_require={"testing": ["pytest"]},
- python_requires=">=3.6",
diff --git a/dev-python/cffsubr/files/cffsubr-system_tx.diff b/dev-python/cffsubr/files/cffsubr-system_tx.diff
deleted file mode 100644
index 16c41c74c..000000000
--- a/dev-python/cffsubr/files/cffsubr-system_tx.diff
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/src/cffsubr/__init__.py
-+++ b/src/cffsubr/__init__.py
-@@ -60,8 +60,7 @@ def _run_embedded_tx(*args, **kwargs):
- subprocess.CompletedProcess object with the following attributes:
- args, returncode, stdout, stderr.
- """
-- with path(__name__, TX_EXE) as tx_cli:
-- return subprocess.run([str(tx_cli)] + list(args), **kwargs)
-+ return subprocess.run(['tx'] + list(args), **kwargs)
-
-
- def _tx_subroutinize(data: bytes, output_format: str = CFFTableTag.CFF) -> bytes:
diff --git a/dev-python/cffsubr/metadata.xml b/dev-python/cffsubr/metadata.xml
deleted file mode 100644
index 23e1e9221..000000000
--- a/dev-python/cffsubr/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/adobe-type-tools/cffsubr/issues</bugs-to>
- <remote-id type="github">adobe-type-tools/cffsubr</remote-id>
- <remote-id type="pypi">cffsubr</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/check-manifest/Manifest b/dev-python/check-manifest/Manifest
deleted file mode 100644
index 1990a386a..000000000
--- a/dev-python/check-manifest/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST check-manifest-0.46.tar.gz 34419 BLAKE2B 9152ca60756c503c744192ab72668858ba7fe491745c48337aab2b135f9d491319bb383af901110abf61a7b439e01bba4d5c22f2042aca6cf1e0b990ce15726f SHA512 301caa9c95f4ae3655c290217867df7e9de9967c1a603a32e4a0e220651de555c3dd716b109b1b1dda8e2547396bce8b742fd08091a4879943aefc56e8008d96
diff --git a/dev-python/check-manifest/check-manifest-0.46.ebuild b/dev-python/check-manifest/check-manifest-0.46.ebuild
deleted file mode 100644
index f33ad5f41..000000000
--- a/dev-python/check-manifest/check-manifest-0.46.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7..9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Tool to check the completeness of MANIFEST.in for Python packages"
-HOMEPAGE="
- https://github.com/mgedmin/check-manifest
- https://pypi.org/project/check-manifest
-"
-SRC_URI="https://github.com/mgedmin/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- dev-python/toml[${PYTHON_USEDEP}]
-"
-DEPEND="
- ${RDEPEND}
- test? (
- dev-python/mock[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-python_test() {
- epytest \
- --deselect tests.py::Tests::test_build_sdist_pep517_isolated \
- --deselect tests.py::Tests::test_build_sdist_pep517_no_isolation
-}
diff --git a/dev-python/check-manifest/metadata.xml b/dev-python/check-manifest/metadata.xml
deleted file mode 100644
index 68672b0ee..000000000
--- a/dev-python/check-manifest/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <longdescription lang="en">
-Are you a Python developer? Have you uploaded packages to the Python Package Index? Have you accidentally uploaded broken packages with some files missing? If so, check-manifest is for you.
- </longdescription>
- <upstream>
- <remote-id type="github">mgedmin/check-manifest</remote-id>
- <remote-id type="pypi">check-manifest</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/click-aliases/Manifest b/dev-python/click-aliases/Manifest
new file mode 100644
index 000000000..31f9a3032
--- /dev/null
+++ b/dev-python/click-aliases/Manifest
@@ -0,0 +1 @@
+DIST click-aliases-1.0.4.gh.tar.gz 25755 BLAKE2B 1603fb2316862bad4effb46a25add21b65166f60b34f20a0f9d2bd4f7662f048dc983222742891214dc9e17d5c4f45953a6ac181aeb9fb2379fe71b050008b26 SHA512 8b4c850a036709e9345d2c685167056032e290aa33cf8536010d20dabc513210ae25c874f9272d5568a2dba4bc2262673afa7ba068133d3cdab0f35014fb1936
diff --git a/dev-python/click-aliases/click-aliases-1.0.4.ebuild b/dev-python/click-aliases/click-aliases-1.0.4.ebuild
new file mode 100644
index 000000000..696e6aedf
--- /dev/null
+++ b/dev-python/click-aliases/click-aliases-1.0.4.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Add (mutiple) aliases to a click group or command"
+HOMEPAGE="
+ https://pypi.org/project/click-aliases/
+ https://github.com/click-contrib/click-aliases
+"
+SRC_URI="https://github.com/click-contrib/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/click[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
diff --git a/dev-python/click-aliases/metadata.xml b/dev-python/click-aliases/metadata.xml
new file mode 100644
index 000000000..2757f9f0d
--- /dev/null
+++ b/dev-python/click-aliases/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="pypi">click-aliases</remote-id>
+ <remote-id type="github">click-contrib/click-aliases</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/click-command-tree/Manifest b/dev-python/click-command-tree/Manifest
new file mode 100644
index 000000000..baaaa333b
--- /dev/null
+++ b/dev-python/click-command-tree/Manifest
@@ -0,0 +1 @@
+DIST click-command-tree-1.1.1.gh.tar.gz 3991 BLAKE2B 7fc40e8273c05aedb8f71ddfe33d640761f3fe8c02afdb8973828b8c247910c67e7469aa43e41bc003dadd741736c0b4ffc48d146cd417051a4b939299a49033 SHA512 e9e8298b8efeb41331f03b8cbe1777bc01fdab246770d975ea27e1b1c513320ab34f61cffd72d19d878669d75d952401dcfffabc0e2d2e70bc52f1a6248f25b0
diff --git a/dev-python/click-command-tree/click-command-tree-1.1.1.ebuild b/dev-python/click-command-tree/click-command-tree-1.1.1.ebuild
new file mode 100644
index 000000000..4956ecd58
--- /dev/null
+++ b/dev-python/click-command-tree/click-command-tree-1.1.1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+DESCRIPTION="click plugin to show the command tree of your CLI"
+HOMEPAGE="https://pypi.org/project/click-command-tree/"
+SRC_URI="https://github.com/whwright/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/click
+"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests unittest
diff --git a/dev-python/click-command-tree/metadata.xml b/dev-python/click-command-tree/metadata.xml
new file mode 100644
index 000000000..7a9594ebc
--- /dev/null
+++ b/dev-python/click-command-tree/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">whwright/click-command-tree</remote-id>
+ <remote-id type="pypi">click-command-tree</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/click-didyoumean/Manifest b/dev-python/click-didyoumean/Manifest
deleted file mode 100644
index 21d70b697..000000000
--- a/dev-python/click-didyoumean/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST click-didyoumean-0.0.3.tar.gz 4283 BLAKE2B 8af7cb4c0448a67f263c1c8939ff89e1429e4d98a8e41cd49f573c5e43458c5da72f81e78e4d72e071ce753998b2f4765de5f3aad9330cf29032decb8fff9a5f SHA512 6e832881817645eb8fa3a40acaab74a7f0dcc798aa984781a011b2ef78da2a4ae71ff2d58907bcbb35adbfc659727223c28c3622788eef05ecbdf758d6ac889d
diff --git a/dev-python/click-didyoumean/click-didyoumean-0.0.3.ebuild b/dev-python/click-didyoumean/click-didyoumean-0.0.3.ebuild
deleted file mode 100644
index a4e76e305..000000000
--- a/dev-python/click-didyoumean/click-didyoumean-0.0.3.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( pypy3 python3_{7..9} )
-inherit distutils-r1
-
-DESCRIPTION="Enable git-like did-you-mean feature in click"
-HOMEPAGE="
- https://github.com/click-contrib/click-didyoumean
- https://pypi.org/project/click-didyoumean
-"
-SRC_URI="https://github.com/click-contrib/click-didyoumean/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-RESTRICT="test"
-DEPEND="
- dev-python/click
-"
-RDEPEND="${DEPEND}"
-
-distutils_enable_tests pytest
diff --git a/dev-python/click-didyoumean/metadata.xml b/dev-python/click-didyoumean/metadata.xml
deleted file mode 100644
index d2b2c8ce9..000000000
--- a/dev-python/click-didyoumean/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/click-option-group/Manifest b/dev-python/click-option-group/Manifest
new file mode 100644
index 000000000..e9598de37
--- /dev/null
+++ b/dev-python/click-option-group/Manifest
@@ -0,0 +1,2 @@
+DIST click-option-group-0.5.5.gh.tar.gz 18488 BLAKE2B 87bd7bf585a5ea0d7fcb49695a10e79fcecead334ae23058508a17d7e2347b132767703abc4a8918564c3b04f21ab8db30dfeb46a0d8e3a07d224eb6cbf344a5 SHA512 114f47846668c3b3d7465ac22d0e6fce79de230a267432d55a4a1a60be7c1511a376b8f39c3e1f3dac556fd89d00e2015977b01df05ae60d8fb5d46756bec9df
+DIST click-option-group-0.5.6.gh.tar.gz 18938 BLAKE2B db666d1a04f079ebe8ad9cab0605cf49cec054e912ce35d5062f40e0dcc000c227735569269fe16003476e8103ab5a94f9605be6d6ef962322fde503270e3674 SHA512 791bb027cdc9055124d6ff26b3ac775c8047f1dacc32f9783a17fd64f3df744030b5efe3fdf01926a61c04294e523d6e2f70ad106243d2cdb7724dc1fa11eb60
diff --git a/dev-python/click-option-group/click-option-group-0.5.5.ebuild b/dev-python/click-option-group/click-option-group-0.5.5.ebuild
new file mode 100644
index 000000000..3343871de
--- /dev/null
+++ b/dev-python/click-option-group/click-option-group-0.5.5.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1
+
+DESCRIPTION=" Option groups missing in Click "
+HOMEPAGE="https://github.com/click-contrib/click-option-group"
+SRC_URI="https://github.com/click-contrib/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+RESTRICT="test"
+
+RDEPEND="dev-python/click[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+BDEPEND="
+"
+# dev-python/coveralls currently masked in ::guru due to
+# https://github.com/TheKevJames/coveralls-python/issues/377
+ # test? (
+ # dev-python/pytest-cov[${PYTHON_USEDEP}]
+ # <dev-python/coverage-7[${PYTHON_USEDEP}]
+ # dev-python/coveralls[${PYTHON_USEDEP}]
+ # )
+
+distutils_enable_tests pytest
diff --git a/dev-python/click-option-group/click-option-group-0.5.6.ebuild b/dev-python/click-option-group/click-option-group-0.5.6.ebuild
new file mode 100644
index 000000000..3343871de
--- /dev/null
+++ b/dev-python/click-option-group/click-option-group-0.5.6.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1
+
+DESCRIPTION=" Option groups missing in Click "
+HOMEPAGE="https://github.com/click-contrib/click-option-group"
+SRC_URI="https://github.com/click-contrib/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+RESTRICT="test"
+
+RDEPEND="dev-python/click[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+BDEPEND="
+"
+# dev-python/coveralls currently masked in ::guru due to
+# https://github.com/TheKevJames/coveralls-python/issues/377
+ # test? (
+ # dev-python/pytest-cov[${PYTHON_USEDEP}]
+ # <dev-python/coverage-7[${PYTHON_USEDEP}]
+ # dev-python/coveralls[${PYTHON_USEDEP}]
+ # )
+
+distutils_enable_tests pytest
diff --git a/dev-python/click-option-group/metadata.xml b/dev-python/click-option-group/metadata.xml
new file mode 100644
index 000000000..0e597edc2
--- /dev/null
+++ b/dev-python/click-option-group/metadata.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>julien@jroy.ca</email>
+ <name>Julien Roy</name>
+ </maintainer>
+ <longdescription>Click is a package for creating powerful and beautiful command line interfaces (CLI) in Python, but it has no the functionality for creating option groups.
+
+Option groups are convenient mechanism for logical structuring CLI, also it allows you to set the specific behavior and set the relationship among grouped options (mutually exclusive options for example). Moreover, argparse stdlib package contains this functionality out of the box.
+
+The aim of this package is to provide group options with extensible functionality using canonical and clean API (Click-like API as far as possible).
+ </longdescription>
+ <upstream>
+ <maintainer>
+ <name>Eugene Prilepin</name>
+ <email>esp.home@gmail.com</email>
+ </maintainer>
+ <changelog>https://github.com/click-contrib/click-option-group/releases</changelog>
+ <doc>https://click-option-group.readthedocs.io/</doc>
+ <bugs-to>https://github.com/click-contrib/click-option-group/issues</bugs-to>
+ <remote-id type="github">click-contrib/click-option-group</remote-id>
+ <remote-id type="pypi">click-option-group</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/click-repl/Manifest b/dev-python/click-repl/Manifest
index ebae85399..89a7573c6 100644
--- a/dev-python/click-repl/Manifest
+++ b/dev-python/click-repl/Manifest
@@ -1 +1 @@
-DIST click-repl-0.2.0.tar.gz 7014 BLAKE2B b02c7d858971f655ba880c6f66ff0a5c1b3c1aeb83782807c04d862430841761caa8a7a72d2d110a9706272cf2cd818b6976db14315c885bea95e8ef991ef9df SHA512 888ef2d4082cbecbdab70d707296b20d3dcc0a13fe06ef103fbe04a3f29381fe0f3284c2eb38c6d3eb8b026063cba470a519524e98b9eadd06a5946c669ffc3b
+DIST click-repl-0.2.0.gh.tar.gz 7014 BLAKE2B b02c7d858971f655ba880c6f66ff0a5c1b3c1aeb83782807c04d862430841761caa8a7a72d2d110a9706272cf2cd818b6976db14315c885bea95e8ef991ef9df SHA512 888ef2d4082cbecbdab70d707296b20d3dcc0a13fe06ef103fbe04a3f29381fe0f3284c2eb38c6d3eb8b026063cba470a519524e98b9eadd06a5946c669ffc3b
diff --git a/dev-python/click-repl/click-repl-0.2.0.ebuild b/dev-python/click-repl/click-repl-0.2.0-r1.ebuild
index a47cafaec..5cfb97d82 100644
--- a/dev-python/click-repl/click-repl-0.2.0.ebuild
+++ b/dev-python/click-repl/click-repl-0.2.0-r1.ebuild
@@ -1,28 +1,27 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{8..9} )
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
DESCRIPTION="Subcommand REPL for click apps"
HOMEPAGE="
https://github.com/click-contrib/click-repl
- https://pypi.org/project/click-repl
+ https://pypi.org/project/click-repl/
"
-SRC_URI="https://github.com/click-contrib/click-repl/archive/${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/click-contrib/click-repl/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-DEPEND="
+RDEPEND="
dev-python/click[${PYTHON_USEDEP}]
- dev-python/prompt_toolkit[${PYTHON_USEDEP}]
+ dev-python/prompt-toolkit[${PYTHON_USEDEP}]
dev-python/six[${PYTHON_USEDEP}]
"
-RDEPEND="${DEPEND}"
distutils_enable_tests pytest
diff --git a/dev-python/click-repl/metadata.xml b/dev-python/click-repl/metadata.xml
index d2b2c8ce9..df73244b4 100644
--- a/dev-python/click-repl/metadata.xml
+++ b/dev-python/click-repl/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">click-contrib/click-repl</remote-id>
+ <remote-id type="pypi">click-repl</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/cloudflare/Manifest b/dev-python/cloudflare/Manifest
new file mode 100644
index 000000000..84a9ae7ab
--- /dev/null
+++ b/dev-python/cloudflare/Manifest
@@ -0,0 +1,2 @@
+DIST cloudflare-2.19.2.gh.tar.gz 145051 BLAKE2B cd7c9d9352b055b115af443341dcc4d0a446aaf1ac7b7f8030dce0ff19da185b1effc9a679b8018920ade98cafaaf599af8aea8c57a924e59eb40670a3854b70 SHA512 eac9601f9cb9ea5dc140e48fb0f0e042396f6a7ec354f18b815d6c51094799dc3f25e1e69e78f87ec5c612f4304d15f779090962a8f96282d9b2fe8a9abfb690
+DIST cloudflare-2.19.4.gh.tar.gz 151397 BLAKE2B c91c95f52314c5177d823ef8f827ea2f76f6cc703260449aea12d54c1b77d061feca15d4bb845f84cfb4fd80789e5064e54d7530daf546d54d17054b9e0b4fda SHA512 8ae11e73760c57b610abfe5e2c8fdc83c2e0b9e07340884925ec9ac3bf5b40b4edf39b2b8ce7330538369d7573146a2ddac195efb0efb4ff657f75fdacb31aed
diff --git a/dev-python/cloudflare/cloudflare-2.19.2.ebuild b/dev-python/cloudflare/cloudflare-2.19.2.ebuild
new file mode 100644
index 000000000..c4a3c1cb1
--- /dev/null
+++ b/dev-python/cloudflare/cloudflare-2.19.2.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517="setuptools"
+inherit distutils-r1
+
+DESCRIPTION="Python wrapper for the Cloudflare v4 API"
+HOMEPAGE="https://pypi.org/project/cloudflare/"
+#SRC_URI="https://files.pythonhosted.org/packages/9b/8c/973e3726c2aa73821bb4272717c6f9f6fc74e69d41ba871bdf97fc671782/${P}.tar.gz"
+#SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+SRC_URI="https://github.com/cloudflare/python-cloudflare/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/python-${P}"
+LICENSE="MIT"
+SLOT="0"
+DEPEND="dev-python/jsonlines[${PYTHON_USEDEP}]"
+RDEPEND="( ${DEPEND}
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}] )"
+PROPERTIES="test_network" #actually sends many test requests
+distutils_enable_tests pytest
+KEYWORDS="~amd64 ~arm64"
+RESTRICT="test mirror" #mirror restricted only because overlay
+
+python_prepare_all() {
+ # don't install tests or examples
+ sed -i -e "s/'cli4', 'examples'/'cli4'/" \
+ -e "s#'CloudFlare/tests',##" \
+ setup.py || die
+ sed -i -e "/def test_ips7_should_fail():/i@pytest.mark.xfail(reason='Now fails upstream')" \
+ -e "2s/^/import pytest/" \
+ CloudFlare/tests/test_cloudflare_calls.py || die
+ distutils-r1_python_prepare_all
+}
+python_test() {
+ pushd CloudFlare/tests
+ if [ -z "${CLOUDFLARE_API_TOKEN}" ]; then
+ ewarn "Skipping some tests which require an actual cloudflare api token"
+ ewarn "To run them, provide the token in the environment variable CLOUDFLARE_API_TOKEN"
+ ewarn "The permissions needed are zone dns edit and user details read"
+ local EPYTEST_IGNORE=('test_dns_records.py' 'test_radar_returning_csv.py'
+ 'test_dns_import_export.py' 'test_load_balancers.py' 'test_log_received.py'
+ 'test_rulesets.py' 'test_urlscanner.py' 'test_paging_thru_zones.py'
+ 'test_purge_cache.py'
+ 'test_graphql.py' 'test_waiting_room.py' 'test_workers.py' 'test_cloudflare_calls.py' )
+ # these test(s) need an api key/token setup
+ # Permissions needed are zone dns edit and user details read, account worker scripts edit,
+ # zone analytics read, zone load balancer edit, account ruleset edit, zone firewall edit
+ # account url scanner edit, zone waiting room edit, zone cache purge
+ fi
+ # Not sure what permissions/tokens/whatever this test needs, maybe both a token and old api login
+ # tried several of the ssl related options for the cert test but no luck either
+ # Tried several of the prefex related options to try to get loa docs working but nope
+ local EPYTEST_IGNORE+=('test_images_v2_direct_upload.py' 'test_issue114.py'
+ 'test_certificates.py' 'test_loa_documents.py'
+ 'test_load_balancers.py' 'test_rulesets.py')
+ # maybe needs a paid plan or just some unknown permission
+ local EPYTEST_DESELECT=(
+ 'test_load_balancers.py::test_load_balancers_list_regions'
+ 'test_load_balancers_get_regions'
+ 'test_load_balancers.py::test_load_balancers_search'
+ 'test_load_balancers.py::test_load_balancers_pools'
+ 'test_rulesets.py::test_zones_ruleset_post'
+ 'test_rulesets.py::test_zones_rulesets_get_specific'
+ 'test_rulesets.py::test_zones_ruleset_delete'
+ )
+ epytest
+}
diff --git a/dev-python/cloudflare/cloudflare-2.19.4.ebuild b/dev-python/cloudflare/cloudflare-2.19.4.ebuild
new file mode 100644
index 000000000..c4a3c1cb1
--- /dev/null
+++ b/dev-python/cloudflare/cloudflare-2.19.4.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517="setuptools"
+inherit distutils-r1
+
+DESCRIPTION="Python wrapper for the Cloudflare v4 API"
+HOMEPAGE="https://pypi.org/project/cloudflare/"
+#SRC_URI="https://files.pythonhosted.org/packages/9b/8c/973e3726c2aa73821bb4272717c6f9f6fc74e69d41ba871bdf97fc671782/${P}.tar.gz"
+#SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+SRC_URI="https://github.com/cloudflare/python-cloudflare/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/python-${P}"
+LICENSE="MIT"
+SLOT="0"
+DEPEND="dev-python/jsonlines[${PYTHON_USEDEP}]"
+RDEPEND="( ${DEPEND}
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}] )"
+PROPERTIES="test_network" #actually sends many test requests
+distutils_enable_tests pytest
+KEYWORDS="~amd64 ~arm64"
+RESTRICT="test mirror" #mirror restricted only because overlay
+
+python_prepare_all() {
+ # don't install tests or examples
+ sed -i -e "s/'cli4', 'examples'/'cli4'/" \
+ -e "s#'CloudFlare/tests',##" \
+ setup.py || die
+ sed -i -e "/def test_ips7_should_fail():/i@pytest.mark.xfail(reason='Now fails upstream')" \
+ -e "2s/^/import pytest/" \
+ CloudFlare/tests/test_cloudflare_calls.py || die
+ distutils-r1_python_prepare_all
+}
+python_test() {
+ pushd CloudFlare/tests
+ if [ -z "${CLOUDFLARE_API_TOKEN}" ]; then
+ ewarn "Skipping some tests which require an actual cloudflare api token"
+ ewarn "To run them, provide the token in the environment variable CLOUDFLARE_API_TOKEN"
+ ewarn "The permissions needed are zone dns edit and user details read"
+ local EPYTEST_IGNORE=('test_dns_records.py' 'test_radar_returning_csv.py'
+ 'test_dns_import_export.py' 'test_load_balancers.py' 'test_log_received.py'
+ 'test_rulesets.py' 'test_urlscanner.py' 'test_paging_thru_zones.py'
+ 'test_purge_cache.py'
+ 'test_graphql.py' 'test_waiting_room.py' 'test_workers.py' 'test_cloudflare_calls.py' )
+ # these test(s) need an api key/token setup
+ # Permissions needed are zone dns edit and user details read, account worker scripts edit,
+ # zone analytics read, zone load balancer edit, account ruleset edit, zone firewall edit
+ # account url scanner edit, zone waiting room edit, zone cache purge
+ fi
+ # Not sure what permissions/tokens/whatever this test needs, maybe both a token and old api login
+ # tried several of the ssl related options for the cert test but no luck either
+ # Tried several of the prefex related options to try to get loa docs working but nope
+ local EPYTEST_IGNORE+=('test_images_v2_direct_upload.py' 'test_issue114.py'
+ 'test_certificates.py' 'test_loa_documents.py'
+ 'test_load_balancers.py' 'test_rulesets.py')
+ # maybe needs a paid plan or just some unknown permission
+ local EPYTEST_DESELECT=(
+ 'test_load_balancers.py::test_load_balancers_list_regions'
+ 'test_load_balancers_get_regions'
+ 'test_load_balancers.py::test_load_balancers_search'
+ 'test_load_balancers.py::test_load_balancers_pools'
+ 'test_rulesets.py::test_zones_ruleset_post'
+ 'test_rulesets.py::test_zones_rulesets_get_specific'
+ 'test_rulesets.py::test_zones_ruleset_delete'
+ )
+ epytest
+}
diff --git a/dev-python/cloudflare/metadata.xml b/dev-python/cloudflare/metadata.xml
new file mode 100644
index 000000000..f6a3df506
--- /dev/null
+++ b/dev-python/cloudflare/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>kcelbert@gmail.com</email>
+ <name>Kyle Elbert</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">cloudflare/python-cloudflare</remote-id>
+ <remote-id type="pypi">cloudflare</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/cloup/Manifest b/dev-python/cloup/Manifest
new file mode 100644
index 000000000..4b06edded
--- /dev/null
+++ b/dev-python/cloup/Manifest
@@ -0,0 +1 @@
+DIST cloup-3.0.5.gh.tar.gz 226050 BLAKE2B c9e100e93266e2159ba27c9261596aec1960f8cc7c7da47e8aac53cf5720b2348b8b74a3b9cde21240e73d5a2da4dab8fbf431236826b9e26f17f5a328a198b4 SHA512 04cd5fa7474448b9524d20b082d246a7aa0e19c14dba61640573b189c86f8ad639d2c38258df545cc0d179606e84284a4f0b305b512d33d182fbc3861eb60c64
diff --git a/dev-python/cloup/cloup-3.0.5.ebuild b/dev-python/cloup/cloup-3.0.5.ebuild
new file mode 100644
index 000000000..b52ac3f1d
--- /dev/null
+++ b/dev-python/cloup/cloup-3.0.5.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Click + option groups + constraints + aliases + help themes + ..."
+HOMEPAGE="https://github.com/janluke/cloup https://pypi.org/project/cloup/"
+SRC_URI="https://github.com/janluke/cloup/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/click-8.0[${PYTHON_USEDEP}]
+ <dev-python/click-9.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+"
+# doc? (
+# dev-python/sphinx-autoapi[${PYTHON_USEDEP}]
+# dev-python/sphinx-panels[${PYTHON_USEDEP}]
+# dev-python/sphinx-copybutton[${PYTHON_USEDEP}]
+# dev-python/sphinx-version-warning[${PYTHON_USEDEP}]
+# dev-python/sphinx-issues[${PYTHON_USEDEP}]
+# )
+
+distutils_enable_tests pytest
+# distutils_enable_sphinx docs # The doc need dev-python/sphinx < 5, which we don't have
+
+src_prepare() {
+ default
+ export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+}
diff --git a/dev-python/cloup/metadata.xml b/dev-python/cloup/metadata.xml
new file mode 100644
index 000000000..538230a02
--- /dev/null
+++ b/dev-python/cloup/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">cloup</remote-id>
+ <remote-id type="github">janLuke/cloup</remote-id>
+ <doc>https://cloup.readthedocs.io/</doc>
+ </upstream>
+ <longdescription>Library to build command line interfaces based on (and 100% compatible) with Click. It's like using Click but with more built-in features: option groups, constraints (e.g. mutually exclusive params), command aliases, help themes, "did you mean ...?" suggestions and more.</longdescription>
+</pkgmetadata>
diff --git a/dev-python/clufter/Manifest b/dev-python/clufter/Manifest
deleted file mode 100644
index a66e62db7..000000000
--- a/dev-python/clufter/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST clufter-v0.77.2.tar.gz 302049 BLAKE2B e8b8cb6a55bad2d3720c54b61140cfb388b9899b5fde3c3e0e67f51f3ec47ea3dea5d17829e396840efdc59a4fe69bf9b04005a36f34a73160720018a38976ea SHA512 5faf0851815cc9b76b04fe2e3feb362bc84e200c0f4bd28a950668d319612c83266002bb1c24a683e23b506096004a67df943d3b446cd85d9a55d9b295386b37
diff --git a/dev-python/clufter/clufter-0.77.2.ebuild b/dev-python/clufter/clufter-0.77.2.ebuild
deleted file mode 100644
index c098d262d..000000000
--- a/dev-python/clufter/clufter-0.77.2.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Tool/library for transforming/analyzing cluster configuration formats"
-HOMEPAGE="https://pagure.io/clufter"
-SRC_URI="https://pagure.io/${PN}/archive/v${PV}/${PN}-v${PV}.tar.gz"
-
-S="${WORKDIR}/${PN}-v${PV}"
-
-SLOT="0"
-LICENSE="GPL-2+"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-DOCS=( __root__/README )
-
-DEPEND="dev-python/lxml
- dev-libs/libxml2"
-
-src_compile() {
- # Build native extension first
- pushd "${S}/__root__/ccs-flatten" || die
- emake
- popd || die
-
- distutils-r1_src_compile
-}
diff --git a/dev-python/cmarkgfm/Manifest b/dev-python/cmarkgfm/Manifest
deleted file mode 100644
index 18bde8a84..000000000
--- a/dev-python/cmarkgfm/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST cmarkgfm-0.6.0.tar.gz 12667 BLAKE2B 8eab0a7f0b9903ddeca59a8dcd00efcd2a9ed136b0920cfd7ce40bf49a5b4d9c8d492c2096090a647deaa514b4032878e58d006852d279f91e8d439850e61add SHA512 de4653ae4b27e55b98f885b67d50f71cffa92f13511f1a5efb885a474f5aefb924ce6eb019f4241499b66ad43a7e0630053a7743e844e5c34c652050c0f83ef2
diff --git a/dev-python/cmarkgfm/cmarkgfm-0.6.0.ebuild b/dev-python/cmarkgfm/cmarkgfm-0.6.0.ebuild
deleted file mode 100644
index b7e061950..000000000
--- a/dev-python/cmarkgfm/cmarkgfm-0.6.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="Python bindings for GitHub's cmark"
-HOMEPAGE="https://github.com/theacodes/cmarkgfm"
-SRC_URI="https://github.com/theacodes/cmarkgfm/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-KEYWORDS="~amd64"
-SLOT="0"
-
-RDEPEND="
- app-text/cmark-gfm
- virtual/python-cffi[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-BDEPEND="app-text/dos2unix"
-
-PATCHES=( "${FILESDIR}/${P}-use-system-cmark-gfm.patch" )
-
-src_prepare() {
- dos2unix src/cmarkgfm/build_cmark.py || die
- default
-}
-
-distutils_enable_tests pytest
diff --git a/dev-python/cmarkgfm/files/cmarkgfm-0.6.0-use-system-cmark-gfm.patch b/dev-python/cmarkgfm/files/cmarkgfm-0.6.0-use-system-cmark-gfm.patch
deleted file mode 100644
index 47894810e..000000000
--- a/dev-python/cmarkgfm/files/cmarkgfm-0.6.0-use-system-cmark-gfm.patch
+++ /dev/null
@@ -1,47 +0,0 @@
---- a/src/cmarkgfm/build_cmark.py
-+++ b/src/cmarkgfm/build_cmark.py
-@@ -8,12 +8,8 @@
- import cffi
-
-
--# Get the directory for the cmark source files. It's under the package root
--# as /third_party/cmark/src
- HERE = os.path.dirname(os.path.abspath(__file__))
- PACKAGE_ROOT = os.path.abspath(os.path.join(HERE, '../../'))
--SRC_DIR = os.path.join(PACKAGE_ROOT, 'third_party/cmark/src')
--EXTENSIONS_SRC_DIR = os.path.join(PACKAGE_ROOT, 'third_party/cmark/extensions')
- UNIX_GENERATED_SRC_DIR = os.path.join(PACKAGE_ROOT, 'generated', 'unix')
- WIN_GENERATED_SRC_DIR = os.path.join(PACKAGE_ROOT, 'generated', 'windows')
-
-@@ -27,20 +23,6 @@
- CMARK_MODULE_H = fh.read()
-
-
--def _get_sources(dir, exclude=set()):
-- sources = glob.iglob(os.path.join(dir, '*.c'))
-- return sorted([
-- os.path.relpath(path, start=PACKAGE_ROOT)
-- for path in
-- sources
-- if os.path.basename(path) not in exclude
-- ])
--
--
--SOURCES = _get_sources(SRC_DIR, exclude=set(['main.c']))
--SOURCES.extend(_get_sources(EXTENSIONS_SRC_DIR))
--
--
- def _compiler_type():
- """
- Gets the compiler type from distutils. On Windows with MSVC it will be
-@@ -76,8 +58,8 @@
- ffibuilder.set_source(
- 'cmarkgfm._cmark',
- CMARK_MODULE_H,
-- sources=SOURCES,
-- include_dirs=[SRC_DIR, EXTENSIONS_SRC_DIR, GENERATED_SRC_DIR],
-+ include_dirs=[GENERATED_SRC_DIR],
-+ libraries=["cmark-gfm", "cmark-gfm-extensions"],
- extra_compile_args=EXTRA_COMPILE_ARGS
- )
-
diff --git a/dev-python/cmarkgfm/metadata.xml b/dev-python/cmarkgfm/metadata.xml
deleted file mode 100644
index 882411550..000000000
--- a/dev-python/cmarkgfm/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/theacodes/cmarkgfm/issues</bugs-to>
- <remote-id type="github">theacodes/cmarkgfm</remote-id>
- <remote-id type="pypi">cmarkgfm</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/codecov/Manifest b/dev-python/codecov/Manifest
new file mode 100644
index 000000000..2751b07a8
--- /dev/null
+++ b/dev-python/codecov/Manifest
@@ -0,0 +1 @@
+DIST codecov-2.1.12.gh.tar.gz 27160 BLAKE2B 93886b117bd0281f72f1bc14d1798ed526edec850ce3d900e505da1469e9bef59caccd449aef557dab7e9ea34c9990d4624d7ebfb9350f27990981223c7c9930 SHA512 fac34179ace4d4813ed71a5745e6ef8120d052fd7d7bef5548f80f7009f7b3242ec3aeb948f2125980ea932f130a2e81f742f47a3bd4f984726eaba16e1a7133
diff --git a/dev-python/codecov/codecov-2.1.12.ebuild b/dev-python/codecov/codecov-2.1.12.ebuild
new file mode 100644
index 000000000..6ef9667e3
--- /dev/null
+++ b/dev-python/codecov/codecov-2.1.12.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Hosted coverage reports for GitHub, Bitbucket and Gitlab"
+HOMEPAGE="https://github.com/codecov/codecov-python https://pypi.org/project/codecov"
+SRC_URI="https://github.com/codecov/codecov-python/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/codecov-python-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/requests-2.7.9[${PYTHON_USEDEP}]
+ dev-python/coverage[${PYTHON_USEDEP}]"
+
+python_prepare_all() {
+ # The tests does not follow the naming convention
+ rm -r "${S}/tests"
+ distutils-r1_python_prepare_all
+}
+# BDEPEND="
+# test? (
+# dev-python/pytest[${PYTHON_USEDEP}]
+# dev-python/ddt[${PYTHON_USEDEP}]
+# dev-python/mock[${PYTHON_USEDEP}]
+# dev-python/pytest-cov[${PYTHON_USEDEP}]
+# dev-python/funcsigs[${PYTHON_USEDEP}]
+# dev-python/requests[${PYTHON_USEDEP}]
+# dev-python/black[${PYTHON_USEDEP}]
+# )"
+
+# distutils_enable_tests pytest
diff --git a/dev-python/codecov/metadata.xml b/dev-python/codecov/metadata.xml
new file mode 100644
index 000000000..ace7759c9
--- /dev/null
+++ b/dev-python/codecov/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>b@edevau.net</email>
+ <name>Andreas Billmeier</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">codecov</remote-id>
+ <remote-id type="github">codecov/codecov-python</remote-id>
+ <maintainer status="unknown">
+ <email>support@codecov.io</email>
+ <name>Codecov</name>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/collidoscope/Manifest b/dev-python/collidoscope/Manifest
deleted file mode 100644
index 9418035d2..000000000
--- a/dev-python/collidoscope/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST collidoscope-0.0.6.tar.gz 30056 BLAKE2B 44979e6748cbf1db46ae7bdcba561e39ab40a51a108ce0b357a833b7a0e260d1df2de9b139010cbc50f8ac060db0bfe6d20ebdb7a2e06b0d9d6c2941278c9188 SHA512 fd38dcef982fee3ef55f8d6a500d5a56bd0f5e3adbffbae8da6506d4ad3e447864c0571042327f92d5b18212510bbee65ed07100c0c963f1fcef9ec70ad8df1a
diff --git a/dev-python/collidoscope/collidoscope-0.0.6.ebuild b/dev-python/collidoscope/collidoscope-0.0.6.ebuild
deleted file mode 100644
index 816c789ee..000000000
--- a/dev-python/collidoscope/collidoscope-0.0.6.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Brute force detection of glyph collisions"
-HOMEPAGE="https://github.com/simoncozens/collidoscope"
-SRC_URI="https://github.com/simoncozens/collidoscope/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-KEYWORDS="~amd64"
-SLOT="0"
-
-RDEPEND="
- dev-python/fonttools[${PYTHON_USEDEP}]
- dev-python/glyphtools[${PYTHON_USEDEP}]
- dev-python/pyclipper[${PYTHON_USEDEP}]
- dev-python/uharfbuzz[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
diff --git a/dev-python/collidoscope/metadata.xml b/dev-python/collidoscope/metadata.xml
deleted file mode 100644
index 364a1d3b5..000000000
--- a/dev-python/collidoscope/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/simoncozens/collidoscope/issues</bugs-to>
- <remote-id type="github">simoncozens/collidoscope</remote-id>
- <remote-id type="pypi">collidoscope</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/colored/Manifest b/dev-python/colored/Manifest
index e7db83bf9..dc61de892 100644
--- a/dev-python/colored/Manifest
+++ b/dev-python/colored/Manifest
@@ -1 +1 @@
-DIST colored-1.4.2.tar.gz 23973 BLAKE2B 3f6d91c08634d6e6616f968b7e06d0d7822a15d02e7129fab6fb4d3a4cb9ca166fd0de5cf3240fdf76918d09aab28224459d332821994730b4070dd7d4336b7e SHA512 31b604baf41d054a3b269e843393c63ede3be279331108ce1127ee30e63f19365c45f63744a5c3bdb5c355716138b7d1768e761ead456c480d5ae1183952a406
+DIST colored-2.2.4.tar.bz2 18246 BLAKE2B 0895ad4c0851af77526309d991f0271d1837087ecf1562031fdd391fa820e6973155ce5b9be66c527855331f25195ef327508bcfbba5bc5bb31d9a5b0c13d30f SHA512 4ae77b2b72d06c9da3dfe232cc4eac2414c350d8b19905005f1f0d31b208238b1462f59468d89860fb2c4617e47c81b48f0780a22969dc2ee83c90ffd2dd5431
diff --git a/dev-python/colored/colored-1.4.2.ebuild b/dev-python/colored/colored-2.2.4.ebuild
index 66c738a8e..681699a68 100644
--- a/dev-python/colored/colored-1.4.2.ebuild
+++ b/dev-python/colored/colored-2.2.4.ebuild
@@ -1,24 +1,23 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-inherit distutils-r1
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
-EGIT_REPO_URI="https://gitlab.com/dslackw/${PN}"
+inherit distutils-r1
DESCRIPTION="Very simple Python library for color and formatting in terminal"
HOMEPAGE="https://gitlab.com/dslackw/colored"
-SRC_URI="https://gitlab.com/dslackw/${PN}/-/archive/${PV}/${P}.tar.gz"
+SRC_URI="https://gitlab.com/dslackw/${PN}/-/archive/${PV}/${P}.tar.bz2"
LICENSE="MIT"
-KEYWORDS="~amd64 ~x86"
SLOT="0"
+KEYWORDS="~amd64 ~x86"
DOCS=( CHANGES.md README.rst docs )
-python_test() {
- "${EPYTHON}" tests/test_hex_1.py || die
- "${EPYTHON}" tests/test_hex_2.py || die
-}
+# Until we find a way to set colored as unaware of TTY, we should not test as
+# half of them fail, see https://gitlab.com/dslackw/colored/-/issues/32
+# distutils_enable_tests pytest
diff --git a/dev-python/colored/metadata.xml b/dev-python/colored/metadata.xml
index dd4230819..a49e676e8 100644
--- a/dev-python/colored/metadata.xml
+++ b/dev-python/colored/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>coppens.matthias.abc@gmail.com</email>
- <name>Matthias Coppens</name>
- </maintainer>
+ <!-- maintainer-needed -->
<longdescription lang="en">
Very simple Python library for color and formatting in terminal.
Collection of color codes and names for 256 color terminal setups.
diff --git a/dev-python/colorthief/Manifest b/dev-python/colorthief/Manifest
new file mode 100644
index 000000000..035d1c142
--- /dev/null
+++ b/dev-python/colorthief/Manifest
@@ -0,0 +1 @@
+DIST colorthief-0.2.1.tar.gz 6164 BLAKE2B 7d05951c5ee6b2ab39aa882f871e5e49cf416f134aa696243e0800d1d7f41fbcb96b32374a2a72bdef3a0e01f9d0987b5789658abd1a6b56ed01a75d888d596b SHA512 33d8f048d6e0fb4b6f3b5a6d7fd53ec8156e1ab4b2fe9c8252d49954929a3046547536ae7cb6d7752c43fd2974b36acffabcc61d733ad462a2504ead36c99da7
diff --git a/dev-python/colorthief/colorthief-0.2.1.ebuild b/dev-python/colorthief/colorthief-0.2.1.ebuild
new file mode 100644
index 000000000..adf8f29b6
--- /dev/null
+++ b/dev-python/colorthief/colorthief-0.2.1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="Module for grabbing the color palette from an image"
+HOMEPAGE="
+ https://github.com/fengsp/color-thief-py
+ https://pypi.org/project/colorthief/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/pillow[${PYTHON_USEDEP}]"
diff --git a/dev-python/colorthief/metadata.xml b/dev-python/colorthief/metadata.xml
new file mode 100644
index 000000000..6806dfc89
--- /dev/null
+++ b/dev-python/colorthief/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>pastalian46@gmail.com</email>
+ <name>Takuya Wakazono</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">fengsp/color-thief-py</remote-id>
+ <remote-id type="pypi">colorthief</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/commandlines/Manifest b/dev-python/commandlines/Manifest
deleted file mode 100644
index 243bca7c8..000000000
--- a/dev-python/commandlines/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST commandlines-0.4.1.tar.gz 37519 BLAKE2B d59d8d31028ec59b10608176df4a9d41042936339f630b6f2be4c8ffe9f6e7d14a000294d0a054b7d06b3388d59dfdc08b70fac6d9a2d8998fe528efb392ef7e SHA512 c481d391a4bb1f6701f5fb04c3031610e625521e2597f46a197dbbf3c776b19f257642aacf664fa55cb2133c2c2b207c315a4805197fee93a86e2536bb6a02a6
diff --git a/dev-python/commandlines/commandlines-0.4.1.ebuild b/dev-python/commandlines/commandlines-0.4.1.ebuild
deleted file mode 100644
index dad561831..000000000
--- a/dev-python/commandlines/commandlines-0.4.1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="Routines for extracting information from fontTools glyphs"
-HOMEPAGE="
- https://commandlines.github.io
- https://github.com/chrissimpkins/commandlines
-"
-SRC_URI="https://github.com/chrissimpkins/commandlines/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-KEYWORDS="~amd64"
-SLOT="0"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
diff --git a/dev-python/commandlines/metadata.xml b/dev-python/commandlines/metadata.xml
deleted file mode 100644
index f1e0f46e9..000000000
--- a/dev-python/commandlines/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/chrissimpkins/commandlines/issues</bugs-to>
- <remote-id type="github">chrissimpkins/commandlines</remote-id>
- <remote-id type="pypi">commandlines</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/compreffor/Manifest b/dev-python/compreffor/Manifest
deleted file mode 100644
index 1fe65fb46..000000000
--- a/dev-python/compreffor/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST compreffor-0.5.1.zip 78104 BLAKE2B 515bb6079ac8ba1498568dcb68c1f1da046e2877997c4ca9ae30be99db7e7e331b874e2d11b4ecf78ee0be00e5f3778096dad3067743f002254ea52861e94522 SHA512 86008c487ea84ba713a784035dc260bba045c2bd9791e3fdbbd30f300ec5a9796b8f9c54dd39f19a6cb4143e7e1c3c59f7b31f1e5455e707815ec9cc363c6761
diff --git a/dev-python/compreffor/compreffor-0.5.1.ebuild b/dev-python/compreffor/compreffor-0.5.1.ebuild
deleted file mode 100644
index bafb7a8c2..000000000
--- a/dev-python/compreffor/compreffor-0.5.1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.zip"
-KEYWORDS="~amd64"
-DESCRIPTION="A CFF table subroutinizer for FontTools"
-HOMEPAGE="https://github.com/googlefonts/compreffor"
-LICENSE="Apache-2.0"
-SLOT="0"
-
-RDEPEND="
- >=dev-python/fonttools-4.2.0[${PYTHON_USEDEP}]
-"
-DEPEND="
- ${RDEPEND}
-"
-BDEPEND="
- app-arch/unzip
- dev-python/cython[${PYTHON_USEDEP}]
-"
-PATCHES=( "${FILESDIR}/remove-pytest-runner.patch" )
-
-distutils_enable_tests pytest
-
-python_test() {
- distutils_install_for_testing
- default
-}
diff --git a/dev-python/compreffor/files/remove-pytest-runner.patch b/dev-python/compreffor/files/remove-pytest-runner.patch
deleted file mode 100644
index f3734f3cc..000000000
--- a/dev-python/compreffor/files/remove-pytest-runner.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/setup.py 2021-03-27 18:38:41.032816105 +0100
-+++ b/setup.py 2021-03-27 18:38:57.087088810 +0100
-@@ -150,7 +150,7 @@
- cmdclass={
- 'build_ext': custom_build_ext,
- },
-- setup_requires=pytest_runner + wheel,
-+ setup_requires=wheel,
- tests_require=[
- 'pytest>=2.8',
- ],
diff --git a/dev-python/compreffor/metadata.xml b/dev-python/compreffor/metadata.xml
deleted file mode 100644
index f56df1a5a..000000000
--- a/dev-python/compreffor/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <remote-id type="github">googlefonts/compreffor</remote-id>
- <remote-id type="pypi">compreffor</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/convertdate/Manifest b/dev-python/convertdate/Manifest
index cdb6f9158..6f6cc6fdc 100644
--- a/dev-python/convertdate/Manifest
+++ b/dev-python/convertdate/Manifest
@@ -1,2 +1 @@
-DIST convertdate-2.3.0.tar.gz 48993 BLAKE2B d0bbb68eeb71090fc9e0d524a1ec40789d101e29b85c8d3ecc14acefa00ff749f08e74980f36a486b19c08d949a517f00dcb4abc4a8aa29d105b8873e19c470c SHA512 ec3df742f16cdaca49f519d25b6a9647e654b7dd5c3e2ef43f4ae6466dff520db5ab67f58caf066a719e6c8c16b09ed4bf7c27d256259deb7e50f19ea14603f2
-DIST convertdate-2.3.1.tar.gz 49030 BLAKE2B 04f05035a8e9b325303a2dcf1d1dd391cef825825c6191cc26c0623de9a3c01086f29a3aae1c3d68e07a723179bee2781fcc9d9bc5e78fdc4b38463fdab54c47 SHA512 6a8e00fe8548b5715861903bf5a8561ad63907b3fc100ffe2e9f9a08864082e07267691f5bf983335a857310c8fdb48a306448ae4ababaee41a5a8eb515fdc2f
+DIST convertdate-2.4.0.gh.tar.gz 52728 BLAKE2B 1ee45f86c1a424f479a0a01d7f048a861cea9a25e82adade8dc26182064428b27dac98012d9a1e6afc7412f27366dd3d06ecc8d881eb6946d24a037305bb5c57 SHA512 d6b63000fd72640d69afa12b5f942684fa1c2f52880bc76e78780f144848040176a7869cd7b95a502abfd5b8fe1ebc3c844f3eb261e2ad547e6be493b11cd432
diff --git a/dev-python/convertdate/convertdate-2.3.1.ebuild b/dev-python/convertdate/convertdate-2.3.1.ebuild
deleted file mode 100644
index e9b79dcd4..000000000
--- a/dev-python/convertdate/convertdate-2.3.1.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Utils for converting between date formats and calculating holidays"
-HOMEPAGE="https://github.com/fitnr/convertdate"
-SRC_URI="https://github.com/fitnr/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- dev-python/pymeeus[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
diff --git a/dev-python/convertdate/convertdate-2.3.0.ebuild b/dev-python/convertdate/convertdate-2.4.0.ebuild
index b25d4c001..a68be7af6 100644
--- a/dev-python/convertdate/convertdate-2.3.0.ebuild
+++ b/dev-python/convertdate/convertdate-2.4.0.ebuild
@@ -1,24 +1,24 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
DESCRIPTION="Utils for converting between date formats and calculating holidays"
HOMEPAGE="https://github.com/fitnr/convertdate"
-SRC_URI="https://github.com/fitnr/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/fitnr/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
-RDEPEND="
- dev-python/pymeeus[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
-"
+RDEPEND="dev-python/pymeeus[${PYTHON_USEDEP}]"
distutils_enable_tests pytest
-distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
+
+distutils_enable_sphinx docs \
+ dev-python/myst-parser \
+ dev-python/sphinx-rtd-theme
diff --git a/dev-python/convertdate/metadata.xml b/dev-python/convertdate/metadata.xml
index 6f5e01a70..512899ed5 100644
--- a/dev-python/convertdate/metadata.xml
+++ b/dev-python/convertdate/metadata.xml
@@ -1,12 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>xgqt@riseup.net</email>
- <name>Maciej Barć</name>
- </maintainer>
- <upstream>
- <remote-id type="github">fitnr/convertdate</remote-id>
- <remote-id type="pypi">convertdate</remote-id>
- </upstream>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">fitnr/convertdate</remote-id>
+ <remote-id type="pypi">convertdate</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/cryptg/Manifest b/dev-python/cryptg/Manifest
new file mode 100644
index 000000000..4f8a967ef
--- /dev/null
+++ b/dev-python/cryptg/Manifest
@@ -0,0 +1,65 @@
+DIST aes-0.7.5.crate 128544 BLAKE2B 7381fe4963324b1f9b5cd1e81b2f2e3010ebb435b049b20fd1a9b37e472fed0062c63fe0a1629a59680f3c99154836a147db9561ee01dddbdeeefe6efdca5b6a SHA512 1e1e6714af9131af6a7e9546339d729979719c9c6751e4e2274e9cc243803920a7317c01a6dc20e31d730ccd43fc65cc2e9a3a29a6bc4d0c9bc0a6a3b65fe5c7
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST base64ct-1.5.3.crate 28781 BLAKE2B 2c8346c8d89975bbca4918474a04f868c09f95a843f8279aaf417737a20799bb91729c411f23bbfb029f65fe6ae28baca2fc79663f2f4fe10ce400ddacdf019c SHA512 a10861d777fb7766d97ef247aef32f086b4c0043d367ba8a427a6292b2762190a41bb7da36f6a71af5cf4254f6dd513ee45452a9c1103aebee326a91894264e2
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST block-buffer-0.9.0.crate 7108 BLAKE2B 42e99ec46c6e43d5f85e8d6d0a8fcef7175c97828758c93e55505c0e18e2646ae77bf264076041bf682532e28268a4978dd9c822c0475347ee3d29c5df2601fb SHA512 2d0f8908f59d4b1cccd1fbca0c1fa3cc4b224f09549669b28a16af5acfd4369b66851e9be8d65e1df71be998fbc42fc130ad32b71e035d6055724e8fa31fbf98
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST cipher-0.3.0.crate 12756 BLAKE2B a572b0140512b7512d496f2706cdfaedb680d47a283e3db8b4be97418585ed988929a3beed44012e8a9d9728cbc21f00b78bcbe376bbf57614d54ea07e4daf4c SHA512 8f0094c7786160730825cff21ca838f52801783f1f4f66755b0771595963b8b99fc926265ff502c66b94a2e6703d592d42bbed96ebf8d3a690bd5e731f0f5c4f
+DIST core2-0.4.0.crate 37075 BLAKE2B 89ad26bf5eb5ee48dff32d3b6b11e0a84b68e4f29c39fb9db79c64f3c445fde248b33b1ba9d1410673c3fe823ecca25dea637237c384b7cb419de9bceab8a570 SHA512 53c9d2599d87c37d8b6fc8b2293fc16928a97754240e35af770f7e969e4d91ffffe3afbb4e04312de828d1d43ca6c9b734e0725ac5ac9d74f252449ce296ab7b
+DIST cpufeatures-0.2.5.crate 11251 BLAKE2B 2724be40d3bc0e2fda957f645e1cd6472450dee68db3592ab607bdac444283f571f3c904e47981a3fdaa06cab4032734a54470e3dd6e1b67fd856daf010e1277 SHA512 d02327a27ca9fc3c587dcbd10da6b1370671cd7b1df8dfc9078b47180744d0572ef41a7ec205ae9f1c571e5b7f4bc81278ab4c6b076c6ccac0167100e346e74e
+DIST cryptg-0.4.gh.tar.gz 35413 BLAKE2B ae9e0ab79ba2251cb244818a7f0b9109283870499bc384c09185dadcb2a53be902370437a44f0168403705306cda3a1a26923bc8ff63d2c25fc519179607035d SHA512 04d19768ae2a0c6bb1ba1ccd28a7a7a42c9cf1079acbc5b2a828648e3c84bd5af10dcefb424ec9090552a4d95fa891a0aeffb904bb56b47d76d8a7280f7c0124
+DIST crypto-mac-0.11.1.crate 9551 BLAKE2B 81140107f394d969d85b77050447e7d4dbfe7b2df8164293fe9a2cca04c1ed3cd245988482a232103c2ed9d35601ec6332669bd8598d903d305935dfc09af887 SHA512 3090a7a3fdb7d94b2b14841e37733d863f2e4d24d7da3c63df1726612abdd1c1df7179bba4e344eb63a94053e59a93b0988ecd1e2e5a5db0e18a4b602be4aaa9
+DIST digest-0.9.0.crate 13247 BLAKE2B c5f2fa8a5bc12021d99ea63f08fa8c8b5b3353d90cf9d58ba84252b3f81b88b52f28c15c24c61fcee44f7d547a0bad11def7fa8f4616d070db163e48f89ab64b SHA512 8637a322c429f51ecb0fa4c3b58fabef01368c1a093492fad65f48eeeec2366fd1b7876e6e47723e089ec5ce11f881bfe4dcebdc605811252b797db027746a45
+DIST generic-array-0.14.6.crate 15889 BLAKE2B 7beac5446f5da4d077598af43c238eb7e71a12b0b91e6be5dbfc1ca33dc21d128fc93c9c8b18caac4b88830c8c8a643f2033acaca1d9a9f3d95329d042276156 SHA512 254e6fb6658f083f26e022916795c9ebfac241b9df2d811aac8316b17e1375e1c5aa54d72f1bf6c2627a88484a7df4b14eca231c90578e9aa3d9997047fa0f20
+DIST getrandom-0.2.8.crate 30553 BLAKE2B 30211bc6a8ceb5ba765cbf068405cfc08842b2521c5850647971f4cb4bc9a5b0a9195ccfbc1461de019eeb7744ee69f934922ff21677259d7b815800516df4dc SHA512 cd7aea29f79a33a0de2a52a0a82f2b57ea8f27908ccfe00a5f42248766df88b225023603ec56d6fc634ef9c1eb67ad0135c90d4c695f6f659db0767e7fda44c5
+DIST glass_pumpkin-1.3.0.crate 20585 BLAKE2B 00a9e40e7449ada91938dc59b093cc336b76e00a5b2f12dd132a04db59e295fc9e772c39c5b468307753c2b0e0570c518aadb342364494600132b77e5cc5a1d0 SHA512 85065fa57ed129c9360a40dd4b3664432d0ad5c05cbf70c5089e56cf35749fd13a8a547222da3bcdff097f5c3a32adbdf52b470cd8c8e99a55aa785403caf9b2
+DIST grammers-crypto-0.4.0.crate 14832 BLAKE2B 7097c3a01a340b7eb27bec2c6cfa94df13b61bfe659949f7e37d67a391a8aac42ca65d3b91ff671e7b2b6269078b9d06109ae4b081c048fcbe82c82603591602 SHA512 dba37bb1f18240379ef0f27fc2143386dcad70eabc43993eeb5efb93021595ebe0c594c8e80173ae6753779da02b7a52aff613d3d07abd1efd389da7b27172ed
+DIST hmac-0.11.0.crate 11385 BLAKE2B 850527040c0fef278175f35a0c8bf77bc005708539af8ec5a85111f83e9c94a912741a2b24965c026fd75db6c58fc82a46a9c5de9454540400c9f19341561b4c SHA512 82d83071d1cea14603b1f1a85d564c78e28d982025a029779d8d83522fd5c56583303dd3a902d8023b5e9df2ddb5c5d9a5fc88000d41dba45dc026239ec81d0d
+DIST indoc-1.0.7.crate 13716 BLAKE2B fe515fcf534a552feba188aea5d5da0febc123db24485eb887a3431592780fd468f6409167457c68a7ef6368fcad71c14fcd7922bf2de29794a341d7d4cbbf0b SHA512 b60e534953d600bc2de3d6951f9da67ca3ab3c78fdce3e9c5f91e544ca848aef0c22c35a26fe7a39c07bd916a79fdf496269fecfa5491a58e178f37b2965b348
+DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
+DIST libc-0.2.137.crate 606185 BLAKE2B 6724b7ddc2460fef1d0f20efee8726162d904b92987f9de2d3dda06c9cd49124c9fa43a9b39e84d78c03d217ed8ffd30e0dc55a4eb31970413d56fd58ea00adb SHA512 1ef979dc59a7ec4aad7229ec5b40be0ec9a8496c7a2177d325db62f3eab00d72c8d2277d517c0093e0750de12fbb4e45b67133604afeef9153b8e1d4aa0baac4
+DIST lock_api-0.4.9.crate 25685 BLAKE2B 8adf5c3cccebdf6aff6ec977f230cd2a208b0b188ef57deacbbc6019431f0ede1a760b2384ba3cb49c96b8a589dc56c0f46a6359b3e62277e7ae1a1c3f586fa3 SHA512 9215381d9bb6b80d217c73a900db43df043b3e939b5bd7a292a02e9ab911cf0eacd8f883d35bdf72b3a0e78df8f1bc3e843ca4c775294c7a7a03091dc1a74990
+DIST memchr-2.5.0.crate 65812 BLAKE2B 57966413a1f933dcb2d2d4ccb29c247070f65a83299b2a9f5aa83f5a48a5c5f1c4c7c632fa63bd19f9508e9291e7258db2f16e2813a56fd84e0856f70f1e67ab SHA512 444a163b484c233e78c0e2e4d51f01ce2da93d7d29f516a95e4b0866b20bdfd3f34137653abed53eb70387991ee3e2b5937d8d4360a85bbcb50a93005a75defa
+DIST memoffset-0.6.5.crate 7686 BLAKE2B 9a797388702389076c426052c3d54dc62802d5db8bc5c9c83990429f2ffaec4fab4c7dd3f09cd0704d1ea555e87976563bb43408ba54b5e66ce7e406d4604009 SHA512 11bdd9185b99dfee8e659e051b09ee301c7142a372a8117864745a5085c015436d2efbb1478192886f09cbc562529e209d2e3325d94938a64bc75b1d91d2bf3f
+DIST num-bigint-0.4.3.crate 97799 BLAKE2B afe9a08bf20dc974dcea12b5f9dd465e8b399a0cb0a6d0028d08f7f753aa4dfc929710e4dae883e67633d9dda073f995287e5315b1487e8f99f8f23f1f70e581 SHA512 4b38eaa8b51119dbc7cd8a1e177f37ec935ee348b693a93378742e9bfa68fe5f7e5062b7f34638283c23f04d2127451d796d310cd8adb64dc8e865b28708374f
+DIST num-integer-0.1.45.crate 22529 BLAKE2B 4da3e801f71ba8f92c692497e200bfc8d32183c94eaad91260683b09f4697c03175fec7cff5a9ff3782d5db5d514d74f22f7a61a102c0f0d2e67a7a4b4f29222 SHA512 731bdc09c3af7f9d8b171041f2957aa60facef93b06886000d8ba60d410aabbbee358d700bf31b2588b2e077464f290f24a0b712df7bb7f12972675b6c9bd735
+DIST num-traits-0.2.15.crate 49262 BLAKE2B 942ab170b2acce1cb40e6847f766bf810a79edd293d34f3a27864f464c16fe2b99fb13171ba429cc6d584248de879434beaadf1b231a4001b0e8389ed6c1be04 SHA512 5228498af0f15daeac3c9210f3e6e71cfaaeb30beea81dd37f8eb06b9592c8bf3226a47597cd8592ad4c513964a9a40f1ab2c33102ef3dfe3800d22c8d4528e8
+DIST once_cell-1.15.0.crate 31460 BLAKE2B ae4481883865abe6a684d63520fb2e91b64d6ccdd0374464200015640122bd68b8a769309773226c8a31d0119f450ee821a2bd35c346fd86adb4474ea7c28fcf SHA512 934a7c3631e9ca4fa78d9577b6672ca0b2f926a8d6c3be9542b906c5968033446f98f76ae6f368a1a5b92ab9064c31a57d74ab6d2097108029a7ea951541ff7e
+DIST opaque-debug-0.3.0.crate 5767 BLAKE2B fb5d32c876a271b41582563f5d6978d75bc1cba2cc34167f491bc198e6eded45b9dea65effa3aa972ede20978808b37ad1aadb6837f926fa3378ffd382076d41 SHA512 9909b06668a4f97b4d0e916de3e1d0a922a5a0b911a7ce190de786f62ceaccd382cbd0dbe01ab0f15e5472c10848482da2307a6d897928b6b7d5365bc0321cae
+DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
+DIST parking_lot_core-0.9.4.crate 32359 BLAKE2B 98629cee7346434103d0e9776d89d1c875c023c3fe91d47beae2f3029fe8bdcbe7dedadd262012ad9d1a1e624ffbebe6d3a9165623e40077ab9d0fa4b768cea7 SHA512 6dae00356b759ad1dd08c1edbcc3ffcc86ad412af98a5e4cdf4fc622d0feb79bdb3900c4f72e76cce803c667a6d8581b44264980816ebdc85d59ddaa881a2990
+DIST password-hash-0.2.3.crate 24669 BLAKE2B 4d56cde0796fa49b9e4b1bd41cecdeae1d2c1d8d2b85224624832df3eb8237add2658bfe5cc990290717bd25b8f71ea1af93b60088fb1fb148ee84382cca134a SHA512 187ccad02ef0c71615ec547a88d78db7fcebc4dda1c10c430a22f19bce22d980f67d884b923ed26edf13004bcf0c0b2232de6b9ac8da9cf7d6e03539acb8a178
+DIST pbkdf2-0.8.0.crate 12328 BLAKE2B 0ed3109330ba0b7b2cc236d3277a001ecf92ae1ba6cadf64f95a51e2e7568c7baf385bb15c369ee04f381aecf3ce87884e1e553b2e555089ad1826f0f459ac7b SHA512 a36e17e8c09f4bee22784fd357bed80c3895dadecc8bd106722cad12cdcef0aad954c821303f3f4bff4db01d8737bf6343ba6bfe6dd99fed87b7eb6b46f60701
+DIST ppv-lite86-0.2.16.crate 22245 BLAKE2B 03cba61af42dc3a78ab8f6b03d833c028b7ed737e101b1952467a1e19706bdce6c758eca4ec7d575b2f61daa47cb25fa1d74039b2adb0dbf949b66b7aff3f10a SHA512 264b916f7d1bb6f1c0c0d3cc45f40b72b638abc7174416b49241c3663fe500409509ef6c8241a24515a21a20288c2ba508035b6b37972e4ae7ad02ad19118b74
+DIST proc-macro2-1.0.47.crate 41955 BLAKE2B dbfc20b61443225130d08b05deeba56e63e76921e56359c9b0531798b18778d6ddcb56c3372fb6ccc68586a6c1dc725054f0e83f93e8623cb5ff6a7a2ed3dc83 SHA512 60c5d0dcbdee7ddab40664882d3cf5a868f7ea5b49ebab3b4419c3f325582b816625e73e0d1737bbd46bd7d765ece6c81c2ff4be894555d4b255f5cb9255e931
+DIST pyo3-0.17.2.crate 405417 BLAKE2B d59b138de6af6eeaf41043a8a07c3a3763f2338b13716c9259d9dd821cd01d299a95b50946c93e222563fe202e2e7a2958114de47955d9d96872b98a452d226b SHA512 5b33a75c968460c538b49fb687900e313626d8e2228b36f31fc9d5838eedf6628a4124cead1037cdf6a07978ff39f98e3ec110d8ccbbb409fd6eb9339cba5245
+DIST pyo3-build-config-0.17.2.crate 29231 BLAKE2B f9f82117c3107767ddca53e0aba1c5c751ef807fcb7712c79b39d6d5248de7087a2ae9178e05ae206bf7f831d906965f75cdab4d677fbcc659a4152ce7de28c1 SHA512 d547f5e260ee513797afc7284788aed8207f3d460f1b86b6784bfb5eef0b703c3081363f0d4826afc87d3df5277827ce5174391b2224bf59793e4c554c474798
+DIST pyo3-ffi-0.17.2.crate 62850 BLAKE2B fdfc6d4d3f745307eecc7e7380d5320a956c07f2339c32e087472348cf3c4ad377cad957c36aa4ad8bd87a9aea509001d5b12573d64a5181fcc9b64fea19fb25 SHA512 e3b2aa5796c40ac43e101b14c0e1fecd0308e88b204543f74596ae999f586ad4b8fb55c24ef07a505badd9bba151a8af6b0b910cac62f561f6a1d47b3b38b981
+DIST pyo3-macros-0.17.2.crate 7260 BLAKE2B 22460513594774dc487ad70d7ef15f6837c10a5b8b324bc9dc233266dc49e7bd2fc1710d116fd4613b71294267ae2c2994660345cc838166b985da53eb55d259 SHA512 2f13df0639283f80af89f461f1cc8109ef8fe8dcb09349cbc57913e72e1063a35b30ad8f8cc11f1e089b6c19415b1f55dcc6b695c091e6a9a93f6d45143bb7b5
+DIST pyo3-macros-backend-0.17.2.crate 49990 BLAKE2B aaccd4e2d616e153ef2e8f31fa838e133883d032d002f744327faffea4c03925570aefb2a1e070e2e539c178949d6f891e163a3cb5816f78a1451bb236dde577 SHA512 a465fbf7abcfa123af333c7184c86e6956719748314302381c24dc3c26e8a5ea0523d0a23783be55fa5f84103ab2f6ef63bb8953fa5f6c1f793261a89a23ebd0
+DIST quote-1.0.21.crate 28030 BLAKE2B 547344ba9272874f5fbb4bd27a69ef5be99823e10e1318afe71971b18f37e9c73d54168f16efb82c53a332e4874c80a82ea951fb2c85fad50cdfe783622b79fc SHA512 0728eb4df7e1f7c4d32ab08c901c2c969db8eb46b03bcec3e4956a4f6b360939d32abc6b6ebd7a31058e8e9b69c3d995a24cb484f93656f05b4ee963be1c74fc
+DIST rand-0.8.5.crate 87113 BLAKE2B 516f26bb2a969d0d79e957818133f35d2c0b4d9f1b401098ea23c5b80d27599e842b9298c0c5e46e2a6cb6953857bf8a9fb71ec9366c5ce6708cf17df14f179c SHA512 8b33a8988906ba5e2057a9a84bdd11f867a5536c22f5056eec59ed4ec4e3a6da2fd773da4c0510d343762e5a4ea0f007db4c4a7cef87a47f90e36c1a84d86fb2
+DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3 SHA512 8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075
+DIST rand_core-0.6.4.crate 22666 BLAKE2B 8b6b66d50aade877f2779c006f8038db450f808c66d73d79efa66c4178dc03db06f12201bf0e7930181c4b0f4030c49b20cce6eb7839763cf2217cad9710789a SHA512 36c67eb845aa2ccca49d6d680f28d418229bbc5a050729e487fe6b9f9f384fdd7b8d67fc6508b90b79ffb3c26688e72feceb3ecae57d3d7f59338aeb62296f79
+DIST redox_syscall-0.2.16.crate 24012 BLAKE2B 9497a52044458b1435ea16e86ee072e379b6b11ee31602ea72d6b6072a4a99426f409c2e58108a4e9c36dc193fa49c83951e71f4fd4e158eafff18c594dc01ad SHA512 63b5d876baaf99f5cf737679bc6ac7a9e3d8a41aa93f5c59416ce7e3841e2513bff678773553cfe62fb452707f82acc384ea63aec932a31bf94679cd1caddd27
+DIST scopeguard-1.1.0.crate 11470 BLAKE2B f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe SHA512 368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
+DIST sha1-0.6.1.crate 2931 BLAKE2B 84e0a0472edb73fa732240d75bb6c80ccf1467ec2e70ea89e9eb7c30ae89e778c59ee3aaa1a19a07d4e40d6a87e41d943d32661834cfb988b1cb329063445226 SHA512 8eeb9a5d2c202a181390e25c743da6f8e4f451c1d7d51a3fad0dfd5ba285dd0c7eb851b26eb197a550eabb3aa357f0ebb6f84f588ea2d36cc3c70e62e871812b
+DIST sha1_smol-1.0.0.crate 9782 BLAKE2B 214b58f6a8681399b9c925815f4ff48974466b399e96e372c9592cb139ba9306ba162b3b426dc12b585ea15b616fb58a60d253b4d928dde46217de6ddf7d0437 SHA512 75d6809a2aafd47cd5f5888f42283985895a9c82b53ead7529a23cd6f2484f32654094dda7a9e5d93e82afc9d0049938def1bdc28803502d140d06a3496adea7
+DIST sha2-0.9.9.crate 22247 BLAKE2B 4ac2c92325ad92881f41e777010516870fd001617c2dc1d20495318219167e2622309831ecb9509d7a4b87f936c9e5b2d335bfc1842876a8b2aecedada367421 SHA512 bc267467089ed546edc1caaa7a00f3f769fd1d5deeb655c1968985d284bd32e4fcee4e721cf89c30e8c3cadd2f88ac557b91f90183cab112702c587f753e5877
+DIST smallvec-1.10.0.crate 31564 BLAKE2B e3e46a0781d3a7892a739b001592d462d0704f010363984c439e3fe4f75aecb9720648aa1e9bcc56bb3be848dd40cee578212439f78f07a807c9441c3c3e0147 SHA512 a09110184582dcc01d7a0d3fa8f74c17bf726935126d3654667b8e9c4bc43ad16ccfd8fa94feae7d9b31913aa7ee030fe5936e4b44a36302b6ce5fe37372a7ae
+DIST subtle-2.4.1.crate 12630 BLAKE2B 05a90232bfdc2cf67522e2972bddcd8dc9a165b1d1cf775d0b1c8358fc7c4d0559b2b899126b6688b8ef77b8b7580b3b300f74a599a7ee77f99c064a3917693b SHA512 7fd8234b7ffa3ca7e473539cad958df0842186e1dd735905e0d4977564f40a5f2e18b58180fcbe52614a00964dc150bd9f6964500847ea658f22bffe030f5c6a
+DIST syn-1.0.103.crate 236495 BLAKE2B fd139b1a8b4449e9be6eddf0036c19b93b876182a03f36954f79eaf79abd5e53667a8a9fcb5c872c96639779307fa293f597831ff838a41d90e1ea201f8a4797 SHA512 3dc0f564ac1a4ce85060926c0897158da0baa127a46bb318506f4fdc79e53d9439295e8ed6a2d5ffcf15d9f6651081b7602cc2a091538e8df061b545f7e3bfe7
+DIST target-lexicon-0.12.4.crate 23020 BLAKE2B ad9780b9478b00b4fdcb07bd016d83216695413090ac29cca06388c3790e2832c978b1c7e69f6d34bb6fc9adc39c0a0b6b6636e50a9715a9f5f16445dba22d19 SHA512 194fe1946ad8d9fdb383bf8a65374e24d216382c1ed5379dabc98d58842512624c32838b8d6d0658d866f6559d37f1343a30c5809e8914dd85790399252b3e06
+DIST typenum-1.15.0.crate 40741 BLAKE2B 5752d80396d0a37b0069b98ace9efe96d94ccaf41b33b8149c8b8c6a767537dbffe64251bbf61f3812465ecbc8cb45544f177dc97ac9735d84454282e4d1ed66 SHA512 a3c1ceac85e1aed98d0829449c35f4f36db860218b955b4e5f8f01da1d27ee6213f3c60e2b25c3745dcd67369049da5de737a9473fa9402db99cf7cddeb42288
+DIST unicode-ident-1.0.5.crate 35455 BLAKE2B 7e14ce97ac53a88ccec015dea690918a673dc5b49e44de7fdcb5421871da35c4f514c6db9a363d6f4bfcf2e9a61a50a593d345d0b6f388ea882b17a00cd0335d SHA512 d355370daac356d900cd4c0a792d6c0eff114524c4bffce4d7e74469fe2117883ee00bf0e27d950b72e88739473f2045d5f83440a0aedfede97b4d9163b64a6c
+DIST unindent-0.1.10.crate 7703 BLAKE2B 75458d7f21ded1eca4bb3f7f55b2fa73bf92b2309316eca1b2ffaa0c9f8d7cd8c7851b96688f6597f4af6973f70e9053c2708c1228fa6a9784e41c778488c4b7 SHA512 46ff1a2c042972af2fe5958677b2fa5adf3b9edbb168bd66cc93baf9d1b128f583d9502b83f174b35866343b57a57c8a91a465eab267dddae919af24095bf6bd
+DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
+DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
+DIST windows-sys-0.42.0.crate 3006791 BLAKE2B 7a0962364ecc416cf0ae7e49cce1298a12d819003e488f6e77aff1a52710f00378638b6a05db5557a031e1b75659587657971ddc63eaab35495133762f99a7b2 SHA512 b07b119688f3e3ad234d36979947f34e8e19988fb62101afbe18ec8afc9c8a4261128939df8bbb849d5c5982422cb4c50dbcba70f2bf401fbb7c605df1b2b354
+DIST windows_aarch64_gnullvm-0.42.0.crate 357917 BLAKE2B 58da715a46692ed786fa554338d446eaaa50c63ec1d4090cf0690a9211c0221034479e9066cad1c98234410519833826ae3163bf6724c3b06097d5b84d7b9fcf SHA512 8bd60142e8982ddb14dde4e93b9753f9ac34830c05c2a1dd4568377f9a928651bf9f026a0080e5bc7dfa62a45942376736954e3ac800855d00eef0c72929f338
+DIST windows_aarch64_msvc-0.42.0.crate 659424 BLAKE2B a8c9a288767756f2086bd0706774cdcce5c8639431ad76ed122d4b6d13c936ca8fb1a463d34835b3a2728f4444e2f4b91ee772f00c54f348094da69c05ce6b93 SHA512 20c0840adec84dde03b143e5b82bb0003fee675310487f0071a81ed7f40ee647c4018ccb9ebdbc4aeada717ec8600a30dfb15510c6b336f07becdb7167668fd0
+DIST windows_i686_gnu-0.42.0.crate 728570 BLAKE2B b72079610b5c4fc798a79fa757b19f8c8baceaf7f4ce824193a65fadaac988ebdff1719a74d676b7dd017e11ceb029402bbac4e55c35206172e15a9bef422f78 SHA512 a24dd1ba5eb7d5231853bebadfde0575ae9071a565868d2f3d1bc6ec0a87380c569a621f0cba2552af7a1e46ac62f09f87cfbce3f674be06be1a7c1d3f421474
+DIST windows_i686_msvc-0.42.0.crate 717477 BLAKE2B a37e068f45590f0c31349acbdb56848106d6de0e1f8030e6bd5e1e174bd9a46737db54fbd61de99054e5e8c5263eaef0508c440f43c39dca82baa77792ff2743 SHA512 740400e2b11c1d177f7f37f844cd2a0f84b97a5adb03a7656661deb026b593a799ace8da1f9013ba9f74446fc43260d01dff7d4be607129ec7d602f341b2b4d1
+DIST windows_x86_64_gnu-0.42.0.crate 692493 BLAKE2B e00eae443cfed3004809244654268ee1bec17975166ca876dd393dcfe8a2ef0ca65d81b04c8f513f95a0fae9405ba796c085951bc2c597d252a3122f7dbf6425 SHA512 7df7ee0c345f0a2c37d7f9ec3a2824116b4d7a943bf245787509e67809a4f31ebb1862e212efb2d943d82ccef77a716437cdc61004396ca86e95e688368c6dae
+DIST windows_x86_64_gnullvm-0.42.0.crate 357906 BLAKE2B 02e08e696f18105f0c131fcf5db046ec945cb21ede76d2da477589e15d062ca6f04906dac80fdd2ef9fcda9244490aad86b401d0156eb6b65ba3599098e8cfe7 SHA512 242e11b4a0d50a0ffe8d0e26e971de30ef4d29260ae6749403d39cb4278297a240c1ec4112bb38151cbb11a6f3c8a743e84cd75b6a76adfeaee8e623649c9ecf
+DIST windows_x86_64_msvc-0.42.0.crate 659377 BLAKE2B f01dbfcb86dcb7301790a1a704661864378021cbb92b147fdfcee978b7011bb770441c481b439985c298816c524c6a11f21a7bd81115e65882fa000a28566bcd SHA512 94d6554ae293785d2fc9dc9d53480c98bc08ab2b78bd8684a0606e7e0ec156a454c1a653d214c21de382bc7ab5d898e45000ed73e6110f679da513ffabbf3cb9
diff --git a/dev-python/cryptg/cryptg-0.4.ebuild b/dev-python/cryptg/cryptg-0.4.ebuild
new file mode 100644
index 000000000..dfc0709cb
--- /dev/null
+++ b/dev-python/cryptg/cryptg-0.4.ebuild
@@ -0,0 +1,91 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ aes@0.7.5
+ autocfg@1.1.0
+ base64ct@1.5.3
+ bitflags@1.3.2
+ block-buffer@0.9.0
+ cfg-if@1.0.0
+ cipher@0.3.0
+ core2@0.4.0
+ cpufeatures@0.2.5
+ crypto-mac@0.11.1
+ digest@0.9.0
+ generic-array@0.14.6
+ getrandom@0.2.8
+ glass_pumpkin@1.3.0
+ grammers-crypto@0.4.0
+ hmac@0.11.0
+ indoc@1.0.7
+ lazy_static@1.4.0
+ libc@0.2.137
+ lock_api@0.4.9
+ memchr@2.5.0
+ memoffset@0.6.5
+ num-bigint@0.4.3
+ num-integer@0.1.45
+ num-traits@0.2.15
+ once_cell@1.15.0
+ opaque-debug@0.3.0
+ parking_lot@0.12.1
+ parking_lot_core@0.9.4
+ password-hash@0.2.3
+ pbkdf2@0.8.0
+ ppv-lite86@0.2.16
+ proc-macro2@1.0.47
+ pyo3@0.17.2
+ pyo3-build-config@0.17.2
+ pyo3-ffi@0.17.2
+ pyo3-macros@0.17.2
+ pyo3-macros-backend@0.17.2
+ quote@1.0.21
+ rand@0.8.5
+ rand_chacha@0.3.1
+ rand_core@0.6.4
+ redox_syscall@0.2.16
+ scopeguard@1.1.0
+ sha1@0.6.1
+ sha1_smol@1.0.0
+ sha2@0.9.9
+ smallvec@1.10.0
+ subtle@2.4.1
+ syn@1.0.103
+ target-lexicon@0.12.4
+ typenum@1.15.0
+ unicode-ident@1.0.5
+ unindent@0.1.10
+ version_check@0.9.4
+ wasi@0.11.0+wasi-snapshot-preview1
+ windows-sys@0.42.0
+ windows_aarch64_gnullvm@0.42.0
+ windows_aarch64_msvc@0.42.0
+ windows_i686_gnu@0.42.0
+ windows_i686_msvc@0.42.0
+ windows_x86_64_gnu@0.42.0
+ windows_x86_64_gnullvm@0.42.0
+ windows_x86_64_msvc@0.42.0
+"
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit cargo distutils-r1
+
+DESCRIPTION="Hachoir is a Python library to view and edit a binary stream field by field "
+HOMEPAGE="https://github.com/cher-nov/cryptg/"
+SRC_URI="https://github.com/cher-nov/cryptg/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD CC0-1.0 MIT Unicode-DFS-2016 Unlicense"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="dev-python/setuptools-rust"
+
+# rust does not use *FLAGS from make.conf, silence portage warning
+# update with proper path to binaries this crate installs, omit leading /
+QA_FLAGS_IGNORED="usr/lib/python3\..*/site-packages/cryptg/cryptg.cpython-.*.so"
diff --git a/dev-python/cryptg/metadata.xml b/dev-python/cryptg/metadata.xml
new file mode 100644
index 000000000..d5d61f32d
--- /dev/null
+++ b/dev-python/cryptg/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Julien Roy</name>
+ <email>julien@jroy.ca</email>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <name>Dmitry D. Chernov</name>
+ <email>blackdoomer@yandex.ru</email>
+ </maintainer>
+ <changelog>https://github.com/cher-nov/cryptg/releases</changelog>
+ <bugs-to>https://github.com/cher-nov/cryptg/issues</bugs-to>
+ <remote-id type="github">cher-nov/cryptg</remote-id>
+ <remote-id type="pypi">cryptg</remote-id>
+ <maintainer>
+ <name>Lonami Exo</name>
+ <email>totufals@hotmail.com</email>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/cu2qu/Manifest b/dev-python/cu2qu/Manifest
deleted file mode 100644
index 49964751a..000000000
--- a/dev-python/cu2qu/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST cu2qu-1.6.7.zip 215819 BLAKE2B 328df385c459f82805eaa9483ccf49ab1faae2f4a878381d2a7fd1e2be01d15f55eb5f2afabc1a0487d3bed4ae407cc2042989bc820620bd1ac0b33f95d441bc SHA512 929d353cf8ef6f989cd373c49ba77082cfdd35edce6aafa1c13d983782562a16245d75d086d3a7e28dd217bda6c19d50966a4fb1ce50d5a0397eb1304816a28f
diff --git a/dev-python/cu2qu/cu2qu-1.6.7.ebuild b/dev-python/cu2qu/cu2qu-1.6.7.ebuild
deleted file mode 100644
index 05b7427a8..000000000
--- a/dev-python/cu2qu/cu2qu-1.6.7.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{8..9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Cubic-to-quadratic bezier curve conversion"
-HOMEPAGE="https://github.com/googlefonts/cu2qu"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.zip"
-
-LICENSE="Apache-2.0"
-KEYWORDS="~amd64"
-SLOT="0"
-
-RDEPEND="
- >=dev-python/fonttools-3.32[${PYTHON_USEDEP}]
- >=dev-python/defcon-0.6.0[${PYTHON_USEDEP}]
-"
-DEPEND="
- ${RDEPEND}
-"
-BDEPEND="
- app-arch/unzip
- dev-python/cython[${PYTHON_USEDEP}]
- dev-python/fs[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/cu2qu/metadata.xml b/dev-python/cu2qu/metadata.xml
deleted file mode 100644
index 9c9d667bb..000000000
--- a/dev-python/cu2qu/metadata.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <remote-id type="github">googlefonts/cu2qu</remote-id>
- <remote-id type="pypi">cu2qu</remote-id>
- </upstream>
- <longdescription lang="en">
-This library provides functions which take in UFO objects (Defcon Fonts or Robofab RFonts) and converts any cubic curves to quadratic. The most useful function is probably fonts_to_quadratic:
-
-from defcon import Font
-from cu2qu.ufo import fonts_to_quadratic
-thin_font = Font('MyFont-Thin.ufo')
-bold_font = Font('MyFont-Bold.ufo')
-fonts_to_quadratic([thin_font, bold_font])
-
-Interpolation compatibility is guaranteed during conversion. If it's not needed, converting one font at a time may yield more optimized results:
-
-for font in [thin_font, bold_font]:
- fonts_to_quadratic([font])
-
-Some fonts may need a different error threshold than the default (0.001 em). This can also be provided by the caller:
-
-fonts_to_quadratic([thin_font, bold_font], max_err_em=0.005)
-
-for font in [thin_font, bold_font]:
- fonts_to_quadratic([font], max_err_em=0.001)
-
-fonts_to_quadratic can print a string reporting the number of curves of each length. For example fonts_to_quadratic([font], dump_stats=True) may print something like:
-
-3: 1000
-4: 2000
-5: 100
-
-meaning that the font now contains 1000 curves with three points, 2000 with four points, and 100 with five. Given multiple fonts, the function will report the total counts across all fonts. You can also accumulate statistics between calls by providing your own report dictionary:
-
-stats = {}
-for font in [thin_font, bold_font]:
- fonts_to_quadratic([font], stats=stats)
-# "stats" will report combined statistics for both fonts
-
-The library also provides a command-line script also named cu2qu. Check its --help to see all the options. </longdescription>
-</pkgmetadata>
diff --git a/dev-python/curio/Manifest b/dev-python/curio/Manifest
deleted file mode 100644
index 7edce9f79..000000000
--- a/dev-python/curio/Manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-DIST curio-0.9.tar.gz 482459 BLAKE2B 7ef65d22806eb10ee3e757dc0d63a202c13036cdb1995962e193332c50dd73585ab27449614de5995f874c03d8623ea27f967101aa99b15166d19a48f4cdaaea SHA512 a6ae4db76358536e6e299ecfa923fd63746cba4bc5374fbfdeb4127032552c960d1e199fdf17d95b039ca2bd000325c637f663007cd6850313bc00bc9a2a3d68
-DIST curio-1.4.tar.gz 230144 BLAKE2B befe36251e6e9ef39cc220d383d9195e7ed4126aafe64403598b857551fe54ef6fff293e9ddb802dc155c9c6264d9f7b86e7393786b7bd1da4ca8882716a5d77 SHA512 105fe0d3edea0310b98bb93e74ca750516d9f33e4f8c3866be3e92a582485baf885fd58b007fb33c3e24b4a8e73b532f20899ed106c4a6ac23f97b444c4b3ffc
-DIST curio-1.5.tar.gz 234920 BLAKE2B 26e3c0de872d77478f433990f88f9ac35f9615621aadfcc7b8d766488ffe390fd4698854640792bda4e649fc0d1224fa7cb5bf89777268fee4349500a5365547 SHA512 8c78d866b949da862ddb29d6a8db6881d00dedb33637529d02d4e3010de0e1ecd15e74f52c011828738ac7d54e5f04425c8ffb43abaf1e77c21d28d874ff711b
diff --git a/dev-python/curio/curio-0.9.ebuild b/dev-python/curio/curio-0.9.ebuild
deleted file mode 100644
index 70c52091c..000000000
--- a/dev-python/curio/curio-0.9.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Curio is a coroutine-based library for concurrent systems programming"
-HOMEPAGE="
- https://github.com/dabeaz/curio
- https://pypi.org/project/curio
-"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-IUSE="examples"
-
-LICENSE="BSD"
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-
-DEPEND="test? ( dev-python/sphinx[${PYTHON_USEDEP}] )"
-
-distutils_enable_sphinx docs --no-autodoc
-distutils_enable_tests pytest
-
-python_prepare_all() {
- # Contains hard coded path, fails in emerge
- rm -r tests/__pycache__ || die
-
- distutils-r1_python_prepare_all
-}
-
-python_install_all() {
- use examples && dodoc -r examples
-
- distutils-r1_python_install_all
-}
diff --git a/dev-python/curio/curio-1.4-r1.ebuild b/dev-python/curio/curio-1.4-r1.ebuild
deleted file mode 100644
index ff39a7025..000000000
--- a/dev-python/curio/curio-1.4-r1.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Curio is a coroutine-based library for concurrent systems programming"
-HOMEPAGE="
- https://github.com/dabeaz/curio
- https://pypi.org/project/curio
-"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-IUSE="examples"
-
-LICENSE="BSD"
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-
-DEPEND="test? ( dev-python/sphinx[${PYTHON_USEDEP}] )"
-
-distutils_enable_sphinx docs --no-autodoc
-distutils_enable_tests pytest
-
-python_prepare_all() {
- # requires internet connection
- sed -i -e 's:test_ssl_outgoing:_&:' \
- tests/test_network.py || die
-
- # AttributeError: module 'asyncio' has no attribute 'run'
- sed -i -e 's:test_uqueue_asyncio_consumer:_&:' \
- tests/test_queue.py || die
- sed -i -e 's:test_uevent_get_asyncio_set:_&:' \
- -e 's:test_uevent_get_asyncio_wait:_&:' \
- -e 's:test_universal_error:_&:' \
- -e 's:test_universal_value:_&:' \
- tests/test_sync.py || die
-
- distutils-r1_python_prepare_all
-}
-
-python_install_all() {
- use examples && dodoc -r examples
-
- distutils-r1_python_install_all
-}
diff --git a/dev-python/curio/curio-1.5.ebuild b/dev-python/curio/curio-1.5.ebuild
deleted file mode 100644
index 47c09e071..000000000
--- a/dev-python/curio/curio-1.5.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Curio is a coroutine-based library for concurrent systems programming"
-HOMEPAGE="
- https://github.com/dabeaz/curio
- https://pypi.org/project/curio
-"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-IUSE="examples"
-
-LICENSE="BSD"
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-
-DEPEND="test? ( dev-python/sphinx[${PYTHON_USEDEP}] )"
-
-distutils_enable_sphinx docs --no-autodoc
-distutils_enable_tests pytest
-
-python_prepare_all() {
- # requires internet connection
- sed -i -e 's:test_ssl_outgoing:_&:' \
- tests/test_network.py || die
-
- # AttributeError: module 'asyncio' has no attribute 'run'
- sed -i -e 's:test_uqueue_asyncio_consumer:_&:' \
- tests/test_queue.py || die
- sed -i -e 's:test_uevent_get_asyncio_set:_&:' \
- -e 's:test_uevent_get_asyncio_wait:_&:' \
- -e 's:test_universal_error:_&:' \
- -e 's:test_universal_value:_&:' \
- tests/test_sync.py || die
-
- distutils-r1_python_prepare_all
-}
-
-python_install_all() {
- use examples && dodoc -r examples
-
- distutils-r1_python_install_all
-}
diff --git a/dev-python/curio/metadata.xml b/dev-python/curio/metadata.xml
deleted file mode 100644
index 6a58b1a32..000000000
--- a/dev-python/curio/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <!-- maintainer-needed -->
- <longdescription lang="en">
-Curio is a coroutine-based library for concurrent Python systems programming. It provides standard programming abstractions such as as tasks, sockets, files, locks, and queues. It works on Unix and Windows. You'll find it to be familiar, small, fast, and fun
-Core Features
-
-Curio supports standard synchronization primitives (events, locks, recursive locks, semaphores, and condition variables), queues, subprocesses, as well as running tasks in threads and processes. The task model fully supports cancellation, task groups, timeouts, monitoring, and other features critical to writing reliable code.
- </longdescription>
- <upstream>
- <remote-id type="github">dabeaz/curio</remote-id>
- <remote-id type="pypi">curio</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/cursive/Manifest b/dev-python/cursive/Manifest
deleted file mode 100644
index 5a40d9f6a..000000000
--- a/dev-python/cursive/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST cursive-0.2.2.tar.gz 43065 BLAKE2B 2c007b357c3cd1d560f74958b78d157c97301b8c2e15ed50ff340950eb4abb8baac078865bd82a3222a22505862a78a651905c843b6b0ba4662d653dfdd5f369 SHA512 6c97f8f71b016ee57349b8156543c8ca41c29c3f234ea60967b96c09fce2cea4b36b9f92996c622bd9504d4a71893903e8d5a8ab50e089fd37bddb8095f4b9d2
diff --git a/dev-python/cursive/cursive-0.2.2-r1.ebuild b/dev-python/cursive/cursive-0.2.2-r1.ebuild
deleted file mode 100644
index 737826a40..000000000
--- a/dev-python/cursive/cursive-0.2.2-r1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Cursive implements OpenStack-specific validation of digital signatures."
-HOMEPAGE="https://github.com/openstack/cursive"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-DEPEND=">=dev-python/pbr-1.8[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/pbr-1.8[${PYTHON_USEDEP}]
- >=dev-python/cryptography-1.1.0[${PYTHON_USEDEP}]
- >=dev-python/cryptography-1.3.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.16.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-1.14.0[${PYTHON_USEDEP}]
- >=dev-python/castellan-0.4.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/cursive/metadata.xml b/dev-python/cursive/metadata.xml
deleted file mode 100644
index 55ddf047c..000000000
--- a/dev-python/cursive/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">cursive</remote-id>
- <remote-id type="github">openstack/cursive</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/cx-oracle/Manifest b/dev-python/cx-oracle/Manifest
deleted file mode 100644
index 6c7e35094..000000000
--- a/dev-python/cx-oracle/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST cx_Oracle-8.2.1.tar.gz 359269 BLAKE2B ad972b6607a7e77794b5642bce49f494715e32e989fd7c12c3a64ea556e6967bda02f0d937e42e1dd2dae931f75c33e63fa8c13a9dcd439e85b751720773c3d1 SHA512 879f25323ea037499c773be860d7c9a4f9bc675f7107a79a1ac027db45f6a4d71b47579b656fba267b85dacb76316f012de238ffda66ea33395ce5989b982116
diff --git a/dev-python/cx-oracle/cx-oracle-8.2.1.ebuild b/dev-python/cx-oracle/cx-oracle-8.2.1.ebuild
deleted file mode 100644
index 216938ef4..000000000
--- a/dev-python/cx-oracle/cx-oracle-8.2.1.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="8"
-
-PYTHON_COMPAT=( python3_{8,9} )
-
-inherit distutils-r1
-
-MY_PN="cx_Oracle"
-MY_P=${MY_PN}-${PV}
-
-DESCRIPTION="Python interface to Oracle"
-HOMEPAGE="
- https://oracle.github.io/python-cx_Oracle/
- https://pypi.org/project/cx-Oracle/
-"
-SRC_URI="mirror://pypi/${PN:0:1}/${MY_PN}/${MY_PN}-${PV}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-
-IUSE="examples"
-
-# Tests require local instance of Oracle DB
-RESTRICT="test"
-
-DEPEND="dev-db/oracle-instantclient"
-RDEPEND="${DEPEND}"
-
-S=${WORKDIR}/${MY_P}
-
-python_prepare_all() {
- # do not install LICENSE and README to /usr/
- sed -i -e '/data_files/d' setup.py || die
-
- distutils-r1_python_prepare_all
-}
-
-pkg_postinst() {
- return
- # no python_mod_optimize
-}
-
-src_install() {
- distutils-r1_src_install
- if use examples; then
- docinto examples
- dodoc -r samples/. || die
- fi
-}
diff --git a/dev-python/cx-oracle/metadata.xml b/dev-python/cx-oracle/metadata.xml
deleted file mode 100644
index 4f0a4f1df..000000000
--- a/dev-python/cx-oracle/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
-<pkgmetadata>
- <upstream>
- <doc>https://cx-oracle.readthedocs.io</doc>
- <changelog>https://cx-oracle.readthedocs.io/en/latest/release_notes.html#releasenotes</changelog>
- <bugs-to>https://github.com/oracle/python-cx_Oracle/issues</bugs-to>
- <remote-id type="github">oracle/python-cx_Oracle</remote-id>
- </upstream>
- <maintainer type="person">
- <email>rozstrojenie.jazni@gmail.com</email>
- <name>Michał Gasewicz</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/dacite/Manifest b/dev-python/dacite/Manifest
index 69fce113a..8064d7f88 100644
--- a/dev-python/dacite/Manifest
+++ b/dev-python/dacite/Manifest
@@ -1 +1 @@
-DIST dacite-1.6.0.tar.gz 22102 BLAKE2B 79bfa563feb1bd0fdf3541dbafc3ec15b370808e90625e7a7656a4155ba856324644a59b146307df19aca9a0aa68898478111757e37de065f2538932ceaa236f SHA512 034255f095589d309fe5805413d8b148f430cd20a0de305b7954083b530d516da1d8f3f00ebb5264a8cfb77f2b2a76f1e2d863e78bd191f1d85021c5553815da
+DIST dacite-1.8.1.tar.gz 26038 BLAKE2B 53b859953221dd01a98976fcb1a8242bb99186c9fa4da04814eaad9232232a27da37fb8d80a91a3e875b1071c809c7f928b2eb0c165f5c4acef3ec9d4c64a94e SHA512 4b40c0bdcf5490bcc77de9e7f04b7267642bcfd41e4168607a5457f38abe3ad4b3041d8a23cb43af76de14eabee45f900ad5ddf7af8f70a2be4850bccc2d3af1
diff --git a/dev-python/dacite/dacite-1.6.0.ebuild b/dev-python/dacite/dacite-1.8.1.ebuild
index 2b59016e9..b0615e706 100644
--- a/dev-python/dacite/dacite-1.6.0.ebuild
+++ b/dev-python/dacite/dacite-1.8.1.ebuild
@@ -1,9 +1,10 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
inherit distutils-r1
@@ -11,8 +12,12 @@ DESCRIPTION="This module simplifies creation of data classes (PEP 557) from dict
HOMEPAGE="https://github.com/konradhalas/dacite"
SRC_URI="https://github.com/konradhalas/dacite/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-SLOT="0"
LICENSE="GPL-2"
-KEYWORDS="~amd64 ~x86"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ test? ( dev-python/pytest-benchmark )
+"
distutils_enable_tests pytest
diff --git a/dev-python/dacite/metadata.xml b/dev-python/dacite/metadata.xml
index 55b9e5038..d3a4f230f 100644
--- a/dev-python/dacite/metadata.xml
+++ b/dev-python/dacite/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>andrea.postiglione@gmail.com</email>
<name>Andrea Postiglione</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">konradhalas/dacite</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/daff/daff-1.3.46.ebuild b/dev-python/daff/daff-1.3.46.ebuild
index edb347feb..f6bbcf106 100644
--- a/dev-python/daff/daff-1.3.46.ebuild
+++ b/dev-python/daff/daff-1.3.46.ebuild
@@ -1,21 +1,15 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-PYTHON_REQ_USE="sqlite"
-inherit distutils-r1
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
-DESCRIPTION="Diff and patch tables"
+DESCRIPTION="The daff can produce and apply tabular diffs"
HOMEPAGE="https://github.com/paulfitz/daff"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~ia64 ~riscv ~sparc ~x86"
-
-python_test() {
- "${EPYTHON}" test/test_example.py || die
- "${EPYTHON}" test/test_sqlite.py || die
-}
+KEYWORDS="~amd64 ~arm64 ~ia64 ~riscv ~sparc ~x86"
diff --git a/dev-python/daff/metadata.xml b/dev-python/daff/metadata.xml
index 3e2e0fe7f..6703e6e3e 100644
--- a/dev-python/daff/metadata.xml
+++ b/dev-python/daff/metadata.xml
@@ -1,5 +1,5 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>vowstar@gmail.com</email>
@@ -8,6 +8,11 @@
<upstream>
<remote-id type="pypi">daff</remote-id>
<remote-id type="github">paulfitz/daff</remote-id>
+ <maintainer>
+ <name>Paul Fitzpatrick</name>
+ <email>paul@robotrebuilt.com</email>
+ </maintainer>
+ <bugs-to>https://github.com/paulfitz/daff/issues</bugs-to>
</upstream>
<longdescription lang="en">
daff: data diff. daff can produce and apply tabular diffs.
diff --git a/dev-python/daiquiri/Manifest b/dev-python/daiquiri/Manifest
new file mode 100644
index 000000000..bc3a90ff6
--- /dev/null
+++ b/dev-python/daiquiri/Manifest
@@ -0,0 +1 @@
+DIST daiquiri-3.2.3.tar.gz 19582 BLAKE2B 105ba4b80a405bcf0d64fcde585ab0cad4ab939d7d7048dba87f8f022d5bcf8e1708554459dba550765e2110e8987a4e26992d5c53db46b320a942b467d9b44e SHA512 a801e04f67340ed047322bdc65be97a463d268f26dd44615d7a4f17ca3de7c36bb244f6bd54e33c1c2055667f0b4086d98bcbf6778bc4eb99c08a657d6abd7b6
diff --git a/dev-python/daiquiri/daiquiri-3.2.3.ebuild b/dev-python/daiquiri/daiquiri-3.2.3.ebuild
new file mode 100644
index 000000000..c2df3bdf6
--- /dev/null
+++ b/dev-python/daiquiri/daiquiri-3.2.3.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="Library to configure Python logging easily"
+HOMEPAGE="
+ https://pypi.org/project/daiquiri/
+ https://github.com/Mergifyio/daiquiri
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/python-json-logger[${PYTHON_USEDEP}]"
+BDEPEND="dev-python/setuptools-scm[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx doc/source
+
+pkg_postinst() {
+ optfeature "journald support" dev-python/python-systemd
+}
diff --git a/dev-python/daiquiri/metadata.xml b/dev-python/daiquiri/metadata.xml
new file mode 100644
index 000000000..7251a0c50
--- /dev/null
+++ b/dev-python/daiquiri/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <longdescription lang="en">
+The daiquiri library provides an easy way to configure logging. It also provides some custom formatters and handlers.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">jd/daiquiri</remote-id>
+ <remote-id type="pypi">daiquiri</remote-id>
+ <maintainer>
+ <name>Julien Danjou</name>
+ <email>julien@danjou.info</email>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/darkdetect/Manifest b/dev-python/darkdetect/Manifest
new file mode 100644
index 000000000..438880c98
--- /dev/null
+++ b/dev-python/darkdetect/Manifest
@@ -0,0 +1 @@
+DIST darkdetect-0.8.0.tar.gz 7681 BLAKE2B 3fd0811b87f163ab0447a041961d4cd33a87f21306acef7afe3580d2284297e8cb27d44d519d77de7800de1415e68fed806c7df86527a4bcdcac9cd8b91d4c79 SHA512 8cbc67b28c33341c22f635f96972517a41558abededf6541455c2dbfeca7fdabf10273f2163e47de439dd6a158dda88c7120d59eb2fc6a47aeb4dad3fd95c1dc
diff --git a/dev-python/darkdetect/darkdetect-0.8.0.ebuild b/dev-python/darkdetect/darkdetect-0.8.0.ebuild
new file mode 100644
index 000000000..18e14cedd
--- /dev/null
+++ b/dev-python/darkdetect/darkdetect-0.8.0.ebuild
@@ -0,0 +1,15 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="Detect OS dark mode from Python"
+HOMEPAGE="https://github.com/5yutan5/PyQtDarkTheme https://pypi.org/project/PyQtDarkTheme"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/darkdetect/metadata.xml b/dev-python/darkdetect/metadata.xml
new file mode 100644
index 000000000..ff145e5db
--- /dev/null
+++ b/dev-python/darkdetect/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">darkdetect</remote-id>
+ <remote-id type="github">albertosottile/darkdetect</remote-id>
+ <maintainer>
+ <name>Alberto Sottile</name>
+ <email>asottile@gmail.com</email>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/dasbus/Manifest b/dev-python/dasbus/Manifest
new file mode 100644
index 000000000..04f908749
--- /dev/null
+++ b/dev-python/dasbus/Manifest
@@ -0,0 +1 @@
+DIST dasbus-1.7.gh.tar.gz 94405 BLAKE2B e867afdbc87eed25469078108fc51d1be5277911c176cac01eb7fc25d40478ca2e9bbf57e278785d90403a033bd33c5a4ac1cbe69197ef40dc4fad1a6d3c6dfb SHA512 fc4d2871ff347144f14a9e3b428eafd53189650e5bf8549804ed8167130da1a52a6cc1170380f652e5a2699b6e8aed57c1b9e8e1369580e7c83ffb5c95e921e1
diff --git a/dev-python/dasbus/dasbus-1.7-r1.ebuild b/dev-python/dasbus/dasbus-1.7-r1.ebuild
new file mode 100644
index 000000000..9d5e3466c
--- /dev/null
+++ b/dev-python/dasbus/dasbus-1.7-r1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+DESCRIPTION="DBus library in Python 3"
+HOMEPAGE="https://github.com/dasbus-project/dasbus"
+SRC_URI="https://github.com/dasbus-project/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/pygobject:3[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests unittest
diff --git a/dev-python/dasbus/metadata.xml b/dev-python/dasbus/metadata.xml
new file mode 100644
index 000000000..9b2e81e57
--- /dev/null
+++ b/dev-python/dasbus/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <bugs-to>https://github.com/dasbus-project/dasbus/issues</bugs-to>
+ <remote-id type="github">dasbus-project/dasbus</remote-id>
+ <remote-id type="pypi">dasbus</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/databases/Manifest b/dev-python/databases/Manifest
deleted file mode 100644
index ede27d281..000000000
--- a/dev-python/databases/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST databases-0.4.3.tar.gz 26517 BLAKE2B 38b9f86e42740a723f4022b225913e0e7a2c635eb34793fcbf62efa0917ddb6b7ee3b59cce7f4c8503aef31befb0caea3fb3e655617606296cb8ae1bb4cebfc7 SHA512 aa49f1a33edd3bf9ae7aa203dcef4941d1a1766c930cbe34405caf3dca0801bbca494ec39357591b6339977b86294d32a031bf2020f206436e7d19edc6a8e158
diff --git a/dev-python/databases/databases-0.4.3.ebuild b/dev-python/databases/databases-0.4.3.ebuild
deleted file mode 100644
index ac93c89e7..000000000
--- a/dev-python/databases/databases-0.4.3.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-DOCS_BUILDER="mkdocs"
-DOCS_DEPEND="dev-python/mkdocs-material"
-
-inherit distutils-r1 docs optfeature
-
-DESCRIPTION="Async database support for Python."
-HOMEPAGE="
- https://www.encode.io/databases/
- https://github.com/encode/databases
-"
-SRC_URI="https://github.com/encode/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="<dev-python/sqlalchemy-1.4.0[${PYTHON_USEDEP}]"
-
-BDEPEND="test? (
- dev-python/aiopg[${PYTHON_USEDEP}]
- dev-python/aiosqlite[${PYTHON_USEDEP}]
- dev-python/async_timeout[${PYTHON_USEDEP}]
- dev-python/asyncpg[${PYTHON_USEDEP}]
- dev-python/psycopg[${PYTHON_USEDEP}]
- dev-python/pymysql[${PYTHON_USEDEP}]
- dev-python/starlette[${PYTHON_USEDEP}]
-)"
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
- # do not install LICENSE to /usr/
- sed -i -e '/data_files/d' setup.py || die
- # fix tests
- sed -i -e '/databases.backends.mysql/d' tests/test_connection_options.py || die
-
- distutils-r1_python_prepare_all
-}
-
-python_test() {
- TEST_DATABASE_URLS="" epytest \
- --deselect tests/test_connection_options.py::test_mysql_pool_size \
- --deselect tests/test_connection_options.py::test_mysql_explicit_pool_size \
- --deselect tests/test_connection_options.py::test_mysql_ssl \
- --deselect tests/test_connection_options.py::test_mysql_explicit_ssl \
- --deselect tests/test_connection_options.py::test_mysql_pool_recycle \
- --deselect tests/test_databases.py \
- --deselect tests/test_integration.py::test_integration
-}
-
-pkg_postinst() {
- optfeature "postgresql support" dev-python/asyncpg dev-python/psycopg
- optfeature "mysql support" dev-python/pymysql
- optfeature "sqlite support" dev-python/aiosqlite
- optfeature "postgresql+aiopg support" dev-python/aiopg
-}
diff --git a/dev-python/databases/metadata.xml b/dev-python/databases/metadata.xml
deleted file mode 100644
index a507be0a7..000000000
--- a/dev-python/databases/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <maintainer type="person">
- <email>piotr.staroszczyk@get24.org</email>
- <name>Piotr Staroszczyk</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/dataclasses-json/Manifest b/dev-python/dataclasses-json/Manifest
new file mode 100644
index 000000000..c011b221e
--- /dev/null
+++ b/dev-python/dataclasses-json/Manifest
@@ -0,0 +1 @@
+DIST dataclasses-json-0.5.14.gh.tar.gz 72513 BLAKE2B f45ca18030388efcc21ca9c939bf2298f891de66d62dc0f8042a3d0e26cc0bae63c7c5a02c839b07282c3110d6e5752979e3abea361b215b86b354984901c77c SHA512 5ec21843ef29a8e6e9511922698f42c115c7e641ca9ae5e47a58c6f0697a51928fd462f6342190263469baa70b76a302ad1d27954f50b9457b97149586f35703
diff --git a/dev-python/dataclasses-json/dataclasses-json-0.5.14.ebuild b/dev-python/dataclasses-json/dataclasses-json-0.5.14.ebuild
new file mode 100644
index 000000000..c73da7eae
--- /dev/null
+++ b/dev-python/dataclasses-json/dataclasses-json-0.5.14.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1
+
+DESCRIPTION="Easily serialize Data Classes to and from JSON"
+HOMEPAGE="https://github.com/lidatong/dataclasses-json"
+SRC_URI="https://github.com/lidatong/dataclasses-json/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${P/_/-}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/marshmallow-3.3.0[${PYTHON_USEDEP}]
+ >=dev-python/marshmallow_enum-1.5.1[${PYTHON_USEDEP}]
+ >=dev-python/typing-inspect-0.4.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ >=dev-python/mypy-0.710[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/dataclasses-json/metadata.xml b/dev-python/dataclasses-json/metadata.xml
new file mode 100644
index 000000000..f0e2e7239
--- /dev/null
+++ b/dev-python/dataclasses-json/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">lidatong/dataclasses-json</remote-id>
+ <remote-id type="pypi">dataclasses-json</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/dateparser/Manifest b/dev-python/dateparser/Manifest
index f3166397e..44c8fffea 100644
--- a/dev-python/dateparser/Manifest
+++ b/dev-python/dateparser/Manifest
@@ -1 +1 @@
-DIST dateparser-1.0.0.tar.gz 471943 BLAKE2B b248def372fb792dcd6c0bdc523217d0eea74a70c65fa4975953c42de8b6408a541d3031774fe75c464c3528e43179a9a9675005f88351a539ea72dd4d5f81b5 SHA512 4ce97038c53bc49bf9261f82bd3c093b48987f1a776f033594e16488faf75cb7b255cd89ca7f4d229b8d0ab8e41ba9ca525c58300bc6ee5222bf73411f3cff53
+DIST dateparser-1.2.0.tar.gz 307260 BLAKE2B b4611dfc4fccaf5f129e4d9aa3debe4a6d4242a44896305b909e6c34728ba153be92659b2f0c3a5da028d3863789d9c3a4236676087346b5f3f4aeb1f57b7a1e SHA512 74d5975f515dee096d83d10b72e5dc66ab197d50f24c129560ffb87eef4abd1422d8236555496d1ab1c0bfb832729e9c0d3ea2ca2c9c49da19963f0f2c1c1eb4
diff --git a/dev-python/dateparser/dateparser-1.0.0.ebuild b/dev-python/dateparser/dateparser-1.0.0.ebuild
deleted file mode 100644
index ff29e35b4..000000000
--- a/dev-python/dateparser/dateparser-1.0.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Date parsing library designed to parse dates from HTML pages"
-HOMEPAGE="https://github.com/scrapinghub/dateparser"
-SRC_URI="https://github.com/scrapinghub/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD-4"
-SLOT="0"
-KEYWORDS="~amd64"
-
-# Requires access to the internet
-RESTRICT="test"
-
-DEPEND="test? (
- dev-python/ruamel-yaml[${PYTHON_USEDEP}]
- dev-python/parameterized[${PYTHON_USEDEP}]
- dev-python/GitPython[${PYTHON_USEDEP}]
- dev-python/ordered-set[${PYTHON_USEDEP}]
-)"
-
-RDEPEND="
- dev-python/convertdate[${PYTHON_USEDEP}]
- dev-python/hijri-converter[${PYTHON_USEDEP}]
- dev-python/python-dateutil[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- dev-python/regex[${PYTHON_USEDEP}]
- dev-python/tzlocal[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs
diff --git a/dev-python/dateparser/dateparser-1.2.0.ebuild b/dev-python/dateparser/dateparser-1.2.0.ebuild
new file mode 100644
index 000000000..45704719e
--- /dev/null
+++ b/dev-python/dateparser/dateparser-1.2.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="Date parsing library designed to parse dates from HTML pages"
+HOMEPAGE="
+ https://pypi.org/project/dateparser/
+ https://github.com/scrapinghub/dateparser
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/regex[${PYTHON_USEDEP}]
+ dev-python/tzlocal[${PYTHON_USEDEP}]
+"
+BDEPEND="test? (
+ dev-libs/fastText[python,${PYTHON_USEDEP}]
+ dev-python/convertdate[${PYTHON_USEDEP}]
+ dev-python/hijridate[${PYTHON_USEDEP}]
+ dev-python/langdetect[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+)"
+
+PATCHES=( "${FILESDIR}/${P}-migrate-hijridate.patch" )
+
+EPYTEST_IGNORE=(
+ # tests that require network
+ tests/test_dateparser_data_integrity.py
+)
+
+EPYTEST_DESELECT=(
+ # tests that require network
+ tests/test_language_detect.py::CustomLangDetectParserTest::test_custom_language_detect_fast_text_{0,1}
+)
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-rtd-theme
+
+pkg_postinst() {
+ optfeature "calendars support" "dev-python/hijridate dev-python/convertdate"
+ optfeature "fasttext support" "dev-libs/fastText[python]"
+ optfeature "langdetect support" dev-python/langdetect
+}
diff --git a/dev-python/dateparser/files/dateparser-1.2.0-migrate-hijridate.patch b/dev-python/dateparser/files/dateparser-1.2.0-migrate-hijridate.patch
new file mode 100644
index 000000000..3d488ca53
--- /dev/null
+++ b/dev-python/dateparser/files/dateparser-1.2.0-migrate-hijridate.patch
@@ -0,0 +1,71 @@
+https://github.com/scrapinghub/dateparser/pull/1211
+From: pastalian <pastalian46@gmail.com>
+Date: Thu, 25 Jan 2024 21:14:28 +0900
+Subject: [PATCH] Migrate from hijri-converter to hijridate
+
+--- a/dateparser/calendars/hijri_parser.py
++++ b/dateparser/calendars/hijri_parser.py
+@@ -1,4 +1,4 @@
+-from hijri_converter import convert
++from hijridate import Gregorian, Hijri
+
+ from dateparser.calendars import non_gregorian_parser
+
+@@ -6,19 +6,17 @@
+ class hijri:
+ @classmethod
+ def to_gregorian(cls, year=None, month=None, day=None):
+- g = convert.Hijri(
+- year=year, month=month, day=day, validate=False
+- ).to_gregorian()
++ g = Hijri(year=year, month=month, day=day, validate=False).to_gregorian()
+ return g.datetuple()
+
+ @classmethod
+ def from_gregorian(cls, year=None, month=None, day=None):
+- h = convert.Gregorian(year, month, day).to_hijri()
++ h = Gregorian(year, month, day).to_hijri()
+ return h.datetuple()
+
+ @classmethod
+ def month_length(cls, year, month):
+- h = convert.Hijri(year=year, month=month, day=1)
++ h = Hijri(year=year, month=month, day=1)
+ return h.month_length()
+
+
+--- a/docs/introduction.rst
++++ b/docs/introduction.rst
+@@ -223,13 +223,13 @@ Dependencies
+
+ * dateutil_'s module ``relativedelta`` for its freshness parser.
+ * convertdate_ to convert *Jalali* dates to *Gregorian*.
+- * hijri-converter_ to convert *Hijri* dates to *Gregorian*.
++ * hijridate_ to convert *Hijri* dates to *Gregorian*.
+ * tzlocal_ to reliably get local timezone.
+ * ruamel.yaml_ (optional) for operations on language files.
+
+ .. _dateutil: https://pypi.python.org/pypi/python-dateutil
+ .. _convertdate: https://pypi.python.org/pypi/convertdate
+-.. _hijri-converter: https://pypi.python.org/pypi/hijri-converter
++.. _hijridate: https://pypi.python.org/pypi/hijridate
+ .. _tzlocal: https://pypi.python.org/pypi/tzlocal
+ .. _ruamel.yaml: https://pypi.python.org/pypi/ruamel.yaml
+
+@@ -261,4 +261,4 @@ To be able to use them you need to install the `calendar` extra by typing:
+ >>> HijriCalendar('17-01-1437 هـ 08:30 مساءً').get_date()
+ DateData(date_obj=datetime.datetime(2015, 10, 30, 20, 30), period='day', locale=None)
+
+-.. note:: `HijriCalendar` only works with Python ≥ 3.6.
++.. note:: `HijriCalendar` only works with Python ≥ 3.7.
+--- a/setup.py
++++ b/setup.py
+@@ -41,7 +41,7 @@
+ "console_scripts": ["dateparser-download = dateparser_cli.cli:entrance"],
+ },
+ extras_require={
+- "calendars": ["hijri-converter", "convertdate"],
++ "calendars": ["hijridate", "convertdate"],
+ "fasttext": ["fasttext"],
+ "langdetect": ["langdetect"],
+ },
diff --git a/dev-python/dateparser/metadata.xml b/dev-python/dateparser/metadata.xml
index c1c9c1d66..694c8de0e 100644
--- a/dev-python/dateparser/metadata.xml
+++ b/dev-python/dateparser/metadata.xml
@@ -1,12 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>xgqt@riseup.net</email>
- <name>Maciej Barć</name>
- </maintainer>
- <upstream>
- <remote-id type="github">scrapinghub/dateparser</remote-id>
- <remote-id type="pypi">dateparser</remote-id>
- </upstream>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">scrapinghub/dateparser</remote-id>
+ <remote-id type="pypi">dateparser</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/decopatch/Manifest b/dev-python/decopatch/Manifest
new file mode 100644
index 000000000..c5b1e1dc1
--- /dev/null
+++ b/dev-python/decopatch/Manifest
@@ -0,0 +1 @@
+DIST decopatch-1.4.10.tar.gz 69538 BLAKE2B 812305abb0648c42fe786f6153820ff68e3bf3cb23bf0b3eecb139085b88071f914aa556f17a90bd45b39cdf42a563fb3c30178095bbdd16331d36ec2ff29e58 SHA512 7554c5bdef6aeb06968334c8aef3f67b56bd3ff8be5e05cb6289f3088848d946d46ecc1d9f73bab9db80b6981aa4f9039c359eb8a0fe9f4acee62addf4f0ed96
diff --git a/dev-python/decopatch/decopatch-1.4.10.ebuild b/dev-python/decopatch/decopatch-1.4.10.ebuild
new file mode 100644
index 000000000..cda3b4998
--- /dev/null
+++ b/dev-python/decopatch/decopatch-1.4.10.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND=(
+ dev-python/mkdocs-material
+ dev-python/regex
+)
+inherit distutils-r1 docs pypi
+
+DESCRIPTION="Create decorators easily in python"
+HOMEPAGE="https://pypi.org/project/decopatch/ https://github.com/smarie/python-decopatch"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/makefun[${PYTHON_USEDEP}]"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? ( dev-python/pytest-cases[${PYTHON_USEDEP}] )
+"
+
+PATCHES=( "${FILESDIR}/${P}-python12.patch" )
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ sed "/pytest-runner/d" -i setup.cfg || die
+ distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+ docs_compile
+}
diff --git a/dev-python/decopatch/files/decopatch-1.4.10-python12.patch b/dev-python/decopatch/files/decopatch-1.4.10-python12.patch
new file mode 100644
index 000000000..24ca2082e
--- /dev/null
+++ b/dev-python/decopatch/files/decopatch-1.4.10-python12.patch
@@ -0,0 +1,61 @@
+https://github.com/smarie/python-decopatch/pull/34
+From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
+Date: Tue, 25 Jul 2023 13:31:12 +0200
+Subject: [PATCH] Adjust for whitespace changes with python 3.12
+
+Tests would fail with python3-3.12.0~b4-1.fc39.x86_64.
+--- a/tests/test_doc.py
++++ b/tests/test_doc.py
+@@ -1,5 +1,5 @@
+ from __future__ import print_function
+-
++import re
+
+ import pytest
+ from makefun import wraps
+@@ -182,7 +182,8 @@ def add_ints(a, b):
+ with capsys.disabled():
+ print(captured.out)
+
+- assert captured.out == """hello, world !
++ out = re.sub(r'[ \t]+\n', '\n', captured.out)
++ assert out == """hello, world !
+ <executing foo>
+ hello, world !
+ <executing bar>
+@@ -195,7 +196,7 @@ def add_ints(a, b):
+ say_hello(person='world')
+ This decorator wraps the decorated function so that a nice hello
+ message is printed before each call.
+-
++
+ :param person: the person name in the print message. Default = "world"
+
+ Signature: (person='world')
+--- a/tests/test_doc_advanced.py
++++ b/tests/test_doc_advanced.py
+@@ -1,4 +1,5 @@
+ from __future__ import print_function
++import re
+ import sys
+
+ import pytest
+@@ -200,7 +201,8 @@ def custom(a, b):
+ with capsys.disabled():
+ print(captured.out)
+
+- assert captured.out == """hello, world !
++ out = re.sub(r'[ \t]+\n', '\n', captured.out)
++ assert out == """hello, world !
+ hello, world !
+ hello, you !
+ Help on function say_hello in module tests.test_doc_advanced:
+@@ -208,7 +210,7 @@ def custom(a, b):
+ say_hello(person='world')
+ This decorator modifies the decorated function so that a nice hello
+ message is printed before the call.
+-
++
+ :param person: the person name in the print message. Default = "world"
+ :param f: represents the decorated item. Automatically injected.
+ :return: a modified version of `f` that will print a hello message before executing
diff --git a/dev-python/decopatch/metadata.xml b/dev-python/decopatch/metadata.xml
new file mode 100644
index 000000000..1ce684e59
--- /dev/null
+++ b/dev-python/decopatch/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">decopatch</remote-id>
+ <remote-id type="github">smarie/python-decopatch</remote-id>
+ <doc>https://smarie.github.io/python-decopatch/</doc>
+ <maintainer>
+ <email>sylvain.marie@schneider-electric.com</email>
+ <name>Sylvain Marie</name>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/defcon/Manifest b/dev-python/defcon/Manifest
new file mode 100644
index 000000000..dffa4872b
--- /dev/null
+++ b/dev-python/defcon/Manifest
@@ -0,0 +1 @@
+DIST defcon-0.10.2.zip 519741 BLAKE2B 6b31d88904bf3ae5e8b1774de1c3d61f8993eb91e54c08b5498fdef1b7143084423dbac20b0a3d17981065db98a93bd82753a67c38a2b4b239632c67d4ae1667 SHA512 9ec1550783c2618644dfc1da8bf4c1270dc0eb9737f3d17cead766f94856e5abf4d976876726180e9a4a9fa8f0c8b9747375acfae7967bc9e651b29476903b82
diff --git a/dev-python/defcon/defcon-0.10.2.ebuild b/dev-python/defcon/defcon-0.10.2.ebuild
new file mode 100644
index 000000000..4a02e1475
--- /dev/null
+++ b/dev-python/defcon/defcon-0.10.2.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="A set of UFO based objects for use in font editing applications"
+HOMEPAGE="https://github.com/robotools/defcon"
+SRC_URI="$(pypi_sdist_url ${PN} ${PV} .zip)"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND=">=dev-python/fonttools-4.34.4[${PYTHON_USEDEP}]"
+BDEPEND="
+ app-arch/unzip
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/fs[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_configure() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+ distutils-r1_src_configure
+}
diff --git a/dev-python/defcon/metadata.xml b/dev-python/defcon/metadata.xml
new file mode 100644
index 000000000..9c26c3253
--- /dev/null
+++ b/dev-python/defcon/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">robotools/defcon</remote-id>
+ <remote-id type="pypi">defcon</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/desktop-notifier/Manifest b/dev-python/desktop-notifier/Manifest
new file mode 100644
index 000000000..232ee9755
--- /dev/null
+++ b/dev-python/desktop-notifier/Manifest
@@ -0,0 +1 @@
+DIST desktop_notifier-4.0.0.tar.gz 29934 BLAKE2B da9944edd6577f36116a03a6620a5a8ec68071954df4ac31a96af148608a9c6d990805f025b44925a943274bc961d4412690dde7876520f9a42bca0b6b008f9b SHA512 a96f96d6cbf7876bebcc9eb8a33d348eb5ed8f2a86fd5a9761105684e0267d9496904bb38f54caba39d29dfc23e00530655669d8e849607e066c85512f67c045
diff --git a/dev-python/desktop-notifier/desktop-notifier-4.0.0.ebuild b/dev-python/desktop-notifier/desktop-notifier-4.0.0.ebuild
new file mode 100644
index 000000000..f938fb500
--- /dev/null
+++ b/dev-python/desktop-notifier/desktop-notifier-4.0.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="desktop-notifier is a Python library for cross-platform desktop notifications"
+HOMEPAGE="
+ https://desktop-notifier.readthedocs.io
+ https://pypi.org/project/desktop-notifier/
+ https://github.com/samschott/desktop-notifier
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/dbus-next[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/wheel[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/build[${PYTHON_USEDEP}]
+"
+
+# Tests on pypi are incomplete
+# Tests on gh don't work
+RESTRICT="test"
diff --git a/dev-python/desktop-notifier/metadata.xml b/dev-python/desktop-notifier/metadata.xml
new file mode 100644
index 000000000..ce6494738
--- /dev/null
+++ b/dev-python/desktop-notifier/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>ceamac@gentoo.org</email>
+ <description>Primary maintainer</description>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">samschott/desktop-notifier</remote-id>
+ <remote-id type="pypi">desktop-notifier</remote-id>
+ <maintainer>
+ <name>Sam Schott</name>
+ <email>sam.schott@outlook.com</email>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/devtools/Manifest b/dev-python/devtools/Manifest
index 7f2482aaf..cd7e574bd 100644
--- a/dev-python/devtools/Manifest
+++ b/dev-python/devtools/Manifest
@@ -1 +1 @@
-DIST devtools-0.6.1.tar.gz 66427 BLAKE2B b8c69ebe100e2f64a4a443f536697ff055563ac833630e04568b30ff6a887375cd009b846e0932b71c0ffdf48cdae311b571b0df9fd03096e744f5e35f9ac555 SHA512 919c443e99af972e6e27f751552777bb5556bc371ece48bb5f2bd490c27cb4140832dcdacc8312481ede9751656b01f02772b8936ec7737e8385c5d6f497a084
+DIST devtools-0.10.0.tar.gz 68374 BLAKE2B 81ffea515c8c11b591e2235a0ad6d61ea4c21bcd8ab33aa80cae2848da7de4bddb34e54be2e41c4122ef2c1b1a5d20c33f9c4181bef4101063af5619dbd66da8 SHA512 b7fe4cb57863b60bfd01280e24edeae77cc349c8719c8c5610e9e82c36d5de7b32ff978ca0c6254787c98a6d25642d576835e6798c5ea24fcd72a10b5d8aed70
diff --git a/dev-python/devtools/devtools-0.10.0-r1.ebuild b/dev-python/devtools/devtools-0.10.0-r1.ebuild
new file mode 100644
index 000000000..bd09c64df
--- /dev/null
+++ b/dev-python/devtools/devtools-0.10.0-r1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{10..12} )
+
+DOCS_BUILDER=mkdocs
+DOCS_DEPEND=(
+ dev-python/ansi2html
+ dev-python/markdown-include
+ dev-python/mkdocs-exclude
+ dev-python/mkdocs-material
+)
+
+inherit distutils-r1 docs pypi
+
+DESCRIPTION="Dev tools for python"
+HOMEPAGE="
+ https://pypi.org/project/devtools/
+ https://github.com/samuelcolvin/python-devtools
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-python/asttokens[${PYTHON_USEDEP}]
+ dev-python/executing[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/asyncpg[${PYTHON_USEDEP}]
+ dev-python/coverage[${PYTHON_USEDEP}]
+ dev-python/multidict[${PYTHON_USEDEP}]
+ dev-python/pydantic[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/devtools/devtools-0.6.1.ebuild b/dev-python/devtools/devtools-0.6.1.ebuild
deleted file mode 100644
index d1194e04c..000000000
--- a/dev-python/devtools/devtools-0.6.1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-DOCS_BUILDER="mkdocs"
-DOCS_DEPEND="
- dev-python/ansi2html
- dev-python/markdown
- dev-python/markdown-include
- dev-python/mkdocs-exclude
- dev-python/mkdocs-material
- dev-python/pygments
-"
-
-inherit distutils-r1 docs
-
-MYPN="python-${PN}"
-MYP="${MYPN}-${PV}"
-
-DESCRIPTION="Dev tools for python"
-HOMEPAGE="https://github.com/samuelcolvin/python-devtools"
-SRC_URI="https://github.com/samuelcolvin/${MYPN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-
-S="${WORKDIR}/${MYP}"
-
-distutils_enable_tests pytest
-
-DEPEND="test? (
- dev-python/pygments[${PYTHON_USEDEP}]
- dev-python/pytest-mock[${PYTHON_USEDEP}]
-)"
diff --git a/dev-python/devtools/metadata.xml b/dev-python/devtools/metadata.xml
index 9347cb29d..f1f2d4f8a 100644
--- a/dev-python/devtools/metadata.xml
+++ b/dev-python/devtools/metadata.xml
@@ -1,10 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
- <upstream>
- <remote-id type="github">samuelcolvin/python-devtools</remote-id>
- <remote-id type="pypi">devtools</remote-id>
- </upstream>
+ <!-- maintainer-needed -->
+ <upstream>
+ <maintainer>
+ <name>Samuel Colvin</name>
+ <email>s@muelcolvin.com</email>
+ </maintainer>
+ <changelog>https://github.com/samuelcolvin/python-devtools/releases</changelog>
+ <doc>https://python-devtools.helpmanual.io/</doc>
+ <bugs-to>https://github.com/samuelcolvin/python-devtools/issues</bugs-to>
+ <remote-id type="github">samuelcolvin/python-devtools</remote-id>
+ <remote-id type="pypi">devtools</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/digitalocean/Manifest b/dev-python/digitalocean/Manifest
new file mode 100644
index 000000000..a3069385e
--- /dev/null
+++ b/dev-python/digitalocean/Manifest
@@ -0,0 +1 @@
+DIST digitalocean-1.17.0.gh.tar.gz 60261 BLAKE2B 1a3b8ffe955fdea616420d67e9cd1b07d81d3395d673770333b150a8044f6f93d16ab6ec93d0d5efb7579a2bd7fde57c394bc3fc3e58ad02db230f5bd48006bb SHA512 3b5f5adb5fac9693450954e568433cecb43152d4cb2b5709126dc7c69c6b84f19428dcd3688718588a986d3ea9170a956387f3050cd10a69ba89d5dcdf8e100c
diff --git a/dev-python/digitalocean/digitalocean-1.17.0-r1.ebuild b/dev-python/digitalocean/digitalocean-1.17.0-r1.ebuild
new file mode 100644
index 000000000..1adcbf673
--- /dev/null
+++ b/dev-python/digitalocean/digitalocean-1.17.0-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+DESCRIPTION="Digitalocean API access library"
+HOMEPAGE="https://github.com/koalalorenzo/python-digitalocean"
+SRC_URI="https://github.com/koalalorenzo/python-${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/python-${P}"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/jsonpickle[${PYTHON_USEDEP}]
+"
+BDEPEND="test? ( dev-python/responses[${PYTHON_USEDEP}] )"
+
+distutils_enable_sphinx docs dev-python/alabaster
+
+EPYTEST_DESELECT=(
+ # Needs net
+ digitalocean/tests/test_firewall.py
+)
+
+distutils_enable_tests pytest
diff --git a/dev-python/digitalocean/metadata.xml b/dev-python/digitalocean/metadata.xml
new file mode 100644
index 000000000..3030e393f
--- /dev/null
+++ b/dev-python/digitalocean/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>egorr.berd@gmail.com</email>
+ <name>Yahor Berdnikau</name>
+</maintainer>
+<upstream>
+ <remote-id type="github">koalalorenzo/python-digitalocean</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/dev-python/dotmap/Manifest b/dev-python/dotmap/Manifest
deleted file mode 100644
index 25ed3fd2c..000000000
--- a/dev-python/dotmap/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST dotmap-1.3.8.tar.gz 9973 BLAKE2B cbf90f7c32b6e64217c9d6ccb13a3d89cf4d5a15704abda76c0ee9914b30882c1bf6993a4b74b7dbb269604f1149102f24da27de4136b7adfefd277861826d2e SHA512 c164b8c6d61d9d0bc66c665df8fe8d376dabc0f994824bd44cade504839a053b9a95973be1d8611f961faeac109d8dfeca93e27b28a12b35c557d22e669772a7
diff --git a/dev-python/dotmap/dotmap-1.3.8.ebuild b/dev-python/dotmap/dotmap-1.3.8.ebuild
deleted file mode 100644
index 85c753fe5..000000000
--- a/dev-python/dotmap/dotmap-1.3.8.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-#don't bump to python 3.10 until https://github.com/drgrib/dotmap/issues/76 is resolved
-PYTHON_COMPAT=( python3_{8..9} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="Dot access dictionary with dynamic hierarchy creation and ordered iteration"
-HOMEPAGE="https://github.com/drgrib/dotmap"
-SRC_URI="https://github.com/drgrib/dotmap/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-KEYWORDS="~amd64"
-SLOT="0"
-
-distutils_enable_tests unittest
diff --git a/dev-python/dotmap/metadata.xml b/dev-python/dotmap/metadata.xml
deleted file mode 100644
index 6e6b958dd..000000000
--- a/dev-python/dotmap/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/drgrib/dotmap/issues</bugs-to>
- <remote-id type="github">drgrib/dotmap</remote-id>
- <remote-id type="pypi">dotmap</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/doxypypy/Manifest b/dev-python/doxypypy/Manifest
index 2b5d6c78f..1cebbd0a4 100644
--- a/dev-python/doxypypy/Manifest
+++ b/dev-python/doxypypy/Manifest
@@ -1 +1 @@
-DIST doxypypy-0.8.8.6_p20210405.tar.gz 62179 BLAKE2B ee36a130f2c4af9264f04cf00ad311dccda8beeca505d7eb84169b05cf1e0ed6242770ede96b3df9b77385ea238cae84e9cd4e9f8761d23530e2f8e5fbcad797 SHA512 d3fa6bec9381d5531f82837e51988ccea4882fc77109924dd7a7f3ecd99e5afbec09d203629ac3853eeb38cf4592d97a1ec8c18fbe9fb48885794f887aba4336
+DIST doxypypy-0.8.8.6_p20210405.gh.tar.gz 62179 BLAKE2B ee36a130f2c4af9264f04cf00ad311dccda8beeca505d7eb84169b05cf1e0ed6242770ede96b3df9b77385ea238cae84e9cd4e9f8761d23530e2f8e5fbcad797 SHA512 d3fa6bec9381d5531f82837e51988ccea4882fc77109924dd7a7f3ecd99e5afbec09d203629ac3853eeb38cf4592d97a1ec8c18fbe9fb48885794f887aba4336
diff --git a/dev-python/doxypypy/doxypypy-0.8.8.6_p20210405.ebuild b/dev-python/doxypypy/doxypypy-0.8.8.6_p20210405-r1.ebuild
index 655fee23f..ba6c65618 100644
--- a/dev-python/doxypypy/doxypypy-0.8.8.6_p20210405.ebuild
+++ b/dev-python/doxypypy/doxypypy-0.8.8.6_p20210405-r1.ebuild
@@ -1,28 +1,26 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-
-DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python3_{8..9} )
+EAPI=8
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
inherit distutils-r1
-MY_REV=39115c3d061d2f83e4a030bcb8642ec6f3203e61
+COMMIT="39115c3d061d2f83e4a030bcb8642ec6f3203e61"
DESCRIPTION="A more Pythonic version of doxypy, a Doxygen filter for Python"
HOMEPAGE="https://github.com/Feneric/doxypypy"
-SRC_URI="https://github.com/Feneric/doxypypy/archive/${MY_REV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/Feneric/doxypypy/archive/${COMMIT}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
-RESTRICT="!test? ( test )"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64"
+RESTRICT="!test? ( test )"
RDEPEND="dev-python/chardet[${PYTHON_USEDEP}]"
-DEPEND="test? ( dev-python/zope-interface[${PYTHON_USEDEP}] )"
-
-S="${WORKDIR}/${PN}-${MY_REV}"
+BDEPEND="test? ( dev-python/zope-interface[${PYTHON_USEDEP}] )"
distutils_enable_tests unittest
diff --git a/dev-python/doxypypy/metadata.xml b/dev-python/doxypypy/metadata.xml
index 18ed3fd36..497d90dbd 100644
--- a/dev-python/doxypypy/metadata.xml
+++ b/dev-python/doxypypy/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/dev-python/dropbox/Manifest b/dev-python/dropbox/Manifest
new file mode 100644
index 000000000..312d1388e
--- /dev/null
+++ b/dev-python/dropbox/Manifest
@@ -0,0 +1 @@
+DIST dropbox-sdk-python-11.36.2.gh.tar.gz 1166700 BLAKE2B afd0592bd1e18416f91d1fd673f2b7b7f605eaab80c02a9d8535fefa7fb23c8bc6a08c191492e1ced5d4b2d17fa72e8e5b6a58ba797f170c0efb75e755a451c9 SHA512 ec27685b4e5344e706bffb68b110ef2d7b307a5865bed3e042d6835f3666d2eefca646627a07bae1a3142e5f0346865fe285b037b00f3da081eb5797f9a768f5
diff --git a/dev-python/dropbox/dropbox-11.36.2.ebuild b/dev-python/dropbox/dropbox-11.36.2.ebuild
new file mode 100644
index 000000000..a4c49a28d
--- /dev/null
+++ b/dev-python/dropbox/dropbox-11.36.2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+GH_PN=dropbox-sdk-python
+
+DESCRIPTION="The offical Dropbox SDK for Python"
+HOMEPAGE="https://www.dropbox.com/developers"
+# pypi does not have tests, stick with gh
+SRC_URI="https://github.com/dropbox/${GH_PN}/archive/refs/tags/v${PV}.tar.gz -> ${GH_PN}-${PV}.gh.tar.gz"
+S="${WORKDIR}"/${GH_PN}-${PV}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/requests-2.16.2[${PYTHON_USEDEP}]
+ >=dev-python/six-1.12.0[${PYTHON_USEDEP}]
+ >=dev-python/stone-2.0.0[${PYTHON_USEDEP}]
+"
+
+# disable tests that need SCOPED_USER_DROPBOX_TOKEN
+# and tests that fail
+EPYTEST_DESELECT=(
+ test/integration/test_dropbox.py
+ test/unit/test_dropbox_unit.py::TestClient
+ test/unit/test_dropbox_unit.py::TestOAuth::test_NoRedirect_whole_flow
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # this is wrong
+ sed -i -e "s/^import mock$/from unittest import mock/" test/unit/test_dropbox_unit.py || die
+
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/dropbox/metadata.xml b/dev-python/dropbox/metadata.xml
new file mode 100644
index 000000000..f75a6c0aa
--- /dev/null
+++ b/dev-python/dropbox/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>ceamac@gentoo.org</email>
+ <description>Primary maintainer</description>
+</maintainer>
+<upstream>
+ <remote-id type="github">dropbox/dropbox-sdk-python</remote-id>
+ <remote-id type="pypi">dropbox</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/dev-python/dtreeviz/Manifest b/dev-python/dtreeviz/Manifest
new file mode 100644
index 000000000..6e684966d
--- /dev/null
+++ b/dev-python/dtreeviz/Manifest
@@ -0,0 +1 @@
+DIST dtreeviz-2.2.2.tar.gz 77028 BLAKE2B 1c0b64d720d5fec2559c13cfcd8ca3e02108b02f056e5eccbc7ae596ab7ab0523256b8cafcd5908d77adf098a56d6f87340473f95e1545ed86f12a6912524fac SHA512 4be118cc7825da8e51cffb7fc248105c13e17342f58acaa5110d91f4e8c686d6c8ca8697ab9d3fe2c4e7549fd781aad6154a64562b76989e51e906964505796e
diff --git a/dev-python/dtreeviz/dtreeviz-2.2.2.ebuild b/dev-python/dtreeviz/dtreeviz-2.2.2.ebuild
new file mode 100644
index 000000000..4d091dd8e
--- /dev/null
+++ b/dev-python/dtreeviz/dtreeviz-2.2.2.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="A python library for decision tree visualization and model interpretation"
+HOMEPAGE="
+ https://github.com/parrt/dtreeviz
+ https://pypi.org/project/dtreeviz/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+# Tests are either not packaged properly
+# Or have dependencies which aren't package in ::gentoo or ::guru
+RESTRICT="test"
+
+RDEPEND="
+ >=dev-python/graphviz-0.9
+ dev-python/pandas
+ dev-python/numpy
+ dev-python/scikit-learn
+ dev-python/matplotlib
+ dev-python/colour
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/dtreeviz/metadata.xml b/dev-python/dtreeviz/metadata.xml
new file mode 100644
index 000000000..31a85aae3
--- /dev/null
+++ b/dev-python/dtreeviz/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>torsi@fi.uba.ar</email>
+ <name>Tomas Fabrizio Orsi</name>
+ </maintainer>
+ <longdescription>A python library for decision tree visualization and model interpretation. Decision trees are the fundamental building block of gradient boosting machines and Random Forests(tm), probably the two most popular machine learning models for structured data. Visualizing decision trees is a tremendous aid when learning how these models work and when interpreting models. The visualizations are inspired by an educational animation by R2D3; A visual introduction to machine learning. Please see How to visualize decision trees for deeper discussion of our decision tree visualization library and the visual design decisions we made.</longdescription>
+ <upstream>
+ <remote-id type="github">parrt/dtreeviz</remote-id>
+ <remote-id type="pypi">dtreeviz</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/evernote2/evernote2-9999.ebuild b/dev-python/evernote2/evernote2-9999.ebuild
new file mode 100644
index 000000000..f4255ed4b
--- /dev/null
+++ b/dev-python/evernote2/evernote2-9999.ebuild
@@ -0,0 +1,26 @@
+# Copyright Gentoo Authors 2024
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit git-r3 distutils-r1
+
+DESCRIPTION="Unofficial Evernote SDK for Python 3"
+HOMEPAGE="
+ https://github.com/JackonYang/evernote2
+ https://pypi.org/project/evernote2/
+"
+
+EGIT_REPO_URI="https://github.com/JackonYang/evernote2"
+
+LICENSE="Apache-2.0"
+
+SLOT="0"
+
+RDEPEND="
+ dev-python/oauthlib[${PYTHON_USEDEP}]
+ dev-python/thrift[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/evernote2/metadata.xml b/dev-python/evernote2/metadata.xml
new file mode 100644
index 000000000..c7f3d9280
--- /dev/null
+++ b/dev-python/evernote2/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Vitaly Zdanevich</name>
+ <email>zdanevich.vitaly@ya.ru</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">JackonYang/evernote2</remote-id>
+ <remote-id type="pypi">evernote2</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/evernote3/Manifest b/dev-python/evernote3/Manifest
new file mode 100644
index 000000000..0d8a334a7
--- /dev/null
+++ b/dev-python/evernote3/Manifest
@@ -0,0 +1 @@
+DIST evernote3-1.25.14.tar.gz 128787 BLAKE2B d3be20f6f582d30e19d20e8c91920f3b09588d035f337b784064c9659df6ce22cb6ece3736ced60dc33d8f04a0544241314cc5efd54a238f38b865361433155d SHA512 a7f80bb804c69274fb48a33f039787fcf8ee45a4af380f1e757df4f7b36bcfdf855a0776e8f7140286db1d1c52480c5be9d08ade3fc02d8d743f62329e48b287
diff --git a/dev-python/evernote3/evernote3-1.25.14.ebuild b/dev-python/evernote3/evernote3-1.25.14.ebuild
new file mode 100644
index 000000000..659359ecf
--- /dev/null
+++ b/dev-python/evernote3/evernote3-1.25.14.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Evernote SDK"
+HOMEPAGE="https://github.com/Evernote/evernote-sdk-python3"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-python/oauth2[${PYTHON_USEDEP}]
+dev-python/oauthlib[${PYTHON_USEDEP}]
+dev-python/requests[${PYTHON_USEDEP}]
+dev-python/requests-oauthlib[${PYTHON_USEDEP}]"
diff --git a/dev-python/evernote3/metadata.xml b/dev-python/evernote3/metadata.xml
new file mode 100644
index 000000000..a57a2fa07
--- /dev/null
+++ b/dev-python/evernote3/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Vitaly Zdanevich</name>
+ <email>zdanevich.vitaly@ya.ru</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">Evernote/evernote-sdk-python3</remote-id>
+ <remote-id type="pypi">evernote3</remote-id>
+ <bugs-to>https://github.com/Evernote/evernote-sdk-python3/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/exif/Manifest b/dev-python/exif/Manifest
new file mode 100644
index 000000000..294e463d7
--- /dev/null
+++ b/dev-python/exif/Manifest
@@ -0,0 +1 @@
+DIST exif-v1.6.0.tar.bz2 19003057 BLAKE2B b0357f70ac4618e5c3ca2e2ab3d2f7c5c2a202dc171669dec10f77a567f751f00d87af66a6e5f59cefbaa3a1b96aede333b8e27e5bb5441b719d0b5e88d97597 SHA512 db7b3c225f5a97ee09b8b66fe3f898fb1489c11d539260cf0c80e127155c6ae749b170a625ca9a81321780db62f19199acaf6e621cd5b4ea5b74d890c7de92b5
diff --git a/dev-python/exif/exif-1.6.0.ebuild b/dev-python/exif/exif-1.6.0.ebuild
new file mode 100644
index 000000000..66dd9041f
--- /dev/null
+++ b/dev-python/exif/exif-1.6.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Read and modify image EXIF metadata using Python."
+HOMEPAGE="https://gitlab.com/TNThieding/exif"
+SRC_URI="https://gitlab.com/TNThieding/${PN}/-/archive/v${PV}/${PN}-v${PV}.tar.bz2"
+
+S="${WORKDIR}/${PN}-v${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/plum-0.5.0[${PYTHON_USEDEP}]
+ <dev-python/plum-2.0.0[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/exif/metadata.xml b/dev-python/exif/metadata.xml
new file mode 100644
index 000000000..5321a22c6
--- /dev/null
+++ b/dev-python/exif/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>navi@vlhl.dev</email>
+ <name>Anna Figueiredo Gomes</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gitlab">TNThieding/exif</remote-id>
+ </upstream>
+</pkgmetadata>
+
diff --git a/dev-python/factory_boy/Manifest b/dev-python/factory_boy/Manifest
deleted file mode 100644
index 09900557e..000000000
--- a/dev-python/factory_boy/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST factory_boy-3.2.0.tar.gz 141428 BLAKE2B e8f25b84f31c27af5450af3dadae2ca7af41a8e0a0c71e6a88227404ac1082418059fae43cab57878e6373e3ee981d188098f01ff1001abed34e51e7826b5be5 SHA512 1e9736491229aa1648cfe9956c157738f5b9ecfd43e39a2f1d299e3c018763518f04b9bde7b19c1c7dbef48e5a93db818f1010068be541b02453313f71bc37c0
diff --git a/dev-python/factory_boy/factory_boy-3.2.0.ebuild b/dev-python/factory_boy/factory_boy-3.2.0.ebuild
deleted file mode 100644
index 21685d557..000000000
--- a/dev-python/factory_boy/factory_boy-3.2.0.ebuild
+++ /dev/null
@@ -1,46 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="A fixtures replacement tool"
-HOMEPAGE="https://github.com/FactoryBoy/factory_boy"
-SRC_URI="https://github.com/FactoryBoy/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND=">=dev-python/Faker-0.7.0[${PYTHON_USEDEP}]"
-BDEPEND="
- test? (
- $(python_gen_impl_dep sqlite)
- dev-python/django[${PYTHON_USEDEP}]
- dev-python/mongoengine[${PYTHON_USEDEP}]
- dev-python/pillow[jpeg,${PYTHON_USEDEP}]
- dev-python/sqlalchemy[${PYTHON_USEDEP}]
- )
- doc? (
- dev-python/factory_boy[${PYTHON_USEDEP}]
- )
-"
-
-python_prepare_all() {
- # Fix symbolic link QA
- rm ChangeLog || die "remove failed"
- cp docs/changelog.rst ChangeLog || die "copy failed"
-
- # Disable online tests
- sed -i -e 's:tearDownClass:_&:' \
- -e 's:test_creation:_&:' \
- tests/test_mongoengine.py || die
-
- distutils-r1_python_prepare_all
-}
-
-distutils_enable_tests --install unittest
-distutils_enable_sphinx docs dev-python/sphinx_rtd_theme dev-python/sphinxcontrib-spelling
diff --git a/dev-python/factory_boy/metadata.xml b/dev-python/factory_boy/metadata.xml
deleted file mode 100644
index 4e686ea06..000000000
--- a/dev-python/factory_boy/metadata.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
- A versatile test fixtures replacement based on thoughtbot's
- factory_bot for Ruby. It is designed to work well with various
- ORMs (Django, Mongo, SQLAlchemy).
- </longdescription>
- <upstream>
- <bugs-to>https://github.com/FactoryBoy/factory_boy/issues</bugs-to>
- <changelog>https://raw.githubusercontent.com/FactoryBoy/factory_boy/master/docs/changelog.rst</changelog>
- <doc lang="en">https://factoryboy.readthedocs.io</doc>
- <maintainer status="active">
- <email>raphael.barrois+fboy@polytechnique.org</email>
- <name>Raphaël Barrois</name>
- </maintainer>
- <remote-id type="github">FactoryBoy/factory_boy</remote-id>
- <remote-id type="pypi">factory_boy</remote-id>
- </upstream>
-</pkgmetadata>
-
diff --git a/dev-python/fake-useragent/Manifest b/dev-python/fake-useragent/Manifest
deleted file mode 100644
index 366fc02d7..000000000
--- a/dev-python/fake-useragent/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST fake-useragent-0.1.11.tar.gz 20989 BLAKE2B affa8cb9c6102076ed19429310ed870d2ebb6f3948ddd12508c80e27648bdcd502c3e5b04e836b0be4ac5e1cd6e400054d5a3d1d9d721298cfa1d9ad4161d6fd SHA512 f73e1348af2694469a22a4cc91e9a5d57cce33b969d016903fc7fb4f91375ea5b24a5835cff38181f53dd92794d5606f52822e06d43801c0442f2b389378b2d2
diff --git a/dev-python/fake-useragent/fake-useragent-0.1.11-r1.ebuild b/dev-python/fake-useragent/fake-useragent-0.1.11-r1.ebuild
deleted file mode 100644
index b8190cfd8..000000000
--- a/dev-python/fake-useragent/fake-useragent-0.1.11-r1.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-
-inherit distutils-r1
-
-DESCRIPTION="Up to date simple useragent faker with real world database"
-HOMEPAGE="
- https://github.com/hellysmile/fake-useragent
- https://pypi.org/project/fake-useragent
-"
-SRC_URI="https://github.com/hellysmile/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- dev-python/appdirs[${PYTHON_USEDEP}]
- dev-python/decorator[${PYTHON_USEDEP}]
- dev-python/ipdb[${PYTHON_USEDEP}]
- dev-python/ipython[${PYTHON_USEDEP}]
- dev-python/ipython_genutils[${PYTHON_USEDEP}]
- dev-python/mock[${PYTHON_USEDEP}]
- dev-python/packaging[${PYTHON_USEDEP}]
- dev-python/pexpect[${PYTHON_USEDEP}]
- dev-python/pickleshare[${PYTHON_USEDEP}]
- dev-python/pluggy[${PYTHON_USEDEP}]
- dev-python/prompt_toolkit[${PYTHON_USEDEP}]
- dev-python/ptyprocess[${PYTHON_USEDEP}]
- dev-python/py[${PYTHON_USEDEP}]
- dev-python/pygments[${PYTHON_USEDEP}]
- dev-python/pyparsing[${PYTHON_USEDEP}]
- dev-python/pytest[${PYTHON_USEDEP}]
- dev-python/scandir[${PYTHON_USEDEP}]
- dev-python/simplegeneric[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
- dev-python/traitlets[${PYTHON_USEDEP}]
- dev-python/wcwidth[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-
-RESTRICT="test"
-PROPERTIES="test_network"
-
-python_prepare_all() {
- # do not depend on pytest-cov
- sed -i -e '/addopts/d' pytest.ini || die
-
- distutils-r1_python_prepare_all
-}
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs --no-autodoc
diff --git a/dev-python/fake-useragent/metadata.xml b/dev-python/fake-useragent/metadata.xml
deleted file mode 100644
index b90481bc4..000000000
--- a/dev-python/fake-useragent/metadata.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-Features
-grabs up to date useragent from useragentstring.com
-randomize with real world statistic via w3schools.com
- </longdescription>
- <upstream>
- <remote-id type="github">hellysmile/fake-useragent</remote-id>
- <remote-id type="pypi">fake-useragent</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/faust-cchardet/Manifest b/dev-python/faust-cchardet/Manifest
new file mode 100644
index 000000000..c2a997aa7
--- /dev/null
+++ b/dev-python/faust-cchardet/Manifest
@@ -0,0 +1,3 @@
+DIST faust-cchardet-2.1.18.tar.gz 312626 BLAKE2B 33ffa2e4982218bbee72eb8028e15333563988ddb0d136f1e46acb810f005aab32ff7f58ee422d3a0a1348bdcfd2abfba549ed5467f9adc384f534b297ceb319 SHA512 0213a58e7c8104281e69a4fc8ffe90fc892efd783481d31a6b7aa812fe86534e15a209486b947b48e0063b5176f3aaebc9e702ab2e05d11151ba672a06aa3397
+DIST faust-cchardet-2.1.19.tar.gz 312664 BLAKE2B 9d07908d17a69268216777059c35569f5d15325c2371e2efd633e07c4de2e767ce12cbf70a53e70216510ceb752eda9bf9dce4b93f74fca60aa59ad1f739b1f4 SHA512 255122fc3cf67f752edb3a45718a2b2456f1b22a1fbec0efd417a404a4d15542a44e5d463eec2581ae34277df80621a5e20ce90bef99661c7a762b469e3b46aa
+DIST uchardet-bdb8a0376ddf5d3cab6397be0bad98dad106d77f.tar.gz 322644 BLAKE2B cd2bf0a7e6ad29b7641449fa7ea7eecda375ad59ebe04768df6824387d0e33cf7f543afefa972a1e369a0be8f064f87d8eddca5bc048c740d64af05f664ec30d SHA512 a7dd1e5d41484df22e1048a319b05f4dc9d917c91440eda557084049da08b0e7fc3b18f2531fc1418857cda94dfd0deea984728b2a9747e369804ed7137ed6bc
diff --git a/dev-python/faust-cchardet/faust-cchardet-2.1.18.ebuild b/dev-python/faust-cchardet/faust-cchardet-2.1.18.ebuild
new file mode 100644
index 000000000..bf9510785
--- /dev/null
+++ b/dev-python/faust-cchardet/faust-cchardet-2.1.18.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+GIT_SUBMODULES=(
+ "PyYoshi uchardet bdb8a0376ddf5d3cab6397be0bad98dad106d77f src/ext/uchardet"
+)
+submodule_uris() {
+ local g
+ for g in "${GIT_SUBMODULES[@]}"; do
+ g=(${g})
+ echo "https://github.com/${g[0]}/${g[1]}/archive/${g[2]}.tar.gz -> ${g[1]}-${g[2]}.tar.gz"
+ done
+}
+
+DESCRIPTION="universal character encoding detector"
+HOMEPAGE="https://github.com/faust-streaming/cChardet"
+SRC_URI="
+ https://github.com/faust-streaming/cChardet/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
+ $(submodule_uris)
+"
+
+S="${WORKDIR}/cChardet-${PV}"
+
+LICENSE="MPL-1.1"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="dev-python/cython"
+
+distutils_enable_tests pytest
+
+src_unpack() {
+ default
+
+ local g
+ for g in "${GIT_SUBMODULES[@]}"; do
+ g=(${g})
+ mv "${WORKDIR}/${g[1]}-${g[2]}"/* "${S}/${g[3]}" || die "could not move submodule ${g[2]}"
+ done
+}
diff --git a/dev-python/faust-cchardet/faust-cchardet-2.1.19.ebuild b/dev-python/faust-cchardet/faust-cchardet-2.1.19.ebuild
new file mode 100644
index 000000000..bf9510785
--- /dev/null
+++ b/dev-python/faust-cchardet/faust-cchardet-2.1.19.ebuild
@@ -0,0 +1,46 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+GIT_SUBMODULES=(
+ "PyYoshi uchardet bdb8a0376ddf5d3cab6397be0bad98dad106d77f src/ext/uchardet"
+)
+submodule_uris() {
+ local g
+ for g in "${GIT_SUBMODULES[@]}"; do
+ g=(${g})
+ echo "https://github.com/${g[0]}/${g[1]}/archive/${g[2]}.tar.gz -> ${g[1]}-${g[2]}.tar.gz"
+ done
+}
+
+DESCRIPTION="universal character encoding detector"
+HOMEPAGE="https://github.com/faust-streaming/cChardet"
+SRC_URI="
+ https://github.com/faust-streaming/cChardet/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz
+ $(submodule_uris)
+"
+
+S="${WORKDIR}/cChardet-${PV}"
+
+LICENSE="MPL-1.1"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="dev-python/cython"
+
+distutils_enable_tests pytest
+
+src_unpack() {
+ default
+
+ local g
+ for g in "${GIT_SUBMODULES[@]}"; do
+ g=(${g})
+ mv "${WORKDIR}/${g[1]}-${g[2]}"/* "${S}/${g[3]}" || die "could not move submodule ${g[2]}"
+ done
+}
diff --git a/dev-python/faust-cchardet/metadata.xml b/dev-python/faust-cchardet/metadata.xml
new file mode 100644
index 000000000..d860a2b57
--- /dev/null
+++ b/dev-python/faust-cchardet/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>smaniotto.nicola@gmail.com</email>
+ <name>Nicola Smaniotto</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">faust-streaming/cChardet</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/fchroot/Manifest b/dev-python/fchroot/Manifest
deleted file mode 100644
index 8b4e0d3ad..000000000
--- a/dev-python/fchroot/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST fchroot-0.1.2.tar.gz 8351 BLAKE2B 342d9fcd3df13ce0e6ef2d9ccefb66f98cd4c6cd24855bcbce2299f5a6896408a310020c85b09079778bb904476b8bb8728099a135ba4a499528acbfd578cc55 SHA512 b1cead02a25d980d42ca22bcde6c421d7ff3e6d6357f979d59286c870f3d726950a115b7e63c4e990ddcf078c58a9393271b9a756104fe539102070e4af7c77e
diff --git a/dev-python/fchroot/fchroot-0.1.2.ebuild b/dev-python/fchroot/fchroot-0.1.2.ebuild
deleted file mode 100644
index 8b08623ea..000000000
--- a/dev-python/fchroot/fchroot-0.1.2.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..10} )
-
-inherit distutils-r1
-
-DESCRIPTION="Franken-chroot tool. Chroot arm/64 arches into amd64/x86"
-HOMEPAGE="https://pypi.org/project/fchroot/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-SLOT="0"
-LICENSE="BSD-2"
-KEYWORDS="~amd64 ~x86"
-IUSE="+static-libs"
-
-RDEPEND="
- app-emulation/qemu[qemu_softmmu_targets_x86_64,qemu_softmmu_targets_aarch64,qemu_softmmu_targets_arm,static-user]
- dev-libs/glib[static-libs]
- sys-apps/attr[static-libs]
- sys-libs/zlib[static-libs]
- dev-libs/libpcre[static-libs]
-"
diff --git a/dev-python/ffmpeg-python/Manifest b/dev-python/ffmpeg-python/Manifest
deleted file mode 100644
index 3efba3996..000000000
--- a/dev-python/ffmpeg-python/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ffmpeg-python-0.2.0.tar.gz 21543 BLAKE2B ba16c57dfd8764f541ffbadf5fd62805877b5fbce230c9bcde230074c9b95b6d504587b5d98dc67f27b0d08deeddca4639506a2e97174924d130bb297d9d5f83 SHA512 9484a580d3f215fd8a26fa901b9487d80cb02717233d8932f5ecfab401af12e1d119f5ff991db8823aab7aaae54f21709d4d091ecb08c2f993ba1e0708ed88fa
diff --git a/dev-python/ffmpeg-python/ffmpeg-python-0.2.0.ebuild b/dev-python/ffmpeg-python/ffmpeg-python-0.2.0.ebuild
deleted file mode 100644
index c41179abe..000000000
--- a/dev-python/ffmpeg-python/ffmpeg-python-0.2.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python bindings for FFmpeg - with complex filtering support"
-HOMEPAGE="https://github.com/kkroening/ffmpeg-python"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-DEPEND="
- media-video/ffmpeg
-"
-RDEPEND="
- ${DEPEND}
-"
-
-python_prepare_all() {
- sed -e '/\<pytest-runner\>/d' -i setup.py
- distutils-r1_python_prepare_all
-}
diff --git a/dev-python/flask-restx/Manifest b/dev-python/flask-restx/Manifest
new file mode 100644
index 000000000..19db7fcf4
--- /dev/null
+++ b/dev-python/flask-restx/Manifest
@@ -0,0 +1 @@
+DIST flask-restx-1.3.0.tar.gz 400119 BLAKE2B 9f1056ed517eba9438cd29b67b621fdc46b63d3b8351dac8f7c11fc20bdea058f6b0ad5b1d732b0edb71e4fac16006535a7ec48e3a47e1aa7e261861b7fc37cb SHA512 6e1148e124fb84b486b799f7dc11dd627e8da43af89f51f603267d9e569c8517280fca7898309dbacb9213131419fa745725b7ffa5af40c17aaeeee0453f6146
diff --git a/dev-python/flask-restx/files/flask-restx-avoid-importlib_resources.patch b/dev-python/flask-restx/files/flask-restx-avoid-importlib_resources.patch
new file mode 100644
index 000000000..cda8a054f
--- /dev/null
+++ b/dev-python/flask-restx/files/flask-restx-avoid-importlib_resources.patch
@@ -0,0 +1,22 @@
+diff --git a/flask_restx/schemas/__init__.py b/flask_restx/schemas/__init__.py
+index 27b9866..4369737 100644
+--- a/flask_restx/schemas/__init__.py
++++ b/flask_restx/schemas/__init__.py
+@@ -7,7 +7,7 @@ and allows to validate specs against them.
+ import io
+ import json
+
+-import importlib_resources
++import importlib.resources
+
+ from collections.abc import Mapping
+ from jsonschema import Draft4Validator
+@@ -57,7 +57,7 @@ class LazySchema(Mapping):
+
+ def _load(self):
+ if not self._schema:
+- ref = importlib_resources.files(__name__) / self.filename
++ ref = importlib.resources.files(__name__) / self.filename
+
+ with io.open(ref) as infile:
+ self._schema = json.load(infile)
diff --git a/dev-python/flask-restx/files/flask-restx-fix-flask-compat.patch b/dev-python/flask-restx/files/flask-restx-fix-flask-compat.patch
new file mode 100644
index 000000000..759bb5f63
--- /dev/null
+++ b/dev-python/flask-restx/files/flask-restx-fix-flask-compat.patch
@@ -0,0 +1,147 @@
+diff --git a/flask_restx/api.py b/flask_restx/api.py
+index 5996dd59..bd0413dd 100644
+--- a/flask_restx/api.py
++++ b/flask_restx/api.py
+@@ -14,10 +14,6 @@
+ from flask import url_for, request, current_app
+ from flask import make_response as original_flask_make_response
+
+-try:
+- from flask.helpers import _endpoint_from_view_func
+-except ImportError:
+- from flask.scaffold import _endpoint_from_view_func
+ from flask.signals import got_request_exception
+
+ from jsonschema import RefResolver
+@@ -45,10 +41,13 @@
+ from .postman import PostmanCollectionV1
+ from .resource import Resource
+ from .swagger import Swagger
+-from .utils import default_id, camel_to_dash, unpack
++from .utils import default_id, camel_to_dash, unpack, import_check_view_func
+ from .representations import output_json
+ from ._http import HTTPStatus
+
++endpoint_from_view_func = import_check_view_func()
++
++
+ RE_RULES = re.compile("(<.*>)")
+
+ # List headers that should never be handled by Flask-RESTX
+@@ -850,7 +849,7 @@ def _blueprint_setup_add_url_rule_patch(
+ rule = blueprint_setup.url_prefix + rule
+ options.setdefault("subdomain", blueprint_setup.subdomain)
+ if endpoint is None:
+- endpoint = _endpoint_from_view_func(view_func)
++ endpoint = endpoint_from_view_func(view_func)
+ defaults = blueprint_setup.url_defaults
+ if "defaults" in options:
+ defaults = dict(defaults, **options.pop("defaults"))
+diff --git a/flask_restx/utils.py b/flask_restx/utils.py
+index 809a29b3..35dec2ae 100644
+--- a/flask_restx/utils.py
++++ b/flask_restx/utils.py
+@@ -1,4 +1,6 @@
+ import re
++import warnings
++import typing
+
+ from collections import OrderedDict
+ from copy import deepcopy
+@@ -20,6 +22,10 @@
+ )
+
+
++class FlaskCompatibilityWarning(DeprecationWarning):
++ pass
++
++
+ def merge(first, second):
+ """
+ Recursively merges two dictionaries.
+@@ -118,3 +124,43 @@ def unpack(response, default_code=HTTPStatus.OK):
+ return data, code or default_code, headers
+ else:
+ raise ValueError("Too many response values")
++
++
++def to_view_name(view_func: typing.Callable) -> str:
++ """Helper that returns the default endpoint for a given
++ function. This always is the function name.
++
++ Note: copy of simple flask internal helper
++ """
++ assert view_func is not None, "expected view func if endpoint is not provided."
++ return view_func.__name__
++
++
++def import_check_view_func():
++ """
++ Resolve import flask _endpoint_from_view_func.
++
++ Show warning if function cannot be found and provide copy of last known implementation.
++
++ Note: This helper method exists because reoccurring problem with flask function, but
++ actual method body remaining the same in each flask version.
++ """
++ import importlib.metadata
++
++ flask_version = importlib.metadata.version("flask").split(".")
++ try:
++ if flask_version[0] == "1":
++ from flask.helpers import _endpoint_from_view_func
++ elif flask_version[0] == "2":
++ from flask.scaffold import _endpoint_from_view_func
++ elif flask_version[0] == "3":
++ from flask.sansio.scaffold import _endpoint_from_view_func
++ else:
++ warnings.simplefilter("once", FlaskCompatibilityWarning)
++ _endpoint_from_view_func = None
++ except ImportError:
++ warnings.simplefilter("once", FlaskCompatibilityWarning)
++ _endpoint_from_view_func = None
++ if _endpoint_from_view_func is None:
++ _endpoint_from_view_func = to_view_name
++ return _endpoint_from_view_func
+diff --git a/tests/test_utils.py b/tests/test_utils.py
+index d98d68d0..fe3a1adb 100644
+--- a/tests/test_utils.py
++++ b/tests/test_utils.py
+@@ -98,3 +98,14 @@ def test_value_headers_default_code(self):
+ def test_too_many_values(self):
+ with pytest.raises(ValueError):
+ utils.unpack((None, None, None, None))
++
++
++class ToViewNameTest(object):
++ def test_none(self):
++ with pytest.raises(AssertionError):
++ _ = utils.to_view_name(None)
++
++
++class ImportCheckViewFuncTest(object):
++ def test_callable(self):
++ assert callable(utils.import_check_view_func())
+
+From 13ac54e4ba513c01ec8e4a23b4e88b7b555cf2f1 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Trval?= <trval@kajot.cz>
+Date: Fri, 6 Oct 2023 15:46:13 +0200
+Subject: [PATCH 2/2] modify: include new import_check_view_func in
+ utils.__all__ to keep nice static checks
+
+---
+ flask_restx/utils.py | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/flask_restx/utils.py b/flask_restx/utils.py
+index 35dec2ae..367527a5 100644
+--- a/flask_restx/utils.py
++++ b/flask_restx/utils.py
+@@ -19,6 +19,7 @@
+ "not_none",
+ "not_none_sorted",
+ "unpack",
++ "import_check_view_func",
+ )
+
+
diff --git a/dev-python/flask-restx/flask-restx-1.3.0.ebuild b/dev-python/flask-restx/flask-restx-1.3.0.ebuild
new file mode 100644
index 000000000..3acfd7621
--- /dev/null
+++ b/dev-python/flask-restx/flask-restx-1.3.0.ebuild
@@ -0,0 +1,50 @@
+# 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_{11,12})
+inherit distutils-r1
+
+DESCRIPTION="Framework API development with Flask"
+HOMEPAGE="https://flask-restx.readthedocs.io"
+SRC_URI="https://github.com/python-restx/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+RDEPEND="
+ dev-python/aniso8601[${PYTHON_USEDEP}]
+ dev-python/flask[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+"
+
+DEPEND="${RDEPEND}
+ test? (
+ dev-python/blinker[${PYTHON_USEDEP}]
+ dev-python/Faker[${PYTHON_USEDEP}]
+ dev-python/pytest-flask[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/tzlocal[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-avoid-importlib_resources.patch" )
+
+distutils_enable_tests pytest
+
+python_test() {
+ skip_tests=" \
+ not ReqParseTest and \
+ not EmailTest and \
+ not URLTest and \
+ not LoggingTest"
+
+ epytest tests/test_*.py -k "${skip_tests}"
+}
diff --git a/dev-python/flask-restx/metadata.xml b/dev-python/flask-restx/metadata.xml
new file mode 100644
index 000000000..017fe6ee0
--- /dev/null
+++ b/dev-python/flask-restx/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">python-restx/flask-restx</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/font-v/Manifest b/dev-python/font-v/Manifest
deleted file mode 100644
index e06e1db13..000000000
--- a/dev-python/font-v/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST font-v-1.0.5.tar.gz 4270200 BLAKE2B b94c4e0bff4c07efd50803068e0fc061c910b24f8ed2e70ae1b92d06d69db9d707b6665fdc2179eb80ae814c3b2ad913f58b1c5d4a7b9f81b40269cbb505cfb7 SHA512 070415a72deb8a35804ee548f745edf399fe01ae279ea9ca88f0d1231af77a37f38456726db73e8df26d324bd8e0159b2978a668984d9f8cc24794e2a045cb73
diff --git a/dev-python/font-v/font-v-1.0.5.ebuild b/dev-python/font-v/font-v-1.0.5.ebuild
deleted file mode 100644
index 7f89b12ad..000000000
--- a/dev-python/font-v/font-v-1.0.5.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/source-foundry/font-v/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-DESCRIPTION="Font version string reporting and modification library"
-HOMEPAGE="https://github.com/source-foundry/font-v"
-LICENSE="MIT"
-SLOT="0"
-
-RDEPEND="
- >=dev-python/fonttools-4.17[${PYTHON_USEDEP}]
- >=dev-python/GitPython-3.1.11[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-BDEPEND="test? ( dev-vcs/git )"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
-
-python_test() {
- #it want a git repo
- git init || die
- git config --global user.email "you@example.com" || die
- git config --global user.name "Your Name" || die
- git add . || die
- git commit -m 'init' || die
-
- #pure madness
- #https://github.com/source-foundry/font-v/blob/e6746e4a045c99e56af661918c96259b1f444ed4/tests/test_utilities.py#L34
- sed -e "s|\"font-v\"|\"${PWD##*/}\"|g" -i "tests/test_utilities.py" || die
- epytest -vv
-}
diff --git a/dev-python/font-v/metadata.xml b/dev-python/font-v/metadata.xml
deleted file mode 100644
index d4baa81fa..000000000
--- a/dev-python/font-v/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/source-foundry/font-v/issues</bugs-to>
- <remote-id type="github">source-foundry/font-v</remote-id>
- <remote-id type="pypi">font-v</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/fontMath/Manifest b/dev-python/fontMath/Manifest
deleted file mode 100644
index 770c6a1af..000000000
--- a/dev-python/fontMath/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST fontMath-0.6.0.tar.gz 29430 BLAKE2B e89200df9c54d35662103bcb260593da83339af06af4ce5906421c5d0c533097d82562531f5bea70286b07ffc1b27707c46f7bf8bb3956fdf23998278696d541 SHA512 20bbed0242d7bf4dddf44f1c2c1333f5019a5bc78025e6bcc8ede80cc44d96acc48b5ef1244fb22fe09217ed7123fff591fab2a72c2484e19ee202c20ad34f56
-DIST fontMath-0.8.1.tar.gz 29657 BLAKE2B b2a85d4fbce46b381488815df363c13c2d60f4527160bbdd0591c852df606bd1ada4945ec22935907b9b59a0f729a9c51fe2fa4f9531c3cf406bde11159193a2 SHA512 815f5521099dc55ceb215f0f7ea2dded7f8586a6b5ac8c7c99bd87f4f837feb21768c46473f21aa60ad8b0e85bbdabf2bf246f0c8fabab0b4a2d63b5d052f6a8
diff --git a/dev-python/fontMath/fontMath-0.6.0.ebuild b/dev-python/fontMath/fontMath-0.6.0.ebuild
deleted file mode 100644
index 3a3e653c3..000000000
--- a/dev-python/fontMath/fontMath-0.6.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/robotools/fontMath/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-DESCRIPTION="A collection of objects that implement fast font math"
-HOMEPAGE="https://github.com/robotools/fontMath"
-LICENSE="MIT"
-SLOT="0"
-
-RDEPEND="
- ${PYTHON_DEPS}
- >=dev-python/fonttools-4.9[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-
-distutils_enable_tests pytest
diff --git a/dev-python/fontMath/fontMath-0.8.1.ebuild b/dev-python/fontMath/fontMath-0.8.1.ebuild
deleted file mode 100644
index 7a21cddc0..000000000
--- a/dev-python/fontMath/fontMath-0.8.1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/robotools/fontMath/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-DESCRIPTION="A collection of objects that implement fast font math"
-HOMEPAGE="https://github.com/robotools/fontMath"
-LICENSE="MIT"
-SLOT="0"
-
-RDEPEND="
- ${PYTHON_DEPS}
- >=dev-python/fonttools-4.9[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-
-distutils_enable_tests pytest
-
-pkg_setup() {
- export SETUPTOOLS_SCM_PRETEND_VERSION="${PV%_*}"
-}
diff --git a/dev-python/fontMath/metadata.xml b/dev-python/fontMath/metadata.xml
deleted file mode 100644
index 0b3c9b78a..000000000
--- a/dev-python/fontMath/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/robotools/fontMath/issues</bugs-to>
- <remote-id type="github">robotools/fontMath</remote-id>
- <remote-id type="pypi">fontMath</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/fontParts/Manifest b/dev-python/fontParts/Manifest
deleted file mode 100644
index 4cccf85f2..000000000
--- a/dev-python/fontParts/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST fontParts-0.9.10.tar.gz 427443 BLAKE2B 21f6aa33e6034ef31f13ef6fc5224d3e5b2af039298191a1498b6d2fab0b58bdaa76971120893ab6e9478d6e1d59b1c6a08ec48ef19d42e8848e71366c86488a SHA512 c08e88d400f6e7f3fc11374830e43c2262dfbd9a48e5205703039274bdd69102c16dc65f23fba7196b28dac3436cd052478e5e8a5435c6d081ce80c2daababea
diff --git a/dev-python/fontParts/fontParts-0.9.10.ebuild b/dev-python/fontParts/fontParts-0.9.10.ebuild
deleted file mode 100644
index c1698a672..000000000
--- a/dev-python/fontParts/fontParts-0.9.10.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/robotools/fontParts/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-DESCRIPTION="An API for interacting with the parts of fonts"
-HOMEPAGE="https://github.com/robotools/fontParts"
-LICENSE="MIT"
-SLOT="0"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- ${PYTHON_DEPS}
- >=dev-python/booleanOperations-0.9.0[${PYTHON_USEDEP}]
- >=dev-python/defcon-0.8.1[${PYTHON_USEDEP}]
- >=dev-python/fontMath-0.6.0[${PYTHON_USEDEP}]
- >=dev-python/fonttools-4.24.4[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-BDEPEND="test? ( dev-python/fontPens[${PYTHON_USEDEP}] )"
-
-pkg_setup() {
- export SETUPTOOLS_SCM_PRETEND_VERSION="${PV%_*}"
-}
-
-python_test() {
- "${EPYTHON}" Lib/fontParts/fontshell/test.py -v || die "Tests failed with ${EPYTHON}"
-}
diff --git a/dev-python/fontParts/metadata.xml b/dev-python/fontParts/metadata.xml
deleted file mode 100644
index f3fda0a51..000000000
--- a/dev-python/fontParts/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/robotools/fontParts/issues</bugs-to>
- <remote-id type="github">robotools/fontParts</remote-id>
- <remote-id type="pypi">fontParts</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/fontPens/Manifest b/dev-python/fontPens/Manifest
deleted file mode 100644
index 332d1c315..000000000
--- a/dev-python/fontPens/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST fontPens-0.2.4.tar.gz 17680 BLAKE2B 82577a022f020e255a75bb8317a2f804467626095374103fbf091ba96773d287dcc7af1ef641e200ae8abef2d07cbe7b1f1868ca8b9934d9c77c83e51ba70870 SHA512 cbef24fbf421f4b09e1d9b474500e748f424ef1df2d9871424761e6bc0ac68a5b13484cf933f6fdac390f0f5e66573a1bcfc321b04de3e19e8ae9923da6768bb
diff --git a/dev-python/fontPens/fontPens-0.2.4.ebuild b/dev-python/fontPens/fontPens-0.2.4.ebuild
deleted file mode 100644
index a2220b8c3..000000000
--- a/dev-python/fontPens/fontPens-0.2.4.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/robotools/fontPens/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-DESCRIPTION="A collection of classes implementing the pen protocol for manipulating glyphs"
-HOMEPAGE="https://github.com/robotools/fontPens"
-LICENSE="BSD"
-SLOT="0"
-
-RDEPEND=">=dev-python/fonttools-3.32[${PYTHON_USEDEP}]"
-DEPEND="${RDEPEND}"
-BDEPEND="
- test? (
- dev-python/fontParts[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/fontPens/metadata.xml b/dev-python/fontPens/metadata.xml
deleted file mode 100644
index 2ccee4c34..000000000
--- a/dev-python/fontPens/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/robotools/fontPens/issues</bugs-to>
- <remote-id type="github">robotools/fontPens</remote-id>
- <remote-id type="pypi">fontPens</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/funcsigs/Manifest b/dev-python/funcsigs/Manifest
new file mode 100644
index 000000000..4c7b538f7
--- /dev/null
+++ b/dev-python/funcsigs/Manifest
@@ -0,0 +1 @@
+DIST funcsigs-0.4.gh.tar.gz 24832 BLAKE2B c166585ce31e5ef08b8456c4a2e82f5255c494aa212f7364e752faab38ede9a2315a80c82f2fe3db325af53e3824a6fc3c5f23ed2b2101c7fd38114cdd5ba3ab SHA512 0a5d2a2eca954344b0fc5d4de6457bd191097faf8fe6c38097953fb576de8a59d9573426b7da6fe40bba5205f73e909294bc4659971b615b84701a7ad4ba0d25
diff --git a/dev-python/funcsigs/funcsigs-0.4.ebuild b/dev-python/funcsigs/funcsigs-0.4.ebuild
new file mode 100644
index 000000000..f224bf015
--- /dev/null
+++ b/dev-python/funcsigs/funcsigs-0.4.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python function signatures package for Python 2.6, 2.7 and 3.2+"
+HOMEPAGE="https://github.com/aliles/funcsigs https://pypi.org/project/funcsigs"
+SRC_URI="https://github.com/aliles/funcsigs/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests pytest
diff --git a/dev-python/funcsigs/metadata.xml b/dev-python/funcsigs/metadata.xml
new file mode 100644
index 000000000..a1579e929
--- /dev/null
+++ b/dev-python/funcsigs/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <remote-id type="pypi">funcsigs</remote-id>
+ <remote-id type="github">aliles/funcsigs</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/futurist/Manifest b/dev-python/futurist/Manifest
deleted file mode 100644
index 33baaef09..000000000
--- a/dev-python/futurist/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST futurist-2.3.0.tar.gz 42993 BLAKE2B ace10473ee65dedfa33f021437e6d2e974e7e9acd7eb5c6ae6955b133d74376d0bc5e966a8db502f17ff1825abaad1f6b583c6a21dcdd33d87ed4063d35a4638 SHA512 fa12314ce1bc12ccb7d8dd0e99a76a63dbd6a1c6560ca976eacb782f2c28a6003aee820d8ea745b59d35280b047e67563b046c761737d76fefb5928fdfba20e9
diff --git a/dev-python/futurist/futurist-2.3.0.ebuild b/dev-python/futurist/futurist-2.3.0.ebuild
deleted file mode 100644
index d6854a2b6..000000000
--- a/dev-python/futurist/futurist-2.3.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Useful additions to futures, from the future"
-HOMEPAGE="https://pypi.org/project/futurist/ http://docs.openstack.org/developer/futurist"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-DEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/futurist/metadata.xml b/dev-python/futurist/metadata.xml
deleted file mode 100644
index 5b3339b66..000000000
--- a/dev-python/futurist/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">futurist</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/gbinder/Manifest b/dev-python/gbinder/Manifest
new file mode 100644
index 000000000..95289ea83
--- /dev/null
+++ b/dev-python/gbinder/Manifest
@@ -0,0 +1 @@
+DIST gbinder-1.1.2.tar.gz 22772 BLAKE2B c5b3ae434422afc761e9e9d63f86ab9c89b6b2b96b98f7d8cde185de5c2349a7a42ac2a9355fabc0c412d1eb580c7d305056d2546dd148b558c9154c76127c41 SHA512 6f076a5cb265eed193d2ac2623921e76ced923230ca2131460efea941182f26b770d657f5155f6a29fa54a314f6dc62a8d5b96d14ee90a359389e60318a38b71
diff --git a/dev-python/gbinder/files/gbinder-1.1.1-setuptools.patch b/dev-python/gbinder/files/gbinder-1.1.1-setuptools.patch
new file mode 100644
index 000000000..94bda6295
--- /dev/null
+++ b/dev-python/gbinder/files/gbinder-1.1.1-setuptools.patch
@@ -0,0 +1,37 @@
+From 32cfbabe5ed37815358cc3515ce6551b6b7b87ae Mon Sep 17 00:00:00 2001
+From: Herrie <Github.com@herrie.org>
+Date: Sat, 23 Jul 2022 20:38:22 +0200
+Subject: [PATCH] setup.py: Migrate away from deprecated distutils.core to
+ setuptools
+
+distutils will be removed in Python 3.12, but already gives issues with 3.10 as well.
+
+/mnt/5ba5d474-0b2d-49d6-a5a6-9de20c3ac967/kirkstone/webos-ports/tmp-glibc/work/core2-64-webos-linux/python3-gbinder/1.0.0+gitAUTOINC+da16278f0d-r0/git/setup.py:2: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
+ from distutils.core import setup, Extension
+Compiling gbinder.pyx because it changed.
+[1/1] Cythonizing gbinder.pyx
+usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
+ or: setup.py --help [cmd1 cmd2 ...]
+ or: setup.py --help-commands
+ or: setup.py cmd --help
+
+error: invalid command 'bdist_wheel'
+ERROR: 'python3 setup.py bdist_wheel sdist --cython' execution failed.
+WARNING: exit code 1 from a shell command.
+
+Signed-off-by: Herman van Hazendonk <github.com@herrie.org>
+---
+ setup.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/setup.py b/setup.py
+index ed2b1ed..6060f84 100644
+--- a/setup.py
++++ b/setup.py
+@@ -1,5 +1,5 @@
+ import sys, subprocess
+-from distutils.core import setup, Extension
++from setuptools import setup, Extension
+
+
+ def pkgconfig(package, kw):
diff --git a/dev-python/gbinder/gbinder-1.1.2-r1.ebuild b/dev-python/gbinder/gbinder-1.1.2-r1.ebuild
new file mode 100644
index 000000000..448486cbc
--- /dev/null
+++ b/dev-python/gbinder/gbinder-1.1.2-r1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+DISTUTILS_USE_PEP517="setuptools"
+DISTUTILS_EXT=1
+
+inherit distutils-r1
+
+if [[ ${PV} != *9999* ]]; then
+ MY_PN="${PN}-python"
+ MY_P="${MY_PN}-${PV}"
+ S="${WORKDIR}/${MY_P}"
+ SRC_URI="https://github.com/erfanoabdi/gbinder-python/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+else
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/erfanoabdi/gbinder-python.git"
+fi
+
+DESCRIPTION="Python bindings for libgbinder"
+HOMEPAGE="https://github.com/erfanoabdi/gbinder-python"
+LICENSE="GPL-3"
+SLOT="0"
+
+DEPEND="
+ dev-libs/gbinder
+ dev-libs/libglibutil
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ dev-python/cython[${PYTHON_USEDEP}]
+"
+
+PATCHES=(
+ "${FILESDIR}"/gbinder-1.1.1-setuptools.patch
+)
+
+python_configure_all() {
+ DISTUTILS_ARGS=( --cython )
+}
diff --git a/dev-python/gbinder/gbinder-9999.ebuild b/dev-python/gbinder/gbinder-9999.ebuild
new file mode 100644
index 000000000..448486cbc
--- /dev/null
+++ b/dev-python/gbinder/gbinder-9999.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+DISTUTILS_USE_PEP517="setuptools"
+DISTUTILS_EXT=1
+
+inherit distutils-r1
+
+if [[ ${PV} != *9999* ]]; then
+ MY_PN="${PN}-python"
+ MY_P="${MY_PN}-${PV}"
+ S="${WORKDIR}/${MY_P}"
+ SRC_URI="https://github.com/erfanoabdi/gbinder-python/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+else
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/erfanoabdi/gbinder-python.git"
+fi
+
+DESCRIPTION="Python bindings for libgbinder"
+HOMEPAGE="https://github.com/erfanoabdi/gbinder-python"
+LICENSE="GPL-3"
+SLOT="0"
+
+DEPEND="
+ dev-libs/gbinder
+ dev-libs/libglibutil
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ virtual/pkgconfig
+ dev-python/cython[${PYTHON_USEDEP}]
+"
+
+PATCHES=(
+ "${FILESDIR}"/gbinder-1.1.1-setuptools.patch
+)
+
+python_configure_all() {
+ DISTUTILS_ARGS=( --cython )
+}
diff --git a/dev-python/gbinder/metadata.xml b/dev-python/gbinder/metadata.xml
new file mode 100644
index 000000000..67956617a
--- /dev/null
+++ b/dev-python/gbinder/metadata.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>denis7774@gmail.com</email>
+ <name>Denis Reva</name>
+ <description>rarogcmex</description>
+ </maintainer>
+ <longdescription lang="en">
+ Cython extension module for gbinder
+ Prerequisites
+ libgbinder
+ libglibutil
+ pkgconf
+ For development, you will also need Cython:
+
+ pip install cython
+ Description
+ There are two Cython files: cgbinder.pxd describing the C++ API of the libgbinder library, and gbinder.pyx describing classes that will be visible from Python user code. The .pyx imports .pxd to learn about C functions available to be called.
+
+ There is also setup.py file. This file describes how to build the extension module, using distutils. In there, we specify the library to link with as libraries=['gbinder']. The gbinder stands for libgbinder.so that we previously installed.
+
+ There are two options to build the package:
+
+ One, use Cython's cythonize() function to generate a .c file from the .pyx one, and then compile it against the libgbinder.so library.
+ Two, if the .c is already provided, just compile it - no Cython required!
+ Development build
+ For development, use option 1 by providing --cython flag:
+
+ python setup.py build_ext --inplace --cython
+ The result will be a .so shared library named like gbinder.cpython-38-x86_64-linux-gnu.so. build_ext means we're building a C++ extension. --inplace means to put it in the current directory. If you run python from current directory, you'll be able to import gbinder.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">erfanoabdi/gbinder-python</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/gemcall/Manifest b/dev-python/gemcall/Manifest
new file mode 100644
index 000000000..2b4e45f43
--- /dev/null
+++ b/dev-python/gemcall/Manifest
@@ -0,0 +1,2 @@
+DIST gemcall-0.9.1.tar.gz 4758 BLAKE2B 7ad4bb54fa4cc62f365cd4fd4b5b0fbe3c3b500a9833bc765fc5813bee3e50442573ac28a22dc68d978061826868de589bc7601625c4f7ddd6dcde1e1b50b14f SHA512 e418a77e6896361b6f632e121d544ed5e7ce8ccd93c18dab51d7a2e6771f34031729c829d04193ecc1bafa70b7bb0de5a3a2d2e0856177be3fbb6b7c6c69022e
+DIST gemcall-0.9.2.tar.gz 4778 BLAKE2B e846cac6c6fe4957e2222d7cfbdd07a65588b02e988f09654e12f56f7f9f93d54cfff237ac4c29d77aa3ebc86122fbd202eb4e18fd5cdaa3f3bdc2b099cca6e3 SHA512 9c65a97557f4f536c7146ea19f8f826bfe8e08986f9adf1add6026ae4f1a85d8845efc35eccdb84015a46426c5906ee2e9f76bd18432f5d0e17fc491b1585ed0
diff --git a/dev-python/gemcall/gemcall-0.9.1.ebuild b/dev-python/gemcall/gemcall-0.9.1.ebuild
new file mode 100644
index 000000000..7d17c0cea
--- /dev/null
+++ b/dev-python/gemcall/gemcall-0.9.1.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="A library and CLI tool for making gemini requests"
+HOMEPAGE="https://notabug.org/tinyrabbit/gemcall/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/pycryptodome[${PYTHON_USEDEP}]"
diff --git a/dev-python/gemcall/gemcall-0.9.2.ebuild b/dev-python/gemcall/gemcall-0.9.2.ebuild
new file mode 100644
index 000000000..7d17c0cea
--- /dev/null
+++ b/dev-python/gemcall/gemcall-0.9.2.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="A library and CLI tool for making gemini requests"
+HOMEPAGE="https://notabug.org/tinyrabbit/gemcall/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/pycryptodome[${PYTHON_USEDEP}]"
diff --git a/dev-python/gemcall/metadata.xml b/dev-python/gemcall/metadata.xml
new file mode 100644
index 000000000..8d43f302b
--- /dev/null
+++ b/dev-python/gemcall/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <maintainer>
+ <name>Björn Wärmedal</name>
+ <email>bjorn.warmedal@gmail.com</email>
+ </maintainer>
+ <remote-id type="pypi">gemcall</remote-id>
+ </upstream>
+ <!-- maintainer-needed -->
+</pkgmetadata>
diff --git a/dev-python/geopy/Manifest b/dev-python/geopy/Manifest
deleted file mode 100644
index 1a545734b..000000000
--- a/dev-python/geopy/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST geopy-2.1.0.tar.gz 280382 BLAKE2B 061c4f5fee8ce50690df442f431866630b6538831191b2b357ee387133d098e6aa69136ef4f11b9b627e52a8610a22438463c7e1fc5c2b193543a666ddc955b0 SHA512 6d369412f7c685cda7195589341fbd8f57564fa888fa753de266a356627125f971212afbdd7253e16df90870fbfe3faab63dfb898928d9622c6aa8654ec6fe74
diff --git a/dev-python/geopy/geopy-2.1.0.ebuild b/dev-python/geopy/geopy-2.1.0.ebuild
deleted file mode 100644
index 5419da488..000000000
--- a/dev-python/geopy/geopy-2.1.0.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="A Geocoding Toolbox for Python"
-HOMEPAGE="
- https://geopy.readthedocs.io
- https://github.com/geopy/geopy
- https://pypi.org/project/geopy
-"
-SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND=">=sci-geosciences/GeographicLib-1.51-r1[python,${PYTHON_USEDEP}]"
-BDEPEND="
- test? (
- dev-python/async_generator[${PYTHON_USEDEP}]
- dev-python/pytest-aiohttp[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs \
- dev-python/sphinx-issues \
- dev-python/sphinx_rtd_theme
-
-python_test() {
- epytest \
- --deselect test/test_adapters.py::test_not_available_adapters_raise \
- --deselect test/test_adapters.py::test_geocoder_constructor_uses_https_proxy \
- --deselect test/test_adapters.py::test_geocoder_https_proxy_auth_is_respected \
- --deselect test/test_adapters.py::test_ssl_context_with_proxy_is_respected \
- --deselect test/test_adapters.py::test_ssl_context_without_proxy_is_respected[URLLibAdapter] \
- --deselect test/test_adapters.py::test_ssl_context_without_proxy_is_respected[RequestsAdapter] \
- --deselect test/geocoders/algolia.py \
- --deselect test/geocoders/arcgis.py \
- --deselect test/geocoders/azure.py \
- --deselect test/geocoders/baidu.py \
- --deselect test/geocoders/banfrance.py \
- --deselect test/geocoders/bing.py::TestBing \
- --deselect test/geocoders/databc.py \
- --deselect test/geocoders/geocodeearth.py \
- --deselect test/geocoders/geocodefarm.py \
- --deselect test/geocoders/geolake.py::TestGeolake \
- --deselect test/geocoders/geonames.py::TestGeoNames \
- --deselect test/geocoders/geonames.py::TestGeoNamesInvalidAccount \
- --deselect test/geocoders/googlev3.py \
- --deselect test/geocoders/here.py::TestHereApiKey \
- --deselect test/geocoders/here.py::TestHereLegacyAuth \
- --deselect test/geocoders/ignfrance.py \
- --deselect test/geocoders/mapbox.py \
- --deselect test/geocoders/mapquest.py \
- --deselect test/geocoders/maptiler.py \
- --deselect test/geocoders/nominatim.py \
- --deselect test/geocoders/opencage.py::TestOpenCage \
- --deselect test/geocoders/openmapquest.py::TestOpenMapQuest \
- --deselect test/geocoders/pelias.py \
- --deselect test/geocoders/photon.py \
- --deselect test/geocoders/pickpoint.py \
- --deselect test/geocoders/smartystreets.py::TestLiveAddress::test_geocode \
- --deselect test/geocoders/tomtom.py \
- --deselect test/geocoders/what3words.py \
- --deselect test/geocoders/yandex.py
-}
diff --git a/dev-python/geopy/metadata.xml b/dev-python/geopy/metadata.xml
deleted file mode 100644
index 39924c6ac..000000000
--- a/dev-python/geopy/metadata.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-geopy is a Python 2 and 3 client for several popular geocoding web services.
-
-geopy makes it easy for Python developers to locate the coordinates of addresses, cities, countries, and landmarks across the globe using third-party geocoders and other data sources.
-
-geopy includes geocoder classes for the OpenStreetMap Nominatim, Google Geocoding API (V3), and many other geocoding services. The full list is available on the Geocoders doc section. Geocoder classes are located in geopy.geocoders.
- </longdescription>
- <upstream>
- <remote-id type="github">geopy/geopy</remote-id>
- <remote-id type="pypi">geopy</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/gevent/Manifest b/dev-python/gevent/Manifest
new file mode 100644
index 000000000..3f18a7f86
--- /dev/null
+++ b/dev-python/gevent/Manifest
@@ -0,0 +1 @@
+DIST gevent-23.9.1.tar.gz 5847705 BLAKE2B b1d2f95728e545e4970235c7cd352f2a3ed742f01a4f2421423d6e9fd36d7fadae5ffe1dba326535501ec8179c36d83ec5e5c4aeced70673921db85fc9e1b042 SHA512 c0600a5f9e50040009c3467ad802dda8a48422dca4e781acc9ca3428446399932da2f07d7345936ef634783611cf664d219f614980ed6b936f4a510e56ea753c
diff --git a/dev-python/gevent/gevent-23.9.1.ebuild b/dev-python/gevent/gevent-23.9.1.ebuild
new file mode 100644
index 000000000..f5ed05f50
--- /dev/null
+++ b/dev-python/gevent/gevent-23.9.1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=standalone
+PYTHON_REQ_USE="ssl(+),threads(+)"
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Coroutine-based network library"
+HOMEPAGE="https://www.gevent.org/ https://pypi.org/project/gevent/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+IUSE="monitor recommended"
+
+RDEPEND="
+ >=dev-python/greenlet-3.0[${PYTHON_USEDEP}]
+ dev-python/zope-event[${PYTHON_USEDEP}]
+ dev-python/zope-interface[${PYTHON_USEDEP}]
+ monitor? ( >=dev-python/psutil-5.7.0[${PYTHON_USEDEP}] )
+ recommended? (
+ >=dev-python/cffi-1.12.2[${PYTHON_USEDEP}]
+ >=dev-python/psutil-5.7.0[${PYTHON_USEDEP}]
+ )
+"
+BDEPEND="${RDEPEND}"
diff --git a/dev-python/gevent/metadata.xml b/dev-python/gevent/metadata.xml
new file mode 100644
index 000000000..b22509850
--- /dev/null
+++ b/dev-python/gevent/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">gevent</remote-id>
+ <remote-id type="github">gevent/gevent</remote-id>
+ <doc>https://www.gevent.org/</doc>
+ </upstream>
+ <use>
+ <flag name="monitor">Enhancements to gevent’s self-monitoring capabilities. This includes the psutil library which is needed to monitor memory usage.</flag>
+ <flag name="recommended">A shortcut for installing suggested extras together. This includes the non-test extras defined here, plus additions that improve gevent’s operation on certain platforms (for example, in the past, it has included backports of newer APIs).</flag>
+ </use>
+</pkgmetadata>
diff --git a/dev-python/github-sublee-glicko2/Manifest b/dev-python/github-sublee-glicko2/Manifest
deleted file mode 100644
index 053b13467..000000000
--- a/dev-python/github-sublee-glicko2/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST github-sublee-glicko2-0_pre20191010.tar.gz 4684 BLAKE2B c21e3be87df4b3bff0b1ba6bece96587ad26807beab882c38829b782eb99f1e165013b403c6a690ec591daa1ea9d55bff876eb802af944ee25222e28e787146c SHA512 7665c3b81023a01ba2d835c3a0a4aedf5a6becff909f554a25c69537289f6ea75820d759035d540b297cd6414c6d465f79a7ef21a91f9f7e2cf394241811c89d
diff --git a/dev-python/github-sublee-glicko2/github-sublee-glicko2-0_pre20191010-r1.ebuild b/dev-python/github-sublee-glicko2/github-sublee-glicko2-0_pre20191010-r1.ebuild
deleted file mode 100644
index e3ed16020..000000000
--- a/dev-python/github-sublee-glicko2/github-sublee-glicko2-0_pre20191010-r1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-PYTHON_COMPAT=( python3_{7,8,9} pypy3 )
-DISTUTILS_USE_SETUPTOOLS="rdepend"
-inherit distutils-r1
-
-COMMIT="99285aa6b5250b91a837b842dc61b2a96007f3c5"
-MYPN="glicko2"
-DESCRIPTION="An implementation of the Glicko-2 rating system for Python"
-HOMEPAGE="https://github.com/sublee/glicko2"
-SRC_URI="https://github.com/sublee/glicko2/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-
-DEPEND="test? ( dev-python/pytest[${PYTHON_USEDEP}] )"
-RDEPEND="!dev-python/glicko2[${PYTHON_USEDEP}]"
-
-S="${WORKDIR}/${MYPN}-${COMMIT}"
-
-distutils_enable_tests setup.py
-
-src_prepare() {
- sed -i -e "s/distribute/setuptools/g" setup.py
- eapply_user
-}
diff --git a/dev-python/github-sublee-glicko2/metadata.xml b/dev-python/github-sublee-glicko2/metadata.xml
deleted file mode 100644
index b1a092242..000000000
--- a/dev-python/github-sublee-glicko2/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <remote-id type="github">sublee/glicko2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/glance_store/Manifest b/dev-python/glance_store/Manifest
deleted file mode 100644
index af2fbb666..000000000
--- a/dev-python/glance_store/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST glance_store-2.3.0.tar.gz 212933 BLAKE2B 69f54fbb44de0e6e9608e38cf0b43ee6fb7df7758d19b6dee6f15fb00a25ce885610ef9c779d2138c08f5d3a28760121ef66edade0b23619685d5f985433247f SHA512 59499c1fa8b596faba0918219b76e5e7d51f6c7e94d14b99f28b2a9f87b456e638bd42fe33124ae9507043a975db6e5b5762e5979258db35b772f41a08d59be6
diff --git a/dev-python/glance_store/glance_store-2.3.0.ebuild b/dev-python/glance_store/glance_store-2.3.0.ebuild
deleted file mode 100644
index 36beee1e7..000000000
--- a/dev-python/glance_store/glance_store-2.3.0.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="A library for glance"
-HOMEPAGE="https://github.com/openstack/glance_store"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="cinder swift vmware"
-
-DEPEND=">=dev-python/pbr-1.8[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/pbr-1.8[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-1.19.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-concurrency-3.26.0[${PYTHON_USEDEP}]
- >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
- >=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-3.2.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/python-keystoneclient-3.8.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- cinder? (
- >=dev-python/python-cinderclient-4.1.0[${PYTHON_USEDEP}]
- >=dev-python/os-brick-2.6.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-rootwrap-5.8.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-privsep-1.23.0[${PYTHON_USEDEP}]
- )
- swift? (
- >=dev-python/httplib2-0.9.1[${PYTHON_USEDEP}]
- >=dev-python/python-swiftclient-3.2.0[${PYTHON_USEDEP}]
- )
- vmware? ( >=dev-python/oslo-vmware-2.17.0[${PYTHON_USEDEP}] )
-"
diff --git a/dev-python/glance_store/metadata.xml b/dev-python/glance_store/metadata.xml
deleted file mode 100644
index bb8600db1..000000000
--- a/dev-python/glance_store/metadata.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">glance_store</remote-id>
- <remote-id type="launchpad">oslo</remote-id>
- <remote-id type="github">openstack/glance_store</remote-id>
- </upstream>
- <use>
- <flag name="cinder">enable cinder backend supprt</flag>
- <flag name="swift">enable swift backend supprt</flag>
- <flag name="vmware">enable vmware backend supprt</flag>
- </use>
-</pkgmetadata>
diff --git a/dev-python/glcontext/Manifest b/dev-python/glcontext/Manifest
new file mode 100644
index 000000000..af8559878
--- /dev/null
+++ b/dev-python/glcontext/Manifest
@@ -0,0 +1 @@
+DIST glcontext-2.5.0.gh.tar.gz 18814 BLAKE2B 100aa4d2d118852eeff7b5f7de127d2608f9a84152c3c9cfeae5bffc64dffbfa4c3fd5c20d28b11c4d56d31b006fba8e191901ba064329ea9db8aa3f55e83977 SHA512 b85306c8a1a95bddc9d87a66e3102e45e1a2ae55dfa5b32a263ad4216421712bb31bf8653a1850a281c51b437a274d7c499feac9650035fecd36f5467c6c83a0
diff --git a/dev-python/glcontext/glcontext-2.5.0.ebuild b/dev-python/glcontext/glcontext-2.5.0.ebuild
new file mode 100644
index 000000000..ab2460878
--- /dev/null
+++ b/dev-python/glcontext/glcontext-2.5.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 virtualx
+
+DESCRIPTION="Modern OpenGL binding for python"
+HOMEPAGE="https://github.com/moderngl/glcontext https://pypi.org/project/glcontext"
+SRC_URI="https://github.com/moderngl/glcontext/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug"
+
+BDEPEND="
+ x11-libs/libX11
+ media-libs/libglvnd[X]
+ test? (
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${BDEPEND}"
+
+distutils_enable_tests pytest
+src_test() {
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ cd "${T}" || die
+ epytest "${S}"/tests || die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/glcontext/metadata.xml b/dev-python/glcontext/metadata.xml
new file mode 100644
index 000000000..7a7158a28
--- /dev/null
+++ b/dev-python/glcontext/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">glcontext</remote-id>
+ <remote-id type="github">moderngl/glcontext</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/glfw/Manifest b/dev-python/glfw/Manifest
new file mode 100644
index 000000000..eb75dca0b
--- /dev/null
+++ b/dev-python/glfw/Manifest
@@ -0,0 +1 @@
+DIST glfw-2.7.0.gh.tar.gz 850608 BLAKE2B 5e9530a60cee0ae44d87a208eacdf55e26e20633a606275d9d7d6dbb4eec928e0e93108f927ea984b5ecc246e6188fc969c56a1abb4c5477ec167578d36f8498 SHA512 a903e40a8a01d51b077030b733f6b5fb6dca11f16b30a059e6dd709670393fb7885962664b8162e0856fa3b1fc69fbfb4dffb864e1eb008b34873297f87092d5
diff --git a/dev-python/glfw/glfw-2.7.0.ebuild b/dev-python/glfw/glfw-2.7.0.ebuild
new file mode 100644
index 000000000..21b20f1a9
--- /dev/null
+++ b/dev-python/glfw/glfw-2.7.0.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python bindings for GLFW"
+HOMEPAGE="https://github.com/FlorianRhiem/pyGLFW https://pypi.org/project/glfw"
+SRC_URI="https://github.com/FlorianRhiem/pyGLFW/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/pyGLFW-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="media-libs/glfw"
diff --git a/dev-python/glfw/metadata.xml b/dev-python/glfw/metadata.xml
new file mode 100644
index 000000000..f39c42deb
--- /dev/null
+++ b/dev-python/glfw/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">glfw</remote-id>
+ <remote-id type="github">FlorianRhiem/pyGLFW</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/glicko2/glicko2-2.0.0-r2.ebuild b/dev-python/glicko2/glicko2-2.0.0-r2.ebuild
new file mode 100644
index 000000000..bac2eb982
--- /dev/null
+++ b/dev-python/glicko2/glicko2-2.0.0-r2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="glicko2 implementation in python"
+HOMEPAGE="https://github.com/deepy/glicko2"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ sed -e "s/find_packages()/find_packages(exclude=['tests'])/" \
+ -i setup.py || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/glicko2/glicko2-2.0.0.ebuild b/dev-python/glicko2/glicko2-2.0.0.ebuild
deleted file mode 100644
index 762aadfc9..000000000
--- a/dev-python/glicko2/glicko2-2.0.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-PYTHON_COMPAT=( python3_{7,8,9} pypy3)
-
-inherit distutils-r1
-
-DESCRIPTION="glicko2 implementation in python"
-HOMEPAGE="https://github.com/deepy/glicko2"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-distutils_enable_tests setup.py
-
-src_prepare() {
- sed -i -e "s/distribute/setuptools/g" \
- -e 's/setuptools.find_packages()/setuptools.find_packages(exclude=["*test*"])/g' \
- setup.py
- default
-}
diff --git a/dev-python/glicko2/metadata.xml b/dev-python/glicko2/metadata.xml
index e2ba8983b..6f6051ccd 100644
--- a/dev-python/glicko2/metadata.xml
+++ b/dev-python/glicko2/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/dev-python/glyphsLib/Manifest b/dev-python/glyphsLib/Manifest
deleted file mode 100644
index f41e904dd..000000000
--- a/dev-python/glyphsLib/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST glyphsLib-5.3.2.zip 960327 BLAKE2B 505d14a1e4e4a5cf8e3ea9edb1ed4fd384cc4e5d0bf6874904d45ba227f53202556076e84f3cc68a7b40354c128f71733233c1a95ea66040e0693779c5da38c7 SHA512 fbb09d666cda404a02908cf6b782a2fc986774bd490960bc71bc225260904ea284800018a4b7e326122cc226bdbe5aa9718072e8eeac019eb05c1195c535778a
diff --git a/dev-python/glyphsLib/glyphsLib-5.3.2.ebuild b/dev-python/glyphsLib/glyphsLib-5.3.2.ebuild
deleted file mode 100644
index f01689346..000000000
--- a/dev-python/glyphsLib/glyphsLib-5.3.2.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python3_{8..9} )
-inherit distutils-r1
-
-DESCRIPTION="A library to provide a bridge from Glyphs source files to UFOs"
-HOMEPAGE="https://github.com/googlei18n/glyphsLib"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.zip"
-
-LICENSE="Apache-2.0 MIT"
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-
-RDEPEND="
- >=dev-python/fonttools-4.14[${PYTHON_USEDEP}]
- >=dev-python/ufoLib2-0.8[${PYTHON_USEDEP}]
-"
-
-BDEPEND="
- app-arch/unzip
- dev-python/setuptools_scm[${PYTHON_USEDEP}]
- test? (
- dev-python/defcon[${PYTHON_USEDEP}]
- dev-python/ufoNormalizer[${PYTHON_USEDEP}]
- >=app-text/xmldiff-2.2[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
- sed -e '/\<wheel\>/d' -i setup.cfg
- distutils-r1_python_prepare_all
-}
diff --git a/dev-python/glyphsLib/metadata.xml b/dev-python/glyphsLib/metadata.xml
deleted file mode 100644
index db4f6cb12..000000000
--- a/dev-python/glyphsLib/metadata.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-This Python 3.6+ library provides a bridge from Glyphs source files (.glyphs) to UFOs and Designspace files via defcon and designspaceLib.
- </longdescription>
- <upstream>
- <bugs-to>https://github.com/googlefonts/glyphsLib/issues</bugs-to>
- <maintainer status="active">
- <email>jamesgk@google.com</email>
- <name>James Godfrey-Kittle</name>
- </maintainer>
- <remote-id type="github">googlefonts/glyphsLib</remote-id>
- <remote-id type="pypi">glyphsLib</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/glyphtools/Manifest b/dev-python/glyphtools/Manifest
deleted file mode 100644
index 3de22054c..000000000
--- a/dev-python/glyphtools/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST glyphtools-0.7.3.tar.gz 14972 BLAKE2B b8252b42bad73fced07cacb160f0a1d61647596ec0af41b979021c3f7642cdbeb0d2e5544c35fa2f0ca37ba835e94b661ad931ea3bdbedbb4a88d2b3d3fa9498 SHA512 de505b7c7916bedcb81e70013928915a3dc3289445f1b2e438e66cb581a2a35b342d484333d1740d8db7150fc61b380bced382748f11866c81b9a06740efbadc
diff --git a/dev-python/glyphtools/glyphtools-0.7.3.ebuild b/dev-python/glyphtools/glyphtools-0.7.3.ebuild
deleted file mode 100644
index 48781c468..000000000
--- a/dev-python/glyphtools/glyphtools-0.7.3.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Routines for extracting information from fontTools glyphs"
-HOMEPAGE="https://github.com/simoncozens/glyphtools"
-SRC_URI="https://github.com/simoncozens/glyphtools/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-KEYWORDS="~amd64"
-SLOT="0"
-
-RDEPEND="
- dev-python/babelfont[${PYTHON_USEDEP}]
- dev-python/beziers[${PYTHON_USEDEP}]
- dev-python/glyphsLib[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs \
- dev-python/sphinxcontrib-napoleon \
- dev-python/sphinxcontrib-restbuilder
diff --git a/dev-python/glyphtools/metadata.xml b/dev-python/glyphtools/metadata.xml
deleted file mode 100644
index 1cf463302..000000000
--- a/dev-python/glyphtools/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/simoncozens/glyphtools/issues</bugs-to>
- <remote-id type="github">simoncozens/glyphtools</remote-id>
- <remote-id type="pypi">glyphtools</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/gnuplot-py/Manifest b/dev-python/gnuplot-py/Manifest
new file mode 100644
index 000000000..f1f64b9e8
--- /dev/null
+++ b/dev-python/gnuplot-py/Manifest
@@ -0,0 +1,2 @@
+DIST gnuplot-py-1.8.tar.gz 118828 BLAKE2B 880062169b2fa047d60318cc7dc556c60794bfd81317681395329a56712506f7e406efecb79f37cd98103e76a6feb8b635e55fe056c3ce5bee0c670c8bcaf7a8 SHA512 748dc95ea53acd362f67c821a3cc7cf23b6329c2dd13c130c91e1c9f89afe1ffd84619ed321923c65455adf86ee58976dd6dd187881ee3ede5e0f5f551fb027d
+DIST python-gnuplot_1.8-8.debian.tar.xz 13304 BLAKE2B 2bebf1bc648f90b9679a7499f46f208baaee026aef81ac345f7dbdf7769caedc07668c62a809950d454cad560473438aa2e82a29d21f71e8c87201bf7978a3be SHA512 d2d9466d6d738b8244522572d9e45ae3ea1c0e68c3edb18e13bdca8f630b45466219fe68f874155901020540d801ab5aa025164d28958c440dc37ea4dda098cb
diff --git a/dev-python/gnuplot-py/gnuplot-py-1.8_p8-r1.ebuild b/dev-python/gnuplot-py/gnuplot-py-1.8_p8-r1.ebuild
new file mode 100644
index 000000000..cfad3707b
--- /dev/null
+++ b/dev-python/gnuplot-py/gnuplot-py-1.8_p8-r1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MYPN="python-gnuplot"
+MYPV="$(ver_cut 1-2)"
+MYP="${PN}-${MYPV}"
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1
+
+DESCRIPTION="A python wrapper for Gnuplot"
+HOMEPAGE="https://gnuplot-py.sourceforge.net/"
+SRC_URI="
+ https://downloads.sourceforge.net/${PN}/${MYP}.tar.gz
+ mirror://debian/pool/main/p/${MYPN}/${MYPN}_${PV//_p/-}.debian.tar.xz
+"
+S="${WORKDIR}/${MYP}"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="dev-python/numpy[${PYTHON_USEDEP}]"
+RDEPEND="
+ ${DEPEND}
+ sci-visualization/gnuplot
+"
+
+DOCS="ANNOUNCE.txt CREDITS.txt FAQ.txt NEWS.txt TODO.txt"
+PATCHES=(
+ "${WORKDIR}/debian/patches/00-python3-port.patch"
+ "${WORKDIR}/debian/patches/fix-privacy-breach.patch"
+ "${WORKDIR}/debian/patches/00-remove-version-import.patch"
+ "${WORKDIR}/debian/patches/fix-python-name.patch"
+ "${WORKDIR}/debian/patches/fix-malfuction-mouse-keys.patch"
+ "${WORKDIR}/debian/patches/fix-string-exceptions.patch"
+)
+
+python_install_all() {
+ HTML_DOCS=( doc/Gnuplot/*.html )
+ einstalldocs
+}
diff --git a/dev-python/gnuplot-py/metadata.xml b/dev-python/gnuplot-py/metadata.xml
new file mode 100644
index 000000000..dd52ed1fe
--- /dev/null
+++ b/dev-python/gnuplot-py/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <description>co-maintainers welcome</description>
+ <email>joe@wt.gd</email>
+ <name>Joe Kappus</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">gnuplot-py</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/google-cloud-storage/Manifest b/dev-python/google-cloud-storage/Manifest
deleted file mode 100644
index e429deb95..000000000
--- a/dev-python/google-cloud-storage/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST google-cloud-storage-1.36.0.tar.gz 5448275 BLAKE2B 17ba528dc8adb92eddd1153fcb103fbb1fe0c8c85b05d1263c7180313c08c3975619cd7c102f95d97c3a20a392665cb9610fc437d4253c0c8b168246a3ec645d SHA512 213704d2bbe344aaeb54487ded8879204be9178a3dbbe111234ea42d903b9de15c030fa9b585714cdc4c65db9a895f4e9713c1fe8c19ad2bcf49c4d04f599642
diff --git a/dev-python/google-cloud-storage/google-cloud-storage-1.36.0.ebuild b/dev-python/google-cloud-storage/google-cloud-storage-1.36.0.ebuild
deleted file mode 100644
index 06d35b1c8..000000000
--- a/dev-python/google-cloud-storage/google-cloud-storage-1.36.0.ebuild
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-inherit distutils-r1
-
-DESCRIPTION="Google Cloud Storage API client library"
-HOMEPAGE="https://pypi.org/project/google-cloud-storage/"
-SRC_URI="https://files.pythonhosted.org/packages/6d/5c/8f311c50661d907cbe5786c1be91ac75c59fdab4b69d8f679d0926b79820/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
diff --git a/dev-python/google-cloud-storage/metadata.xml b/dev-python/google-cloud-storage/metadata.xml
deleted file mode 100644
index ad8cead24..000000000
--- a/dev-python/google-cloud-storage/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>svdm-gentoo@protonmail.com</email>
- <name>Simon van der Maas</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/googletrans/Manifest b/dev-python/googletrans/Manifest
index e2a731533..60209ce73 100644
--- a/dev-python/googletrans/Manifest
+++ b/dev-python/googletrans/Manifest
@@ -1 +1 @@
-DIST googletrans-4.0.0_rc1.tar.gz 20199 BLAKE2B 38047d2dea820272a3b2adc07043230802fc66994966771c7ea55b70c0f79d5fdb22ff6bba8e89f0bc5224be86a21d5026d7dc19f8a370a61f34eecf53296a3c SHA512 fcb0330c51680fa91fdea994cf5ec6d19867c0996183529df5d1d0c63ef4d1fd4e9a2a061d6c01a9a0c302faf640724f3bdaff335ad663874af9588bd3210eaa
+DIST googletrans-4.0.0rc1.tar.gz 20199 BLAKE2B 38047d2dea820272a3b2adc07043230802fc66994966771c7ea55b70c0f79d5fdb22ff6bba8e89f0bc5224be86a21d5026d7dc19f8a370a61f34eecf53296a3c SHA512 fcb0330c51680fa91fdea994cf5ec6d19867c0996183529df5d1d0c63ef4d1fd4e9a2a061d6c01a9a0c302faf640724f3bdaff335ad663874af9588bd3210eaa
diff --git a/dev-python/googletrans/googletrans-4.0.0_rc1.ebuild b/dev-python/googletrans/googletrans-4.0.0_rc1-r1.ebuild
index 50b507606..d64ef7b2b 100644
--- a/dev-python/googletrans/googletrans-4.0.0_rc1.ebuild
+++ b/dev-python/googletrans/googletrans-4.0.0_rc1-r1.ebuild
@@ -1,14 +1,18 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-inherit distutils-r1
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NONORMALIZE=1
+
+inherit distutils-r1 pypi
MY_PV=${PV/_/}
DESCRIPTION="Free Google Translate API for Python. Translates totally free of charge."
-HOMEPAGE="https://pypi.org/project/googletrans https://github.com/ssut/py-googletrans"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${PN}-${MY_PV}.tar.gz -> ${P}.tar.gz"
+HOMEPAGE="https://pypi.org/project/googletrans/ https://github.com/ssut/py-googletrans"
+
S="${WORKDIR}/${PN}-${MY_PV}"
LICENSE="MIT"
diff --git a/dev-python/googletrans/metadata.xml b/dev-python/googletrans/metadata.xml
index 65b119038..c2ae3a207 100644
--- a/dev-python/googletrans/metadata.xml
+++ b/dev-python/googletrans/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
<pkgmetadata>
<maintainer type="person">
- <email>shaoyu0209@tuta.io</email>
+ <email>dev@notyourcomputer.net</email>
<name>Shaoyu Tseng</name>
</maintainer>
<upstream>
diff --git a/dev-python/googletransx/Manifest b/dev-python/googletransx/Manifest
deleted file mode 100644
index 6934d91ab..000000000
--- a/dev-python/googletransx/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST googletransx-2.4.2.tar.gz 13967 BLAKE2B 4ba5d043f428e48c4a1e7fd5932b346149fa7a5f14f5e97f79aa52de8be22658697aaf112eea931793ae006aa0e23a4771e538067a0f6d2e75fdeff71df221e3 SHA512 d68d3ae0bf250464438831e97c5ab87484100302ccb92da929218fe42d00c572770c4083919916b537f40b2ea5b33197fb2c69197cc541da28977027be86ceb5
diff --git a/dev-python/googletransx/googletransx-2.4.2-r1.ebuild b/dev-python/googletransx/googletransx-2.4.2-r1.ebuild
deleted file mode 100644
index ed5877d3b..000000000
--- a/dev-python/googletransx/googletransx-2.4.2-r1.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-#DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Free Google Translate API for Python. Translates totally free of charge."
-HOMEPAGE="https://pypi.org/project/googletransx"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- dev-python/requests[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
diff --git a/dev-python/googletransx/metadata.xml b/dev-python/googletransx/metadata.xml
deleted file mode 100644
index 12c247f7b..000000000
--- a/dev-python/googletransx/metadata.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-Googletrans is a free and unlimited python library that implemented Google Translate API. This uses the Google Translate Ajax API to make calls to such methods as detect and translate.
-
-Compatible with Python 2.7+ and 3.4+. (Note: Python 2 support will be dropped in the next major release.)
-
-For details refer to the API Documentation.
-Features
-
- Fast and reliable - it uses the same servers that translate.google.com uses
- Auto language detection
- Bulk translations
- Customizable service URL
- Connection pooling (the advantage of using requests.Session)
- HTTP/2 support
-
-TODO
-
-more features are coming soon.
-
- Proxy support
- Internal session management (for better bulk translations)
-
-HTTP/2 support
-
-This is a great deal for everyone! (up to 2x times faster in my test) If you want to get googletrans faster you should install hyper package. Googletrans will automatically detect if hyper is installed and if so, it will be used for http networking.
-How does this library work
-
-You may wonder why this library works properly, whereas other approaches such like goslate won’t work since Google has updated its translation service recently with a ticket mechanism to prevent a lot of crawler programs.
-
-I eventually figure out a way to generate a ticket by reverse engineering on the obfuscated and minified code used by Google to generate such token, and implemented on the top of Python. However, this could be blocked at any time.
- </longdescription>
- <upstream>
- <remote-id type="pypi">googletransx</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/graphene/Manifest b/dev-python/graphene/Manifest
index aa53b7d8b..45efab700 100644
--- a/dev-python/graphene/Manifest
+++ b/dev-python/graphene/Manifest
@@ -1,2 +1,2 @@
-DIST graphene-3.0.0_beta7.tar.gz 113258 BLAKE2B 4a3adadfea6dc6fd936b8bad83cf02c1b2b7937648712ee26ce3c5eb7e6d6631790ae2f22fff334de4495ed3197761862e88450e7f837ee06f71e7de4009efe4 SHA512 df4dee75c8c5bc5643dd5231bff61f7f1e2efe7203e61a3e32b10c80c2f44139a408ca99726fea51d6aa6e844e648c860c41e3e20ee4679dd3573f43047e71fa
-DIST sphinx-graphene-3.0.0_beta7.zip 22270 BLAKE2B 7cc467f12e7857cedb0336c7d0708f9429b9ccaa7f65077e6453a3e4ce0af92cbdb6d4dd3bec5801bd3e5fb233b4994dbce52fabe690da196ee25b5eec7fb63f SHA512 00cdaee50a7c16729d9d820de7d6c0f61215e3b906777b0705f2de0d2029f2ffb1f86134b1d673d00675d77729be47765999537fc42aeefafb026248b9b0b3b0
+DIST graphene-3.2.2.gh.tar.gz 126807 BLAKE2B 6079c75b0dc571698126fb60ee944647fd1e4d5a03462c6d97466a4a1b3aa1ef0ae03061ff0ee3c1fdf5a5ca636d3ed2ab6eaacedcbecbb1954ffef80e9749d7 SHA512 c1a88a148403d89deea7bfd3db4ce29e1a8898b8cabbbe1f8535bea30d5f37642b7a0e7e66662a9f5f2c164b1eb3a729b4552acde2c7194e52615d282e38a8ba
+DIST sphinx-graphene-3.2.2.zip 22270 BLAKE2B 7cc467f12e7857cedb0336c7d0708f9429b9ccaa7f65077e6453a3e4ce0af92cbdb6d4dd3bec5801bd3e5fb233b4994dbce52fabe690da196ee25b5eec7fb63f SHA512 00cdaee50a7c16729d9d820de7d6c0f61215e3b906777b0705f2de0d2029f2ffb1f86134b1d673d00675d77729be47765999537fc42aeefafb026248b9b0b3b0
diff --git a/dev-python/graphene/graphene-3.0.0_beta7.ebuild b/dev-python/graphene/graphene-3.0.0_beta7.ebuild
deleted file mode 100644
index 1f9259316..000000000
--- a/dev-python/graphene/graphene-3.0.0_beta7.ebuild
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-MY_PV="${PV/_beta/b}"
-MY_P="${PN}-${MY_PV}"
-
-DESCRIPTION="GraphQL Framework for Python"
-HOMEPAGE="https://graphene-python.org
- https://pypi.org/project/graphene
- https://github.com/graphql-python/graphene
-"
-SRC_URI="https://github.com/graphql-python/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz
- doc? ( https://graphene-python.org/sphinx_graphene_theme.zip -> sphinx-${P}.zip )
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- dev-python/aniso8601[${PYTHON_USEDEP}]
- dev-python/graphql-core[${PYTHON_USEDEP}]
- dev-python/graphql-relay[${PYTHON_USEDEP}]
-"
-
-BDEPEND="
- doc? ( app-arch/unzip )
- test? (
- dev-python/iso8601[${PYTHON_USEDEP}]
- dev-python/promise[${PYTHON_USEDEP}]
- dev-python/pytest-asyncio[${PYTHON_USEDEP}]
- dev-python/pytest-benchmark[${PYTHON_USEDEP}]
- dev-python/pytest-mock[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- dev-python/snapshottest[${PYTHON_USEDEP}]
- )
-"
-
-S="${WORKDIR}/${MY_P}"
-
-distutils_enable_tests pytest
-
-distutils_enable_sphinx docs
-
-src_unpack() {
- unpack ${P}.tar.gz
-
- if use doc ; then
- unpack sphinx-${P}.zip
- mv "${WORKDIR}"/sphinx_graphene_theme "${S}"/docs || die
- fi
-}
-
-python_test() {
- epytest --benchmark-disable \
- --deselect graphene/types/tests/test_schema.py::TestUnforgivingExecutionContext::test_unexpected_error
-}
diff --git a/dev-python/graphene/graphene-3.2.2.ebuild b/dev-python/graphene/graphene-3.2.2.ebuild
new file mode 100644
index 000000000..58c97877b
--- /dev/null
+++ b/dev-python/graphene/graphene-3.2.2.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="GraphQL Framework for Python"
+HOMEPAGE="
+ https://graphene-python.org
+ https://pypi.org/project/graphene/
+ https://github.com/graphql-python/graphene
+"
+SRC_URI="https://github.com/graphql-python/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz
+ doc? ( https://graphene-python.org/sphinx_graphene_theme.zip -> sphinx-${P}.zip )
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/aniso8601-8[${PYTHON_USEDEP}]
+ >=dev-python/graphql-core-3.1[${PYTHON_USEDEP}]
+ >=dev-python/graphql-relay-3.1[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ doc? ( app-arch/unzip )
+ test? (
+ dev-python/iso8601[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/snapshottest[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs
+
+EPYTEST_DESELECT=(
+ # need pytest-benchmark
+ graphene/types/tests/test_objecttype.py::test_objecttype_container_benchmark
+ graphene/types/tests/test_query.py::test_big_list_query_benchmark
+ graphene/types/tests/test_query.py::test_big_list_query_compiled_query_benchmark
+ graphene/types/tests/test_query.py::test_big_list_of_containers_query_benchmark
+ graphene/types/tests/test_query.py::test_big_list_of_containers_multiple_fields_query_benchmark
+ graphene/types/tests/test_query.py::test_big_list_of_containers_multiple_fields_custom_resolvers_query_benchmark
+)
+
+src_unpack() {
+ unpack ${P}.gh.tar.gz
+
+ if use doc; then
+ cd "${S}"/docs || die
+ unpack sphinx-${P}.zip
+ fi
+}
+
+python_compile_all() {
+ local -x PYTHONPATH="${S}/docs:${PYTHONPATH}"
+ sphinx_compile_all
+}
diff --git a/dev-python/graphene/metadata.xml b/dev-python/graphene/metadata.xml
index a507be0a7..1654cfb0c 100644
--- a/dev-python/graphene/metadata.xml
+++ b/dev-python/graphene/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>piotr.staroszczyk@get24.org</email>
- <name>Piotr Staroszczyk</name>
- </maintainer>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">graphene</remote-id>
+ <remote-id type="github">graphql-python/graphene</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/graphql-core/Manifest b/dev-python/graphql-core/Manifest
index 5bd18e7ee..76f244507 100644
--- a/dev-python/graphql-core/Manifest
+++ b/dev-python/graphql-core/Manifest
@@ -1 +1 @@
-DIST graphql-core-3.1.5.tar.gz 497629 BLAKE2B 28b8a32669c7367bb1343e04bf3f5a1b20ce13f83e2514d243b69df067306f2fbd8d380d6a9f833fe1296831853898b3f1a0d0ec73fc3d0ea8a4726ed3062674 SHA512 d6fccd751ecc575649c4eb697b98f6b581d56db58e4d4d8b73eec8cf8285cc749dd55c6e3dc54fe9aeb216b1ae4a6d14c9e617ca65eecba4fe1d3ba41de6f7c4
+DIST graphql-core-3.2.3.tar.gz 529552 BLAKE2B 5931579fe860ffd8f0166e703ba3d055eb39660ac3bcd5335c42811da1a692382ab0e968bacfc7b3cb9fae72c74bec160516c74ab56775e3ed6e3756c67ee23a SHA512 6a43b802ae71de7229daa3c9bc8266a17955b163d6b342107034168bc71fb026ad2f8de1ab5fc40dfb6ebbd5c47030ad978d54a825f6aca1c318190e325b405e
diff --git a/dev-python/graphql-core/graphql-core-3.1.5.ebuild b/dev-python/graphql-core/graphql-core-3.1.5.ebuild
deleted file mode 100644
index 5af66bc80..000000000
--- a/dev-python/graphql-core/graphql-core-3.1.5.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="GraphQL for Python"
-HOMEPAGE="https://github.com/graphql-python/graphql-core"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-BDEPEND="
- test? (
- dev-python/pytest-asyncio[${PYTHON_USEDEP}]
- dev-python/pytest-describe[${PYTHON_USEDEP}]
- dev-python/pytest-benchmark[${PYTHON_USEDEP}]
- dev-python/pytest-timeout[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
diff --git a/dev-python/graphql-core/graphql-core-3.2.3.ebuild b/dev-python/graphql-core/graphql-core-3.2.3.ebuild
new file mode 100644
index 000000000..5aeb6e468
--- /dev/null
+++ b/dev-python/graphql-core/graphql-core-3.2.3.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=poetry
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python port of GraphQL.js, the JavaScript reference implementation for GraphQL"
+HOMEPAGE="
+ https://pypi.org/project/graphql-core/
+ https://github.com/graphql-python/graphql-core
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ $(python_gen_cond_dep \
+ 'dev-python/typing-extensions[${PYTHON_USEDEP}]' python3_9)
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-describe[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_IGNORE=( tests/benchmarks )
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-rtd-theme
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ sed "/addopts =/d" -i setup.cfg pyproject.toml || die
+}
+
+python_test() {
+ cd "${S}"/tests || die
+ epytest
+}
diff --git a/dev-python/graphql-core/metadata.xml b/dev-python/graphql-core/metadata.xml
index cd174bd3e..d1596d151 100644
--- a/dev-python/graphql-core/metadata.xml
+++ b/dev-python/graphql-core/metadata.xml
@@ -1,8 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>telans@posteo.de</email>
- <name>James Beddek</name>
- </maintainer>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">graphql-core</remote-id>
+ <remote-id type="github">graphql-python/graphql-core</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/graphql-relay/Manifest b/dev-python/graphql-relay/Manifest
index 94cd47b48..8fce6355f 100644
--- a/dev-python/graphql-relay/Manifest
+++ b/dev-python/graphql-relay/Manifest
@@ -1 +1 @@
-DIST graphql-relay-3.1.0.tar.gz 47738 BLAKE2B 84a13dee3371345ca7af7ff87b4210a787e261c8446ab6d54b7c1ee196f0bd8faef15be438be424d78ab0fa7cc9df6641020da85052d9abe21d17ed2cb89b28c SHA512 7006da1ebd0a7fde2a88b6c03d2355d1cc26b14e86f51387cd91c922b498f2fcbe120af730b9634b57af0b638244fb464808e7af16e2dfdae9fa71f404bb5d65
+DIST graphql-relay-3.2.0.tar.gz 50027 BLAKE2B 48f543822674821ad299cfba89f208f0870c50a0dcf4f8ac069faabdd3a67216a719047bc19279d1de7c0b5b132dcbdcc239b0011f90adaaf59e7c83f85d2e7f SHA512 fe64373ccec2e954fd375c07c0706b69535ed061fb76c2b1d0153c5767f9f37f406239fbca018234c3fd0c9ce0a306afd5cf6255173a7e03896ea286eeb7c206
diff --git a/dev-python/graphql-relay/graphql-relay-3.1.0.ebuild b/dev-python/graphql-relay/graphql-relay-3.1.0.ebuild
deleted file mode 100644
index 8331a052d..000000000
--- a/dev-python/graphql-relay/graphql-relay-3.1.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Relay library for graphql-core-next"
-HOMEPAGE="https://github.com/graphql-python/graphql-relay-py"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-BDEPEND="
- test? (
- dev-python/pytest-asyncio[${PYTHON_USEDEP}]
- dev-python/pytest-describe[${PYTHON_USEDEP}]
- )
-"
-
-# typing-extensions is not needed since python 3.8
-RDEPEND="
- dev-python/graphql-core[${PYTHON_USEDEP}]
- dev-python/typing-extensions[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/graphql-relay/graphql-relay-3.2.0.ebuild b/dev-python/graphql-relay/graphql-relay-3.2.0.ebuild
new file mode 100644
index 000000000..01e14597f
--- /dev/null
+++ b/dev-python/graphql-relay/graphql-relay-3.2.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=poetry
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Relay library for graphql-core"
+HOMEPAGE="
+ https://pypi.org/project/graphql-relay/
+ https://github.com/graphql-python/graphql-relay-py
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/graphql-core[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-describe[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/graphql-relay/metadata.xml b/dev-python/graphql-relay/metadata.xml
index a507be0a7..d2f3b1ed3 100644
--- a/dev-python/graphql-relay/metadata.xml
+++ b/dev-python/graphql-relay/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>piotr.staroszczyk@get24.org</email>
- <name>Piotr Staroszczyk</name>
- </maintainer>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">graphql-relay</remote-id>
+ <remote-id type="github">graphql-python/graphql-relay-py</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/grpc-stubs/Manifest b/dev-python/grpc-stubs/Manifest
new file mode 100644
index 000000000..563d498fc
--- /dev/null
+++ b/dev-python/grpc-stubs/Manifest
@@ -0,0 +1 @@
+DIST grpc-stubs-1.53.0.3.gh.tar.gz 14667 BLAKE2B 58f1ff46f6e4ad96fafa7583158e8a3be1ac5fc991f50dde34899fad919fbfb46afe5da8846aa7ef98cdc4de34609ee93a06d137630d505460d34ecaa3a47837 SHA512 dbcf9882b4ad986bcf17ed613c233cfd889d46340b91534d9ef33a11e1ce25db5e81a747c57b55a1e174012c81da94d29769706a1b3932ca13b020506235ccbd
diff --git a/dev-python/grpc-stubs/files/grpc-stubs-1.53.0.3-die-on-missing-import.patch b/dev-python/grpc-stubs/files/grpc-stubs-1.53.0.3-die-on-missing-import.patch
new file mode 100644
index 000000000..7b7a8e9f0
--- /dev/null
+++ b/dev-python/grpc-stubs/files/grpc-stubs-1.53.0.3-die-on-missing-import.patch
@@ -0,0 +1,12 @@
+Tests should fail if mypy fails to find the stubs that are to be tested.
+--- a/setup.cfg
++++ b/setup.cfg
+@@ -1,7 +1,7 @@
+ [mypy]
+ check_untyped_defs = True
+ ignore_errors = False
+-ignore_missing_imports = True
++ignore_missing_imports = False
+ strict_optional = True
+ no_error_summary = True
+ no_color_output = True
diff --git a/dev-python/grpc-stubs/grpc-stubs-1.53.0.3.ebuild b/dev-python/grpc-stubs/grpc-stubs-1.53.0.3.ebuild
new file mode 100644
index 000000000..510b7365c
--- /dev/null
+++ b/dev-python/grpc-stubs/grpc-stubs-1.53.0.3.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..12} )
+inherit distutils-r1
+
+DESCRIPTION="gRPC typing stubs for Python"
+HOMEPAGE="
+ https://pypi.org/project/grpc-stubs/
+ https://github.com/shabbyrobe/grpc-stubs/
+"
+
+SRC_URI="https://github.com/shabbyrobe/grpc-stubs/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+RDEPEND="dev-python/types-protobuf[${PYTHON_USEDEP}]"
+BDEPEND="test? (
+ dev-python/pytest-mypy-plugins[${PYTHON_USEDEP}]
+ ${RDEPEND}
+ )"
+
+distutils_enable_tests pytest
+
+PATCHES="${FILESDIR}/"${P}-die-on-missing-import.patch
+
+python_test() {
+ # Gentoo's PEP 517 mode runs tests in a venv-like environment.
+ # Pytest-mypy-plugins checks the PATH for mypy, we provide a venv-aware
+ # variant.
+ printf "#!/bin/bash\n $(which python) -m mypy \$@" > \
+ "${BUILD_DIR}"/install/usr/bin/mypy || die
+ chmod +x "${BUILD_DIR}"/install/usr/bin/mypy || die
+ epytest --mypy-ini-file=setup.cfg
+ rm "${BUILD_DIR}"/install/usr/bin/mypy || die
+}
diff --git a/dev-python/grpc-stubs/metadata.xml b/dev-python/grpc-stubs/metadata.xml
new file mode 100644
index 000000000..9a74fffcc
--- /dev/null
+++ b/dev-python/grpc-stubs/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>watermanpaint@posteo.net</email>
+ <name>Lucio Sauer</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">shabbyrobe/grpc-stubs</remote-id>
+ <remote-id type="pypi">grpc-stubs</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/grpclib/Manifest b/dev-python/grpclib/Manifest
new file mode 100644
index 000000000..689aaf9b9
--- /dev/null
+++ b/dev-python/grpclib/Manifest
@@ -0,0 +1,2 @@
+DIST grpclib-0.4.2.gh.tar.gz 116997 BLAKE2B 8a3ad3022a4963f0539c212b66af615f4c1a73cec49801118af25ad141741aed692e16389687f690f885d9f85dc53a5e1b8208a5d8af111c2e50fdefef0684ce SHA512 a25ee2286431d294dd4b07b3ac34387608ca3dbabdf6d54a09b1a33fe66c75ba88f3f5e90160a55dc614871c93bc6ccfb884d149bbd624e13d792b44271b534f
+DIST grpclib-0.4.3.gh.tar.gz 106619 BLAKE2B 2ea5ae37c0f9e7c0aaf278922144135d536007d23a676298beb770c6f357887f383053a5c611a31cb55fb9dd7078a40c8ba0528425c039b473bd9f8cd022428a SHA512 2de4d95c26663eaf55e70cf1b2a0b5e44538b7543518702725616c6658d79a246996e4520cb1440f5910e3f353db7fb157812c57d42c2659c018c46ebff92224
diff --git a/dev-python/grpclib/files/grpclib-add_css_file.patch b/dev-python/grpclib/files/grpclib-add_css_file.patch
new file mode 100644
index 000000000..25243b932
--- /dev/null
+++ b/dev-python/grpclib/files/grpclib-add_css_file.patch
@@ -0,0 +1,10 @@
+diff --git a/docs/conf.py b/docs/conf.py
+index 7ccef26..766b77d 100644
+--- a/docs/conf.py
++++ b/docs/conf.py
+@@ -27,4 +27,4 @@ html_theme_options = {
+
+
+ def setup(app):
+- app.add_stylesheet('style.css')
++ app.add_css_file('style.css')
diff --git a/dev-python/grpclib/grpclib-0.4.2.ebuild b/dev-python/grpclib/grpclib-0.4.2.ebuild
new file mode 100644
index 000000000..3576b0e42
--- /dev/null
+++ b/dev-python/grpclib/grpclib-0.4.2.ebuild
@@ -0,0 +1,56 @@
+# 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_{10..11} )
+
+inherit distutils-r1
+
+DESCRIPTION="Pure-Python gRPC implementation for asyncio"
+HOMEPAGE="https://github.com/vmagamedov/grpclib"
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/vmagamedov/grpclib"
+else
+ MY_PV="${PV/_rc/rc}"
+ S="${WORKDIR}/${PN}-${MY_PV}"
+ SRC_URI="https://github.com/vmagamedov/${PN}/archive/refs/tags/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+PATCHES=(
+ "${FILESDIR}/${PN}-add_css_file.patch"
+)
+
+LICENSE="BSD"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/h2-4.1.0[${PYTHON_USEDEP}]
+ >=dev-python/hpack-4.0.0[${PYTHON_USEDEP}]
+ >=dev-python/hyperframe-6.0.1[${PYTHON_USEDEP}]
+ >=dev-python/multidict-6.0.2[${PYTHON_USEDEP}]
+ >=dev-python/grpcio-tools-1.43.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/async-timeout[${PYTHON_USEDEP}]
+ dev-python/googleapis-common-protos[${PYTHON_USEDEP}]
+ dev-python/Faker[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ 'dev-python/sphinx-rtd-theme'
+
+python_test() {
+ [[ ${EPYTHON} == python3.10 ]] && local EPYTEST_DESELECT=(
+ # does not work in python3.10 due to the bug in ssl https://bugs.python.org/issue46067
+ 'tests/test_client_channel.py::test_default_ssl_context'
+ )
+ epytest
+}
diff --git a/dev-python/grpclib/grpclib-0.4.3.ebuild b/dev-python/grpclib/grpclib-0.4.3.ebuild
new file mode 100644
index 000000000..398d96408
--- /dev/null
+++ b/dev-python/grpclib/grpclib-0.4.3.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1
+
+DESCRIPTION="Pure-Python gRPC implementation for asyncio"
+HOMEPAGE="https://github.com/vmagamedov/grpclib"
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/vmagamedov/grpclib"
+else
+ MY_PV="${PV/_rc/rc}"
+ S="${WORKDIR}/${PN}-${MY_PV}"
+ SRC_URI="https://github.com/vmagamedov/${PN}/archive/refs/tags/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+PATCHES=(
+ "${FILESDIR}/${PN}-add_css_file.patch"
+)
+
+LICENSE="BSD"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/h2-4.1.0[${PYTHON_USEDEP}]
+ >=dev-python/hpack-4.0.0[${PYTHON_USEDEP}]
+ >=dev-python/hyperframe-6.0.1[${PYTHON_USEDEP}]
+ >=dev-python/multidict-6.0.2[${PYTHON_USEDEP}]
+ >=dev-python/grpcio-tools-1.43.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/async-timeout[${PYTHON_USEDEP}]
+ dev-python/googleapis-common-protos[${PYTHON_USEDEP}]
+ dev-python/Faker[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ 'dev-python/sphinx-rtd-theme'
diff --git a/dev-python/grpclib/metadata.xml b/dev-python/grpclib/metadata.xml
new file mode 100644
index 000000000..f63510012
--- /dev/null
+++ b/dev-python/grpclib/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>antonin.riha@protonmail.com</email>
+ <name>Antonín Říha</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/vmagamedov/grpclib/issues</bugs-to>
+ <remote-id type="pypi">grpclib</remote-id>
+ <remote-id type="github">vmagamedov/grpclib</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/guidata/Manifest b/dev-python/guidata/Manifest
index 9f6e393ad..72e768fc9 100644
--- a/dev-python/guidata/Manifest
+++ b/dev-python/guidata/Manifest
@@ -1 +1,2 @@
-DIST guidata-1.7.9.tar.gz 325254 BLAKE2B 875ffe654fa3fb7fbb7d778d16c35053f8b2da6a69b2e5fd4a44599baa0f4eb3075e10856d906a3c345a25ec7c9f354d36817e1f1e4bc29c16371939acfb1f45 SHA512 65ae8a6fea96261fea534fd0dc42fdfe8f78c73008ffe34bb2d521b88860357196f4dd5f76d1a07290d7d3240e0f230c3d09c8ec14656071c59c90124da892db
+DIST guidata-3.3.0.tar.gz 690865 BLAKE2B 1b52295094844f839665e9dadbfff8d407b48d1746d72154d1181812a8b205660feac6ec86002cab31eef2c8fc5e72a35034145e51388e16e9bae89b2e801bd1 SHA512 7c962b8205cdcb13a628b6bfa256e7b62e1478933933d5ac9b8a1f7fbf6e4e17dbbbfe73bd520585b148ea858816e78f7dd3377ba70acc1be3a071981e5179ca
+DIST guidata-3.5.0.tar.gz 715835 BLAKE2B 11668c0ab1e5c7ec1a58b1cd705420c79b5e2c05174318556aabd48895421a2e77cadd8932e8affe4e52214881b3feb5d99a5f75ccc8adec31d44137ff70df24 SHA512 281460040396d1de07bad44a27c69b1fb69d41406d3b4029651332bf8d39d610e1d89f541062b8cd3b5d11afa9f39c5de83ae0e9729594a22c23abd73a79d83d
diff --git a/dev-python/guidata/guidata-1.7.9.ebuild b/dev-python/guidata/guidata-1.7.9.ebuild
deleted file mode 100644
index 4f0d870c5..000000000
--- a/dev-python/guidata/guidata-1.7.9.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Library for user interfaces for easy dataset editing and display"
-HOMEPAGE="https://pypi.python.org/pypi/guidata"
-LICENSE="CeCILL-2"
-
-SLOT="0"
-IUSE=""
-
-RDEPEND="
- dev-python/PyQt5[${PYTHON_USEDEP}]
- dev-python/QtPy[${PYTHON_USEDEP}]
-"
-
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-KEYWORDS="~amd64 ~x86"
diff --git a/dev-python/guidata/guidata-3.3.0.ebuild b/dev-python/guidata/guidata-3.3.0.ebuild
new file mode 100644
index 000000000..b4a2346e0
--- /dev/null
+++ b/dev-python/guidata/guidata-3.3.0.ebuild
@@ -0,0 +1,39 @@
+# 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_{11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Library for user interfaces for easy dataset editing and display"
+HOMEPAGE="https://pypi.python.org/pypi/guidata"
+LICENSE="BSD"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+RDEPEND="
+ dev-python/h5py[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/PyQt5[${PYTHON_USEDEP}]
+ dev-python/QtPy[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/tomli[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ test? (
+ dev-python/pytest-qt[${PYTHON_USEDEP}]
+ dev-python/pytest-xvfb[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ epytest -p xvfb
+}
diff --git a/dev-python/guidata/guidata-3.5.0.ebuild b/dev-python/guidata/guidata-3.5.0.ebuild
new file mode 100644
index 000000000..b4a2346e0
--- /dev/null
+++ b/dev-python/guidata/guidata-3.5.0.ebuild
@@ -0,0 +1,39 @@
+# 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_{11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Library for user interfaces for easy dataset editing and display"
+HOMEPAGE="https://pypi.python.org/pypi/guidata"
+LICENSE="BSD"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+RDEPEND="
+ dev-python/h5py[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/PyQt5[${PYTHON_USEDEP}]
+ dev-python/QtPy[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/tomli[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ test? (
+ dev-python/pytest-qt[${PYTHON_USEDEP}]
+ dev-python/pytest-xvfb[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ epytest -p xvfb
+}
diff --git a/dev-python/guidata/metadata.xml b/dev-python/guidata/metadata.xml
index 01c1fc848..256ca0126 100644
--- a/dev-python/guidata/metadata.xml
+++ b/dev-python/guidata/metadata.xml
@@ -1,8 +1,12 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>davidroman96@gmail.com</email>
<name>David Roman</name>
</maintainer>
+ <upstream>
+ <remote-id type="pypi">guidata</remote-id>
+ <remote-id type="github">PierreRaybaut/guidata</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/guiqwt/Manifest b/dev-python/guiqwt/Manifest
new file mode 100644
index 000000000..61e5fb7d1
--- /dev/null
+++ b/dev-python/guiqwt/Manifest
@@ -0,0 +1 @@
+DIST guiqwt-4.4.5.gh.tar.gz 5427628 BLAKE2B ac5e7116e357b733486f48ddabca0a42c42e7d2616022667e09b465a3b2791863a09e5b68731cdf2bcabb8df873934c11256cdfe058a77fa90c7b0c286a60686 SHA512 44ee7ded9459795666adb716f4041215c520371203029ef9157aeeed78a9fb7f1fad18ee6651d760bb7b31ad82fb11a414239984992824a30fba7cd22de5ffd6
diff --git a/dev-python/guiqwt/guiqwt-4.4.5-r1.ebuild b/dev-python/guiqwt/guiqwt-4.4.5-r1.ebuild
new file mode 100644
index 000000000..d32c5c72a
--- /dev/null
+++ b/dev-python/guiqwt/guiqwt-4.4.5-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2019 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Efficient 2D plotting Python library based on PythonQwt "
+HOMEPAGE="https://pypi.python.org/pypi/guiqwt"
+SRC_URI="https://github.com/PlotPyStack/guiqwt/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+LICENSE="MIT"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+RESTRICT="test"
+
+RDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+ dev-python/guidata[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/PythonQwt[${PYTHON_USEDEP}]
+ dev-python/QtPy[${PYTHON_USEDEP}]
+ dev-python/scipy[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/ovsdbapp/metadata.xml b/dev-python/guiqwt/metadata.xml
index 9496e4ebf..8a680852c 100644
--- a/dev-python/ovsdbapp/metadata.xml
+++ b/dev-python/guiqwt/metadata.xml
@@ -2,12 +2,11 @@
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
</maintainer>
- <stabilize-allarches/>
<upstream>
- <remote-id type="pypi">ovsdbapp</remote-id>
+ <remote-id type="pypi">guiqwt</remote-id>
+ <remote-id type="github">PlotPyStack/guiqwt</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-python/guppy3/Manifest b/dev-python/guppy3/Manifest
new file mode 100644
index 000000000..9cc3512a9
--- /dev/null
+++ b/dev-python/guppy3/Manifest
@@ -0,0 +1,2 @@
+DIST guppy3-3.1.3.tar.gz 343281 BLAKE2B cbc17a26dff0c9f217843575054aed4925461e3525f1f3785aa535fc125d7455b155dc69755edce9b7b6b43e04b18b685051644dee12935a8af8bba384da0e0d SHA512 f35219ecea5fa20edf3f064109b16ea3b022fea666415751000329fb35726759a697b79efe6a93c29d1a422a57c6dbb881bb313e267a569b621fef6cb0971c68
+DIST guppy3-3.1.4.tar.gz 344051 BLAKE2B 1578ad1d467e3492e6d6ce4142b18670e7e4357c4ca24237b41b478069504a48ff36c9c14af67c8164396a7b2797c0d14d9884de9e251f00fc89e3f2b14e572b SHA512 6f551989ab296d974cf372c8ccfdc7768e17eed35d25e4b14e95a66c35d2ecb6813bad1158ad0b005c730216d33b87d71833cfa9048d9f349851444f39782b9c
diff --git a/dev-python/guppy3/files/guppy3-3.1.3-py311-refcount-assert.patch b/dev-python/guppy3/files/guppy3-3.1.3-py311-refcount-assert.patch
new file mode 100644
index 000000000..8a8840d55
--- /dev/null
+++ b/dev-python/guppy3/files/guppy3-3.1.3-py311-refcount-assert.patch
@@ -0,0 +1,44 @@
+From 71f3455f73eedef78ccf79c17ed5adbb36d11eeb Mon Sep 17 00:00:00 2001
+From: YiFei Zhu <zhuyifei1999@gmail.com>
+Date: Mon, 22 May 2023 15:54:24 -0700
+Subject: [PATCH] nodegraph: Fix refcount sanity assertion for Python 3.11
+
+Python 3.11 created immortal objects whose initial refcount is
+999999999, larger than 0xa000000. This breaks the assertin here.
+
+Caught by https://bugs.gentoo.org/906937
+
+Fortunately I don't seem to need to do a new release with this fix
+because the wheels are built with -DNDEBUG.
+---
+ src/heapy/nodegraph.c | 14 ++++++++++++--
+ 1 file changed, 12 insertions(+), 2 deletions(-)
+
+diff --git a/src/heapy/nodegraph.c b/src/heapy/nodegraph.c
+index 2fd9c83..765f5ee 100644
+--- a/src/heapy/nodegraph.c
++++ b/src/heapy/nodegraph.c
+@@ -148,8 +148,18 @@ NyNodeGraph_AddEdge(NyNodeGraphObject *ng, PyObject *src, PyObject *tgt)
+ ng->edges[ng->used_size-1].tgt == tgt)
+ return 0;
+
+- assert(Py_REFCNT(src) < 0xa000000 && (Py_uintptr_t)Py_TYPE(src) > 0x1000);
+- assert(Py_REFCNT(tgt) < 0xa000000 && (Py_uintptr_t)Py_TYPE(tgt) > 0x1000);
++#if PY_MAJOR_VERSION >= 3 && PY_MINOR_VERSION >= 11
++ /* Py >= 3.11 _PyObject_IMMORTAL_INIT sets initial refcount of 999999999 */
++ assert((Py_uintptr_t)Py_TYPE(src) > 0x1000 &&
++ (Py_REFCNT(src) < 0xa000000 ||
++ (Py_REFCNT(src) >= 999999999 && Py_REFCNT(src) < 999999999 + 0xa000000)));
++ assert((Py_uintptr_t)Py_TYPE(tgt) > 0x1000 &&
++ (Py_REFCNT(tgt) < 0xa000000 ||
++ (Py_REFCNT(tgt) >= 999999999 && Py_REFCNT(tgt) < 999999999 + 0xa000000)));
++#else
++ assert((Py_uintptr_t)Py_TYPE(src) > 0x1000 && Py_REFCNT(src) < 0xa000000);
++ assert((Py_uintptr_t)Py_TYPE(tgt) > 0x1000 && Py_REFCNT(tgt) < 0xa000000);
++#endif
+
+ if (ng->used_size >= ng->allo_size) {
+ Py_ssize_t allo = roundupsize(ng->used_size + 1);
+--
+2.40.1
+
diff --git a/dev-python/guppy3/guppy3-3.1.3-r1.ebuild b/dev-python/guppy3/guppy3-3.1.3-r1.ebuild
new file mode 100644
index 000000000..6167d8561
--- /dev/null
+++ b/dev-python/guppy3/guppy3-3.1.3-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_EXT=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="A Python Programming Environment & Heap analysis toolset"
+HOMEPAGE="
+ https://pypi.org/project/guppy3/
+ https://zhuyifei1999.github.io/guppy3/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+PATCHES=(
+ "${FILESDIR}"/guppy3-3.1.3-py311-refcount-assert.patch
+)
+
+python_test() {
+ cd "${T}" || die
+ "${EPYTHON}" "${S}"/guppy/heapy/test/test_all.py || die
+}
diff --git a/dev-python/guppy3/guppy3-3.1.4.ebuild b/dev-python/guppy3/guppy3-3.1.4.ebuild
new file mode 100644
index 000000000..5d4719b64
--- /dev/null
+++ b/dev-python/guppy3/guppy3-3.1.4.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_EXT=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="A Python Programming Environment & Heap analysis toolset"
+HOMEPAGE="
+ https://pypi.org/project/guppy3/
+ https://zhuyifei1999.github.io/guppy3/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+python_test() {
+ cd "${T}" || die
+ "${EPYTHON}" "${S}"/guppy/heapy/test/test_all.py || die
+}
diff --git a/dev-python/guppy3/metadata.xml b/dev-python/guppy3/metadata.xml
new file mode 100644
index 000000000..45cae801e
--- /dev/null
+++ b/dev-python/guppy3/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>zhuyifei1999@gmail.com</email>
+ <name>YiFei Zhu</name>
+ </maintainer>
+ <longdescription lang="en">Guppy 3 is a programming environment providing object and heap memory
+ sizing, profiling and analysis. It includes a prototypical
+ specification language that can be used to formally specify aspects of
+ Python programs and generate tests and documentation from a common
+ source.</longdescription>
+ <upstream>
+ <bugs-to>https://github.com/zhuyifei1999/guppy3/issues</bugs-to>
+ <remote-id type="pypi">guppy3</remote-id>
+ <remote-id type="github">zhuyifei1999/guppy3</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/hachoir/Manifest b/dev-python/hachoir/Manifest
new file mode 100644
index 000000000..cbfb33cc9
--- /dev/null
+++ b/dev-python/hachoir/Manifest
@@ -0,0 +1 @@
+DIST hachoir-3.3.0.gh.tar.gz 7905416 BLAKE2B 2125d28c932564867b37265206d5e27c9202b523ee8cb01d438aba44e6be42e76a6d2411ff72002db1a2dd28cf5561ff9c810920c88bbd8b20399007d85c3abf SHA512 8c9d6070877cedf706bec45f2813e145b3014dfc5c29d44e6c78fade165f0706cb214690e89551e4934a54c7e8e1fac1c73362fb9ada1c3d3d41f35556f43c7a
diff --git a/dev-python/hachoir/hachoir-3.3.0.ebuild b/dev-python/hachoir/hachoir-3.3.0.ebuild
new file mode 100644
index 000000000..f4389e697
--- /dev/null
+++ b/dev-python/hachoir/hachoir-3.3.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Hachoir is a Python library to view and edit a binary stream field by field "
+HOMEPAGE="https://github.com/vstinner/hachoir/"
+SRC_URI="https://github.com/vstinner/hachoir/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+distutils_enable_tests pytest
diff --git a/dev-python/hachoir/metadata.xml b/dev-python/hachoir/metadata.xml
new file mode 100644
index 000000000..57627bb8a
--- /dev/null
+++ b/dev-python/hachoir/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Julien Roy</name>
+ <email>julien@jroy.ca</email>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <name>Victor Stinner</name>
+ <email>vstinner@python.org</email>
+ </maintainer>
+ <changelog>https://github.com/vstinner/hachoir/releases</changelog>
+ <doc>http://hachoir.readthedocs.io/</doc>
+ <bugs-to>https://github.com/vstinner/hachoir/issues</bugs-to>
+ <remote-id type="github">vstinner/hachoir</remote-id>
+ <remote-id type="pypi">hachoir</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/hidapi/Manifest b/dev-python/hidapi/Manifest
deleted file mode 100644
index 257b0a044..000000000
--- a/dev-python/hidapi/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST hidapi-0.10.1.tar.gz 60712 BLAKE2B 9f66015f801a73ad520b303a011edbfecb6b2e79e4366b8e72cc15a4b509cd5744c4c5f9d710b120a44f10cab0c72edf6f679961979d7ad2581edf3238426609 SHA512 681e3691a4b05b13abc38d305c68e448728612442d0ef12ce54d12eeebee6e18d33566c462a276d18ce5e29fad208e6fcde49bbe4b162eae5cd72ce37dea880b
diff --git a/dev-python/hidapi/hidapi-0.10.1.ebuild b/dev-python/hidapi/hidapi-0.10.1.ebuild
deleted file mode 100644
index 4174ede60..000000000
--- a/dev-python/hidapi/hidapi-0.10.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-DISTUTILS_USE_SETUPTOOLS="rdepend"
-inherit distutils-r1
-
-DESCRIPTION="A Cython interface to the hidapi"
-HOMEPAGE="https://github.com/trezor/cython-hidapi"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="|| ( BSD GPL-3 )"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-SLOT="0"
-
-DEPEND="
- dev-python/cython[${PYTHON_USEDEP}]
- dev-libs/hidapi
-"
-RDEPEND="${DEPEND}"
-
-distutils_enable_tests pytest
-
-python_test() {
- epytest tests.py
-}
diff --git a/dev-python/hidapi/metadata.xml b/dev-python/hidapi/metadata.xml
deleted file mode 100644
index cd174bd3e..000000000
--- a/dev-python/hidapi/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>telans@posteo.de</email>
- <name>James Beddek</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/hijri-converter/Manifest b/dev-python/hijri-converter/Manifest
deleted file mode 100644
index 2c650f513..000000000
--- a/dev-python/hijri-converter/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST hijri-converter-2.1.1.tar.gz 36506 BLAKE2B a019d9c67e411ed8f1a8dfbb48ae56bd28f3240cfa2a959a47b79a4436dce241b5cf40b78731cecf21ce2fb555cc081ae77596bdab20aded1439dc016a43ed00 SHA512 ab20fbe8146dea503c3726ea7566f364e2442003c6a5c934d5efe0915d2dadae5fb78a8e741ac5eb06de81106e7d112e97e6da86f97754d648c2bcdb73d5a0b0
-DIST hijri-converter-2.1.3.tar.gz 36865 BLAKE2B 4076d2eda430327162716fe80f4093132e139d1cb01129d15c66aa908dcb212877bf478cd60af102969a5058d08dc15773a83d3dbad1ed5431188e9a8549e170 SHA512 d7307f4c11f04f266ca478d58c6248debc720204cc7b58da033cf8340e4cdfb07a6908f139d50260908224bbed1ab50885c3f82b348e1d35ce38c138d2bbf970
diff --git a/dev-python/hijri-converter/hijri-converter-2.1.1.ebuild b/dev-python/hijri-converter/hijri-converter-2.1.1.ebuild
deleted file mode 100644
index 2db846383..000000000
--- a/dev-python/hijri-converter/hijri-converter-2.1.1.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Accurate Hijri-Gregorian date converter based on the Umm al-Qura calendar"
-HOMEPAGE="https://github.com/dralshehri/hijri-converter"
-SRC_URI="https://github.com/dralshehri/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs
diff --git a/dev-python/hijridate/Manifest b/dev-python/hijridate/Manifest
new file mode 100644
index 000000000..454c2f905
--- /dev/null
+++ b/dev-python/hijridate/Manifest
@@ -0,0 +1 @@
+DIST hijridate-2.4.1.gh.tar.gz 42771 BLAKE2B 7640d2eb6760f1e496468f0cb11d25c3bb4bf8fc4274b1d802d25b8392a44a83c46564d3f2372f53a37ec10fd914c1fbf096dab359018350662b747f8c1c65a6 SHA512 64fc38afbb59ce5de3611602ed8b0262cf410b66236f57e30aeb3d39db904afbfb17b300dba0ac7ab2163b7c4c000b2d444fa3769f00c7a7e80b8fe4bbc7216c
diff --git a/dev-python/hijri-converter/hijri-converter-2.1.3.ebuild b/dev-python/hijridate/hijridate-2.4.1.ebuild
index 648972e4b..0d3a22cfa 100644
--- a/dev-python/hijri-converter/hijri-converter-2.1.3.ebuild
+++ b/dev-python/hijridate/hijridate-2.4.1.ebuild
@@ -1,19 +1,25 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{8..9} )
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
inherit distutils-r1
DESCRIPTION="Accurate Hijri-Gregorian date converter based on the Umm al-Qura calendar"
-HOMEPAGE="https://github.com/dralshehri/hijri-converter"
-SRC_URI="https://github.com/dralshehri/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+HOMEPAGE="https://github.com/dralshehri/hijridate"
+SRC_URI="https://github.com/dralshehri/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
distutils_enable_tests pytest
-distutils_enable_sphinx docs
+
+distutils_enable_sphinx docs \
+ dev-python/furo \
+ dev-python/myst-parser \
+ dev-python/sphinx-notfound-page \
+ dev-python/sphinx-rtd-theme
diff --git a/dev-python/hijridate/metadata.xml b/dev-python/hijridate/metadata.xml
new file mode 100644
index 000000000..d5b62be01
--- /dev/null
+++ b/dev-python/hijridate/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">hijridate</remote-id>
+ <remote-id type="github">dralshehri/hijridate</remote-id>
+ <doc>https://hijridate.readthedocs.io</doc>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/hstspreload/Manifest b/dev-python/hstspreload/Manifest
deleted file mode 100644
index 6046f8145..000000000
--- a/dev-python/hstspreload/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST hstspreload-2021.7.5.tar.gz 1212079 BLAKE2B eba71d75a7cd384922ec4fbc7a153d432b80b6c9bff9e799c6f2a72c86603d34bc77e19f45e6dd80140fa53c11f3c5b7688614011bea22a8edfd260d23cd9020 SHA512 a294a078c96a95427307921565c7568ff6b20b51e4b8fba7e170e0d9d91b590ac73c32b9b5167c5086cc00ff6887ed69c669fdec3d240f9b96e6e215ca8daf00
diff --git a/dev-python/hstspreload/hstspreload-2021.7.5.ebuild b/dev-python/hstspreload/hstspreload-2021.7.5.ebuild
deleted file mode 100644
index 99c1b0a23..000000000
--- a/dev-python/hstspreload/hstspreload-2021.7.5.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Chromium HSTS Preload list as a Python package"
-HOMEPAGE="
- https://hstspreload.org
- https://github.com/sethmlarson/hstspreload
- https://pypi.org/project/hstspreload
-"
-SRC_URI="https://github.com/sethmlarson/hstspreload/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-
-RESTRICT="test"
-PROPERTIES="test_network"
-
-distutils_enable_tests pytest
diff --git a/dev-python/hstspreload/metadata.xml b/dev-python/hstspreload/metadata.xml
deleted file mode 100644
index dfaf0ab64..000000000
--- a/dev-python/hstspreload/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-The package provides a single function: in_hsts_preload() which takes an IDNA-encoded host and returns either True or False regarding whether that host should be only accessed via HTTPS.
- </longdescription>
- <upstream>
- <remote-id type="github">sethmlarson/hstspreload</remote-id>
- <remote-id type="pypi">hstspreload</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/http-ece/Manifest b/dev-python/http-ece/Manifest
new file mode 100644
index 000000000..eb6b778be
--- /dev/null
+++ b/dev-python/http-ece/Manifest
@@ -0,0 +1,2 @@
+DIST http-ece-1.1.0.gh.tar.gz 19406 BLAKE2B 3347d318ac30c14d6d0b6149746c6dd8ad1681664c165a1dd89858cc50b04452db1576841280f44fe701ca0cb662dad6cbf4c44188b24dad9863185f76e0839d SHA512 22e5d23258c8a4216d63ee0c0e2765dfc742a1887baddca337cce090213e78c8849de01e3bd83c92628eb85ecdbcd6ad4e0462a47fde741028b83cb972865908
+DIST http_ece-1.2.0.tar.gz 8771 BLAKE2B 378c82356b4cc754485a830b44e4dd67e7bc3ccab0b1d6ab786b35c7c9529cf621c3a285cdcee9750803367567cb0387a9c7318296e1b401fee317b0ccf057a5 SHA512 84173c190798c1706eda826b49efbe5db394d4216a236df9265c7995cf7baf151d653c6ff34d4fd981513303808062bdebf7cc1d98bc7543bc352a11631f3180
diff --git a/dev-python/http-ece/http-ece-1.1.0.ebuild b/dev-python/http-ece/http-ece-1.1.0.ebuild
new file mode 100644
index 000000000..dadd8968c
--- /dev/null
+++ b/dev-python/http-ece/http-ece-1.1.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+MY_PN="encrypted-content-encoding"
+DESCRIPTION="Encrypted Content Encoding for HTTP"
+HOMEPAGE="
+ https://pypi.org/project/http-ece/
+ https://github.com/web-push-libs/encrypted-content-encoding
+"
+SRC_URI="https://github.com/martinthomson/${MY_PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}/python"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# v1.1.0 is incompatible with latest 'cryptography'
+RESTRICT="test"
+
+RDEPEND="dev-python/cryptography[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
diff --git a/dev-python/http-ece/http-ece-1.2.0.ebuild b/dev-python/http-ece/http-ece-1.2.0.ebuild
new file mode 100644
index 000000000..1b66fed68
--- /dev/null
+++ b/dev-python/http-ece/http-ece-1.2.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+MY_PN="encrypted-content-encoding"
+DESCRIPTION="Encrypted Content Encoding for HTTP"
+HOMEPAGE="
+ https://pypi.org/project/http-ece/
+ https://github.com/web-push-libs/encrypted-content-encoding
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# dev-python/nose removed from ::gentoo
+RESTRICT="test"
+
+RDEPEND="dev-python/cryptography[${PYTHON_USEDEP}]"
+
+# distutils_enable_tests nose
diff --git a/dev-python/http-ece/metadata.xml b/dev-python/http-ece/metadata.xml
new file mode 100644
index 000000000..66ae835da
--- /dev/null
+++ b/dev-python/http-ece/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">http-ece</remote-id>
+ <remote-id type="github">web-push-libs/encrypted-content-encoding</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/httptools/Manifest b/dev-python/httptools/Manifest
deleted file mode 100644
index 91c364771..000000000
--- a/dev-python/httptools/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST httptools-0.1.1.tar.gz 106162 BLAKE2B 325ef6d61db86ea2162a10e8cefc809ac233cfe47aceef4df9721a29591df6b70d1124e2a1d35ec6fff353842793ba782c49474435ce0829645f104babd4a49e SHA512 6351c6d9a384a81759b17cb0f0aa7cde410ff8131037186d79a16803e6fe4ba8f7cedc4bb592a519559a59a3bbaa7dfc478e620357d878444c42582741080190
diff --git a/dev-python/httptools/httptools-0.1.1.ebuild b/dev-python/httptools/httptools-0.1.1.ebuild
deleted file mode 100644
index fe510cd62..000000000
--- a/dev-python/httptools/httptools-0.1.1.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="httptools is a Python binding for the nodejs HTTP parser"
-HOMEPAGE="
- https://github.com/MagicStack/httptools
- https://pypi.org/project/httptools
-"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-BDEPEND="dev-python/cython[${PYTHON_USEDEP}]"
diff --git a/dev-python/httptools/metadata.xml b/dev-python/httptools/metadata.xml
deleted file mode 100644
index bb86492b2..000000000
--- a/dev-python/httptools/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <maintainer type="person">
- <email>piotr.staroszczyk@get24.org</email>
- <name>Piotr Staroszczyk</name>
- </maintainer>
- <upstream>
- <remote-id type="github">MagicStack/httptools</remote-id>
- <remote-id type="pypi">httptools</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/hunter/Manifest b/dev-python/hunter/Manifest
index 8d0386983..4ab653d99 100644
--- a/dev-python/hunter/Manifest
+++ b/dev-python/hunter/Manifest
@@ -1 +1 @@
-DIST hunter-3.3.8.tar.gz 536260 BLAKE2B cdb048798dd831229f3c3ff784b16f94ee45c54bc35eb29e9b228f2736c103dbc39357df82476a2b25310501d33be67474f85c2f5a97a61baca20c8dfc5a725f SHA512 4d715893c805afb5ca709f8c8ce20fbf5ec8540a06c7536862d941a5a4f45b0721f8cd3aa2eeb79c072152d243f4d0ce949431defbdc8c17831f744c3f7ff58a
+DIST hunter-3.6.1.gh.tar.gz 626351 BLAKE2B 077d61faa8348434ca4bb76b4f703ea341d10df0a822cd57575881082c009f3d94f3808642bd569726c20450d42c5d24a95919f099701e31cf44a50cbeb2f0b7 SHA512 1215da594c51cfce6341e3193de14a3386de4d28f0e0745c11b8bd6ba45d33d91628b8abfb528716968f119fa6ef64e7e2fb9ee222af16bfc8519eda354edd11
diff --git a/dev-python/hunter/files/fix_backend.patch b/dev-python/hunter/files/fix_backend.patch
new file mode 100644
index 000000000..5410ea8f7
--- /dev/null
+++ b/dev-python/hunter/files/fix_backend.patch
@@ -0,0 +1,12 @@
+Upstream uses custom file as backend
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -4,7 +4,7 @@ requires = [
+ "wheel",
+ "setuptools_scm>=3.3.1,!=4.0.0",
+ ]
+-build-backend = "backend"
++build-backend = "setuptools.build_meta"
+ backend-path = ["build_backend"]
+
+ [tool.ruff.per-file-ignores]
diff --git a/dev-python/hunter/files/remove-setuptools_scm-upper-constraint.patch b/dev-python/hunter/files/remove-setuptools_scm-upper-constraint.patch
deleted file mode 100644
index 5e831b906..000000000
--- a/dev-python/hunter/files/remove-setuptools_scm-upper-constraint.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- a/setup.py
-+++ b/setup.py
-@@ -163,10 +163,10 @@
- ':platform_system != "Windows"': ['manhole >= 1.5'],
- },
- setup_requires=[
-- 'setuptools_scm>=3.3.1,!=4.0.0,<6.0',
-+ 'setuptools_scm>=3.3.1',
- 'cython',
- ] if Cython else [
-- 'setuptools_scm>=3.3.1,!=4.0.0,<6.0',
-+ 'setuptools_scm>=3.3.1',
- ],
- entry_points={
- 'console_scripts': [
diff --git a/dev-python/hunter/hunter-3.3.8.ebuild b/dev-python/hunter/hunter-3.3.8.ebuild
deleted file mode 100644
index c2252fc8c..000000000
--- a/dev-python/hunter/hunter-3.3.8.ebuild
+++ /dev/null
@@ -1,76 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-inherit distutils-r1
-
-DESCRIPTION="Hunter is a flexible code tracing toolkit"
-HOMEPAGE="
- https://github.com/ionelmc/python-hunter
- https://pypi.org/project/hunter
-"
-SRC_URI="https://github.com/ionelmc/python-${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/python-${P}"
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="dev-python/colorama[${PYTHON_USEDEP}]"
-DEPEND="dev-python/cython[${PYTHON_USEDEP}]"
-BDEPEND="
- >=dev-python/setuptools_scm-3.3.1[${PYTHON_USEDEP}]
- test? (
- dev-python/aspectlib[${PYTHON_USEDEP}]
- dev-python/ipdb[${PYTHON_USEDEP}]
- dev-python/manhole[${PYTHON_USEDEP}]
- dev-python/process-tests[${PYTHON_USEDEP}]
- dev-python/pytest-benchmark[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
- )
-"
-
-DOCS=( AUTHORS.rst CHANGELOG.rst README.rst )
-PATCHES=( "${FILESDIR}/remove-setuptools_scm-upper-constraint.patch" )
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs ">=dev-python/sphinx-py3doc-enhanced-theme-2.3.2"
-
-python_compile() {
- # native extension build fails with python3.10
- # https://github.com/ionelmc/python-hunter/issues/104
- if [[ ${EPYTHON} == python3.10 ]]; then
- SETUPPY_NOEXT="yes" distutils-r1_python_compile
- return
- fi
-
- distutils-r1_python_compile
- if use test; then
- "${EPYTHON}" tests/setup.py build_ext --force --inplace || die
- fi
-}
-
-python_test() {
- local PUREPYTHONHUNTER
- local -x PYTHONPATH="${S}/tests:${BUILD_DIR}/lib:${PYTHONPATH}"
- local epytest_args=(
- --deselect tests/test_remote.py::test_gdb
- --deselect tests/test_remote.py::test_gdb_clean_exit
- --deselect tests/test_remote.py::test_manhole
- --deselect tests/test_remote.py::test_manhole_clean_exit
- )
-
- if [[ ${EPYTHON} == python3.10 ]]; then
- epytest_args+=(
- --deselect tests/test_cookbook.py::test_probe
- --deselect tests/test_tracer.py::test_perf_filter[pure]
- --deselect tests/test_tracer.py::test_perf_stdlib[pure]
- --deselect tests/test_tracer.py::test_perf_actions[pure]
- --deselect tests/test_tracer.py::test_proper_backend
- )
- PUREPYTHONHUNTER="yes"
- fi
-
- epytest "${epytest_args[@]}"
-}
diff --git a/dev-python/hunter/hunter-3.6.1.ebuild b/dev-python/hunter/hunter-3.6.1.ebuild
new file mode 100644
index 000000000..51d1aa978
--- /dev/null
+++ b/dev-python/hunter/hunter-3.6.1.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+PYTHON_COMPAT=( python3_{11..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+DOCS_BUILDER="sphinx"
+DOCS_DEPEND="dev-python/sphinx-py3doc-enhanced-theme"
+DOCS_DIR="docs"
+
+inherit distutils-r1 docs
+
+DESCRIPTION="Hunter is a flexible code tracing toolkit"
+HOMEPAGE="
+ https://github.com/ionelmc/python-hunter
+ https://pypi.org/project/hunter/
+"
+SRC_URI="https://github.com/ionelmc/python-${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/python-${P}"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+ test? (
+ dev-python/aspectlib[${PYTHON_USEDEP}]
+ dev-python/ipdb[${PYTHON_USEDEP}]
+ dev-python/manhole[${PYTHON_USEDEP}]
+ dev-python/process-tests[${PYTHON_USEDEP}]
+ dev-python/pytest-benchmark[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( AUTHORS.rst CHANGELOG.rst README.rst )
+
+PATCHES=(
+ # Upstream uses a custom file to define backend as setuptools
+ "${FILESDIR}/fix_backend.patch"
+)
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # I think it needs internet
+ tests/test_remote.py::test_manhole_clean_exit
+ # Need a py.io module that does not seem to exist
+ tests/test_util.py::test_safe_repr
+ # Permission denied in a chroot
+ tests/test_remote.py::test_gdb
+ tests/test_remote.py::test_gdb_clean_exit
+)
+
+python_test() {
+ # Need to import files in tests folder
+ cd "${S}/tests" || die
+ if [[ "${EPYTHON}" == "python3.12" ]]; then
+ EPYTEST_DESELECT+=(
+ # From what I could understand, it fail because of a change in pathlib in 3.12
+ tests/test_cookbook.py::test_profile
+ tests/test_integration.py::test_errorsnooper
+ tests/test_integration.py::test_errorsnooper_fastmode
+ )
+ fi
+ epytest
+}
+
+src_prepare() {
+ # Need a module that does not exist (see https://github.com/ionelmc/python-hunter/issues/116)
+ rm "${S}/tests/test_tracer.py" || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/hunter/metadata.xml b/dev-python/hunter/metadata.xml
index c0ae14636..1d92289a1 100644
--- a/dev-python/hunter/metadata.xml
+++ b/dev-python/hunter/metadata.xml
@@ -1,24 +1,20 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
+ <!-- maintainer-needed -->
+ <longdescription lang="en">
Hunter is a flexible code tracing toolkit, not for measuring coverage, but for debugging, logging, inspection and other nefarious purposes. It has a simple Python API, a convenient terminal API and a CLI tool to attach to processes.
Design notes
Hunter doesn't do everything. As a design goal of this library some things are made intentionally austere and verbose (to avoid complexity, confusion and inconsistency). This has few consequences:
- There are Operators but there's no negation operator. Instead you're expected to negate a Query object, eg: ~Q(module='re').
- There are no specialized operators or filters - all filters behave exactly the same. For example:
- No filter for packages. You're expected to filter by module with an operator.
- No filter for arguments, return values or variables. You're expected to write your own filter function and deal with the problems of poking into objects.
- Layering is minimal. There's are some helpers that do some argument processing and conversions to save you some typing but that's about it.
- The library doesn't try to hide the mechanics of tracing in Python - it's 1:1 regarding what Python sends to a trace function if you'd be using sys.settrace.
- Doesn't have any storage. You are expected to redirect output to a file.
+ There are Operators but there's no negation operator. Instead you're expected to negate a Query object, eg: ~Q(module='re').
+ There are no specialized operators or filters - all filters behave exactly the same. For example:
+ No filter for packages. You're expected to filter by module with an operator.
+ No filter for arguments, return values or variables. You're expected to write your own filter function and deal with the problems of poking into objects.
+ Layering is minimal. There's are some helpers that do some argument processing and conversions to save you some typing but that's about it.
+ The library doesn't try to hide the mechanics of tracing in Python - it's 1:1 regarding what Python sends to a trace function if you'd be using sys.settrace.
+ Doesn't have any storage. You are expected to redirect output to a file.
You should look at it like it's a tool to help you understand and debug big applications, or a framework ridding you of the boring parts of settrace, not something that helps you learn Python.
FAQ
@@ -26,31 +22,31 @@ Why not Smiley?
There's some obvious overlap with smiley but there are few fundamental differences:
- Complexity. Smiley is simply over-engineered:
- It uses IPC and a SQL database.
- It has a webserver. Lots of dependencies.
- It uses threads. Side-effects and subtle bugs are introduced in your code.
- It records everything. Tries to dump any variable. Often fails and stops working.
+ Complexity. Smiley is simply over-engineered:
+ It uses IPC and a SQL database.
+ It has a webserver. Lots of dependencies.
+ It uses threads. Side-effects and subtle bugs are introduced in your code.
+ It records everything. Tries to dump any variable. Often fails and stops working.
- Why do you need all that just to debug some stuff in a terminal? Simply put, it's a nice idea but the design choices work against you when you're already neck-deep into debugging your own code. In my experience Smiley has been very buggy and unreliable. Your mileage may vary of course.
+ Why do you need all that just to debug some stuff in a terminal? Simply put, it's a nice idea but the design choices work against you when you're already neck-deep into debugging your own code. In my experience Smiley has been very buggy and unreliable. Your mileage may vary of course.
- Tracing long running code. This will make Smiley record lots of data, making it unusable.
+ Tracing long running code. This will make Smiley record lots of data, making it unusable.
- Now because Smiley records everything, you'd think it's better suited for short programs. But alas, if your program runs quickly then it's pointless to record the execution. You can just run it again.
+ Now because Smiley records everything, you'd think it's better suited for short programs. But alas, if your program runs quickly then it's pointless to record the execution. You can just run it again.
- It seems there's only one situation where it's reasonable to use Smiley: tracing io-bound apps remotely. Those apps don't execute lots of code, they just wait on network so Smiley's storage won't blow out of proportion and tracing overhead might be acceptable.
+ It seems there's only one situation where it's reasonable to use Smiley: tracing io-bound apps remotely. Those apps don't execute lots of code, they just wait on network so Smiley's storage won't blow out of proportion and tracing overhead might be acceptable.
- Use-cases. It seems to me Smiley's purpose is not really debugging code, but more of a "non interactive monitoring" tool.
+ Use-cases. It seems to me Smiley's purpose is not really debugging code, but more of a "non interactive monitoring" tool.
In contrast, Hunter is very simple:
- Few dependencies.
+ Few dependencies.
- Low overhead (tracing/filtering code has an optional Cython extension).
+ Low overhead (tracing/filtering code has an optional Cython extension).
- No storage. This simplifies lots of things.
+ No storage. This simplifies lots of things.
- The only cost is that you might need to run the code multiple times to get the filtering/actions right. This means Hunter is not really suited for "post-mortem" debugging. If you can't reproduce the problem anymore then Hunter won't be of much help.
+ The only cost is that you might need to run the code multiple times to get the filtering/actions right. This means Hunter is not really suited for "post-mortem" debugging. If you can't reproduce the problem anymore then Hunter won't be of much help.
Why not pytrace?
@@ -65,9 +61,11 @@ For purposes of debugging coverage is a great tool but only as far as "debugging
From the other perspective, you'd be wondering if you could use Hunter to measure coverage-like things. You could do it but for that purpose Hunter is very "rough": it has no builtin storage. You'd have to implement your own storage. You can do it but it wouldn't give you any advantage over making your own tracer if you don't need to "pre-filter" whatever you're recording.
In other words, filtering events is the main selling point of Hunter - it's fast (cython implementation) and the query API is flexible enough.
- </longdescription>
- <upstream>
- <remote-id type="github">ionelmc/python-hunter</remote-id>
- <remote-id type="pypi">hunter</remote-id>
- </upstream>
+ </longdescription>
+ <upstream>
+ <remote-id type="github">ionelmc/python-hunter</remote-id>
+ <remote-id type="pypi">hunter</remote-id>
+ <doc>https://python-hunter.readthedocs.io/</doc>
+ <changelog>https://python-hunter.readthedocs.io/en/latest/changelog.html</changelog>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/hwi/Manifest b/dev-python/hwi/Manifest
deleted file mode 100644
index b46b59def..000000000
--- a/dev-python/hwi/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST hwi-1.2.1.tar.gz 200755 BLAKE2B b426dcd78f0ff6039541b768155a0be11f591ee4e72957fce16ffd26841cd92c3e80ce57daefc531c31f912ec94139f53db8823a3fadf347f0153c1d47f1ad08 SHA512 b8cdda0ce9d4d9734e2754a47343fa7f331f55c609448561b1bed304629b6f01d80dadba55193633ad6ac1a8ba595f4574ae8aa32cfc841c34cbeff315310071
-DIST hwi-2.0.2.tar.gz 2777606 BLAKE2B eacdf86c96f9123a3fef08f349a9540669dc3d304d8ef3d5c0c37baf923ec31265c1de4e8b9e68cf377ebaf212bd6b6abf935d9050b26955b335db6f3edf6126 SHA512 6c415d0ac3a673e38c87c8d9d64e789743226beff8c0148d2df3d5fc504ccce40159ddf190c1158d19f9adff4ce8ac7cf1b2ed654b1a9b9dd42181677d9823f2
diff --git a/dev-python/hwi/hwi-1.2.1.ebuild b/dev-python/hwi/hwi-1.2.1.ebuild
deleted file mode 100644
index 6aa2f6e77..000000000
--- a/dev-python/hwi/hwi-1.2.1.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1 udev
-
-DESCRIPTION="Library and command line tool for interacting with hardware wallets"
-HOMEPAGE="https://github.com/bitcoin-core/HWI"
-
-MY_PN="HWI"
-MY_P="${MY_PN}-${PV}"
-SRC_URI="https://github.com/bitcoin-core/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="udev doc"
-
-BDEPEND=""
-RDEPEND="
- >=dev-python/bitbox02-4.1.0[${PYTHON_USEDEP}]
- >=dev-python/ecdsa-0.13.0[${PYTHON_USEDEP}]
- >=dev-python/hidapi-0.7.99[${PYTHON_USEDEP}]
- >=dev-python/libusb1-1.7.0[${PYTHON_USEDEP}]
- >=dev-python/mnemonic-0.18.0[${PYTHON_USEDEP}]
- >=dev-python/pyaes-1.6.0[${PYTHON_USEDEP}]
- >=dev-python/typing-extensions-3.7.4.1[${PYTHON_USEDEP}]"
-
-distutils_enable_tests unittest
-
-S="${WORKDIR}/${MY_P}"
-
-python_prepare_all() {
- # remove upper bounds on dependencies from setup.py file
- sed 's/,<[0-9.]\+//' -i setup.py || die "sed failed"
-
- pushd test
- # remove tests that require hardware emulation
- rm test_coldcard.py test_device.py test_digitalbitbox.py test_keepkey.py test_ledger.py test_trezor.py
- # remove udev tests because it expects the rules are installed in the libs folder
- rm test_udevrules.py
- popd
-
- distutils-r1_python_prepare_all
-}
-
-python_install_all() {
- use udev && udev_dorules hwilib/udev/*.rules
- use doc && dodoc -r docs
-
- distutils-r1_python_install_all
-}
diff --git a/dev-python/hwi/hwi-2.0.2.ebuild b/dev-python/hwi/hwi-2.0.2.ebuild
deleted file mode 100644
index 6c009aed2..000000000
--- a/dev-python/hwi/hwi-2.0.2.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 2020-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1 udev
-
-DESCRIPTION="Library and command line tool for interacting with hardware wallets"
-HOMEPAGE="https://github.com/bitcoin-core/HWI"
-
-MY_PN="HWI"
-MY_P="${MY_PN}-${PV}"
-SRC_URI="https://github.com/bitcoin-core/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="udev doc"
-
-BDEPEND=""
-RDEPEND="
- >=dev-python/bitbox02-5.3.0[${PYTHON_USEDEP}]
- >=dev-python/ecdsa-0.13.0[${PYTHON_USEDEP}]
- >=dev-python/hidapi-0.7.99[${PYTHON_USEDEP}]
- >=dev-python/libusb1-1.7.0[${PYTHON_USEDEP}]
- >=dev-python/mnemonic-0.18.0[${PYTHON_USEDEP}]
- >=dev-python/pyaes-1.6.0[${PYTHON_USEDEP}]
- >=dev-python/typing-extensions-3.7.4.1[${PYTHON_USEDEP}]"
-
-distutils_enable_tests unittest
-
-S="${WORKDIR}/${MY_P}"
-
-python_prepare_all() {
- # remove upper bounds on dependencies from setup.py file
- sed 's/,<[0-9.]\+//' -i setup.py || die "sed failed"
-
- pushd test
- # remove tests that require hardware emulation
- rm test_coldcard.py test_device.py test_digitalbitbox.py test_keepkey.py test_ledger.py test_trezor.py
- # remove udev tests because it expects the rules are installed in the libs folder
- rm test_udevrules.py
- popd
-
- distutils-r1_python_prepare_all
-}
-
-python_install_all() {
- use udev && udev_dorules hwilib/udev/*.rules
- use doc && dodoc -r docs
-
- distutils-r1_python_install_all
-}
diff --git a/dev-python/hwi/metadata.xml b/dev-python/hwi/metadata.xml
deleted file mode 100644
index b63e8de30..000000000
--- a/dev-python/hwi/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>a.zuber@gmx.ch</email>
- <name>Andreas Zuber</name>
- </maintainer>
- <upstream>
- <remote-id type="github">bitcoin-core/HWI</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/hypercorn/Manifest b/dev-python/hypercorn/Manifest
deleted file mode 100644
index 6274153d0..000000000
--- a/dev-python/hypercorn/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST hypercorn-0.11.2.tar.gz 150475 BLAKE2B fa2c2572fe61aa09bfa62691ac18a8d0149a2e31dda82c77c4fc6ff2720739a824e05ff754d9aec9c499e6c02fb77e1f0a2bd4e3efbb3154730fc369f91b949c SHA512 7d90f654445cc3db6cec001ac8523513dec78bd8bce03ddfb56cd46b999c6d5b4f44a7853f2e88673c3e288c104adae3d105c8c8147f306656136cbb9771b289
diff --git a/dev-python/hypercorn/files/hypercorn-0.11.2-no-coverage.patch b/dev-python/hypercorn/files/hypercorn-0.11.2-no-coverage.patch
deleted file mode 100644
index 8c3f4210a..000000000
--- a/dev-python/hypercorn/files/hypercorn-0.11.2-no-coverage.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- a/setup.cfg
-+++ b/setup.cfg
-@@ -43,5 +43,5 @@
- ignore_missing_imports = True
-
- [tool:pytest]
--addopts = --no-cov-on-fail --showlocals
-+addopts = --showlocals
- testpaths = tests
diff --git a/dev-python/hypercorn/hypercorn-0.11.2.ebuild b/dev-python/hypercorn/hypercorn-0.11.2.ebuild
deleted file mode 100644
index 181ee3e08..000000000
--- a/dev-python/hypercorn/hypercorn-0.11.2.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_USE_SETUPTOOLS=rdepend
-DOCS_BUILDER="sphinx"
-DOCS_DEPEND="
- dev-python/sphinxcontrib-napoleon
- dev-python/pydata-sphinx-theme
-"
-DOCS_DIR="${S}/docs"
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1 docs optfeature
-
-DESCRIPTION="ASGI Server based on Hyper libraries and inspired by Gunicorn"
-HOMEPAGE="
- https://pgjones.gitlab.io/hypercorn
- https://gitlab.com/pgjones/hypercorn
- https://github.com/pgjones/hypercorn
- https://pypi.org/project/Hypercorn
-"
-SRC_URI="https://github.com/pgjones/hypercorn/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- dev-python/h11[${PYTHON_USEDEP}]
- >=dev-python/hyper-h2-3.1.0[${PYTHON_USEDEP}]
- dev-python/priority[${PYTHON_USEDEP}]
- dev-python/toml[${PYTHON_USEDEP}]
- >=dev-python/wsproto-0.14.0[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- dev-python/hypothesis[${PYTHON_USEDEP}]
- >=dev-python/mock-4[${PYTHON_USEDEP}]
- dev-python/pytest-asyncio[${PYTHON_USEDEP}]
- dev-python/pytest-trio[${PYTHON_USEDEP}]
- dev-python/trio[${PYTHON_USEDEP}]
- )
-"
-
-PATCHES=( "${FILESDIR}/${P}-no-coverage.patch" )
-
-distutils_enable_tests pytest
-
-python_test() {
- epytest -vv --deselect tests/trio/test_keep_alive.py::test_http1_keep_alive_pre_request || die
-}
-
-pkg_postinst() {
- optfeature "asyncio event loop on top of libuv" dev-python/uvloop
- optfeature "websockets support using wsproto" dev-python/wsproto
- optfeature "websockets support using websockets" dev-python/websockets
- optfeature "httpstools package for http protocol" dev-python/httptools
- optfeature "efficient debug reload" dev-python/watchgod
-}
diff --git a/dev-python/hypercorn/metadata.xml b/dev-python/hypercorn/metadata.xml
deleted file mode 100644
index f39c42410..000000000
--- a/dev-python/hypercorn/metadata.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-Hypercorn is an ASGI web server based on the sans-io hyper, h11, h2, and wsproto libraries
-and inspired by Gunicorn. Hypercorn supports HTTP/1, HTTP/2, WebSockets (over HTTP/1 and
-HTTP/2), ASGI/2, and ASGI/3 specifications. Hypercorn can utilise asyncio, uvloop, or trio
-worker types.
-
-Hypercorn can optionally serve the current draft of the HTTP/3 specification
-using the aioquic library. To enable this install the h3 optional extra, pip install
-hypercorn[h3] and then choose a quic binding e.g. hypercorn --quic-bind localhost:4433
-
-Hypercorn was initially part of Quart before being separated out into a
-standalone ASGI server. Hypercorn forked from version 0.5.0 of Quart.
- </longdescription>
- <upstream>
- <remote-id type="github">pgjones/hypercorn</remote-id>
- <remote-id type="gitlab">pgjones/hypercorn</remote-id>
- <remote-id type="pypi">hypercorn</remote-id>
- </upstream>
-</pkgmetadata>
-
diff --git a/dev-python/hypothesmith/Manifest b/dev-python/hypothesmith/Manifest
new file mode 100644
index 000000000..37e577843
--- /dev/null
+++ b/dev-python/hypothesmith/Manifest
@@ -0,0 +1 @@
+DIST hypothesmith-0.2.0.tar.gz 24933 BLAKE2B 36c5296d2ab5d86a2dcde565bda16aff31de7f0be1cbc487ea2115e6e3baacf5ba740192885dd5a843d53c51932551574c0debd97f1b374a4e0bea48ec4204d4 SHA512 b82627897f0e07e6249ce2d3730134690dbe340b81632a1101b6b6b9a9ac6ccd0f350ba10f729349ef200b9243081f7f58eb760ccbcb4175adfcc5f411a8a045
diff --git a/dev-python/hypothesmith/hypothesmith-0.2.0.ebuild b/dev-python/hypothesmith/hypothesmith-0.2.0.ebuild
new file mode 100644
index 000000000..a67837601
--- /dev/null
+++ b/dev-python/hypothesmith/hypothesmith-0.2.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_10 ) # python3_11 depends on dev-python/libcst
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Hypothesis strategies for generating Python programs"
+HOMEPAGE="https://github.com/Zac-HD/hypothesmith"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+src_prepare() {
+ default
+ sed -e '/-Werror/d' \
+ -e '/--cov/d' \
+ -i tox.ini || die
+}
+
+RDEPEND="
+ >=dev-python/hypothesis-5.41.0[${PYTHON_USEDEP}]
+ >=dev-python/lark-0.7.2[${PYTHON_USEDEP}]
+ >=dev-python/libcst-0.3.8[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-python/black[${PYTHON_USEDEP}]
+ dev-python/parso[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests --install pytest
+
+python_test() {
+ # https://github.com/Zac-HD/hypothesmith/issues/21
+ local EPYTEST_DESELECT=( 'tests/test_cst.py::test_source_code_from_libcst_node_type' )
+ epytest
+}
diff --git a/dev-python/hypothesmith/metadata.xml b/dev-python/hypothesmith/metadata.xml
new file mode 100644
index 000000000..c9f2d9ef1
--- /dev/null
+++ b/dev-python/hypothesmith/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">Zac-HD/hypothesmith</remote-id>
+ <remote-id type="pypi">hypothesmith</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/i3ipc/i3ipc-2.2.1-r1.ebuild b/dev-python/i3ipc/i3ipc-2.2.1-r1.ebuild
new file mode 100644
index 000000000..3099a4eb2
--- /dev/null
+++ b/dev-python/i3ipc/i3ipc-2.2.1-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517="setuptools"
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 virtualx pypi
+
+DESCRIPTION="An improved Python library to control i3wm and sway."
+HOMEPAGE="https://github.com/altdesktop/i3ipc-python"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ ${RDEPEND}
+ dev-python/python-xlib[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ ${BDEPEND}
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ x11-wm/i3
+ )
+"
+
+RESTRICT="test"
+
+distutils_enable_tests pytest
+
+src_test() {
+ virtx distutils-r1_src_test
+}
diff --git a/dev-python/i3ipc/i3ipc-2.2.1.ebuild b/dev-python/i3ipc/i3ipc-2.2.1.ebuild
index 9b1a21c26..ef1aba773 100644
--- a/dev-python/i3ipc/i3ipc-2.2.1.ebuild
+++ b/dev-python/i3ipc/i3ipc-2.2.1.ebuild
@@ -1,21 +1,20 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="An improved Python library to control i3wm and sway."
HOMEPAGE="https://github.com/altdesktop/i3ipc-python"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~x86"
RDEPEND="dev-python/python-xlib"
-DEPEND="${DEPEND}"
distutils_enable_tests pytest
diff --git a/dev-python/i3ipc/metadata.xml b/dev-python/i3ipc/metadata.xml
index a0a60d714..820613ee1 100644
--- a/dev-python/i3ipc/metadata.xml
+++ b/dev-python/i3ipc/metadata.xml
@@ -1,6 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">altdesktop/i3ipc-python</remote-id>
+ <remote-id type="pypi">i3ipc</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/iOSbackup/Manifest b/dev-python/iOSbackup/Manifest
new file mode 100644
index 000000000..2d7defc2b
--- /dev/null
+++ b/dev-python/iOSbackup/Manifest
@@ -0,0 +1 @@
+DIST iOSbackup-0.9.925.tar.gz 25228 BLAKE2B aa4be5fb2190a3dd8e88c28129a2422c14041e564ef5ba3fc75b444049632bf621c7581c8a18d03afe3592d03ad7830a9384694a71ee856f013d96b49e4b0a06 SHA512 b8339359f806f9629736a7abe9e35a6b868c08529b43d0b9e0408afca25babc167ff70abb2516f557ac071fa26193d1cfaf1348f7bfee0eb57ef736c1c5d83d0
diff --git a/dev-python/iOSbackup/iOSbackup-0.9.925.ebuild b/dev-python/iOSbackup/iOSbackup-0.9.925.ebuild
new file mode 100644
index 000000000..178f5fc46
--- /dev/null
+++ b/dev-python/iOSbackup/iOSbackup-0.9.925.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYPI_NO_NORMALIZE=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_11 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Reads and extracts files from a password-encrypted iOS backup"
+HOMEPAGE="https://pypi.org/project/iOSbackup/ https://github.com/avibrazil/iOSbackup"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="dev-python/biplist[${PYTHON_USEDEP}]
+dev-python/pycryptodome[${PYTHON_USEDEP}]
+dev-python/NSKeyedUnArchiver[${PYTHON_USEDEP}]"
diff --git a/dev-python/iOSbackup/metadata.xml b/dev-python/iOSbackup/metadata.xml
new file mode 100644
index 000000000..8dd62c02a
--- /dev/null
+++ b/dev-python/iOSbackup/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Vitaly Zdanevich</name>
+ <email>zdanevich.vitaly@ya.ru</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">avibrazil/iOSbackup</remote-id>
+ <remote-id type="pypi">iOSbackup</remote-id>
+ <bugs-to>https://github.com/avibrazil/iOSbackup</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/icecream/Manifest b/dev-python/icecream/Manifest
new file mode 100644
index 000000000..875e4c6ea
--- /dev/null
+++ b/dev-python/icecream/Manifest
@@ -0,0 +1 @@
+DIST icecream-2.1.3.gh.tar.gz 38879 BLAKE2B 0a3f1e1c75730255dee4d11ffd5954bc0b6d84eb971865300f00e2015fba84561d179cc1640766841cb58483b741e14bb36ace31a6e4cee67321cb385fd85995 SHA512 b319109248c7ae65a24fe7fa85b7900435a3f681466612c0c25769fe3ee4cd2bc5305bff8be1bd36ca26064d54cf9738b58d24a6c1d9b3d3ebe93228656b3ee3
diff --git a/dev-python/icecream/icecream-2.1.3.ebuild b/dev-python/icecream/icecream-2.1.3.ebuild
new file mode 100644
index 000000000..c00d306ea
--- /dev/null
+++ b/dev-python/icecream/icecream-2.1.3.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+DESCRIPTION="Pythonic task execution"
+HOMEPAGE="https://github.com/gruns/icecream https://pypi.org/project/icecream/"
+SRC_URI="https://github.com/gruns/icecream/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/colorama-0.3.9[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/executing-0.3.1[${PYTHON_USEDEP}]
+ >=dev-python/asttokens-2.0.1[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests pytest
+EPYTEST_DESELECT=(
+ # Seems like those cannot work in the sandbox
+ tests/test_icecream.py::TestIceCream::testEnableDisable
+ tests/test_icecream.py::TestIceCream::testSingledispatchArgumentToString
+
+ # This one fails on Python3.12 because it is outdated
+ tests/test_icecream.py::TestIceCream::testMultilineContainerArgs
+)
diff --git a/dev-python/icecream/metadata.xml b/dev-python/icecream/metadata.xml
new file mode 100644
index 000000000..f4bf55aa5
--- /dev/null
+++ b/dev-python/icecream/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">icecream</remote-id>
+ <remote-id type="github">gruns/icecream</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/injector/Manifest b/dev-python/injector/Manifest
index e56b938b0..6116014f5 100644
--- a/dev-python/injector/Manifest
+++ b/dev-python/injector/Manifest
@@ -1 +1 @@
-DIST injector-0.18.4.tar.gz 23230 BLAKE2B 3cc344f5eab64f58575d4772b7d867988b4b3550b2cb9d7f24d169f66e05953cb395800d77fc9edcb5ccfdbc3b8688cae0f33170aa3312b19c2d44173f2e8ee1 SHA512 3afc5e69ade4d60f6f60c81b1067428852a39767a14c779436ed9137e922c47f0818b599afef0b13a1dd6fe3cd95a16fb85963e7fc5c3b6f0ae84ec54f219aca
+DIST injector-0.21.0.gh.tar.gz 46600 BLAKE2B 0ccb732b3acb29fea981268ec3764bad7fae3d79a87880c302b59ca02e9f490ba6e974ebab8b336afa6356e66e2c37c810bbe5910381b6b010e3cbcd9323e507 SHA512 086eb61abc512574646cddef0a14d81fe45ad12f2f73658c6c2a31f45e0e793c7a32c0ce5bed768263bfd075f943349734e600e23cab67ab72a20e7a86899f6f
diff --git a/dev-python/injector/injector-0.18.4.ebuild b/dev-python/injector/injector-0.18.4.ebuild
deleted file mode 100644
index 0805fd917..000000000
--- a/dev-python/injector/injector-0.18.4.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-inherit distutils-r1
-
-DESCRIPTION="Python dependency injection framework"
-HOMEPAGE="
- https://pypi.org/project/injector
- https://github.com/alecthomas/injector
-"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-KEYWORDS="~amd64"
-LICENSE="BSD"
-SLOT="0"
-
-DEPEND="dev-python/typing-extensions[${PYTHON_USEDEP}]"
-RDEPEND="${DEPEND}"
diff --git a/dev-python/injector/injector-0.21.0-r1.ebuild b/dev-python/injector/injector-0.21.0-r1.ebuild
new file mode 100644
index 000000000..7f9655b42
--- /dev/null
+++ b/dev-python/injector/injector-0.21.0-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python dependency injection framework, inspired by Guice"
+HOMEPAGE="https://github.com/python-injector/injector"
+SRC_URI="
+ https://github.com/python-injector/${PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~x86-linux"
+
+distutils_enable_sphinx docs
+distutils_enable_tests pytest
+
+python_install_all() {
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/injector/metadata.xml b/dev-python/injector/metadata.xml
index 23101827a..877dd5791 100644
--- a/dev-python/injector/metadata.xml
+++ b/dev-python/injector/metadata.xml
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>myrvogna@electrosphe.re</email>
- <name>Octiabrina Terrien-Puig</name>
+ <email>gonegrier.duarte@gmail.com</email>
+ <name>Gonçalo Negrier Duarte</name>
</maintainer>
<upstream>
- <remote-id type="pypi">injector</remote-id>
- <remote-id type="github">alecthomas/injector</remote-id>
+ <remote-id type="github">python-injector/injector</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-python/internetarchive/Manifest b/dev-python/internetarchive/Manifest
new file mode 100644
index 000000000..bd3ceb4b6
--- /dev/null
+++ b/dev-python/internetarchive/Manifest
@@ -0,0 +1 @@
+DIST v3.7.0.tar.gz 145990 BLAKE2B f4832193fde0afdfd6ea1af46d0dea08abd73e56b5d799eb4e9a1b6424f95dbb6b1d0bc3d25fe0ae2bda7edcd003cfbff97c941a313018d4fb83bb562e30c121 SHA512 56554c3001f21ce770fd44ed2628b2fac40b96bcd5370935604c1fec465fd5a44be4a89ffa119cbd6f01be805161fe2fac93375d96f59d2ed38ff6418d5da714
diff --git a/dev-python/internetarchive/internetarchive-3.7.0.ebuild b/dev-python/internetarchive/internetarchive-3.7.0.ebuild
new file mode 100644
index 000000000..4a363102e
--- /dev/null
+++ b/dev-python/internetarchive/internetarchive-3.7.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Lib and CLI for archive.org - for search, uploading, downloading, rename..."
+HOMEPAGE="https://github.com/jjjake/internetarchive"
+SRC_URI="https://github.com/jjjake/$PN/archive/refs/tags/v$PV.tar.gz"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RESTRICT="test"
+
+RDEPEND="
+ dev-python/charset-normalizer[${PYTHON_USEDEP}]
+ dev-python/docopt[${PYTHON_USEDEP}]
+ dev-python/jsonpatch[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/schema[${PYTHON_USEDEP}]
+ dev-python/tqdm[${PYTHON_USEDEP}]
+ dev-python/urllib3[${PYTHON_USEDEP}]
+"
+
+pkg_postinst() {
+ einfo "See documentation at https://archive.org/developers/internetarchive/"
+}
diff --git a/dev-python/internetarchive/metadata.xml b/dev-python/internetarchive/metadata.xml
new file mode 100644
index 000000000..b6d816412
--- /dev/null
+++ b/dev-python/internetarchive/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>zdanevich.vitaly@ya.ru</email>
+ <name>Vitaly Zdanevich</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jjjake/internetarchive</remote-id>
+ <remote-id type="pypi">internetarchive</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/invoke/Manifest b/dev-python/invoke/Manifest
new file mode 100644
index 000000000..066979d60
--- /dev/null
+++ b/dev-python/invoke/Manifest
@@ -0,0 +1 @@
+DIST invoke-2.2.0.gh.tar.gz 309433 BLAKE2B 9b68a9e7e8b2b8cd27a449569847e6ea67b6de01574dd2d5ca8d93486e6f8ead2d2c1a507af665ab19b8482c4c4172a671b8f65d8f1e41f004a7d1e4294268d3 SHA512 3d0adabec4825fb45524d3ab4f2a790d31245a89e038c08c770fc9f33c81ed182769e8f17d3d6f33a913b431cba475b975826ddfd533a945d481b52deba759a2
diff --git a/dev-python/invoke/invoke-2.2.0.ebuild b/dev-python/invoke/invoke-2.2.0.ebuild
new file mode 100644
index 000000000..cf85db35d
--- /dev/null
+++ b/dev-python/invoke/invoke-2.2.0.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_{10..12} )
+inherit distutils-r1
+
+DESCRIPTION="Pythonic task execution"
+HOMEPAGE="https://github.com/pyinvoke/invoke https://pypi.org/project/invoke/"
+SRC_URI="https://github.com/pyinvoke/invoke/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ test? (
+ dev-python/decorator[${PYTHON_USEDEP}]
+ >=dev-python/icecream-2.1[${PYTHON_USEDEP}]
+ >=dev-python/pytest-cov-4[${PYTHON_USEDEP}]
+ >=dev-python/pytest-relaxed-2[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+EPYTEST_DESELECT=(
+ # Most of those fails with "OSError: reading from stdin while output is captured"
+ # seems like it is because I do the testing in a chroot
+ # Because there are 112 tests that fails, I'd rather skip the file than manually add 112 tests
+ tests/runners.py
+)
diff --git a/dev-python/invoke/metadata.xml b/dev-python/invoke/metadata.xml
new file mode 100644
index 000000000..af12d05c3
--- /dev/null
+++ b/dev-python/invoke/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">invoke</remote-id>
+ <remote-id type="github">pyinvoke/invoke</remote-id>
+ <doc>https://docs.pyinvoke.org</doc>
+ <bugs-to>https://github.com/pyinvoke/invoke/issues</bugs-to>
+ <changelog>https://www.pyinvoke.org/changelog.html</changelog>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/isosurfaces/Manifest b/dev-python/isosurfaces/Manifest
new file mode 100644
index 000000000..201298e86
--- /dev/null
+++ b/dev-python/isosurfaces/Manifest
@@ -0,0 +1 @@
+DIST isosurfaces-0.1.0.gh.tar.gz 53734 BLAKE2B d99b9c54b38031ea8b902d9626212ea63b000d9a23203266edd360142e5fbd36c36006ad5bb153eba17e5f4de7b48980030460ffa0f255ddcb2abdd1e5432d4f SHA512 0331d626dae0f1fd71ce9d9a559aa27d223ebf58c04564dd98b747cb81e6ee259696495c6deb7c6b47cd812647b505c3101486ee704bd9b69656396a6aac23a5
diff --git a/dev-python/isosurfaces/isosurfaces-0.1.0.ebuild b/dev-python/isosurfaces/isosurfaces-0.1.0.ebuild
new file mode 100644
index 000000000..6b0576f80
--- /dev/null
+++ b/dev-python/isosurfaces/isosurfaces-0.1.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+DESCRIPTION="Construct isolines/isosurfaces of a 2D/3D scalar field defined by a function"
+HOMEPAGE="
+ https://pypi.org/project/isosurfaces/
+ https://github.com/jared-hughes/isosurfaces
+"
+SRC_URI="https://github.com/jared-hughes/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/numpy[${PYTHON_USEDEP}]"
diff --git a/dev-python/isosurfaces/metadata.xml b/dev-python/isosurfaces/metadata.xml
new file mode 100644
index 000000000..7c791f1a9
--- /dev/null
+++ b/dev-python/isosurfaces/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">jared-hughes/isosurfaces</remote-id>
+ <remote-id type="pypi">isosurfaces</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/itemadapter/Manifest b/dev-python/itemadapter/Manifest
new file mode 100644
index 000000000..edb75523c
--- /dev/null
+++ b/dev-python/itemadapter/Manifest
@@ -0,0 +1 @@
+DIST itemadapter-0.8.0.tar.gz 17140 BLAKE2B 8dc2fa0fd08236a41c6671793781ee113f3382c9bfeb3e9a528293e7725408a47a40ad650d80f24dbae8047f72f742b2bd99f142b342190acb2db33b6e68c7f8 SHA512 86c688bef2d0add3f5ea2bd119689b076c5bc9f92edefb6f5d8faaf88023355e7d2ba5d683ce8f6acd24a2954c5a798902b30d0a70ca31dc32eb5245ad57953f
diff --git a/dev-python/itemadapter/itemadapter-0.8.0.ebuild b/dev-python/itemadapter/itemadapter-0.8.0.ebuild
new file mode 100644
index 000000000..a0e3f788c
--- /dev/null
+++ b/dev-python/itemadapter/itemadapter-0.8.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+DESCRIPTION="Common interface for scrapy data container classes"
+HOMEPAGE="https://scrapy.org/"
+SRC_URI="https://github.com/scrapy/itemadapter/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT=0
+KEYWORDS="~amd64"
+
+RDEPEND="${PYTHON_DEPS}"
+DEPEND="${RDEPEND}"
+BDEPEND="${DEPEND}
+ test? (
+ dev-python/attrs[${PYTHON_USEDEP}]
+ dev-python/pydantic[${PYTHON_USEDEP}]
+ dev-python/scrapy[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/itemadapter/metadata.xml b/dev-python/itemadapter/metadata.xml
new file mode 100644
index 000000000..d0e833d3c
--- /dev/null
+++ b/dev-python/itemadapter/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">scrapy/itemadapter</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/itemloaders/Manifest b/dev-python/itemloaders/Manifest
new file mode 100644
index 000000000..93a181303
--- /dev/null
+++ b/dev-python/itemloaders/Manifest
@@ -0,0 +1 @@
+DIST itemloaders-1.1.0.tar.gz 27962 BLAKE2B 960134a1fcd52e06db9f251297aec504ff37b1d90892d31c1726b31b0f028f65771b02762822c7be55e1dd7297e837c430e036b0ebf21b192f2156bbb4aa9727 SHA512 4a52e75405409124a3c1f7e7079fedf36e34a76877b04d754006743a2f403602de9b463e1f338bead3a68a0c1cf32f2a50b4cbe4cc57a10539ec529a93b81607
diff --git a/dev-python/itemloaders/itemloaders-1.1.0.ebuild b/dev-python/itemloaders/itemloaders-1.1.0.ebuild
new file mode 100644
index 000000000..170a87e26
--- /dev/null
+++ b/dev-python/itemloaders/itemloaders-1.1.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+DESCRIPTION="Library to populate items using XPath and CSS with a convenient API"
+HOMEPAGE="https://scrapy.org/"
+SRC_URI="https://github.com/scrapy/itemloaders/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT=0
+KEYWORDS="~amd64"
+
+DEPEND="${PYTHON_DEPS}"
+RDEPEND="${DEPEND}
+ dev-python/itemadapter[${PYTHON_USEDEP}]
+ dev-python/jmespath[${PYTHON_USEDEP}]
+ >=dev-python/parsel-1.8.1[${PYTHON_USEDEP}]
+ dev-python/w3lib[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/itemloaders/metadata.xml b/dev-python/itemloaders/metadata.xml
new file mode 100644
index 000000000..ccd4bacfc
--- /dev/null
+++ b/dev-python/itemloaders/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">scrapy/itemloaders</remote-id>
+ <doc>https://itemloaders.readthedocs.io/</doc>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/iuliia/Manifest b/dev-python/iuliia/Manifest
new file mode 100644
index 000000000..cbd260e4b
--- /dev/null
+++ b/dev-python/iuliia/Manifest
@@ -0,0 +1 @@
+DIST iuliia-0.11.5.tar.gz 21585 BLAKE2B 99492fb2783b92ed36231fdaaf06ff405e4ec29fa0766a29657a4fce901050e995cb88238fccffbd7bb80ab949d4b6428ad6cb251cb35568d7b95f4e650e0686 SHA512 86e9dbff7a32486ed35782055fdabb6abb014ceb4e4f26acc0933007f4be11ccbb439e13d01edfcadd19b64e241bfacbce1d4e2faf368d9aa697f3d307b4ff84
diff --git a/dev-python/iuliia/iuliia-0.11.5.ebuild b/dev-python/iuliia/iuliia-0.11.5.ebuild
new file mode 100644
index 000000000..3d02117e1
--- /dev/null
+++ b/dev-python/iuliia/iuliia-0.11.5.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517="flit"
+inherit distutils-r1 pypi
+
+DESCRIPTION="Transliterate Cyrillic to Latin in every possible way"
+HOMEPAGE="
+ https://iuliia.ru/
+ https://pypi.org/project/iuliia/
+ https://github.com/nalgeon/iuliia-py
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests pytest
diff --git a/dev-python/iuliia/metadata.xml b/dev-python/iuliia/metadata.xml
new file mode 100644
index 000000000..842649110
--- /dev/null
+++ b/dev-python/iuliia/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <remote-id type="github">nalgeon/iuliia-py</remote-id>
+ <remote-id type="pypi">iuliia</remote-id>
+ </upstream>
+ <!-- maintainer-needed -->
+</pkgmetadata>
diff --git a/dev-python/jellyfin-apiclient-python/Manifest b/dev-python/jellyfin-apiclient-python/Manifest
deleted file mode 100644
index b91566a4c..000000000
--- a/dev-python/jellyfin-apiclient-python/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST jellyfin-apiclient-python-1.6.2.tar.gz 17115 BLAKE2B 37889d6359d7a1d4350b99fe5eb4fa0bb2e28248daaee64aa324e07b46d6a254c1e488bf39954680f7f044cbf4c78fc6059c8f91787410bdea629996d0874ac3 SHA512 42be1fe1d0d360127655c9718c3a157028918597c3782ea3df9326b844aa9a542d23480da405f580da340b251ce0d790220d55f891000346b219dacddbd523fc
-DIST jellyfin-apiclient-python-1.7.2.tar.gz 17365 BLAKE2B 0cb3dd380bd15dc7092eac7e2a76963b980383899b69c5eafa9ad8136f2f94a9d4b18cfcc7645ba0d8cab1454b1e0c08028640348724859bcf1683f0473ef9b1 SHA512 70685a65da58588013f304d1185ec7d672872c1891f0a81d1ac9c56b2be54b88f920192d0c9ba047d11f78125d937e9f6c920ccfc9687a3e862beff7190aff8c
diff --git a/dev-python/jellyfin-apiclient-python/jellyfin-apiclient-python-1.6.2.ebuild b/dev-python/jellyfin-apiclient-python/jellyfin-apiclient-python-1.6.2.ebuild
deleted file mode 100644
index a999edcdf..000000000
--- a/dev-python/jellyfin-apiclient-python/jellyfin-apiclient-python-1.6.2.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 2020-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python API client for Jellyfin"
-HOMEPAGE="https://github.com/iwalton3/jellyfin-apiclient-python"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-DEPEND="
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/urllib3[${PYTHON_USEDEP}]
- dev-python/websocket-client[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/jellyfin-apiclient-python/jellyfin-apiclient-python-1.7.2.ebuild b/dev-python/jellyfin-apiclient-python/jellyfin-apiclient-python-1.7.2.ebuild
deleted file mode 100644
index d14ccf5bc..000000000
--- a/dev-python/jellyfin-apiclient-python/jellyfin-apiclient-python-1.7.2.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 2020-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python API client for Jellyfin"
-HOMEPAGE="https://github.com/jellyfin/jellyfin-apiclient-python"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-DEPEND="
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/urllib3[${PYTHON_USEDEP}]
- dev-python/websocket-client[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/jellyfin-apiclient-python/metadata.xml b/dev-python/jellyfin-apiclient-python/metadata.xml
deleted file mode 100644
index cd174bd3e..000000000
--- a/dev-python/jellyfin-apiclient-python/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>telans@posteo.de</email>
- <name>James Beddek</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/jinja2-cli/Manifest b/dev-python/jinja2-cli/Manifest
new file mode 100644
index 000000000..11e88e736
--- /dev/null
+++ b/dev-python/jinja2-cli/Manifest
@@ -0,0 +1 @@
+DIST jinja2-cli-0.8.2.tar.gz 7185 BLAKE2B 86ffc65e75825ec894a6098fcd3d22583cd358702791a81f6e28277594e2482e4b7d9235b6f2edf120dbeda1fd64565b74ac3d625444adfdddf43297611953a9 SHA512 6c76761132e0d2615c3388bf43c16d7d7554c19f0ee99f92ebab45ae134fa7752be6a64f783927a4a2e7206bca52afba5d6d8f78521db02986b961a3bc8728da
diff --git a/dev-python/jinja2-cli/jinja2-cli-0.8.2.ebuild b/dev-python/jinja2-cli/jinja2-cli-0.8.2.ebuild
new file mode 100644
index 000000000..d42ee151f
--- /dev/null
+++ b/dev-python/jinja2-cli/jinja2-cli-0.8.2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1
+
+DESCRIPTION="CLI for Jinja2"
+HOMEPAGE="https://github.com/mattrobenolt/jinja2-cli"
+SRC_URI="https://github.com/mattrobenolt/jinja2-cli/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/xmltodict[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/jinja2-cli/metadata.xml b/dev-python/jinja2-cli/metadata.xml
new file mode 100644
index 000000000..8c60673a8
--- /dev/null
+++ b/dev-python/jinja2-cli/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">mattrobenolt/jinja2-cli</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/jplephem/Manifest b/dev-python/jplephem/Manifest
index 26ee80c32..8bf4c89d2 100644
--- a/dev-python/jplephem/Manifest
+++ b/dev-python/jplephem/Manifest
@@ -1 +1 @@
-DIST jplephem-2.16.tar.gz 40918 BLAKE2B 90a14b424f4c48bb754bd4cca6a9e1d5e2a4cc51821234118889cc854c119c60b66c0157deae60f88b7368d8914124ec95ec1ac7646479cd79ee759515a1af09 SHA512 02bd3bac834726f1f41fbed9e3e7edc9ba3d00c394099248f9e1da48730c620d83880e24a3b29916becd7ced284efc7388ed98d5bf204a6fc53ec9e016ce0cf0
+DIST jplephem-2.21.tar.gz 44359 BLAKE2B 53e816f9eb6ffed8635cd93b4ca68d904c130af2e2dcfcae58c0575ad11c0269487cef1eb73934184c84773387f18ba2eec7c850a383757cf7be649fd5a2e8f6 SHA512 1cd8df8c96dd6bdd73b2615cc78fcf845d2d6d44daa99754662e2449e2c185052983056a9f0de11bfce390cc6c09a798b2ad1908b3eb0bca113e8c0ba16445e2
diff --git a/dev-python/jplephem/jplephem-2.16.ebuild b/dev-python/jplephem/jplephem-2.21.ebuild
index c2234c35e..eb6d10e01 100644
--- a/dev-python/jplephem/jplephem-2.16.ebuild
+++ b/dev-python/jplephem/jplephem-2.21.ebuild
@@ -1,16 +1,15 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-DISTUTILS_USE_SETUPTOOLS=no
-PYTHON_COMPAT=( python3_{8..10} )
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11,12} )
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="Python version of NASA DE4xx ephemerides for Astronomical Alamanac"
HOMEPAGE="https://pypi.org/project/jplephem/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
diff --git a/dev-python/jplephem/metadata.xml b/dev-python/jplephem/metadata.xml
index 129c34753..e743565ce 100644
--- a/dev-python/jplephem/metadata.xml
+++ b/dev-python/jplephem/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>davidroman96@gmail.com</email>
diff --git a/dev-python/jsonfeed/Manifest b/dev-python/jsonfeed/Manifest
new file mode 100644
index 000000000..0166181a1
--- /dev/null
+++ b/dev-python/jsonfeed/Manifest
@@ -0,0 +1 @@
+DIST jsonfeed-1.1.2.gh.tar.gz 66719 BLAKE2B 9121c275e4b059641a0303b15bd397403b4c0ce59f289623a7253e2a2bdd129d6e0e818a287808b99974a0a822e24aa3f6d6df3e6464e4cff5c9c4c90d87c926 SHA512 34c3ce0a4fc4a38041d56d5cec16c34cfa33e9e10e539c92cf511f67fccd1d684c5ecef0c51499b2aaac0c1d2dbdb20c08464c3104ccacc4abd2cff67ebae82b
diff --git a/dev-python/jsonfeed/jsonfeed-1.1.2.ebuild b/dev-python/jsonfeed/jsonfeed-1.1.2.ebuild
new file mode 100644
index 000000000..390a28d85
--- /dev/null
+++ b/dev-python/jsonfeed/jsonfeed-1.1.2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+HTML_DOCS=( docs )
+
+inherit distutils-r1
+
+DESCRIPTION="Python package for parsing and generating JSON feeds."
+HOMEPAGE="https://github.com/lukasschwab/jsonfeed"
+SRC_URI="https://github.com/lukasschwab/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/feedparser[${PYTHON_USEDEP}]"
+
+python_prepare_all() {
+ distutils-r1_python_prepare_all
+ rm -rf "${S}/tests"
+}
diff --git a/dev-python/jsonfeed/metadata.xml b/dev-python/jsonfeed/metadata.xml
new file mode 100644
index 000000000..7c911950b
--- /dev/null
+++ b/dev-python/jsonfeed/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">lukasschwab/jsonfeed</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/jsonlines/Manifest b/dev-python/jsonlines/Manifest
new file mode 100644
index 000000000..74195a9de
--- /dev/null
+++ b/dev-python/jsonlines/Manifest
@@ -0,0 +1 @@
+DIST jsonlines-4.0.0.gh.tar.gz 13172 BLAKE2B 66c68591f2d04f290165a5245335700b6a8305607a16dde3cf759868ecc8aad116f7afea447684803c21692393835f97ca589b4ac519e8f7ddc459cf05d39e82 SHA512 d197163b4875dd5d30afdd8e5b9415d8faa3af2787bbecbc7a7f79aa28e775b2e119bffdf61699e132552af19ff97d6412fe83d328e4022acd920456addeb275
diff --git a/dev-python/jsonlines/jsonlines-4.0.0.ebuild b/dev-python/jsonlines/jsonlines-4.0.0.ebuild
new file mode 100644
index 000000000..04cbe8bb6
--- /dev/null
+++ b/dev-python/jsonlines/jsonlines-4.0.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517="setuptools"
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+DESCRIPTION="Library with helpers for the jsonlines file format"
+HOMEPAGE="https://pypi.org/project/jsonlines/"
+#SRC_URI="https://files.pythonhosted.org/packages/90/cd/0beacbcfdf9b3af9e7c615cb3dba7ec4be1030d4b283e3c9717e3fd9af3c/jsonlines-1.2.0.tar.gz"
+if [[ ${PV} == "9999" ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/wbolster/jsonlines"
+else
+ KEYWORDS="~amd64 ~arm64"
+# tests not distributed through pypi mirror
+# SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+ SRC_URI="https://github.com/wbolster/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+fi
+LICENSE="BSD"
+SLOT="0"
+IUSE="test"
+RESTRICT="mirror" #overlay, no real issue
+RDEPEND="dev-python/attrs[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ sed -r -e "/packages *=/ s|\[[^]]*\]\+||" -i -- setup.py
+
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/jsonlines/metadata.xml b/dev-python/jsonlines/metadata.xml
new file mode 100644
index 000000000..8ea2022ed
--- /dev/null
+++ b/dev-python/jsonlines/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>kcelbert@gmail.com</email>
+ <name>Kyle Elbert</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">wbolster/jsonlines</remote-id>
+ <remote-id type="pypi">jsonlines</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/jsonpath-rw-ext/Manifest b/dev-python/jsonpath-rw-ext/Manifest
new file mode 100644
index 000000000..e8a03f93b
--- /dev/null
+++ b/dev-python/jsonpath-rw-ext/Manifest
@@ -0,0 +1 @@
+DIST jsonpath-rw-ext-1.2.2.tar.gz 20581 BLAKE2B eec62ee71fd234d5f7b8d2e091bdbf8b4bb2ec2780730b8ef77a466111b2fb3cbfc89b84c9e7905b53315150a28d4d84e7f251970d3a9b9002a5dbadf08b45b0 SHA512 28ca708023a942665c946d3e0ec618488f7d30d832e4ad0748d6c7019849f2ad19e3629c4452ab461b9c14d71f3360a4590357637f95ea44f8bc3b4544d5e0af
diff --git a/dev-python/jsonpath-rw-ext/jsonpath-rw-ext-1.2.2-r1.ebuild b/dev-python/jsonpath-rw-ext/jsonpath-rw-ext-1.2.2-r1.ebuild
new file mode 100644
index 000000000..d7754b790
--- /dev/null
+++ b/dev-python/jsonpath-rw-ext/jsonpath-rw-ext-1.2.2-r1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Extensions for JSONPath RW"
+HOMEPAGE="
+ https://pypi.org/project/jsonpath-rw-ext/
+ https://github.com/sileht/python-jsonpath-rw-ext
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-1.8[${PYTHON_USEDEP}]
+ >=dev-python/jsonpath-rw-1.2.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/oslotest-1.10.0[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_DESELECT=(
+ jsonpath_rw_ext/tests/test_jsonpath_rw_ext.py::TestJsonpath_rw_ext::test_fields_value
+ jsonpath_rw_ext/tests/test_jsonpath_rw_ext.py::TestJsonpath_rw_ext::test_shortcut_functions
+)
+
+distutils_enable_tests pytest
diff --git a/dev-python/jsonpath-rw-ext/metadata.xml b/dev-python/jsonpath-rw-ext/metadata.xml
new file mode 100644
index 000000000..928177122
--- /dev/null
+++ b/dev-python/jsonpath-rw-ext/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <bugs-to>https://github.com/sileht/python-jsonpath-rw-ext/issues</bugs-to>
+ <remote-id type="pypi">jsonpath-rw-ext</remote-id>
+ <remote-id type="github">sileht/python-jsonpath-rw-ext</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/jsonpath-rw/Manifest b/dev-python/jsonpath-rw/Manifest
new file mode 100644
index 000000000..41d2fa241
--- /dev/null
+++ b/dev-python/jsonpath-rw/Manifest
@@ -0,0 +1 @@
+DIST jsonpath-rw-1.4.0.gh.tar.gz 19813 BLAKE2B 2ee89864f38a6671ad593b5f056a19a794fcf6dd8dd56af1fbc709e50336ee5613c1144ec7f557d7380bed4eedd4ee7cc39f99ccb61dbc3a34c2e36641b183dc SHA512 8308e950f8b397e3ddd4120aa7794ab198d9f1a233c5fe16c2f393f1ba7e7e3bf289063a8b28f2425bfe0906be028f9bc1830779d09a56c306f2f102d26e6259
diff --git a/dev-python/jsonpath-rw/jsonpath-rw-1.4.0-r1.ebuild b/dev-python/jsonpath-rw/jsonpath-rw-1.4.0-r1.ebuild
new file mode 100644
index 000000000..ba5376a1c
--- /dev/null
+++ b/dev-python/jsonpath-rw/jsonpath-rw-1.4.0-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="A robust and significantly extended implementation of JSONPath for Python"
+HOMEPAGE="
+ https://github.com/kennknowles/python-jsonpath-rw
+ https://pypi.org/project/jsonpath-rw/
+"
+SRC_URI="https://github.com/kennknowles/python-jsonpath-rw/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/python-${P}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/decorator[${PYTHON_USEDEP}]
+ dev-python/ply[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests unittest
diff --git a/dev-python/jsonpath-rw/metadata.xml b/dev-python/jsonpath-rw/metadata.xml
new file mode 100644
index 000000000..870607e0a
--- /dev/null
+++ b/dev-python/jsonpath-rw/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <bugs-to>https://github.com/kennknowles/python-jsonpath-rw/issues</bugs-to>
+ <remote-id type="pypi">jsonpath-rw</remote-id>
+ <remote-id type="github">kennknowles/python-jsonpath-rw</remote-id>
+ <maintainer status="unknown">
+ <email>kenn.knowles@gmail.com</email>
+ <name>Kenneth Knowles</name>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/jupyter-sphinx/Manifest b/dev-python/jupyter-sphinx/Manifest
index ec34bb284..749e41d08 100644
--- a/dev-python/jupyter-sphinx/Manifest
+++ b/dev-python/jupyter-sphinx/Manifest
@@ -1 +1 @@
-DIST jupyter-sphinx-0.3.2.tar.gz 25077 BLAKE2B 9baea1e1c5f7a59200b073752b8a5ff0af43ecded1d7880758e58ca14610d67518beb7fb67dfe979008ea1f8503a1898d7cd0d589a52e245aafc1b7d6a280da3 SHA512 1e3c760a8151647b87c26b6ee38f90430f096f147e9b2aacfe46eb9fcfcd70f50f2b8a34a2240134766c6fc53987c932bee41d5d22ef60abc2aaa6cefedc7297
+DIST jupyter-sphinx-0.4.0.tar.gz 27538 BLAKE2B f293cbd7d01c47f6b9a9d288584934480c4349488feb6ddc65ea12b0acadead210a29dc170897c4bf9c7cfb4a01e6ec5bb4170c5fd6bc9dd52b6b5bd8af64751 SHA512 baca3d16f8680ddf1229d2d5bd1308e6055d4f26f955dd509ef9fea173728cfa4c09405d22181fd696176db5bc3a1ee33d3b4f5f6ff7691fb3a27b5b55af06a6
diff --git a/dev-python/jupyter-sphinx/jupyter-sphinx-0.3.2.ebuild b/dev-python/jupyter-sphinx/jupyter-sphinx-0.4.0.ebuild
index 30d34d37c..5e092607d 100644
--- a/dev-python/jupyter-sphinx/jupyter-sphinx-0.3.2.ebuild
+++ b/dev-python/jupyter-sphinx/jupyter-sphinx-0.4.0.ebuild
@@ -1,9 +1,10 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{7,8,9} )
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
inherit distutils-r1
@@ -11,7 +12,7 @@ DESCRIPTION="Jupyter Sphinx Extensions"
HOMEPAGE="https://github.com/jupyter/jupyter-sphinx"
SRC_URI="https://github.com/jupyter/jupyter-sphinx/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="BSD-with-disclosure"
+LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~x86"
@@ -22,6 +23,7 @@ RDEPEND="
>=dev-python/nbconvert-5.5[${PYTHON_USEDEP}]
dev-python/nbformat[${PYTHON_USEDEP}]
"
+DEPEND="${RDEPEND}"
distutils_enable_tests pytest
distutils_enable_sphinx doc/source dev-python/matplotlib dev-python/alabaster
diff --git a/dev-python/jupyter-sphinx/metadata.xml b/dev-python/jupyter-sphinx/metadata.xml
index a0a60d714..736005056 100644
--- a/dev-python/jupyter-sphinx/metadata.xml
+++ b/dev-python/jupyter-sphinx/metadata.xml
@@ -1,6 +1,10 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">jupyter/jupyter-sphinx</remote-id>
+ <bugs-to>https://github.com/jupyter/jupyter-sphinx/issues/</bugs-to>
+ <doc>https://jupyter-sphinx.readthedocs.io</doc>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/k5test/Manifest b/dev-python/k5test/Manifest
deleted file mode 100644
index c16461c1c..000000000
--- a/dev-python/k5test/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST k5test-0.9.2.tar.gz 8216 BLAKE2B 7a4864c6c37725f87b0c4b6263093ac01a190bfd769a288c4f47c5590b42fa452af56150e89fa867b7a5b1ea56204f54b769b31b49113c5921a5209336ac9a36 SHA512 0feb0335da75c6201f43760834c723b82428838791f9adddd75a7259e55d9d74e752ce11fdfad9a2964abf9ca2cfe03e4914127af5f3d421fe78966cbeab647e
diff --git a/dev-python/k5test/k5test-0.9.2.ebuild b/dev-python/k5test/k5test-0.9.2.ebuild
deleted file mode 100644
index 44062ae53..000000000
--- a/dev-python/k5test/k5test-0.9.2.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7..9} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="A library for setting up self-contained Kerberos 5 environments"
-HOMEPAGE="https://github.com/pythongssapi/k5test"
-SRC_URI="https://github.com/pythongssapi/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="ISC MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-DEPEND="dev-python/six[${PYTHON_USEDEP}]"
-RDEPEND="
- ${DEPEND}
- virtual/krb5
-"
diff --git a/dev-python/k5test/metadata.xml b/dev-python/k5test/metadata.xml
deleted file mode 100644
index ba7159fa8..000000000
--- a/dev-python/k5test/metadata.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
- A library for setting up self-contained Kerberos 5 environments,
- and running Python unit tests inside those environments.
- It is based on the file of the same name found alongside the MIT
- Kerberos 5 unit tests.
- </longdescription>
- <upstream>
- <remote-id type="github">pythongssapi/k5test</remote-id>
- <remote-id type="pypi">k5test</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/keystonemiddleware/Manifest b/dev-python/keystonemiddleware/Manifest
deleted file mode 100644
index 5a1650c2d..000000000
--- a/dev-python/keystonemiddleware/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST keystonemiddleware-9.1.0.tar.gz 179846 BLAKE2B 0ebae088d48f4f8444902c229e6d3df7835d847b99d9620cbe154a1ed6f12fa9533a9c62aae670d9d16a5696e5245306c8180437c772297000b8cf4490264568 SHA512 839d2c0150f305d7642bf1031508d11cb7d26e560198bc900979615838ea0a143843fdfaf363699313d7c968850153eaedba0f4a813891f5aaee46a2444181fc
diff --git a/dev-python/keystonemiddleware/keystonemiddleware-9.1.0.ebuild b/dev-python/keystonemiddleware/keystonemiddleware-9.1.0.ebuild
deleted file mode 100644
index 62d99b468..000000000
--- a/dev-python/keystonemiddleware/keystonemiddleware-9.1.0.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="A middleware for the OpenStack Keystone API"
-HOMEPAGE="https://github.com/openstack/keystonemiddleware"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.12.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-cache-1.26.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-1.19.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/pycadf-1.1.0[${PYTHON_USEDEP}]
- !~dev-python/pycadf-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/python-keystoneclient-3.20.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/webob-1.7.1[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/keystonemiddleware/metadata.xml b/dev-python/keystonemiddleware/metadata.xml
deleted file mode 100644
index f4976cfd5..000000000
--- a/dev-python/keystonemiddleware/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">keystonemiddleware</remote-id>
- <remote-id type="github">openstack/keystonemiddleware</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/kitchen/Manifest b/dev-python/kitchen/Manifest
deleted file mode 100644
index 936e8f58b..000000000
--- a/dev-python/kitchen/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST kitchen-1.2.6.tar.gz 258124 BLAKE2B 7fbe5cd65cd01783fd7802a205fca3a8cd2ee724614ed012f5978fe0302fdb0453453249b95a6c9303413ae7daa284888fa0cdab4fba6e5318e606ee579c25cf SHA512 d2ebefece3131333594aa8f914f34336615ee1121aa73707c252e501ebab1361ab96071395ff6ebcfb0f1241e1ed6f396d62e1ba37e4c00f0ec81b85474523c7
diff --git a/dev-python/kitchen/kitchen-1.2.6.ebuild b/dev-python/kitchen/kitchen-1.2.6.ebuild
deleted file mode 100644
index b158f750e..000000000
--- a/dev-python/kitchen/kitchen-1.2.6.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{7..9} pypy3 )
-inherit distutils-r1
-
-DESCRIPTION="Kitchen contains a cornucopia of useful code"
-HOMEPAGE="https://github.com/fedora-infra/kitchen"
-SRC_URI="https://github.com/fedora-infra/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-DOCS=( HACKING.rst NEWS.rst README.rst )
-
-distutils_enable_tests nose
-
-# Could not import extension sphinx.ext.pngmath
-#distutils_enable_sphinx kitchen3/docs
-
-python_test() {
- local noseopts=(
- --exclude=test_invalid_fallback_no_raise
- --exclude=test_lgettext
- --exclude=test_lngettext
- --exclude=test_easy_gettext_setup_non_unicode
- # fail with python 3.9
- --exclude=test_internal_generate_combining_table
- # fail with python 3.10
- #--exclude=check__all__is_complete
- )
- nosetests -w kitchen3 -v "${noseopts[@]}" || die
-}
diff --git a/dev-python/kitchen/metadata.xml b/dev-python/kitchen/metadata.xml
deleted file mode 100644
index ad8cead24..000000000
--- a/dev-python/kitchen/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>svdm-gentoo@protonmail.com</email>
- <name>Simon van der Maas</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/kurbopy/Manifest b/dev-python/kurbopy/Manifest
new file mode 100644
index 000000000..3d4bc64f8
--- /dev/null
+++ b/dev-python/kurbopy/Manifest
@@ -0,0 +1,33 @@
+DIST arrayvec-0.7.2.crate 29341 BLAKE2B eae9d3f494033ea2d837a6024cb24bd4574683ed1e76ac6be7f7c6b0d8ee65c0eaf03dbae7fea04cf0921299f69234ad91e1cf41342de86f554f74e287dd3ba1 SHA512 80cc6e55b6032f4882362813de970d3d99e600ada774b28ac6a24c9c8e018fda3b35c5750ac3a09fca6fb9496e2e3fe608b58d21b1b84685ebd170f567a0ecbc
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST bitflags-1.2.1.crate 16745 BLAKE2B 0fa6d3ce44aad7616d5cd02aad8c1d0b0fed4022650eb43067c4a72e6fc88da05442674fa51826e4858a47c9de233e1ba2229820af094197cd11bb416ceffb2b SHA512 ad89b3798845e23737a620bba581c2ff1ff3e15bac12555c765e201d2c0b90ecea0cdbc5b5b1a3fa9858c385e8e041f8226f5acfae5bbbe9925643fff2bf3f0b
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST either-1.6.1.crate 13641 BLAKE2B e5f40c40a5edb6dcb07a10bf79183cbe42438f1f70f3932dce72f6f6e91f75f24d17d82bc447507def4dad4345ffc9dd9162dde778afb253bdb1218e91887949 SHA512 4bfe56920e30cbc8eb4f90162db618f7dca653b42db35ab6a7045d3fd9a24ceb1778b1f79613850bdb1a87ad3794fa0d73015e46c48d513f368d8c3776fc9ddf
+DIST indoc-1.0.6.crate 14312 BLAKE2B e4757497450f9c5e854f472e576c0df49f1aecb10e3ae77ca56b436dbefc5c75fd9b83093f9bb485b697d32c454af5d70d72da27e231124f7af20d3dc6e320e2 SHA512 798d36767d29ac5170a9de498ebee1056a6658e74b94310d589d429471ae059f974bd83eaa823c99a637c16758b3fdaaeaaaf7b21a2a35cbcbf345840b5f23cf
+DIST instant-0.1.9.crate 5213 BLAKE2B fe208faa09852079c603930e88b7d0392a89a55d3b934ad45ffb0c9e44df5ef7e8189ba2fa12452f1c8a6416d6f7c0655365ba959bedf2b78228613944be8278 SHA512 3915f67c3629ec93296d56c4cda0cf97b29b1a70930a9d546abb9518139d4c2f35062563a5094e84841ddb1f00b0f3df9dc00801d96c01994765221edf03ef7c
+DIST itertools-0.10.3.crate 118661 BLAKE2B 0095d6e7f14ddda69605d09f74e8cc881eec1a1d234f705e667d7f9e738ef157b7ddee066855cbcad7f134bf79b99a4a4c77bff3371397a567cd34d98b68bf97 SHA512 9d17357eb68159edf4f4ccd2eb9895672c7fb633803166d5e24ee12350639eaf66f1c822910518185cd1f1ca5d9c3e228dd37525e6c337ba3fc7ce967f9bfc85
+DIST kurbo-0.10.4.crate 925388 BLAKE2B 84a7f7021289d131a949d3a21e39a337f7a116956b912955548f2d585cb9ae2ade8b937bf59f2920cdce005e700848c5b29d4b9e6f8104ed88efcabc215e6fcb SHA512 6555f8d5f84aa7c47f02b89dae40779eb84921d2838e3dcfe986dc4e742b871d00f788c840feaf8879d46b58d175b573d4f5befe4c206d112d6d085cff8a7b10
+DIST kurbopy-0.10.40.tar.gz 53727 BLAKE2B b347f866964ce92aa18d0af83a64a6494c0035acded7d35cd00ed93154df8f3731c1e2059251c6711e6105616dbbb989012833ecbdf3c43509403eba965c088c SHA512 ce6b68c1500459278874910e50cbfb75af6041f0e6478dabfcfcbf68e7c486e89645d29a602b2ca46dfc6caf52ada220ef3ac4be8455b53bcc1a2d48f304c9c7
+DIST libc-0.2.88.crate 514138 BLAKE2B c9c6cd0b5456ee2706e7b572ba8df644abeb2d1297abe4f5d2b480e7b7b6b1024cfde98adea2822045b605949505c133538c74b0676c3ab5a2db8aed04605b4b SHA512 c1ad5dd0efd8117da798fcff84082e3b831cb1ae04c26ca8d87936057155e2ca08f0a693cf2c79c5db2c2dbe6b64e254328439b303ba952559f4c524466ad243
+DIST lock_api-0.4.2.crate 20375 BLAKE2B 0b24bdf98aaee9870f558971f437e728c8e52a853cc886a0de30cb9a84c2733175e6152a2d7ff1f28a83df5443091b16ac5410cb67d05ce464e01db64ba98cb0 SHA512 815de5198ba4a952490fbc7e08e899ce855588d794c22890839ad55caa81642745fa6bf81a2a2fc8f6713575f0d1b801a2f2107ed7c405101011927b6b40be31
+DIST memoffset-0.8.0.crate 8912 BLAKE2B 19ad3abed21fc39461b0382b15a8cc312378aba36f042b1e5335012115d31b350a4e3bc720f1eea300d7d19b9b317f75a28d4ccd78ff3b31defd9e4b3147899c SHA512 47adcae0848ff967035e10543ea599c7af9c5bad387023eb4dc77c9e8d875994ec8139b9941b3ecc4fc17214d80944a47a3be174a45b334661914a5a7382dfbe
+DIST once_cell-1.8.0.crate 28925 BLAKE2B 7681b1a7497b5711e663773c1a7e076f333c06c10d3f289079a781c36f050c1620cc279742ea8e5b15ec48f3d6038a6079bbda7fee3ae8e1128bd916d53ed43a SHA512 88e55c9433225ce85a08353168c87fca2237615482160a5c28f3ac17f06d48c63e0c21b5f7ef81f82ca133436e371802ea099453844f1c111003bcb6ba89e827
+DIST parking_lot-0.11.1.crate 39854 BLAKE2B 5a097d7016811de4ca7d21e8a811a96b2e857b5224b176cf7a3bc160c0a0678c9100423e3c096c5056e2df3a4dcba17a590cc64eb1d648355c153c5cdf9db228 SHA512 17e394ac8b62656177a12fcfd246d9bb59be468a5ac174e4d6d8b4ffd0411497d3ce943ca5deab184cebf5c1bbca97b4273f79bf210c78d7f4b6f5e9d68026a2
+DIST parking_lot_core-0.8.3.crate 32147 BLAKE2B 5218cfbff706c4388fef31c885c7a5d53566005775a3c440c6a2890efb189a4edfe8e99f6499cac36038846628a915ac988c15e1ebab1b3a3ffb53a64631dc19 SHA512 1dba5a7e68ee007918fb210ff308f7382ed1c54d2fe6db36a8246453434246b71e6795db107c83ca39c2bddf5e4a27da7978a464b53d41e150e744d81e75b341
+DIST proc-macro2-1.0.24.crate 37716 BLAKE2B e2bdbc7cc9ea254529e322f6a2eb44002b4994fc4a00df32012f66740e8e73ae70820dd40b7fcfcf024f3c7784ab9add5cc1db37f4c72d5af5c8f00164ebc145 SHA512 c3d23a5136c55d734084ce1d76d54f237fc1003074af102c2ad96d851ac496ffc7513ddc505a68af4051c9d6de09725a0ecb6e76ebcdd77a1c056f8f9242c9be
+DIST pyo3-0.18.1.crate 415128 BLAKE2B c77b956c4c96c4f0356abf5df14f89ef7fbd4d779169c2acccfc827a3a5d2d7980e5e8a467c1f6e73bb00a4500293995bc81014f110853c33b8e30d0698d0a21 SHA512 37e82b2b212de59335f8b5e4129dfc53872ceda156238f4aaee8cf358a8daf2d64cb716aa63d343c4f602fc61344b94bcd3cc8e02bee80256f5b49033a5c5825
+DIST pyo3-build-config-0.18.1.crate 29134 BLAKE2B 288519ea8b17bf81564ea7e91fa548ca5b966cb08939eccd80356935372aa7bbac1c9f1f8780b49010f4f66d1724d698a6197a740b232d62c75df341194c8ac5 SHA512 6277726d3f0faf70453f61f90c547db01ce5d50823ca9ba731d57309edbb33729bcfa3299415716cf6154ec2cb3a4c1e7eabc8ea18e400e746b37324bfca2ec9
+DIST pyo3-ffi-0.18.1.crate 62852 BLAKE2B 86bc534333e05578b1bf890fdd71af685d626aebbd8b4132162c1d29ab89ee493f903497fecb576164a1b23df11b36f20c18cede97ded567428724a702f0529f SHA512 35f2838f6b06bbb1ad6ebdc0d68c750fc8cffc43b62fadf2b76d4a395a4655797e9d93543ffb204ff7ea312f7f37444375c556831a231122f9fc1477ec986bec
+DIST pyo3-macros-0.18.1.crate 7174 BLAKE2B 0eb2d106d193cfb14fc8c9cce175458a38bc069f9c232a7bc541e2951bd06ad3dfab483f730ece97a4ca2827ad4dcd0444e77df6a8ff79cc5861c2985d0d2b7a SHA512 baf43c6c5ef8f5fcc91728d693d52453b779de5c48cfdb295449a32ce559c0304e3a93b43bad7b312eee1c44bbe680efc57423d4e38986f3c6eacebf07998609
+DIST pyo3-macros-backend-0.18.1.crate 48618 BLAKE2B 8db09610fd6fc95d1979a4065f89611c507ff7e7f72d9cd64590f85f6d8543ee6d234e772c55db88e3624808ad135389f5ff0edfd2eca6ecf1a29ece332c1c2e SHA512 20aed4aa485d6ffc02b0d08aa4c5fc086e73482aedb5ebce155c3f973d0e058902ef806740d483368eb80caac4ccc163516eaf56a027910d71cedc5bc0ee665c
+DIST quote-1.0.9.crate 25042 BLAKE2B 26ef31e89fd2f0cc21ff65f8072f30c7977ac634d2536cf9845a0894d6659f62a96cd0a6ee48f7706036c2c1b898ef8c9167bd62714ad0c9cba4fb02f30922af SHA512 dd6cdaea183b85400531ef01e56657edbec0d8f7c27898c1e591b72dff755fa5875b33ca320bd65be0e9aecfc6a61ec119a4bd1291e9f2057fca642ab5b198c8
+DIST redox_syscall-0.2.5.crate 23449 BLAKE2B 2d676dfe40f62285463a25f90ecf24ddb8548f91db1dffd779aaf9c1210bf1eb9c7c535b0d04ac7a483e0724d24ac1d1ed6c78884ad2631a53a870488b7578bc SHA512 f1625eaba110129942893e4cae548d22b6892d275124d29540c947d958e5bb7231309fe052cf15bddb23e0e8f0cdaadd002db5bdc3be578e843c46c175526adc
+DIST scopeguard-1.1.0.crate 11470 BLAKE2B f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe SHA512 368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
+DIST smallvec-1.11.1.crate 34831 BLAKE2B bad85ddb1d3a1fcec0cb6aba413f90695e0aa0c16b2b231d6d15095bdd6de1731720ea2b394c3f9a444d6d4763bbf44cff389a01aef3488dc599d2ea63ddbc36 SHA512 d4ed45e8867366072e77f23ebe8b31be96be37e5beed30fc2b5ffea81ab04a2ad2aa34fb4f29724b02a5eb90f8b1d8c40b800ee915453947f90758ce999704b5
+DIST syn-1.0.62.crate 231418 BLAKE2B ff264cd80e2107745b22d2febd9e7d3684422e21f382f224c779c7f1e15be1ce8582db1b8b11390131b92991d3fca0c2e521159ddaadce220c035b88eabbc83d SHA512 9b0e2c874eb2f7ff5d752507447713b949ebd157913f7dcdcacc039ea44df0f842a90e9267d2ce5ca39a6bbf3806301374b19c1e6a35f20c7968044c45497b6f
+DIST target-lexicon-0.12.4.crate 23020 BLAKE2B ad9780b9478b00b4fdcb07bd016d83216695413090ac29cca06388c3790e2832c978b1c7e69f6d34bb6fc9adc39c0a0b6b6636e50a9715a9f5f16445dba22d19 SHA512 194fe1946ad8d9fdb383bf8a65374e24d216382c1ed5379dabc98d58842512624c32838b8d6d0658d866f6559d37f1343a30c5809e8914dd85790399252b3e06
+DIST unicode-xid-0.2.1.crate 14392 BLAKE2B 7f8f91b9c4df55f2137b754208d4f2997a290acfc9393ee2dcda8195eda25cb342e56ad123f56bb298d93db5248a749c18a982423c9a0e85ce93f7a1eb55d289 SHA512 91e862137e837baea82829431cfed36634fdb05339f00c756eb5a4b429ef0bb871f5133d11adf9a023fa22168c8a0cf194ff3669779f04f219d48fc4fac339d2
+DIST unindent-0.1.7.crate 8346 BLAKE2B cbf76fd18e49332e61275ab204cef1fc4dee58091307f8cbe2107d3a8441551055541583f1d643d4d15f9cc17a8405f540f0c53548f5b2379dd70791a03640cb SHA512 d3f4543f97f1386f63306a206074de1d10077ae968ea6eb6638545eeaf8cef662e1c84a15788e9df640eeb6af4cbc187721ec01af43984e4eeb2dfb0423c6d70
+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-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
diff --git a/dev-python/kurbopy/kurbopy-0.10.40.ebuild b/dev-python/kurbopy/kurbopy-0.10.40.ebuild
new file mode 100644
index 000000000..926ba2bfd
--- /dev/null
+++ b/dev-python/kurbopy/kurbopy-0.10.40.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=maturin
+CRATES="
+ arrayvec@0.7.2
+ autocfg@1.1.0
+ bitflags@1.2.1
+ cfg-if@1.0.0
+ either@1.6.1
+ indoc@1.0.6
+ instant@0.1.9
+ itertools@0.10.3
+ kurbo@0.10.4
+ libc@0.2.88
+ lock_api@0.4.2
+ memoffset@0.8.0
+ once_cell@1.8.0
+ parking_lot@0.11.1
+ parking_lot_core@0.8.3
+ proc-macro2@1.0.24
+ pyo3-build-config@0.18.1
+ pyo3-ffi@0.18.1
+ pyo3-macros-backend@0.18.1
+ pyo3-macros@0.18.1
+ pyo3@0.18.1
+ quote@1.0.9
+ redox_syscall@0.2.5
+ scopeguard@1.1.0
+ smallvec@1.11.1
+ syn@1.0.62
+ target-lexicon@0.12.4
+ unicode-xid@0.2.1
+ unindent@0.1.7
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ winapi@0.3.9
+"
+
+inherit distutils-r1 cargo pypi
+
+DESCRIPTION="Python wrapper around Rust kurbo 2D curves library "
+HOMEPAGE="https://github.com/simoncozens/kurbopy"
+SRC_URI+=" ${CARGO_CRATE_URIS}"
+
+LICENSE="Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+src_compile() {
+ distutils-r1_src_compile
+ cargo_src_compile
+}
+
+src_install() {
+ distutils-r1_src_install
+}
+
+distutils_enable_tests pytest
+
+QA_FLAGS_IGNORED="usr/lib/python3\..*/site-packages/kurbopy/kurbopy.*.so"
diff --git a/dev-python/kurbopy/metadata.xml b/dev-python/kurbopy/metadata.xml
new file mode 100644
index 000000000..4b53df74c
--- /dev/null
+++ b/dev-python/kurbopy/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>julien@jroy.ca</email>
+ <name>Julien Roy</name>
+ </maintainer>
+ <longdescription>Kurbopy is a Python wrapper around the Rust kurbo library, a 2D curve manipulation library with "a focus on accuracy and good performance in high-accuracy conditions".
+
+Kurbopy is currently an incomplete wrapper, with additional methods and classes being added on as an-needed basis. If you need a method or class from kurbo added to kurbopy, please ask for it in the issue tracker.
+
+The version number of kurbopy releases is formed of the kurbo version number with the patch number multiplied by ten plus any kurbopy patch releases. In other words, kurbopy version 0.8.15 is the fifth patch release tracking kurbo 0.8.1.</longdescription>
+ <upstream>
+ <maintainer>
+ <name>Simon Cozens</name>
+ <email>simon@simon-cozens.org</email>
+ </maintainer>
+ <bugs-to>https://github.com/simoncozens/kurbopy/issues</bugs-to>
+ <remote-id type="github">simoncozens/kurbopy</remote-id>
+ <remote-id type="pypi">kurbopy</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest
new file mode 100644
index 000000000..a11d7c268
--- /dev/null
+++ b/dev-python/langdetect/Manifest
@@ -0,0 +1 @@
+DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db
diff --git a/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
new file mode 100644
index 000000000..637368d2f
--- /dev/null
+++ b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
@@ -0,0 +1,13 @@
+Fix "Package 'langdetect.profiles' is absent from the `packages` configuration."
+
+--- a/setup.py
++++ b/setup.py
+@@ -18,7 +18,7 @@ setup(
+ author_email='michal.danilak@gmail.com',
+ url='https://github.com/Mimino666/langdetect',
+ keywords='language detection library',
+- packages=['langdetect', 'langdetect.utils', 'langdetect.tests'],
++ packages=['langdetect', 'langdetect.utils', 'langdetect.tests', 'langdetect.profiles'],
+ include_package_data=True,
+ install_requires=['six'],
+ license='MIT',
diff --git a/dev-python/langdetect/langdetect-1.0.9.ebuild b/dev-python/langdetect/langdetect-1.0.9.ebuild
new file mode 100644
index 000000000..4ccb48f61
--- /dev/null
+++ b/dev-python/langdetect/langdetect-1.0.9.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="Port of Google's language-detection library to Python"
+HOMEPAGE="
+ https://pypi.org/project/langdetect/
+ https://github.com/Mimino666/langdetect
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
+
+PATCHES=( "${FILESDIR}/${P}-explicit-config.patch" )
+
+distutils_enable_tests unittest
diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml
new file mode 100644
index 000000000..7b2bbaa29
--- /dev/null
+++ b/dev-python/langdetect/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">langdetect</remote-id>
+ <remote-id type="github">Mimino666/langdetect</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/latexify-py/Manifest b/dev-python/latexify-py/Manifest
new file mode 100644
index 000000000..a570fb803
--- /dev/null
+++ b/dev-python/latexify-py/Manifest
@@ -0,0 +1 @@
+DIST latexify_py-0.4.3-post1.gh.tar.gz 78199 BLAKE2B 2292131c5f9eec51c8cf16812d72823076e61ac66320688ba891dea822bcad240a69e932aa7f6f5af54508b1e770a12bf19ac01c29ccee930e1b976670500ef5 SHA512 0c534368827b9776132a6ff7e2bedd6ca70a097ff6abbb22b87399ae17b3b2f04c171e9fae8ecc00103e0f90e367b57c4e832ecbeffad44a9e82a09495ffbaaa
diff --git a/dev-python/latexify-py/latexify-py-0.4.3.1.ebuild b/dev-python/latexify-py/latexify-py-0.4.3.1.ebuild
new file mode 100644
index 000000000..407760489
--- /dev/null
+++ b/dev-python/latexify-py/latexify-py-0.4.3.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=hatchling
+
+inherit distutils-r1
+
+DESCRIPTION="Annotate Python source code to get LaTeX expressions"
+HOMEPAGE="
+ https://pypi.org/project/latexify-py/
+ https://github.com/google/latexify_py
+"
+
+# upstream package is called latexify-py (on pypi), but their filename is called latexify_py
+# we're using $(ver_cut 1-3) because of this specific postfix version, akin to -r1. remove in next versions
+SRC_URI="https://github.com/google/latexify_py/archive/refs/tags/v$(ver_cut 1-3)-post1.tar.gz -> ${PN/-/_}-$(ver_cut 1-3)-post1.gh.tar.gz"
+S="${WORKDIR}/${PN/-/_}-$(ver_cut 1-3)-post1"
+
+LICENSE="Apache-2.0"
+SLOT=0
+KEYWORDS="~amd64"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ dev-python/dill[${PYTHON_USEDEP}]
+"
+DEPEND="${PYTHON_DEPS}"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/latexify-py/metadata.xml b/dev-python/latexify-py/metadata.xml
new file mode 100644
index 000000000..47da14ac9
--- /dev/null
+++ b/dev-python/latexify-py/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>rolferen@gmail.com</email>
+ <name>Mazunki Hoksaas</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">google/latexify_py</remote-id>
+ <remote-id type="pypi">latexify-py</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/ldappool/Manifest b/dev-python/ldappool/Manifest
deleted file mode 100644
index 8dbaca185..000000000
--- a/dev-python/ldappool/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ldappool-2.4.1.tar.gz 18611 BLAKE2B 44de0b3b3c4ef94e232189216e55c0adf85b51e4d6e2e7c47a6c9dca455e9e09919bc04e264e027e4ba96af8dc7315a78e5094f5ed2ccd4c8f6c3952da38370f SHA512 ea22290d9acc7f90093cb27aacbf339e1edbad33780051db263cc5254d0b42494e6dd67da9f5e506f09c5867a69afbea89d14e0c3aac47233cba0ffe361b1a75
diff --git a/dev-python/ldappool/ldappool-2.4.1.ebuild b/dev-python/ldappool/ldappool-2.4.1.ebuild
deleted file mode 100644
index ac019b5e0..000000000
--- a/dev-python/ldappool/ldappool-2.4.1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="A connection pool for python-ldap"
-HOMEPAGE="https://launchpad.net/oslo"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/python-ldap-3.0.0[${PYTHON_USEDEP}]
- >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
- <dev-python/prettytable-0.8[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/ldappool/metadata.xml b/dev-python/ldappool/metadata.xml
deleted file mode 100644
index 1281f06b8..000000000
--- a/dev-python/ldappool/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <remote-id type="pypi">ldappool</remote-id>
- <remote-id type="launchpad">oslo</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/libusb1/Manifest b/dev-python/libusb1/Manifest
index ea291aea0..90e2bb9d2 100644
--- a/dev-python/libusb1/Manifest
+++ b/dev-python/libusb1/Manifest
@@ -1 +1 @@
-DIST libusb1-1.9.2.tar.gz 80139 BLAKE2B 954fb72165e1bb94c5bad5b116e96272f3d8bd07215463a53a0f15f1c98e568dc2a710b23d46829ec870f2baec6184450d68ca280ac3c12af806cb1dde94e33a SHA512 cae50daa7abf367941bc136295adaac33996db5811d6fa302802b3a97d643c7145f0faa370d130d72bc356999e60003b0420700143739fee7c8ba8ddca264788
+DIST libusb1-2.0.1.tar.gz 82619 BLAKE2B 53b5302b0b2a6907b62493f56a041add928a20950542bf8034ada4240b65c51fd187aff3a97393d2cde64b4a7756a0aeebec449a62b25b5b7c82f4afe815c5a5 SHA512 d675ff9e0b89f53341182e69d62573a6494826abdfbcb56a3fe2de232920375ddcd37da1ee802a2315ef695418ce202a3c84b8ec4c7ed24799ed5aee37eaf242
diff --git a/dev-python/libusb1/libusb1-1.9.2.ebuild b/dev-python/libusb1/libusb1-1.9.2.ebuild
deleted file mode 100644
index f8ea69f47..000000000
--- a/dev-python/libusb1/libusb1-1.9.2.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 2020-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Pure-python wrapper for libusb-1.0"
-HOMEPAGE="https://github.com/vpelletier/python-libusb1"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="virtual/libusb"
-DEPEND="dev-python/wheel[${PYTHON_USEDEP}]"
-
-distutils_enable_tests setup.py
diff --git a/dev-python/libusb1/libusb1-2.0.1-r1.ebuild b/dev-python/libusb1/libusb1-2.0.1-r1.ebuild
new file mode 100644
index 000000000..44ca74fd6
--- /dev/null
+++ b/dev-python/libusb1/libusb1-2.0.1-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10,11} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Pure-python wrapper for libusb-1.0"
+HOMEPAGE="
+ https://github.com/vpelletier/python-libusb1
+ https://pypi.org/project/libusb1/
+"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="virtual/libusb"
+
+distutils_enable_tests setup.py
diff --git a/dev-python/libusb1/metadata.xml b/dev-python/libusb1/metadata.xml
index c5e755c01..f7ef38aa1 100644
--- a/dev-python/libusb1/metadata.xml
+++ b/dev-python/libusb1/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>a.zuber@gmx.ch</email>
@@ -7,5 +7,6 @@
</maintainer>
<upstream>
<remote-id type="github">vpelletier/python-libusb1</remote-id>
+ <remote-id type="pypi">libusb1</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-python/lru-dict/Manifest b/dev-python/lru-dict/Manifest
new file mode 100644
index 000000000..d22ee8d5f
--- /dev/null
+++ b/dev-python/lru-dict/Manifest
@@ -0,0 +1 @@
+DIST lru-dict-1.3.0.tar.gz 13123 BLAKE2B 705fb47e2f8564e5aea43d2a9a08b834e2f645dd78e6604896b159aceb75d71bf88c138fb2db746808b0d901e18d206c09181997f2a7366264d91bd412856d10 SHA512 c5db55f7808ce404a71990546a40c26a9c46c3edff475cf5c0cb5082c5527793c41c517a2d615145f4733c6f39b988775f2092f55b58ea54a8e6830a66bbaf5a
diff --git a/dev-python/lru-dict/lru-dict-1.3.0.ebuild b/dev-python/lru-dict/lru-dict-1.3.0.ebuild
new file mode 100644
index 000000000..43c36771b
--- /dev/null
+++ b/dev-python/lru-dict/lru-dict-1.3.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_EXT=1
+PYTHON_COMPAT=( python3_{11..12} )
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Dict like LRU container"
+HOMEPAGE="
+ https://pypi.org/project/lru-dict/
+ https://github.com/amitdev/lru-dict
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests unittest
+
+python_test() {
+ cd "${T}" || die
+ eunittest "${S}"/test
+}
diff --git a/dev-python/lru-dict/metadata.xml b/dev-python/lru-dict/metadata.xml
new file mode 100644
index 000000000..6a34077b5
--- /dev/null
+++ b/dev-python/lru-dict/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">lru-dict</remote-id>
+ <maintainer>
+ <name>Amit Dev</name>
+ </maintainer>
+ <remote-id type="github">amitdev/lru-dict</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/manhole/Manifest b/dev-python/manhole/Manifest
index 940de3533..b710026eb 100644
--- a/dev-python/manhole/Manifest
+++ b/dev-python/manhole/Manifest
@@ -1 +1 @@
-DIST manhole-1.8.0.tar.gz 30823 BLAKE2B 7de4966faaa5a386097d9e3015318f3df5422f9f4525347ea93bc1b3cc988236e2db9dcdf7c5e4f058ad816c74beebab210af65fd331e2347da9c05035a22128 SHA512 041452d602895f7ceaafc74ac50713acd470120b022a942946de83f90d2d839ee15b333dfc329f88597b13e0b3fee436af526beae95a3ff94e51376fd2cc27e6
+DIST manhole-1.8.0.gh.tar.gz 30823 BLAKE2B 7de4966faaa5a386097d9e3015318f3df5422f9f4525347ea93bc1b3cc988236e2db9dcdf7c5e4f058ad816c74beebab210af65fd331e2347da9c05035a22128 SHA512 041452d602895f7ceaafc74ac50713acd470120b022a942946de83f90d2d839ee15b333dfc329f88597b13e0b3fee436af526beae95a3ff94e51376fd2cc27e6
diff --git a/dev-python/manhole/files/importlib.patch b/dev-python/manhole/files/importlib.patch
new file mode 100644
index 000000000..e9cb14134
--- /dev/null
+++ b/dev-python/manhole/files/importlib.patch
@@ -0,0 +1,11 @@
+Use importlib as imp is removed in python3.12
+--- a/tests/test_manhole.py
++++ b/tests/test_manhole.py
+@@ -1,6 +1,6 @@
+ from __future__ import print_function
+
+-import imp
++import importlib
+ import os
+ import re
+ import select
diff --git a/dev-python/manhole/manhole-1.8.0-r2.ebuild b/dev-python/manhole/manhole-1.8.0-r2.ebuild
new file mode 100644
index 000000000..51160ca79
--- /dev/null
+++ b/dev-python/manhole/manhole-1.8.0-r2.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+
+DOCS_BUILDER="sphinx"
+DOCS_DEPEND="dev-python/sphinx-py3doc-enhanced-theme"
+DOCS_DIR="docs"
+
+inherit distutils-r1 docs
+
+DESCRIPTION="Debugging manhole for python application"
+HOMEPAGE="
+ https://github.com/ionelmc/python-manhole
+ https://pypi.org/project/manhole/
+"
+SRC_URI="https://github.com/ionelmc/python-${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/python-${P}"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/process-tests[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( AUTHORS.rst CHANGELOG.rst README.rst )
+
+PATCHES=(
+ "${FILESDIR}/importlib.patch"
+)
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # Need an internet connection
+ tests/test_manhole.py::test_simple
+ tests/test_manhole.py::test_connection_handler_exec
+ tests/test_manhole.py::test_daemon_connection
+ tests/test_manhole.py::test_non_daemon_connection
+ tests/test_manhole.py::test_locals_after_fork
+ tests/test_manhole.py::test_socket_path
+ tests/test_manhole.py::test_with_fork
+ tests/test_manhole.py::test_with_forkpty
+ tests/test_manhole.py::test_oneshot_on_usr2_error
+
+ # Need the python package signalfd
+ tests/test_manhole.py::test_sigprocmask
+ tests/test_manhole.py::test_sigprocmask_negative
+ tests/test_manhole.py::test_sigmask
+
+ # Usually passes but sometimes fails (bug #792225)
+ tests/test_manhole.py::test_stderr_doesnt_deadlock
+
+ # Cannot find a file or directory
+ tests/test_manhole.py::test_uwsgi
+
+ # Broken
+ tests/test_manhole_cli.py::test_help
+)
+
+python_test() {
+ [[ ${EPYTHON} == pypy3 ]] && \
+ EPYTEST_DESELECT+=( tests/test_manhole.py::test_log_fh )
+ distutils-r1_python_test
+}
diff --git a/dev-python/manhole/manhole-1.8.0.ebuild b/dev-python/manhole/manhole-1.8.0.ebuild
deleted file mode 100644
index eae6b4e6c..000000000
--- a/dev-python/manhole/manhole-1.8.0.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-inherit distutils-r1
-
-DESCRIPTION="Debugging manhole for python application"
-HOMEPAGE="
- https://github.com/ionelmc/python-manhole
- https://pypi.org/project/manhole
-"
-SRC_URI="https://github.com/ionelmc/python-${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/python-${PN}-${PV}"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-BDEPEND="test? (
- dev-python/gevent[${PYTHON_USEDEP}]
- dev-python/process-tests[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- $(python_gen_cond_dep \
- 'dev-python/eventlet[${PYTHON_USEDEP}]' python3.8 python3.9)
-)"
-
-DOCS=( AUTHORS.rst CHANGELOG.rst README.rst )
-
-distutils_enable_tests --install pytest
-distutils_enable_sphinx docs dev-python/sphinx-py3doc-enhanced-theme
-
-python_test() {
- epytest_args=(
- --deselect tests/test_manhole.py::test_non_daemon_connection
- --deselect tests/test_manhole.py::test_daemon_connection
- --deselect tests/test_manhole.py::test_uwsgi
- --deselect tests/test_manhole.py::test_fork_exec
- --deselect tests/test_manhole.py::test_connection_handler_exec[str]
- --deselect tests/test_manhole.py::test_connection_handler_exec[func]
- --deselect tests/test_manhole.py::test_environ_variable_activation
- --deselect tests/test_manhole.py::test_stderr_doesnt_deadlock
- --deselect tests/test_manhole_cli.py
- )
-
- epytest "${epytest_args[@]}"
-}
diff --git a/dev-python/manhole/metadata.xml b/dev-python/manhole/metadata.xml
index 293942a4d..e43aa1c8f 100644
--- a/dev-python/manhole/metadata.xml
+++ b/dev-python/manhole/metadata.xml
@@ -1,20 +1,18 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-Manhole is in-process service that will accept unix domain socket connections and present the stacktraces for all threads and an interactive prompt. It can either work as a python daemon thread waiting for connections at all times or a signal handler (stopping your application and waiting for a connection).
+ <!-- maintainer-needed -->
+ <longdescription lang="en">
+ Manhole is in-process service that will accept unix domain socket connections and present the stacktraces for all threads and an interactive prompt. It can either work as a python daemon thread waiting for connections at all times or a signal handler (stopping your application and waiting for a connection).
-Access to the socket is restricted to the application's effective user id or root.
+ Access to the socket is restricted to the application's effective user id or root.
-This is just like Twisted's manhole. It's simpler (no dependencies), it only runs on Unix domain sockets (in contrast to Twisted's manhole which can run on telnet or ssh) and it integrates well with various types of applications.
- </longdescription>
- <upstream>
- <remote-id type="github">ionelmc/python-manhole</remote-id>
- <remote-id type="pypi">manhole</remote-id>
- </upstream>
+ This is just like Twisted's manhole. It's simpler (no dependencies), it only runs on Unix domain sockets (in contrast to Twisted's manhole which can run on telnet or ssh) and it integrates well with various types of applications.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">ionelmc/python-manhole</remote-id>
+ <remote-id type="pypi">manhole</remote-id>
+ <doc>https://python-manhole.readthedocs.io/</doc>
+ <changelog>https://python-manhole.readthedocs.io/en/latest/changelog.html</changelog>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/markdown-include/Manifest b/dev-python/markdown-include/Manifest
deleted file mode 100644
index 8b34c8a7c..000000000
--- a/dev-python/markdown-include/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST markdown-include-0.6.0.tar.gz 4661 BLAKE2B 449e05b40ab3a8725f68a8c02dc32349de2435520790b955b708c39ac53782c91dd6b592a712fafe9442f6ba1fda0794436500a5a4148d16caaf38dd6af8b69f SHA512 cbd83ff6ae64416410a7b6879c6f3fa4edd1b1d6e898508251651f0366bf7a121d2e0447f638069b84f872713dc9618128a4fa524d2eaddcfa8bfc2ed3be76de
diff --git a/dev-python/markdown-include/markdown-include-0.6.0.ebuild b/dev-python/markdown-include/markdown-include-0.6.0.ebuild
deleted file mode 100644
index 2d24ec8b2..000000000
--- a/dev-python/markdown-include/markdown-include-0.6.0.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Syntax which allows for inclusion of contents of other Markdown docs"
-HOMEPAGE="https://github.com/cmacmackin/markdown-include"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-
-RDEPEND="dev-python/markdown[${PYTHON_USEDEP}]"
diff --git a/dev-python/markdown-include/metadata.xml b/dev-python/markdown-include/metadata.xml
deleted file mode 100644
index 34949af60..000000000
--- a/dev-python/markdown-include/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>torokhov-s-a@yandex.ru</email>
- <name>Sergey Torokhov</name>
- </maintainer>
- <longdescription lang="en">
- An extension to Python-Markdown which provides an "include" function,
- similar to that found in LaTeX (and also the C pre-processor and Fortran).
- </longdescription>
- <upstream>
- <remote-id type="github">cmacmackin/markdown-include</remote-id>
- <remote-id type="pypi">markdown-include</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/markdownify/Manifest b/dev-python/markdownify/Manifest
new file mode 100644
index 000000000..03c98162c
--- /dev/null
+++ b/dev-python/markdownify/Manifest
@@ -0,0 +1 @@
+DIST markdownify-0.11.6.tar.gz 16183 BLAKE2B 3bd511937043f4b262eb3bea102ad490ccfac3583adaff9120e781fdb308a072fa053595302ffd26d650cf65b3f20dc828cdf3b6755037bfc87afb0cf6dffe4e SHA512 9ab2bf56981081737e5ed95aa96ec16c2644fecca62763a4ea4ba1f6ebb61b671cecc857abd4a92a738a9762104b2d9beb92b320638d80dca3ad4ee7621d02e7
diff --git a/dev-python/markdownify/markdownify-0.11.6.ebuild b/dev-python/markdownify/markdownify-0.11.6.ebuild
new file mode 100644
index 000000000..f30ecbc76
--- /dev/null
+++ b/dev-python/markdownify/markdownify-0.11.6.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="Convert HTML to Markdown"
+HOMEPAGE="
+ https://pypi.org/project/markdownify/
+ https://github.com/matthewwithanm/python-markdownify
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ !dev-python/django-markdownify
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+ mv tests markdownify/tests || die
+}
diff --git a/dev-python/markdownify/metadata.xml b/dev-python/markdownify/metadata.xml
new file mode 100644
index 000000000..e19ca50d8
--- /dev/null
+++ b/dev-python/markdownify/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">markdownify</remote-id>
+ <remote-id type="github">matthewwithanm/python-markdownify</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/marshmallow_enum/Manifest b/dev-python/marshmallow_enum/Manifest
new file mode 100644
index 000000000..4b7ec09ca
--- /dev/null
+++ b/dev-python/marshmallow_enum/Manifest
@@ -0,0 +1 @@
+DIST marshmallow_enum-1.5.1.tar.gz 6562 BLAKE2B b79a610e2e99c29d8d972f6e4963e5f8632a1c826b6aa8e8ceba83cc03c665a6ea4ac443872a05eff748ba09c016bc9275440cdce994a2e1fa1edf743da25a13 SHA512 989fe58613dc28f242b1990a727a87c453809ad2de9355595e53e2c569de6434c76c150522c31189282edca74740dc0aabfafa57e2f78397644adae1b6d99f7d
diff --git a/dev-python/marshmallow_enum/marshmallow_enum-1.5.1.ebuild b/dev-python/marshmallow_enum/marshmallow_enum-1.5.1.ebuild
new file mode 100644
index 000000000..44fca4de0
--- /dev/null
+++ b/dev-python/marshmallow_enum/marshmallow_enum-1.5.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1
+
+DESCRIPTION="Enum handling for Marshmallow"
+HOMEPAGE="https://github.com/justanr/marshmallow_enum"
+SRC_URI="https://github.com/justanr/marshmallow_enum/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND=">=dev-python/marshmallow-2.0.0[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -e '/addopts/d' -i tox.ini || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/marshmallow_enum/metadata.xml b/dev-python/marshmallow_enum/metadata.xml
new file mode 100644
index 000000000..2cdeb2f10
--- /dev/null
+++ b/dev-python/marshmallow_enum/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">justanr/marshmallow_enum</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/mastodon-py/Manifest b/dev-python/mastodon-py/Manifest
new file mode 100644
index 000000000..95dedc81d
--- /dev/null
+++ b/dev-python/mastodon-py/Manifest
@@ -0,0 +1 @@
+DIST Mastodon.py-1.8.1.tar.gz 8694359 BLAKE2B d3b8d2196199eeaeb0377c8503e763099943142c58b5b45bbbb86a38c0629ea6ee6427b53c989267a13d4d2a0c104635387ffef96d05d7dfa7dd8c2756e8704b SHA512 812bfdcb1a59a06376bfb48798b43cac9dc9390781b3949e4b3d751ec0530b25b187e688c7cfc18eff6d5bb23c9bf442bce5f6902727331e8bc550e310dab94c
diff --git a/dev-python/mastodon-py/mastodon-py-1.8.1.ebuild b/dev-python/mastodon-py/mastodon-py-1.8.1.ebuild
new file mode 100644
index 000000000..cb8a32035
--- /dev/null
+++ b/dev-python/mastodon-py/mastodon-py-1.8.1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+PYPI_NO_NORMALIZE=1
+PYPI_PN="Mastodon.py"
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="Python wrapper for the Mastodon API"
+HOMEPAGE="
+ https://pypi.org/project/Mastodon.py/
+ https://github.com/halcy/Mastodon.py
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/blurhash[${PYTHON_USEDEP}]
+ dev-python/decorator[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ dev-python/python-magic[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/http-ece[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-vcr[${PYTHON_USEDEP}]
+ dev-python/requests-mock[${PYTHON_USEDEP}]
+ dev-python/vcrpy[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_DESELECT=(
+ # something related to simplejson
+ tests/test_notifications.py::test_notifications_dismiss_pre_2_9_2
+ tests/test_status.py::test_status_card_pre_2_9_2
+)
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs
+
+src_prepare() {
+ distutils-r1_src_prepare
+ rm setup.cfg || die
+}
+
+pkg_postinst() {
+ optfeature "webpush support" "dev-python/cryptography dev-python/http-ece"
+}
diff --git a/dev-python/mastodon-py/metadata.xml b/dev-python/mastodon-py/metadata.xml
new file mode 100644
index 000000000..e5ffe478f
--- /dev/null
+++ b/dev-python/mastodon-py/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">Mastodon.py</remote-id>
+ <remote-id type="github">halcy/Mastodon.py</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/material-color-utilities/Manifest b/dev-python/material-color-utilities/Manifest
new file mode 100644
index 000000000..5a202bca6
--- /dev/null
+++ b/dev-python/material-color-utilities/Manifest
@@ -0,0 +1 @@
+DIST material-color-utilities-python-0.1.5.tar.gz 25702 BLAKE2B cf444831fec962caae3a1871b8331dcdd055f186754631185140842e49e1dc5526c5aedc021d28cd5e192e6f593774abce34e4a2853049e9ded2cf3ca9b79e3f SHA512 f3987da2723f9bc0a383d544868bd48b79c815c1ef3b601cf7daf711ae66ba2e20c38d272fff34b8fef724d202cdb71431d885d0fc86cf6b459a8735cd0751a4
diff --git a/dev-python/material-color-utilities/material-color-utilities-0.1.5.ebuild b/dev-python/material-color-utilities/material-color-utilities-0.1.5.ebuild
new file mode 100644
index 000000000..d2000125b
--- /dev/null
+++ b/dev-python/material-color-utilities/material-color-utilities-0.1.5.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+DISTUTILS_USE_PEP517=poetry
+PYPI_NO_NORMALIZE=1
+PYPI_PN="${PN}-python"
+
+inherit distutils-r1 pypi
+
+MY_PN="${PN}-python"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Python port of material-color-utilities used for Material You colors"
+HOMEPAGE="
+ https://pypi.org/project/material-color-utilities/
+"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/avanishsubbiah/material-color-utilities-python.git"
+else
+ KEYWORDS="~amd64 ~arm64"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+
+RDEPEND="
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/regex[${PYTHON_USEDEP}]"
+BDEPEND="
+ dev-python/poetry-core[${PYTHON_USEDEP}]
+ dev-python/build[${PYTHON_USEDEP}]"
diff --git a/dev-python/material-color-utilities/material-color-utilities-9999.ebuild b/dev-python/material-color-utilities/material-color-utilities-9999.ebuild
new file mode 100644
index 000000000..bbc6793fa
--- /dev/null
+++ b/dev-python/material-color-utilities/material-color-utilities-9999.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+DISTUTILS_USE_PEP517=poetry
+
+inherit distutils-r1
+
+MY_PN="${PN}-python"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Python port of material-color-utilities used for Material You colors"
+HOMEPAGE="
+ https://pypi.org/project/material-color-utilities/
+"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/avanishsubbiah/material-color-utilities-python.git"
+else
+ KEYWORDS="~amd64 ~arm64"
+ S="${WORKDIR}/${MY_P}"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+
+RDEPEND="
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/regex[${PYTHON_USEDEP}]"
+BDEPEND="
+ dev-python/poetry-core[${PYTHON_USEDEP}]
+ dev-python/build[${PYTHON_USEDEP}]"
diff --git a/dev-python/material-color-utilities/metadata.xml b/dev-python/material-color-utilities/metadata.xml
new file mode 100644
index 000000000..31e51b646
--- /dev/null
+++ b/dev-python/material-color-utilities/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>ran.dall@icloud.com</email>
+ <name>Randall T. Vasquez</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>pascal.jaeger@leimstift.de</email>
+ <name>Pascal Jaeger</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">avanishsubbiah/material-color-utilities-python"</remote-id>
+ <remote-id type="pypi">material-color-utilities</remote-id>
+ <bugs-to>https://github.com/avanishsubbiah/material-color-utilities-python/issues"</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/mautrix/Manifest b/dev-python/mautrix/Manifest
new file mode 100644
index 000000000..b54fb010f
--- /dev/null
+++ b/dev-python/mautrix/Manifest
@@ -0,0 +1 @@
+DIST mautrix-0.20.4.gh.tar.gz 244467 BLAKE2B adbab30c4b4e08b2def968bc7b85c4402cf32cfa4f15b17c8ba126a93230e2d84c6a43a3cc8bd0fe409d4fd1f9129a65c89d68ae61aaecd869cbf62480ff2883 SHA512 30a1a82fdb6875cd24dc685c567ad9c73eaa2d6a25e188498bdfec452dc530c0efa4373d3a1d2b217c5238ee9f33fc2d892549ea576c2f487f942a38eb8363d5
diff --git a/dev-python/mautrix/mautrix-0.20.4-r1.ebuild b/dev-python/mautrix/mautrix-0.20.4-r1.ebuild
new file mode 100644
index 000000000..0304110f1
--- /dev/null
+++ b/dev-python/mautrix/mautrix-0.20.4-r1.ebuild
@@ -0,0 +1,69 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit edo databases distutils-r1 optfeature
+
+DESCRIPTION="A Python 3 asyncio Matrix framework"
+HOMEPAGE="
+ https://pypi.org/project/mautrix/
+ https://github.com/mautrix/python
+"
+
+# use github tarball for test data
+SRC_URI="https://github.com/mautrix/python/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/python-${PV}"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="crypt"
+REQUIRED_USE="test? ( crypt )"
+
+RDEPEND="
+ dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/attrs[${PYTHON_USEDEP}]
+ dev-python/yarl[${PYTHON_USEDEP}]
+ crypt? (
+ dev-python/python-olm[${PYTHON_USEDEP}]
+ dev-python/pycryptodome[${PYTHON_USEDEP}]
+ dev-python/unpaddedbase64[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ ${DATABASES_DEPEND[postgres]}
+ dev-python/aiosqlite[${PYTHON_USEDEP}]
+ dev-python/asyncpg[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/ruamel-yaml[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+# Disabled because of https://bugs.gentoo.org/922488
+#distutils_enable_sphinx docs \
+# dev-python/sphinx-rtd-theme
+
+src_test() {
+ local -x PGHOST="$(epostgres --get-sockdir)"
+ local -x PGPORT="65432"
+ local -x PGUSER="postgres"
+ local -x MEOW_TEST_PG_URL="postgresql:///meow"
+
+ epostgres --start ${PGPORT}
+ edo createdb -U postgres meow
+
+ distutils-r1_src_test
+ epostgres --stop
+}
+
+pkg_postinst() {
+ optfeature "MIME type detection support" dev-python/python-magic
+ optfeature "media transcoding support" media-video/ffmpeg
+}
diff --git a/dev-python/mautrix/mautrix-0.20.4-r2.ebuild b/dev-python/mautrix/mautrix-0.20.4-r2.ebuild
new file mode 100644
index 000000000..d7a7df90a
--- /dev/null
+++ b/dev-python/mautrix/mautrix-0.20.4-r2.ebuild
@@ -0,0 +1,65 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit daemons distutils-r1 optfeature
+
+DESCRIPTION="A Python 3 asyncio Matrix framework"
+HOMEPAGE="
+ https://pypi.org/project/mautrix/
+ https://github.com/mautrix/python
+"
+
+# use github tarball for test data
+SRC_URI="https://github.com/mautrix/python/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/python-${PV}"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="crypt"
+REQUIRED_USE="test? ( crypt )"
+
+RDEPEND="
+ dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/attrs[${PYTHON_USEDEP}]
+ dev-python/yarl[${PYTHON_USEDEP}]
+ crypt? (
+ dev-python/python-olm[${PYTHON_USEDEP}]
+ dev-python/pycryptodome[${PYTHON_USEDEP}]
+ dev-python/unpaddedbase64[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ dev-python/aiosqlite[${PYTHON_USEDEP}]
+ dev-python/asyncpg[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/ruamel-yaml[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+daemons_enable postgresql test
+
+# Disabled because of https://bugs.gentoo.org/922488
+#distutils_enable_sphinx docs \
+# dev-python/sphinx-rtd-theme
+
+src_test() {
+ daemons_start postgresql --host 127.0.0.1
+ local -x MEOW_TEST_PG_URL="${POSTGRESQL_URL:?}"
+
+ distutils-r1_src_test
+ daemons_stop postgresql
+}
+
+pkg_postinst() {
+ optfeature "MIME type detection support" dev-python/python-magic
+ optfeature "media transcoding support" media-video/ffmpeg
+}
diff --git a/dev-python/mautrix/metadata.xml b/dev-python/mautrix/metadata.xml
new file mode 100644
index 000000000..f4b10200a
--- /dev/null
+++ b/dev-python/mautrix/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Julien Roy</name>
+ <email>julien@jroy.ca</email>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <name>Tulir Asokan</name>
+ <email>tulir@maunium.net</email>
+ </maintainer>
+ <changelog>https://github.com/mautrix/python/releases</changelog>
+ <doc>https://docs.mau.fi/python/latest/</doc>
+ <bugs-to>https://github.com/mautrix/python/issues</bugs-to>
+ <remote-id type="github">mautrix/python</remote-id>
+ <remote-id type="pypi">mautrix</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/md-environ/Manifest b/dev-python/md-environ/Manifest
deleted file mode 100644
index 34d49662a..000000000
--- a/dev-python/md-environ/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST md-environ-0.1.0.tar.gz 3060 BLAKE2B 5e201b1eacd648d57eac39ff465c3d6772128515d102d68e2bb9ea2b9cae4197b173c8a3a926fc5c57cbee695ad4c7d82853826ba18e68517c4e6ecf46d9a692 SHA512 6a6455666410d4fccecd3ef059fb08f06d9d68bd40c64795d99e1f779f69b6361b322ce2e6853d17e0b9bb99f014b65a0466ad519fd24422ffaa657863aa3460
diff --git a/dev-python/md-environ/md-environ-0.1.0.ebuild b/dev-python/md-environ/md-environ-0.1.0.ebuild
deleted file mode 100644
index 8ec0f936a..000000000
--- a/dev-python/md-environ/md-environ-0.1.0.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Syntax which allows for inclusion of contents of other Markdown docs"
-HOMEPAGE="https://github.com/cmacmackin/md-environ"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-
-RDEPEND="dev-python/markdown[${PYTHON_USEDEP}]"
-
-src_prepare() {
- # Fix QA Notice: setuptools warning
- sed -i "s/description-file/description_file/" setup.cfg || die
- eapply_user
-}
diff --git a/dev-python/md-environ/metadata.xml b/dev-python/md-environ/metadata.xml
deleted file mode 100644
index c8dfd6887..000000000
--- a/dev-python/md-environ/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>torokhov-s-a@yandex.ru</email>
- <name>Sergey Torokhov</name>
- </maintainer>
- <longdescription>
- This is an extension to Python-Markdown which allows environment variables to be used in the text.
- </longdescription>
- <upstream>
- <remote-id type="github">cmacmackin/md-environ</remote-id>
- <remote-id type="pypi">md-environ</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/microversion-parse/Manifest b/dev-python/microversion-parse/Manifest
deleted file mode 100644
index 32786ca79..000000000
--- a/dev-python/microversion-parse/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST microversion_parse-1.0.1.tar.gz 19228 BLAKE2B 592bb09f815bba018421e12b72e1053dc97d20bc0e9cd4b52772647b057cc1572cae5e365c3bd7682660d2e824150121f211fcda86e0d8f68f77164a598ff7c2 SHA512 25d6894cc65598e6215de2d6e256d26433bcb337e1f8c5dd7075c644adbf2e89feb38d08bc0522573ed8884c2734e83bcf5d0bec6292ecb44615deb18190cadc
diff --git a/dev-python/microversion-parse/metadata.xml b/dev-python/microversion-parse/metadata.xml
deleted file mode 100644
index 27b58d66a..000000000
--- a/dev-python/microversion-parse/metadata.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">microversion_parse</remote-id>
- <remote-id type="github">openstack/microversion-parse</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/microversion-parse/microversion-parse-1.0.1.ebuild b/dev-python/microversion-parse/microversion-parse-1.0.1.ebuild
deleted file mode 100644
index e44f6642a..000000000
--- a/dev-python/microversion-parse/microversion-parse-1.0.1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="A simple parser for OpenStack microversion headers"
-HOMEPAGE="https://github.com/openstack/microversion-parse"
-SRC_URI="mirror://pypi/${PN:0:1}/microversion_parse/microversion_parse-${PV}.tar.gz"
-S="${WORKDIR}/microversion_parse-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-
-DEPEND="
- >=dev-python/pbr-5.0[${PYTHON_USEDEP}]
- >=dev-python/webob-1.2.3[${PYTHON_USEDEP}]
-"
-RDEPEND="${DEPEND}"
diff --git a/dev-python/mitype/Manifest b/dev-python/mitype/Manifest
new file mode 100644
index 000000000..06ed05b97
--- /dev/null
+++ b/dev-python/mitype/Manifest
@@ -0,0 +1 @@
+DIST mitype-0.2.5.gh.tar.gz 1148065 BLAKE2B 0e53fb570c17d1076788ba8e3575923c232859220d717f381a2620dba4d7c9a117186a52d3a0560e850fe773cf8c25f4d5a5898ecb0b969611a477352defca11 SHA512 a566d6a096ebaecb20c190d68a6db1d25c3657b67be40cbe681eabaa09491a26efa73ba3118e0ee339ab3c6b7c0d9fa8fb4a10cd8800c59c7b0b088768cdfbc4
diff --git a/dev-python/mitype/metadata.xml b/dev-python/mitype/metadata.xml
new file mode 100644
index 000000000..2646b2e95
--- /dev/null
+++ b/dev-python/mitype/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">mitype</remote-id>
+ <remote-id type="github">Mithil467/mitype</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/mitype/mitype-0.2.5.ebuild b/dev-python/mitype/mitype-0.2.5.ebuild
new file mode 100644
index 000000000..14c1c27f6
--- /dev/null
+++ b/dev-python/mitype/mitype-0.2.5.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Typing speed test in terminal"
+HOMEPAGE="https://github.com/Mithil467/mitype https://pypi.org/project/mitype/"
+SRC_URI="https://github.com/Mithil467/mitype/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+BDEPEND="
+ dev-python/versioneer[${PYTHON_USEDEP}]
+ doc? (
+ dev-python/sphinx-rtd-theme
+ )
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs/source
diff --git a/dev-python/mkdocs-blog-plugin/metadata.xml b/dev-python/mkdocs-blog-plugin/metadata.xml
new file mode 100644
index 000000000..956533a03
--- /dev/null
+++ b/dev-python/mkdocs-blog-plugin/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">mkdocs-blog-plugin</remote-id>
+ <remote-id type="github">fmaida/mkdocs-blog-plugin</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/mkdocs-blog-plugin/mkdocs-blog-plugin-9999.ebuild b/dev-python/mkdocs-blog-plugin/mkdocs-blog-plugin-9999.ebuild
new file mode 100644
index 000000000..332f71f1b
--- /dev/null
+++ b/dev-python/mkdocs-blog-plugin/mkdocs-blog-plugin-9999.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+
+inherit distutils-r1 git-r3
+
+DESCRIPTION="Plugin for MkDocs to keep a simple blog section inside your documentation."
+HOMEPAGE="https://github.com/fmaida/mkdocs-blog-plugin https://pypi.org/project/mkdocs-blog-plugin"
+EGIT_REPO_URI="https://github.com/fmaida/mkdocs-blog-plugin.git"
+
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND="
+ dev-python/mkdocs[${PYTHON_USEDEP}]
+"
+DEPEND="${BDEPEND}"
diff --git a/dev-python/mkdocs-bootstrap-tables-plugin/Manifest b/dev-python/mkdocs-bootstrap-tables-plugin/Manifest
new file mode 100644
index 000000000..6860a5e78
--- /dev/null
+++ b/dev-python/mkdocs-bootstrap-tables-plugin/Manifest
@@ -0,0 +1 @@
+DIST mkdocs-bootstrap-tables-plugin-0.1.1.gh.tar.gz 3451 BLAKE2B fd42bf37aca7fcf3055e262583a2180a9ba5c59d46b12b8e5f7f9864c09f53160bc0e1e782a4cdec3757ba8e26552db1c6b6e41d216c08ba9053a786f670f6ff SHA512 9a0ce18c0b2d3bf4f59bda2b70d05a9ff63278480e24740032abe99cd4e42bbd31577b98e9191aec12ed07449af489c1ebb5300ddb607d5c92810b2035cda769
diff --git a/dev-python/mkdocs-bootstrap-tables-plugin/metadata.xml b/dev-python/mkdocs-bootstrap-tables-plugin/metadata.xml
new file mode 100644
index 000000000..024eb3826
--- /dev/null
+++ b/dev-python/mkdocs-bootstrap-tables-plugin/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">byrnereese/mkdocs-bootstrap-tables-plugin</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/mkdocs-bootstrap-tables-plugin/mkdocs-bootstrap-tables-plugin-0.1.1.ebuild b/dev-python/mkdocs-bootstrap-tables-plugin/mkdocs-bootstrap-tables-plugin-0.1.1.ebuild
new file mode 100644
index 000000000..90b8185a1
--- /dev/null
+++ b/dev-python/mkdocs-bootstrap-tables-plugin/mkdocs-bootstrap-tables-plugin-0.1.1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517="setuptools"
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="A MkDocs plugin to add bootstrap classes to plan markdown generated tables."
+HOMEPAGE="https://github.com/byrnereese/mkdocs-bootstrap-tables-plugin"
+SRC_URI="https://github.com/byrnereese/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/mkdocs-1.0[${PYTHON_USEDEP}]"
diff --git a/dev-python/mkdocs-exclude/metadata.xml b/dev-python/mkdocs-exclude/metadata.xml
index 90c776dfd..1d0553f1b 100644
--- a/dev-python/mkdocs-exclude/metadata.xml
+++ b/dev-python/mkdocs-exclude/metadata.xml
@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/dev-python/mkdocs-exclude/mkdocs-exclude-1.0.2-r1.ebuild b/dev-python/mkdocs-exclude/mkdocs-exclude-1.0.2-r1.ebuild
new file mode 100644
index 000000000..3797d821e
--- /dev/null
+++ b/dev-python/mkdocs-exclude/mkdocs-exclude-1.0.2-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Lets you exclude files or trees from your output"
+HOMEPAGE="
+ https://pypi.org/project/mkdocs-exclude/
+ https://github.com/apenwarr/mkdocs-exclude
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-python/mkdocs[${PYTHON_USEDEP}]"
diff --git a/dev-python/mkdocs-exclude/mkdocs-exclude-1.0.2.ebuild b/dev-python/mkdocs-exclude/mkdocs-exclude-1.0.2.ebuild
deleted file mode 100644
index 9393fe0e0..000000000
--- a/dev-python/mkdocs-exclude/mkdocs-exclude-1.0.2.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Lets you exclude files or trees from your output"
-HOMEPAGE="https://github.com/apenwarr/mkdocs-exclude"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-
-RDEPEND="dev-python/mkdocs[${PYTHON_USEDEP}]"
diff --git a/dev-python/mkdocs-git-committers-plugin/Manifest b/dev-python/mkdocs-git-committers-plugin/Manifest
new file mode 100644
index 000000000..baabd80bb
--- /dev/null
+++ b/dev-python/mkdocs-git-committers-plugin/Manifest
@@ -0,0 +1 @@
+DIST mkdocs-git-committers-plugin-0.2.3.gh.tar.gz 6601 BLAKE2B 6fea23d6ee9475ebeaca7b349e040b8b8c17f090031800c58c77d8a4a3d7895635378dab4688dd3993d996fe075a3cc11282860362ae8647e6e66f37f8825982 SHA512 ecfb500828047eeafa77a3d4d815b18ae6c8d59fcc88ac932ede381622ebf49056d4f48e0a6d6fdca204e79347caab82b2d6ebd2b001c0ceef7009755abf1dc8
diff --git a/dev-python/mkdocs-git-committers-plugin/metadata.xml b/dev-python/mkdocs-git-committers-plugin/metadata.xml
new file mode 100644
index 000000000..d4ad63632
--- /dev/null
+++ b/dev-python/mkdocs-git-committers-plugin/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">byrnereese/mkdocs-git-committers-plugin</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/mkdocs-git-committers-plugin/mkdocs-git-committers-plugin-0.2.3.ebuild b/dev-python/mkdocs-git-committers-plugin/mkdocs-git-committers-plugin-0.2.3.ebuild
new file mode 100644
index 000000000..6b6d71153
--- /dev/null
+++ b/dev-python/mkdocs-git-committers-plugin/mkdocs-git-committers-plugin-0.2.3.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517="setuptools"
+PYTHON_COMPAT=( python3_{10..12} )
+
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="dev-python/mkdocs-bootstrap-tables-plugin"
+DOCS_INITIALIZE_GIT=1
+
+inherit distutils-r1 docs
+
+DESCRIPTION="A mkdocs plugin for displaying the last commit and a list of contributors."
+HOMEPAGE="https://github.com/byrnereese/mkdocs-git-committers-plugin"
+SRC_URI="https://github.com/byrnereese/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/PyGithub[${PYTHON_USEDEP}]
+ >=dev-python/mkdocs-1.0[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/mkdocs-rss-plugin/Manifest b/dev-python/mkdocs-rss-plugin/Manifest
new file mode 100644
index 000000000..3664e9ba1
--- /dev/null
+++ b/dev-python/mkdocs-rss-plugin/Manifest
@@ -0,0 +1 @@
+DIST mkdocs-rss-plugin-1.12.1.gh.tar.gz 551494 BLAKE2B 37259e3207deb6bc8e231abd402fd962abcf81eb063b21751f4de89eeb0f9d300a53988e41a0461540214b046c9c72dd9e23e62548d8d19fbcc8aeaae09f88ab SHA512 ed1a8a25df800c6ab9632194c985c6bbbd5b43f0eb46c4bf39f9715e6f8a7264e8b0f80bb54acadddc17b7236ed44b93f69b8c04db58b16eb0a582f3be7b81f3
diff --git a/dev-python/mkdocs-rss-plugin/metadata.xml b/dev-python/mkdocs-rss-plugin/metadata.xml
new file mode 100644
index 000000000..9fd24b41a
--- /dev/null
+++ b/dev-python/mkdocs-rss-plugin/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">mkdocs-rss-plugin</remote-id>
+ <remote-id type="github">Guts/mkdocs-rss-plugin</remote-id>
+ <doc>https://guts.github.io/mkdocs-rss-plugin/</doc>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/mkdocs-rss-plugin/mkdocs-rss-plugin-1.12.1.ebuild b/dev-python/mkdocs-rss-plugin/mkdocs-rss-plugin-1.12.1.ebuild
new file mode 100644
index 000000000..a07f1ea7c
--- /dev/null
+++ b/dev-python/mkdocs-rss-plugin/mkdocs-rss-plugin-1.12.1.ebuild
@@ -0,0 +1,76 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_11 )
+
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="
+ dev-python/termynal
+ dev-python/mkdocstrings
+ dev-python/mkdocstrings-python
+ dev-python/mkdocs-material
+ dev-python/mkdocs-minify-plugin
+ dev-python/mkdocs-git-committers-plugin
+ dev-python/mkdocs-git-revision-date-localized-plugin
+"
+DOCS_INITIALIZE_GIT=1
+
+inherit distutils-r1 docs
+
+DESCRIPTION="MkDocs plugin to generate a RSS feeds."
+HOMEPAGE="https://github.com/Guts/mkdocs-rss-plugin https://pypi.org/project/mkdocs-rss-plugin"
+SRC_URI="https://github.com/Guts/mkdocs-rss-plugin/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+RESTRICT="doc? ( network-sandbox )"
+
+BDEPEND="
+ >=dev-python/GitPython-3.1[${PYTHON_USEDEP}]
+ <dev-python/GitPython-3.2[${PYTHON_USEDEP}]
+ >=dev-python/mkdocs-1.4[${PYTHON_USEDEP}]
+ <dev-python/mkdocs-2[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP},truetype]
+ test? (
+ dev-python/feedparser[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/mkdocs-material[${PYTHON_USEDEP}]
+ dev-python/validator-collection[${PYTHON_USEDEP}]
+ dev-python/pytest-cov[${PYTHON_USEDEP}]
+ dev-python/validator-collection[${PYTHON_USEDEP}]
+ dev-python/jsonfeed[${PYTHON_USEDEP}]
+ )
+ doc? (
+ dev-python/mkdocs-material[${PYTHON_USEDEP},social]
+ )
+"
+DEPEND="${BDEPEND}"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -i \
+ -e 's/--cov-config=setup.cfg//' \
+ -e 's/--cov=mkdocs_rss_plugin//' \
+ -e 's/--cov-report=html//' \
+ -e 's/--cov-report=term//' \
+ -e 's/--cov-report=xml//' \
+ "${S}/setup.cfg" || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ mkdir "${S}/.git"
+ local EPYTEST_IGNORE="${S}/tests/_wip"
+ local EPYTEST_DESELECT=(
+ # Most tests need internet access
+ tests/test_build.py::TestBuildRss
+ tests/test_rss_util.py::TestRssUtil::test_remote_image_ok
+ tests/test_integrations_material_social_cards.py::TestRssPluginIntegrationsMaterialSocialCards::test_simple_build
+ )
+ epytest "${S}"/tests || die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/mnemonic/Manifest b/dev-python/mnemonic/Manifest
deleted file mode 100644
index 1d1bbd095..000000000
--- a/dev-python/mnemonic/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST mnemonic-0.19.tar.gz 70481 BLAKE2B dc7d42915da65ede66ea7a3b9b467ebbe1a3e5e3cf6e7c44a273fecc3cc49e3461c6456cb03b6036ac34076c3583158f0c3707cf6f77d68e267388d322b2379e SHA512 4388587d4607d0c110851c1f2f53383f2fa282bd01d93b9770c9c15292a01aea5429c410874855c16e12abe9bcd38a82bbe10d0371fb35f472ad2fe81ff19cb0
diff --git a/dev-python/mnemonic/metadata.xml b/dev-python/mnemonic/metadata.xml
deleted file mode 100644
index b75d39459..000000000
--- a/dev-python/mnemonic/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>a.zuber@gmx.ch</email>
- <name>Andreas Zuber</name>
- </maintainer>
- <upstream>
- <remote-id type="github">trezor/python-mnemonic</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/mnemonic/mnemonic-0.19.ebuild b/dev-python/mnemonic/mnemonic-0.19.ebuild
deleted file mode 100644
index 5e99002c5..000000000
--- a/dev-python/mnemonic/mnemonic-0.19.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-inherit distutils-r1
-
-DESCRIPTION="Reference implementation of BIP-0039 for generating deterministic keys"
-HOMEPAGE="https://github.com/trezor/python-mnemonic"
-
-MY_PN="python-mnemonic"
-MY_P="${MY_PN}-${PV}"
-SRC_URI="https://github.com/trezor/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND=""
-BDEPEND=""
-
-distutils_enable_tests unittest
-
-S="${WORKDIR}/${MY_P}"
diff --git a/dev-python/mobi/Manifest b/dev-python/mobi/Manifest
new file mode 100644
index 000000000..1ceb4b32e
--- /dev/null
+++ b/dev-python/mobi/Manifest
@@ -0,0 +1 @@
+DIST mobi-0.3.3-r1.gh.tar.gz 647726 BLAKE2B 3ae6e1347fa4feece8a35a579ac6006da33a8ef74e3db292babc857f8f8d51f974ec507b4f534fe4985048fd1c62376679309d776fcbfb4a6d65d325e1b590d1 SHA512 1e207ac17b9ef3584eab5843ae9b231c0a6a4946ec20dcdfed504d53b11ea724b3dfe9b509c68d94270ec32c57a979f85c00f4b583bcc2b888f4f33ab3c4e202
diff --git a/dev-python/mobi/metadata.xml b/dev-python/mobi/metadata.xml
new file mode 100644
index 000000000..8f3a59f18
--- /dev/null
+++ b/dev-python/mobi/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">mobi</remote-id>
+ <remote-id type="github">iscc/mobi</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/mobi/mobi-0.3.3.ebuild b/dev-python/mobi/mobi-0.3.3.ebuild
new file mode 100644
index 000000000..a7db4c99e
--- /dev/null
+++ b/dev-python/mobi/mobi-0.3.3.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=poetry
+inherit distutils-r1
+
+DESCRIPTION="Unpack unencrypted mobi files"
+HOMEPAGE="
+ https://github.com/iscc/mobi
+ https://pypi.org/project/mobi/
+"
+SRC_URI="https://github.com/iscc/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}-r1.gh.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-python/loguru[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
diff --git a/dev-python/moderngl-window/Manifest b/dev-python/moderngl-window/Manifest
new file mode 100644
index 000000000..877f85bd1
--- /dev/null
+++ b/dev-python/moderngl-window/Manifest
@@ -0,0 +1 @@
+DIST moderngl-window-2.4.6.gh.tar.gz 30982845 BLAKE2B bd831667b865bd97a82e070b9113d40d6e4fa7cd079684d3dfd171f4ad885e0af6ca77478dbc03b9208f937df3db529c7aa39ef97af3185ca2ff6cc40ea91c41 SHA512 bef9eaece117d2205609a62658c6195c65df2bb65f1f64825ada101d335dd4d71623fa3d155ff891d9d3f03e741d5132f0f53041fefeb329cd742135ca5dd9a2
diff --git a/dev-python/moderngl-window/metadata.xml b/dev-python/moderngl-window/metadata.xml
new file mode 100644
index 000000000..a64c8e661
--- /dev/null
+++ b/dev-python/moderngl-window/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">moderngl-window</remote-id>
+ <remote-id type="github">moderngl/moderngl-window</remote-id>
+ <doc>https://moderngl-window.readthedocs.io</doc>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/moderngl-window/moderngl-window-2.4.6.ebuild b/dev-python/moderngl-window/moderngl-window-2.4.6.ebuild
new file mode 100644
index 000000000..d487f7d25
--- /dev/null
+++ b/dev-python/moderngl-window/moderngl-window-2.4.6.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DOCS_BUILDER="sphinx"
+DOCS_DIR="docs"
+DOCS_DEPEND="
+ dev-python/moderngl
+ dev-python/sphinx-rtd-theme
+"
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 virtualx docs
+
+DESCRIPTION="A cross platform utility library for ModernGL"
+HOMEPAGE="https://github.com/moderngl/moderngl-window https://pypi.org/project/moderngl-window"
+SRC_URI="https://github.com/moderngl/moderngl-window/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="examples"
+
+RDEPEND="
+ <dev-python/moderngl-6[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/pyglet[${PYTHON_USEDEP}]
+ >=dev-python/pyrr-0.10[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/glcontext[${PYTHON_USEDEP}]
+ >=dev-python/PyWavefront-1.2.0[${PYTHON_USEDEP}]
+ <dev-python/PyWavefront-2[${PYTHON_USEDEP}]
+ >=dev-python/trimesh-3.2.6[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}"
+
+python_install_all() {
+ default
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
+
+distutils_enable_tests pytest
+src_test() {
+ virtx distutils-r1_src_test
+}
diff --git a/dev-python/moderngl/Manifest b/dev-python/moderngl/Manifest
new file mode 100644
index 000000000..c1b87a6bc
--- /dev/null
+++ b/dev-python/moderngl/Manifest
@@ -0,0 +1 @@
+DIST moderngl-5.10.0.gh.tar.gz 2310879 BLAKE2B 4077ad238012a0f9b43bf7b3b691d9ee4019d6b97fd38e64ef87e1c5ce04e71b4cf64cf3f55faeb3275b2c7052e1c6d95839ba5bfd602fa2daffc3a0f31077ed SHA512 1fa59410462bcdea881e295874ea1c5dc6b1ccc6c0914e1955c7465a363e597c487de17ade649f5f25372275d05e0e2314d81020441c4890c51912742b61ae37
diff --git a/dev-python/moderngl/metadata.xml b/dev-python/moderngl/metadata.xml
new file mode 100644
index 000000000..03c7c6ce1
--- /dev/null
+++ b/dev-python/moderngl/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">moderngl</remote-id>
+ <remote-id type="github">moderngl/moderngl</remote-id>
+ <doc>https://moderngl.readthedocs.io/</doc>
+ <bugs-to>https://github.com/moderngl/moderngl/issues/</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/moderngl/moderngl-5.10.0.ebuild b/dev-python/moderngl/moderngl-5.10.0.ebuild
new file mode 100644
index 000000000..520b562e1
--- /dev/null
+++ b/dev-python/moderngl/moderngl-5.10.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DOCS_BUILDER="sphinx"
+DOCS_DIR="docs"
+DOCS_DEPEND="
+ dev-python/furo
+ dev-python/sphinx-copybutton
+"
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 virtualx docs
+
+DESCRIPTION="Modern OpenGL binding for python"
+HOMEPAGE="https://github.com/moderngl/moderngl https://pypi.org/project/moderngl"
+SRC_URI="https://github.com/moderngl/moderngl/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug"
+RESTRICT="test"
+# The tests need moderngl compiled AND installed, otherwise they fail
+
+BDEPEND="
+ x11-libs/libX11
+ virtual/opengl
+ >=dev-python/glcontext-2.5.0[${PYTHON_USEDEP}]
+ <dev-python/glcontext-3[${PYTHON_USEDEP}]
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/scipy[${PYTHON_USEDEP}]
+ dev-python/pycodestyle[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${BDEPEND}"
+
+# distutils_enable_tests pytest
+
+src_test() {
+ virtx distutils-r1_src_test
+}
diff --git a/dev-python/moreorless/Manifest b/dev-python/moreorless/Manifest
new file mode 100644
index 000000000..f4398dddd
--- /dev/null
+++ b/dev-python/moreorless/Manifest
@@ -0,0 +1 @@
+DIST moreorless-0.4.0.tar.gz 10127 BLAKE2B 60e810352e13d4723b138b6bad78536994c9430b51feb5114d44738515e890143b2d69678bb0d2fa87c51e0918b4ef15a084bd466898f41a0055ca3f1372b619 SHA512 da463645ec7374cf6636c257e42050a0b79d5784a7c98ec1818db8e07fd7bf3aaf37f67e2e44d2befe51e01118ad93a744e39fbbcb24ca0f26d961adfa6ead1d
diff --git a/dev-python/moreorless/metadata.xml b/dev-python/moreorless/metadata.xml
new file mode 100644
index 000000000..452b3d29d
--- /dev/null
+++ b/dev-python/moreorless/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">thatch/moreorless</remote-id>
+ <remote-id type="pypi">moreorless</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/moreorless/moreorless-0.4.0.ebuild b/dev-python/moreorless/moreorless-0.4.0.ebuild
new file mode 100644
index 000000000..6f300f057
--- /dev/null
+++ b/dev-python/moreorless/moreorless-0.4.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Wrapper to make difflib.unified_diff more fun to use"
+HOMEPAGE="https://github.com/thatch/moreorless"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/click[${PYTHON_USEDEP}]"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-python/parameterized[${PYTHON_USEDEP}] )
+"
+
+distutils_enable_tests unittest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+python_test() {
+ ${EPYTHON} -m moreorless.tests -v || die
+}
diff --git a/dev-python/msrest/Manifest b/dev-python/msrest/Manifest
new file mode 100644
index 000000000..93ad05fc3
--- /dev/null
+++ b/dev-python/msrest/Manifest
@@ -0,0 +1 @@
+DIST msrest-0.7.1.zip 175332 BLAKE2B 723202c11cff69dead95303567d4a582d87b85cd38742827ea4a7010b1621930bffdc4f4e6404717e8120bc8ff1a62803d349f1e01344812bde7644a5eec34d9 SHA512 430e982adf89c79356e59182587c62ecb935e983f2e339738b54c48d0cd3cfa66ab48aad52d342b3efe5938d5e02693f24d603a4d637e3e5818bac6d03cc19db
diff --git a/dev-python/msrest/metadata.xml b/dev-python/msrest/metadata.xml
new file mode 100644
index 000000000..f3cd1a37e
--- /dev/null
+++ b/dev-python/msrest/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <changelog>https://github.com/Azure/msrest-for-python/releases</changelog>
+ <bugs-to>https://github.com/Azure/msrest-for-python/issues</bugs-to>
+ <remote-id type="github">Azure/msrest-for-python</remote-id>
+ <remote-id type="pypi">msrest</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/msrest/msrest-0.7.1.ebuild b/dev-python/msrest/msrest-0.7.1.ebuild
new file mode 100644
index 000000000..6d2be864a
--- /dev/null
+++ b/dev-python/msrest/msrest-0.7.1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_REQ_USE="xml(+)"
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="AutoRest swagger generator Python client runtime"
+HOMEPAGE="https://github.com/Azure/msrest-for-python"
+SRC_URI="$(pypi_sdist_url ${PN} ${PV} .zip)"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+RESTRICT="test"
+PROPERTIES="test_network"
+
+RDEPEND="
+ dev-python/azure-core[${PYTHON_USEDEP}]
+ dev-python/certifi[${PYTHON_USEDEP}]
+ dev-python/isodate[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/requests-oauthlib[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ app-arch/unzip
+ test? (
+ dev-python/aiodns[${PYTHON_USEDEP}]
+ dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/httpretty[${PYTHON_USEDEP}]
+ dev-python/oauthlib[${PYTHON_USEDEP}]
+ dev-python/trio[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+pkg_postinst() {
+ optfeature "async support" "dev-python/aiodns dev-python/aiohttp"
+}
diff --git a/dev-python/multipart/Manifest b/dev-python/multipart/Manifest
new file mode 100644
index 000000000..5ed6fcea6
--- /dev/null
+++ b/dev-python/multipart/Manifest
@@ -0,0 +1 @@
+DIST multipart-0.2.4.tar.gz 22300 BLAKE2B 02e14136559b4af50938b4ab025f84055e8aa51d97e0f3415a6b6b9986ba72dd7226080592a8d603a94e2f4598ef7d0a4772e9bbef01121e10fce5cf483cd5e7 SHA512 8df8bad1f68d41e841e407f276745e7cb7352e9fb8c5d43569a7e5c4d8c0ae429e440933017244d01182271a12a6f43a4d15e353b1082df9563cbf9d6eb2c7f6
diff --git a/dev-python/multipart/files/multipart-urlencoded-test.patch b/dev-python/multipart/files/multipart-urlencoded-test.patch
new file mode 100644
index 000000000..e47f692c7
--- /dev/null
+++ b/dev-python/multipart/files/multipart-urlencoded-test.patch
@@ -0,0 +1,35 @@
+From 4d4ac6b79c453918ebf40c690e8d57d982ee840b Mon Sep 17 00:00:00 2001
+From: Colin Watson <cjwatson@debian.org>
+Date: Fri, 9 Apr 2021 16:54:49 +0100
+Subject: [PATCH] Don't test semicolon separators in urlencoded data
+
+Python no longer accepts ";" as a separator for `urllib.parse.parse_qs`
+by default (https://bugs.python.org/issue42967), causing the multipart
+test suite to fail with recent Python versions (3.6.13, 3.7.10, 3.8.8,
+3.9.2, 3.10.0a6).
+
+While we could detect the availability of the `separator` argument and
+pass it, since `application/x-www-form-urlencoded` data in `POST` and
+`PUT` requests is probably not an issue for web cache poisoning, the
+current HTML spec seems clear that only "&" should be considered, so
+follow along with Python's API change.
+---
+ test/test_multipart.py | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/test/test_multipart.py b/test/test_multipart.py
+index 38c69d1..6fe864f 100644
+--- a/test/test_multipart.py
++++ b/test/test_multipart.py
+@@ -233,10 +233,9 @@ def test_empty(self):
+ def test_urlencoded(self):
+ for ctype in ('application/x-www-form-urlencoded', 'application/x-url-encoded'):
+ self.env['CONTENT_TYPE'] = ctype
+- forms, files = self.parse('a=b&c=d;e=f')
++ forms, files = self.parse('a=b&c=d')
+ self.assertEqual(forms['a'], 'b')
+ self.assertEqual(forms['c'], 'd')
+- self.assertEqual(forms['e'], 'f')
+
+ def test_urlencoded_latin1(self):
+ for ctype in ('application/x-www-form-urlencoded', 'application/x-url-encoded'):
diff --git a/dev-python/multipart/metadata.xml b/dev-python/multipart/metadata.xml
new file mode 100644
index 000000000..f59dd1ead
--- /dev/null
+++ b/dev-python/multipart/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Julien Roy</name>
+ <email>julien@jroy.ca</email>
+ </maintainer>
+ <longdescription>
+ This module provides a parser for the multipart/form-data format. It can read from a file, a socket or a WSGI environment. The parser can be used to replace cgi.FieldStorage to work around its limitations.
+ </longdescription>
+ <upstream>
+ <maintainer>
+ <name>Marcel Hellkamp</name>
+ <email>marc@gsites.de</email>
+ </maintainer>
+ <bugs-to>https://github.com/defnull/multipart/issues</bugs-to>
+ <remote-id type="github">defnull/multipart</remote-id>
+ <remote-id type="pypi">multipart</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/multipart/multipart-0.2.4.ebuild b/dev-python/multipart/multipart-0.2.4.ebuild
new file mode 100644
index 000000000..0d128827f
--- /dev/null
+++ b/dev-python/multipart/multipart-0.2.4.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..11} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Multipart parser for Python 3"
+HOMEPAGE="https://github.com/defnull/multipart"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests unittest
+
+PATCHES=(
+ # Merged in master but no release since, so backporting it
+ "${FILESDIR}/multipart-urlencoded-test.patch"
+)
+
+src_test() {
+ cd "${S}/test" || die
+ distutils-r1_src_test
+}
diff --git a/dev-python/neutron-lib/Manifest b/dev-python/neutron-lib/Manifest
deleted file mode 100644
index d2c1146f9..000000000
--- a/dev-python/neutron-lib/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST neutron-lib-2.6.1.tar.gz 453572 BLAKE2B 6b79394a91cb7e6efcf66c0c8bab3b722de9a5408182472fa9dfe26b4a6c630889fc9aae0f7f0bab4917eaa830cdb230788d9a3520b4b8a526dbdbb361e0379b SHA512 d2da2b0d73cb5accda8219ced9fb68344a2c75d98a0d33cf5d52e703a8ea0afb3c6bb0a85445e453b512918f1c3fe7b97fa1a587a648e6731205b421c05319b0
diff --git a/dev-python/neutron-lib/metadata.xml b/dev-python/neutron-lib/metadata.xml
deleted file mode 100644
index eef0dab71..000000000
--- a/dev-python/neutron-lib/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="github">openstack/neutron-lib</remote-id>
- <remote-id type="pypi">neutron-lib</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/neutron-lib/neutron-lib-2.6.1.ebuild b/dev-python/neutron-lib/neutron-lib-2.6.1.ebuild
deleted file mode 100644
index a28fc12b2..000000000
--- a/dev-python/neutron-lib/neutron-lib-2.6.1.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-
-inherit distutils-r1
-
-DESCRIPTION="Neutron shared routines and utilities."
-HOMEPAGE="https://github.com/openstack/neutron-lib"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/sqlalchemy-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/pecan-1.0.0[${PYTHON_USEDEP}]
- !~dev-python/pecan-1.0.2[${PYTHON_USEDEP}]
- !~dev-python/pecan-1.0.3[${PYTHON_USEDEP}]
- !~dev-python/pecan-1.0.4[${PYTHON_USEDEP}]
- !~dev-python/pecan-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
- >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
- >=dev-python/os-ken-0.3.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-concurrency-3.26.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
- >=dev-python/oslo-db-4.44.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-messaging-7.0.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-policy-1.30.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-2.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-service-1.24.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-service-1.28.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-versionedobjects-1.31.2[${PYTHON_USEDEP}]
- >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
- >=dev-python/setproctitle-1.1.10[${PYTHON_USEDEP}]
- >=dev-python/os-traits-0.9.0[${PYTHON_USEDEP}]
- >=dev-python/webob-1.7.1[${PYTHON_USEDEP}]"
diff --git a/dev-python/nkdfu/Manifest b/dev-python/nkdfu/Manifest
new file mode 100644
index 000000000..116b7ad8b
--- /dev/null
+++ b/dev-python/nkdfu/Manifest
@@ -0,0 +1 @@
+DIST nkdfu-0.2.gh.tar.gz 16046 BLAKE2B dbd01a333391ae94fccae6cf7cecccce2b742fcb91fab421208236cfa7576b1a31ebf21dd168813534c8ca401d964c12b73d340ddd8e6e6ca009257a1a306f5e SHA512 3b94b65115e84ca0a065746f92415d7be436484fd9a949ac841955ffd98a061ec7c9016f1d9bc05af1006fcfc2ca21a94f51a0d3a036c27945cf568b75cc7d58
diff --git a/dev-python/nkdfu/metadata.xml b/dev-python/nkdfu/metadata.xml
new file mode 100644
index 000000000..77d008d46
--- /dev/null
+++ b/dev-python/nkdfu/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">Nitrokey/nkdfu</remote-id>
+ <remote-id type="pypi">nkdfu</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/nkdfu/nkdfu-0.2.ebuild b/dev-python/nkdfu/nkdfu-0.2.ebuild
new file mode 100644
index 000000000..a9bc98710
--- /dev/null
+++ b/dev-python/nkdfu/nkdfu-0.2.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{10..11} )
+inherit distutils-r1
+
+DESCRIPTION="Python DFU tool for updating Nitrokeys' firmware"
+HOMEPAGE="https://pypi.org/project/nkdfu/"
+SRC_URI="https://github.com/Nitrokey/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/intelhex-2.3.0[${PYTHON_USEDEP}]
+ >=dev-python/libusb1-1.9.3[${PYTHON_USEDEP}]
+ dev-python/python-fire[${PYTHON_USEDEP}]
+ dev-python/tqdm[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/noiseprotocol/Manifest b/dev-python/noiseprotocol/Manifest
deleted file mode 100644
index 0c5d463e9..000000000
--- a/dev-python/noiseprotocol/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST noiseprotocol-0.3.1.tar.gz 308729 BLAKE2B ac8e885da15cab760bc41a6953e70af6496df5865a441df1816aca02d06820aa0ceec10d27cd9bf089d0dff83f7e8e10eee6165d3f66705792bbc071a6a4b823 SHA512 2b25b80c4d187e5529b9de0bb50698646d74aa40e9c09e6b3acf5463603eb3415027c92cfe1f25bc3a6143958aa60cb014561ab390bb63db373ec04067146216
diff --git a/dev-python/noiseprotocol/metadata.xml b/dev-python/noiseprotocol/metadata.xml
deleted file mode 100644
index 7bca1e32d..000000000
--- a/dev-python/noiseprotocol/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>a.zuber@gmx.ch</email>
- <name>Andreas Zuber</name>
- </maintainer>
- <upstream>
- <remote-id type="github">plizonczyk/noiseprotocol</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/noiseprotocol/noiseprotocol-0.3.1.ebuild b/dev-python/noiseprotocol/noiseprotocol-0.3.1.ebuild
deleted file mode 100644
index 78dca965d..000000000
--- a/dev-python/noiseprotocol/noiseprotocol-0.3.1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-inherit distutils-r1
-
-DESCRIPTION="Python implementation of Noise Protocol Framework"
-HOMEPAGE="https://github.com/plizonczyk/noiseprotocol"
-NOISEPROTOCOL_GIT_REVISION="73375448c55af85df0230841af868b7f31942f0a"
-SRC_URI="https://github.com/plizonczyk/${PN}/archive/${NOISEPROTOCOL_GIT_REVISION}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND=">=dev-python/cryptography-2.8[${PYTHON_USEDEP}]"
-BDEPEND=""
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
- sed -e "/find_packages/s:'examples':'examples', 'examples.\*':" -i setup.py || die
-
- distutils-r1_python_prepare_all
-}
-
-S="${WORKDIR}/${PN}-${NOISEPROTOCOL_GIT_REVISION}"
diff --git a/dev-python/notion-client/Manifest b/dev-python/notion-client/Manifest
new file mode 100644
index 000000000..b9c37157c
--- /dev/null
+++ b/dev-python/notion-client/Manifest
@@ -0,0 +1 @@
+DIST notion-client-2.0.0.gh.tar.gz 29990 BLAKE2B e3a5304364e4f96d4bccd38c8579f47263a67f0daed59fabba835a8b7fd178b70f99df71369b67692f3bdbe6d1a7c4a387ba6cb75c9abee4b100e599b1bddaba SHA512 480c6c61fed474505ffa46f363bb3b244d611b9af42f1bb7ed1d66c6aee006aa1c5fa0adc48397f65b71608402d06b71b78c2a32e9dad13d7f36fe6a7223bb16
diff --git a/dev-python/notion-client/metadata.xml b/dev-python/notion-client/metadata.xml
new file mode 100644
index 000000000..74a49822b
--- /dev/null
+++ b/dev-python/notion-client/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">notion-client</remote-id>
+ <remote-id type="github">ramnes/notion-sdk-py</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/notion-client/notion-client-2.0.0.ebuild b/dev-python/notion-client/notion-client-2.0.0.ebuild
new file mode 100644
index 000000000..4b6a62167
--- /dev/null
+++ b/dev-python/notion-client/notion-client-2.0.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+MY_PN="notion-sdk-py"
+DESCRIPTION="Python client for the official Notion API"
+HOMEPAGE="
+ https://pypi.org/project/notion-client/
+ https://github.com/ramnes/notion-sdk-py
+"
+SRC_URI="https://github.com/ramnes/${MY_PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/httpx[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-vcr[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ distutils-r1_python_prepare_all
+ rm setup.cfg || die
+}
+
+python_test() {
+ epytest -o "asyncio_mode=auto"
+}
diff --git a/dev-python/notofonttools/Manifest b/dev-python/notofonttools/Manifest
new file mode 100644
index 000000000..8a2f1f219
--- /dev/null
+++ b/dev-python/notofonttools/Manifest
@@ -0,0 +1 @@
+DIST notofonttools-0.2.17.tar.gz 9743805 BLAKE2B ba601b4c9c4df7fc264dd88c60e50c1db08c21bc07f3ab408f91f445a801bd96ed193e5f9cb320378f6411027b1be004d718233d531bb2ec600badfaffd2d876 SHA512 a5b733c47ce61f6cb18f9772e8fee04f8ee2a3d834afa3f71a5f1c8110124224b9d325db75976104dd880b7c0538568574b2e497faa8f4d5541451e9c3e40cd3
diff --git a/dev-python/notofonttools/metadata.xml b/dev-python/notofonttools/metadata.xml
new file mode 100644
index 000000000..096c4c88c
--- /dev/null
+++ b/dev-python/notofonttools/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">notofonttools</remote-id>
+ <remote-id type="github">notofonts/nototools</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/notofonttools/notofonttools-0.2.17-r1.ebuild b/dev-python/notofonttools/notofonttools-0.2.17-r1.ebuild
new file mode 100644
index 000000000..3c1fb5400
--- /dev/null
+++ b/dev-python/notofonttools/notofonttools-0.2.17-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="Noto fonts support tools and scripts plus web site generation"
+HOMEPAGE="
+ https://pypi.org/project/notofonttools/
+ https://github.com/googlefonts/nototools
+"
+
+LICENSE="Apache-2.0 OFL-1.1"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/fonttools-4.11.0[${PYTHON_USEDEP}]"
+
+# TODO: Some dependencies are unpackaged
+RESTRICT="test"
+
+distutils_enable_tests pytest
+
+pkg_postinst() {
+ optfeature "nototools.shape_diff module" "dev-python/booleanOperations dev-python/defcon dev-python/pillow"
+}
diff --git a/dev-python/oauth2/Manifest b/dev-python/oauth2/Manifest
new file mode 100644
index 000000000..e36d62201
--- /dev/null
+++ b/dev-python/oauth2/Manifest
@@ -0,0 +1 @@
+DIST oauth2-1.9.gh.tar.gz 27353 BLAKE2B 07fd62f16e4053d2bac7c1ab672fd178967ff20c9e3ecd6a1c31d5898fa0aeb6170944b07b2345f73aa9b2928622e7e0e88f2a96cf0d0bb4ea89417de80917cd SHA512 ba3183aa4e5512920fa540955321646c167d23dfd4bc2fad4d5426e1b71e35e91fe11f6cd919a7913015f9bf33c43849659cb97c862a57b5c2e288ace29ad452
diff --git a/dev-python/oauth2/metadata.xml b/dev-python/oauth2/metadata.xml
new file mode 100644
index 000000000..1a6a39cdc
--- /dev/null
+++ b/dev-python/oauth2/metadata.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <longdescription lang="en">
+ This library implements OAuth 1.0 and not OAuth 2.0.
+
+ This code was originally forked from Leah Culver and Andy Smith's oauth.py code. Some of the tests come from a fork by Vic Fryzel, while a revamped Request class and more tests were merged in from Mark Paschal's fork. A number of notable differences exist between this code and its forefathers:
+
+ 100% unit test coverage.
+ The DataStore object has been completely ripped out. While creating unit tests for the library I found several substantial bugs with the implementation and confirmed with Andy Smith that it was never fully baked.
+ Classes are no longer prefixed with OAuth.
+ The Request class now extends from dict.
+ The library is likely no longer compatible with Python 2.3.
+ The Client class works and extends from httplib2. It's a thin wrapper that handles automatically signing any normal HTTP request you might wish to make.
+ </longdescription>
+ <maintainer type="person">
+ <name>Vitaly Zdanevich</name>
+ <email>zdanevich.vitaly@ya.ru</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">joestump/python-oauth2</remote-id>
+ <remote-id type="pypi">oauth2</remote-id>
+ <bugs-to>https://github.com/joestump/python-oauth2/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/oauth2/oauth2-1.9.ebuild b/dev-python/oauth2/oauth2-1.9.ebuild
new file mode 100644
index 000000000..602912ffe
--- /dev/null
+++ b/dev-python/oauth2/oauth2-1.9.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYPI_NO_NORMALIZE=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{3..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="A fully tested, abstract interface to creating OAuth clients and servers."
+HOMEPAGE="https://github.com/joestump/python-oauth2"
+SRC_URI="https://github.com/joestump/python-${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}"/python-${P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="dev-python/httplib2[${PYTHON_USEDEP}]
+dev-python/mock[${PYTHON_USEDEP}]
+dev-python/pycodestyle[${PYTHON_USEDEP}]
+dev-python/pytest[${PYTHON_USEDEP}]"
+
+src_prepare() {
+ rm -rf "${S}/tests"
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/opentype-sanitizer/Manifest b/dev-python/opentype-sanitizer/Manifest
new file mode 100644
index 000000000..cbf8aea96
--- /dev/null
+++ b/dev-python/opentype-sanitizer/Manifest
@@ -0,0 +1 @@
+DIST opentype-sanitizer-9.1.0.tar.gz 159945 BLAKE2B ae223dbca34bcad0ec656691be85b01b2d3beda5965b06e7c617742aa6a93f7d9adf4e6f3df9d454c29afbd24e4493580bb19dab1e76b7a218d942287d1b8408 SHA512 d995a1d30591726065d18b5c2eda817b01effe637ab2013c927238e75810ff215088801c4bcdd7dec43cfcf5043f3669ae2ed6502ded834c8f3c8cfe712354e9
diff --git a/dev-python/opentype-sanitizer/metadata.xml b/dev-python/opentype-sanitizer/metadata.xml
new file mode 100644
index 000000000..7e101cb70
--- /dev/null
+++ b/dev-python/opentype-sanitizer/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">opentype-sanitizer</remote-id>
+ <remote-id type="github">googlefonts/ots-python</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/opentype-sanitizer/opentype-sanitizer-9.1.0.ebuild b/dev-python/opentype-sanitizer/opentype-sanitizer-9.1.0.ebuild
new file mode 100644
index 000000000..3d3443dce
--- /dev/null
+++ b/dev-python/opentype-sanitizer/opentype-sanitizer-9.1.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_EXT=1
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python wrapper for the OpenType Sanitizer"
+HOMEPAGE="
+ https://pypi.org/project/opentype-sanitizer/
+ https://github.com/googlefonts/ots-python
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ app-arch/lz4:=
+ media-libs/woff2
+ sys-libs/zlib:=
+"
+DEPEND="${RDEPEND}
+ dev-cpp/gtest
+"
+BDEPEND="dev-build/meson"
+
+distutils_enable_tests pytest
diff --git a/dev-python/opentypespec/Manifest b/dev-python/opentypespec/Manifest
deleted file mode 100644
index 31d20321e..000000000
--- a/dev-python/opentypespec/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST opentypespec-1.8.4.tar.gz 15963 BLAKE2B 3d796ffa37f7a617a3be8d5a323fbe8f88e57e05aa031edfe1e48115a65526585d522a2426ed5d5ad970621d0cc301238bed8ac0c2beaab526f0b8679572e2ef SHA512 30c96322901ae99c3f8f71d7621660d7273b0ced60c86a253c573c32d491ce1ef6da750106f4aa8fdd005583be6fc31ef9513c301bfe0a6a39e1b6634ede1e9d
diff --git a/dev-python/opentypespec/metadata.xml b/dev-python/opentypespec/metadata.xml
deleted file mode 100644
index 96276ba8f..000000000
--- a/dev-python/opentypespec/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/simoncozens/opentypespec-py/issues</bugs-to>
- <remote-id type="github">simoncozens/opentypespec-py</remote-id>
- <remote-id type="pypi">opentypespec</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/opentypespec/opentypespec-1.8.4.ebuild b/dev-python/opentypespec/opentypespec-1.8.4.ebuild
deleted file mode 100644
index 78e4d6eee..000000000
--- a/dev-python/opentypespec/opentypespec-1.8.4.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="Python bezier manipulation library"
-HOMEPAGE="https://github.com/simoncozens/opentypespec-py"
-SRC_URI="https://github.com/simoncozens/opentypespec-py/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/${PN}-py-${PV}"
-
-LICENSE="Apache-2.0"
-KEYWORDS="~amd64"
-SLOT="0"
-
-RESTRICT="test" #https://github.com/simoncozens/opentypespec-py/issues/1
-
-distutils_enable_tests setup.py
diff --git a/dev-python/orderedmultidict/Manifest b/dev-python/orderedmultidict/Manifest
new file mode 100644
index 000000000..77ca56286
--- /dev/null
+++ b/dev-python/orderedmultidict/Manifest
@@ -0,0 +1 @@
+DIST orderedmultidict-1.0.1.gh.tar.gz 22880 BLAKE2B adbd17de2662a30116cadaed0af58df6ee4c5f0e51d9507309ba379e734e1d548dedfe355d9ac1fe41884aa3d5ef74555c313a0f631290037ee47c6ffc3dd3c3 SHA512 54747f0f09495254969f75c06e6bebf4b68a7f6b41b2b5b3b9d62845efcddc4a043102d88efbc16ea9db02fb04acd73cb3edbc07ef2dc7fe1a284462f7eeb5ca
diff --git a/dev-python/orderedmultidict/metadata.xml b/dev-python/orderedmultidict/metadata.xml
new file mode 100644
index 000000000..3d61c31a4
--- /dev/null
+++ b/dev-python/orderedmultidict/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>julien@jroy.ca</email>
+ <name>Julien Roy</name>
+ </maintainer>
+ <longdescription>A multivalue dictionary is a dictionary that can store multiple values for the same key. An ordered multivalue dictionary is a multivalue dictionary that retains the order of insertions and deletions.
+
+omdict retains method parity with dict.
+
+Information and documentation at https://github.com/gruns/orderedmultidict.</longdescription>
+ <upstream>
+ <maintainer>
+ <name>Ansgar Grunseid</name>
+ </maintainer>
+ <changelog>https://github.com/gruns/orderedmultidict/releases</changelog>
+ <doc>https://github.com/gruns/orderedmultidict/blob/master/API.md</doc>
+ <bugs-to>https://github.com/gruns/orderedmultidict/issues</bugs-to>
+ <remote-id type="github">gruns/orderedmultidict</remote-id>
+ <remote-id type="pypi">orderedmultidict</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/orderedmultidict/orderedmultidict-1.0.1.ebuild b/dev-python/orderedmultidict/orderedmultidict-1.0.1.ebuild
new file mode 100644
index 000000000..7692a0a89
--- /dev/null
+++ b/dev-python/orderedmultidict/orderedmultidict-1.0.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Ordered Multivalue Dictionary. Helps power furl. "
+HOMEPAGE="https://github.com/gruns/orderedmultidict"
+SRC_URI="https://github.com/gruns/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="Unlicense"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+RDEPEND="test? ( dev-python/flake8[${PYTHON_USEDEP}] )
+ dev-python/six[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests pytest
diff --git a/dev-python/orjson-bin/Manifest b/dev-python/orjson-bin/Manifest
deleted file mode 100644
index 2fce030d8..000000000
--- a/dev-python/orjson-bin/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST orjson-bin-3.6.0-amd64.zip 235974 BLAKE2B 8d80d7b40fa87be2b5a6b25840c02392e411dbce45247e46ebbfef94c15fd9e1596ba7ac6a40a53dde775f68d82b6c66c7350b392ce0f07ad92bb6ae65455767 SHA512 e80a7e0c785d6927a1d971553d04fca75e4b13fe5fb099ab362465cdfea69e911918ce94a480e9fead564a795f4a96a594918f4326e407f015b7d3c00ff08764
-DIST orjson-bin-3.6.0-arm64.zip 218609 BLAKE2B 880852a268f833b906bb6ef1cd7c9f2f40fe6ce043f52a8a7bdf965b4274a2ac0c215849b55da994f8bb328b903bc4a6a9414d0c3f16cb1a9be4f5c029e5b632 SHA512 70382465c3676fe3722688e0c223de3c86bb4555c1c996dd586aa782a3ecd3f6003a5c0f4154bfe90c18b2d4027b0a2c169b97315206e656a48557a5415eabd2
diff --git a/dev-python/orjson-bin/metadata.xml b/dev-python/orjson-bin/metadata.xml
deleted file mode 100644
index 5093c32b1..000000000
--- a/dev-python/orjson-bin/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
-<pkgmetadata>
- <maintainer type="person">
- <email>shaoyu0209@tuta.io</email>
- <name>Shaoyu Tseng</name>
- </maintainer>
- <upstream>
- <remote-id type="pypi">orjson</remote-id>
- <remote-id type="github">ijl/orjson</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/orjson-bin/orjson-bin-3.6.0.ebuild b/dev-python/orjson-bin/orjson-bin-3.6.0.ebuild
deleted file mode 100644
index e49cfe447..000000000
--- a/dev-python/orjson-bin/orjson-bin-3.6.0.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-inherit python-r1
-
-QA_PREBUILT="usr/lib/*"
-DESCRIPTION="Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy"
-HOMEPAGE="https://github.com/ijl/orjson"
-
-# As per PEP 600 manylinux platform tag specfication, a wheel tagged
-# manylinux_x_y should work with systems with >=glibc-x.y , and on Python
-# versions 3.8 to 3.10
-SRC_URI="
- amd64? (
- https://files.pythonhosted.org/packages/cp310/${P:0:1}/${PN%%-bin}/${P//-bin}-cp310-cp310-manylinux_2_24_x86_64.whl
- -> ${P}-amd64.zip
- )
- arm64? (
- https://files.pythonhosted.org/packages/cp310/${P:0:1}/${PN%%-bin}/${P//-bin}-cp310-cp310-manylinux_2_24_aarch64.whl
- -> ${P}-arm64.zip
- )
- "
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64"
-
-RESTRICT="!test? ( test )"
-IUSE="test"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-BDEPEND="app-arch/unzip"
-RDEPEND="${PYTHON_DEPS}"
-
-pkg_setup() {
- python_setup
-}
-
-S="${WORKDIR}"
-
-src_install() {
- if use amd64; then
- ARCH="x86_64"
- elif use arm64; then
- ARCH="aarch64"
- fi
- do_install() {
- insinto "$(python_get_sitedir)"
- # Even though the soname is compatible, the python version has to be
- # corrected in order for it to work
- newins ${PN//-bin}.cpython-310-${ARCH}-linux-gnu.so ${PN//-bin}.cpython-3${EPYTHON##python3.}-${ARCH}-linux-gnu.so
- python_domodule ${P//-bin}.dist-info
- }
- python_foreach_impl do_install
-}
diff --git a/dev-python/orjson/Manifest b/dev-python/orjson/Manifest
deleted file mode 100644
index b6b1cf94a..000000000
--- a/dev-python/orjson/Manifest
+++ /dev/null
@@ -1,33 +0,0 @@
-DIST ahash-0.7.4.crate 37072 BLAKE2B 3b82cc45993fd48d9eed018e14af005e2513938f34b195d4f33bc0d4031bc8027b082aa155b14e20e0e1e34b0f829849e8c614458805ce830652f34477b1d6a4 SHA512 f84e16f3b2764be95b4d82c9ef4bcd4c80983e977b33e1d4cc3c119398de6084428a0e7bccc1b182bccc21aa97855fa30b6a4041b961b58bff79b75dcc788005
-DIST arrayvec-0.5.2.crate 27838 BLAKE2B 51e2eacae0ef148f3f52d21ae00794e540e7ce4c013fb496dd1347ad91ffbbca199381fffbb064225f829216f6c5e915edfa64833f91fabdd13c3f011d86491f SHA512 1896b5f64b4dbdcff8ad234bda4ea8129bcacf87839347304717e94ee9f369cf5f4371755e453ff7d72817edb8f7fdbc726d77cc4f28ed05148dc89c7714b004
-DIST associative-cache-1.0.1.crate 14048 BLAKE2B 77f36f2d23b6d07e556f20e743c9a0e47c0b54899397c64dd6d4fc9b4c31469481d4a99ceb28b250924e0aa5f52de9fb65ce93ed96f23191f2984c32156bace0 SHA512 2ad673ab907c71cbd45abf3cf59630fd56aeb95888c94932b9fe5d83d71d0c14f908915670cbc0566b691035f82ac2069ed17589edbc97db1e4388225ac2a040
-DIST bitflags-1.2.1.crate 16745 BLAKE2B 0fa6d3ce44aad7616d5cd02aad8c1d0b0fed4022650eb43067c4a72e6fc88da05442674fa51826e4858a47c9de233e1ba2229820af094197cd11bb416ceffb2b SHA512 ad89b3798845e23737a620bba581c2ff1ff3e15bac12555c765e201d2c0b90ecea0cdbc5b5b1a3fa9858c385e8e041f8226f5acfae5bbbe9925643fff2bf3f0b
-DIST bytecount-0.6.2.crate 12347 BLAKE2B 1ed4fa4a515567d8eabc2af03f0e1a3c89a24aa6cd77696a57bb94c25650f02b2f0e1e476fe9cb024a17d910442b940ea21bac3a99588146b8d89ab4adab0eca SHA512 990460eedfd41b6b52278c9dfcac81872e755d40cb839d162bddf44a30eec3a9fd76369847f10edf6c2b2d95cbec562e9a2a6c6dce37f2ee59ca9edfe972a279
-DIST cfg-if-0.1.10.crate 7933 BLAKE2B 063a96ed176f34f788666b40adc483d147fc011dee941ab60569ddd0e57502b5dd06ed71090f4e14ce005d06e240500a286f74652615e9d068fba649610d8cf8 SHA512 9d22616bfb4a75770a828a0a3cddac6787297a5fdc53eb17e25811cc94de717f2de8bd66d53c5d65ba1c83d8892aefee5ae758cf56a1ef0a0c3120f70b244339
-DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
-DIST encoding_rs-0.8.28.crate 1368577 BLAKE2B bc10eff55063286b48590c3100841c7319268cf17e10176aec7adb39f3d2106e80e25d8ca68e5b4e568083be75d596eaff53807385c4e8d1b59d4aed7ed08ca0 SHA512 8b3f7450789e33f1ad9306d152f1bd230e66c7e799de52046acd5b11f903e8c86cbe2f0aa2cfb0f0e60bd64b194250defe05ef2a171b707e129a2324de47a9b0
-DIST getrandom-0.2.3.crate 26261 BLAKE2B 3e52a87b9355f850e07e5080c20e1ab3acfa927bae28c63bb8bfd6a773ad77be96d3ba770c344631cc0f2d9a95aac920790173168b102e25f50480ee96663569 SHA512 e6da64ed529cb0fc000b613f75187ed6b20f716e721d8a02ac2ae39c507fb9f6189ebb66b522d28584eff1e7e9efc274cad6bfe43f464f58053701e1d51c603d
-DIST inlinable_string-0.1.14.crate 19371 BLAKE2B e7c7c775518f4212a17a0b8fd478ccaae96e13950045d21e310996bd1db700d29f50cbd23b9b06e4ad898ddfd223b0dc1c3bdf7a8bde16b9692621e2fcbbf2bf SHA512 9caae4dafc4b26a0ef5cc2379b34953fd2b2d9cc02b98025e9ebf956091bc0525dee14368d45cdb47cf5a3dde9264d5fbbb8c3cc5f19e15799d7f239acd5da89
-DIST instant-0.1.9.crate 5213 BLAKE2B fe208faa09852079c603930e88b7d0392a89a55d3b934ad45ffb0c9e44df5ef7e8189ba2fa12452f1c8a6416d6f7c0655365ba959bedf2b78228613944be8278 SHA512 3915f67c3629ec93296d56c4cda0cf97b29b1a70930a9d546abb9518139d4c2f35062563a5094e84841ddb1f00b0f3df9dc00801d96c01994765221edf03ef7c
-DIST itoa-0.4.7.crate 12099 BLAKE2B 0e4ffbaad504565056f74c3ef560a87eff321a0da6d7a2c8fa35813c207713c22d77080c3b830fefbb21370dd29cfbc6a2807044485b38ac1e0c9c1de3ccebc5 SHA512 c61eb50aa00591af28698b45c528c36bd92088f7cd2f453cf686a1824f4656292638bebc468cf67f903473a5045f22777af623cc0515ef3bf25146b89a7c454f
-DIST lexical-core-0.7.6.crate 494385 BLAKE2B 417644e5e33a70aa4165cba77bad45c540aaf7bb2037a5461c691b646a5470c7ad68a60029ac50f1cf25de3b6928b3f491e9b7ef5cf5a7d3281d83fd33a173f2 SHA512 fcd7e4e073e6440183284f20a6305bbe4aafb5513a20b8ed793439e4b5a5519532a0605f31e42539f3e6236003254812b459a9b9c47b3c449f5c582dd62c3172
-DIST libc-0.2.95.crate 515341 BLAKE2B 5bbb10917433ac9b305e4eadd4626a31149ec46aaef91f7d360bea8b5956499c55066339ea63102e71976a3aa969744c871c0683eb137e3c8ad2f8d62570cea0 SHA512 40ba9908c202f3d40c1bd7d7bf516f3b236e7751020bad0007f185802fada64fc5e959b68a33aa1f59de76d5a649f62bcce7eea671fd420852e0bb902544ebbf
-DIST libm-0.1.4.crate 110593 BLAKE2B 5018f4efbc8fd45ff88a28e92c273bb3b48724009e17eadd0d4abb8e34b0fc8784607f71eebaa2f308dedb3185969f092d4305cd1d2cef7a53f7d8774390e38f SHA512 6bc647425ec8be5995ad4798427a86e28282b06532b8e6a53745e2a2ac16652d087b84c0946a4858a49d98995b9e543e1764765d270bf5569cd2ad92d52b81f2
-DIST lock_api-0.4.4.crate 20356 BLAKE2B 1b4a648467eba49232df5c595d7c5a0444018269a67db1768c7711d9d1a903a1dd00f99d8654c30186a470c035abdcec9994c8b1a347fc559c684b1792ec7f49 SHA512 655c8a1503b6e7f833b4c62109e1c5005727054847bff81e17d4159f91c02ac97512da0673ab227d17bc9ed0342fe3476247daf74cbc9a0b470e68c648ba706e
-DIST once_cell-1.7.2.crate 28250 BLAKE2B a30a55f6d6e820c691928173a9ce70a60486b28e3e79e8a01a08d87ca0bfb1725b967cc9e070cf53e71b924f73fc2eec2cf67190fc743361b60d82290762725d SHA512 30cf51249bb73e9881cfbc6a54ead7a3db709d560da8d420fd85cf248e66c727b92e8351b7c0c682913cff12b3f984684a272a69c965c56f8343948eb5a194d6
-DIST orjson-3.5.3.tar.gz 764381 BLAKE2B bd77955365c6b50e97dabb77f5e16cedc82cff4cb9544055da2567cfa278e8808c45b32c7bc99c5ad1b370805216b3e287c2e706fb3e29834ec58a44bf179ae5 SHA512 341b9359c131d839b618f4c8c25c451a5bd6f45f65ae30a483f3942b73366965f65924330de8cddf56052331e29e562f187535b26085ec38cf98bd69d5149292
-DIST packed_simd_2-0.3.5.crate 98197 BLAKE2B fcf5ae5d7a833b1b6869381efa601e7e624dce4b416762acac658162c639a093c130ec688e5fe934e3b91482a9d74c54a6cf023f0c009930197885eaa64409ff SHA512 64903209d359e9108190778ec11a2f96036fc79aa1fbb9e874b37fc359407693180d7c0bbfb8dd74022358a8a19389c764c72eb760ad0500e5621cb85f2ffc53
-DIST parking_lot-0.11.1.crate 39854 BLAKE2B 5a097d7016811de4ca7d21e8a811a96b2e857b5224b176cf7a3bc160c0a0678c9100423e3c096c5056e2df3a4dcba17a590cc64eb1d648355c153c5cdf9db228 SHA512 17e394ac8b62656177a12fcfd246d9bb59be468a5ac174e4d6d8b4ffd0411497d3ce943ca5deab184cebf5c1bbca97b4273f79bf210c78d7f4b6f5e9d68026a2
-DIST parking_lot_core-0.8.3.crate 32147 BLAKE2B 5218cfbff706c4388fef31c885c7a5d53566005775a3c440c6a2890efb189a4edfe8e99f6499cac36038846628a915ac988c15e1ebab1b3a3ffb53a64631dc19 SHA512 1dba5a7e68ee007918fb210ff308f7382ed1c54d2fe6db36a8246453434246b71e6795db107c83ca39c2bddf5e4a27da7978a464b53d41e150e744d81e75b341
-DIST pyo3-0.13.2.crate 281372 BLAKE2B 22ffcd9fa239efc205e5efcefb6ffbe99a979209aca357174e461826ae8edc1824da820df04bd8af4d07afd550b6a03fce75bc24e83970e7d2ec8cdc0aa17dca SHA512 3d4198a60e9c3abc619e5cac7198288bde294a789b6f84ec87a411d5eaad93d5d55043e8ec218cb0aa09a7289be7fd5bfa0b74be188e2b67c6c646cc2aec66d3
-DIST redox_syscall-0.2.8.crate 23697 BLAKE2B 5a084a48e06ab0dc69f64b05058b78d994040da6c42f04c8b615b1977fa3e813cd5a531ab33402402914362301670709679aaaa321e8904424c38d35c284b7ec SHA512 250556a7683254c9daf22887b39abb010eb9d4fe08b944e52bc6595ef6d8acfed76e5f43931fe20c84bdb3743772fb62a0be154ecfb6e66c2facb4c73546eacf
-DIST ryu-1.0.5.crate 49570 BLAKE2B 3bfba4a5f290a429de7ac3b86823b2a973f40eb6f48c15329173d95964d31ada36f2618be4b36774a03f97f2ce61364900c6a3ad5465a294e2df311a1f4104ed SHA512 d1708ffa3112a684edf2956b6730ead040401d38f1457cde074eaaa59c249007dc8b925629e7f6df89f7ea757e9d0826649d685cc8ede0a04d50296048bf476c
-DIST scopeguard-1.1.0.crate 11470 BLAKE2B f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe SHA512 368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
-DIST serde-1.0.126.crate 75138 BLAKE2B 51f37473483da8a05670a213f02e119173e4c97a49313cf855ff3e547bb0969fcd84ccb7d1554e7c1761b388ac5cd917cd7e680e3ac23d2504412f75401c0937 SHA512 f22ec92b2eaed0819610ae2c4471eb12aa3a4209f5fbfe829c2329010813837d11ffc02d7809335df6a978cf7944095fae79c7593324dfd49becc7633dd626ed
-DIST smallvec-1.6.1.crate 26444 BLAKE2B ca6c50a63acdd93a2131654d99e50545a6e2d08eb3e2bd57d4a8ee073d90c08195ee442745a8d62a68179ce7bb8e229b7ff8c6fcf46372a9844bc9280b7c85cb SHA512 9e6061c8211a4485ab54eb541adf40748e1fc3fdfab0849e38e5fd34fc6cc69ae78bd065b788692385a6b8157b031c2fe373900e13d3e56e94fc08d574edaaad
-DIST static_assertions-1.1.0.crate 18480 BLAKE2B 358dd5ac413d06f62da0388e2016c5fcb8ec68fd7dceb0dbbcb97665c032b7509b7e083c20701648b6a9174485f117c02682ae4bde7ef037e80a85cdf6a0c86e SHA512 46d0e35f77941dee6f60f574c130472248063dc38494c1c4f84f7c048244cc2a58a86fe17c0990e3f0f01406b75ed385a13d00058612b27cf0e867c8d31c92ee
-DIST version_check-0.9.3.crate 12547 BLAKE2B 85761c300a8d755e0b376191ef0604728ae641261fdb10682a3134a828eadc4a33216426d286bcdbd8d0c5fcfe6ca8ba20ed078c4f53066b959739a0e73daec0 SHA512 4b3b428214a0322af536a18e6f050438398766af6589389f20a804121a6721962ba411e2dcfded60aaa74313128fb0e831bea31378e2695c29b29bdc24d7cbfd
-DIST wasi-0.10.2+wasi-snapshot-preview1.crate 27505 BLAKE2B 4eb8644b945633d6e856ad80dd74990be19eb6af99823b147163384f61d471e2d9ec054d78a7064072344be53783e57073e8fffc6d5555c149b4834a9bf31dba SHA512 06977a294d76369a3867c45abdd8a87ea5c84e5a3681075ba0d14af1aee3114ff24495c7e7f7fe1e6e42230e65fba0e062898e69bc89e0209af62c2d14094ec7
-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-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
diff --git a/dev-python/orjson/metadata.xml b/dev-python/orjson/metadata.xml
deleted file mode 100644
index 87de6e030..000000000
--- a/dev-python/orjson/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/ijl/orjson/issues</bugs-to>
- <remote-id type="github">ijl/orjson</remote-id>
- <remote-id type="pypi">orjson</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/orjson/orjson-3.5.3.ebuild b/dev-python/orjson/orjson-3.5.3.ebuild
deleted file mode 100644
index 64d9ca1cc..000000000
--- a/dev-python/orjson/orjson-3.5.3.ebuild
+++ /dev/null
@@ -1,110 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CRATES="
- ahash-0.7.4
- arrayvec-0.5.2
- associative-cache-1.0.1
- bitflags-1.2.1
- bytecount-0.6.2
- cfg-if-0.1.10
- cfg-if-1.0.0
- encoding_rs-0.8.28
- getrandom-0.2.3
- inlinable_string-0.1.14
- instant-0.1.9
- itoa-0.4.7
- lexical-core-0.7.6
- libc-0.2.95
- libm-0.1.4
- lock_api-0.4.4
- once_cell-1.7.2
- packed_simd_2-0.3.5
- parking_lot-0.11.1
- parking_lot_core-0.8.3
- pyo3-0.13.2
- redox_syscall-0.2.8
- ryu-1.0.5
- scopeguard-1.1.0
- serde-1.0.126
- smallvec-1.6.1
- static_assertions-1.1.0
- version_check-0.9.3
- wasi-0.10.2+wasi-snapshot-preview1
- winapi-0.3.9
- winapi-i686-pc-windows-gnu-0.4.0
- winapi-x86_64-pc-windows-gnu-0.4.0
-"
-DISTUTILS_SINGLE_IMPL=1
-DISTUTILS_USE_SETUPTOOLS=no
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit cargo distutils-r1
-
-DESCRIPTION="Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy"
-HOMEPAGE="https://github.com/ijl/orjson"
-SRC_URI="
- https://github.com/ijl/orjson/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
- $(cargo_crate_uris ${CRATES})
-"
-
-LICENSE="
- Apache-2.0 MIT
- BSD
- || ( Apache-2.0 MIT )
- || ( Apache-2.0 Apache-2.0-with-LLVM-exceptions MIT )
- || ( Apache-2.0 Boost-1.0 )
-"
-KEYWORDS="~amd64"
-SLOT="0"
-IUSE="debug"
-
-DEPEND="
- test? (
- $(python_gen_cond_dep '
- dev-python/arrow[${PYTHON_USEDEP}]
- dev-python/orjson[${PYTHON_SINGLE_USEDEP}]
- dev-python/pendulum[${PYTHON_USEDEP}]
- dev-python/psutil[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- ')
-
- $(python_gen_cond_dep 'dev-python/numpy[${PYTHON_USEDEP}]' python3_{8,9})
- $(python_gen_cond_dep '>=dev-python/xxhash-1.4.3[${PYTHON_USEDEP}]' python3_8)
- )
-"
-BDEPEND="
- app-arch/unzip
- dev-lang/rust[nightly]
- dev-util/maturin
-"
-
-distutils_enable_tests pytest
-
-pkg_setup() {
- python_setup
- export QA_FLAGS_IGNORED="$(python_get_sitedir)/${PN}*.so"
-}
-
-src_compile() {
- maturin build --no-sdist --manylinux off --interpreter ${EPYTHON} $(usex debug "" --release) || die
- unzip "target/wheels/${P}-*.whl" || die
-}
-
-src_install() {
- python_domodule "${PN}"*.so
- dodoc README.md
-}
-
-python_test() {
- epytest -vv \
- --deselect test/test_datetime.py::DatetimeTests::test_datetime_pendulum_positive \
- --deselect test/test_datetime.py::DatetimeTests::test_datetime_partial_second_pendulum_supported \
- --deselect test/test_datetime.py::DatetimeTests::test_datetime_pendulum_negative_dst \
- --deselect test/test_datetime.py::DatetimeTests::test_datetime_pendulum_negative_non_dst \
- --deselect test/test_datetime.py::DatetimeTests::test_datetime_partial_hour \
- --deselect test/test_datetime.py::DatetimeTests::test_datetime_pendulum_partial_hour \
- || die
-}
diff --git a/dev-python/os-api-ref/Manifest b/dev-python/os-api-ref/Manifest
deleted file mode 100644
index 737e39255..000000000
--- a/dev-python/os-api-ref/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST os-api-ref-2.2.0.tar.gz 93273 BLAKE2B 9da508d51993f5b71474d39e818bfdc897023a6104e708c6c30b807bb20891f05685aa241605d1cf30540b75108e7914c932ba7aa6fa1619961c11ab2c7ee6d8 SHA512 3d25b3cd702c611577c86c206a60f92d929191f9e75c210e04c639c2a597ea58d31c81c17b79e41276c3e5b391e2c7bb95a9d7483b0f248e230d03550da3af96
diff --git a/dev-python/os-api-ref/metadata.xml b/dev-python/os-api-ref/metadata.xml
deleted file mode 100644
index 6c1e9a2f6..000000000
--- a/dev-python/os-api-ref/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-This project is a collection of sphinx stanzas that assist in building an API Reference site for an OpenStack project in RST. RST is great for unstructured English, but displaying semi structured (and repetitive) data in tables is not its strength. This provides tooling to insert semi-structured data describing request and response parameters and status or error messages, and turn those into nice tables.
-The project also includes a set of styling (and javascript) that is expected to layer on top of a Sphinx theme base. This addition provides a nice set of collapsing sections for REST methods and javascript controls to expand / collapse all sections.
-Features
-Sphinx stanza rest_method describing the method and resource for a REST API call. Lets authors write simply and also gives readers a clean way to scan all methods then click a button to get more information about a method.
-Sphinx stanza rest_parameters used to insert semi-structured data into the RST files describing the parameters users cansend with the request. The stanza points to a structured YAML file, parameters.yaml.
-Sphinx stanza rest_status_code used to insert pointers to error or status codes returned by the service. Points to a structured YAML file, http_codes.yaml.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-python/os-api-ref/os-api-ref-2.2.0.ebuild b/dev-python/os-api-ref/os-api-ref-2.2.0.ebuild
deleted file mode 100644
index 76e9c9352..000000000
--- a/dev-python/os-api-ref/os-api-ref-2.2.0.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="8"
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Sphinx Extensions to support API reference sites in OpenStack"
-HOMEPAGE="https://docs.openstack.org/os-api-ref/latest"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- >=dev-python/openstackdocstheme-2.2.1[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.1.2[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- dev-python/sphinx[${PYTHON_USEDEP}]
-"
-BDEPEND="
- ${RDEPEND}
- test? (
- >=dev-python/beautifulsoup4-4.6.0[${PYTHON_USEDEP}]
- >=dev-python/sphinx-testing-1.0.1[${PYTHON_USEDEP}]
- >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
- >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx doc/source ">=dev-python/openstackdocstheme-2.2.1"
-
-python_test() {
- pytest -vv --deselect os_api_ref/tests/test_microversions.py::TestMicroversions::test_parameters_table || die
-}
diff --git a/dev-python/os-brick/Manifest b/dev-python/os-brick/Manifest
deleted file mode 100644
index 3c84b83f8..000000000
--- a/dev-python/os-brick/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST os-brick-4.0.1.tar.gz 192821 BLAKE2B da1037e33288a3a20c6858b8620c5905c9a1d218ab858659bce844445d6b33a9b9c629df21eab68419e755bddebc43bf20afc197eaaf4a29dcd7365d19b27b0b SHA512 7847cae82e1ef726eb1189d93f13325d57abdb52286887d6b55e256d9a9f62b0afe71580c5ff30008f5827ba76cac8e423ee5da0d2d01f5794fa3556a6c2cc64
diff --git a/dev-python/os-brick/metadata.xml b/dev-python/os-brick/metadata.xml
deleted file mode 100644
index dbcab1e34..000000000
--- a/dev-python/os-brick/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="github">openstack/cinder</remote-id>
- <remote-id type="pypi">os-brick</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/os-brick/os-brick-4.0.1-r1.ebuild b/dev-python/os-brick/os-brick-4.0.1-r1.ebuild
deleted file mode 100644
index a9b3c5b32..000000000
--- a/dev-python/os-brick/os-brick-4.0.1-r1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-
-inherit distutils-r1
-
-DESCRIPTION="OpenStack Cinder brick library for managing local volume attaches"
-HOMEPAGE="https://github.com/openstack/cinder"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND=">=dev-python/pbr-5.4.1[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/pbr-5.4.1[${PYTHON_USEDEP}]
- >=dev-python/eventlet-0.15.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-concurrency-3.26.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-context-2.23.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.44.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.24.3.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-privsep-1.32.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-2.23.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-service-1.24.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-service-1.28.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.34.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/tenacity-6.0.0[${PYTHON_USEDEP}]
- >=dev-python/os-win-3.0.0[${PYTHON_USEDEP}]
-"
-
-python_prepare_all() {
- sed -i -e 's/\tetc/\t\/etc/g' setup.cfg || die
- distutils-r1_python_prepare_all
-}
diff --git a/dev-python/os-ken/Manifest b/dev-python/os-ken/Manifest
deleted file mode 100644
index fb5019261..000000000
--- a/dev-python/os-ken/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST os-ken-1.2.0.tar.gz 1442682 BLAKE2B 37582acac257cc840039ef4f75a938bce357d53f680b460e0f92a116b0c3eb0a3d38f631998760083f60a4ddf45741489f2b40d6f336ca60f257f8307d3c82f9 SHA512 a88c5165822b70ca4f9c172788acdd08ad8de4f0a07bbc53d3bc37c9c97481d55f1272c74a3438a86fa0d5ebce945f04a12d7a065c580319a0d94049476408ff
diff --git a/dev-python/os-ken/metadata.xml b/dev-python/os-ken/metadata.xml
deleted file mode 100644
index 8c1ea4b8b..000000000
--- a/dev-python/os-ken/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="github">openstack/os-ken</remote-id>
- <remote-id type="pypi">os-ken</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/os-ken/os-ken-1.2.0.ebuild b/dev-python/os-ken/os-ken-1.2.0.ebuild
deleted file mode 100644
index 3f3447988..000000000
--- a/dev-python/os-ken/os-ken-1.2.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="OpenStack Cinder brick library for managing local volume attaches"
-HOMEPAGE="https://github.com/openstack/os-ken"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/os-ken-${PV}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-DEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/eventlet-0.18.2[${PYTHON_USEDEP}]
- !~dev-python/eventlet-0.18.3[${PYTHON_USEDEP}]
- !~dev-python/eventlet-0.20.1[${PYTHON_USEDEP}]
- !~dev-python/eventlet-0.21.0[${PYTHON_USEDEP}]
- !~dev-python/eventlet-0.23.0[${PYTHON_USEDEP}]
- >=dev-python/msgpack-0.3.0[${PYTHON_USEDEP}]
- >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.1.0[${PYTHON_USEDEP}]
- >=dev-python/ovs-2.6.0[${PYTHON_USEDEP}]
- >=dev-python/routes-2.3.1[${PYTHON_USEDEP}]
- >=dev-python/six-1.4.0[${PYTHON_USEDEP}]
- >=dev-python/tinyrpc-0.6[${PYTHON_USEDEP}]
- >=dev-python/webob-1.2[${PYTHON_USEDEP}]"
diff --git a/dev-python/os-resource-classes/Manifest b/dev-python/os-resource-classes/Manifest
deleted file mode 100644
index a1ba05aa8..000000000
--- a/dev-python/os-resource-classes/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST os-resource-classes-1.0.0.tar.gz 15524 BLAKE2B 6388f192be5bdc75b64a19cf20ebaf3f3db3d448f90004e321e0cf53d53b37646625643aee519d443cc0043fda2e536b3f75d1c1a83dd31eff08c7a54a50f467 SHA512 a5daef5a53e7a164bbe863af9a27e2a5ce92b490099769e7e545a059e80bbd0c74f1ec28afe1622820686b0614e5bc6e748598454d6b380891eb8a0b20333e37
diff --git a/dev-python/os-resource-classes/metadata.xml b/dev-python/os-resource-classes/metadata.xml
deleted file mode 100644
index 4ed091d02..000000000
--- a/dev-python/os-resource-classes/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="github">openstack/os-resource-classes</remote-id>
- <remote-id type="pypi">os-resource-classes</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/os-resource-classes/os-resource-classes-1.0.0.ebuild b/dev-python/os-resource-classes/os-resource-classes-1.0.0.ebuild
deleted file mode 100644
index 7650ab5bf..000000000
--- a/dev-python/os-resource-classes/os-resource-classes-1.0.0.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="A list of standardized resource classes for OpenStack."
-HOMEPAGE="https://github.com/openstack/os-resource-classes"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND=">=dev-python/pbr-5.0.0[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/pbr-5.0.0[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/os-traits/Manifest b/dev-python/os-traits/Manifest
deleted file mode 100644
index 79f299572..000000000
--- a/dev-python/os-traits/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST os-traits-2.4.0.tar.gz 25523 BLAKE2B 4b80ea28b748d69f9ddc510a2c4766f06bfe85544c86c6771d323f8a58e3244033d4bf79c0b525be1a46b39402f19f6dd2e83bef5fcec06e52cd0a3c0708f69d SHA512 ac6cfc58f3f77d44fb252be0c00afbd147ec0da0cca395c76b5ba31d3626a7118273713935f793c9ed9a2230062c9a3e9384867795aa83318cfa2c91fb15fa55
diff --git a/dev-python/os-traits/metadata.xml b/dev-python/os-traits/metadata.xml
deleted file mode 100644
index bf4630816..000000000
--- a/dev-python/os-traits/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="github">openstack/os-traits</remote-id>
- <remote-id type="pypi">os-traits</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/os-traits/os-traits-2.4.0.ebuild b/dev-python/os-traits/os-traits-2.4.0.ebuild
deleted file mode 100644
index 16fa79532..000000000
--- a/dev-python/os-traits/os-traits-2.4.0.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-
-inherit distutils-r1
-
-DESCRIPTION="os-traits is a library containing standardized trait strings."
-HOMEPAGE="https://github.com/openstack/os-traits"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND=">=dev-python/pbr-5.4.0[${PYTHON_USEDEP}]"
-RDEPEND="${DEPEND}"
diff --git a/dev-python/os-vif/Manifest b/dev-python/os-vif/Manifest
deleted file mode 100644
index 4e52ac328..000000000
--- a/dev-python/os-vif/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST os_vif-2.2.0.tar.gz 88781 BLAKE2B 99cb3337cc8b67fc6977e284f2e3370b47ff9346752cbe99fff65fddec80f8dbd0ca4d67527a0afcfb0e35fa8e42084a8e45a0dcb7ba66a1046ff32c752e5702 SHA512 eb06e0fcee7f061670438f81098f69c6d480d5f901c7dc8f0e38f4ed1494701c7711444907abba989d577230fc05d863697b7b813099fe1fb1820b25de677901
diff --git a/dev-python/os-vif/metadata.xml b/dev-python/os-vif/metadata.xml
deleted file mode 100644
index 3d821f67c..000000000
--- a/dev-python/os-vif/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="github">openstack/os-vif</remote-id>
- <remote-id type="pypi">os-vif</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/os-vif/os-vif-2.2.0.ebuild b/dev-python/os-vif/os-vif-2.2.0.ebuild
deleted file mode 100644
index 66f17c9dc..000000000
--- a/dev-python/os-vif/os-vif-2.2.0.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="OpenStack Cinder brick library for managing local volume attaches"
-HOMEPAGE="https://github.com/openstack/os-vif"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/os_vif-${PV}.tar.gz"
-S="${WORKDIR}/os_vif-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
- >=dev-python/oslo-concurrency-3.20.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.1.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.30.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-privsep-1.23.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-versionedobjects-1.28.0[${PYTHON_USEDEP}]
- >=dev-python/ovsdbapp-0.12.1[${PYTHON_USEDEP}]
- >=dev-python/pyroute2-0.5.2[${PYTHON_USEDEP}]
- >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
- >=dev-python/debtcollector-1.19.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/os-win/Manifest b/dev-python/os-win/Manifest
deleted file mode 100644
index 2a0114cf5..000000000
--- a/dev-python/os-win/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST os-win-5.1.0.tar.gz 221803 BLAKE2B 37fa5271b86f62a43ea1f6da011601260a9cd32745a2369093dc5103e54945c17d16ecfaf8f5d88fd7ec3673ac41e25ff02d3c15ec5423fb9651101213801cab SHA512 bb93af1b412b8e0699f62a772bf9bacc73e2e73751cf0e9b9a37d59869a6c31e39ddbaafc4b97b494d9a38208d765362a6ce7fe071e1c089c127e1554ae73a02
diff --git a/dev-python/os-win/metadata.xml b/dev-python/os-win/metadata.xml
deleted file mode 100644
index 70003ca72..000000000
--- a/dev-python/os-win/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="github">openstack/os-win</remote-id>
- <remote-id type="pypi">os-win</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/os-win/os-win-5.1.0.ebuild b/dev-python/os-win/os-win-5.1.0.ebuild
deleted file mode 100644
index 994447a0d..000000000
--- a/dev-python/os-win/os-win-5.1.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Windows / Hyper-V library for OpenStack projects."
-HOMEPAGE="https://github.com/openstack/os-win"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
- !~dev-python/Babel-2.4.0[${PYTHON_USEDEP}]
- >=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
- !~dev-python/eventlet-0.20.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-concurrency-3.26.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/os-xenapi/Manifest b/dev-python/os-xenapi/Manifest
deleted file mode 100644
index 6e1654124..000000000
--- a/dev-python/os-xenapi/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST os-xenapi-0.3.4.tar.gz 139843 BLAKE2B 333b7af4bc5475584922264ea47a61e6c7a0fd813cd5ed99db1338c74fc86474d190df84ab8732d090668cfa5dc7ec43cfc75283f42a7298aad7d470deec5eb5 SHA512 4e5afbce07d38f93e93ac839eb26927a2436b33a39e14a57ed1e99cbd3501c7d2dec8db7f65617c8d6308e8227e60f5653102ac3a04d9322c0791040fa3f22a9
diff --git a/dev-python/os-xenapi/metadata.xml b/dev-python/os-xenapi/metadata.xml
deleted file mode 100644
index 7ff90896c..000000000
--- a/dev-python/os-xenapi/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="github">openstack/os-xenapi</remote-id>
- <remote-id type="pypi">os-xenapi</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/os-xenapi/os-xenapi-0.3.4-r1.ebuild b/dev-python/os-xenapi/os-xenapi-0.3.4-r1.ebuild
deleted file mode 100644
index 3ed886ad7..000000000
--- a/dev-python/os-xenapi/os-xenapi-0.3.4-r1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="XenAPI library for OpenStack projects"
-HOMEPAGE="https://github.com/openstack/os-xenapi"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-DEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
- >=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
- !~dev-python/eventlet-0.20.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-concurrency-3.26.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/oscrypto/Manifest b/dev-python/oscrypto/Manifest
index 91f0a66cd..3007bc1fc 100644
--- a/dev-python/oscrypto/Manifest
+++ b/dev-python/oscrypto/Manifest
@@ -1 +1 @@
-DIST oscrypto-1.2.1.tar.gz 305629 BLAKE2B 55f035ca021971c0fa541edcdf73367e2524793ad908cec3073867ea8a90d939649b9c7242f5030a2db7057b8142cb3ce450fbc98b5803a069a196a55f0fa1d1 SHA512 bf858f59bf6e54d1ac962df4b90eb674844e50f47b217d73d94b05e27280b78671dc04f4211276c04e71b48f92b446bc11f964b7223def24f5d0d878166547f3
+DIST oscrypto-1.3.0.gh.tar.gz 313874 BLAKE2B 6dd3331978d0ca8e63a136988d55bd6e1314078256f6c5141f26d49382e8908b58974c8f8d281a98a7e5efff2e477488baf7a37e3ea4a17bf887c92f9b1d9985 SHA512 b5baf72e1a09615b267be4d1c4baf2375bb939b5bd3d717ca9ca70776541f590a8608bef95991967e23f3794e6220709ed2fe5acdedfe9bfce1921c879a74bec
diff --git a/dev-python/oscrypto/files/openssl-3.0.10-fix.patch b/dev-python/oscrypto/files/openssl-3.0.10-fix.patch
new file mode 100644
index 000000000..a1c2e44c4
--- /dev/null
+++ b/dev-python/oscrypto/files/openssl-3.0.10-fix.patch
@@ -0,0 +1,38 @@
+From ebbc944485b278192b60080ea1f495e287efb4f8 Mon Sep 17 00:00:00 2001
+From: Martin Journois <BibMartin@users.noreply.github.com>
+Date: Thu, 17 Aug 2023 13:09:31 +0200
+Subject: [PATCH] MJ: Fix #75 bug with openssl 3.0.10 (#76)
+
+* MJ: Fix #75 bug with openssl 3.0.10
+* MJ: Add fix suggested by @vcunat on _libcrypto_ctypes regex
+---
+ oscrypto/_openssl/_libcrypto_cffi.py | 2 +-
+ oscrypto/_openssl/_libcrypto_ctypes.py | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/oscrypto/_openssl/_libcrypto_cffi.py b/oscrypto/_openssl/_libcrypto_cffi.py
+index 8aed03e..14eb576 100644
+--- a/oscrypto/_openssl/_libcrypto_cffi.py
++++ b/oscrypto/_openssl/_libcrypto_cffi.py
+@@ -37,7 +37,7 @@
+
+ is_libressl = 'LibreSSL' in version_string
+
+-version_match = re.search('\\b(\\d\\.\\d\\.\\d[a-z]*)\\b', version_string)
++version_match = re.search('\\b(\\d\\.\\d\\.\\d+[a-z]*)\\b', version_string)
+ if not version_match:
+ version_match = re.search('(?<=LibreSSL )(\\d\\.\\d(\\.\\d)?)\\b', version_string)
+ if not version_match:
+diff --git a/oscrypto/_openssl/_libcrypto_ctypes.py b/oscrypto/_openssl/_libcrypto_ctypes.py
+index e33ebbc..9cb294a 100644
+--- a/oscrypto/_openssl/_libcrypto_ctypes.py
++++ b/oscrypto/_openssl/_libcrypto_ctypes.py
+@@ -40,7 +40,7 @@
+
+ is_libressl = 'LibreSSL' in version_string
+
+-version_match = re.search('\\b(\\d\\.\\d\\.\\d[a-z]*)\\b', version_string)
++version_match = re.search('\\b(\\d\\.\\d\\.\\d+[a-z]*)\\b', version_string)
+ if not version_match:
+ version_match = re.search('(?<=LibreSSL )(\\d\\.\\d(\\.\\d)?)\\b', version_string)
+ if not version_match:
diff --git a/dev-python/oscrypto/files/py3.12.patch b/dev-python/oscrypto/files/py3.12.patch
new file mode 100644
index 000000000..0bb8cb0cd
--- /dev/null
+++ b/dev-python/oscrypto/files/py3.12.patch
@@ -0,0 +1,902 @@
+From 3be536e4a61ac5fbd403ee80cdb54cb666f34679 Mon Sep 17 00:00:00 2001
+From: Dominik 'Rathann' Mierzejewski <dominik@greysector.net>
+Date: Thu, 17 Aug 2023 09:05:29 +0200
+Subject: [PATCH 01/13] use `importlib` instead of deprecated `imp` module
+
+This fixes tests with python 3.12 where the `imp` module was
+[removed](https://docs.python.org/3.12/whatsnew/3.12.html#removed).
+
+This should fix issue #74.
+---
+ tests/__init__.py | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/tests/__init__.py b/tests/__init__.py
+index 4c65360..90bede4 100644
+--- a/tests/__init__.py
++++ b/tests/__init__.py
+@@ -1,7 +1,7 @@
+ # coding: utf-8
+ from __future__ import unicode_literals, division, absolute_import, print_function
+
+-import imp
++import importlib
+ import os
+ import unittest
+
+@@ -94,8 +94,7 @@ def _import_from(mod, path, mod_dir=None):
+ return None
+
+ try:
+- mod_info = imp.find_module(mod_dir, [path])
+- return imp.load_module(mod, *mod_info)
++ return importlib.import_module(mod)
+ except ImportError:
+ return None
+
+
+From 199f07eefb9c0d1d5ad8093c012fbdae1fefa633 Mon Sep 17 00:00:00 2001
+From: wbond <will@wbond.net>
+Date: Thu, 17 Aug 2023 07:14:40 -0400
+Subject: [PATCH 02/13] Fix compatibility with Python 2.6
+
+---
+ tests/__init__.py | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/tests/__init__.py b/tests/__init__.py
+index 90bede4..3ca9334 100644
+--- a/tests/__init__.py
++++ b/tests/__init__.py
+@@ -1,10 +1,15 @@
+ # coding: utf-8
+ from __future__ import unicode_literals, division, absolute_import, print_function
+
+-import importlib
+ import os
++import sys
+ import unittest
+
++if sys.version_info < (3,):
++ import imp as importlib
++else:
++ import importlib
++
+
+ __version__ = '1.3.0'
+ __version_info__ = (1, 3, 0)
+
+From 19de26bdad3154dc30c6661b652c459438fa9be2 Mon Sep 17 00:00:00 2001
+From: wbond <will@wbond.net>
+Date: Thu, 17 Aug 2023 07:25:49 -0400
+Subject: [PATCH 03/13] Fix both imp and importlib implementations
+
+---
+ tests/__init__.py | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/tests/__init__.py b/tests/__init__.py
+index 3ca9334..7aab84d 100644
+--- a/tests/__init__.py
++++ b/tests/__init__.py
+@@ -6,7 +6,7 @@
+ import unittest
+
+ if sys.version_info < (3,):
+- import imp as importlib
++ import imp
+ else:
+ import importlib
+
+@@ -99,7 +99,12 @@ def _import_from(mod, path, mod_dir=None):
+ return None
+
+ try:
+- return importlib.import_module(mod)
++ if sys.version_info < (3,):
++ mod_info = imp.find_module(mod_dir, [path])
++ return imp.load_module(mod, *mod_info)
++ else:
++ mod_info = importlib.machinery.PathFinder().find_spec(mod_dir, [path])
++ return importlib.import_module(mod, *mod_info)
+ except ImportError:
+ return None
+
+
+From 6973b915069babf665bc223979cd86b2dc262da4 Mon Sep 17 00:00:00 2001
+From: wbond <will@wbond.net>
+Date: Thu, 17 Aug 2023 07:34:37 -0400
+Subject: [PATCH 04/13] More importlib fixes
+
+---
+ tests/__init__.py | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/tests/__init__.py b/tests/__init__.py
+index 7aab84d..957c083 100644
+--- a/tests/__init__.py
++++ b/tests/__init__.py
+@@ -103,8 +103,10 @@ def _import_from(mod, path, mod_dir=None):
+ mod_info = imp.find_module(mod_dir, [path])
+ return imp.load_module(mod, *mod_info)
+ else:
+- mod_info = importlib.machinery.PathFinder().find_spec(mod_dir, [path])
+- return importlib.import_module(mod, *mod_info)
++ spec = importlib.machinery.PathFinder().find_spec(mod_dir, [path])
++ module = importlib.util.module_from_spec(spec)
++ sys.modules[mod] = module
++ spec.loader.exec_module(module)
+ except ImportError:
+ return None
+
+
+From 8843c89acae8435a7ba731b42750e42caef87a70 Mon Sep 17 00:00:00 2001
+From: wbond <will@wbond.net>
+Date: Thu, 17 Aug 2023 07:35:40 -0400
+Subject: [PATCH 05/13] Python 3.3 has a different importlib implementation
+
+---
+ tests/__init__.py | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tests/__init__.py b/tests/__init__.py
+index 957c083..8339b5d 100644
+--- a/tests/__init__.py
++++ b/tests/__init__.py
+@@ -5,7 +5,7 @@
+ import sys
+ import unittest
+
+-if sys.version_info < (3,):
++if sys.version_info < (3, 5):
+ import imp
+ else:
+ import importlib
+@@ -99,7 +99,7 @@ def _import_from(mod, path, mod_dir=None):
+ return None
+
+ try:
+- if sys.version_info < (3,):
++ if sys.version_info < (3, 5):
+ mod_info = imp.find_module(mod_dir, [path])
+ return imp.load_module(mod, *mod_info)
+ else:
+
+From 53fa3ca263ad6bc04e4a8a56f180b82bdc88aa03 Mon Sep 17 00:00:00 2001
+From: wbond <will@wbond.net>
+Date: Thu, 17 Aug 2023 08:22:21 -0400
+Subject: [PATCH 06/13] Attempt a different importlib implementation
+
+---
+ tests/__init__.py | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/tests/__init__.py b/tests/__init__.py
+index 8339b5d..0eecf2f 100644
+--- a/tests/__init__.py
++++ b/tests/__init__.py
+@@ -103,7 +103,12 @@ def _import_from(mod, path, mod_dir=None):
+ mod_info = imp.find_module(mod_dir, [path])
+ return imp.load_module(mod, *mod_info)
+ else:
+- spec = importlib.machinery.PathFinder().find_spec(mod_dir, [path])
++ loader_details = (
++ importlib.machinery.SourceFileLoader,
++ importlib.machinery.SOURCE_SUFFIXES
++ )
++ finder = importlib.machinery.FileFinder(path, loader_details)
++ spec = finder.find_spec(mod_dir)
+ module = importlib.util.module_from_spec(spec)
+ sys.modules[mod] = module
+ spec.loader.exec_module(module)
+
+From b013e440061c88dfe0301309b695c7b47bcc1e72 Mon Sep 17 00:00:00 2001
+From: wbond <will@wbond.net>
+Date: Thu, 17 Aug 2023 15:52:30 -0400
+Subject: [PATCH 07/13] Hopefully some fully working Python 3.12-compatible
+ import backflips
+
+---
+ dev/_import.py | 35 ++++++++++++++++++++++++++++++++---
+ tests/__init__.py | 4 ++++
+ 2 files changed, 36 insertions(+), 3 deletions(-)
+
+diff --git a/dev/_import.py b/dev/_import.py
+index d64c028..016c576 100644
+--- a/dev/_import.py
++++ b/dev/_import.py
+@@ -1,12 +1,19 @@
+ # coding: utf-8
+ from __future__ import unicode_literals, division, absolute_import, print_function
+
+-import imp
+ import sys
+ import os
+
+ from . import build_root, package_name, package_root
+
++if sys.version_info < (3, 5):
++ import imp
++else:
++ import importlib
++ import importlib.machinery
++ import importlib.util
++
++
+ if sys.version_info < (3,):
+ getcwd = os.getcwdu
+ else:
+@@ -34,6 +41,14 @@ def _import_from(mod, path, mod_dir=None, allow_error=False):
+ None if not loaded, otherwise the module
+ """
+
++ if mod in sys.modules:
++ return sys.modules[mod]
++
++ if mod_dir is None:
++ full_mod = mod
++ else:
++ full_mod = mod_dir
++
+ if mod_dir is None:
+ mod_dir = mod.replace('.', os.sep)
+
+@@ -49,8 +64,22 @@ def _import_from(mod, path, mod_dir=None, allow_error=False):
+ path = os.path.join(path, append)
+
+ try:
+- mod_info = imp.find_module(mod_dir, [path])
+- return imp.load_module(mod, *mod_info)
++ if sys.version_info < (3, 5):
++ mod_info = imp.find_module(mod_dir, [path])
++ return imp.load_module(mod, *mod_info)
++
++ else:
++ loader_details = (
++ importlib.machinery.SourceFileLoader,
++ importlib.machinery.SOURCE_SUFFIXES
++ )
++ finder = importlib.machinery.FileFinder(path, loader_details)
++ spec = finder.find_spec(full_mod)
++ module = importlib.util.module_from_spec(spec)
++ sys.modules[mod] = module
++ spec.loader.exec_module(module)
++ return module
++
+ except ImportError:
+ if allow_error:
+ raise
+diff --git a/tests/__init__.py b/tests/__init__.py
+index 0eecf2f..9759ae3 100644
+--- a/tests/__init__.py
++++ b/tests/__init__.py
+@@ -89,6 +89,9 @@ def _import_from(mod, path, mod_dir=None):
+ None if not loaded, otherwise the module
+ """
+
++ if mod in sys.modules:
++ return sys.modules[mod]
++
+ if mod_dir is None:
+ mod_dir = mod
+
+@@ -112,6 +115,7 @@ def _import_from(mod, path, mod_dir=None):
+ module = importlib.util.module_from_spec(spec)
+ sys.modules[mod] = module
+ spec.loader.exec_module(module)
++ return module
+ except ImportError:
+ return None
+
+
+From 8ec71631b5adf6f6ab34c7cc3fe8e229a2bdcbd7 Mon Sep 17 00:00:00 2001
+From: Dominik Mierzejewski <dominik@greysector.net>
+Date: Fri, 18 Aug 2023 11:18:06 +0200
+Subject: [PATCH 08/13] Use importlib with python 3.5+
+
+This fixes `python run.py ci` under python 3.12.
+---
+ dev/coverage.py | 21 ++++++++++++++++++---
+ 1 file changed, 18 insertions(+), 3 deletions(-)
+
+diff --git a/dev/coverage.py b/dev/coverage.py
+index bb99a4f..6e669fe 100644
+--- a/dev/coverage.py
++++ b/dev/coverage.py
+@@ -4,7 +4,6 @@
+ import cgi
+ import codecs
+ import coverage
+-import imp
+ import json
+ import os
+ import unittest
+@@ -33,6 +32,11 @@
+ else:
+ Pattern = re.Pattern
+
++if sys.version_info < (3, 5):
++ import imp
++else:
++ import importlib
++
+
+ def run(ci=False):
+ """
+@@ -103,8 +107,19 @@ def _load_package_tests(name):
+ if not os.path.exists(package_dir):
+ return []
+
+- tests_module_info = imp.find_module('tests', [package_dir])
+- tests_module = imp.load_module('%s.tests' % name, *tests_module_info)
++ if sys.version_info < (3, 5):
++ tests_module_info = imp.find_module('tests', [package_dir])
++ tests_module = imp.load_module('%s.tests' % name, *tests_module_info)
++ else:
++ loader_details = (
++ importlib.machinery.SourceFileLoader,
++ importlib.machinery.SOURCE_SUFFIXES
++ )
++ finder = importlib.machinery.FileFinder(package_dir, loader_details)
++ spec = finder.find_spec('tests')
++ test_module = importlib.util.module_from_spec(spec)
++ sys.modules['%s.tests' % name] = test_module
++ spec.loader.exec_module(test_module)
+ return tests_module.test_classes()
+
+
+
+From 23d848a500413847a63df740af543e0fdaba5558 Mon Sep 17 00:00:00 2001
+From: wbond <will@wbond.net>
+Date: Tue, 22 Aug 2023 06:56:36 -0400
+Subject: [PATCH 09/13] Reuse _import_from in coverage task, fixing module name
+
+---
+ dev/coverage.py | 21 ++-------------------
+ 1 file changed, 2 insertions(+), 19 deletions(-)
+
+diff --git a/dev/coverage.py b/dev/coverage.py
+index 6e669fe..00684d0 100644
+--- a/dev/coverage.py
++++ b/dev/coverage.py
+@@ -16,6 +16,7 @@
+ from fnmatch import fnmatch
+
+ from . import package_name, package_root, other_packages
++from ._import import _import_from
+
+ if sys.version_info < (3,):
+ str_cls = unicode # noqa
+@@ -32,11 +33,6 @@
+ else:
+ Pattern = re.Pattern
+
+-if sys.version_info < (3, 5):
+- import imp
+-else:
+- import importlib
+-
+
+ def run(ci=False):
+ """
+@@ -107,20 +103,7 @@ def _load_package_tests(name):
+ if not os.path.exists(package_dir):
+ return []
+
+- if sys.version_info < (3, 5):
+- tests_module_info = imp.find_module('tests', [package_dir])
+- tests_module = imp.load_module('%s.tests' % name, *tests_module_info)
+- else:
+- loader_details = (
+- importlib.machinery.SourceFileLoader,
+- importlib.machinery.SOURCE_SUFFIXES
+- )
+- finder = importlib.machinery.FileFinder(package_dir, loader_details)
+- spec = finder.find_spec('tests')
+- test_module = importlib.util.module_from_spec(spec)
+- sys.modules['%s.tests' % name] = test_module
+- spec.loader.exec_module(test_module)
+- return tests_module.test_classes()
++ return _import_from('%s.tests' % name, package_dir, 'tests').test_classes()
+
+
+ def _env_info():
+
+From 9941d3b96e8aa08622d00954d89005dcf6e94b94 Mon Sep 17 00:00:00 2001
+From: wbond <will@wbond.net>
+Date: Tue, 22 Aug 2023 07:03:26 -0400
+Subject: [PATCH 10/13] Factor out remaining usage of imp module
+
+---
+ dev/build.py | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/dev/build.py b/dev/build.py
+index 4899594..f429fee 100644
+--- a/dev/build.py
++++ b/dev/build.py
+@@ -1,7 +1,6 @@
+ # coding: utf-8
+ from __future__ import unicode_literals, division, absolute_import, print_function
+
+-import imp
+ import os
+ import tarfile
+ import zipfile
+@@ -9,6 +8,7 @@
+ import setuptools.sandbox
+
+ from . import package_root, package_name, has_tests_package
++from ._import import _import_from
+
+
+ def _list_zip(filename):
+@@ -45,8 +45,8 @@ def run():
+
+ # Trying to call setuptools.sandbox.run_setup(setup, ['--version'])
+ # resulted in a segfault, so we do this instead
+- module_info = imp.find_module('version', [os.path.join(package_root, package_name)])
+- version_mod = imp.load_module('%s.version' % package_name, *module_info)
++ package_dir = os.path.join(package_root, package_name)
++ version_mod = _import_from('%s.version' % package_name, package_dir, 'version')
+
+ pkg_name_info = (package_name, version_mod.__version__)
+ print('Building %s-%s' % pkg_name_info)
+
+From 799aa0d2f4a954d3fc120ab382c8dd4322758654 Mon Sep 17 00:00:00 2001
+From: wbond <will@wbond.net>
+Date: Tue, 22 Aug 2023 16:29:39 -0400
+Subject: [PATCH 11/13] Rewrite importlib import mechanism
+
+---
+ dev/_import.py | 69 ++++++++++++++++++++++++++++++++---------
+ tests/__init__.py | 79 ++++++++++++++++++++++++++++++++++++++++-------
+ 2 files changed, 122 insertions(+), 26 deletions(-)
+
+diff --git a/dev/_import.py b/dev/_import.py
+index 016c576..20720e7 100644
+--- a/dev/_import.py
++++ b/dev/_import.py
+@@ -10,7 +10,7 @@
+ import imp
+ else:
+ import importlib
+- import importlib.machinery
++ import importlib.abc
+ import importlib.util
+
+
+@@ -20,6 +20,48 @@
+ getcwd = os.getcwd
+
+
++class ModCryptoMetaFinder(importlib.abc.MetaPathFinder):
++ def setup(self):
++ self.modules = {}
++ sys.meta_path.insert(0, self)
++
++ def add_module(self, package_name, package_path):
++ if package_name not in self.modules:
++ self.modules[package_name] = package_path
++
++ def find_spec(self, fullname, path, target=None):
++ name_parts = fullname.split('.')
++ if name_parts[0] not in self.modules:
++ return None
++
++ package = name_parts[0]
++ package_path = self.modules[package]
++
++ fullpath = os.path.join(package_path, *name_parts[1:])
++
++ if os.path.isdir(fullpath):
++ filename = os.path.join(fullpath, "__init__.py")
++ submodule_locations = [fullpath]
++ else:
++ filename = fullpath + ".py"
++ submodule_locations = None
++
++ if not os.path.exists(filename):
++ return None
++
++ return importlib.util.spec_from_file_location(
++ fullname,
++ filename,
++ loader=None,
++ submodule_search_locations=submodule_locations
++ )
++
++
++if sys.version_info >= (3, 5):
++ CUSTOM_FINDER = ModCryptoMetaFinder()
++ CUSTOM_FINDER.setup()
++
++
+ def _import_from(mod, path, mod_dir=None, allow_error=False):
+ """
+ Imports a module from a specific path
+@@ -47,7 +89,7 @@ def _import_from(mod, path, mod_dir=None, allow_error=False):
+ if mod_dir is None:
+ full_mod = mod
+ else:
+- full_mod = mod_dir
++ full_mod = mod_dir.replace(os.sep, '.')
+
+ if mod_dir is None:
+ mod_dir = mod.replace('.', os.sep)
+@@ -55,8 +97,11 @@ def _import_from(mod, path, mod_dir=None, allow_error=False):
+ if not os.path.exists(path):
+ return None
+
+- if not os.path.exists(os.path.join(path, mod_dir)) \
+- and not os.path.exists(os.path.join(path, mod_dir + '.py')):
++ source_path = os.path.join(path, mod_dir, '__init__.py')
++ if not os.path.exists(source_path):
++ source_path = os.path.join(path, mod_dir + '.py')
++
++ if not os.path.exists(source_path):
+ return None
+
+ if os.sep in mod_dir:
+@@ -69,16 +114,12 @@ def _import_from(mod, path, mod_dir=None, allow_error=False):
+ return imp.load_module(mod, *mod_info)
+
+ else:
+- loader_details = (
+- importlib.machinery.SourceFileLoader,
+- importlib.machinery.SOURCE_SUFFIXES
+- )
+- finder = importlib.machinery.FileFinder(path, loader_details)
+- spec = finder.find_spec(full_mod)
+- module = importlib.util.module_from_spec(spec)
+- sys.modules[mod] = module
+- spec.loader.exec_module(module)
+- return module
++ package = mod.split('.', 1)[0]
++ package_dir = full_mod.split('.', 1)[0]
++ package_path = os.path.join(path, package_dir)
++ CUSTOM_FINDER.add_module(package, package_path)
++
++ return importlib.import_module(mod)
+
+ except ImportError:
+ if allow_error:
+diff --git a/tests/__init__.py b/tests/__init__.py
+index 9759ae3..2e24046 100644
+--- a/tests/__init__.py
++++ b/tests/__init__.py
+@@ -9,6 +9,8 @@
+ import imp
+ else:
+ import importlib
++ import importlib.abc
++ import importlib.util
+
+
+ __version__ = '1.3.0'
+@@ -71,6 +73,48 @@ def local_oscrypto():
+ return (_asn1crypto_module, _oscrypto_module)
+
+
++class ModCryptoMetaFinder(importlib.abc.MetaPathFinder):
++ def setup(self):
++ self.modules = {}
++ sys.meta_path.insert(0, self)
++
++ def add_module(self, package_name, package_path):
++ if package_name not in self.modules:
++ self.modules[package_name] = package_path
++
++ def find_spec(self, fullname, path, target=None):
++ name_parts = fullname.split('.')
++ if name_parts[0] not in self.modules:
++ return None
++
++ package = name_parts[0]
++ package_path = self.modules[package]
++
++ fullpath = os.path.join(package_path, *name_parts[1:])
++
++ if os.path.isdir(fullpath):
++ filename = os.path.join(fullpath, "__init__.py")
++ submodule_locations = [fullpath]
++ else:
++ filename = fullpath + ".py"
++ submodule_locations = None
++
++ if not os.path.exists(filename):
++ return None
++
++ return importlib.util.spec_from_file_location(
++ fullname,
++ filename,
++ loader=None,
++ submodule_search_locations=submodule_locations
++ )
++
++
++if sys.version_info >= (3, 5):
++ CUSTOM_FINDER = ModCryptoMetaFinder()
++ CUSTOM_FINDER.setup()
++
++
+ def _import_from(mod, path, mod_dir=None):
+ """
+ Imports a module from a specific path
+@@ -93,29 +137,40 @@ def _import_from(mod, path, mod_dir=None):
+ return sys.modules[mod]
+
+ if mod_dir is None:
+- mod_dir = mod
++ full_mod = mod
++ else:
++ full_mod = mod_dir.replace(os.sep, '.')
++
++ if mod_dir is None:
++ mod_dir = mod.replace('.', os.sep)
+
+ if not os.path.exists(path):
+ return None
+
+- if not os.path.exists(os.path.join(path, mod_dir)):
++ source_path = os.path.join(path, mod_dir, '__init__.py')
++ if not os.path.exists(source_path):
++ source_path = os.path.join(path, mod_dir + '.py')
++
++ if not os.path.exists(source_path):
+ return None
+
++ if os.sep in mod_dir:
++ append, mod_dir = mod_dir.rsplit(os.sep, 1)
++ path = os.path.join(path, append)
++
+ try:
+ if sys.version_info < (3, 5):
+ mod_info = imp.find_module(mod_dir, [path])
+ return imp.load_module(mod, *mod_info)
++
+ else:
+- loader_details = (
+- importlib.machinery.SourceFileLoader,
+- importlib.machinery.SOURCE_SUFFIXES
+- )
+- finder = importlib.machinery.FileFinder(path, loader_details)
+- spec = finder.find_spec(mod_dir)
+- module = importlib.util.module_from_spec(spec)
+- sys.modules[mod] = module
+- spec.loader.exec_module(module)
+- return module
++ package = mod.split('.', 1)[0]
++ package_dir = full_mod.split('.', 1)[0]
++ package_path = os.path.join(path, package_dir)
++ CUSTOM_FINDER.add_module(package, package_path)
++
++ return importlib.import_module(mod)
++
+ except ImportError:
+ return None
+
+
+From 8a588fa0223f08f817e702f7f2cc4ef81017af26 Mon Sep 17 00:00:00 2001
+From: wbond <will@wbond.net>
+Date: Tue, 22 Aug 2023 16:35:17 -0400
+Subject: [PATCH 12/13] Fix custom importlib code for Python < 3.5
+
+---
+ dev/_import.py | 73 +++++++++++++++++++++++------------------------
+ tests/__init__.py | 58 ++++++++++++++++++-------------------
+ 2 files changed, 65 insertions(+), 66 deletions(-)
+
+diff --git a/dev/_import.py b/dev/_import.py
+index 20720e7..2d016db 100644
+--- a/dev/_import.py
++++ b/dev/_import.py
+@@ -19,45 +19,44 @@
+ else:
+ getcwd = os.getcwd
+
+-
+-class ModCryptoMetaFinder(importlib.abc.MetaPathFinder):
+- def setup(self):
+- self.modules = {}
+- sys.meta_path.insert(0, self)
+-
+- def add_module(self, package_name, package_path):
+- if package_name not in self.modules:
+- self.modules[package_name] = package_path
+-
+- def find_spec(self, fullname, path, target=None):
+- name_parts = fullname.split('.')
+- if name_parts[0] not in self.modules:
+- return None
+-
+- package = name_parts[0]
+- package_path = self.modules[package]
+-
+- fullpath = os.path.join(package_path, *name_parts[1:])
+-
+- if os.path.isdir(fullpath):
+- filename = os.path.join(fullpath, "__init__.py")
+- submodule_locations = [fullpath]
+- else:
+- filename = fullpath + ".py"
+- submodule_locations = None
+-
+- if not os.path.exists(filename):
+- return None
+-
+- return importlib.util.spec_from_file_location(
+- fullname,
+- filename,
+- loader=None,
+- submodule_search_locations=submodule_locations
+- )
++if sys.version_info >= (3, 5):
++ class ModCryptoMetaFinder(importlib.abc.MetaPathFinder):
++ def setup(self):
++ self.modules = {}
++ sys.meta_path.insert(0, self)
++
++ def add_module(self, package_name, package_path):
++ if package_name not in self.modules:
++ self.modules[package_name] = package_path
++
++ def find_spec(self, fullname, path, target=None):
++ name_parts = fullname.split('.')
++ if name_parts[0] not in self.modules:
++ return None
++
++ package = name_parts[0]
++ package_path = self.modules[package]
++
++ fullpath = os.path.join(package_path, *name_parts[1:])
++
++ if os.path.isdir(fullpath):
++ filename = os.path.join(fullpath, "__init__.py")
++ submodule_locations = [fullpath]
++ else:
++ filename = fullpath + ".py"
++ submodule_locations = None
++
++ if not os.path.exists(filename):
++ return None
++
++ return importlib.util.spec_from_file_location(
++ fullname,
++ filename,
++ loader=None,
++ submodule_search_locations=submodule_locations
++ )
+
+
+-if sys.version_info >= (3, 5):
+ CUSTOM_FINDER = ModCryptoMetaFinder()
+ CUSTOM_FINDER.setup()
+
+diff --git a/tests/__init__.py b/tests/__init__.py
+index 2e24046..e1e92e6 100644
+--- a/tests/__init__.py
++++ b/tests/__init__.py
+@@ -73,44 +73,44 @@ def local_oscrypto():
+ return (_asn1crypto_module, _oscrypto_module)
+
+
+-class ModCryptoMetaFinder(importlib.abc.MetaPathFinder):
+- def setup(self):
+- self.modules = {}
+- sys.meta_path.insert(0, self)
++if sys.version_info >= (3, 5):
++ class ModCryptoMetaFinder(importlib.abc.MetaPathFinder):
++ def setup(self):
++ self.modules = {}
++ sys.meta_path.insert(0, self)
+
+- def add_module(self, package_name, package_path):
+- if package_name not in self.modules:
+- self.modules[package_name] = package_path
++ def add_module(self, package_name, package_path):
++ if package_name not in self.modules:
++ self.modules[package_name] = package_path
+
+- def find_spec(self, fullname, path, target=None):
+- name_parts = fullname.split('.')
+- if name_parts[0] not in self.modules:
+- return None
++ def find_spec(self, fullname, path, target=None):
++ name_parts = fullname.split('.')
++ if name_parts[0] not in self.modules:
++ return None
+
+- package = name_parts[0]
+- package_path = self.modules[package]
++ package = name_parts[0]
++ package_path = self.modules[package]
+
+- fullpath = os.path.join(package_path, *name_parts[1:])
++ fullpath = os.path.join(package_path, *name_parts[1:])
+
+- if os.path.isdir(fullpath):
+- filename = os.path.join(fullpath, "__init__.py")
+- submodule_locations = [fullpath]
+- else:
+- filename = fullpath + ".py"
+- submodule_locations = None
++ if os.path.isdir(fullpath):
++ filename = os.path.join(fullpath, "__init__.py")
++ submodule_locations = [fullpath]
++ else:
++ filename = fullpath + ".py"
++ submodule_locations = None
+
+- if not os.path.exists(filename):
+- return None
++ if not os.path.exists(filename):
++ return None
+
+- return importlib.util.spec_from_file_location(
+- fullname,
+- filename,
+- loader=None,
+- submodule_search_locations=submodule_locations
+- )
++ return importlib.util.spec_from_file_location(
++ fullname,
++ filename,
++ loader=None,
++ submodule_search_locations=submodule_locations
++ )
+
+
+-if sys.version_info >= (3, 5):
+ CUSTOM_FINDER = ModCryptoMetaFinder()
+ CUSTOM_FINDER.setup()
+
+
+From d9f8e2ff88e722e3af6bf592c097298505a40381 Mon Sep 17 00:00:00 2001
+From: wbond <will@wbond.net>
+Date: Tue, 22 Aug 2023 16:45:45 -0400
+Subject: [PATCH 13/13] Fix test loading
+
+---
+ dev/_import.py | 1 -
+ dev/coverage.py | 2 +-
+ tests/__init__.py | 1 -
+ 3 files changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/dev/_import.py b/dev/_import.py
+index 2d016db..c0a1983 100644
+--- a/dev/_import.py
++++ b/dev/_import.py
+@@ -56,7 +56,6 @@ def find_spec(self, fullname, path, target=None):
+ submodule_search_locations=submodule_locations
+ )
+
+-
+ CUSTOM_FINDER = ModCryptoMetaFinder()
+ CUSTOM_FINDER.setup()
+
+diff --git a/dev/coverage.py b/dev/coverage.py
+index 00684d0..98f140b 100644
+--- a/dev/coverage.py
++++ b/dev/coverage.py
+@@ -103,7 +103,7 @@ def _load_package_tests(name):
+ if not os.path.exists(package_dir):
+ return []
+
+- return _import_from('%s.tests' % name, package_dir, 'tests').test_classes()
++ return _import_from('%s_tests' % name, package_dir, 'tests').test_classes()
+
+
+ def _env_info():
+diff --git a/tests/__init__.py b/tests/__init__.py
+index e1e92e6..3ae721d 100644
+--- a/tests/__init__.py
++++ b/tests/__init__.py
+@@ -110,7 +110,6 @@ def find_spec(self, fullname, path, target=None):
+ submodule_search_locations=submodule_locations
+ )
+
+-
+ CUSTOM_FINDER = ModCryptoMetaFinder()
+ CUSTOM_FINDER.setup()
+
diff --git a/dev-python/oscrypto/metadata.xml b/dev-python/oscrypto/metadata.xml
index d2b2c8ce9..2fd4640f2 100644
--- a/dev-python/oscrypto/metadata.xml
+++ b/dev-python/oscrypto/metadata.xml
@@ -1,9 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
+ <maintainer type="person">
+ <description>co-maintainers welcome</description>
+ <email>agireud@protonmail.com</email>
+ <name>Alberto Gireud</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">wbond/oscrypto</remote-id>
+ <remote-id type="pypi">oscrypto</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/oscrypto/oscrypto-1.2.1.ebuild b/dev-python/oscrypto/oscrypto-1.2.1.ebuild
deleted file mode 100644
index 4ca0ab5cc..000000000
--- a/dev-python/oscrypto/oscrypto-1.2.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8,9} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="TLS sockets, key generation, encryption, decryption, signing, verification"
-HOMEPAGE="
- https://github.com/wbond/oscrypto
- https://pypi.org/project/oscrypto/
-"
-SRC_URI="https://github.com/wbond/oscrypto/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-#tests requires network
-RESTRICT="test"
-
-RDEPEND=">=dev-python/asn1crypto-1.0.0[${PYTHON_USEDEP}]"
-DEPEND="${RDEPEND}"
-
-python_test() {
- "${EPYTHON}" run.py tests || die
-}
-
-python_install_all() {
- distutils-r1_python_install_all
- dodoc -r docs/*
-}
diff --git a/dev-python/oscrypto/oscrypto-1.3.0-r2.ebuild b/dev-python/oscrypto/oscrypto-1.3.0-r2.ebuild
new file mode 100644
index 000000000..3bb5f584e
--- /dev/null
+++ b/dev-python/oscrypto/oscrypto-1.3.0-r2.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit edo distutils-r1 optfeature
+
+DESCRIPTION="TLS sockets, key generation, encryption, decryption, signing, verification"
+HOMEPAGE="
+ https://pypi.org/project/oscrypto/
+ https://github.com/wbond/oscrypto
+"
+SRC_URI="https://github.com/wbond/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-libs/openssl
+ >=dev-python/asn1crypto-1.5.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ $(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]' 'python*')
+ )
+"
+
+DOCS=( docs {changelog,readme}.md )
+
+PATCHES=(
+ "${FILESDIR}"/openssl-3.0.10-fix.patch
+ "${FILESDIR}"/py3.12.patch
+)
+
+distutils_enable_tests unittest
+
+python_test() {
+ local -x OSCRYPTO_SKIP_INTERNET_TESTS="true"
+ edo ${EPYTHON} -m tests
+}
+
+pkg_postinst() {
+ optfeature "faster FFI" virtual/python-cffi
+}
diff --git a/dev-python/oslo-cache/Manifest b/dev-python/oslo-cache/Manifest
deleted file mode 100644
index e7e68ab64..000000000
--- a/dev-python/oslo-cache/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST oslo-cache-2.6.1.tar.gz 60918 BLAKE2B 89def6f66ccb68e8725571b4f9fcc8a98c8b18dbb23186b1ed3cc09ae02eb786608c744f6ea7022fd3a832d206fe75916f74f2c000125c853993dc95f13da8f3 SHA512 20696d9a9feda9368fc261ccc124ab825b85373b2716110dcab7101346467dbf4d9e8a48b689a76ca837a8c4e97d03476b3573623ac57602f5d0e558110dd551
diff --git a/dev-python/oslo-cache/metadata.xml b/dev-python/oslo-cache/metadata.xml
deleted file mode 100644
index 50e6185c3..000000000
--- a/dev-python/oslo-cache/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="launchpad">oslo</remote-id>
- <remote-id type="pypi">oslo.cache</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/oslo-cache/oslo-cache-2.6.1.ebuild b/dev-python/oslo-cache/oslo-cache-2.6.1.ebuild
deleted file mode 100644
index 230966776..000000000
--- a/dev-python/oslo-cache/oslo-cache-2.6.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-MY_PN=${PN/-/.}
-
-DESCRIPTION="Oslo Caching around dogpile.cache"
-HOMEPAGE="https://launchpad.net/oslo"
-SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_PN}-${PV}.tar.gz -> ${P}.tar.gz"
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/dogpile-cache-1.0.2[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-8.1.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-5.0.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-4.2.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-4.2.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/oslo-concurrency/Manifest b/dev-python/oslo-concurrency/Manifest
deleted file mode 100644
index f0ddbb735..000000000
--- a/dev-python/oslo-concurrency/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST oslo.concurrency-4.4.0.tar.gz 58812 BLAKE2B 5e353ebfd3073e971e5ad37790560cf1014ebe7683870c49367a888becd665f41f0108cd99c338453cd5ef5c525345672a861f9075bcf6ec9b13ce7b51a138b2 SHA512 a1f2e25be7dd8136e20c8047e4b0e21c51b8be680fe986a6dfe4ff9f2343fbf9db0b533304b7e32dc7db93631f60139441699acfcbd5f7c01ccd63412b452c54
diff --git a/dev-python/oslo-concurrency/metadata.xml b/dev-python/oslo-concurrency/metadata.xml
deleted file mode 100644
index 5e0cd6d20..000000000
--- a/dev-python/oslo-concurrency/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
- Oslo concurrency library has utilities for safely running multi-thread, multi-process applications using locking mechanisms and for running external processes.
- </longdescription>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">oslo.concurrency</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/oslo-concurrency/oslo-concurrency-4.4.0.ebuild b/dev-python/oslo-concurrency/oslo-concurrency-4.4.0.ebuild
deleted file mode 100644
index acde72660..000000000
--- a/dev-python/oslo-concurrency/oslo-concurrency-4.4.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="library for running multi-thread, multi-process applications"
-HOMEPAGE="https://pypi.org/project/oslo.concurrency/"
-SRC_URI="mirror://pypi/${PN:0:1}/oslo.concurrency/oslo.concurrency-${PV}.tar.gz"
-S="${WORKDIR}/oslo.concurrency-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-IUSE=""
-RESTRICT=""
-
-CDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]"
-DEPEND="${CDEPEND}"
-RDEPEND="
- ${CDEPEND}
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/fasteners-0.7.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/oslo-db/Manifest b/dev-python/oslo-db/Manifest
deleted file mode 100644
index bf2d526aa..000000000
--- a/dev-python/oslo-db/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST oslo.db-8.4.0.tar.gz 172209 BLAKE2B f1f72347ec8c8b2ca452c54fdf9a843d0d31ebbb1356c39cd494dbacbab28e899d63568214fa73f14a8d838c4ce4137d19ee4fd6133344a17f584346775c3013 SHA512 7a64554de2b97ed3edbf4de81bd47a3bab0429c0b7f5708238c5b920010464236cca4a170a591890112706c2968b0cf1885563782c3a1925fb5767569ac1ccd6
diff --git a/dev-python/oslo-db/metadata.xml b/dev-python/oslo-db/metadata.xml
deleted file mode 100644
index 2bb83078b..000000000
--- a/dev-python/oslo-db/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">oslo.db</remote-id>
- <remote-id type="launchpad">oslo</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/oslo-db/oslo-db-8.4.0.ebuild b/dev-python/oslo-db/oslo-db-8.4.0.ebuild
deleted file mode 100644
index df699ef90..000000000
--- a/dev-python/oslo-db/oslo-db-8.4.0.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="OpenStack Common DB Code"
-HOMEPAGE="https://launchpad.net/oslo"
-SRC_URI="mirror://pypi/${PN:0:1}/oslo.db/oslo.db-${PV}.tar.gz"
-S="${WORKDIR}/oslo.db-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+sqlite mysql postgres"
-REQUIRED_USE="|| ( mysql postgres sqlite )"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/alembic-0.9.6[${PYTHON_USEDEP}]
- >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- sqlite? (
- >=dev-python/sqlalchemy-1.2.0[sqlite,${PYTHON_USEDEP}]
- )
- mysql? (
- >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
- >=dev-python/sqlalchemy-1.2.0[sqlite,${PYTHON_USEDEP}]
- )
- postgres? (
- >=dev-python/psycopg-2.8[${PYTHON_USEDEP}]
- >=dev-python/sqlalchemy-1.2.0[sqlite,${PYTHON_USEDEP}]
- )
- >=dev-python/sqlalchemy-migrate-0.11.0[${PYTHON_USEDEP}]
- >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
-"
-
-python_prepare_all() {
- sed -i '/^testresources/d' requirements.txt || die
- sed -i '/^testscenarios/d' requirements.txt || die
- distutils-r1_python_prepare_all
-}
diff --git a/dev-python/oslo-messaging/Manifest b/dev-python/oslo-messaging/Manifest
deleted file mode 100644
index 7db0d4125..000000000
--- a/dev-python/oslo-messaging/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST oslo.messaging-12.5.1.tar.gz 256120 BLAKE2B 73ed3c8fa356d63d3641626e823a87dbbfc238f9136371aa81c1b7e6be327c2f93d22bb0de4aa0906972bc2e8e0f09047cae06d2b96ef24a3c062d644ba34f68 SHA512 ad29c8a80c1f423b91d0725e8ce85015feaa8db33c911626a90c5efcb5d9c1bf55711b610e3bed4a63370627cce86f48b50658605344d1ade503673c8415de65
diff --git a/dev-python/oslo-messaging/metadata.xml b/dev-python/oslo-messaging/metadata.xml
deleted file mode 100644
index 1d49241ef..000000000
--- a/dev-python/oslo-messaging/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">oslo.messaging</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/oslo-messaging/oslo-messaging-12.5.1.ebuild b/dev-python/oslo-messaging/oslo-messaging-12.5.1.ebuild
deleted file mode 100644
index 47fd48e77..000000000
--- a/dev-python/oslo-messaging/oslo-messaging-12.5.1.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Messaging API for RPC and notifications over different messaging transports"
-HOMEPAGE="https://pypi.org/project/oslo.messaging/"
-SRC_URI="mirror://pypi/${PN:0:1}/oslo.messaging/oslo.messaging-${PV}.tar.gz"
-S="${WORKDIR}/oslo.messaging-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/futurist-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.37.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-service-1.24.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-service-1.28.1[${PYTHON_USEDEP}]
- >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
- >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/cachetools-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/webob-1.7.1[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.13.0[${PYTHON_USEDEP}]
- >=dev-python/py-amqp-2.5.2[${PYTHON_USEDEP}]
- >=dev-python/kombu-4.6.6[${PYTHON_USEDEP}]
- >=dev-python/oslo-middleware-3.31.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/oslo-middleware/Manifest b/dev-python/oslo-middleware/Manifest
deleted file mode 100644
index 1e31f3d0b..000000000
--- a/dev-python/oslo-middleware/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST oslo.middleware-4.1.1.tar.gz 55970 BLAKE2B 02b9fdeadfca183102601e8c765ec941c51ac15bb83af9b7d5682ba683a20cffbc478497c4b5391cf903923822cfd5c611ca0661d51c642e9089a71cc4c988d2 SHA512 53f0695da0c9bafa1d9cc18a723793a0e7a0ed09a1cd6d6a2aa0f158e6f2fb3a6b8c2ad2cc4fc248cc80ca4fc02997f586f82ca6f951c928f4efa9b2bc5d1a93
diff --git a/dev-python/oslo-middleware/metadata.xml b/dev-python/oslo-middleware/metadata.xml
deleted file mode 100644
index bfccce085..000000000
--- a/dev-python/oslo-middleware/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
- Oslo middleware library includes components that can be injected into wsgi pipelines to intercept request/response flows. The base class can be enhanced with functionality like add/delete/modification of http headers and support for limiting size/connection etc
- </longdescription>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">oslo.middleware</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/oslo-middleware/oslo-middleware-4.1.1.ebuild b/dev-python/oslo-middleware/oslo-middleware-4.1.1.ebuild
deleted file mode 100644
index 6e277771f..000000000
--- a/dev-python/oslo-middleware/oslo-middleware-4.1.1.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Components injected into wsgi pipelines to intercept request/response flows."
-HOMEPAGE="https://pypi.org/project/oslo.middleware/"
-SRC_URI="mirror://pypi/${PN:0:1}/oslo.middleware/oslo.middleware-${PV}.tar.gz"
-S="${WORKDIR}/oslo.middleware-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-RESTRICT=""
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/jinja-2.10[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
- >=dev-python/webob-1.8.0[${PYTHON_USEDEP}]
- >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/statsd-3.2.1[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/oslo-policy/Manifest b/dev-python/oslo-policy/Manifest
deleted file mode 100644
index 4ee71aa3e..000000000
--- a/dev-python/oslo-policy/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST oslo.policy-3.5.0.tar.gz 103988 BLAKE2B d78ce2cdc2b25c532c3207775430c32d1ae9e999df4cd918dfbce147a897fc9a4d46e7006bee0908b4d83cef2e2f71b2fb230aa56eeeae6302d61a435f5449ff SHA512 7d670aded9ac6ddc5360c60182f60cd75f3dec3d6d1bd9fc0d17794cd17349d8fff5e2bc8bc7df85d6bbbabad5373c824772e3d6006add69387d3663475fdb1a
diff --git a/dev-python/oslo-policy/metadata.xml b/dev-python/oslo-policy/metadata.xml
deleted file mode 100644
index a4d658a4e..000000000
--- a/dev-python/oslo-policy/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">oslo.policy</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/oslo-policy/oslo-policy-3.5.0.ebuild b/dev-python/oslo-policy/oslo-policy-3.5.0.ebuild
deleted file mode 100644
index 392acf9cd..000000000
--- a/dev-python/oslo-policy/oslo-policy-3.5.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Support for RBAC policy enforcement across all OpenStack services"
-HOMEPAGE="https://pypi.org/project/oslo.policy/"
-SRC_URI="mirror://pypi/${PN:0:1}/oslo.policy/oslo.policy-${PV}.tar.gz"
-S="${WORKDIR}/oslo.policy-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-context-2.22.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-1.19.1[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-5.1.0[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.40.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/oslo-privsep/Manifest b/dev-python/oslo-privsep/Manifest
deleted file mode 100644
index 47b409b9c..000000000
--- a/dev-python/oslo-privsep/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST oslo.privsep-2.4.0.tar.gz 40991 BLAKE2B e381d1f590e8de308e254db8171550f9a5658ca1c44997eb456eaa5d8cf768c24fdd5b2b629294d9c0e8ed619c97def567d34b2a35f7ef9b6a5f8f2b9f4b69c1 SHA512 5093292d9a655bc2d8cff47cac9f8d072d5d5297ab60c13e418edc109ec5734dbeb29455c0fc13cc33777d8d636f756b2f3aae9700b8c4f7daee0f9af5542fbb
diff --git a/dev-python/oslo-privsep/metadata.xml b/dev-python/oslo-privsep/metadata.xml
deleted file mode 100644
index bd4e6f15f..000000000
--- a/dev-python/oslo-privsep/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">oslo.privsep</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/oslo-privsep/oslo-privsep-2.4.0.ebuild b/dev-python/oslo-privsep/oslo-privsep-2.4.0.ebuild
deleted file mode 100644
index 6829edb60..000000000
--- a/dev-python/oslo-privsep/oslo-privsep-2.4.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="OpenStack library for privilege separation."
-HOMEPAGE="https://pypi.org/project/oslo.privsep/"
-SRC_URI="mirror://pypi/${PN:0:1}/oslo.privsep/oslo.privsep-${PV}.tar.gz"
-S="${WORKDIR}/oslo.privsep-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/cffi-1.14.0[${PYTHON_USEDEP}]
- >=dev-python/eventlet-0.21.0[${PYTHON_USEDEP}]
- >=dev-python/greenlet-0.4.14[${PYTHON_USEDEP}]
- >=dev-python/msgpack-0.6.0[${PYTHON_USEDEP}]"
-
-python_prepare_all() {
- # allow useage of renamed msgpack
- sed -i '/^msgpack/d' requirements.txt || die
- distutils-r1_python_prepare_all
-}
diff --git a/dev-python/oslo-reports/Manifest b/dev-python/oslo-reports/Manifest
deleted file mode 100644
index 0dd38c49c..000000000
--- a/dev-python/oslo-reports/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST oslo.reports-2.2.0.tar.gz 50532 BLAKE2B 0c04cc328b445a5b1d0e275d07a2ec11b635b1b91612dca7b9ce1adfc66ae10ae6c245eb5babdd1c3acbe4c3d9200120fe1e99d1dfbba84d55f2dd0cc4fdc0b1 SHA512 dd8224a1789318572bcd3e0394c01a0c65f8a1b48afcf6a5dbf6503f310bb3f48457b9c0e9315620d8935156bd29efa30d9c1e0368480484776178875f84840d
diff --git a/dev-python/oslo-reports/metadata.xml b/dev-python/oslo-reports/metadata.xml
deleted file mode 100644
index 70277ed9c..000000000
--- a/dev-python/oslo-reports/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">oslo.reports</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/oslo-reports/oslo-reports-2.2.0.ebuild b/dev-python/oslo-reports/oslo-reports-2.2.0.ebuild
deleted file mode 100644
index 8060342b1..000000000
--- a/dev-python/oslo-reports/oslo-reports-2.2.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="generified reports for openstack"
-HOMEPAGE="http://docs.openstack.org/developer/oslo.reports"
-SRC_URI="mirror://pypi/${PN:0:1}/oslo.reports/oslo.reports-${PV}.tar.gz"
-S="${WORKDIR}/oslo.reports-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/jinja-2.10[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
- >=dev-python/psutil-3.2.2[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/oslo-rootwrap/Manifest b/dev-python/oslo-rootwrap/Manifest
deleted file mode 100644
index a175dc28a..000000000
--- a/dev-python/oslo-rootwrap/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST oslo.rootwrap-6.2.0.tar.gz 46850 BLAKE2B 0ad998aecaf8dfe0616094ed08e64380d38fa663dc63f192b58b95a07deeb690f16f1b8de2d0666c80bc49c11c06dc7221e9b9fae7243c3569971745884b752f SHA512 bf3e91ec8a18f92f6f5974a6d8369ae73dba6e61fa3001996678b85d0bfb2426536d27097ad784169e6eca50ad23471505d5089e8d4a6a84c9e0e009a6a38f5a
diff --git a/dev-python/oslo-rootwrap/metadata.xml b/dev-python/oslo-rootwrap/metadata.xml
deleted file mode 100644
index 3f3722baf..000000000
--- a/dev-python/oslo-rootwrap/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">oslo.rootwrap</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/oslo-rootwrap/oslo-rootwrap-6.2.0.ebuild b/dev-python/oslo-rootwrap/oslo-rootwrap-6.2.0.ebuild
deleted file mode 100644
index 7af57ea20..000000000
--- a/dev-python/oslo-rootwrap/oslo-rootwrap-6.2.0.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Allows fine filtering of shell commands to run as root from OpenStack services"
-HOMEPAGE="https://pypi.org/project/oslo.rootwrap/"
-SRC_URI="mirror://pypi/${PN:0:1}/oslo.rootwrap/oslo.rootwrap-${PV}.tar.gz"
-S="${WORKDIR}/oslo.rootwrap-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND=">=dev-python/six-1.10.0[${PYTHON_USEDEP}]"
diff --git a/dev-python/oslo-service/Manifest b/dev-python/oslo-service/Manifest
deleted file mode 100644
index 41177b5d7..000000000
--- a/dev-python/oslo-service/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST oslo.service-2.4.0.tar.gz 80999 BLAKE2B 813c67eceb303d76ef39fecf057a2304966a367704a1a86a00bb2de515ded862a4eb3684f1e0f7dd4a17aca654fc6571243176d53397f8f93b5ee4cf34849d20 SHA512 7942a913c598471e9a828dba5e624ff6829d061692526021b9ae872ab558f119612e8b7b09c43efa7596e8102fbff323f106f755eef9a0ac68324606bb539703
diff --git a/dev-python/oslo-service/metadata.xml b/dev-python/oslo-service/metadata.xml
deleted file mode 100644
index 90133a03f..000000000
--- a/dev-python/oslo-service/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">oslo.service</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/oslo-service/oslo-service-2.4.0.ebuild b/dev-python/oslo-service/oslo-service-2.4.0.ebuild
deleted file mode 100644
index f4bd407dd..000000000
--- a/dev-python/oslo-service/oslo-service-2.4.0.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Library for running OpenStack services"
-HOMEPAGE="https://pypi.org/project/oslo.service/"
-SRC_URI="mirror://pypi/${PN:0:1}/oslo.service/oslo.service-${PV}.tar.gz"
-S="${WORKDIR}/oslo.service-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/webob-1.7.1[${PYTHON_USEDEP}]
- >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/eventlet-0.25.2[${PYTHON_USEDEP}]
- >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
- >=dev-python/greenlet-0.4.15[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.40.2[${PYTHON_USEDEP}]
- >=dev-python/oslo-concurrency-3.25.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.1.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/pastedeploy-1.5.0[${PYTHON_USEDEP}]
- >=dev-python/routes-2.3.1[${PYTHON_USEDEP}]
- >=dev-python/paste-2.0.2[${PYTHON_USEDEP}]
- >=dev-python/yappi-1.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/oslo-upgradecheck/Manifest b/dev-python/oslo-upgradecheck/Manifest
deleted file mode 100644
index 245690678..000000000
--- a/dev-python/oslo-upgradecheck/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST oslo-upgradecheck-1.1.1.tar.gz 15096 BLAKE2B 7aac69c8078d8f6e89c16801fc61bf9d44811b2333ed67d4f2b8a9e432dd8ecb1f90010b796965e838267991a16c0f5b19f25afc98cbb6458906e3af656f91da SHA512 89b7fca8a95195081e83b336d3e55a9c67802ff3b88fbb5849afa7c7424212c03c3a96a916a6a62bcab18ac002f73ab7a4dcc92859e6bcc9b4002798756040b2
diff --git a/dev-python/oslo-upgradecheck/metadata.xml b/dev-python/oslo-upgradecheck/metadata.xml
deleted file mode 100644
index 1a20badb4..000000000
--- a/dev-python/oslo-upgradecheck/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">oslo.upgradecheck</remote-id>
- <remote-id type="launchpad">oslo</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/oslo-upgradecheck/oslo-upgradecheck-1.1.1.ebuild b/dev-python/oslo-upgradecheck/oslo-upgradecheck-1.1.1.ebuild
deleted file mode 100644
index a20e0f654..000000000
--- a/dev-python/oslo-upgradecheck/oslo-upgradecheck-1.1.1.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-MY_PN=${PN/-/.}
-
-DESCRIPTION="Oslo i18n library"
-HOMEPAGE="https://launchpad.net/oslo"
-SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_PN}-${PV}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/prettytable-0.7.1[${PYTHON_USEDEP}]
- <dev-python/prettytable-0.8[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/oslo-versionedobjects/Manifest b/dev-python/oslo-versionedobjects/Manifest
deleted file mode 100644
index 94569d20c..000000000
--- a/dev-python/oslo-versionedobjects/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST oslo.versionedobjects-2.3.0.tar.gz 149912 BLAKE2B 0a4636e35832a5d6574d35956d6d2c894db1972bf5d8859174b0e05bb1d613776d3a1546f2f523acd882f89d7dcd3675c29f3b415b02e419b381cbf4867afa3c SHA512 57078411f765b5b6d044f4f87286a2ab07a4dc1d3f3e247a8887d10b1c68a2fc40e4635f490ecab4041af1244d36cdcedafc0528ae842e1c5fa5434c08b2f4ad
diff --git a/dev-python/oslo-versionedobjects/metadata.xml b/dev-python/oslo-versionedobjects/metadata.xml
deleted file mode 100644
index 0cb887ca2..000000000
--- a/dev-python/oslo-versionedobjects/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">oslo.versionedobjects</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/oslo-versionedobjects/oslo-versionedobjects-2.3.0.ebuild b/dev-python/oslo-versionedobjects/oslo-versionedobjects-2.3.0.ebuild
deleted file mode 100644
index 48a3f1281..000000000
--- a/dev-python/oslo-versionedobjects/oslo-versionedobjects-2.3.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="A library that provides a generic versioned and RPC-friendly object model."
-HOMEPAGE="https://docs.openstack.org/developer/oslo.versionedobjects"
-SRC_URI="mirror://pypi/${PN:0:1}/oslo.versionedobjects/oslo.versionedobjects-${PV}.tar.gz"
-S="${WORKDIR}/oslo.versionedobjects-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-concurrency-3.26.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
- >=dev-python/oslo-messaging-5.29.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-1.19.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/webob-1.7.1[${PYTHON_USEDEP}]
- >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]"
diff --git a/dev-python/oslo-vmware/Manifest b/dev-python/oslo-vmware/Manifest
deleted file mode 100644
index 32a9a44e9..000000000
--- a/dev-python/oslo-vmware/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST oslo.vmware-3.7.0.tar.gz 334704 BLAKE2B f3dd399a1cc53904070f687e1d16915097ed78147270e32c3ce71ff7621c19229a5ad1ff345bafa794567a41d83bfa613f87e07ee08f04b90b62d403be0cba63 SHA512 e9a1b0303b7208fd8071ba5c2a677ec09568cd837489d329667f9e4eb93b5aa56490fa1cda9b7927f6ee071c5b44f302742f80bfeab9812d38c3c6376b5d117f
diff --git a/dev-python/oslo-vmware/metadata.xml b/dev-python/oslo-vmware/metadata.xml
deleted file mode 100644
index dff7f89c2..000000000
--- a/dev-python/oslo-vmware/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
- The Oslo messaging API supports RPC and notifications over a number of different messaging transports.
- </longdescription>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">oslo.vmware</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/oslo-vmware/oslo-vmware-3.7.0.ebuild b/dev-python/oslo-vmware/oslo-vmware-3.7.0.ebuild
deleted file mode 100644
index bc4249fde..000000000
--- a/dev-python/oslo-vmware/oslo-vmware-3.7.0.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-
-inherit distutils-r1
-
-DESCRIPTION="Oslo VMware library for OpenStack projects"
-HOMEPAGE="https://pypi.org/project/oslo.vmware/"
-SRC_URI="mirror://pypi/${PN:0:1}/oslo.vmware/oslo.vmware-${PV}.tar.gz"
-S="${WORKDIR}/oslo.vmware-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
- >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.13.0[${PYTHON_USEDEP}]
- >=dev-python/lxml-4.5.0[${PYTHON_USEDEP}]
- >=dev-python/suds-0.6[${PYTHON_USEDEP}]
- >=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
- !~dev-python/eventlet-0.20.1[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/urllib3-1.21.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-concurrency-3.26.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
-"
-
-python_prepare() {
- sed -i '/^suds-jurko/d' requirements.txt || die
-}
diff --git a/dev-python/osprofiler/Manifest b/dev-python/osprofiler/Manifest
deleted file mode 100644
index 4905b442a..000000000
--- a/dev-python/osprofiler/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST osprofiler-3.4.0.tar.gz 86842 BLAKE2B 78a679424023f7cd20a0c6c5825747e3c108e977b44985e2f106b8e82d9cfb44f84b3662df531c64cf09fd4ce313c8a457b803ca820291d58f4f2bacb51eff81 SHA512 d88c0c68eee693a799f4e52a447dd7a4b79f7eddeb1c82bf41cdf3be6457c1b1116b6caa19530de4df376a1cbc26f4094835c3ef7110016d3d9ba989f8e8e41c
diff --git a/dev-python/osprofiler/metadata.xml b/dev-python/osprofiler/metadata.xml
deleted file mode 100644
index c086c158d..000000000
--- a/dev-python/osprofiler/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">osprofiler</remote-id>
- <remote-id type="launchpad">osprofiler</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/osprofiler/osprofiler-3.4.0.ebuild b/dev-python/osprofiler/osprofiler-3.4.0.ebuild
deleted file mode 100644
index ba78940de..000000000
--- a/dev-python/osprofiler/osprofiler-3.4.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="OpenStack Profiler Library"
-HOMEPAGE="https://launchpad.net/osprofiler"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-IUSE=""
-
-DEPEND=">=dev-python/pbr-1.8.0[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
- >=dev-python/oslo-concurrency-3.26.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-2.18.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.16.0[${PYTHON_USEDEP}]
- >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
- <dev-python/prettytable-0.8[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/webob-1.6.0[${PYTHON_USEDEP}]
- >=dev-python/importlib_metadata-1.7.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/ots-python/Manifest b/dev-python/ots-python/Manifest
deleted file mode 100644
index a2e7dd576..000000000
--- a/dev-python/ots-python/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ots-python-8.1.4.tar.gz 10830 BLAKE2B f75e4e71c942a2214d9995184dd70505800a9a58d6238fc2321afde0efe17ee4e24906edb01f0690e12e245c5316f80fb313ae416d8a64e30c23c239c9929409 SHA512 466efae7d40dc24e0af22cb29d03d7c8bb5beb592c65c36a8e2d1678c141dd9b591184cbc01bc4879705a99cbf13e61c35bb51e878fdf866e82f82cbed75099d
diff --git a/dev-python/ots-python/files/ots-python-8.1.4-ots-sanitize.patch b/dev-python/ots-python/files/ots-python-8.1.4-ots-sanitize.patch
deleted file mode 100644
index 5eae00dbd..000000000
--- a/dev-python/ots-python/files/ots-python-8.1.4-ots-sanitize.patch
+++ /dev/null
@@ -1,21 +0,0 @@
---- a/setup.py
-+++ b/setup.py
-@@ -236,7 +236,6 @@
- platforms=["posix", "nt"],
- package_dir={"": "src/python"},
- packages=find_packages("src/python"),
-- ext_modules=[ots_sanitize],
- zip_safe=False,
- cmdclass=cmdclass,
- setup_requires=["setuptools_scm"],
---- a/src/python/ots/__init__.py
-+++ b/src/python/ots/__init__.py
-@@ -3,7 +3,7 @@
- import sys
- import os
-
--OTS_SANITIZE = os.path.join(os.path.dirname(__file__), "ots-sanitize")
-+OTS_SANITIZE = "ots-sanitize"
-
- __all__ = ["sanitize", "OTSError", "CalledProcessError"]
-
diff --git a/dev-python/ots-python/metadata.xml b/dev-python/ots-python/metadata.xml
deleted file mode 100644
index 12937ae6e..000000000
--- a/dev-python/ots-python/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/googlefonts/ots-python/issues</bugs-to>
- <remote-id type="github">googlefonts/ots-python</remote-id>
- <remote-id type="pypi">ots-python</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/ots-python/ots-python-8.1.4.ebuild b/dev-python/ots-python/ots-python-8.1.4.ebuild
deleted file mode 100644
index 42a215919..000000000
--- a/dev-python/ots-python/ots-python-8.1.4.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} pypy3 )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/googlefonts/ots-python/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-DESCRIPTION="A Python wrapper for OpenType Sanitizer"
-HOMEPAGE="https://github.com/googlefonts/ots-python"
-LICENSE="BSD"
-SLOT="0"
-
-RDEPEND=">=dev-util/ots-${PV}"
-
-PATCHES=( "${FILESDIR}/${P}-ots-sanitize.patch" )
-
-distutils_enable_tests pytest
-
-src_prepare() {
- export SETUPTOOLS_SCM_PRETEND_VERSION="${PV/_p/.post}"
- mkdir -p src/c/ots || die
- default
-}
diff --git a/dev-python/ovsdbapp/Manifest b/dev-python/ovsdbapp/Manifest
deleted file mode 100644
index 6fa9850bb..000000000
--- a/dev-python/ovsdbapp/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ovsdbapp-1.5.0.tar.gz 88970 BLAKE2B 8ec73d73b159e7e45aa057d24a58388057e50ea006d8cb15be739a39471d0d6fed1542e0bcceed8e9daae67eb3c0b543a8131955a246832ef4e0480950f4f4d6 SHA512 d98ca56dc63aee22315b4181b9d3084e82d611489da7764cc44c14f805dcd874bd7aa72f6e1cb4f44234a118accb77d7412479b5f2224312c7105f56fdbac991
diff --git a/dev-python/ovsdbapp/ovsdbapp-1.5.0.ebuild b/dev-python/ovsdbapp/ovsdbapp-1.5.0.ebuild
deleted file mode 100644
index 05fd16441..000000000
--- a/dev-python/ovsdbapp/ovsdbapp-1.5.0.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-
-inherit distutils-r1
-
-DESCRIPTION="A library for creating OVSDB applications"
-HOMEPAGE="http://bugs.launchpad.net/ovsdbapp"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
- >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
- >=dev-python/ovs-2.8.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/parsel/Manifest b/dev-python/parsel/Manifest
new file mode 100644
index 000000000..27ead16ca
--- /dev/null
+++ b/dev-python/parsel/Manifest
@@ -0,0 +1 @@
+DIST parsel-1.8.1.tar.gz 50881 BLAKE2B 8d81045e064105d344125e2baf1c769d9a7bddd011c4d544eb7ee0122fc360d74aa8e828bb51ae41fe70fc110f8d449bd1be957372e11ac426427ad85b522b64 SHA512 02101df4e36c704bce8fc24fac4c11beb6f72b6e7196d48c4472acb644620c3672bd6ef9166bac349ba01a4c3e75f5b166ca6f567294f1e3cf4b325a7883dd63
diff --git a/dev-python/parsel/files/parsel-1.6.0-pytest-runner.patch b/dev-python/parsel/files/parsel-1.6.0-pytest-runner.patch
new file mode 100644
index 000000000..33b533665
--- /dev/null
+++ b/dev-python/parsel/files/parsel-1.6.0-pytest-runner.patch
@@ -0,0 +1,30 @@
+diff --git a/pytest.ini b/pytest.ini
+index 3e34de8..b9f5050 100644
+--- a/pytest.ini
++++ b/pytest.ini
+@@ -1,11 +1,2 @@
+ [pytest]
+-addopts = --assert=plain --doctest-modules --ignore=setup.py
+-flake8-ignore =
+- parsel/csstranslator.py E501
+- parsel/selector.py E501
+- parsel/utils.py E226 E501
+- parsel/xpathfuncs.py E501
+- tests/test_selector.py E501
+- tests/test_selector_csstranslator.py E501
+- tests/test_utils.py E501
+- tests/test_xpathfuncs.py E501
++addopts = --assert=plain --ignore=setup.py
+diff --git a/setup.py b/setup.py
+index d14ad0e..dc89534 100644
+--- a/setup.py
++++ b/setup.py
+@@ -76,7 +76,7 @@ setup(
+ 'Programming Language :: Python :: Implementation :: CPython',
+ 'Programming Language :: Python :: Implementation :: PyPy',
+ ],
+- setup_requires=['pytest-runner',],
++ setup_requires=[],
+ tests_require=['pytest',],
+ test_suite='tests',
+ )
diff --git a/dev-python/parsel/metadata.xml b/dev-python/parsel/metadata.xml
new file mode 100644
index 000000000..8a36a5ef1
--- /dev/null
+++ b/dev-python/parsel/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">scrapy/parsel</remote-id>
+ <remote-id type="pypi">parsel</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/parsel/parsel-1.8.1.ebuild b/dev-python/parsel/parsel-1.8.1.ebuild
new file mode 100644
index 000000000..21297dcc0
--- /dev/null
+++ b/dev-python/parsel/parsel-1.8.1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="Utility to extract data from XML/HTML documents using XPath or CSS selectors"
+HOMEPAGE="
+ https://scrapy.org/
+ https://pypi.org/project/parsel/
+ https://github.com/scrapy/parsel
+"
+
+LICENSE="BSD"
+SLOT=0
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/cssselect[${PYTHON_USEDEP}]
+ dev-python/jmespath[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/w3lib[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/sybil[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-notfound-page \
+ dev-python/sphinx-rtd-theme
+
+src_prepare() {
+ distutils-r1_src_prepare
+ sed "/pytest-runner/d" -i setup.py || die
+}
+
+python_test() {
+ epytest --ignore=docs
+}
diff --git a/dev-python/pdfminer-six/Manifest b/dev-python/pdfminer-six/Manifest
deleted file mode 100644
index 5e26aa732..000000000
--- a/dev-python/pdfminer-six/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pdfminer-six-20201018.tar.gz 10256409 BLAKE2B 87e4b693621efc36c0f248d977c8c4310d8865629bc459c8f2bb65385ae215ce07701a016e8a5f31a81f84dc596dca9f58895ac98ad34f7549ea557282cfcc9e SHA512 62d3ef815072627baf30cda966f6914422ff4df4945e0442bdaa93e04f42d2e0874f0dba46cec0f789308d787f1c8842e913bb0b590709c22faf12f605ae258e
diff --git a/dev-python/pdfminer-six/pdfminer-six-20201018.ebuild b/dev-python/pdfminer-six/pdfminer-six-20201018.ebuild
deleted file mode 100644
index f32aa0b7d..000000000
--- a/dev-python/pdfminer-six/pdfminer-six-20201018.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit distutils-r1
-
-MY_PN="${PN/-/.}"
-
-DESCRIPTION="Community maintained fork of pdfminer"
-HOMEPAGE="https://github.com/pdfminer/pdfminer.six"
-SRC_URI="https://github.com/pdfminer/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- >=dev-python/chardet-3.0[${PYTHON_USEDEP}]
- dev-python/cryptography[${PYTHON_USEDEP}]
- dev-python/sortedcontainers[${PYTHON_USEDEP}]
-"
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-distutils_enable_tests nose
-distutils_enable_sphinx docs/source dev-python/sphinx-argparse
diff --git a/dev-python/pem/Manifest b/dev-python/pem/Manifest
new file mode 100644
index 000000000..9f68271c3
--- /dev/null
+++ b/dev-python/pem/Manifest
@@ -0,0 +1 @@
+DIST pem-23.1.0.tar.gz 43796 BLAKE2B 903b6bbad0a73266467d876eba2a6a32993fd57f75630149bb00c8eac9f51a0fa7b1edcff9c09d48167f971c1da51f688ae0bda9494c3d3e3acf11262983858d SHA512 e742dba55df69736ed5896370da980b25961682a9fd38b6940490cb82332813fc1d7a931fe651716fa31caf6080e6fb047d0ef62d3e61d7e3e1288a00b70051e
diff --git a/dev-python/pem/metadata.xml b/dev-python/pem/metadata.xml
new file mode 100644
index 000000000..d20862ac8
--- /dev/null
+++ b/dev-python/pem/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>smaniotto.nicola@gmail.com</email>
+ <name>Nicola Smaniotto</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">hynek/pem</remote-id>
+ <remote-id type="pypi">pem</remote-id>
+ <doc>https://pem.readthedocs.io/</doc>
+ <bugs-to>https://github.com/hynek/pem/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pem/pem-23.1.0.ebuild b/dev-python/pem/pem-23.1.0.ebuild
new file mode 100644
index 000000000..4f7670dea
--- /dev/null
+++ b/dev-python/pem/pem-23.1.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="Easy PEM file parsing in Python"
+HOMEPAGE="https://pem.readthedocs.io/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ dev-python/hatch-fancy-pypi-readme[${PYTHON_USEDEP}]
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/coverage-5.0.2[${PYTHON_USEDEP}]
+ dev-python/certifi[${PYTHON_USEDEP}]
+ dev-python/pretend[${PYTHON_USEDEP}]
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pep517/Manifest b/dev-python/pep517/Manifest
deleted file mode 100644
index 18a1a13e0..000000000
--- a/dev-python/pep517/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pep517-0.9.1.tar.gz 23213 BLAKE2B 2108178a35baff87657a5e0cc7684adad28e53d57fb4066826a9f5d5b0d8910096d208a3ca159005fa7ca0dad5b172ec0080131d177d03db1b1bc37692379d5b SHA512 7c7d181d52a6d042ad432c4366021f9b2364c77193d99066668acd4c6967dab299644febf0dc4a6efb9a777a0aaae7df2687191cba3f3b93e6bf06ee0769a7df
diff --git a/dev-python/pep517/metadata.xml b/dev-python/pep517/metadata.xml
deleted file mode 100644
index ae262366c..000000000
--- a/dev-python/pep517/metadata.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <longdescription lang="en">
-PEP 517 specifies a standard API for systems which build Python packages.
-
-This package contains wrappers around the hooks specified by PEP 517. It provides:
-
- A mechanism to call the hooks in a subprocess, so they are isolated from the current process.
- Fallbacks for the optional hooks, so that frontends can call the hooks without checking which are defined.
- Higher-level functions which install the build dependencies into a temporary environment and build a wheel/sdist using them.
- </longdescription>
- <upstream>
- <remote-id type="github">pypa/pep517</remote-id>
- <remote-id type="pypi">pep517</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pep517/pep517-0.9.1.ebuild b/dev-python/pep517/pep517-0.9.1.ebuild
deleted file mode 100644
index 52e8ff9cd..000000000
--- a/dev-python/pep517/pep517-0.9.1.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-DISTUTILS_USE_SETUPTOOLS=pyproject.toml
-
-inherit distutils-r1
-
-DESCRIPTION="standard API for systems which build Python packages"
-HOMEPAGE="
- https://github.com/pypa/pep517
- https://pypi.org/project/pep517
-"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- dev-python/toml[${PYTHON_USEDEP}]
-
- $(python_gen_cond_dep 'dev-python/importlib_metadata[${PYTHON_USEDEP}]' python3_7)
- $(python_gen_cond_dep 'dev-python/zipp[${PYTHON_USEDEP}]' python3_7)
-"
-DEPEND="
- ${RDEPEND}
- test? (
- dev-python/mock[${PYTHON_USEDEP}]
- dev-python/testpath[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-src_prepare() {
- sed -i 's|addopts=--flake8||' pytest.ini
- default
-}
-
-python_test() {
- pytest -vv \
- --deselect tests/test_meta.py::test_classic_package \
- --deselect tests/test_meta.py::test_meta_output \
- --deselect tests/test_meta.py::test_meta_for_this_package || die
-}
diff --git a/dev-python/persist-queue/Manifest b/dev-python/persist-queue/Manifest
new file mode 100644
index 000000000..dd8eb88c2
--- /dev/null
+++ b/dev-python/persist-queue/Manifest
@@ -0,0 +1 @@
+DIST persist-queue-0.8.1.tar.gz 29652 BLAKE2B b088a1d1784928e682151d0ccf984439df13b771aea4c5125b213a87fea05fbbc654fd80b787e141083a148b8b4b661b50fbe22f85cc582d0f411297089a88e2 SHA512 a5582deddd06108b4e748ee10fed5f64a328fe361b2db8f74400f7e43fc5800aafee67230e7edf481f926c8e20c73fb5d32109d15504a24caa67da848458ce6c
diff --git a/dev-python/persist-queue/metadata.xml b/dev-python/persist-queue/metadata.xml
new file mode 100644
index 000000000..445d45369
--- /dev/null
+++ b/dev-python/persist-queue/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">peter-wangxu/persist-queue</remote-id>
+ <remote-id type="pypi">persist-queue</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/persist-queue/persist-queue-0.8.1.ebuild b/dev-python/persist-queue/persist-queue-0.8.1.ebuild
new file mode 100644
index 000000000..ed1002997
--- /dev/null
+++ b/dev-python/persist-queue/persist-queue-0.8.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A thread-safe disk based persistent queue in Python"
+HOMEPAGE="https://github.com/peter-wangxu/persist-queue"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# It tries to connect to a local MySQL server
+RESTRICT="test"
+
+DEPEND="
+ dev-python/dbutils[${PYTHON_USEDEP}]
+ dev-python/msgpack[${PYTHON_USEDEP}]
+ dev-python/pymysql[${PYTHON_USEDEP}]
+"
+RDEPEND="${DEPEND}"
diff --git a/dev-python/pg8000/Manifest b/dev-python/pg8000/Manifest
new file mode 100644
index 000000000..d65c1a921
--- /dev/null
+++ b/dev-python/pg8000/Manifest
@@ -0,0 +1 @@
+DIST pg8000-1.29.4.tar.gz 126629 BLAKE2B 7d71e64c3ac37d9271b3dad20e80ed208c3f062149f7877a964c3ad72b1b245d0210b2e53ee0747f6318de7a81bfa4d03f16312263557b62e751fe89595eab23 SHA512 b96c5a4c42354f74bde3ee3af1688164cd74280c432c458d2d71563329162b7551e48f08c31ca8b1d3c1ff068aeccfd0b385265d2f64da34f1d2c59daca0c5dc
diff --git a/dev-python/pg8000/metadata.xml b/dev-python/pg8000/metadata.xml
new file mode 100644
index 000000000..70e9a6031
--- /dev/null
+++ b/dev-python/pg8000/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <bugs-to>https://github.com/tlocke/pg8000/issues</bugs-to>
+ <remote-id type="pypi">pg8000</remote-id>
+ <remote-id type="github">tlocke/pg8000</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pg8000/pg8000-1.29.4.ebuild b/dev-python/pg8000/pg8000-1.29.4.ebuild
new file mode 100644
index 000000000..1547c20ec
--- /dev/null
+++ b/dev-python/pg8000/pg8000-1.29.4.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=setuptools
+declare -A DATABASES_REQ_USE=( [postgres]="xml" )
+
+inherit databases distutils-r1 edo pypi
+
+DESCRIPTION="PostgreSQL interface library"
+HOMEPAGE="
+ https://github.com/tlocke/pg8000
+ https://pypi.org/project/pg8000/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/scramp-1.4.3[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.8.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/versioningit[${PYTHON_USEDEP}]
+ test? (
+ ${DATABASES_DEPEND[postgres]}
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ )
+"
+
+SSL_TESTS=(
+ test/dbapi/auth/test_md5_ssl.py
+ test/dbapi/auth/test_scram-sha-256_ssl.p
+ test/legacy/auth/test_md5_ssl.py
+ test/legacy/auth/test_scram-sha-256_ssl.py
+ test/native/auth/test_md5_ssl.py
+ test/native/auth/test_scram-sha-256_ssl.py
+)
+
+EPYTEST_DESELECT=(
+ # TODO: ssl tests (need certificates and stuff)
+ "${SSL_TESTS[@]}"
+
+ # "could not determine data type of parameter $1" and other errors
+ test/test_readme.py
+
+ # "database doesn't exist" errors
+ test/dbapi/auth/test_gss.py
+ test/legacy/auth/test_gss.py
+ test/native/auth/test_gss.py
+
+ # too flaky
+ test/native/test_typeconversion.py::test_roundtrip_oid
+)
+
+EPYTEST_IGNORE=(
+ # need pytest-benchmark
+ test/dbapi/test_benchmarks.py
+ test/legacy/test_benchmarks.py
+ test/native/test_benchmarks.py
+)
+
+distutils_enable_tests pytest
+
+python_test_ssl() {
+ epytest "${SSL_TESTS[@]}"
+}
+
+src_test() {
+ epsql() {
+ edo psql -q -h "${sockdir}" -U postgres "${@}"
+ }
+
+ local -x PGPORT="65432"
+ local -x PGPASSWORD="cpsnow"
+ local sockdir=$(epostgres --get-sockdir)
+
+ epostgres --start ${PGPORT}
+ epsql -c "ALTER ROLE postgres WITH PASSWORD '${PGPASSWORD}';"
+ epsql -c "CREATE EXTENSION hstore;"
+ epsql -c "SELECT pg_reload_conf();"
+
+ distutils-r1_src_test
+ epostgres --stop
+}
diff --git a/dev-python/phx-class-registry/Manifest b/dev-python/phx-class-registry/Manifest
index 4622fc776..c5c564d6f 100644
--- a/dev-python/phx-class-registry/Manifest
+++ b/dev-python/phx-class-registry/Manifest
@@ -1 +1,2 @@
-DIST phx-class-registry-3.0.5.tar.gz 23756 BLAKE2B 7ba98323cb91a328b7dbe3df2def174d950c9f78da2fbd62c81dbf3803d570d42794a20ca3219b41f8f5b739efd3317ce8672f70169db492c2cda8a980460fb1 SHA512 324171cbf14132e02c58026d90c87d408fd321d95258cf8cd66de472a125177c4131ca1e47fad279db3384a8a3a50832eb1287a4b577c76c79a9391fa1d998c6
+DIST phx-class-registry-4.0.6.tar.gz 26010 BLAKE2B 8c0f65f97efbe0dbae15d11ab52c7081f62654a485a784a6668eb37dbe3dbecf16f1fbc62edab06aafb34afd25ad1cb411de5b8768c10d4a501debc385de715f SHA512 da6d328359aae7488b1a34b4248e480c2f5e9c52e1f82bfeeba2be6d43a6014231fec0c32430e9f73c6761206197bb7e3db0b6bad9c847a5643d1609c3534293
+DIST phx-class-registry-4.1.0.tar.gz 26873 BLAKE2B 5e62efb56e315a15d599ea933d2b6f0026f3c0476e961210f073fb355cfaad770f977aa84b79b32d9c396177a86a0e1ab93c93934fc2f319f610e424f068ba72 SHA512 e6aa7fb704f4129be7c15a74e2a8fc568109c95468d732b210ee7af948f7d6678106eafb05f4d1cfdf5b1a9d987acc0e4f3649397e217df5f1cd0c4f4348a714
diff --git a/dev-python/phx-class-registry/metadata.xml b/dev-python/phx-class-registry/metadata.xml
index c7a62a35e..6bf703255 100644
--- a/dev-python/phx-class-registry/metadata.xml
+++ b/dev-python/phx-class-registry/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>ezzieyguywuf@gmail.com</email>
@@ -10,4 +10,7 @@
ClassRegistry. This package contains the python modules necessary to use
this dessign pattern
</longdescription>
+ <upstream>
+ <remote-id type="github">todofixthis/class-registry</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/phx-class-registry/phx-class-registry-3.0.5.ebuild b/dev-python/phx-class-registry/phx-class-registry-4.0.6-r1.ebuild
index 282d9a8e8..7bfaaadc0 100644
--- a/dev-python/phx-class-registry/phx-class-registry-3.0.5.ebuild
+++ b/dev-python/phx-class-registry/phx-class-registry-4.0.6-r1.ebuild
@@ -1,18 +1,23 @@
-# Copyright 2020 Gentoo Authors
+# Copyright 2020-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{7..9} pypy3 )
+PYTHON_COMPAT=( python3_10 python3_11 python3_12 )
+DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
DESCRIPTION="An intersection of the Registry and Factory pattern"
HOMEPAGE="https://github.com/todofixthis/class-registry"
SRC_URI="https://github.com/todofixthis/class-registry/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/class-registry-${PV}"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-S="${WORKDIR}/class-registry-${PV}"
-distutils_enable_tests nose
+distutils_enable_tests unittest
+
+python_test() {
+ "${EPYTHON}" -m unittest || die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/phx-class-registry/phx-class-registry-4.1.0.ebuild b/dev-python/phx-class-registry/phx-class-registry-4.1.0.ebuild
new file mode 100644
index 000000000..7bfaaadc0
--- /dev/null
+++ b/dev-python/phx-class-registry/phx-class-registry-4.1.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2020-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_10 python3_11 python3_12 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="An intersection of the Registry and Factory pattern"
+HOMEPAGE="https://github.com/todofixthis/class-registry"
+SRC_URI="https://github.com/todofixthis/class-registry/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+S="${WORKDIR}/class-registry-${PV}"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+distutils_enable_tests unittest
+
+python_test() {
+ "${EPYTHON}" -m unittest || die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/pip-api/Manifest b/dev-python/pip-api/Manifest
deleted file mode 100644
index 032d2721b..000000000
--- a/dev-python/pip-api/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pip-api-0.0.20.tar.gz 111267 BLAKE2B 9cbb1087f93008ca94d35c5e83d9e159a460a8eae26261c3efc2eeded9b68d627045b1506c5b4c868a8782ad7e0b535a120ad9e2c56df8d6d3b81f51f273deb8 SHA512 c447d986ef4003221d3ed5b020bfe0f8330d969c9bda0af2eab2665712dbed5b3e2e5d05ca2d47ed6d217d180d4231afea46627886968803620cffa5e0979ca4
diff --git a/dev-python/pip-api/metadata.xml b/dev-python/pip-api/metadata.xml
deleted file mode 100644
index a654b8335..000000000
--- a/dev-python/pip-api/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/di/pip-api/issues</bugs-to>
- <remote-id type="github">di/pip-api</remote-id>
- <remote-id type="pypi">pip-api</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pip-api/pip-api-0.0.20.ebuild b/dev-python/pip-api/pip-api-0.0.20.ebuild
deleted file mode 100644
index e0b8e1f8a..000000000
--- a/dev-python/pip-api/pip-api-0.0.20.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_SETUPTOOLS="pyproject.toml"
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="An unofficial, importable pip API"
-HOMEPAGE="https://github.com/di/pip-api"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-DEPEND="
- dev-python/pip[${PYTHON_USEDEP}]
- test? (
- dev-python/pretend[${PYTHON_USEDEP}]
- >=dev-python/virtualenv-20[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-python_test() {
- epytest -vv --deselect tests/test_installed_distributions.py::test_installed_distributions_legacy_version || die
-}
diff --git a/dev-python/playsound/Manifest b/dev-python/playsound/Manifest
new file mode 100644
index 000000000..198688b4c
--- /dev/null
+++ b/dev-python/playsound/Manifest
@@ -0,0 +1 @@
+DIST playsound-1.3.0.tar.gz 7650 BLAKE2B 27a601e2df63149e41707f1004ee301800d2e75abf81ce21d3e32c0ddce04f1fa3a9bd463637e1e0438f7ffe13bf0090bb120835f6f3a4eeca1c5bf41f0bbe5c SHA512 d64203542347938bb92616203423eae622c4a9a9b0dc78c8e000786eb6393cabfc092db3f3d799a40a290e762fd41cd068df8f83f7cb291c0ceaf8bc4fbc4184
diff --git a/dev-python/playsound/metadata.xml b/dev-python/playsound/metadata.xml
new file mode 100644
index 000000000..a835c9221
--- /dev/null
+++ b/dev-python/playsound/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">playsound</remote-id>
+ <remote-id type="github">TaylorSMarks/playsound</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/playsound/playsound-1.3.0.ebuild b/dev-python/playsound/playsound-1.3.0.ebuild
new file mode 100644
index 000000000..15fcb012a
--- /dev/null
+++ b/dev-python/playsound/playsound-1.3.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Single function module with no dependencies for playing sounds"
+HOMEPAGE="
+ https://pypi.org/project/playsound/
+ https://github.com/TaylorSMarks/playsound
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/plexapi/Manifest b/dev-python/plexapi/Manifest
new file mode 100644
index 000000000..f66b9c343
--- /dev/null
+++ b/dev-python/plexapi/Manifest
@@ -0,0 +1 @@
+DIST plexapi-4.15.11.gh.tar.gz 22519567 BLAKE2B 20f5e3d426475c63aa39f960838a0501abbf6af6f2c214163825e53d052076cd8a8ba982eafe0faa9971d0b6f857a266f092a3d4fb3b6cb7fff8c7f9380f4e03 SHA512 c68b414aa9262c3505dc2490c38e8d5dd896970f4df7fe8d382a0c5f2276ecc9833767e243b596c4f0f625e6d8984f5f89790fe7a71e9b6cab1c439f26b9cde1
diff --git a/dev-python/plexapi/metadata.xml b/dev-python/plexapi/metadata.xml
new file mode 100644
index 000000000..0fb2c9aef
--- /dev/null
+++ b/dev-python/plexapi/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">plexapi</remote-id>
+ <remote-id type="github">pkkid/python-plexapi</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/plexapi/plexapi-4.15.11.ebuild b/dev-python/plexapi/plexapi-4.15.11.ebuild
new file mode 100644
index 000000000..a97cbd886
--- /dev/null
+++ b/dev-python/plexapi/plexapi-4.15.11.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# left here in case we switch to pypi
+PYPI_PN="PlexAPI"
+PYPI_NO_NORMALIZE=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python bindings for the Plex API."
+HOMEPAGE="
+ https://pypi.org/project/plexapi/
+ https://github.com/pkkid/python-plexapi
+"
+
+# pypi release don't have docs
+SRC_URI="https://github.com/pkkid/python-plexapi/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+S="${WORKDIR}/python-${P}"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# almost all tests requires a running server
+RESTRICT="test"
+
+RDEPEND="
+ dev-python/requests[${PYTHON_USEDEP}]
+"
+
+BDEPEND="doc? ( dev-python/sphinx-rtd-theme )"
+
+distutils_enable_sphinx docs
diff --git a/dev-python/plotext/Manifest b/dev-python/plotext/Manifest
new file mode 100644
index 000000000..5ad55d1e7
--- /dev/null
+++ b/dev-python/plotext/Manifest
@@ -0,0 +1 @@
+DIST plotext-5.3.0.tar.gz 11106682 BLAKE2B ddc15abc64d35c78da676386401eb6b68be254a713b8b646be49190ef6387e59b1a381342e2012f3b3c4852a7db5c7e70182593785366f04c5170f5ce2b5da83 SHA512 7032f58b5c4dd02e6cfb9856f2572bd12be17d4759a75bac9c3f2013e1352d5c5629c0c476100669ca3d8c4112a9563a9a6cf47551ec8de2ea7f806d45c2ccb8
diff --git a/dev-python/clufter/metadata.xml b/dev-python/plotext/metadata.xml
index 55b9e5038..e78e0f1e6 100644
--- a/dev-python/clufter/metadata.xml
+++ b/dev-python/plotext/metadata.xml
@@ -2,7 +2,10 @@
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>andrea.postiglione@gmail.com</email>
- <name>Andrea Postiglione</name>
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">piccolomo/plotext</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/plotext/plotext-5.3.0.ebuild b/dev-python/plotext/plotext-5.3.0.ebuild
new file mode 100644
index 000000000..ebcd06288
--- /dev/null
+++ b/dev-python/plotext/plotext-5.3.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Plotting on terminal"
+HOMEPAGE="https://github.com/piccolomo/plotext"
+SRC_URI="https://github.com/piccolomo/plotext/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+RESTRICT="test"
diff --git a/dev-python/plum/Manifest b/dev-python/plum/Manifest
new file mode 100644
index 000000000..a75a92991
--- /dev/null
+++ b/dev-python/plum/Manifest
@@ -0,0 +1 @@
+DIST plum-0.8.7.tar.bz2 169412 BLAKE2B 121caf6dfd1c66f4df86ba746769d6e90609464e59a92cd5e305c1bec9c1dd8e9d71246f67f3f5da916460cdc373f081470916fce241332b1afacae476583d4d SHA512 484bde8e20b67aa9fbbbaa454662a34f0fa58888d6fab55368d3c40e668327708e4f20fe1c35a9410f46e18c6af84039e2ad21119a64329cb427bce7617ea0bd
diff --git a/dev-python/plum/metadata.xml b/dev-python/plum/metadata.xml
new file mode 100644
index 000000000..c9fd75048
--- /dev/null
+++ b/dev-python/plum/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>navi@vlhl.dev</email>
+ <name>Anna Figueiredo Gomes</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gitlab">dangass/plum</remote-id>
+ </upstream>
+</pkgmetadata>
+
diff --git a/dev-python/plum/plum-0.8.7.ebuild b/dev-python/plum/plum-0.8.7.ebuild
new file mode 100644
index 000000000..c9ebe4ca4
--- /dev/null
+++ b/dev-python/plum/plum-0.8.7.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Pack/Unpack Memory"
+
+HOMEPAGE="https://gitlab.com/dangass/plum"
+SRC_URI="https://gitlab.com/dangass/${PN}/-/archive/${PV}/${PN}-${PV}.tar.bz2"
+LICENSE="MIT"
+SLOT="0"
+
+KEYWORDS="~amd64"
diff --git a/dev-python/podman-compose/Manifest b/dev-python/podman-compose/Manifest
new file mode 100644
index 000000000..fa25ab103
--- /dev/null
+++ b/dev-python/podman-compose/Manifest
@@ -0,0 +1 @@
+DIST podman-compose-1.0.6.gh.tar.gz 58426 BLAKE2B 4a200d7abb77535d631704e96f600c360cd03a70274c5ed763a6f21a309f9be1225749e4f34b1df00973e9c1de191ec3d43bf35588d912faac25de52e4dd85be SHA512 eb6972c51fd02c7a7dec364d18417c4f093f12ab90ba7061be189de7130c8eb0becb5a1653ebf7db0611470b52257a4a1eaae52891f434ca73fbc6dd30da5f56
diff --git a/dev-python/podman-compose/metadata.xml b/dev-python/podman-compose/metadata.xml
new file mode 100644
index 000000000..67358b8c1
--- /dev/null
+++ b/dev-python/podman-compose/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mathieu.tortuyaux@gmail.com</email>
+ <name>Mathieu Tortuyaux</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">podman-compose</remote-id>
+ <remote-id type="github">containers/podman-compose</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/podman-compose/podman-compose-1.0.6.ebuild b/dev-python/podman-compose/podman-compose-1.0.6.ebuild
new file mode 100644
index 000000000..00c561b9e
--- /dev/null
+++ b/dev-python/podman-compose/podman-compose-1.0.6.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+DESCRIPTION="A script to run docker-compose.yml using Podman"
+HOMEPAGE="https://github.com/containers/podman-compose"
+SRC_URI="https://github.com/containers/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ || (
+ ( app-containers/netavark app-containers/aardvark-dns )
+ app-containers/dnsname-cni-plugin
+ )
+ app-containers/podman
+ dev-python/pyaml[${PYTHON_USEDEP}]
+ dev-python/python-dotenv[${PYTHON_USEDEP}]
+"
+RDEPEND="${DEPEND}"
+
+distutils_enable_tests pytest
+
+python_test() {
+ epytest pytests
+}
diff --git a/dev-python/portio/Manifest b/dev-python/portio/Manifest
deleted file mode 100644
index 92971e787..000000000
--- a/dev-python/portio/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST portio-0.5.tar.gz 134136 BLAKE2B a330caad064beb05ec7bb313f1f381c3fd5000a7b7d7f1f90ebe4a1a1767cbfe0e9441c368f053121322a35f342c69c6b4232be1773efd23f90bbc071d6858a9 SHA512 363a81d2c98cd0c0113a9d37082b7f017517239a02dbb0077922f3a32b918a92a7d9526cdf7a31d1ab80883ad4746bc86b49ea92eae7cc0d20f703a5f8eda777
diff --git a/dev-python/portio/metadata.xml b/dev-python/portio/metadata.xml
deleted file mode 100644
index 7347b6dff..000000000
--- a/dev-python/portio/metadata.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">PortIO is a Python wrapper for the port I/O macros like outb, inb, etc. provided by the C library on Linux x86 platforms. Both python 2 and 3 are supported. This module is useful when a general pourpose port I/O at the low level is needed. Programmers that want to perform I/O on the parallel port at an higher level, will be better satisfied by the pyParallel module. A similar module Ioport has inspired the writing of PortIO.</longdescription>
- <upstream>
- <bugs-to>mailto:f.pollastri@inrim.it</bugs-to>
- <changelog>http://portio.inrim.it/#changelog</changelog>
- <maintainer>
- <name>Fabrizio Pollastri</name>
- <email>f.pollastri@inrim.it</email>
- </maintainer>
- <remote-id type="pypi">portio</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/portio/portio-0.5.ebuild b/dev-python/portio/portio-0.5.ebuild
deleted file mode 100644
index e65ca345c..000000000
--- a/dev-python/portio/portio-0.5.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-DISTUTILS_USE_SETUPTOOLS=no
-PYTHON_COMPAT=( python3_{7,8,9} pypy3 )
-inherit distutils-r1
-
-DESCRIPTION="Python low level port I/O for Linux x86"
-HOMEPAGE="
- http://portio.inrim.it
- https://pypi.org/project/portio
-"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64"
-
-DOCS=( index.rst )
-
-src_prepare() {
- sed -e '/include_dirs/d' \
- -e '/library_dirs/d' \
- -i setup.py || die
-
- distutils-r1_src_prepare
-}
diff --git a/dev-python/portion/Manifest b/dev-python/portion/Manifest
new file mode 100644
index 000000000..a4d0f4a6d
--- /dev/null
+++ b/dev-python/portion/Manifest
@@ -0,0 +1,2 @@
+DIST portion-2.4.1.tar.gz 52894 BLAKE2B bdb5c387c9ab6ee0fec9e4aea71be40a51cc1f9be6f40b1f71389947e6e60f84c7f2a89e0d617923b835e72e524b80f8f2fbcdb14895a5307d09ee3d67fd01f0 SHA512 72181519dcadae036025be36fde63bd70ab7e7fa448400dd91e639e8eef5bc70b2ad490cd48a882d1b2be0cdc04f57cd63de44690181462f31afe771108f5c51
+DIST portion-2.4.2.tar.gz 53011 BLAKE2B a91264c1abc065d29942d292819d14a6d7f49c66782f2453a17762106af8be3ca156901bc808ca62a30688a4dcc74e134e4ee9ee9199682fd425511951713423 SHA512 ae5ed99f89d066eee4c97fda2b395bdbde153064e9582f3cc425c7a0f728b3f07ab703ce57708be835486a61eaaee242496ce0caeb3df0262a27fa627b59b54e
diff --git a/dev-python/portion/metadata.xml b/dev-python/portion/metadata.xml
new file mode 100644
index 000000000..34539baeb
--- /dev/null
+++ b/dev-python/portion/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>julien@jroy.ca</email>
+ <name>Julien Roy</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <name>Alexandre Decan</name>
+ <email>alexandre.decan@lexpage.net</email>
+ </maintainer>
+ <changelog>https://github.com/AlexandreDecan/portion/blob/master/CHANGELOG.md</changelog>
+ <doc>https://github.com/AlexandreDecan/portion#documentation--usage</doc>
+ <bugs-to>https://github.com/AlexandreDecan/portion/issues</bugs-to>
+ <remote-id type="github">AlexandreDecan/portion</remote-id>
+ <remote-id type="pypi">portion</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/portion/portion-2.4.1.ebuild b/dev-python/portion/portion-2.4.1.ebuild
new file mode 100644
index 000000000..6ad18e523
--- /dev/null
+++ b/dev-python/portion/portion-2.4.1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A Python library providing data structure and operations for intervals."
+HOMEPAGE="https://github.com/AlexandreDecan/portion"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+RDEPEND="
+ test? (
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/coverage[${PYTHON_USEDEP}]
+ dev-python/black[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-python/sortedcontainers[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
diff --git a/dev-python/portion/portion-2.4.2.ebuild b/dev-python/portion/portion-2.4.2.ebuild
new file mode 100644
index 000000000..966530e8c
--- /dev/null
+++ b/dev-python/portion/portion-2.4.2.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A Python library providing data structure and operations for intervals."
+HOMEPAGE="https://github.com/AlexandreDecan/portion
+ https://pypi.org/project/portion/
+"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+RDEPEND="
+ test? (
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/coverage[${PYTHON_USEDEP}]
+ dev-python/black[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-python/sortedcontainers[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pproxy/Manifest b/dev-python/pproxy/Manifest
deleted file mode 100644
index 27ad4e761..000000000
--- a/dev-python/pproxy/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pproxy-2.7.8.tar.gz 58261 BLAKE2B d3ab31ea0a907a37f76a22ef0a7edf1d2dc2f22988ce8a09735ffaf2ac1cbf2f8827867a5018289b5bb88ad7225ff4a0bf74ff2da10d454c6676fa20423308fc SHA512 0e1dad674edb2f7b587f1a31b8ed1d344ccc93bf6d927f54a44f6508bbceabce9d8a3d0343ecf104afa9b56658d74855f6052bf8c922a6ceb0e2c8b6cafa2fb7
diff --git a/dev-python/pproxy/metadata.xml b/dev-python/pproxy/metadata.xml
deleted file mode 100644
index 56df1b781..000000000
--- a/dev-python/pproxy/metadata.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-Features
-
-Lightweight single-thread asynchronous IO.
-Pure python, no additional library required.
-Proxy client/server for TCP/UDP.
-Schedule (load balance) among remote servers.
-Incoming traffic auto-detect.
-Tunnel/relay/backward-relay support.
-Unix domain socket support.
-User/password authentication support.
-Filter/block hostname by regex patterns.
-SSL/TLS client/server support.
-Shadowsocks OTA (One-Time-Auth), SSR plugins.
-Statistics by bandwidth and traffic.
-PAC support for javascript configuration.
-Iptables/Pf NAT redirect packet tunnel.
-System proxy auto-setting support.
-Client/Server API provided.
- </longdescription>
- <upstream>
- <remote-id type="github">qwj/python-proxy</remote-id>
- <remote-id type="pypi">pproxy</remote-id>
- <maintainer status="unknown">
- <email>qianwenjie@gmail.com</email>
- <name>Qian Wenjie</name>
- </maintainer>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pproxy/pproxy-2.7.8.ebuild b/dev-python/pproxy/pproxy-2.7.8.ebuild
deleted file mode 100644
index a9c8de890..000000000
--- a/dev-python/pproxy/pproxy-2.7.8.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{8,9} pypy3 )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1 optfeature
-
-DESCRIPTION="TCP/UDP asynchronous tunnel proxy implemented in Python3 asyncio"
-HOMEPAGE="
- https://github.com/qwj/python-proxy
- https://pypi.org/project/pproxy
-"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-pkg_postinst() {
- optfeature "ssh tunnelling" ">=dev-python/asyncssh-2.5.0"
- optfeature "accelerated ciphers" ">=dev-python/pycryptodome-3.7.2"
- optfeature "accelerated ciphers" ">=dev-python/uvloop-0.13.0"
- optfeature "daemon" ">=dev-python/python-daemon-2.2.3"
-}
diff --git a/dev-python/praw/Manifest b/dev-python/praw/Manifest
new file mode 100644
index 000000000..76b176036
--- /dev/null
+++ b/dev-python/praw/Manifest
@@ -0,0 +1,2 @@
+DIST praw-7.6.1.gh.tar.gz 25083372 BLAKE2B eab92be89585bbe485b4d51c1c3c15def597b3a5cdb1326cf166931e4be22bea2975c76c48c8b673b30945ec5b559efba84d0310eebbdaa2881a37e30351af31 SHA512 91fa6efe0ea56d53ea49df8c1046ff620571d9dc80e6fdc5a5da3651cd24d7553455b62d02db8e37531a7bf34be0fbbc8c9555281b4887b73e9b8758966db55a
+DIST praw-7.7.0.gh.tar.gz 25092955 BLAKE2B e50a20b6d8fc58214480b9edb91a332a9e50626aeb67155298f1746b2615852bc89d3e338d120d2910c93f1713302f41754f5f87259388c9fedd1c358e65dd63 SHA512 40a8882cdcaa10f538f9cf9552414184050b16008eed4c4e31fc52dfc0d337daad6bd1041d462d26476c692ae8997f675cf5ce2630d8d8be091023b7deb98181
diff --git a/dev-python/praw/metadata.xml b/dev-python/praw/metadata.xml
new file mode 100644
index 000000000..7944f4d94
--- /dev/null
+++ b/dev-python/praw/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <maintainer>
+ <email>bbzbryce@gmail.com</email>
+ <name>Bryce Boe</name>
+ </maintainer>
+ <remote-id type="pypi">praw</remote-id>
+ <remote-id type="github">praw-dev/praw</remote-id>
+ <changelog>https://pypi.org/rss/project/praw/releases.xml</changelog>
+ <doc>https://praw.readthedocs.io</doc>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/praw/praw-7.6.1.ebuild b/dev-python/praw/praw-7.6.1.ebuild
new file mode 100644
index 000000000..b775ae536
--- /dev/null
+++ b/dev-python/praw/praw-7.6.1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Python Reddit API Wrapper"
+HOMEPAGE="
+ https://pypi.org/project/praw/
+ https://github.com/praw-dev/praw
+"
+SRC_URI="https://github.com/praw-dev/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DOCS=( {AUTHORS,CHANGES,README}.rst SECURITY.md )
+
+RDEPEND="
+ <dev-python/prawcore-3[${PYTHON_USEDEP}]
+ dev-python/websocket-client[${PYTHON_USEDEP}]
+"
+BDEPEND="test? (
+ dev-python/betamax[${PYTHON_USEDEP}]
+ dev-python/betamax-matchers[${PYTHON_USEDEP}]
+)"
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-rtd-theme \
+ dev-python/sphinx-rtd-dark-mode
+
+python_prepare_all() {
+ # disable optional dependencies
+ sed "/update_checker/d" -i setup.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local epytestargs=(
+ # spams deprecation warnings
+ -p no:asyncio
+ )
+ epytest "${epytestargs[@]}"
+}
diff --git a/dev-python/praw/praw-7.7.0.ebuild b/dev-python/praw/praw-7.7.0.ebuild
new file mode 100644
index 000000000..b775ae536
--- /dev/null
+++ b/dev-python/praw/praw-7.7.0.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Python Reddit API Wrapper"
+HOMEPAGE="
+ https://pypi.org/project/praw/
+ https://github.com/praw-dev/praw
+"
+SRC_URI="https://github.com/praw-dev/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DOCS=( {AUTHORS,CHANGES,README}.rst SECURITY.md )
+
+RDEPEND="
+ <dev-python/prawcore-3[${PYTHON_USEDEP}]
+ dev-python/websocket-client[${PYTHON_USEDEP}]
+"
+BDEPEND="test? (
+ dev-python/betamax[${PYTHON_USEDEP}]
+ dev-python/betamax-matchers[${PYTHON_USEDEP}]
+)"
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-rtd-theme \
+ dev-python/sphinx-rtd-dark-mode
+
+python_prepare_all() {
+ # disable optional dependencies
+ sed "/update_checker/d" -i setup.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local epytestargs=(
+ # spams deprecation warnings
+ -p no:asyncio
+ )
+ epytest "${epytestargs[@]}"
+}
diff --git a/dev-python/prawcore/Manifest b/dev-python/prawcore/Manifest
new file mode 100644
index 000000000..a1c38e6ff
--- /dev/null
+++ b/dev-python/prawcore/Manifest
@@ -0,0 +1 @@
+DIST prawcore-2.3.0.tar.gz 1163513 BLAKE2B 9e8bf7477bbdaf2b8f9f2c8e044ec8200a5265b90ba8be92137d9032a68d6384e57d8e6987a2a2aeeb777d6c6ab9a238322a13e6f944d8dc0ad606ae6ae61dad SHA512 d0d2d54bae1e1d31e50bad8094fee9b448f952d62d7306752f1de4450dea4ec0dc2030d273561a8775c9034ade527d115ccf4043c47def42a50169fed7b97b0d
diff --git a/dev-python/prawcore/metadata.xml b/dev-python/prawcore/metadata.xml
new file mode 100644
index 000000000..267c6ff54
--- /dev/null
+++ b/dev-python/prawcore/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <maintainer>
+ <email>bbzbryce@gmail.com</email>
+ <name>Bryce Boe</name>
+ </maintainer>
+ <remote-id type="pypi">prawcore</remote-id>
+ <remote-id type="github">praw-dev/prawcore</remote-id>
+ <changelog>https://pypi.org/rss/project/prawcore/releases.xml</changelog>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/prawcore/prawcore-2.3.0.ebuild b/dev-python/prawcore/prawcore-2.3.0.ebuild
new file mode 100644
index 000000000..59d24eede
--- /dev/null
+++ b/dev-python/prawcore/prawcore-2.3.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="Low-level communication layer for PRAW"
+HOMEPAGE="
+ https://pypi.org/project/prawcore/
+ https://github.com/praw-dev/prawcore
+"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# Tests require <dev-python/betamax-0.9 which is no longer available in ::gentoo
+RESTRICT="test"
+
+RDEPEND="dev-python/requests[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ <dev-python/betamax-matchers-0.5[${PYTHON_USEDEP}]
+ <dev-python/betamax-serializers-0.3[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/testfixtures[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( {AUTHORS,CHANGES,README}.rst )
+
+distutils_enable_tests pytest
diff --git a/dev-python/promise/Manifest b/dev-python/promise/Manifest
deleted file mode 100644
index e5feb8bad..000000000
--- a/dev-python/promise/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST promise-2.3.0.tar.gz 28147 BLAKE2B d7ea153e320cbba4fa074355b48ed25fcd5d80679cb7386f7d7c1fd09fe0559c7c970bae9c3121cde99e2cf8b98d6c496e6382b0e2ca14ad35ae9f82425cf376 SHA512 5b0b6879b2a3abe244d85ec4667ea3c594cb5051887af275226d0f05a50e9735b0fbf4c8890bba55d24d0daf45629db2506c53a784025e706a56705600199958
diff --git a/dev-python/promise/metadata.xml b/dev-python/promise/metadata.xml
deleted file mode 100644
index c0fa917a0..000000000
--- a/dev-python/promise/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <maintainer type="person">
- <email>dev@mtbk.me</email>
- <name>Matthew Bakhtiari</name>
- </maintainer>
- <upstream>
- <remote-id type="github">syrusakbary/promise</remote-id>
- <remote-id type="pypi">promise</remote-id>
- <bugs-to>https://github.com/syrusakbary/promise/issues</bugs-to>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/promise/promise-2.3.0.ebuild b/dev-python/promise/promise-2.3.0.ebuild
deleted file mode 100644
index fdb9f7a52..000000000
--- a/dev-python/promise/promise-2.3.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-inherit distutils-r1
-
-DESCRIPTION="Promises/A+ implementation for Python"
-HOMEPAGE="https://github.com/syrusakbary/promise"
-SRC_URI="https://github.com/syrusakbary/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
-BDEPEND="test? (
- dev-python/pytest-asyncio[${PYTHON_USEDEP}]
- dev-python/pytest-benchmark[${PYTHON_USEDEP}]
-)"
-
-distutils_enable_tests pytest
diff --git a/dev-python/proselint/Manifest b/dev-python/proselint/Manifest
new file mode 100644
index 000000000..c25682dc9
--- /dev/null
+++ b/dev-python/proselint/Manifest
@@ -0,0 +1 @@
+DIST proselint-0.13.0.tar.gz 96876 BLAKE2B 780d1c217244e7909fb017d4c8fe4061e8328280119694f6e40630393f52bd00498382d3944d598f34751c7afecbcf5f2e76f1e204b073d28cd363452683e91f SHA512 6379c63fba0be8c5944c67ef4d3c0fd4ae4deb0076813531cddcdbc632bb254a4e213f88f07d96679465d740c1936a2b1502f852959a8ac9789ab1b983b8a0ef
diff --git a/dev-python/proselint/proselint-0.13.0.ebuild b/dev-python/proselint/proselint-0.13.0.ebuild
new file mode 100644
index 000000000..e57c13d5f
--- /dev/null
+++ b/dev-python/proselint/proselint-0.13.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYPI_PN=${PN^}
+PYTHON_COMPAT=( pypy3 python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A linter for prose"
+HOMEPAGE="
+ https://github.com/amperser/proselint/
+ https://pypi.org/project/proselint/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/click-8.0.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/protego/Manifest b/dev-python/protego/Manifest
new file mode 100644
index 000000000..de7a545a1
--- /dev/null
+++ b/dev-python/protego/Manifest
@@ -0,0 +1 @@
+DIST protego-0.3.0.tar.gz 3189825 BLAKE2B 79981352f9916f448416ebfabba2b96eb72ff2ac56065161a4a7e852bbb202e0ec56943ac4276bc808c3cd8f4efb41bbb3b7ab500b674f798024ae7568d99388 SHA512 79f3e20dd33120f67d1790b0faa29762b7f81b03c5f2501bd53be020c59b8dbe6536c952da41df60499344487a2db2f442e0d41510df975f14834724d974b34a
diff --git a/dev-python/protego/metadata.xml b/dev-python/protego/metadata.xml
new file mode 100644
index 000000000..d063fdace
--- /dev/null
+++ b/dev-python/protego/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">scrapy/protego</remote-id>
+ <remote-id type="pypi">protego</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/protego/protego-0.3.0.ebuild b/dev-python/protego/protego-0.3.0.ebuild
new file mode 100644
index 000000000..547d68965
--- /dev/null
+++ b/dev-python/protego/protego-0.3.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Pure-Python robots.txt parser with support for modern conventions"
+HOMEPAGE="
+ https://scrapy.org/
+ https://pypi.org/project/protego/
+ https://github.com/scrapy/protego
+"
+SRC_URI="https://github.com/scrapy/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT=0
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
diff --git a/dev-python/proxy_tools/Manifest b/dev-python/proxy_tools/Manifest
new file mode 100644
index 000000000..dd50f3ffd
--- /dev/null
+++ b/dev-python/proxy_tools/Manifest
@@ -0,0 +1 @@
+DIST proxy_tools-0.1.0_p1.gh.tar.gz 9405 BLAKE2B 26a28c3346a687325bb5a0e1fbce034522de67626fb345b8583afbb91fde4b4cc89aaa532bedf113ba17b47a6212fc5899d9069032754faee9f16c0d818d5a58 SHA512 d9cdf2d175e2bce452c8e5132732f90a2cd8f7e86e49cd7041752b710530625c5798d5078ad22ca7ec9980d5d91d3823c0fc64030597763084023df0a79f0a61
diff --git a/dev-python/proxy_tools/metadata.xml b/dev-python/proxy_tools/metadata.xml
new file mode 100644
index 000000000..e78c0355e
--- /dev/null
+++ b/dev-python/proxy_tools/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@tastytea.de</email>
+ <name>tastytea</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jtushman/proxy_tools</remote-id>
+ <remote-id type="pypi">proxy_tools</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/proxy_tools/proxy_tools-0.1.0_p1.ebuild b/dev-python/proxy_tools/proxy_tools-0.1.0_p1.ebuild
new file mode 100644
index 000000000..4696ed71f
--- /dev/null
+++ b/dev-python/proxy_tools/proxy_tools-0.1.0_p1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517="setuptools"
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+MY_COMMIT="db43f1e35d4f90a65c5a4d56d9e9af88212ec6e6"
+
+DESCRIPTION="Simple proxy (as in the GoF design pattern)"
+HOMEPAGE="https://pypi.org/project/proxy_tools/"
+# pypi tarballs are missing test data
+SRC_URI="https://github.com/jtushman/${PN}/archive/${MY_COMMIT}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}"/${PN}-${MY_COMMIT}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# dev-python/nose removed from ::gentoo
+RESTRICT="test"
+
+# distutils_enable_tests nose
diff --git a/dev-python/psycopg2cffi/Manifest b/dev-python/psycopg2cffi/Manifest
new file mode 100644
index 000000000..d267c2e40
--- /dev/null
+++ b/dev-python/psycopg2cffi/Manifest
@@ -0,0 +1 @@
+DIST psycopg2cffi-2.9.0.gh.tar.gz 117682 BLAKE2B 9fe983f8f72fe384b1946143331b17dbcd03d12579241c7444d0d1c8bb7d51ed9576eace780ae3dd58c2d621b21f045347e25692514fa2fbbee2aac21ef89adb SHA512 520c4aaad33916ff5e1a7089888e04134bd5ad6f3115415a3dd04fb48afdc8ad0c68bf9e71d9158640392d3a2cd0b280eea8fa7a3d2ed63944e234d52f8cce43
diff --git a/dev-python/psycopg2cffi/files/psycopg2cffi-2.9.0-include-tests.patch b/dev-python/psycopg2cffi/files/psycopg2cffi-2.9.0-include-tests.patch
new file mode 100644
index 000000000..1237fa7d5
--- /dev/null
+++ b/dev-python/psycopg2cffi/files/psycopg2cffi-2.9.0-include-tests.patch
@@ -0,0 +1,10 @@
+--- a/setup.py
++++ b/setup.py
+@@ -57,7 +57,7 @@ setup_kwargs = dict(
+ description=README[0].strip(),
+ long_description=''.join(README),
+ test_suite='psycopg2cffi.tests.suite',
+- packages=['psycopg2cffi', 'psycopg2cffi._impl', 'psycopg2cffi.tests'],
++ packages=['psycopg2cffi', 'psycopg2cffi._impl', 'psycopg2cffi.tests', 'psycopg2cffi.tests.psycopg2_tests'],
+ install_requires=['six'],
+ )
diff --git a/dev-python/psycopg2cffi/metadata.xml b/dev-python/psycopg2cffi/metadata.xml
new file mode 100644
index 000000000..984630c12
--- /dev/null
+++ b/dev-python/psycopg2cffi/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <bugs-to>https://github.com/chtd/psycopg2cffi/issues</bugs-to>
+ <remote-id type="pypi">psycopg2cffi</remote-id>
+ <remote-id type="github">chtd/psycopg2cffi</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/psycopg2cffi/psycopg2cffi-2.9.0-r1.ebuild b/dev-python/psycopg2cffi/psycopg2cffi-2.9.0-r1.ebuild
new file mode 100644
index 000000000..e8f52a83d
--- /dev/null
+++ b/dev-python/psycopg2cffi/psycopg2cffi-2.9.0-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit databases distutils-r1 edo
+
+DESCRIPTION="Implementation of the psycopg2 module using cffi. Compatible with Psycopg 2.5."
+HOMEPAGE="
+ https://pypi.org/project/psycopg2cffi/
+ https://github.com/chtd/psycopg2cffi
+"
+SRC_URI="https://github.com/chtd/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="dev-db/postgresql:="
+RDEPEND="
+ ${DEPEND}
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ $(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]' 'python*')
+ test? ( ${DATABASES_DEPEND[postgres]} )
+"
+
+PATCHES=( "${FILESDIR}"/${P}-include-tests.patch )
+
+EPYTEST_DESELECT=(
+ # hang
+ tests/psycopg2_tests/test_cancel.py::CancelTests::test_async_cancel
+ # fail
+ tests/psycopg2_tests/test_dates.py::FromTicksTestCase::test_date_value_error_sec_59_99
+ tests/psycopg2_tests/test_types_basic.py::TypesBasicTests::testEmptyArray
+)
+
+distutils_enable_tests pytest
+
+python_test() {
+ cd "${T}" || die
+ epytest --pyargs ${PN}
+}
+
+src_test() {
+ local -x PSYCOPG2_TESTDB_HOST="localhost"
+ local -x PSYCOPG2_TESTDB_PORT="55432"
+ local -x PSYCOPG2_TESTDB_USER="postgres"
+ epostgres --start ${PSYCOPG2_TESTDB_PORT}
+ edo createdb -h ${PSYCOPG2_TESTDB_HOST} -p ${PSYCOPG2_TESTDB_PORT} -U postgres psycopg2_test
+
+ distutils-r1_src_test
+ epostgres --stop
+}
diff --git a/dev-python/pure-protobuf/Manifest b/dev-python/pure-protobuf/Manifest
index b69eeb270..e61777204 100644
--- a/dev-python/pure-protobuf/Manifest
+++ b/dev-python/pure-protobuf/Manifest
@@ -1,2 +1 @@
-DIST pure-protobuf-2.0.0.tar.gz 17576 BLAKE2B 49979559b3c08eb9abdddfa80e78ca4d953347a005b042d5b69aa4c6caef185c358408b1bf54d9161c0cadf69422b1ed033c74b324e947328c55f8b6ec4fd050 SHA512 a8d5211f34d0d6fab28d8b54fb3bb87d41a13b61a01f6f79f47fc1c0eafaf1ab17ddfd323c1035fcd4794b7b23823f48f38af3aa485835683f824cdd4689b098
-DIST pure-protobuf-2.0.1.tar.gz 17818 BLAKE2B 8c2e44d8b3f1a36ee6a5835abfc6cbd6728f913a7a79f90807310e292ac5947e91bbcac6fd02d4bf9c5830eac38d66e90ec869c38289bd7f906590b786cdef0a SHA512 8a14eca81009fd81526552b6556ba6a86fac1fb3d65ab560ff6b547ffd64dde53cc0f66ddfba66df89ea46a13f40442cf3bddb0f0da4b78465380845e6f6ab19
+DIST pure_protobuf-3.0.1.tar.gz 18228 BLAKE2B c714bcd78763e854e9e690b98d4166cf8395511ad8fa8a37692daeec86463e99a884069b3da927a594b6204a5c8b3810b2fac5d7d1075794891d1843a232a2ba SHA512 f08005d2fbeda2d5cfc0f066cb88da350ba3ff7d8ee8922c58b77936360782c5e5ac40f8a5a98377c65c7a0d0df5e10d16fafa082f0a6caddbf6450782551ab0
diff --git a/dev-python/pure-protobuf/files/pure-protobuf-3.0.1-static-version.patch b/dev-python/pure-protobuf/files/pure-protobuf-3.0.1-static-version.patch
new file mode 100644
index 000000000..39e1d7f6c
--- /dev/null
+++ b/dev-python/pure-protobuf/files/pure-protobuf-3.0.1-static-version.patch
@@ -0,0 +1,12 @@
+We don't need dynamic versioning, replace with default backend.
+--- a/pyproject.toml 2024-03-06 20:59:32.071133500 +0900
++++ b/pyproject.toml 2024-03-06 21:00:01.002037882 +0900
+@@ -31,7 +31,7 @@
+
+ [build-system]
+ requires = ["poetry-core", "poetry-dynamic-versioning"]
+-build-backend = "poetry_dynamic_versioning.backend"
++build-backend = "poetry.core.masonry.api"
+
+ [tool.poetry.dependencies]
+ get-annotations = { version = "^0.1.2", python = "<3.10" }
diff --git a/dev-python/pure-protobuf/files/pure-protobuf-do-not-install-tests.patch b/dev-python/pure-protobuf/files/pure-protobuf-do-not-install-tests.patch
deleted file mode 100644
index 6da5a8db4..000000000
--- a/dev-python/pure-protobuf/files/pure-protobuf-do-not-install-tests.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/setup.py b/setup.py
-index deb6c95..2ae6c69 100644
---- a/setup.py
-+++ b/setup.py
-@@ -9,7 +9,7 @@ setup(
- author='Pavel Perestoronin',
- author_email='eigenein@gmail.com',
- url='https://github.com/eigenein/protobuf',
-- packages=find_packages(exclude=['tests']),
-+ packages=find_packages(exclude=['tests*']),
- zip_safe=True,
- install_requires=[
- 'dataclasses>=0.6,<1.0; python_version < "3.7"',
diff --git a/dev-python/pure-protobuf/metadata.xml b/dev-python/pure-protobuf/metadata.xml
index 3bc815f85..ba7bff730 100644
--- a/dev-python/pure-protobuf/metadata.xml
+++ b/dev-python/pure-protobuf/metadata.xml
@@ -1,12 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>xgqt@riseup.net</email>
- <name>Maciej Barć</name>
- </maintainer>
- <upstream>
- <remote-id type="github">eigenein/protobuf</remote-id>
- <remote-id type="pypi">pure-protobuf</remote-id>
- </upstream>
+ <maintainer type="person">
+ <email>pastalian46@gmail.com</email>
+ <name>Takuya Wakazono</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">eigenein/protobuf</remote-id>
+ <remote-id type="pypi">pure-protobuf</remote-id>
+ <maintainer>
+ <name>Pavel Perestoronin</name>
+ <email>eigenein@gmail.com</email>
+ </maintainer>
+ <bugs-to>https://github.com/eigenein/protobuf/issues</bugs-to>
+ <changelog>https://github.com/eigenein/protobuf/blob/master/CHANGELOG.md</changelog>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/pure-protobuf/pure-protobuf-2.0.0-r1.ebuild b/dev-python/pure-protobuf/pure-protobuf-2.0.0-r1.ebuild
deleted file mode 100644
index 6a8ddac5f..000000000
--- a/dev-python/pure-protobuf/pure-protobuf-2.0.0-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_8 )
-
-inherit distutils-r1
-
-DESCRIPTION="A more Pythonic version of doxypy, a Doxygen filter for Python"
-HOMEPAGE="
- https://github.com/eigenein/protobuf
- https://pypi.org/project/pure-protobuf/
-"
-SRC_URI="https://github.com/eigenein/protobuf/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-S="${WORKDIR}/protobuf-${PV}"
-
-distutils_enable_tests pytest
-
-PATCHES="${FILESDIR}/${PN}-do-not-install-tests.patch"
diff --git a/dev-python/pure-protobuf/pure-protobuf-2.0.1.ebuild b/dev-python/pure-protobuf/pure-protobuf-2.0.1.ebuild
deleted file mode 100644
index 916df6400..000000000
--- a/dev-python/pure-protobuf/pure-protobuf-2.0.1.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="A more Pythonic version of doxypy, a Doxygen filter for Python"
-HOMEPAGE="
- https://github.com/eigenein/protobuf
- https://pypi.org/project/pure-protobuf/
-"
-SRC_URI="https://github.com/eigenein/protobuf/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-S="${WORKDIR}/protobuf-${PV}"
-
-distutils_enable_tests pytest
diff --git a/dev-python/pure-protobuf/pure-protobuf-3.0.1.ebuild b/dev-python/pure-protobuf/pure-protobuf-3.0.1.ebuild
new file mode 100644
index 000000000..791915bfb
--- /dev/null
+++ b/dev-python/pure-protobuf/pure-protobuf-3.0.1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=poetry
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python implementation of Protocol Buffers data types with dataclasses support"
+HOMEPAGE="
+ https://github.com/eigenein/protobuf
+ https://pypi.org/project/pure-protobuf/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/typing-extensions[${PYTHON_USEDEP}]"
+
+PATCHES=( "${FILESDIR}/${P}-static-version.patch" )
diff --git a/dev-python/py-nanoid/metadata.xml b/dev-python/py-nanoid/metadata.xml
new file mode 100644
index 000000000..30afa2949
--- /dev/null
+++ b/dev-python/py-nanoid/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">nanoid</remote-id>
+ <remote-id type="github">puyuan/py-nanoid</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/py-nanoid/py-nanoid-9999.ebuild b/dev-python/py-nanoid/py-nanoid-9999.ebuild
new file mode 100644
index 000000000..6b00fa5da
--- /dev/null
+++ b/dev-python/py-nanoid/py-nanoid-9999.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+
+inherit distutils-r1 git-r3
+
+DESCRIPTION="Python Nanoid"
+HOMEPAGE="https://github.com/puyuan/py-nanoid https://pypi.org/project/nanoid"
+EGIT_REPO_URI="https://github.com/puyuan/py-nanoid.git"
+
+LICENSE="MIT"
+SLOT="0"
+
+distutils_enable_tests pytest
diff --git a/dev-python/py3nvml/Manifest b/dev-python/py3nvml/Manifest
deleted file mode 100644
index a0da7741f..000000000
--- a/dev-python/py3nvml/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST py3nvml-0.2.6.tar.gz 57550 BLAKE2B eac7bff77560fa97583e17a7988d87d373d6d1caa8a762565598d18685672723acb96e7e670183dc476c65784cf3c14d8829a5e90626f59de1b17728ee6e8a55 SHA512 c0fece187bc03a74da87d96a8157fc101ce4a0307049f5ce092555056286317d607158ce0eef492f94d024e55e29fa40bc8315b96417d17b8d1da56c5424dd57
diff --git a/dev-python/py3nvml/py3nvml-0.2.6.ebuild b/dev-python/py3nvml/py3nvml-0.2.6.ebuild
deleted file mode 100644
index 7f7b58005..000000000
--- a/dev-python/py3nvml/py3nvml-0.2.6.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-inherit distutils-r1
-
-DESCRIPTION="Python 3 Bindings for the NVIDIA Management Library"
-HOMEPAGE="
- https://pypi.org/project/py3nvml
- https://github.com/fbcotter/py3nvml
-"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-KEYWORDS="~amd64"
-LICENSE="BSD"
-SLOT="0"
diff --git a/dev-python/pyagentx/Manifest b/dev-python/pyagentx/Manifest
new file mode 100644
index 000000000..0333352a6
--- /dev/null
+++ b/dev-python/pyagentx/Manifest
@@ -0,0 +1 @@
+DIST pyagentx-0.4.tar.gz 11353 BLAKE2B 1ae8197431a60651de61577d384ff3168ee2beb4bf6ce5cb2ccb4fbd9482f808c875301225e2d871e3fde94828e3291604f61e358570074b64af2271005e3f7f SHA512 2c13dc04b926fa0d6d7df24d577fc37d08440145adbc5e9ec45f99157da40d92afd7bd7e875e3d980b83330ee66ccde8649698cd967c150056db19cbbc4f7f6b
diff --git a/dev-python/pyagentx/files/python3.patch b/dev-python/pyagentx/files/python3.patch
new file mode 100644
index 000000000..63ea7d1a6
--- /dev/null
+++ b/dev-python/pyagentx/files/python3.patch
@@ -0,0 +1,255 @@
+commit dd1f0e84f8e321789264aec5ada0f1cb4d9ac8af
+Author: Ondrej Mular <omular@redhat.com>
+Date: Tue Nov 21 08:40:55 2017 +0100
+
+ Port to python3
+
+diff --git a/pyagentx/__init__.py b/pyagentx/__init__.py
+index efeef10..d4fd627 100644
+--- a/pyagentx/__init__.py
++++ b/pyagentx/__init__.py
+@@ -1,5 +1,10 @@
+ #!/usr/bin/env python
+ # -*- coding: utf-8 -*-
++from __future__ import (
++ absolute_import,
++ division,
++ print_function,
++)
+
+ import logging
+
+diff --git a/pyagentx/agent.py b/pyagentx/agent.py
+index b6c0e2a..2db39db 100644
+--- a/pyagentx/agent.py
++++ b/pyagentx/agent.py
+@@ -1,5 +1,10 @@
+ #!/usr/bin/env python
+ # -*- coding: utf-8 -*-
++from __future__ import (
++ absolute_import,
++ division,
++ print_function,
++)
+
+ # --------------------------------------------
+ import logging
+@@ -11,8 +16,11 @@ logger.addHandler(NullHandler())
+ # --------------------------------------------
+
+ import time
+-import Queue
+ import inspect
++try:
++ import queue
++except ImportError:
++ import Queue as queue
+
+ import pyagentx
+ from pyagentx.updater import Updater
+@@ -57,18 +65,18 @@ class Agent(object):
+ pass
+
+ def start(self):
+- queue = Queue.Queue(maxsize=20)
++ update_queue = queue.Queue(maxsize=20)
+ self.setup()
+ # Start Updaters
+ for u in self._updater_list:
+ logger.debug('Starting updater [%s]' % u['oid'])
+ t = u['class']()
+- t.agent_setup(queue, u['oid'], u['freq'])
++ t.agent_setup(update_queue, u['oid'], u['freq'])
+ t.start()
+ self._threads.append(t)
+ # Start Network
+ oid_list = [u['oid'] for u in self._updater_list]
+- t = Network(queue, oid_list, self._sethandlers)
++ t = Network(update_queue, oid_list, self._sethandlers)
+ t.start()
+ self._threads.append(t)
+ # Do nothing ... just wait for someone to stop you
+diff --git a/pyagentx/network.py b/pyagentx/network.py
+index 9711398..f30edad 100644
+--- a/pyagentx/network.py
++++ b/pyagentx/network.py
+@@ -1,5 +1,10 @@
+ #!/usr/bin/env python
+ # -*- coding: utf-8 -*-
++from __future__ import (
++ absolute_import,
++ division,
++ print_function,
++)
+
+ # --------------------------------------------
+ import logging
+@@ -13,7 +18,10 @@ logger.addHandler(NullHandler())
+ import socket
+ import time
+ import threading
+-import Queue
++try:
++ import queue
++except ImportError:
++ import Queue as queue
+
+ import pyagentx
+ from pyagentx.pdu import PDU
+@@ -21,10 +29,10 @@ from pyagentx.pdu import PDU
+
+ class Network(threading.Thread):
+
+- def __init__(self, queue, oid_list, sethandlers):
++ def __init__(self, update_queue, oid_list, sethandlers):
+ threading.Thread.__init__(self)
+ self.stop = threading.Event()
+- self._queue = queue
++ self._queue = update_queue
+ self._oid_list = oid_list
+ self._sethandlers = sethandlers
+
+@@ -84,7 +92,7 @@ class Network(threading.Thread):
+ update_oid = item['oid']
+ update_data = item['data']
+ # clear values with prefix oid
+- for oid in self.data.keys():
++ for oid in list(self.data.keys()):
+ if oid.startswith(update_oid):
+ del(self.data[oid])
+ # insert updated value
+@@ -94,7 +102,7 @@ class Network(threading.Thread):
+ 'value':row['value']}
+ # recalculate reverse index if data changed
+ self.data_idx = sorted(self.data.keys(), key=lambda k: tuple(int(part) for part in k.split('.')))
+- except Queue.Empty:
++ except queue.Empty:
+ break
+
+
+diff --git a/pyagentx/pdu.py b/pyagentx/pdu.py
+index 0af8e82..ac02a77 100644
+--- a/pyagentx/pdu.py
++++ b/pyagentx/pdu.py
+@@ -1,5 +1,10 @@
+ #!/usr/bin/env python
+ # -*- coding: utf-8 -*-
++from __future__ import (
++ absolute_import,
++ division,
++ print_function,
++)
+
+ # --------------------------------------------
+ import logging
+@@ -68,10 +73,11 @@ class PDU(object):
+
+
+ def encode_octet(self, octet):
++ octet = octet.encode("utf-8")
+ buf = struct.pack('!L', len(octet))
+- buf += str(octet)
++ buf += octet
+ padding = ( 4 - ( len(octet) % 4 ) ) % 4
+- buf += chr(0)* padding
++ buf += chr(0).encode() * padding
+ return buf
+
+
+@@ -107,7 +113,7 @@ class PDU(object):
+
+
+ def encode(self):
+- buf = ''
++ buf = b''
+ if self.type == pyagentx.AGENTX_OPEN_PDU:
+ # timeout
+ buf += struct.pack('!BBBB', 5, 0, 0, 0)
+@@ -169,7 +175,7 @@ class PDU(object):
+ sub_ids.append(t[0])
+ oid = '.'.join(str(i) for i in sub_ids)
+ return oid, ret['include']
+- except Exception, e:
++ except Exception as e:
+ logger.exception('Invalid packing OID header')
+ logger.debug('%s' % pprint.pformat(self.decode_buf))
+
+@@ -196,7 +202,7 @@ class PDU(object):
+ buf = self.decode_buf[:l]
+ self.decode_buf = self.decode_buf[l+padding:]
+ return buf
+- except Exception, e:
++ except Exception as e:
+ logger.exception('Invalid packing octet header')
+
+
+@@ -204,7 +210,7 @@ class PDU(object):
+ try:
+ vtype,_ = struct.unpack('!HH', self.decode_buf[:4])
+ self.decode_buf = self.decode_buf[4:]
+- except Exception, e:
++ except Exception as e:
+ logger.exception('Invalid packing value header')
+ oid,_ = self.decode_oid()
+ if vtype in [pyagentx.TYPE_INTEGER, pyagentx.TYPE_COUNTER32, pyagentx.TYPE_GAUGE32, pyagentx.TYPE_TIMETICKS]:
+@@ -252,7 +258,7 @@ class PDU(object):
+ context = self.decode_octet()
+ logger.debug('Context: %s' % context)
+ return ret
+- except Exception, e:
++ except Exception as e:
+ logger.exception('Invalid packing: %d' % len(self.decode_buf))
+ logger.debug('%s' % pprint.pformat(self.decode_buf))
+
+diff --git a/pyagentx/sethandler.py b/pyagentx/sethandler.py
+index 30a2db5..97839b2 100644
+--- a/pyagentx/sethandler.py
++++ b/pyagentx/sethandler.py
+@@ -1,5 +1,10 @@
+ #!/usr/bin/env python
+ # -*- coding: utf-8 -*-
++from __future__ import (
++ absolute_import,
++ division,
++ print_function,
++)
+
+ # --------------------------------------------
+ import logging
+diff --git a/pyagentx/updater.py b/pyagentx/updater.py
+index 5fb06d4..711f87e 100644
+--- a/pyagentx/updater.py
++++ b/pyagentx/updater.py
+@@ -1,5 +1,10 @@
+ #!/usr/bin/env python
+ # -*- coding: utf-8 -*-
++from __future__ import (
++ absolute_import,
++ division,
++ print_function,
++)
+
+ # --------------------------------------------
+ import logging
+@@ -12,7 +17,11 @@ logger.addHandler(NullHandler())
+
+ import time
+ import threading
+-import Queue
++try:
++ import queue
++except ImportError:
++ import Queue as queue
++
+
+ import pyagentx
+
+@@ -39,7 +48,7 @@ class Updater(threading.Thread):
+ self.update()
+ self._queue.put_nowait({'oid': self._oid,
+ 'data':self._data})
+- except Queue.Full:
++ except queue.Full:
+ logger.error('Queue full')
+ except:
+ logger.exception('Unhandled update exception')
diff --git a/dev-python/pyagentx/files/updater.patch b/dev-python/pyagentx/files/updater.patch
new file mode 100644
index 000000000..6c0b9c4ab
--- /dev/null
+++ b/dev-python/pyagentx/files/updater.patch
@@ -0,0 +1,27 @@
+commit 1f0337b2d481d16936a4921498fe67614687bd38
+Author: Mohammed Alshohayeb <moshohayeb@gmail.com>
+Date: Tue Jun 30 14:40:00 2015 +0300
+
+ permit remote descendants of Updater to be useable
+
+diff --git a/pyagentx/agent.py b/pyagentx/agent.py
+index 173a966..b6c0e2a 100644
+--- a/pyagentx/agent.py
++++ b/pyagentx/agent.py
+@@ -12,6 +12,7 @@ logger.addHandler(NullHandler())
+
+ import time
+ import Queue
++import inspect
+
+ import pyagentx
+ from pyagentx.updater import Updater
+@@ -30,7 +31,7 @@ class Agent(object):
+ self._threads = []
+
+ def register(self, oid, class_, freq=10):
+- if Updater not in class_.__bases__:
++ if Updater not in inspect.getmro(class_):
+ raise AgentError('Class given isn\'t an updater')
+ # cleanup and test oid
+ try:
diff --git a/dev-python/pyagentx/metadata.xml b/dev-python/pyagentx/metadata.xml
new file mode 100644
index 000000000..f24619a8b
--- /dev/null
+++ b/dev-python/pyagentx/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>andrea.postiglione@gmail.com</email>
+ <name>Andrea Postiglione</name>
+ </maintainer>
+ <longdescription lang="en">
+ Pcs is a Corosync and Pacemaker configuration tool. It permits users to easily view, modify and
+ create Pacemaker based clusters. Pcs contains pcsd, a pcs daemon, which operates as a remote server
+ for pcs and provides a web UI.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">ClusterLabs/pcs</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pyagentx/pyagentx-0.4-r1.ebuild b/dev-python/pyagentx/pyagentx-0.4-r1.ebuild
new file mode 100644
index 000000000..571ebd727
--- /dev/null
+++ b/dev-python/pyagentx/pyagentx-0.4-r1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1
+
+DESCRIPTION="Python AgentX Implementation"
+HOMEPAGE="https://github.com/hosthvo/pyagentx"
+SRC_URI="https://github.com/hosthvo/pyagentx/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+PATCHES="${FILESDIR}/updater.patch
+ ${FILESDIR}/python3.patch"
diff --git a/dev-python/pybeam/Manifest b/dev-python/pybeam/Manifest
deleted file mode 100644
index 382848a9e..000000000
--- a/dev-python/pybeam/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pybeam-0.7.tar.gz 12135 BLAKE2B 0eb5afcf087c7d0c559be5ca3466ed61b03451cc5b07a78ae595a2548ad5f8958a9724a44bf3730e96f6a211ba9d0b4fa1ac265fe3571c2962636e770226daa7 SHA512 d67af3941eef6a3fe18d3a0387431fd1df719079aa38f664a370ef700a31093281697ffbea46c8b87b7f3777db55b4b284530fe16e7395ba0f5bba2440d5ae4a
diff --git a/dev-python/pybeam/metadata.xml b/dev-python/pybeam/metadata.xml
deleted file mode 100644
index e2b997549..000000000
--- a/dev-python/pybeam/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/matwey/pybeam/issues</bugs-to>
- <remote-id type="github">matwey/pybeam</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pybeam/pybeam-0.7.ebuild b/dev-python/pybeam/pybeam-0.7.ebuild
deleted file mode 100644
index c07fb21d9..000000000
--- a/dev-python/pybeam/pybeam-0.7.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-DOCS_BUILDER="sphinx"
-DOCS_DIR="doc"
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit distutils-r1 docs
-
-SRC_URI="https://github.com/matwey/pybeam/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-DESCRIPTION="Python module to parse Erlang BEAM files"
-HOMEPAGE="https://github.com/matwey/pybeam"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="dev-python/construct[${PYTHON_USEDEP}]"
-DEPEND="test? ( dev-python/six[${PYTHON_USEDEP}] )"
-
-distutils_enable_tests unittest
diff --git a/dev-python/pybrowserstack-screenshots/Manifest b/dev-python/pybrowserstack-screenshots/Manifest
deleted file mode 100644
index 12ceaa983..000000000
--- a/dev-python/pybrowserstack-screenshots/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pybrowserstack-screenshots-0.1.tar.gz 9186 BLAKE2B 07eb5a9499287845528394ce8dcba3b467c1b5e9acc5cc98f661d098a0cb0a58d41e4245bd71b8270d0fb202ed09be9ff91a6b2c763e99be8f571cb1a01df237 SHA512 eace05de830a74f2db8ae30931d85ab0e606b8cfe029dbd12d55f526e89318bedf37e96e8f552b2a9c6abd561a2a8be1b50a95cd13dd5cc9c82f1ea13bc5b113
diff --git a/dev-python/pybrowserstack-screenshots/metadata.xml b/dev-python/pybrowserstack-screenshots/metadata.xml
deleted file mode 100644
index b777f69e5..000000000
--- a/dev-python/pybrowserstack-screenshots/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/cmck/pybrowserstack-screenshots/issues</bugs-to>
- <remote-id type="github">cmck/pybrowserstack-screenshots</remote-id>
- <remote-id type="pypi">pybrowserstack-screenshot</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pybrowserstack-screenshots/pybrowserstack-screenshots-0.1.ebuild b/dev-python/pybrowserstack-screenshots/pybrowserstack-screenshots-0.1.ebuild
deleted file mode 100644
index dda136c5a..000000000
--- a/dev-python/pybrowserstack-screenshots/pybrowserstack-screenshots-0.1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} pypy3 )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/cmck/pybrowserstack-screenshots/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-DESCRIPTION="A python api wrapper and client for Browserstack Screenshots API"
-HOMEPAGE="https://github.com/cmck/pybrowserstack-screenshots"
-LICENSE="MIT"
-SLOT="0"
-
-RDEPEND="
- dev-python/pillow[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/simplejson[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
diff --git a/dev-python/pycadf/Manifest b/dev-python/pycadf/Manifest
deleted file mode 100644
index 4ee0cb3e9..000000000
--- a/dev-python/pycadf/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pycadf-3.1.1.tar.gz 250143 BLAKE2B f0e8c35d911146e701beeeb209840703a2b5bb56590a00bc363d48c37c825e1e2bb660aedcaa95a45c4523a532ced2cc009781e1d7d524d994bc6afdc66a3041 SHA512 26e83418066d96b4d947965ea43ec3f75a667d40f4d5ed36130eb0bbc6a79bfd212e68b3a54c3db81a7cf670288612e15d40068416fe220e85ecc7670ba735da
diff --git a/dev-python/pycadf/metadata.xml b/dev-python/pycadf/metadata.xml
deleted file mode 100644
index 722cf01b5..000000000
--- a/dev-python/pycadf/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">pycadf</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pycadf/pycadf-3.1.1.ebuild b/dev-python/pycadf/pycadf-3.1.1.ebuild
deleted file mode 100644
index fb6f5a305..000000000
--- a/dev-python/pycadf/pycadf-3.1.1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="python implementation of DMTF Cloud Audit (CADF) data model"
-HOMEPAGE="https://pypi.org/project/pycadf/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND=">=dev-python/pbr-1.8.0[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/pbr-1.8.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-2.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
- >=dev-python/pytz-2013.6[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/pyclip/Manifest b/dev-python/pyclip/Manifest
new file mode 100644
index 000000000..4905f7533
--- /dev/null
+++ b/dev-python/pyclip/Manifest
@@ -0,0 +1 @@
+DIST pyclip-0.7.0.gh.tar.gz 17555 BLAKE2B 281a2dacd82d7501e01750134d82fc0b66ac1d41a631b9573160262c94cfb97ad463036e8ec523674580fdfb71849175e58836530d761462a72ba9ba3f2fd618 SHA512 64849befe020b0ac38aa8ed93ceb7fb275112aa49ae527fc54916ea591e09ce5a1a669d8f68083b098112a90fd36f71d2abeef6c3a8908e6cde20f04b0273877
diff --git a/dev-python/pyclip/metadata.xml b/dev-python/pyclip/metadata.xml
new file mode 100644
index 000000000..9e12ce6a2
--- /dev/null
+++ b/dev-python/pyclip/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>flewkey@2a03.party</email>
+ <name>Ryan Fox</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pyclip</remote-id>
+ <remote-id type="github">spyoungtech/pyclip</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pyclip/pyclip-0.7.0-r1.ebuild b/dev-python/pyclip/pyclip-0.7.0-r1.ebuild
new file mode 100644
index 000000000..88d86ecd7
--- /dev/null
+++ b/dev-python/pyclip/pyclip-0.7.0-r1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+DISTUTILS_USE_PEP517="setuptools"
+
+inherit distutils-r1
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/spyoungtech/pyclip.git"
+else
+ SRC_URI="https://github.com/spyoungtech/pyclip/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+fi
+
+DESCRIPTION="Python clipboard module"
+HOMEPAGE="https://pypi.org/project/pyclip/"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="wayland +X"
+REQUIRED_USE="|| ( wayland X )"
+
+# Needs a working xorg/wayland setup
+RESTRICT="test"
+
+RDEPEND="
+ wayland? ( gui-apps/wl-clipboard )
+ X? ( x11-misc/xclip )
+"
+
+DOCS=( docs/README.md )
+
+src_prepare() {
+ # Clipboard detection should respect USE flags
+ if use wayland && ! use X; then
+ sed -ie "/linux':/s/elif .*/elif False:/" pyclip/util.py || die
+ elif ! use wayland && use X; then
+ sed -ie "/WAYLAND/s/elif .*/elif False:/" pyclip/util.py || die
+ fi
+ distutils-r1_src_prepare
+}
+
+pkg_postinst() {
+ if use wayland && use X; then
+ elog "If you wish to use the xclip backend over the wl-clipboard backend,"
+ elog "unset the WAYLAND_DISPLAY environment variable or consider"
+ elog "installing ${CATEGORY}/${PN}[-wayland,X] instead."
+ fi
+}
diff --git a/dev-python/pyclip/pyclip-9999.ebuild b/dev-python/pyclip/pyclip-9999.ebuild
new file mode 100644
index 000000000..88d86ecd7
--- /dev/null
+++ b/dev-python/pyclip/pyclip-9999.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+
+DISTUTILS_USE_PEP517="setuptools"
+
+inherit distutils-r1
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/spyoungtech/pyclip.git"
+else
+ SRC_URI="https://github.com/spyoungtech/pyclip/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+fi
+
+DESCRIPTION="Python clipboard module"
+HOMEPAGE="https://pypi.org/project/pyclip/"
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="wayland +X"
+REQUIRED_USE="|| ( wayland X )"
+
+# Needs a working xorg/wayland setup
+RESTRICT="test"
+
+RDEPEND="
+ wayland? ( gui-apps/wl-clipboard )
+ X? ( x11-misc/xclip )
+"
+
+DOCS=( docs/README.md )
+
+src_prepare() {
+ # Clipboard detection should respect USE flags
+ if use wayland && ! use X; then
+ sed -ie "/linux':/s/elif .*/elif False:/" pyclip/util.py || die
+ elif ! use wayland && use X; then
+ sed -ie "/WAYLAND/s/elif .*/elif False:/" pyclip/util.py || die
+ fi
+ distutils-r1_src_prepare
+}
+
+pkg_postinst() {
+ if use wayland && use X; then
+ elog "If you wish to use the xclip backend over the wl-clipboard backend,"
+ elog "unset the WAYLAND_DISPLAY environment variable or consider"
+ elog "installing ${CATEGORY}/${PN}[-wayland,X] instead."
+ fi
+}
diff --git a/dev-python/pycpio/Manifest b/dev-python/pycpio/Manifest
new file mode 100644
index 000000000..062e0fe9d
--- /dev/null
+++ b/dev-python/pycpio/Manifest
@@ -0,0 +1,2 @@
+DIST pycpio-1.0.0.tar.gz 17890 BLAKE2B beeec891fc17416280247e8a15373628f40be10946b596889b2d2a14d3e9ab5ee2014e6a4c6f5c4d612385f602e5ae14601cf0e379a165c2ed5d335832b3cfa2 SHA512 1ee2b09f01eab4b8adfd050845ff810b3da663386544321021de1b9a53b7846a31f3a6ab9e132fbffb9eeb04ad2b7b81235f59a333a63c3679d51755b822b320
+DIST pycpio-1.1.2.tar.gz 18207 BLAKE2B acc92b626b5a110b8aa1672449fa1065283edfeb300c406b654e5a045bc554d9f79d3cd8f7edb53142405e600ceec21fa811a863907af3464d310482aa3fc528 SHA512 9a420edabec91e633b618f68878942d047d851eecad861255705f3db3f9fa8d14fa364f19320eb22758bbb7f1b23e7231b5db7aca117e670286e73f1dcb289ce
diff --git a/dev-python/pycpio/metadata.xml b/dev-python/pycpio/metadata.xml
new file mode 100644
index 000000000..a51ad41ff
--- /dev/null
+++ b/dev-python/pycpio/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@pyl.onl</email>
+ <name>Zen</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">desultory/PyCPIO</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pycpio/pycpio-1.0.0.ebuild b/dev-python/pycpio/pycpio-1.0.0.ebuild
new file mode 100644
index 000000000..db2597a46
--- /dev/null
+++ b/dev-python/pycpio/pycpio-1.0.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..12} )
+inherit distutils-r1
+
+DESCRIPTION="Python CPIO library"
+HOMEPAGE="https://github.com/desultory/pycpio"
+SRC_URI="https://github.com/desultory/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="=dev-python/zenlib-2*[${PYTHON_USEDEP}]"
diff --git a/dev-python/pycpio/pycpio-1.1.2.ebuild b/dev-python/pycpio/pycpio-1.1.2.ebuild
new file mode 100644
index 000000000..ebff641e6
--- /dev/null
+++ b/dev-python/pycpio/pycpio-1.1.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..12} )
+inherit distutils-r1
+
+DESCRIPTION="Python CPIO library"
+HOMEPAGE="https://github.com/desultory/pycpio"
+SRC_URI="https://github.com/desultory/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND=">=dev-python/zenlib-2.1.2[${PYTHON_USEDEP}]"
diff --git a/dev-python/pydispatcher/Manifest b/dev-python/pydispatcher/Manifest
new file mode 100644
index 000000000..151dee56a
--- /dev/null
+++ b/dev-python/pydispatcher/Manifest
@@ -0,0 +1 @@
+DIST PyDispatcher-2.0.7.tar.gz 38891 BLAKE2B d29dae502b23a2873534b6a3ec429c730e73584fa6358b7b7f8725f42005096a7d48b208d5a2beb2faa5d2bff762baaa4ed613eca8958dafd167a3a58ff70bfe SHA512 cef4b07e7abcbef54b3af12b49a27e40d145f76d5aa51dfcedc38d76d51c4076c605c0b55e05881dc26ac260a583f119864fa4b4e8ab21d156231b07ef418916
diff --git a/dev-python/pydispatcher/metadata.xml b/dev-python/pydispatcher/metadata.xml
new file mode 100644
index 000000000..dbb18cc47
--- /dev/null
+++ b/dev-python/pydispatcher/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">mcfletch/pydispatcher</remote-id>
+ <remote-id type="pypi">PyDispatcher</remote-id>
+ <maintainer>
+ <name>Mike C. Fletcher</name>
+ <email>mcfletch@vrplumber.com</email>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pydispatcher/pydispatcher-2.0.7.ebuild b/dev-python/pydispatcher/pydispatcher-2.0.7.ebuild
new file mode 100644
index 000000000..5a13b106d
--- /dev/null
+++ b/dev-python/pydispatcher/pydispatcher-2.0.7.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN="PyDispatcher"
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Multi-producer-multi-consumer signal dispatching mechanism"
+HOMEPAGE="https://github.com/mcfletch/pydispatcher"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests unittest
diff --git a/dev-python/pydub/metadata.xml b/dev-python/pydub/metadata.xml
index cbe3c6a53..9e193016c 100644
--- a/dev-python/pydub/metadata.xml
+++ b/dev-python/pydub/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>smaniotto.nicola@gmail.com</email>
<name>Nicola Smaniotto</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">jiaaro/pydub</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/pydub/pydub-0.25.1.ebuild b/dev-python/pydub/pydub-0.25.1.ebuild
index 84210e78f..2b619ab7c 100644
--- a/dev-python/pydub/pydub-0.25.1.ebuild
+++ b/dev-python/pydub/pydub-0.25.1.ebuild
@@ -1,9 +1,10 @@
-# Copyright 2021 Gentoo Authors
+# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{8..9} )
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1 optfeature
diff --git a/dev-python/pyfiglet/Manifest b/dev-python/pyfiglet/Manifest
index f6bf80965..7785bcec6 100644
--- a/dev-python/pyfiglet/Manifest
+++ b/dev-python/pyfiglet/Manifest
@@ -1 +1 @@
-DIST pyfiglet-0.8_p1.tar.gz 634618 BLAKE2B 49268581974e72f28ddb11785a1629a4ac2696bcdd57710147cafdcf7709be8c67bdf03e5ccdb1655a9be6eb8a83baf4ca5ae0a6412e2318d0923376558b8d49 SHA512 3b8c7b4c9ae48466da3ccc6711aac9c35b08a373abbdda66c60a62f17ba6edd316b0d5e3085613f7c44fbaa2f02acc4a5b3830a31d22437d9261863878421400
+DIST pyfiglet-0.8.post1.tar.gz 634618 BLAKE2B 49268581974e72f28ddb11785a1629a4ac2696bcdd57710147cafdcf7709be8c67bdf03e5ccdb1655a9be6eb8a83baf4ca5ae0a6412e2318d0923376558b8d49 SHA512 3b8c7b4c9ae48466da3ccc6711aac9c35b08a373abbdda66c60a62f17ba6edd316b0d5e3085613f7c44fbaa2f02acc4a5b3830a31d22437d9261863878421400
diff --git a/dev-python/pyfiglet/metadata.xml b/dev-python/pyfiglet/metadata.xml
index 741d206c2..a7da40097 100644
--- a/dev-python/pyfiglet/metadata.xml
+++ b/dev-python/pyfiglet/metadata.xml
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>coppens.matthias.abc@gmail.com</email>
- <name>Matthias Coppens</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="github">pwaller/pyfiglet</remote-id>
<remote-id type="pypi">pyfiglet</remote-id>
diff --git a/dev-python/pyfiglet/pyfiglet-0.8_p1.ebuild b/dev-python/pyfiglet/pyfiglet-0.8_p1.ebuild
index 9ac98a1e9..d20c76d1d 100644
--- a/dev-python/pyfiglet/pyfiglet-0.8_p1.ebuild
+++ b/dev-python/pyfiglet/pyfiglet-0.8_p1.ebuild
@@ -1,28 +1,23 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python{3_7,3_8,3_9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-inherit distutils-r1
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
DESCRIPTION="Pure-python FIGlet implementation"
-HOMEPAGE="https://pypi.org/project/pyfiglet/ https://github.com/pwaller/pyfiglet"
-
-if [[ "${PV}" == 9999 ]]
-then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/pwaller/pyfiglet.git"
-else
- MY_PV="$(ver_cut 1-2).post$(ver_cut 4)"
- MY_P="${PN}-${MY_PV}"
- S="${WORKDIR}/${MY_P}"
- SRC_URI="https://files.pythonhosted.org/packages/source/p/pyfiglet/${MY_P}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64"
-fi
+HOMEPAGE="
+ https://pypi.org/project/pyfiglet/
+ https://github.com/pwaller/pyfiglet
+"
LICENSE="MIT"
SLOT="0"
+KEYWORDS="~amd64"
+
+# requires subprocess32
+RESTRICT="test"
-RESTRICT="mirror test"
+distutils_enable_tests pytest
diff --git a/dev-python/pyfiglet/pyfiglet-9999.ebuild b/dev-python/pyfiglet/pyfiglet-9999.ebuild
deleted file mode 100644
index 9ac98a1e9..000000000
--- a/dev-python/pyfiglet/pyfiglet-9999.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python{3_7,3_8,3_9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-inherit distutils-r1
-
-DESCRIPTION="Pure-python FIGlet implementation"
-HOMEPAGE="https://pypi.org/project/pyfiglet/ https://github.com/pwaller/pyfiglet"
-
-if [[ "${PV}" == 9999 ]]
-then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/pwaller/pyfiglet.git"
-else
- MY_PV="$(ver_cut 1-2).post$(ver_cut 4)"
- MY_P="${PN}-${MY_PV}"
- S="${WORKDIR}/${MY_P}"
- SRC_URI="https://files.pythonhosted.org/packages/source/p/pyfiglet/${MY_P}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-
-RESTRICT="mirror test"
diff --git a/dev-python/pygaljs/metadata.xml b/dev-python/pygaljs/metadata.xml
index 112a28df0..d5c9ec090 100644
--- a/dev-python/pygaljs/metadata.xml
+++ b/dev-python/pygaljs/metadata.xml
@@ -1,11 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="github">ionelmc/python-pygaljs</remote-id>
<remote-id type="pypi">pygaljs</remote-id>
diff --git a/dev-python/pygaljs/pygaljs-1.0.2-r1.ebuild b/dev-python/pygaljs/pygaljs-1.0.2-r1.ebuild
index 96857ca1e..ab876876a 100644
--- a/dev-python/pygaljs/pygaljs-1.0.2-r1.ebuild
+++ b/dev-python/pygaljs/pygaljs-1.0.2-r1.ebuild
@@ -1,17 +1,17 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-inherit distutils-r1
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
DESCRIPTION="Python package providing assets from https://github.com/Kozea/pygal.js"
HOMEPAGE="
https://github.com/ionelmc/python-pygaljs
- https://pypi.org/project/pygaljs
+ https://pypi.org/project/pygaljs/
"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="LGPL-3+"
SLOT="0"
diff --git a/dev-python/pygments-promql/Manifest b/dev-python/pygments-promql/Manifest
new file mode 100644
index 000000000..f9e92727f
--- /dev/null
+++ b/dev-python/pygments-promql/Manifest
@@ -0,0 +1 @@
+DIST pygments-promql-0.0.9.gh.tar.gz 97971 BLAKE2B 77413cad92374b9ac0f6dc6b5f8453c639f3da77abc7014f81e9392c59a36010da71eba50a445a4c4ebbd485f982e7946237a5a8dfed5c90841e93dcd226135d SHA512 5e0138fbf6f303609adcbd7c5d3142a5d10d84f3e64ee55973d129f39f85425484d79d988708f1bf2ceeb97b8752f59407bb453c5f352be2b6de7da975de432d
diff --git a/dev-python/pygments-promql/metadata.xml b/dev-python/pygments-promql/metadata.xml
new file mode 100644
index 000000000..7c14b4f58
--- /dev/null
+++ b/dev-python/pygments-promql/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mathieu.tortuyaux@gmail.com</email>
+ <name>Mathieu Tortuyaux</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pygments-promql</remote-id>
+ <remote-id type="github">pabluk/pygments-promql</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pygments-promql/pygments-promql-0.0.9-r1.ebuild b/dev-python/pygments-promql/pygments-promql-0.0.9-r1.ebuild
new file mode 100644
index 000000000..c8cad2833
--- /dev/null
+++ b/dev-python/pygments-promql/pygments-promql-0.0.9-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1
+
+DESCRIPTION="A PromQL lexer for Pygments"
+HOMEPAGE="https://github.com/pabluk/pygments-promql"
+SRC_URI="https://github.com/pabluk/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="dev-python/pygments[${PYTHON_USEDEP}]"
+RDEPEND="${DEPEND}"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pygsl/Manifest b/dev-python/pygsl/Manifest
index e479405dd..22476ec8b 100644
--- a/dev-python/pygsl/Manifest
+++ b/dev-python/pygsl/Manifest
@@ -1 +1 @@
-DIST pygsl-2.3.0.tar.gz 1096186 BLAKE2B 9058d7f674ce8d8071e51c80ae7ff2a32909cb495df7f78223f9d98f2a2b6afb32e180ce13a1b413924c7c1a8a1c840d2c1122edbe00a80cb66e27dc752ffaed SHA512 66e466c37d402605e05f0b5b2d7c52c406593d31c2a886934419b45e0b4390259c57e70bce32a46146b7f2ad0b28266f517cdb10fddd73dec7975103bb445d08
+DIST pygsl-2.3.4.gh.tar.gz 1100233 BLAKE2B 0d59062ae7a6193225ac731a9a12a7c32df9c309a90e358fd77f7c957f8d27269e97634022036aa7b1d99e2c3703a7c45387c97557c4e28762310009626cb465 SHA512 4b510426bafc06c79742f0ef0ad07e31a7aa74c14bab88bd2f0a2acb125569ecf38aeab0eaf01590bd052474a4aa7f8b39a66f853e4bc4a392e126dcf4bfb359
diff --git a/dev-python/pygsl/metadata.xml b/dev-python/pygsl/metadata.xml
index dd07b6e90..1300b83b8 100644
--- a/dev-python/pygsl/metadata.xml
+++ b/dev-python/pygsl/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
- <upstream>
- <remote-id type="pypi">pygsl</remote-id>
- </upstream>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">pygsl</remote-id>
+ <remote-id type ="github">pygsl/pygsl</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/pygsl/pygsl-2.3.0.ebuild b/dev-python/pygsl/pygsl-2.3.0.ebuild
deleted file mode 100644
index 9c9c2bc4c..000000000
--- a/dev-python/pygsl/pygsl-2.3.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python interface for the GNU scientific library (gsl)"
-HOMEPAGE="http://pygsl.sourceforge.net/ https://pypi.org/project/pygsl/"
-SRC_URI="mirror://sourceforge/project/${PN}/${PN}/${P}/${P}.tar.gz"
-
-SLOT="0"
-LICENSE="GPL-2"
-KEYWORDS="~amd64 ~x86"
-
-# This is a mess
-RESTRICT="test"
-IUSE="examples"
-
-DEPEND="
- sci-libs/gsl
- dev-python/numpy[${PYTHON_USEDEP}]
-"
-
-distutils_enable_sphinx doc dev-python/sphinx_rtd_theme
-distutils_enable_tests nose
-
-python_configure() {
- esetup.py config
- default
-}
-
-python_install_all() {
- use examples && dodoc -r examples
- default
-}
diff --git a/dev-python/pygsl/pygsl-2.3.4.ebuild b/dev-python/pygsl/pygsl-2.3.4.ebuild
new file mode 100644
index 000000000..0674001ef
--- /dev/null
+++ b/dev-python/pygsl/pygsl-2.3.4.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python interface for the GNU scientific library (gsl)"
+HOMEPAGE="https://github.com/pygsl/pygsl"
+SRC_URI="https://github.com/pygsl/pygsl/archive/v.${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${PN}-v.${PV}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="examples"
+# Tests are also failing upstream
+# https://github.com/pygsl/pygsl/issues/15
+RESTRICT="test"
+
+DEPEND="
+ sci-libs/gsl
+ dev-python/numpy[${PYTHON_USEDEP}]
+"
+
+distutils_enable_sphinx doc dev-python/sphinx-rtd-theme
+distutils_enable_tests pytest
+
+src_install() {
+ use examples && dodoc -r examples
+ distutils-r1_src_install
+}
diff --git a/dev-python/pyinquirer/Manifest b/dev-python/pyinquirer/Manifest
deleted file mode 100644
index 2792ab6eb..000000000
--- a/dev-python/pyinquirer/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST PyInquirer-1.0.3_p20200708.tar.gz 128841 BLAKE2B 45dcb13d0f500e808057d4bf8e671d24c67efe13fc5d61ec12d8ec1f8f829addd72d61e8fd6005b05f63ba6a02962ffb17603db73220755142eec2170ff7659f SHA512 37665164da9fd7ccfe2b43036afb8a771fd85871b89675c970cf20925e61277239e2a1bc6be3bba1daabdafe1fe7183e63d20dadaf6a0cc95d7bc491a54197b9
diff --git a/dev-python/pyinquirer/metadata.xml b/dev-python/pyinquirer/metadata.xml
deleted file mode 100644
index 3812b4e16..000000000
--- a/dev-python/pyinquirer/metadata.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>coppens.matthias.abc@gmail.com</email>
- <name>Matthias Coppens</name>
- </maintainer>
- <longdescription lang="en">
- PyInquirer strives to be an easily embeddable and beautiful
- command line interface for Python. PyInquirer wants to make it
- easy for existing Inquirer.js users to write immersive
- command line applications in Python. We are convinced that its
- feature-set is the most complete for building immersive
- CLI applications. We also hope that PyInquirer proves itself
- useful to Python users.
- </longdescription>
- <upstream>
- <remote-id type="github">CITGuru/PyInquirer</remote-id>
- <remote-id type="pypi">PyInquirer</remote-id>
- <bugs-to>https://github.com/CITGuru/PyInquirer/issues</bugs-to>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pyinquirer/pyinquirer-1.0.3_p20200708.ebuild b/dev-python/pyinquirer/pyinquirer-1.0.3_p20200708.ebuild
deleted file mode 100644
index 28cbe933e..000000000
--- a/dev-python/pyinquirer/pyinquirer-1.0.3_p20200708.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PN0="PyInquirer"
-P0="${PN0}-${PV}"
-COMMIT="7485a1fd5442332399d5f05c84e4fd74b63a5823"
-
-EGIT_REPO_URI="https://github.com/CITGuru/${PN0}"
-case "${PV}" in
- 9999)
- inherit git-r3
- ;;
- *)
- SRC_URI="${EGIT_REPO_URI}/archive/${COMMIT}.tar.gz -> ${P0}.tar.gz"
- KEYWORDS="~amd64"
- S="${WORKDIR}/${PN0}-${COMMIT}"
-esac
-
-PYTHON_COMPAT=( python3_{7,8} )
-inherit distutils-r1
-# conf.py gone???
-#distutils_enable_sphinx docs
-distutils_enable_tests pytest
-
-DESCRIPTION="A Python module for common interactive command line UIs"
-HOMEPAGE="https://github.com/CITGuru/PyInquirer"
-LICENSE="MIT"
-
-SLOT="0"
-
-# Tests are outdated, they fail for >dev-python/ptyprocess-0.5.1
-RESTRICT="test"
-
-RDEPEND="
- >=dev-python/prompt_toolkit-3.0.0[${PYTHON_USEDEP}]
- <dev-python/prompt_toolkit-3.1.0[${PYTHON_USEDEP}]
- >=dev-python/pygments-2.2.0[${PYTHON_USEDEP}]"
-DEPEND="
- ${RDEPEND}
- test? (
- dev-python/testfixtures[${PYTHON_USEDEP}]
- >=dev-python/pytest-html-1.10.1[${PYTHON_USEDEP}]
- >=dev-python/pytest-xdist-1.15.0[${PYTHON_USEDEP}]
- >=dev-python/ptyprocess-0.5.1[${PYTHON_USEDEP}]
- >=dev-python/regex-2016.11.21[${PYTHON_USEDEP}] )"
-
-src_prepare() {
- default
- sed -i -e 's/packages=find_packages(exclude=\[/\0"examples", /' setup.py ||
- die "Failed to patch setup.py"
-}
diff --git a/dev-python/pyinquirer/pyinquirer-9999.ebuild b/dev-python/pyinquirer/pyinquirer-9999.ebuild
deleted file mode 100644
index 72bb957c1..000000000
--- a/dev-python/pyinquirer/pyinquirer-9999.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PN0="PyInquirer"
-P0="${PN0}-${PV}"
-
-EGIT_REPO_URI="https://github.com/CITGuru/${PN0}"
-case "${PV}" in
- 9999)
- inherit git-r3
- ;;
- *)
- SRC_URI="${EGIT_REPO_URI}/archive/${PV}.tar.gz -> ${P0}.tar.gz"
- KEYWORDS="~amd64"
- S="${WORKDIR}/${P0}"
-esac
-
-PYTHON_COMPAT=( python3_{7,8} )
-inherit distutils-r1
-distutils_enable_sphinx docs
-distutils_enable_tests pytest
-
-DESCRIPTION="A Python module for common interactive command line UIs"
-HOMEPAGE="https://github.com/CITGuru/PyInquirer"
-LICENSE="MIT"
-
-SLOT="0"
-
-# Tests are outdated, they fail for >dev-python/ptyprocess-0.5.1
-RESTRICT="test"
-
-RDEPEND="
- >=dev-python/prompt_toolkit-3.0.0[${PYTHON_USEDEP}]
- <dev-python/prompt_toolkit-3.1.0[${PYTHON_USEDEP}]
- >=dev-python/pygments-2.2.0[${PYTHON_USEDEP}]"
-DEPEND="
- ${RDEPEND}
- test? (
- dev-python/testfixtures[${PYTHON_USEDEP}]
- >=dev-python/pytest-html-1.10.1[${PYTHON_USEDEP}]
- >=dev-python/pytest-xdist-1.15.0[${PYTHON_USEDEP}]
- >=dev-python/ptyprocess-0.5.1[${PYTHON_USEDEP}]
- >=dev-python/regex-2016.11.21[${PYTHON_USEDEP}] )"
-
-src_prepare() {
- default
- sed -i -e 's/packages=find_packages(exclude=\[/\0"examples", /' setup.py ||
- die "Failed to patch setup.py"
-}
diff --git a/dev-python/pyinstaller/Manifest b/dev-python/pyinstaller/Manifest
deleted file mode 100644
index c31d065ba..000000000
--- a/dev-python/pyinstaller/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pyinstaller-4.2.tar.gz 3596102 BLAKE2B 2b273c043c4b584741cb4a4a2ef1df5b4305c775155f7195d2441b7dd69d169b768143d11141df6e0b3a27400f4f978460f0c923192c21695c26d0189a2b8855 SHA512 54acf059756cbbaa37fb559e9691dc8b3af77f7f57885f8fb142050662769f9138477686d0b768274f23166d2d327b4f9d4924b7077cdf1736790d7e2a3e161d
diff --git a/dev-python/pyinstaller/metadata.xml b/dev-python/pyinstaller/metadata.xml
deleted file mode 100644
index ad8cead24..000000000
--- a/dev-python/pyinstaller/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>svdm-gentoo@protonmail.com</email>
- <name>Simon van der Maas</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/pyinstaller/pyinstaller-4.2.ebuild b/dev-python/pyinstaller/pyinstaller-4.2.ebuild
deleted file mode 100644
index a9be3e283..000000000
--- a/dev-python/pyinstaller/pyinstaller-4.2.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-inherit distutils-r1
-
-DESCRIPTION="Bundles a Python application and all its dependencies into a single package."
-HOMEPAGE="https://pypi.org/project/pyinstaller/"
-SRC_URI="https://files.pythonhosted.org/packages/b4/83/9f6ff034650abe9778c9a4f86bcead63f89a62acf02b1b47fc2bfc6bf8dd/${P}.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~amd64"
-
-QA_PRESTRIPPED="usr/lib/python.*/site-packages/PyInstaller/bootloader/Linux-.*/run.*"
diff --git a/dev-python/pykeepass/Manifest b/dev-python/pykeepass/Manifest
index cdbff95aa..0418ac4d0 100644
--- a/dev-python/pykeepass/Manifest
+++ b/dev-python/pykeepass/Manifest
@@ -1 +1 @@
-DIST pykeepass-4.0.0.tar.gz 88720 BLAKE2B 7dcce1ded4527f32e0a602d9a7b742fabd32ee6c5e6836f0d4d217c3117177f258e974275670c9cea408e05335004996bea6a68ba12fe02ac30b0276ac7cfb54 SHA512 03483c9dc78774b2c5d4088f9995db9a9142bc69a8d4bc1824f4868175d3556434cb155c1f35a3fa0c04fca72f571af518166f59bcbe21431b7fe34a20b57cb2
+DIST pykeepass-4.0.7.gh.tar.gz 110217 BLAKE2B 314d02c7c9e04f7ef784f116d77fbf93f56720dedf4a36a19ce8d088d60326b87bb3d6926ffe39a47663554f65c67ef57852827f29f63d85416221dc230dc415 SHA512 51d2ade1cc7d3f0c705d39d0ec8a7087995ee6ed9ea573bb87ee8783792709a707230352e572ed0e420cbc8122ae741f4f3c40f5ef8949c53afcb0bc1da2a0fe
diff --git a/dev-python/pykeepass/files/pykeepass-4.0.0-fix-tests-install.patch b/dev-python/pykeepass/files/pykeepass-4.0.0-fix-tests-install.patch
deleted file mode 100644
index 2b2572165..000000000
--- a/dev-python/pykeepass/files/pykeepass-4.0.0-fix-tests-install.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 883714197ab39dfb68a5dffd2268e88a964f8913 Mon Sep 17 00:00:00 2001
-From: David Heidelberg <david@ixit.cz>
-Date: Wed, 14 Aug 2019 17:37:25 +0200
-Subject: [PATCH] setup.py: exclude tests directory
-
-Fixes build on ebuild based distributions.
-
-Signed-off-by: David Heidelberg <david@ixit.cz>
----
- setup.py | 2 +-
- tests/__init__.py | 0
- 2 files changed, 1 insertion(+), 1 deletion(-)
- delete mode 100644 tests/__init__.py
-
-diff --git a/setup.py b/setup.py
-index 773acfc..2a8c17b 100644
---- a/setup.py
-+++ b/setup.py
-@@ -11,7 +11,7 @@ setup(
- author="Philipp Schmitt",
- author_email="philipp@schmitt.co",
- url="https://github.com/libkeepass/pykeepass",
-- packages=find_packages(),
-+ packages=find_packages(exclude=("tests")),
- install_requires=[
- "python-dateutil",
- "construct",
-diff --git a/tests/__init__.py b/tests/__init__.py
-deleted file mode 100644
-index e69de29..0000000
---
-2.22.1
-
diff --git a/dev-python/pykeepass/metadata.xml b/dev-python/pykeepass/metadata.xml
index cd174bd3e..6389af936 100644
--- a/dev-python/pykeepass/metadata.xml
+++ b/dev-python/pykeepass/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>telans@posteo.de</email>
- <name>James Beddek</name>
- </maintainer>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">libkeepass/pykeepass</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/pykeepass/pykeepass-4.0.0.ebuild b/dev-python/pykeepass/pykeepass-4.0.7.ebuild
index 0770c7d77..63104af58 100644
--- a/dev-python/pykeepass/pykeepass-4.0.0.ebuild
+++ b/dev-python/pykeepass/pykeepass-4.0.7.ebuild
@@ -1,15 +1,15 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
+EAPI=8
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
DESCRIPTION="Python library to interact with keepass databases (supports KDBX3 and KDBX4) "
HOMEPAGE="https://github.com/libkeepass/pykeepass"
-SRC_URI="https://github.com/libkeepass/pykeepass/archive/${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/libkeepass/pykeepass/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
LICENSE="GPL-3"
SLOT="0"
@@ -18,18 +18,15 @@ KEYWORDS="~amd64 ~x86"
RDEPEND="
>=dev-python/argon2-cffi-19.2.0[${PYTHON_USEDEP}]
>=dev-python/construct-2.10.54[${PYTHON_USEDEP}]
- >=dev-python/future-0.18.2[${PYTHON_USEDEP}]
>=dev-python/lxml-4.3.5[${PYTHON_USEDEP}]
>=dev-python/pycryptodome-3.8.2[${PYTHON_USEDEP}]
- >=dev-python/python-dateutil-2.8.1[${PYTHON_USEDEP}]
+ test? ( >=dev-python/pyotp-2.9.0[${PYTHON_USEDEP}] )
"
-DEPEND="${RDEPEND}"
-
-PATCHES=( "${FILESDIR}"/pykeepass-4.0.0-fix-tests-install.patch )
-
-distutils_enable_tests pytest
+distutils_enable_tests unittest
src_prepare() {
+ # their package listing was skipping the subpackage
+ sed -i '/packages =/d' pyproject.toml || die
distutils-r1_src_prepare
# pycryptodomex to pycryptodome conversion
sed -i 's/Cryptodome/Crypto/g' pykeepass/kdbx_parsing/{common,twofish}.py || die
diff --git a/dev-python/pymeeus/Manifest b/dev-python/pymeeus/Manifest
index 248a77df6..bcec1ec7b 100644
--- a/dev-python/pymeeus/Manifest
+++ b/dev-python/pymeeus/Manifest
@@ -1,2 +1 @@
-DIST PyMeeus-0.3.13.tar.gz 5254730 BLAKE2B 09ed8f061e9c515c215318b613305e2f7ea1e5a2581c9caa270443a32de760dd77e09007771154177fe7e45cb7f8874351f585a5b17f4f56956e6049f68bcf87 SHA512 436eb990c47eab2eefa4d8eaa65171d4e630653c73f316d4f6097c10306aae70983fba074bfbaa44737ce2f55b4450b5c44e5a15e551f30a2c533f35a1d05965
-DIST PyMeeus-0.4.2.tar.gz 5299266 BLAKE2B ff2361762f7e1c8eeb81f521dce75acbda90228133e3fc0c9aea494ff2f9b2a5b5f70c7f58e6c864f2fae025fb7dda3ce390642362fefb4d8a6ac23dc3986324 SHA512 d3f3341b1546d6a632d18916f8aefec7e4cb437693d8373a09a87d3a28525436acd7b8b6ada57d127e1449a493e5d676af985e874cb330b53f80e0bcbc91dffc
+DIST PyMeeus-0.5.12.tar.gz 5752712 BLAKE2B f7c80c79d72c071a57a19373ce818892f2e56e5339c4b8f2e2e2ff32e7363d8607046962f4289b7802a3219d03fafbd6ad233a271dba1f0d46ee29052d0125c1 SHA512 33f68f352cb6737aeec9782727c5ded921cf6f5561cfd7ecb237f7cf4b431e1010f7dff49d779ea368c8298a3012da84f6fa3afc7efc08579b798bb17558c423
diff --git a/dev-python/pymeeus/metadata.xml b/dev-python/pymeeus/metadata.xml
index a17027aa5..05776cb32 100644
--- a/dev-python/pymeeus/metadata.xml
+++ b/dev-python/pymeeus/metadata.xml
@@ -1,12 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>xgqt@riseup.net</email>
- <name>Maciej Barć</name>
- </maintainer>
- <upstream>
- <remote-id type="github">architest/pymeeus</remote-id>
- <remote-id type="pypi">PyMeeus</remote-id>
- </upstream>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">architest/pymeeus</remote-id>
+ <remote-id type="pypi">PyMeeus</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/pymeeus/pymeeus-0.3.13.ebuild b/dev-python/pymeeus/pymeeus-0.3.13.ebuild
deleted file mode 100644
index d05cbe5c0..000000000
--- a/dev-python/pymeeus/pymeeus-0.3.13.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PN="PyMeeus"
-MY_P="${MY_PN}-${PV}"
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python implementation of Jean Meeus astronomical routines"
-HOMEPAGE="https://github.com/architest/pymeeus"
-SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
-
-LICENSE="LGPL-3"
-SLOT="0"
-KEYWORDS="~amd64"
-
-S="${WORKDIR}/${MY_P}"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs/source dev-python/sphinx_rtd_theme
diff --git a/dev-python/pymeeus/pymeeus-0.4.2.ebuild b/dev-python/pymeeus/pymeeus-0.4.2.ebuild
deleted file mode 100644
index d05cbe5c0..000000000
--- a/dev-python/pymeeus/pymeeus-0.4.2.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MY_PN="PyMeeus"
-MY_P="${MY_PN}-${PV}"
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python implementation of Jean Meeus astronomical routines"
-HOMEPAGE="https://github.com/architest/pymeeus"
-SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz"
-
-LICENSE="LGPL-3"
-SLOT="0"
-KEYWORDS="~amd64"
-
-S="${WORKDIR}/${MY_P}"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs/source dev-python/sphinx_rtd_theme
diff --git a/dev-python/pymeeus/pymeeus-0.5.12.ebuild b/dev-python/pymeeus/pymeeus-0.5.12.ebuild
new file mode 100644
index 000000000..aa3a9a724
--- /dev/null
+++ b/dev-python/pymeeus/pymeeus-0.5.12.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN="PyMeeus"
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python implementation of Jean Meeus astronomical routines"
+HOMEPAGE="
+ https://pypi.org/project/PyMeeus/
+ https://github.com/architest/pymeeus
+"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs/source \
+ dev-python/sphinx-rtd-theme
diff --git a/dev-python/pymemcache/Manifest b/dev-python/pymemcache/Manifest
new file mode 100644
index 000000000..d64f511c7
--- /dev/null
+++ b/dev-python/pymemcache/Manifest
@@ -0,0 +1 @@
+DIST pymemcache-4.0.0.tar.gz 70176 BLAKE2B 23f8486138e7e4afa18c0b311887dac5220466df11c476018d34f14a34331c35881bd5c26c58a3214f5d40e9bb639be69a6dfcccd5d6200b9fe81f9aef3f3654 SHA512 1a19d887559630e5b991430b8206c2698909e0d6b234df0380f9da5647574560b0fdd98396959cb96670030a61f7d56fea4ecf3272b5c394fc8c31eb2144e1a3
diff --git a/dev-python/pymemcache/files/pymemcache-3.5.1-no-coverage.patch b/dev-python/pymemcache/files/pymemcache-3.5.1-no-coverage.patch
new file mode 100644
index 000000000..a66193c2e
--- /dev/null
+++ b/dev-python/pymemcache/files/pymemcache-3.5.1-no-coverage.patch
@@ -0,0 +1,10 @@
+--- a/setup.cfg
++++ b/setup.cfg
+@@ -40,7 +40,6 @@
+ --tb=short
+ --capture=no
+ -rfEsxX
+- --cov=pymemcache --cov-config=setup.cfg --cov-report=xml --cov-report=term-missing
+ -m unit
+ markers =
+ unit
diff --git a/dev-python/pymemcache/metadata.xml b/dev-python/pymemcache/metadata.xml
new file mode 100644
index 000000000..72251d569
--- /dev/null
+++ b/dev-python/pymemcache/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <longdescription lang="en">
+A comprehensive, fast, pure-Python memcached client.
+
+pymemcache supports the following features:
+
+Complete implementation of the memcached text protocol.
+Connections using UNIX sockets, or TCP over IPv4 or IPv6.
+Configurable timeouts for socket connect and send/recv calls.
+Access to the "noreply" flag, which can significantly increase the speed of writes.
+Flexible, modular and simple approach to serialization and deserialization.
+The (optional) ability to treat network and memcached errors as cache misses.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">pinterest/pymemcache</remote-id>
+ <remote-id type="pypi">pymemcache</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pymemcache/pymemcache-4.0.0.ebuild b/dev-python/pymemcache/pymemcache-4.0.0.ebuild
new file mode 100644
index 000000000..b56ccd271
--- /dev/null
+++ b/dev-python/pymemcache/pymemcache-4.0.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit databases distutils-r1 pypi
+
+DESCRIPTION="A comprehensive, fast, pure-Python memcached client"
+HOMEPAGE="
+ https://github.com/pinterest/pymemcache
+ https://pypi.org/project/pymemcache/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ test? (
+ ${DATABASES_DEPEND[memcached]}
+ dev-python/Faker[${PYTHON_USEDEP}]
+ dev-python/zstd[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( {ChangeLog,README}.rst )
+
+EPYTEST_IGNORE=(
+ # useless
+ pymemcache/test/test_benchmark.py
+)
+
+distutils_enable_tests pytest
+
+#distutils_enable_sphinx docs \
+# dev-python/sphinxcontrib-apidoc \
+# dev-python/sphinx-rtd-theme
+
+src_test() {
+ ememcached --start 11221
+ distutils-r1_src_test
+ ememcached --stop
+}
+
+python_test() {
+ epytest --override-ini="addopts=" --port 11221 pymemcache/test
+}
diff --git a/dev-python/pymorphy2-dicts-ru/metadata.xml b/dev-python/pymorphy2-dicts-ru/metadata.xml
index 23c3d784f..f849634cc 100644
--- a/dev-python/pymorphy2-dicts-ru/metadata.xml
+++ b/dev-python/pymorphy2-dicts-ru/metadata.xml
@@ -1,11 +1,12 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>shaoyu0209@tuta.io</email>
+ <email>dev@notyourcomputer.net</email>
<name>Shaoyu Tseng</name>
</maintainer>
<upstream>
<remote-id type="pypi">pymorphy2-dicts-ru</remote-id>
+ <remote-id type="github">kmike/pymorphy2-dicts</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-python/pymorphy2-dicts-ru/pymorphy2-dicts-ru-2.4.417127.4579844.ebuild b/dev-python/pymorphy2-dicts-ru/pymorphy2-dicts-ru-2.4.417127.4579844-r1.ebuild
index 3aa1d5d94..7cf718e2b 100644
--- a/dev-python/pymorphy2-dicts-ru/pymorphy2-dicts-ru-2.4.417127.4579844.ebuild
+++ b/dev-python/pymorphy2-dicts-ru/pymorphy2-dicts-ru-2.4.417127.4579844-r1.ebuild
@@ -1,15 +1,15 @@
-# Copyright 2021 Gentoo Authors
+# Copyright 2021-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
-PYTHON_COMPAT=( python3_{8,9} pypy3 )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-inherit distutils-r1
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
DESCRIPTION="Russian dictionary for PyMorphy2"
HOMEPAGE="https://pypi.org/project/pymorphy2-dicts-ru/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
diff --git a/dev-python/pymorphy2-dicts-uk/Manifest b/dev-python/pymorphy2-dicts-uk/Manifest
new file mode 100644
index 000000000..a5b450c0a
--- /dev/null
+++ b/dev-python/pymorphy2-dicts-uk/Manifest
@@ -0,0 +1 @@
+DIST pymorphy2-dicts-uk-2.4.1.1.1460299261.tar.gz 4964731 BLAKE2B ca6526a0c7008ff1ab7258bddc19ab579aa741d6b0864bce8c3192bbb0202281738257be59701c5458cb4893f1d61f665d424e1cb1db6055a6168e0c2adde178 SHA512 3258a813ec1062b5e8dd2346526ec7b52610b7812e2019e7ad624feab130b2b5d5d0c8993fa5da653114010b1abf7d2557642bfc6241f2e3fa800988af5b49e9
diff --git a/dev-python/pymorphy2-dicts-uk/metadata.xml b/dev-python/pymorphy2-dicts-uk/metadata.xml
new file mode 100644
index 000000000..aeb4e499b
--- /dev/null
+++ b/dev-python/pymorphy2-dicts-uk/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pymorphy2-dicts-uk</remote-id>
+ <remote-id type="github">kmike/pymorphy2-dicts</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pymorphy2-dicts-uk/pymorphy2-dicts-uk-2.4.1.1.1460299261.ebuild b/dev-python/pymorphy2-dicts-uk/pymorphy2-dicts-uk-2.4.1.1.1460299261.ebuild
new file mode 100644
index 000000000..fd3c241f9
--- /dev/null
+++ b/dev-python/pymorphy2-dicts-uk/pymorphy2-dicts-uk-2.4.1.1.1460299261.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_10 pypy3 )
+DISTUTILS_USE_SETUPTOOLS=bdepend
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Ukrainian dictionary for PyMorphy2"
+HOMEPAGE="https://pypi.org/project/pymorphy2-dicts-uk/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/pymorphy2-dicts/Manifest b/dev-python/pymorphy2-dicts/Manifest
new file mode 100644
index 000000000..e9bde36d4
--- /dev/null
+++ b/dev-python/pymorphy2-dicts/Manifest
@@ -0,0 +1 @@
+DIST pymorphy2-dicts-2.4.393442.3710985.tar.gz 7074530 BLAKE2B f9ffe1b1e22607c3e7ad3fc7f90acbc2bf481e3fc8401c23b2587bde49470dfa492b3e66616dfb5d9fc20f40b75c3f25bd7a98c6ed02caeb3d13b5bc6315f70b SHA512 28797bd1799b1751ccd1b25164cc847af1c44b59c1e2236e3c0aed0c3e42fff350bc8c04d831484d39e1243f08b53f968fce880efb0e5dfea177cd8f7413f29c
diff --git a/dev-python/pymorphy2-dicts/metadata.xml b/dev-python/pymorphy2-dicts/metadata.xml
new file mode 100644
index 000000000..24733ed49
--- /dev/null
+++ b/dev-python/pymorphy2-dicts/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pymorphy2-dicts</remote-id>
+ <remote-id type="github">kmike/pymorphy2-dicts</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pymorphy2-dicts/pymorphy2-dicts-2.4.393442.3710985-r1.ebuild b/dev-python/pymorphy2-dicts/pymorphy2-dicts-2.4.393442.3710985-r1.ebuild
new file mode 100644
index 000000000..7cf718e2b
--- /dev/null
+++ b/dev-python/pymorphy2-dicts/pymorphy2-dicts-2.4.393442.3710985-r1.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Russian dictionary for PyMorphy2"
+HOMEPAGE="https://pypi.org/project/pymorphy2-dicts-ru/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/pymorphy2/metadata.xml b/dev-python/pymorphy2/metadata.xml
index 11eb928ff..d0d218675 100644
--- a/dev-python/pymorphy2/metadata.xml
+++ b/dev-python/pymorphy2/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
<pkgmetadata>
<maintainer type="person">
- <email>shaoyu0209@tuta.io</email>
+ <email>dev@notyourcomputer.net</email>
<name>Shaoyu Tseng</name>
</maintainer>
<upstream>
diff --git a/dev-python/pymorphy2/pymorphy2-0.9.1.ebuild b/dev-python/pymorphy2/pymorphy2-0.9.1.ebuild
index b5c331d0c..8e5ed984e 100644
--- a/dev-python/pymorphy2/pymorphy2-0.9.1.ebuild
+++ b/dev-python/pymorphy2/pymorphy2-0.9.1.ebuild
@@ -3,13 +3,12 @@
EAPI=7
-PYTHON_COMPAT=( python3_{8,9} pypy3 )
+PYTHON_COMPAT=( python3_10 pypy3 )
DISTUTILS_USE_SETUPTOOLS=bdepend
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="Morphological analyzer (POS tagger + inflection engine) for Russian language."
HOMEPAGE="https://github.com/kmike/pymorphy2 https://pypi.org/project/pymorphy2/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
DEPEND="
dev-python/docopt[${PYTHON_USEDEP}]
dev-python/pymorphy2-dicts-ru[${PYTHON_USEDEP}]
diff --git a/dev-python/pymorphy3-dicts-ru/Manifest b/dev-python/pymorphy3-dicts-ru/Manifest
new file mode 100644
index 000000000..ac037254e
--- /dev/null
+++ b/dev-python/pymorphy3-dicts-ru/Manifest
@@ -0,0 +1 @@
+DIST pymorphy3-dicts-ru-2.4.417150.4580142.tar.gz 8381569 BLAKE2B a22439e72d2922a6f7b5999e0eb02b91a7b6b2ad5a0a6f1acd32b025b5f632c51aba6a5a7b7f6bea11615a9042f390091e3a3f8d2f0404fa57c09eb726d5f482 SHA512 a410e8d341ffe3767cffd376dcb807c7961cd386c9fa5aa61706974365210ba7846e9a9a4deecf9ae4337f81abb20e11562e3132639dfc641b69e5ac7f11c244
diff --git a/dev-python/pymorphy3-dicts-ru/metadata.xml b/dev-python/pymorphy3-dicts-ru/metadata.xml
new file mode 100644
index 000000000..66d80ca28
--- /dev/null
+++ b/dev-python/pymorphy3-dicts-ru/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pymorphy3-dicts-ru</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pymorphy3-dicts-ru/pymorphy3-dicts-ru-2.4.417150.4580142.ebuild b/dev-python/pymorphy3-dicts-ru/pymorphy3-dicts-ru-2.4.417150.4580142.ebuild
new file mode 100644
index 000000000..22183af91
--- /dev/null
+++ b/dev-python/pymorphy3-dicts-ru/pymorphy3-dicts-ru-2.4.417150.4580142.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Russian dictionary for PyMorphy3"
+HOMEPAGE="https://pypi.org/project/pymorphy3-dicts-ru/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/pymorphy3-dicts-uk/Manifest b/dev-python/pymorphy3-dicts-uk/Manifest
new file mode 100644
index 000000000..0cc16a655
--- /dev/null
+++ b/dev-python/pymorphy3-dicts-uk/Manifest
@@ -0,0 +1 @@
+DIST pymorphy3-dicts-uk-2.4.1.1.1663094765.tar.gz 8133650 BLAKE2B 5c3b0d56ea7b7153ed89c18d58ac1885eb0c6bd19b7d35625170f8a36e0d622440b4ed28c1791df2f7b86cb67ca289825f9b0b39ab2b5612c34815270230c8f4 SHA512 990e0f85e0b4701459cffe1a1ae365bc66191c652894fbef6d9d3c22359805cfcb4346fc19247113b5e2a2d9bd9ad63a307ae5fba63d03274c8a82864a5b1cb0
diff --git a/dev-python/pymorphy3-dicts-uk/metadata.xml b/dev-python/pymorphy3-dicts-uk/metadata.xml
new file mode 100644
index 000000000..b23240176
--- /dev/null
+++ b/dev-python/pymorphy3-dicts-uk/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pymorphy3-dicts-uk</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pymorphy3-dicts-uk/pymorphy3-dicts-uk-2.4.1.1.1663094765.ebuild b/dev-python/pymorphy3-dicts-uk/pymorphy3-dicts-uk-2.4.1.1.1663094765.ebuild
new file mode 100644
index 000000000..d22cd45ad
--- /dev/null
+++ b/dev-python/pymorphy3-dicts-uk/pymorphy3-dicts-uk-2.4.1.1.1663094765.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Ukrainian dictionary for PyMorphy3"
+HOMEPAGE="https://pypi.org/project/pymorphy3-dicts-uk/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/pymorphy3/Manifest b/dev-python/pymorphy3/Manifest
new file mode 100644
index 000000000..f9123be04
--- /dev/null
+++ b/dev-python/pymorphy3/Manifest
@@ -0,0 +1 @@
+DIST pymorphy3-1.2.0.tar.gz 83384 BLAKE2B 56c8b3db776774c321e7231d7fa9a16dd0cd69886ca9e0b4f0cbffbb1be0ca92eaa1d0adc8de43ca021d2b729795db14617a078a97cf4a10c218a30a691150a2 SHA512 2e4c871f939495b47ad78b5f30e422d625235ad3c6592ab1c27dbaad415bf292138a5aec94ec82b665226ea763560af7bce603cfea740ed6b8b8b2715241dee3
diff --git a/dev-python/pymorphy3/metadata.xml b/dev-python/pymorphy3/metadata.xml
new file mode 100644
index 000000000..f4087153f
--- /dev/null
+++ b/dev-python/pymorphy3/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pymorphy3</remote-id>
+ <remote-id type="github">no-plagiarism/pymorphy3</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pymorphy3/pymorphy3-1.2.0.ebuild b/dev-python/pymorphy3/pymorphy3-1.2.0.ebuild
new file mode 100644
index 000000000..85b2e25e9
--- /dev/null
+++ b/dev-python/pymorphy3/pymorphy3-1.2.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="Morphological analyzer (POS tagger + inflection engine) for Russian language."
+HOMEPAGE="https://github.com/no-plagiarism/pymorphy3 https://pypi.org/project/pymorphy3/"
+DEPEND="
+ dev-python/docopt[${PYTHON_USEDEP}]
+ dev-python/pymorphy3-dicts-ru[${PYTHON_USEDEP}]
+ dev-python/DAWG-Python[${PYTHON_USEDEP}]
+"
+RDEPEND="!dev-python/pymorphy2"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/pynput/Manifest b/dev-python/pynput/Manifest
new file mode 100644
index 000000000..42a186bc9
--- /dev/null
+++ b/dev-python/pynput/Manifest
@@ -0,0 +1 @@
+DIST pynput-1.7.6.tar.gz 79501 BLAKE2B cb356271ef0688ff6532fb79b858c10fb3a52abc4f6db5f4758948cb16f01e96e9377894ea211952b58f5ff6d997ceeec9ba51a29aef866e65cd83900a9894ae SHA512 66639096a83b7ea7c926bfab67ef6c54b913fc4ffe5814bbc4ace6e4d298237a3623066f4f5c08a2bcf1cc5e40d18dc35b77c18afbd0d00b7b4bf4ed2233d9ff
diff --git a/dev-python/pynput/metadata.xml b/dev-python/pynput/metadata.xml
new file mode 100644
index 000000000..26aa32f06
--- /dev/null
+++ b/dev-python/pynput/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pynput</remote-id>
+ <remote-id type="github">moses-palmer/pynput</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pynput/pynput-1.7.6.ebuild b/dev-python/pynput/pynput-1.7.6.ebuild
new file mode 100644
index 000000000..b62fe62c7
--- /dev/null
+++ b/dev-python/pynput/pynput-1.7.6.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="Sends virtual input commands"
+HOMEPAGE="https://github.com/moses-palmer/pynput https://pypi.org/project/pynput"
+RDEPEND="
+ dev-python/evdev[${PYTHON_USEDEP}]
+ dev-python/python-xlib[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/pyodbc/Manifest b/dev-python/pyodbc/Manifest
new file mode 100644
index 000000000..2159c38d9
--- /dev/null
+++ b/dev-python/pyodbc/Manifest
@@ -0,0 +1 @@
+DIST pyodbc-5.1.0.tar.gz 115450 BLAKE2B 8080db700abb952ae60045825f76e73a3d4a42f13c05e48eeb06574d5535f34345aa8bf2710730430229cb31b3d73c9fcb250d8d0fddabf94ecfcb24518bf931 SHA512 78817864d30048eed0c670a30e1cc66bc72edd6c21d069a5cc5831ed180b25a5b30d2bf2313628431943defbae66c2df96e90781ef17bb8929622b9f49cfcaab
diff --git a/dev-python/pyodbc/metadata.xml b/dev-python/pyodbc/metadata.xml
new file mode 100644
index 000000000..ee51824da
--- /dev/null
+++ b/dev-python/pyodbc/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <bugs-to>https://github.com/mkleehammer/pyodbc/issues</bugs-to>
+ <remote-id type="pypi">pyodbc</remote-id>
+ <remote-id type="github">mkleehammer/pyodbc</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pyodbc/pyodbc-5.1.0.ebuild b/dev-python/pyodbc/pyodbc-5.1.0.ebuild
new file mode 100644
index 000000000..f34c84292
--- /dev/null
+++ b/dev-python/pyodbc/pyodbc-5.1.0.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} ) #py3.13 doesn't compile
+
+inherit databases distutils-r1 optfeature pypi
+
+DESCRIPTION="Python ODBC library"
+HOMEPAGE="
+ https://pypi.org/project/pyodbc/
+ https://github.com/mkleehammer/pyodbc
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="mssql"
+
+RDEPEND=">=dev-db/unixODBC-2.3.0"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ ${DATABASES_DEPEND[mysql]}
+ dev-db/myodbc:8.0
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # Broken test, generates a string longer than 4000 characters
+ tests/mysql_test.py::test_varchar
+)
+
+EPYTEST_IGNORE=(
+ # No easy way to run an SqlServer during tests
+ tests/sqlserver_test.py
+)
+
+python_test() {
+ export PYODBC_MYSQL="DRIVER=/usr/$(get_libdir)/myodbc-8.0/libmyodbc8a.so;SERVER=localhost;PORT=44444;DATABASE=test"
+ export PYODBC_POSTGRESQL="DRIVER=/usr/$(get_libdir)/psqlodbcw.so;SERVER=localhost;PORT=44445;DATABASE=test;UID=postgres"
+ epytest
+}
+
+src_test() {
+ emysql --start 44444
+ epostgres --start 44445
+ psql -U postgres -h 127.0.0.1 -p 44445 <<EOF
+CREATE DATABASE test OWNER postgres
+EOF
+ distutils-r1_src_test
+ epostgres --stop
+ emysql --stop
+}
+
+pkg_postinst() {
+ optfeature "MySQL support" dev-db/myodbc
+ optfeature "PostgreSQL support" dev-db/psqlodbc
+}
diff --git a/dev-python/pypandoc/Manifest b/dev-python/pypandoc/Manifest
index 28d45ce9a..65b8084d6 100644
--- a/dev-python/pypandoc/Manifest
+++ b/dev-python/pypandoc/Manifest
@@ -1 +1 @@
-DIST pypandoc-1.6.3.tar.gz 25912 BLAKE2B 341055a519f943b8593720d2797bae2c6bb7b7c60dc73efdfecc432fcdbcb1e7b30af138e62512dfea1da0c24dcba5b387891e005b773cae6c9a008c188a99ff SHA512 74abcd569adfeebfd84e66c7b3e110fccd9200275ecfd32e78c297d4f18637c6dc3328c313c32c38b9b9504f64d24e6b59fdec505a539649a21d7e5434108c24
+DIST pypandoc-1.13.gh.tar.gz 70605 BLAKE2B 36de13986a1f6812491f5e8d893b41baf7d8b170e6804b14d14ee1786786a57e11f4ec22a764ed28dcfa8edbfdc7a90726d0b907bb66e15573a1f587d7c261a8 SHA512 6f7acb4fd113606244a4a6eccac28bc4605e038da19dbb8c86c65b4b6a00aa5bc7cd0a8740145784335b10fb5d12bb85857c41a5a69bfb70c1d845c3738dcfa1
diff --git a/dev-python/pypandoc/metadata.xml b/dev-python/pypandoc/metadata.xml
index dd7560284..96745e62d 100644
--- a/dev-python/pypandoc/metadata.xml
+++ b/dev-python/pypandoc/metadata.xml
@@ -1,13 +1,12 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <remote-id type="github">bebraw/pypandoc</remote-id>
- <remote-id type="pypi">pypandoc</remote-id>
- </upstream>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pypandoc</remote-id>
+ <remote-id type="github">JessicaTegner/pypandoc</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/pypandoc/pypandoc-1.13.ebuild b/dev-python/pypandoc/pypandoc-1.13.ebuild
new file mode 100644
index 000000000..441173f9b
--- /dev/null
+++ b/dev-python/pypandoc/pypandoc-1.13.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517="poetry"
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Pypandoc provides a thin wrapper for pandoc, a universal document converter"
+HOMEPAGE="https://github.com/JessicaTegner/pypandoc https://pypi.org/project/pypandoc"
+SRC_URI="https://github.com/JessicaTegner/pypandoc/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="virtual/pandoc"
+BDEPEND="
+ test? (
+ >=dev-python/pandocfilters-1.5.0[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ app-text/texlive-core
+ dev-texlive/texlive-latex
+ dev-texlive/texlive-fontsrecommended
+ dev-texlive/texlive-latexrecommended
+ )
+"
+
+EPYTEST_DESELECT=(
+ # Need internet
+ tests.py::TestPypandoc::test_basic_conversion_from_http_url
+ # pandoc does not manage to find pdflatex.fmt despite it being installed
+ tests.py::TestPypandoc::test_pdf_conversion
+)
+python_test() {
+ epytest tests.py
+}
diff --git a/dev-python/pypandoc/pypandoc-1.6.3.ebuild b/dev-python/pypandoc/pypandoc-1.6.3.ebuild
deleted file mode 100644
index adcfbab97..000000000
--- a/dev-python/pypandoc/pypandoc-1.6.3.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="Pypandoc provides a thin wrapper for pandoc, a universal document converter"
-HOMEPAGE="
- https://github.com/bebraw/pypandoc
- https://pypi.org/project/pypandoc/
-"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-
-RDEPEND="
- app-text/pandoc
- dev-haskell/pandoc-citeproc
- dev-texlive/texlive-latex
-"
-DEPEND="
- ${RDEPEND}
- >=dev-python/wheel-0.25.0[${PYTHON_USEDEP}]
- dev-python/setuptools[${PYTHON_USEDEP}]
- dev-python/urllib3[${PYTHON_USEDEP}]
-"
-
-PROPERTIES="test_network"
-RESTRICT="test"
-
-python_test() {
- "${EPYTHON}" tests.py || die "Tests fail with ${EPYTHON}"
-}
diff --git a/dev-python/pyperscan/Manifest b/dev-python/pyperscan/Manifest
new file mode 100644
index 000000000..4f3ced859
--- /dev/null
+++ b/dev-python/pyperscan/Manifest
@@ -0,0 +1,80 @@
+DIST aho-corasick-1.1.2.crate 183136 BLAKE2B 2d4306d8968061b9f7e50190be6a92b3f668169ba1b9f9691de08a57c96185f7a4288d20c64cb8488a260eb18d3ed4b0e8358b0cca47aa44759b2e448049cbaa SHA512 61ef5092673ab5a60bec4e92df28a91fe6171ba59d5829ffe41fc55aff3bfb755533a4ad53dc7bf827a0b789fcce593b17e69d1fcfb3694f06ed3b1bd535d40c
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST bindgen-0.69.1.crate 219972 BLAKE2B bbbc5b275134af2070ac7fda7dc757eab460764e773112bfd0f89e6ba1e2e368c2d5c3cdc693db34b9a739101ceace2ce06f5f18bb43e17e0f091bf12dc5b55c SHA512 bfe97f17f6b19ef3fbaa5df2a396e2ebbccf0edd428c88464bd3e6acf2b34119ad3bdc43741c7923dfd3661168c1b3a8987273dec9742dd7cbad1c2148761fff
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bitflags-2.4.1.crate 37043 BLAKE2B f61c45b142265e9c2944c7054e01704de47510735e9ee5351cd02b98676cc4eb42d68b1fc4849ad5f54654617a74f20cb533b4207c2fe76516b724ba9318b414 SHA512 d3fd7abc95acc1cb5bf16d6acc12dbb8eadd250f069268df13c2e8dc3d5f5c15a929cd17ca931c77393b64dce0516ef8674c469789ed32d78e315b5faada062b
+DIST cc-1.0.83.crate 68343 BLAKE2B 33245b33fa845ea2f36da36e3830ec835f937e4319865b357ee9d5ea29a0f9f8392eadb38bf1d95e3c15ed201e561acaa87aedcef744f8db3dabff87a96c7f02 SHA512 742a248c3a7547bb220a0b9c97b67a831fab9b4ac21daa08c85a3966b9fe576088def33e16132fcabec9a2828a6fc437088bb045bfc98b2cea829df6742565a7
+DIST cexpr-0.6.0.crate 17966 BLAKE2B cb46f066eb1f4dbac00ec86dc3e562db7ee8ea5ff17d16a60004fa020405e455b8aeb3d001f669cb33d1b62525bfd04ec657ffca4ed44a83af4a5e75b2c820e3 SHA512 766bff7ca7f9bf0885aee6f014bcfc084e7fdfcd567a49443d5340acfe8f257db109de17b24588504fc35c53f2d4303e2d22da21f73669125cfca984950cf886
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST clang-sys-1.6.1.crate 41346 BLAKE2B b70104e6c6b3c1b85caa111c2b1fb2c20d30eeb85059bc616afc49bce9409f7ee2dd8b800750a466accad6a74ef29d10c6a2ee4459d854a2c0c54050ff51cc4b SHA512 a6c62c1d3faae3796f5e7d98ed4f1a8119f0ffaf8fceee8e728cd4da57b0140e82631012450bb0c551cd13814a97065e9e47015320707a87bdfbb6fd317e952c
+DIST cmake-0.1.50.crate 16748 BLAKE2B cd3b131fbc27764e15fcefdac31f97a9d12f82ac9758b2aad256ccb371ce3e2db8aed3c76fbf4816df3483dad9fffe9973940ced65be6d31463d8c059c543646 SHA512 868d5cece75d79382ac6176aabde1723bb7e26dc745383a636516ff45856dc9187fe5a83e139f17e3bb0c114624e9e71b93c8a460b89b8facbafbca50d1d0923
+DIST either-1.9.0.crate 16660 BLAKE2B ad61038bfacb16f678fff5dd9ccf8f345e1bef18bd7aa0aa9c99d44abf8428939362f32fc8dbb1b60ac56016e0096201071d0bf8c0431b660605d0dfa97da466 SHA512 4978d50842386f51e31a47ad037d5e491106a668bc701bb833e6ec3998afe3ebd80efddc47756b2f300f534b39b26fc01386dc878d3b02cc8c1fec6a474c2177
+DIST errno-0.3.8.crate 10645 BLAKE2B 4a7af10845f11b3d8f177a75a692be468e8ef0ee53fb84a4d212335f1499456b6739a59af260894b5c3853d3bf21ef3490d1e3a613305561203ca334a636c3b3 SHA512 29753c421c6f929760cd7565f8171696e4f70e677654a7507253f4fc495edbcf214ace27be46bdfe5c1a0d782f4b688f591476e56f4a1096471cb353c643328d
+DIST foreign-types-0.5.0.crate 7824 BLAKE2B 01a5111a11e48462914f9877d3228008590093633e957883fdafd3a7017e144c14fbbe713bb8b0061ebae78d20a49978191ce416a4e28317b67ec69e38acb879 SHA512 d07c92cf99c99419a3ebe05ba9154e396ab88116f46af736ffdd958c8e47741bca5d9f478f6719d5361360e844375968c1cbf6ac40995d47128a5e5fda3f6c82
+DIST foreign-types-macros-0.2.3.crate 7635 BLAKE2B ee89f576f2d892209c0f344dcab9dd85a671c976c8034b33dc984b93a5c872ff0353311657fa1dafc499243e55d3293a7bfc532ba55894a719a50ddaa6957589 SHA512 c3965e058d15159f789a8ab1597770ff6325e8ac9e6914c98450225ce27af849698646d53326e07b13eb3a9730452d926b73fd76e5a1fbd8ae4a6083bdce3367
+DIST foreign-types-shared-0.3.1.crate 6006 BLAKE2B 27c26518e0de0a298df2996da4959727dcc6a21bb4efa6c28869a9affe7ee3b427d1bae25ed6928477d07959bd143d5d4fa27325f8f5a5cb0ddd3cdb9e5314df SHA512 c68da34b55230941d6655f6a52d5dcb8ee02149f25c25a5ef782402f9a18b33047905f28b70183a5f45b45977c011a5320cf7283b7901c76ede4d82082ca4c9e
+DIST glob-0.3.1.crate 18880 BLAKE2B dc89b3a664e810264dd7a01ad892e865ce35b504bfe5dba12d7ea8084da7de84feaa94c2208f1a1eefed90297e552636ad61ccebf6fc8cb4d01f27d605ad0a09 SHA512 29368160138bcb7ea5660f9f30c5711cfca8bc8ba836bbade3fbe8c424e7b4118daf27cffa677962e37e36f025fd2bb5a9c2aea865b0ff155cace455dfbb658b
+DIST home-0.5.5.crate 8557 BLAKE2B b14225f6e967ccd37fa734f50991a50065047f3814c4e526f3b4605ceb9206d4d12e189b4033ab85792ffea34a30f2b0267b10b9b0ed88df52c37f6ae1ecea4d SHA512 4ba97149d8f70e9b6eefc930292c7e62fab6ad03d5e4e6bf93d40209d3a65e40932c6f3d14ca579ed19ba33195977c60fc52b3d3788629fc760f41ce90fa1e58
+DIST indoc-1.0.9.crate 13475 BLAKE2B a9696788574e56dd125c3371169fd59d6947d188f76e2669b21c0304692efd6709cd048920f7822e92c6a5620fb178e0e85c7776118cef8ccee0f58398e14abf SHA512 db8aef4a7bb606452dc8ed45aa29a255c7a135357a0bd586fb4429c5f56a1aa2ca9400d6fac39956aeb486a15d25cf5d1b9524967867f2c651d9d563e3e85be8
+DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
+DIST lazycell-1.3.0.crate 12502 BLAKE2B dca2d3f46823a52dcf87b7d6103fc4f1f83bc5247ce361946ac2d9df239fb43ce4b418104503698dff0242480cd014996e77da4ae0a88f3cedbce4eb9d3c9ef8 SHA512 f9d627afc28b61e9687a3f72260eb013401fd64057647641ff2e763770d7380ab1d2d8cbb4a3c8818d53d504c618a3b46aaf701f72f4d7b25d226042824c2f8d
+DIST libc-0.2.151.crate 736640 BLAKE2B ba8ea6d22b0eefdc5c1c5ee9fab960b6ea0eb7098a21b032563ec78b5d6e2a8f1d7ca4d5bb721c71de2c5de28e105029f229b9b03cd5168c78a65c7164e6d07d SHA512 2039bdfd704c5a876ff7d609622bb968260d6e0fd264ca457e92b75660503eca10e1ff21864b3c919d2656de521f03ef443895f5c0150271ae2502857742b0ec
+DIST libloading-0.7.4.crate 27580 BLAKE2B 491faef2659270b10bb88ac46e0453f747f35e78d7f28b7d6d9151177b4c7a7aec0a1efdf702eda0988c31e9dafff2990eba4e6a9b0b695c535ea9086ccf36e7 SHA512 34439d9eca68bac8fcbe2bc94a70e07550e7e95d713ab74ed60ba6736ec807fd9c9135c178d436fbeb39afb074b2a9b05775d953340845c088f5f8712f5f56a1
+DIST linux-raw-sys-0.4.12.crate 1465800 BLAKE2B 2f70a344c427093fd55732b68239f771cf6563edfe2db4b2f50cdbc904dfc7565b30bf06454b91482eaeea787b9cd4214979665bfa32f3c1c586551333cf4d2e SHA512 d9564d02d5f41356478066592e438629adb3275df0e5a1a44030cc99bf8856b8af64f18f27371f84122a828b34712aae16495a1a16050fbdbece6d95e9cdace9
+DIST lock_api-0.4.11.crate 27487 BLAKE2B 87116cf908f7f1f9c300cedded989df305f855883e3df5a482de2c76814c48739582d3079d76a2bdd14a6999204b7fd31dcd8fd06d1dc7f9418f0e2f70a1450e SHA512 9946adf313a5c67a0dd87a1b679b7d9d16a86149fb95974d3f28aa57a9a1a3932e4a5ee1d332097559329c5e3b2295be2e4b655b115d9f75269f33a758b17fb3
+DIST log-0.4.20.crate 38307 BLAKE2B cb9c9a401b49bd68c18d5e42f2ed94446f1aeb184caa23cefacad4ce54a2a357143af54a5595c45d6f3c3d20b054c451d9e6ccdc09c19cca99ffffdaf8bbfc72 SHA512 8661b0c71d3b7fc0d679aa3d7f06910e6d3da1c53862aa06526000e1bcaa0b0b068415a1a9ab317c318f00d15346dba8a4f5d2a60d8850790bed9cfaaf757b3e
+DIST memchr-2.6.4.crate 94439 BLAKE2B d1136f7105a33565214fdeecdc5a95e74d7fc7cf45997f81bf3cf389f3015fa561ab326433ddcff2db0b7259246eb6d26fc7b4e3c90c3af8b9b7ed7e8ec56ba0 SHA512 1065a67e04ec9210c70e430288e0a8d39f36ce6414722099553e99112ea2f8f710eae44bf39f8775b9850e6c8a50e634a1b1b084a8eb4f6b2eae6697dcf5b5f4
+DIST memoffset-0.8.0.crate 8912 BLAKE2B 19ad3abed21fc39461b0382b15a8cc312378aba36f042b1e5335012115d31b350a4e3bc720f1eea300d7d19b9b317f75a28d4ccd78ff3b31defd9e4b3147899c SHA512 47adcae0848ff967035e10543ea599c7af9c5bad387023eb4dc77c9e8d875994ec8139b9941b3ecc4fc17214d80944a47a3be174a45b334661914a5a7382dfbe
+DIST minimal-lexical-0.2.1.crate 94841 BLAKE2B e6b8919b80d938d0b98d60d4f5f29ce43d77ebfcf8b18bde08909141915c6ef4f0d07a543538d4f3ba8527a9f55926d4a8e83473248469d087e80b274d701d61 SHA512 385fab51884bdcc7b0f2728a219ab164d0dc8efe42160b918f2c09f79ecf853fb12bda006d11e649f097bae1499dcd41ddf2a8784ee7d178cf2c28059e46078c
+DIST nom-7.1.3.crate 117570 BLAKE2B 5643b67990b7305e101b16b8cd27c447e162a7adc6d0dfac00920b0cb50fea98c9d4edca63c34f6845cba05f8d0acb407cf3045cf64a4cb28e53c8b6bc9090cf SHA512 1ffce08dde299bc0e0367ad59c7b6a83e23decfa11115ee076ab91ec53cdd9ef37e4c2103c96eff23a7b6b8b5c3f67c83ce1917928c7d4c6462083bdfa0c9cad
+DIST once_cell-1.19.0.crate 33046 BLAKE2B c14b374eaf4ac0f60acc2e02f7bba270a0e8e0a6978d749cd3cb0ab3eb26907e4fbea70dd5132982f90290381ed18ff8a87fd530f1415fabffac864f157ea380 SHA512 4154876afd34a699ee650d1a8a1c5ee5a25f0ebd9388b8bef2564e33629fae68f113d7507488c68abbe7ea1acf9bbc41813cbbf3ef3e464e3f3b9cc7a51d870c
+DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
+DIST parking_lot_core-0.9.9.crate 32445 BLAKE2B 811d8de671bf6e0911cf0df7dcaee4fb03a3b223173a3bb8cee65a28724eeb7bac87f62aa7b1df5ea3fc93af3cee3ef30b83d06c6773d6b856a7e6fa5fa197ea SHA512 7f0df70f9f1ca8d3da0b9dcc96e49daf05d95c3a995289266b5333f68818d686d32b0c733dfe3a0f62da78fa45caa843a963923b2d0c80899c33413dc749c032
+DIST peeking_take_while-0.1.2.crate 6697 BLAKE2B 31571604d00872900abcb677a483da93654de523bbdb0331c326dc9a3e531f246e571bebcb983e79dc46e33ed6dd32b978be509841ec0d9f1e7209c06289c22a SHA512 7bf8721987c3e2e1986683dd897746592a909382f02b840b777effec7d8b0a864c1a83b03c73d555e359f22c423168a54b75448a7e7b996b739527ce8c88b721
+DIST prettyplease-0.2.15.crate 57034 BLAKE2B 251f4b19f2580c5503c7c1d1c47bb9fc125f5c9b8d41c960430c953ae83484049df0fcb1bed11693389c1fe48b9a41a5be35701c4f19cec90ee1cdee592f4e4c SHA512 789f9e381964f2da75e9def9f2474bc8a15adb598faae5044088543c9cd53f6f2fb70875263adaa7504e73a9fe1890949bdb9930dad199638c00196b24da6929
+DIST proc-macro2-1.0.70.crate 44343 BLAKE2B fff0dec06b21e391783cc136790238acb783780eaedcf14875a350e7ceb46fdc100c8b9e3f09fb7f4c2196c25d4c6b61e574c0dad762d94533b628faab68cf5c SHA512 ae9366856853f7d96caf7a7581843d36bfc7843f8683897b19ffc666c03b0b1eff502ddb18ca4c1c1a239a368f03f6cc258b0e2795f64b61c6a31404462eec5f
+DIST pyo3-0.18.3.crate 420236 BLAKE2B bc00a825a67ed3590b31d3ea6bd77f6c4c927c0355d9d03ce64ca44e36ae3e29ab4d891bf2d94ca074b3bf858e077c516dc64e4620f875fe1e8fbffb5c9db1ec SHA512 39f044a19a42a5e2f46049431fbe3fe10c14d12a4741cc789b42de7cbf448bcbded7fe38a0f124d994ff9bcd3d95a19305dbfdc7462331fda3e6686cc4289be5
+DIST pyo3-build-config-0.18.3.crate 29137 BLAKE2B 5fa645b64f50a078f38cc10a27ed52bd7e7aadd8a069c05ec2963f0b7c869b94d29eddda97cc31d200cf749ab8e2cd9cd1ea00e75620287e9187745ae0e100a5 SHA512 7ccad5f245e84895e147389f05270f32d12f81aba46bcd0dc184b8d62af2ea579efc50383502efda40601c981c4dbcf911aa7d8192364caa2e177ad939062cdb
+DIST pyo3-ffi-0.18.3.crate 64474 BLAKE2B 32bedfb4c7d88e539e958af0dd48af311934a817282a01f860af7cd824fa1e3825c505463b78cda57541bea8ccbbedacdc0f67bef686e6775fab3787c26c6d2c SHA512 55240c7824ad1e5c69e05a31ec03e2064290c89c4c98f06c3ebc38c311a10b1690571c977a103790ddcc9623ac42fbf525fb028e910baedb9acafe39fd6e4a82
+DIST pyo3-macros-0.18.3.crate 7175 BLAKE2B 424cda4d0d75c7d4df6aeab0a475fc744039c9a663215c633e62762083930eb6736348f431b6f00d11a093961433fb13fb4c9da8a18268d1904e933157255646 SHA512 2b643ec3451267e836076bd79d110826fa0a2407955543c8a6a46b0dd16c477eb3ad919d51b7beca90eca2938a59577b32e1e67169df67429fac4cfaae5bf5ab
+DIST pyo3-macros-backend-0.18.3.crate 48922 BLAKE2B 4937f6d9459c6651f85fd520e4783c051f28932192d02aba5711fbf0294ed617f5b0b35ebbac74f3e6048a3fd3b75028518ebadf1277eefaa501015a91269c77 SHA512 1e607e4925486e1a48748ef3163666910a06f9a4f4a2fd7eb6a6af87ea37b5b7edb9d3ab4958e6fe907a55c5f4bcb702a251d836dc3b57c4ab1c5d9248b8cd35
+DIST pyperscan-0.3.0.gh.tar.gz 78481 BLAKE2B 183b996dfd6ef23b7728798bc5959e68e92aaa4160544665feec38e57972906c99c34b9a3dafc0846510b1da2d88a4d14adaac26e56e556939b9210915736fc2 SHA512 88c7f6af02e56db6dd9b584a3da78c414be29d60c44a9e11bce2c07d800899c09f9620908e5aaf77fe4d0213899f5546d5d99aab1190036c42a37265b49db294
+DIST quote-1.0.33.crate 28090 BLAKE2B 77c4b166f1200e1ee2ab94a5014acd334c1fe4b7d72851d73768d491c56c6779a0882a304c1f30c88732a6168351f0f786b10516ae537cff993892a749175848 SHA512 c1e76c3c017e8554eebe309f8167fd56fce931981c06798aa85a0cc6d64a9cba6ab103f5a1324e69c6f9ca5dc47a8e31ff2e847850542748697afcd265b5939c
+DIST redox_syscall-0.4.1.crate 24858 BLAKE2B c3301137a0b84e03b09d28dfa377ab3bea74d574a08cee21d35713b278d8b5b30ca2a1d73a0981baeb4644cbb88c86c8eb15ab3bb2692e38b93e6b35fab4e0da SHA512 073ed9d96090cf46eab9877742277a013c62d8da86d9caf2310b4fa868af306511936553579e01309f27067d344226cc8dc5e3aef01d9b900da2febd33848f8d
+DIST regex-1.10.2.crate 252839 BLAKE2B 4be7bede72d41634c52eea25566fb13337a84a055aae6fb73d3b18ab9168085ed04ffbfd5b6f87c2f85c9922893b9c9a253a8c874eae9185b2100850443b1517 SHA512 e594f70cc540586e4039e7b905ede9e507757b531f22a94aae185e47732ae0d54bceb2c6aceb815819a9652c01ccf697798d372631f2f864c04ca2eec59759d3
+DIST regex-automata-0.4.3.crate 617011 BLAKE2B e685724eb037411c1a73d6d355c76e9e32c40f1c9029acaf86477796d3f5ad092b0c5619f4df2fc1ce34243f2ad8af147aa31f83a435e5b5adf55b4c9c8a9359 SHA512 4fc82fe3556f829956c3172447589555ef286fd66ee9a445cbdcdbe57970655e35b6eb0895ba02c344d826609257e0c95d3f7f51858aa260103bed7b08d8c1a8
+DIST regex-syntax-0.8.2.crate 347228 BLAKE2B 211fd1c35ad0f28874d4b4d276e0fb0a27e5a1608f2f16ba2333641b154624e378419daf8d1c955f21ff5f40f6d49c89569b7e11ea5649850846d0fe447a675c SHA512 301dde555f300298f2594490ccd8b92033e4917fe9b8671b8a97db6c827793c73969be85a92999964dcaf3177edda51abeb576811ad6cab9772964dc0a77e728
+DIST rustc-hash-1.1.0.crate 9331 BLAKE2B 16ac56622897f47a06b661fb59a196b08d48e782ab87549c8bd5c6fe92f374c9bfd44dcb36588512bd9b6125c2fd79a12d648aaa308fd9694bcca3a7c1b49ac9 SHA512 84e673ea9b046f7b989d47f2c4505557fbd5de991e6fc9f56a03605d40e0b4ba5427cd566954890153cc033ccbec6c984306634571935bfe0d4cdfbe56f39544
+DIST rustix-0.38.28.crate 365398 BLAKE2B cd9401511363c806f0c8de5076031aebd22a9c6cdc49963277bd7a58ebdccaa59c33710ee625bc0a07fe2102f370e39143adca0651d123a0dfeb562d32e7a537 SHA512 a48c959c0fbc9700294b1ab0fb71a303bcef89a01b4407c2d7dc7c83b35dfbdb69bb6ac9a364ba7d68b4e561445e6c227af586cab15d9799de9e6622e89ada12
+DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
+DIST shlex-1.2.0.crate 6584 BLAKE2B ac07c648d9affe62512edab307fe07436dce69b428570ba6455aaf21c178145b1026e35704f920fc177b334cf190f57e393e4dd9e522dd26d133f80fb2c15f47 SHA512 cf48c0c47aac44654a48047fed3568c30f53f19cd131615cabbc247dbdf1eb1b7540b0d188f341251b4876dd0d5fcc13792800f0160f7907e8d8fe9a5e75083f
+DIST smallvec-1.11.2.crate 34801 BLAKE2B 58645e99db8f02db64d02c75860c7ea41836c427c03ee3b0b23365e73a406e4fd6ac312bf13fc5faef8bb6111c10fcfd5f839d5b3686e9b34d1626f8469fc327 SHA512 5cfb427c3b99b0dbd71f6154ed899abcde9d7d2992977ac7b2ef3a4c3ff51e4efafd133071a69609b4ed6cb269bdc26b79eb72e1988f10dfcaef8185d950cd1d
+DIST syn-1.0.109.crate 237611 BLAKE2B e827445d00c79a8eeb91eacde472f1987addd6ce9e1df95d7abf6446a77ff4173a8006845f3ae71c1da47193cfb72e0ead9a6d6bad2573be12c17e90735d9ad9 SHA512 12816b9e8cf984024b2fbce9f0ae14cf94d4d2c06f08cc54fb793ce78770bb4cc1288eb7df0ba5e8e937756e1e8e295c53fe07a0c5dde1ea8ddba03b6203b37d
+DIST syn-2.0.40.crate 245201 BLAKE2B 70876ef8e459f582d8045e46fbee7cc00088693d7d6feef1c07bd14dad3f6a555fa97762b8df018847bddbd2e9ad432a2640153adc6eb0e6d9bac821910c74c1 SHA512 27f9bda7df0549142ac0f732387182d5372f1a49facb2c5f20cfafd9b03afa0ed8c1e35b9b6f2659add33f01f00a2bee24de3b5709bb9238503e0064b791e612
+DIST target-lexicon-0.12.12.crate 25156 BLAKE2B f3803596c75f6c89438592a1176c3748fc2c0524d7d50a20056de1cd26d40c572b05bafcdf6dd702752864bea37c8b4f28f96dadc12a5b3bb1d279b25e489f85 SHA512 6147295c43ba1b7b087a3c5ab51534b2985e4e77e5e15687978cfb9d07e21c4fd9bc7191576d6cabd268d08a44dc733c4a957e59dba8b948c2055d8bb433aeca
+DIST thiserror-1.0.50.crate 19414 BLAKE2B a093f66ad191a8c4b15356f8d29578273b36f9f11b5843195eaa15b70bd4c8eaf6dffb631564386acf35a9ddf856e05055b419af52d4e008f582ae444f3dd5d2 SHA512 65605a9cfbc43447a50980739259a45d933f1eb315926dce909892f7162c79bd04bfcee7b38b5a9fa71b24fbe4416d050ae8e2443932577541513a23ebeeac46
+DIST thiserror-impl-1.0.50.crate 15357 BLAKE2B 41309507014a2c628b7e91d250335070e4cca6c6c452c90ee7e6173bed049df83ca197b37c16537cf15415550919c248e0f6c798aead760e7bbcd25eab701d50 SHA512 8555e010f94390e93ba757bce9ef25d066ed542f23b843db431a66fbab722584ea0ce6c9d4b6f4d92cea3d91c190336abd567c4a0aa4a27893db25720c5b89c9
+DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
+DIST unindent-0.1.11.crate 7700 BLAKE2B d4d1dde410c4194acb51f74f374cf11fa872e49fad8f5f24b596d72476403e5e312fedf7b0bcb1027384d53c8de565368d63c30eaf70a6e6cd958b82e5288ca3 SHA512 f800d6c37fe72477908c91457a738a73d2b8085bb5ae303d6d954405d6ccd98833b5da16a12c3ad1ab75d32a68dedc706dfaacc0fcbb95571dd829cdc03a356a
+DIST which-4.4.2.crate 15953 BLAKE2B 40ca22cd2f625cb035a1d919ed457a300b482c7751dcee4441974c53d56ce13f1f502535e1f7c0746a01981f4de2e2f761c3a255902d6353db1a4c3c62637448 SHA512 2d12aa1d4c2dbc140e39c8f15bd4ee1eeb8e8de71bcdf579479ef4be860fb0839eaf4cdb818addba242d50420f6e08acaf2bfc979a889e092c83644819246fd5
+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-x86_64-pc-windows-gnu-0.4.0.crate 2947998 BLAKE2B 2ad1ea8b5fa07d544e910ccba043ae925269b76b26c9da356305b34b86741dd8b9aff0b9ffe3d562db4fcd7d7c46a11ce9e3168b782b1d89ae6881742b7ede82 SHA512 4a654af6a5d649dc87e00497245096b35a2894ae66f155cb62389902c3b93ddcc5cf7d0d8b9dd97b291d2d80bc686af2298e80abef6ac69883f4a54e79712513
+DIST windows-sys-0.48.0.crate 2628884 BLAKE2B 551e900de4f67187ef034b60df9fd0e0d8f82a3100ef28e1eabd543ac129d882dc86ffcc1714071aba09e4cb2ae2d2f07ace1a32b99fd989ce525cf05991edab SHA512 bdf534bcf3face31e9ebe11427a911a53f89f4ff5eaea8cccd094e139bfe14b2aec602b1cab1df774794d999477439d9adc6b627a8e33c20334fc348ba2c47ed
+DIST windows-sys-0.52.0.crate 2576877 BLAKE2B 69d6b560ccfc8f679e2678663ba606060d71fa28efa82c8aef8cceaa2c63b06f2052764d60163964f939649a26bbec6361ee4b094555e941fae92070db566980 SHA512 24ee0df246c2b456a4987a9124786a28acd358768cc7d1305bccd81bc5bb8822b81a03fb18d35174a520b911c6d9b685f81a34ab319fee13da3b985273584f03
+DIST windows-targets-0.48.5.crate 6904 BLAKE2B 7396bb210f37bd51da86f39fca3425c8f6610721d5c4e94f9fafa0a8a8046303b3fcc6979146bcfaa32f4406d242a0455f6cbb220f84c6ff84650e755acf5223 SHA512 e079eeef255a046be7f8e6a31c14f7b230254ebcf05eed2944827bb3d2a0dc30940d87593cf544d5e7ef35f6312b99430efcfb01421d91b02bb9c4bef7d98709
+DIST windows-targets-0.52.0.crate 6229 BLAKE2B 4b1efdd32202f112d3782b586ce60667f5d3b6f97ccae0d7da833aee2ae81ceece88b5ef4126db2448c9019de3f77e4fe66ed4286bb6275d9a5e8ab74725b804 SHA512 0ea09552d89b802ec0d419b640fa02d0af7af602704a0e88ba10f81d123dee0c907460f6ec91224177ec9a948970abd7414740eb219148a4d66c269c2362740e
+DIST windows_aarch64_gnullvm-0.48.5.crate 418492 BLAKE2B 5c6f7d73ad05740f0bac304ed1ef9b2ea63b0d6ca8f875552ae299a0b73b1557e8fe996f1c2b69be9f2df350c9288690f49ee62239a2896991364331d6c55462 SHA512 20158d31454488f6053d3ad7b97d7fc6eae6cf37e4ba0e50c28bd29b368505eed64199ae31104d5f97b66846be54e5ed25c0ad31ea850819205c573a31ac0996
+DIST windows_aarch64_gnullvm-0.52.0.crate 430182 BLAKE2B f23370c62c4ab3fd885e3ee22e8ec2fb5a3a837a57044c1df3f9986dd4e7e9d0a44ec58be1648a41e1ea4d037afa3077f0f03de0204199a82fb8395731815a4a SHA512 b7c3fe0a2ad5149be0df48fc7a4d15879eb130bd9441c58c25fc71b8a91483f0b553fb1bf29a9302acd348e9083a547430a840b059b0cfe19867ecaffcae986f
+DIST windows_aarch64_msvc-0.48.5.crate 798483 BLAKE2B 60c466d6536426425a34b5ca20da97c8127ebeb4fb9b1363911165bada484f8913fcd50e90410b5661e0c27dbfe8f4eeaa62fb17d1f3566bfc82b6255e11619b SHA512 223f016c6f1a44dbc5c8a8428b39438f75380ea06951b7c26ed0877b19d79410c6fde5e4c7f2c839b6e76159131f39a1230e0e3a208dfc425ba9117e3665c4ff
+DIST windows_aarch64_msvc-0.52.0.crate 821663 BLAKE2B e6f772858205f7cd871722136aec4d00daea4793ff9dcae53e6311e74526c46aa11c2b3df7a85e6c577757254cbfa5a713e68c694625ca274b64e7a1c5532c23 SHA512 8446bfe5b9fe538415762c8129ab3bf2fe45482e045bce367475747786602ad4ae1187c6e508dd9d7b6be81bfc8d430e0db9c624e35c7cc52e823023e46f5cf1
+DIST windows_i686_gnu-0.48.5.crate 844891 BLAKE2B fdc37cd74a4982056bf22fdb7b84e1c55dc838f3cb19ff3648730a77e673ef4ecc0380b3e4277bb8df2fcfa25f57b69014713d9e3ed27c28e19b25b3ea2ab774 SHA512 931ba5c1e4eb8ae73248e00d9611298d1c4b4b0dae719fdeb9243930cd420a103a7bc2738e0a4887c42c8f25728d6c5d64ad141dc092bc3f1d0f35dbe37d303a
+DIST windows_i686_gnu-0.52.0.crate 870285 BLAKE2B a7688062a128a1b1394b3978210334e4e2aaa10dce131457c4a11ce0cb3f551e7f4962d1ece1846d8e9526983ced0e0a3ee8c933858e9314b62e76381e086ef9 SHA512 fe993f5bb6e039c257be9b35337e0221f718d23866818bfd19c76aaae236aafc2de4bb5014fcdf919563b5901cdaa14a2136cd086eeed3c83e46a5d02f6aa77e
+DIST windows_i686_msvc-0.48.5.crate 864300 BLAKE2B 3d3ea8be55e2d6ced0eeda18abe1dffb925a1a78f456d683e4450d9f2fd287ad2e8494d65b2b770c677a12b3a60d10f0435e16c61880e3867c3657fd44892442 SHA512 70e2fb4fdb006a4cbd43ab2c7e940b277a15fb1790dfa2d1fc1f1fd18bead4886f6dc046e44326603e4894d988578917b8932aba5d9a6a4cc8424911cad9dc7e
+DIST windows_i686_msvc-0.52.0.crate 888693 BLAKE2B 7a6e9d03e503c8f543e80a8c7bcf3f50cfa7eed462e487ae7b581746d7cc4d871b33e307110d3a3a75226d88e837f9452ac56bf3baf71b66cfab2626cc15558a SHA512 817ac796fd00bed51d80133ec873cf3d3d582ba41fec8a6f6407fbd7544f198e928aa5d710f70c13bbf74a1dde4c91c54e65eb9d3b7518a7f011ea42725eb671
+DIST windows_x86_64_gnu-0.48.5.crate 801619 BLAKE2B aa7e7e6a6ff9f9553ada3a0a39a9aa798e9d995a8eef36e0b6fdb2a0db93ddecee5548970575271fe43aec74797a420d0ee231d503b5bad1bd999059261e0e33 SHA512 1d6056fae430b3d042bdff3c6217c76be4b8b9f5dada9bad06beaac2db7d7ab9b0a82e44f498ec88e61afa73e99f56d84d445dc3847732b9ce5d947e08485f74
+DIST windows_x86_64_gnu-0.52.0.crate 826213 BLAKE2B 3ca03285ef289fc844261142154e710e996c29940b1c0a7dc3016906ff6452fa50b24f8668fce0ca44bf169ab1228c217fece9f7bddac9ab8bdc54fddafaf8a8 SHA512 2d81af56ad0bc9536f6e066776642a546ce6c6d99551edc0603ffcafe6db15d5d5a32a642b204bbfadf34231daa3894ad7897a9c0c575c2b6bc1e3e58a9a3eb7
+DIST windows_x86_64_gnullvm-0.48.5.crate 418486 BLAKE2B 12a2199d434617c1df1a839e9f435620ad64b40c579f6d0c3677553ad7a48e5765d12c266b04946402e15c92cff2e4ac4979ce2130750ef426e2672119680284 SHA512 c016d5b5e73832b61ff67929d92fa8c16e154656294357266ad29ce1f44db4ca2d2935dba31a6b571187dc838b1d22f1e3b41fefffd1d719a338439adf1646aa
+DIST windows_x86_64_gnullvm-0.52.0.crate 430165 BLAKE2B af9345a1f6e0ed1392ca1534c68d23f3be0fbb6a42b3c5518cee14373e645038526da15e849d14abe45c53766a30c6c2042a626482ba4a05409f325eb6aa36b1 SHA512 e88af35fd1c694dc189783e5c81aafa61aeffbddce4d7130e1125d0ce3d932fafeb345990ffd98477c41b578b7f5090f4f9c0457b02146309b95549c9f8f44f0
+DIST windows_x86_64_msvc-0.48.5.crate 798412 BLAKE2B 8abc0721e2fb337fe17c91d278947d36122d9045b839ba0cf3e690202d242265b676f23cc301da5f9d98c56ca4ecb76f7d6f072ee71bf986a1deca87020b90e5 SHA512 fa1c5cd14ca2ff0082e2504cf59d317dc4dc6f7138d35c12f95d4476a9c13d8b7f5537d0ee251eee7c99411ad31b22263171b7fbd391daa5d3ea3488ceaa61a0
+DIST windows_x86_64_msvc-0.52.0.crate 821600 BLAKE2B cc448b65f98fc0fc4949ae622b7020d2dae927ae45310649f6ef71809740eda9d3db0fc035676c201fd9ab9639e9e7f21e2e992b4c789542f12b419d2c752179 SHA512 3aaee31533a1a48a6ab5cd15b3cadfbd906a93a153e53919d0aa74e440d11e29830554e4e014c215f5b88a475bb733fa8ba4ce9d773d3e23a40ea9ad37ddd0a7
diff --git a/dev-python/automaton/metadata.xml b/dev-python/pyperscan/metadata.xml
index cd55b3a9f..1950f404c 100644
--- a/dev-python/automaton/metadata.xml
+++ b/dev-python/pyperscan/metadata.xml
@@ -2,12 +2,11 @@
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
</maintainer>
- <stabilize-allarches/>
<upstream>
- <remote-id type="pypi">automaton</remote-id>
+ <remote-id type="github">vlaci/pyperscan</remote-id>
+ <remote-id type="pypi">pyperscan</remote-id>
</upstream>
</pkgmetadata>
diff --git a/dev-python/pyperscan/pyperscan-0.3.0.ebuild b/dev-python/pyperscan/pyperscan-0.3.0.ebuild
new file mode 100644
index 000000000..48edc32be
--- /dev/null
+++ b/dev-python/pyperscan/pyperscan-0.3.0.ebuild
@@ -0,0 +1,118 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=maturin
+PYTHON_COMPAT=( python3_{10..12} )
+
+CRATES="
+ aho-corasick@1.1.2
+ autocfg@1.1.0
+ bindgen@0.69.1
+ bitflags@1.3.2
+ bitflags@2.4.1
+ cc@1.0.83
+ cexpr@0.6.0
+ cfg-if@1.0.0
+ clang-sys@1.6.1
+ cmake@0.1.50
+ either@1.9.0
+ errno@0.3.8
+ foreign-types@0.5.0
+ foreign-types-macros@0.2.3
+ foreign-types-shared@0.3.1
+ glob@0.3.1
+ home@0.5.5
+ indoc@1.0.9
+ lazy_static@1.4.0
+ lazycell@1.3.0
+ libc@0.2.151
+ libloading@0.7.4
+ linux-raw-sys@0.4.12
+ lock_api@0.4.11
+ log@0.4.20
+ memchr@2.6.4
+ memoffset@0.8.0
+ minimal-lexical@0.2.1
+ nom@7.1.3
+ once_cell@1.19.0
+ parking_lot@0.12.1
+ parking_lot_core@0.9.9
+ peeking_take_while@0.1.2
+ prettyplease@0.2.15
+ proc-macro2@1.0.70
+ pyo3@0.18.3
+ pyo3-build-config@0.18.3
+ pyo3-ffi@0.18.3
+ pyo3-macros@0.18.3
+ pyo3-macros-backend@0.18.3
+ quote@1.0.33
+ redox_syscall@0.4.1
+ regex@1.10.2
+ regex-automata@0.4.3
+ regex-syntax@0.8.2
+ rustc-hash@1.1.0
+ rustix@0.38.28
+ scopeguard@1.2.0
+ shlex@1.2.0
+ smallvec@1.11.2
+ syn@1.0.109
+ syn@2.0.40
+ target-lexicon@0.12.12
+ thiserror@1.0.50
+ thiserror-impl@1.0.50
+ unicode-ident@1.0.12
+ unindent@0.1.11
+ which@4.4.2
+ winapi@0.3.9
+ winapi-i686-pc-windows-gnu@0.4.0
+ winapi-x86_64-pc-windows-gnu@0.4.0
+ windows-sys@0.48.0
+ windows-sys@0.52.0
+ windows-targets@0.48.5
+ windows-targets@0.52.0
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_gnullvm@0.52.0
+ windows_aarch64_msvc@0.48.5
+ windows_aarch64_msvc@0.52.0
+ windows_i686_gnu@0.48.5
+ windows_i686_gnu@0.52.0
+ windows_i686_msvc@0.48.5
+ windows_i686_msvc@0.52.0
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnu@0.52.0
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_gnullvm@0.52.0
+ windows_x86_64_msvc@0.48.5
+ windows_x86_64_msvc@0.52.0
+"
+
+inherit cargo distutils-r1
+
+DESCRIPTION="An opinionated Python binding for Hyperscan"
+HOMEPAGE="https://github.com/vlaci/pyperscan https://vlaci.github.io/pyperscan/"
+
+SRC_URI="https://github.com/vlaci/pyperscan/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+SRC_URI+=" ${CARGO_CRATE_URIS}"
+
+LICENSE="MIT"
+LICENSE+=" Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD ISC Unicode-DFS-2016 Unlicense"
+
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-libs/vectorscan:=
+ sys-devel/clang
+"
+DEPEND="${RDEPEND}"
+
+QA_FLAGS_IGNORED="
+ usr/lib/python.*/site-packages/pyperscan/_pyperscan.abi3.so
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pypowervm/Manifest b/dev-python/pypowervm/Manifest
deleted file mode 100644
index 114b90bed..000000000
--- a/dev-python/pypowervm/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pypowervm-1.1.24.tar.gz 906444 BLAKE2B c8ed0b066963adcc36b19d919683027fba563da8486aa1775c3f82f8ef3466ae7d909eea3eedd807585bc29fe212f65b061201f8dd5cd81d6055a89cf97b6932 SHA512 b2d254555c7501961bd45ac7a7bfea886ac12c8eab07b6bc34352e425f6e9c9cb6fa8331796164962f1f60afcaa9aa9e8a711cdf71dcb70cce7c4188c4217543
diff --git a/dev-python/pypowervm/metadata.xml b/dev-python/pypowervm/metadata.xml
deleted file mode 100644
index aa6b184c1..000000000
--- a/dev-python/pypowervm/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="github">powervm/pypowervm</remote-id>
- <remote-id type="pypi">pypowervm</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pypowervm/pypowervm-1.1.24.ebuild b/dev-python/pypowervm/pypowervm-1.1.24.ebuild
deleted file mode 100644
index f68bb14f0..000000000
--- a/dev-python/pypowervm/pypowervm-1.1.24.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8} )
-inherit distutils-r1
-
-DESCRIPTION="Python binding for the PowerVM REST API"
-HOMEPAGE="https://pypi.org/project/pypowervm/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/lxml-3.4.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-concurrency-3.8.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-context-2.14.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.22.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.20.0[${PYTHON_USEDEP}]
- dev-python/pyasn1-modules[${PYTHON_USEDEP}]
- dev-python/pyasn1[${PYTHON_USEDEP}]
- >=dev-python/pytz-2013.6[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
- >=dev-python/taskflow-2.16.0[${PYTHON_USEDEP}]"
diff --git a/dev-python/pyqtdarktheme/Manifest b/dev-python/pyqtdarktheme/Manifest
new file mode 100644
index 000000000..1f72bd69c
--- /dev/null
+++ b/dev-python/pyqtdarktheme/Manifest
@@ -0,0 +1 @@
+DIST pyqtdarktheme-2.1.0.tar.gz 42186 BLAKE2B cfbac5c1fc458188140437bab7e0db75145e98fcb0a8098a61263839b0d9e72ba8d47230b9ea77e9ac0f78f3c0c6a25f1d4915ff9c54a886ca100193a7b94c7e SHA512 d7c4e433ca7195f0daf6fed9c100f587101181e581f196837bbbee314385c9dd7f5a23beb20762c211f607b65c306e42aa303d382df1f18795275df603c10521
diff --git a/dev-python/pyqtdarktheme/metadata.xml b/dev-python/pyqtdarktheme/metadata.xml
new file mode 100644
index 000000000..cd4dba3e2
--- /dev/null
+++ b/dev-python/pyqtdarktheme/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pyqtdarktheme</remote-id>
+ <remote-id type="github">5yutan5/pyqtdarktheme</remote-id>
+ <doc>https://pyqtdarktheme.readthedocs.io</doc>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pyqtdarktheme/pyqtdarktheme-2.1.0.ebuild b/dev-python/pyqtdarktheme/pyqtdarktheme-2.1.0.ebuild
new file mode 100644
index 000000000..5831ac885
--- /dev/null
+++ b/dev-python/pyqtdarktheme/pyqtdarktheme-2.1.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=poetry
+inherit distutils-r1 pypi
+
+DESCRIPTION="A flat dark theme for PySide and PyQt. "
+HOMEPAGE="https://github.com/5yutan5/PyQtDarkTheme https://pypi.org/project/PyQtDarkTheme"
+DEPEND="
+ dev-python/darkdetect[${PYTHON_USEDEP}]
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/pyrr/Manifest b/dev-python/pyrr/Manifest
new file mode 100644
index 000000000..383fae89a
--- /dev/null
+++ b/dev-python/pyrr/Manifest
@@ -0,0 +1 @@
+DIST v0.10.3.gh.tar.gz 66011 BLAKE2B 843cb7199daae203e93567ad90a8f4456d9e940830d8a88bbe3b316900ccd38df996016b40435b55e857364312c5bca55d078f416a24f9badbe9867039fbe662 SHA512 f3f045604e28f4a944ea0528363c233a75413a6039bd11b90eeeafadcaaf0ef44bc1303581f2e78adcfb9a365f719be64a24adf1cec8c5ef1abf5642dea58df4
diff --git a/dev-python/pyrr/metadata.xml b/dev-python/pyrr/metadata.xml
new file mode 100644
index 000000000..16493659e
--- /dev/null
+++ b/dev-python/pyrr/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pyrr</remote-id>
+ <remote-id type="github">adamlwgriffiths/pyrr</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pyrr/pyrr-0.10.3.ebuild b/dev-python/pyrr/pyrr-0.10.3.ebuild
new file mode 100644
index 000000000..af4ee13fa
--- /dev/null
+++ b/dev-python/pyrr/pyrr-0.10.3.ebuild
@@ -0,0 +1,56 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="A cross platform utility library for ModernGL"
+HOMEPAGE="https://github.com/adamlwgriffiths/pyrr https://pypi.org/project/pyrr"
+SRC_URI="https://github.com/adamlwgriffiths/pyrr/archive/refs/tags/${PV}.tar.gz -> v${PV}.gh.tar.gz"
+S="${WORKDIR}/Pyrr-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="doc"
+
+RDEPEND="
+ dev-python/multipledispatch[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${RDEPEND}
+ doc? (
+ <dev-python/sphinx-8[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${BDEPEND}"
+
+python_compile() {
+ distutils-r1_python_compile
+ if use doc; then
+ find "${S}/docs" -type f -exec sed -i 's/sphinx\.ext\.pngmath/sphinx\.ext\.imgmath/g' {} \;
+ emake man -C docs
+ fi
+}
+
+python_install() {
+ distutils-r1_python_install
+ use doc && doman "${S}/docs/build/man/pyrr.1"
+}
+
+distutils_enable_tests pytest
+python_test() {
+ local EPYTEST_DESELECT="tests/test_matrix44.py::test_matrix44::test_create_perspective_projection_matrix_dtype"
+ find "${S}/tests" -iname "*.py" -exec sed -i \
+ -e 's/np\.float/float/g' \
+ -e 's/float32/np\.float32/g' \
+ -e 's/np\.int/int/g' \
+ -e 's/int16/np\.int16/g' \
+ {} \;
+ epytest "${S}/tests" || die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/pysaml2/Manifest b/dev-python/pysaml2/Manifest
deleted file mode 100644
index 0123be1ab..000000000
--- a/dev-python/pysaml2/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pysaml2-6.1.0.tar.gz 325101 BLAKE2B 254d1c57e03f13346db89ee18a885d03ce55ed6eec5649d5c764ed6bf97ff20e2a0715e5678409125737acf8fda464c331a17ebe422cc96518bdd3825cf8db05 SHA512 4b3f942a352e6e9ad8df9d3c41269d00dda9f4a71286a4030556d35e5e3946c214fa5c2942f529b1f1ee4dfc30a4d388dffa204f6bdc7614f65b8a3a37ea5ff9
diff --git a/dev-python/pysaml2/metadata.xml b/dev-python/pysaml2/metadata.xml
deleted file mode 100644
index 7817113c0..000000000
--- a/dev-python/pysaml2/metadata.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
- PySAML2 is a pure python implementation of SAML Version 2 Standard. It contains all necessary pieces for building a SAML2 service provider or an identity provider. The distribution contains examples of both. Originally written to work in a WSGI environment there are extensions that allow you to use it with other frameworks.
- </longdescription>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">pysaml2</remote-id>
- <remote-id type="github">rohe/pysaml2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pysaml2/pysaml2-6.1.0.ebuild b/dev-python/pysaml2/pysaml2-6.1.0.ebuild
deleted file mode 100644
index 3be144be9..000000000
--- a/dev-python/pysaml2/pysaml2-6.1.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Python implementation of SAML Version 2 to be used in a WSGI environment"
-HOMEPAGE="https://github.com/rohe/pysaml2"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-RDEPEND="
- >=dev-python/cryptography-1.4[${PYTHON_USEDEP}]
- dev-python/defusedxml[${PYTHON_USEDEP}]
- dev-python/pyopenssl[${PYTHON_USEDEP}]
- dev-python/python-dateutil[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- >=dev-python/requests-1.0.0[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/pysftp/Manifest b/dev-python/pysftp/Manifest
deleted file mode 100644
index 0dfb9b1e4..000000000
--- a/dev-python/pysftp/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pysftp-0.2.9.tar.gz 25949 BLAKE2B 18a06ffb13d9c266dc03a79b982550c8fcead8588ad6f962fdae026c92dd951c963b67033548057700fe5aaed7db3c0fb91ed992e6beb7f1d04173f221a8866e SHA512 408e28c362b3f2573a6717cda811de3c88a8026d3a0c21eae8fb05156be941b16874cd8c318f3a0f533b8524831f22a90bcc208b061ee4c28fc8fda4e441173d
diff --git a/dev-python/pysftp/metadata.xml b/dev-python/pysftp/metadata.xml
deleted file mode 100644
index ad8cead24..000000000
--- a/dev-python/pysftp/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>svdm-gentoo@protonmail.com</email>
- <name>Simon van der Maas</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/pysftp/pysftp-0.2.9.ebuild b/dev-python/pysftp/pysftp-0.2.9.ebuild
deleted file mode 100644
index 5960dac5e..000000000
--- a/dev-python/pysftp/pysftp-0.2.9.ebuild
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-inherit distutils-r1
-
-DESCRIPTION="A friendly face on SFTP"
-HOMEPAGE="https://pypi.org/project/pysftp/"
-SRC_URI="https://files.pythonhosted.org/packages/36/60/45f30390a38b1f92e0a8cf4de178cd7c2bc3f874c85430e40ccf99df8fe7/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
diff --git a/dev-python/pysnooper/Manifest b/dev-python/pysnooper/Manifest
new file mode 100644
index 000000000..fbb3666f5
--- /dev/null
+++ b/dev-python/pysnooper/Manifest
@@ -0,0 +1,2 @@
+DIST PySnooper-1.1.1.tar.gz 45534 BLAKE2B d3adea166bda59a6b5691ccfd2952381b3d5e199944eaa3b1789fc4188711bcfa6040cae9f0f2d8ea35db1ed1d3d04859a606315bb3e9c771fae090de099c783 SHA512 9170b558d8ea00a359c27855e3eee3c2852bb11aaff534e40f8a8c3a95ceb79f58f2102f8d68c9b4f5c0045a65d0910bc44b0409921fff1706ee93c9b5e2c698
+DIST PySnooper-1.2.0.tar.gz 46224 BLAKE2B e40b779bf446b79513e7a6a11e95d476571a077ca0204a1f54cff71ecf9ff85f2dd8db2d0eb6ca9d104467ae64f0cea54a0f772da41d29606847f559117c8527 SHA512 0bcd5f65e102bf048304ce8a6d25827bff6602c664836a1f2a69bdf7a036d86df0179097a227c6a6eaab41ce66355b1a3b2c981e2593cf4dcee1953154de9655
diff --git a/dev-python/pysnooper/metadata.xml b/dev-python/pysnooper/metadata.xml
new file mode 100644
index 000000000..d2a07d873
--- /dev/null
+++ b/dev-python/pysnooper/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>zhuyifei1999@gmail.com</email>
+ <name>YiFei Zhu</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/cool-RR/PySnooper/issues</bugs-to>
+ <remote-id type="pypi">PySnooper</remote-id>
+ <remote-id type="github">cool-RR/PySnooper</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pysnooper/pysnooper-1.1.1.ebuild b/dev-python/pysnooper/pysnooper-1.1.1.ebuild
new file mode 100644
index 000000000..42ae009fa
--- /dev/null
+++ b/dev-python/pysnooper/pysnooper-1.1.1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN="PySnooper"
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Never use print for debugging again"
+HOMEPAGE="
+ https://pypi.org/project/pysnooper/
+ https://github.com/cool-RR/PySnooper
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pysnooper/pysnooper-1.2.0.ebuild b/dev-python/pysnooper/pysnooper-1.2.0.ebuild
new file mode 100644
index 000000000..2d4a42afb
--- /dev/null
+++ b/dev-python/pysnooper/pysnooper-1.2.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN="PySnooper"
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Never use print for debugging again"
+HOMEPAGE="
+ https://pypi.org/project/pysnooper/
+ https://github.com/cool-RR/PySnooper
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pystardict/Manifest b/dev-python/pystardict/Manifest
index 9619607e6..7ee7706bd 100644
--- a/dev-python/pystardict/Manifest
+++ b/dev-python/pystardict/Manifest
@@ -1 +1 @@
-DIST PyStarDict-0.8.tar.gz 795302 BLAKE2B eed78612e616a56920ab40035dd14682d8420d34919df8f00deabdf36b287723cd12815cda9bb3c5eb9d6d123edd961dbd5da7301a4f5c5ac56b0b49665a5050 SHA512 a5cb64993e4d870c3fb30e78462ac52bba994088b51d74e2eb7a0c41436bd1bb6733c6a11f30404eae446669209a7dc8f8d74efb28f5cce3997c26fcad833db7
+DIST pystardict-0.8-r1.tar.gz 795302 BLAKE2B eed78612e616a56920ab40035dd14682d8420d34919df8f00deabdf36b287723cd12815cda9bb3c5eb9d6d123edd961dbd5da7301a4f5c5ac56b0b49665a5050 SHA512 a5cb64993e4d870c3fb30e78462ac52bba994088b51d74e2eb7a0c41436bd1bb6733c6a11f30404eae446669209a7dc8f8d74efb28f5cce3997c26fcad833db7
diff --git a/dev-python/pystardict/metadata.xml b/dev-python/pystardict/metadata.xml
index 2545aa7d6..d44386d84 100644
--- a/dev-python/pystardict/metadata.xml
+++ b/dev-python/pystardict/metadata.xml
@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<upstream>
<remote-id type="pypi">PyStarDict</remote-id>
<remote-id type="github">lig/pystardict</remote-id>
</upstream>
<maintainer type="person">
- <email>shaoyu0209@tuta.io</email>
+ <email>dev@notyourcomputer.net</email>
<name>shaoyu</name>
</maintainer>
</pkgmetadata>
diff --git a/dev-python/pystardict/pystardict-0.8-r1.ebuild b/dev-python/pystardict/pystardict-0.8-r1.ebuild
new file mode 100644
index 000000000..3a15bd503
--- /dev/null
+++ b/dev-python/pystardict/pystardict-0.8-r1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+MY_PN="PyStarDict"
+DESCRIPTION="Library for manipulating StarDict dictionaries from within Python"
+HOMEPAGE="
+ https://pypi.org/project/PyStarDict/
+ https://github.com/lig/pystardict
+"
+SRC_URI="$(pypi_sdist_url --no-normalize ${MY_PN}) -> ${P}-r1.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
+BDEPEND="dev-python/setuptools-scm[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pystardict/pystardict-0.8.ebuild b/dev-python/pystardict/pystardict-0.8.ebuild
deleted file mode 100644
index f528981f2..000000000
--- a/dev-python/pystardict/pystardict-0.8.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-inherit distutils-r1
-
-MY_PN="PyStarDict"
-DESCRIPTION="Library for manipulating StarDict dictionaries from within Python"
-HOMEPAGE="https://github.com/lig/pystardict https://pypi.org/project/PyStarDict/"
-SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_PN}-${PV}.tar.gz"
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
-
-distutils_enable_tests pytest
diff --git a/dev-python/pystray/Manifest b/dev-python/pystray/Manifest
deleted file mode 100644
index 8a341d8eb..000000000
--- a/dev-python/pystray/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pystray-0.17.3.tar.gz 24877 BLAKE2B 5faf19241436d56d90a021c24753b914b3ec72fe2f511c3d1cf610e091829a8b130ade1ed4fef19ef6972d0b8ec5a3845f6ba443392d50d1b26bf81ef0715e61 SHA512 63b8bcffe80b619b753169d9b61ff7525cab550e5695abac9f01b9b6623555384a592a92b4ac23e251ff162db1a131aa482f8b2ecb2821b56e3cbb232434821a
diff --git a/dev-python/pystray/metadata.xml b/dev-python/pystray/metadata.xml
deleted file mode 100644
index cd174bd3e..000000000
--- a/dev-python/pystray/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>telans@posteo.de</email>
- <name>James Beddek</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/pystray/pystray-0.17.3.ebuild b/dev-python/pystray/pystray-0.17.3.ebuild
deleted file mode 100644
index 90908ae81..000000000
--- a/dev-python/pystray/pystray-0.17.3.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 2020-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="System tray icon creation via python"
-HOMEPAGE="https://github.com/moses-palmer/pystray"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~x86"
-
-DEPEND="dev-python/sphinx[${PYTHON_USEDEP}]"
-RDEPEND="
- ${DEPEND}
- dev-python/python-xlib[${PYTHON_USEDEP}]
-"
-BDEPEND="dev-python/pillow[${PYTHON_USEDEP}]"
diff --git a/dev-python/pysubs2/Manifest b/dev-python/pysubs2/Manifest
index 31660782e..c1c1f3c87 100644
--- a/dev-python/pysubs2/Manifest
+++ b/dev-python/pysubs2/Manifest
@@ -1 +1,3 @@
-DIST pysubs2-1.2.0.tar.gz 844305 BLAKE2B be553a2672cfebe08847e1fc65b41420485846d75ccb4dbb2c9bb8aec1843d2665bd8117a2f718871ea17e79e40ec491f2360eea695c07622fee16fe52a7f7f7 SHA512 37cf74c8c812c1683ef926c8bb749479bc9eaedd780f29a3299295885fd329eae7b2863f293da878ce54b696e8783cfab49cb341b54735a892339c77c551edfb
+DIST pysubs2-1.4.4.tar.gz 850577 BLAKE2B 00fe742dd0545d816e335370c7691a456f148dc33b7c0f772941c69d6aef7c4ff43e734feecaf56bb8d0f199bc57e558a9a6bf5c3aa8223b87c3e51529eff5a1 SHA512 c8ae6742cafa7097a935dee2a5e2d67620e66bba2f0fefa7ee52d03c5ba53f227b6e6d761b0a60598afd16b34f3bbf9da3d0c423a3133983d1f3cb9437dcc094
+DIST pysubs2-1.5.0.tar.gz 851633 BLAKE2B 2f0ee302495931cfb32283f9e9236c2825b90db8224b356d6c517a084f4be6f61e805071b78d3187a2507703bdd4a7e6b4328a3da931dc745c28ee12aaf6ff06 SHA512 c13cb843da1e684e17c40e0704010182ab574627e66597cc9eb0fb70a25bfe1fa3fecc1aa2dd76bf45f64741fcb4750267e14eae647019f4716f1caee52b0efa
+DIST pysubs2-1.6.1.tar.gz 1148547 BLAKE2B ce5b2f902de6c4b7e101688d9aa0c27c6fc70f110a821442a4bbd4a6094997028720713a2928f24f89498fcc0794251e3e019f95216037ccffc4a50e0d31a165 SHA512 64e9b04f9f513b094e73f97ea09285dfe5c046e900fc321b2bb360a7b7eb9eb8070c7d3665008a7239caedd9a4adb1c47bc9aee75934535ee3e200044a5634a0
diff --git a/dev-python/pysubs2/metadata.xml b/dev-python/pysubs2/metadata.xml
index cbe3c6a53..283edfe90 100644
--- a/dev-python/pysubs2/metadata.xml
+++ b/dev-python/pysubs2/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>smaniotto.nicola@gmail.com</email>
<name>Nicola Smaniotto</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">tkarabela/pysubs2</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/pysubs2/pysubs2-1.2.0.ebuild b/dev-python/pysubs2/pysubs2-1.4.4.ebuild
index ae206b4b8..387f00cdb 100644
--- a/dev-python/pysubs2/pysubs2-1.2.0.ebuild
+++ b/dev-python/pysubs2/pysubs2-1.4.4.ebuild
@@ -1,9 +1,10 @@
-# Copyright 2021 Gentoo Authors
+# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{8..9} )
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
@@ -15,4 +16,4 @@ LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
-distutils_enable_tests nose
+distutils_enable_tests pytest
diff --git a/dev-python/pysubs2/pysubs2-1.5.0.ebuild b/dev-python/pysubs2/pysubs2-1.5.0.ebuild
new file mode 100644
index 000000000..387f00cdb
--- /dev/null
+++ b/dev-python/pysubs2/pysubs2-1.5.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1
+
+DESCRIPTION="A library for editing subtitle files"
+HOMEPAGE="https://github.com/tkarabela/pysubs2"
+SRC_URI="https://github.com/tkarabela/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pysubs2/pysubs2-1.6.1.ebuild b/dev-python/pysubs2/pysubs2-1.6.1.ebuild
new file mode 100644
index 000000000..ed04e886c
--- /dev/null
+++ b/dev-python/pysubs2/pysubs2-1.6.1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1
+
+DESCRIPTION="A library for editing subtitle files"
+HOMEPAGE="https://github.com/tkarabela/pysubs2"
+SRC_URI="https://github.com/tkarabela/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pytest-benchmark/Manifest b/dev-python/pytest-benchmark/Manifest
index f02988a91..69e92289d 100644
--- a/dev-python/pytest-benchmark/Manifest
+++ b/dev-python/pytest-benchmark/Manifest
@@ -1 +1 @@
-DIST pytest-benchmark-3.4.1.tar.gz 322758 BLAKE2B d29254f412aee0955429e7957fa31e9443b3319bec256b601c456efa7020abbd5b4d9ed43799fda62f53f70f14de3f42a93b29b7366989294f037ec2ee3215fc SHA512 54fb5e3a176578b3c8f339878c7a9d047a0785befcbba42bb68c34b4b636d9b6f6a2097b36c5eefbbcf1a91f943bdae762c7978a0dba1af53514052f513ef4c5
+DIST pytest-benchmark-4.0.0.gh.tar.gz 315989 BLAKE2B 1d0d8692b1c8e4eada2e0e369362d2938c78cfe53c9fc8b6510a7e679fc9efcd8db8ac4add6b67f21f839467557fa109f911374da003c2537f06b08ca013c0a6 SHA512 88636e44c184f5072ad081a89f08e8838a11397e6b88298d7f235b531f894792001b858fc5c810b1399d41ec55de5db9057552fb7544fb405a04c3ba5ffbe329
diff --git a/dev-python/pytest-benchmark/metadata.xml b/dev-python/pytest-benchmark/metadata.xml
index bb332d1e9..61f67f33d 100644
--- a/dev-python/pytest-benchmark/metadata.xml
+++ b/dev-python/pytest-benchmark/metadata.xml
@@ -1,23 +1,11 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
- This plugin tightly integrates into pytest. To use this effectively you should know a thing or two about pytest first. Take a look at the introductory material or watch talks.
-
- Few notes:
-
- This plugin benchmarks functions and only that. If you want to measure block of code or whole programs you will need to write a wrapper function.
- In a test you can only benchmark one function. If you want to benchmark many functions write more tests or use parametrization http://docs.pytest.org/en/latest/parametrize.html.
- To run the benchmarks you simply use pytest to run your "tests". The plugin will automatically do the benchmarking and generate a result table. Run pytest --help for more details.
-
-This plugin provides a benchmark fixture. This fixture is a callable object that will benchmark any function passed to it.
- </longdescription>
- <upstream>
- <remote-id type="github">ionelmc/pytest-benchmark</remote-id>
- <remote-id type="pypi">pytest-benchmark</remote-id>
- </upstream>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">ionelmc/pytest-benchmark</remote-id>
+ <remote-id type="pypi">pytest-benchmark</remote-id>
+ <doc>https://pytest-benchmark.readthedocs.io/</doc>
+ <changelog>https://pytest-benchmark.readthedocs.io/en/latest/changelog.html</changelog>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/pytest-benchmark/pytest-benchmark-3.4.1.ebuild b/dev-python/pytest-benchmark/pytest-benchmark-3.4.1.ebuild
deleted file mode 100644
index 3cc5d7a49..000000000
--- a/dev-python/pytest-benchmark/pytest-benchmark-3.4.1.ebuild
+++ /dev/null
@@ -1,51 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-inherit distutils-r1
-
-DESCRIPTION="py.test fixture for benchmarking code "
-HOMEPAGE="
- https://pypi.python.org/pypi/pytest-benchmark
- https://github.com/ionelmc/pytest-benchmark
-"
-SRC_URI="https://github.com/ionelmc/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-DOCS=( AUTHORS.rst CHANGELOG.rst README.rst )
-
-RDEPEND="dev-python/py-cpuinfo[${PYTHON_USEDEP}]"
-BDEPEND="test? (
- dev-python/aspectlib[${PYTHON_USEDEP}]
- dev-python/freezegun[${PYTHON_USEDEP}]
- dev-python/hunter[${PYTHON_USEDEP}]
- dev-python/pygal[${PYTHON_USEDEP}]
- dev-python/pygaljs[${PYTHON_USEDEP}]
- $(python_gen_cond_dep \
- 'dev-python/elasticsearch-py[${PYTHON_USEDEP}]' python3_8 python3_9 )
-)"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs dev-python/sphinx-py3doc-enhanced-theme
-
-python_prepare() {
- if [[ ${EPYTHON} == python3.10 ]]; then
- rm tests/test_elasticsearch_storage.py || die
- fi
-}
-
-python_test() {
- local -x PYTHONPATH="${S}/tests:${BUILD_DIR}/lib:${PYTHONPATH}"
- local epytest_args=(
- -o markers=benchmark
- --deselect tests/test_cli.py::test_help
- --deselect tests/test_cli.py::test_help_compare
- )
-
- epytest "${epytest_args[@]}"
-}
diff --git a/dev-python/pytest-benchmark/pytest-benchmark-4.0.0.ebuild b/dev-python/pytest-benchmark/pytest-benchmark-4.0.0.ebuild
new file mode 100644
index 000000000..7fcdfec05
--- /dev/null
+++ b/dev-python/pytest-benchmark/pytest-benchmark-4.0.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+DOCS_BUILDER="sphinx"
+DOCS_DEPEND="dev-python/sphinx-py3doc-enhanced-theme"
+DOCS_DIR="docs"
+
+inherit distutils-r1 docs
+
+DESCRIPTION="py.test fixture for benchmarking code"
+HOMEPAGE="
+ https://pypi.python.org/pypi/pytest-benchmark/
+ https://github.com/ionelmc/pytest-benchmark
+"
+SRC_URI="https://github.com/ionelmc/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DOCS=( {AUTHORS,CHANGELOG,README}.rst )
+
+RDEPEND="
+ dev-python/py-cpuinfo[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ test? (
+ dev-python/aspectlib[${PYTHON_USEDEP}]
+ dev-python/elasticsearch[${PYTHON_USEDEP}]
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ dev-python/hunter[${PYTHON_USEDEP}]
+ dev-python/pygal[${PYTHON_USEDEP}]
+ dev-python/pygaljs[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-vcs/git
+ dev-vcs/mercurial
+ )
+"
+
+EPYTEST_DESELECT=(
+ # The equality test is not correct (the format changed but the tests did not)
+ # This also deselect other tests for some reason
+ tests/test_cli.py::test_help
+ tests/test_cli.py::test_help_compare
+ tests/test_benchmark.py::test_abort_broken
+ tests/test_utils.py::test_clonefunc
+)
+
+distutils_enable_tests pytest
diff --git a/dev-python/pytest-cases/Manifest b/dev-python/pytest-cases/Manifest
new file mode 100644
index 000000000..60bc27957
--- /dev/null
+++ b/dev-python/pytest-cases/Manifest
@@ -0,0 +1 @@
+DIST pytest-cases-3.8.2.tar.gz 1094993 BLAKE2B 2a5b1dd57dca9b159756287b8bd4d2a54fa1f48e2256959343bb196867ab57ff6852826744f166ac39dbb0f06bcce4918a718a1097d5d2e3841b0a516838bf40 SHA512 5da2b8db56e91d3f0948b90b9225d21fad5c4cf2c319388844aca9b74b69ec9c91f7a661e28cc06b9ab8a85a11272fc4d5fc81d0d9d4b0abff80fb83d34744ad
diff --git a/dev-python/pytest-cases/metadata.xml b/dev-python/pytest-cases/metadata.xml
new file mode 100644
index 000000000..474f1d4e9
--- /dev/null
+++ b/dev-python/pytest-cases/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">pytest-cases</remote-id>
+ <remote-id type="github">smarie/python-pytest-cases</remote-id>
+ <doc>https://smarie.github.io/python-pytest-cases/</doc>
+ <maintainer>
+ <email>sylvain.marie@schneider-electric.com</email>
+ <name>Sylvain Marie</name>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pytest-cases/pytest-cases-3.8.2.ebuild b/dev-python/pytest-cases/pytest-cases-3.8.2.ebuild
new file mode 100644
index 000000000..48fc153a4
--- /dev/null
+++ b/dev-python/pytest-cases/pytest-cases-3.8.2.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND=(
+ dev-python/mkdocs-material
+ dev-python/regex
+)
+
+inherit distutils-r1 docs pypi
+
+DESCRIPTION="Separate test code from test cases in pytest"
+HOMEPAGE="
+ https://pypi.org/project/pytest-cases/
+ https://github.com/smarie/python-pytest-cases
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/decopatch[${PYTHON_USEDEP}]
+ >=dev-python/makefun-1.15.1[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+# https://github.com/smarie/python-pytest-cases/issues/330
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ <dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-harvest[${PYTHON_USEDEP}]
+ dev-python/pytest-steps[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_compile_all() {
+ docs_compile
+}
diff --git a/dev-python/pytest-celery/Manifest b/dev-python/pytest-celery/Manifest
index 49ac67b70..3b35be01c 100644
--- a/dev-python/pytest-celery/Manifest
+++ b/dev-python/pytest-celery/Manifest
@@ -1 +1 @@
-DIST pytest-celery-0.0.0.tar.gz 3056 BLAKE2B 7268ff9bbb506304bd5aec7f29163f0ba9a775d47a0bf9671e4f7c271a7dc4386f2c515d0a202cd6f94543641f4289b6606eb82082569a84f4af19f4c6d55be2 SHA512 5fc9c52da674ec2fcf55d6ebf278aec166877c5bd7962c786e5432e77d15132247021e4552001aad19bd7827e5b16256062eade43a8fc59c5b52e264d06b1cae
+DIST pytest-celery-0.1.0.gh.tar.gz 2746 BLAKE2B a9f2a355adaa88ec33061f43664d53e1bb50f94e2679d79e61443a0ff3d0d8f68fec0b7101538344c17bd854c964c75e546198bc7388c8f44b1f361fc87877fe SHA512 b48e03a2f1bc813aebd19124ed51666cfe6a049651a79c3dab15b14925de426bfb89284f8a599490c73477a60939e0321b14fdc90e0c72f82e6bcc67992d791f
diff --git a/dev-python/pytest-celery/metadata.xml b/dev-python/pytest-celery/metadata.xml
index 96e702a5b..7eac9edd7 100644
--- a/dev-python/pytest-celery/metadata.xml
+++ b/dev-python/pytest-celery/metadata.xml
@@ -1,12 +1,9 @@
<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="github">celery/pytest-celery</remote-id>
<remote-id type="pypi">celery</remote-id>
</upstream>
-</pkgmetadata> \ No newline at end of file
+</pkgmetadata>
diff --git a/dev-python/pytest-celery/pytest-celery-0.0.0.ebuild b/dev-python/pytest-celery/pytest-celery-0.1.0.ebuild
index 1cc3e91be..be8b0c06c 100644
--- a/dev-python/pytest-celery/pytest-celery-0.0.0.ebuild
+++ b/dev-python/pytest-celery/pytest-celery-0.1.0.ebuild
@@ -1,22 +1,19 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
-
-DISTUTILS_USE_SETUPTOOLS=no
-MYPV="${PV/_alpha/a}"
-MYP="${PN}-${MYPV}"
-PYTHON_COMPAT=( python3_8 )
+EAPI=8
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_11 )
inherit distutils-r1
DESCRIPTION="a shim pytest plugin to enable celery.contrib.pytest"
HOMEPAGE="
https://github.com/celery/pytest-celery
- https://pypi.org/project/pytest-celery
+ https://pypi.org/project/pytest-celery/
"
-SRC_URI="mirror://pypi/${MYP:0:1}/${PN}/${MYP}.tar.gz"
-S="${WORKDIR}/${MYP}"
+SRC_URI="https://github.com/celery/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64"
diff --git a/dev-python/pytest-click/Manifest b/dev-python/pytest-click/Manifest
new file mode 100644
index 000000000..b447dd25b
--- /dev/null
+++ b/dev-python/pytest-click/Manifest
@@ -0,0 +1 @@
+DIST pytest_click-1.1.0.tar.gz 5054 BLAKE2B ad14c214ff767293d75a02930cc9852b97145c5554b6c4aa112e523a6d3e95fa967931c0a3b0beee3e2a69cd8df0d1c2c1bf33f351c3585cb446e1cd6efa5cad SHA512 49ab5fd3499cc519172f364505f1884596c0b45ebc1b64245cfc235f70d2c4765d133d69615300429b4010f28ab725941f53219f4f0ae6520b452a22503886a1
diff --git a/dev-python/pytest-click/metadata.xml b/dev-python/pytest-click/metadata.xml
new file mode 100644
index 000000000..4196cc854
--- /dev/null
+++ b/dev-python/pytest-click/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">pytest-click</remote-id>
+ <remote-id type="github">Stranger6667/pytest-click</remote-id>
+ <maintainer>
+ <email>dadygalo@gmail.com</email>
+ <name>Dmitry Dygalo</name>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pytest-click/pytest-click-1.1.0.ebuild b/dev-python/pytest-click/pytest-click-1.1.0.ebuild
new file mode 100644
index 000000000..3b2332fbc
--- /dev/null
+++ b/dev-python/pytest-click/pytest-click-1.1.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3 python3_{10..12} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="Pytest plugin for Click"
+HOMEPAGE="
+ https://pypi.org/project/pytest-click/
+ https://github.com/Stranger6667/pytest-click
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/click[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+"
+
+DOCS=( CHANGELOG.md README.rst )
+
+distutils_enable_tests pytest
diff --git a/dev-python/pytest-cython/Manifest b/dev-python/pytest-cython/Manifest
deleted file mode 100644
index f5da597e9..000000000
--- a/dev-python/pytest-cython/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pytest-cython-0.1.1.tar.gz 817776 BLAKE2B d9b812cefc45153a1ce7abb0b1be2e7fc329b88d89ed48529f62a38c402d74bb164ed6b928f291586f0064820dc52156eacdf161da3a0d65d10f5a15681a17e4 SHA512 353a6c3b67df0608b24f24e04ba5d3fa48065d3960834e32bf44f2dfcd6248cb4c86de528c15dbfd20e36811bfb0ae04670f6441afb74bcb7bd1d7af71060463
diff --git a/dev-python/pytest-cython/metadata.xml b/dev-python/pytest-cython/metadata.xml
deleted file mode 100644
index 3819393dc..000000000
--- a/dev-python/pytest-cython/metadata.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/lgpage/pytest-cython/issues</bugs-to>
- <changelog>https://raw.githubusercontent.com/lgpage/pytest-cython/master/CHANGELOG.rst</changelog>
- <doc lang="en">https://readthedocs.org/projects/pytest-cython/</doc>
- <maintainer>
- <email>page.lg@gmail.com</email>
- <name>Logan Page</name>
- </maintainer>
- <remote-id type="pypi">pytest-cython</remote-id>
- <remote-id type="github">lgpage/pytest-cython</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pytest-cython/pytest-cython-0.1.1.ebuild b/dev-python/pytest-cython/pytest-cython-0.1.1.ebuild
deleted file mode 100644
index 69c69fa72..000000000
--- a/dev-python/pytest-cython/pytest-cython-0.1.1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="8"
-
-PYTHON_COMPAT=( pypy3 python3_{8..10} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="Plugin for testing Cython extension modules"
-HOMEPAGE="https://github.com/lgpage/pytest-cython"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-SLOT="0"
-LICENSE="MIT"
-KEYWORDS="~amd64"
-
-RDEPEND="
- dev-python/cython[${PYTHON_USEDEP}]
- dev-python/pytest[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-
-distutils_enable_sphinx docs dev-python/sphinx-py3doc-enhanced-theme
-distutils_enable_tests pytest
-
-python_test() {
- epytest -vv \
- --deselect tests/test_pytest_cython.py::test_wrap_c_ext_module \
- --deselect tests/test_pytest_cython.py::test_cython_ext_module \
- --deselect tests/test_pytest_cython.py::test_wrap_cpp_ext_module \
- --deselect tests/test_pytest_cython.py::test_pure_py_module \
- || die
-}
diff --git a/dev-python/pytest-flask/Manifest b/dev-python/pytest-flask/Manifest
new file mode 100644
index 000000000..2812cc719
--- /dev/null
+++ b/dev-python/pytest-flask/Manifest
@@ -0,0 +1 @@
+DIST pytest-flask-1.3.0.tar.gz 35816 BLAKE2B 008c7f2acdc320dcab3e1745fb8e546a1f4cbdf75155db85f00bb70aea2eb3efa46d68f39fac114e3ddc3675b45d3d6d9a7bba8eb0c331c36e7f3d08c83c5da0 SHA512 4512e261cf6b284540ea9dda4cade52be57776c16f0cc7185755cbec294e526268753dbe663200a6ab3dee2ac0cc42df080d8f0045f88feac5de115fcc71ac21
diff --git a/dev-python/pytest-flask/files/pytest-flask-fix-flask-compat.patch b/dev-python/pytest-flask/files/pytest-flask-fix-flask-compat.patch
new file mode 100644
index 000000000..788d3e0dd
--- /dev/null
+++ b/dev-python/pytest-flask/files/pytest-flask-fix-flask-compat.patch
@@ -0,0 +1,74 @@
+diff --git a/pytest_flask/fixtures.py b/pytest_flask/fixtures.py
+index eb25861..486ec8b 100755
+--- a/pytest_flask/fixtures.py
++++ b/pytest_flask/fixtures.py
+@@ -3,7 +3,6 @@ import socket
+ import warnings
+
+ import pytest
+-from flask import _request_ctx_stack
+
+ from ._internal import _determine_scope
+ from ._internal import _make_accept_header
+@@ -93,23 +92,6 @@ def config(app):
+ return app.config
+
+
+-@pytest.fixture
+-def request_ctx(app):
+- """The request context which contains all request relevant information,
+- e.g. `session`, `g`, `flashes`, etc.
+- """
+- warnings.warn(
+- "In Werzeug 2.0.0, the Client request methods "
+- "(client.get, client.post) always return an instance of TestResponse. This "
+- "class provides a reference to the request object through 'response.request' "
+- "The fixture 'request_ctx' is deprecated and will be removed in the future, using TestResponse.request "
+- "is the prefered way.",
+- DeprecationWarning,
+- stacklevel=2,
+- )
+- return _request_ctx_stack.top
+-
+-
+ @pytest.fixture(params=["application/json", "text/html"])
+ def mimetype(request):
+ return request.param
+diff --git a/pytest_flask/plugin.py b/pytest_flask/plugin.py
+index bb4bf59..037f062 100755
+--- a/pytest_flask/plugin.py
++++ b/pytest_flask/plugin.py
+@@ -19,7 +19,6 @@ from .fixtures import client
+ from .fixtures import client_class
+ from .fixtures import config
+ from .fixtures import live_server
+-from .fixtures import request_ctx
+ from .pytest_compat import getfixturevalue
+
+
+diff --git a/tests/test_fixtures.py b/tests/test_fixtures.py
+index a55fd98..b38af95 100755
+--- a/tests/test_fixtures.py
++++ b/tests/test_fixtures.py
+@@ -16,21 +16,6 @@ class TestFixtures:
+ def test_accept_jsonp(self, accept_jsonp):
+ assert accept_jsonp == [("Accept", "application/json-p")]
+
+- def test_request_ctx(self, app, request_ctx):
+- assert request_ctx.app is app
+-
+- def test_request_ctx_is_kept_around(self, client):
+- res = client.get(url_for("index"), headers=[("X-Something", "42")])
+- """In werkzeug 2.0.0 the test Client provides a new attribute 'request'
+- in the response class wich holds a reference to the request object that
+- produced the respective response, making instrospection easier"""
+- try:
+- assert res.request.headers["X-Something"] == "42"
+- except AttributeError:
+- """This is the conventional (pre 2.0.0) way of reaching the
+- request object, using flask.request global."""
+- assert request.headers["X-Something"] == "42"
+-
+ def test_accept_mimetype(self, accept_mimetype):
+ mimestrings = [[("Accept", "application/json")], [("Accept", "text/html")]]
+ assert accept_mimetype in mimestrings
diff --git a/dev-python/pytest-flask/metadata.xml b/dev-python/pytest-flask/metadata.xml
new file mode 100644
index 000000000..315ef7d75
--- /dev/null
+++ b/dev-python/pytest-flask/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pytest-flask</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pytest-flask/pytest-flask-1.3.0.ebuild b/dev-python/pytest-flask/pytest-flask-1.3.0.ebuild
new file mode 100644
index 000000000..09aa38167
--- /dev/null
+++ b/dev-python/pytest-flask/pytest-flask-1.3.0.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{11,12} pypy3 )
+inherit distutils-r1 pypi
+
+DESCRIPTION="A set of pytest fixtures to test Flask applications "
+HOMEPAGE="http://pytest-flask.readthedocs.org"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+RDEPEND="
+ dev-python/flask[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+"
+
+DEPEND="${RDEPEND}
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pytest-harvest/Manifest b/dev-python/pytest-harvest/Manifest
new file mode 100644
index 000000000..3e5f25609
--- /dev/null
+++ b/dev-python/pytest-harvest/Manifest
@@ -0,0 +1 @@
+DIST pytest-harvest-1.10.4.tar.gz 77384 BLAKE2B 93acd363b9874ef0a8e776c3472cde27417776850d004e83f00ecd52c7c9acbf1758d0062bd14fb83889c9b688a1f92352e42afe2dd6a9b01c567e8afe9d2f1c SHA512 61e371478b0fe809cb5e39040596a241ef3630641d7465799a5e24a953453924f3f6b5b8b94e67a51f1f5b2cb744bb2a698a7d50b6d638dc866a856bf74abe7a
diff --git a/dev-python/pytest-harvest/files/pytest-harvest-1.10.4-strict-mkdocs.patch b/dev-python/pytest-harvest/files/pytest-harvest-1.10.4-strict-mkdocs.patch
new file mode 100644
index 000000000..eb63fdfa0
--- /dev/null
+++ b/dev-python/pytest-harvest/files/pytest-harvest-1.10.4-strict-mkdocs.patch
@@ -0,0 +1,20 @@
+https://www.mkdocs.org/about/release-notes/#stricter-directory-validation
+
+diff --git a/docs/mkdocs.yml b/mkdocs.yml
+similarity index 95%
+rename from docs/mkdocs.yml
+rename to mkdocs.yml
+index 7819dac..4a6d73e 100644
+--- a/docs/mkdocs.yml
++++ b/mkdocs.yml
+@@ -1,8 +1,8 @@
+ site_name: pytest_harvest
+ # site_description: 'A short description of my project'
+ repo_url: https://github.com/smarie/python-pytest-harvest
+-docs_dir: .
+-site_dir: ../site
++docs_dir: ./docs
++site_dir: ./site
+ nav:
+ - Home: index.md
+ - API reference: api_reference.md
diff --git a/dev-python/pytest-harvest/metadata.xml b/dev-python/pytest-harvest/metadata.xml
new file mode 100644
index 000000000..d413c12f2
--- /dev/null
+++ b/dev-python/pytest-harvest/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">pytest-harvest</remote-id>
+ <remote-id type="github">smarie/python-pytest-harvest</remote-id>
+ <doc>https://smarie.github.io/python-pytest-harvest/</doc>
+ <maintainer>
+ <email>sylvain.marie@schneider-electric.com</email>
+ <name>Sylvain Marie</name>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pytest-harvest/pytest-harvest-1.10.4.ebuild b/dev-python/pytest-harvest/pytest-harvest-1.10.4.ebuild
new file mode 100644
index 000000000..505a08ccb
--- /dev/null
+++ b/dev-python/pytest-harvest/pytest-harvest-1.10.4.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="dev-python/mkdocs-material"
+
+inherit distutils-r1 docs pypi
+
+DESCRIPTION="Store and retrieve data created during your pytest tests execution"
+HOMEPAGE="https://pypi.org/project/pytest-harvest/ https://github.com/smarie/python-pytest-harvest"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/decopatch[${PYTHON_USEDEP}]
+ >=dev-python/makefun-1.5[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+# https://github.com/smarie/python-pytest-cases/issues/330
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pandas[${PYTHON_USEDEP}]
+ <dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/pytest-cases[${PYTHON_USEDEP}]
+ dev-python/tabulate[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=( "${FILESDIR}/${P}-strict-mkdocs.patch" )
+
+EPYTEST_DESELECT=(
+ "pytest_harvest/tests/test_all_raw_with_meta_check.py::test_run_all_tests[test_get_session_results.py]"
+ "pytest_harvest/tests/test_all_raw_with_meta_check.py::test_run_all_tests[test_get_session_results_indirect_and_noparam.py]"
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ sed "/pytest-runner/d" -i setup.cfg || die
+ distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+ docs_compile
+}
+
+python_test() {
+ epytest pytest_harvest/tests --doctest-modules
+}
diff --git a/dev-python/pytest-instafail/Manifest b/dev-python/pytest-instafail/Manifest
deleted file mode 100644
index 6f6278fa2..000000000
--- a/dev-python/pytest-instafail/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pytest-instafail-0.4.2.tar.gz 5384 BLAKE2B ac9701476a6b707bc678c3368d02408bec9ea5ffa84abe60bd5b455ff00b860399e9993f388eef1d08335d98c5f1b6c66f99d8143053ac09dc6696f7cf96a4f0 SHA512 31d7b2f2e6f4fa4a43001f9a3e983b6a7506bce9bb4c1568f07f7bc58cb469d7a514a73a04c84a5b2836dfb223ddbe7777b86a4c0e5ec9cb8e1e8eb51111eb9b
diff --git a/dev-python/pytest-instafail/metadata.xml b/dev-python/pytest-instafail/metadata.xml
deleted file mode 100644
index 450c13e40..000000000
--- a/dev-python/pytest-instafail/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <remote-id type="github">pytest-dev/pytest-instafail</remote-id>
- <remote-id type="pypi">pytest-instafail</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pytest-instafail/pytest-instafail-0.4.2.ebuild b/dev-python/pytest-instafail/pytest-instafail-0.4.2.ebuild
deleted file mode 100644
index 44da12ecc..000000000
--- a/dev-python/pytest-instafail/pytest-instafail-0.4.2.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-inherit distutils-r1
-
-DESCRIPTION="Plugin for pytest that shows failures and errors instantly"
-HOMEPAGE="
- https://github.com/pytest-dev/pytest-instafail
- https://pypi.org/project/pytest-instafail
-"
-SRC_URI="https://github.com/pytest-dev/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-RDEPEND=">=dev-python/pytest-2.9[${PYTHON_USEDEP}]"
-BDEPEND="test? ( dev-python/pexpect[${PYTHON_USEDEP}] )"
-
-distutils_enable_tests pytest
-
-python_test() {
- epytest --deselect test_instafail.py::TestInstafailingTerminalReporter::test_print_stacktrace_once_with_pdb
-}
diff --git a/dev-python/pytest-isort/Manifest b/dev-python/pytest-isort/Manifest
deleted file mode 100644
index 61690190d..000000000
--- a/dev-python/pytest-isort/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pytest-isort-1.3.0.tar.gz 7321 BLAKE2B b65bf2a4e0e8133ed0c724b22f7ae4fa61341c34e01a1de3229b37144be21dc15c44842e05ddd427addf1028d5eac496e2b84646fec8e21fe4fc05544a4e30ea SHA512 a26c5dd9428b85d1387239245c437fded84ece8148ab016de9e41be3dff72627d0e7a47176d9fa5768b366655fe7affd4f665c3d2cd6fb2f2a2e15334e1fff63
diff --git a/dev-python/pytest-isort/metadata.xml b/dev-python/pytest-isort/metadata.xml
deleted file mode 100644
index 23b46bec7..000000000
--- a/dev-python/pytest-isort/metadata.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <!-- maintainer-needed -->
- <upstream>
- <remote-id type="github">moccu/pytest-isort</remote-id>
- <remote-id type="pypi">pytest-isort</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pytest-isort/pytest-isort-1.3.0.ebuild b/dev-python/pytest-isort/pytest-isort-1.3.0.ebuild
deleted file mode 100644
index cb8ef56ae..000000000
--- a/dev-python/pytest-isort/pytest-isort-1.3.0.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Plugin to check import ordering using isort"
-HOMEPAGE="https://github.com/moccu/pytest-isort"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="BSD"
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-
-distutils_enable_tests pytest
-
-RDEPEND="
- >=dev-python/pytest-3.5[${PYTHON_USEDEP}]
- >=dev-python/isort-4.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/pytest-mypy-plugins/Manifest b/dev-python/pytest-mypy-plugins/Manifest
new file mode 100644
index 000000000..a09bb2ad3
--- /dev/null
+++ b/dev-python/pytest-mypy-plugins/Manifest
@@ -0,0 +1 @@
+DIST pytest-mypy-plugins-3.1.0.gh.tar.gz 24331 BLAKE2B b4cae94e254f8da0ef8cd081479cbee4522150843ef3bbbd16ae6efe6722e44e84aa49e761e99699b75c94f8b44963e8f9eeefb5c5b3352411df4801a1bbc5b4 SHA512 4892b653b9cd2bbe5cd253c5f0472d48a6eaf5e1261d53ef0f1c53470c2589baf21d428a0873c64acca71eec38ef9653ec501e0746ffc564d30830ba68148f91
diff --git a/dev-python/pytest-mypy-plugins/metadata.xml b/dev-python/pytest-mypy-plugins/metadata.xml
new file mode 100644
index 000000000..3da79fbbd
--- /dev/null
+++ b/dev-python/pytest-mypy-plugins/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>watermanpaint@posteo.net</email>
+ <name>Lucio Sauer</name>
+ </maintainer>
+ <upstream>
+ <changelog>
+ https://github.com/typeddjango/pytest-mypy-plugins/blob/master/CHANGELOG.md
+ </changelog>
+ <remote-id type="github">typeddjango/pytest-mypy-plugins</remote-id>
+ <remote-id type="pypi">pytest-mypy-plugins</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pytest-mypy-plugins/pytest-mypy-plugins-3.1.0.ebuild b/dev-python/pytest-mypy-plugins/pytest-mypy-plugins-3.1.0.ebuild
new file mode 100644
index 000000000..240e457a1
--- /dev/null
+++ b/dev-python/pytest-mypy-plugins/pytest-mypy-plugins-3.1.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11,12} )
+inherit distutils-r1
+
+DESCRIPTION="pytest plugin for testing mypy types, stubs, plugins"
+HOMEPAGE="
+ https://pypi.org/project/pytest-mypy-plugins/
+ https://github.com/typeddjango/pytest-mypy-plugins/
+"
+
+SRC_URI="https://github.com/typeddjango/pytest-mypy-plugins/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DOCS="README* CHANGELOG*"
+
+RDEPEND="
+ >=dev-python/mypy-1.3.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-7.0.0[${PYTHON_USEDEP}]
+ >=dev-python/tomlkit-0.11[${PYTHON_USEDEP}]
+ dev-python/decorator[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/regex[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # tests need pytest_mypy_plugins.tests on the modules search path and
+ # python -m pytest preprends sys.path with ${S}
+ sed "s/\"pytest\"/\"MY_EPYTHON\", \"-m\", \"pytest\"/" \
+ -i pytest_mypy_plugins/tests/test_explicit_configs.py || die
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ # substitute the correct interpreter
+ sed "s/MY_EPYTHON/${EPYTHON}/" -i pytest_mypy_plugins/tests/test_explicit_configs.py || die
+ distutils-r1_python_test
+ # reset for next interpreter run
+ sed "s/${EPYTHON}/MY_EPYTHON/" -i pytest_mypy_plugins/tests/test_explicit_configs.py || die
+}
diff --git a/dev-python/pytest-pythonpath/Manifest b/dev-python/pytest-pythonpath/Manifest
deleted file mode 100644
index dd8506bf0..000000000
--- a/dev-python/pytest-pythonpath/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pytest-pythonpath-0.7.3.tar.gz 4498 BLAKE2B 819240073d2431f6a3ef137b73f8a4fe7ddb7c36c7403948b6c28575b841031de51deae85f9b5e31d331f1bb62589bb9ec538254f1db7010c49121e4d1d595bd SHA512 45f5185d1ec015e4e11fe5a14aa3ed49f333bae25a779ede43a3128e1c92a3f151836a72dc3ac8244de05c3943876e525ec7cd464c341b44e37195c443eb6391
diff --git a/dev-python/pytest-pythonpath/metadata.xml b/dev-python/pytest-pythonpath/metadata.xml
deleted file mode 100644
index 4d61fd1c5..000000000
--- a/dev-python/pytest-pythonpath/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <upstream>
- <remote-id type="github">bigsassy/pytest-pythonpath</remote-id>
- <remote-id type="pypi">pytest-pythonpath</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pytest-pythonpath/pytest-pythonpath-0.7.3.ebuild b/dev-python/pytest-pythonpath/pytest-pythonpath-0.7.3.ebuild
deleted file mode 100644
index db0e73458..000000000
--- a/dev-python/pytest-pythonpath/pytest-pythonpath-0.7.3.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-DISTUTILS_USE_SETUPTOOLS=bdepend
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Plugin for adding to the PYTHONPATH from the pytests.ini file before tests run"
-HOMEPAGE="
- https://github.com/bigsassy/pytest-pythonpath
- https://pypi.org/project/pytest-pythonpath
-"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-RDEPEND="dev-python/pytest[${PYTHON_USEDEP}]"
-
-distutils_enable_tests pytest
diff --git a/dev-python/pytest-randomly/Manifest b/dev-python/pytest-randomly/Manifest
deleted file mode 100644
index 7ec2d1286..000000000
--- a/dev-python/pytest-randomly/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pytest-randomly-3.8.0.tar.gz 26376 BLAKE2B b51fb09e887fb20783edaecc6494d22c9e66c4c87aabe5368f85b492681c29c9283ddc70821801442d4908a76ba64e70ee04433f5bd3639bae0cf198c950dcb1 SHA512 eabed09478f3047f181b4efe1057d15dda5686f85d3321083fbd443e5dd036f9fc9bfca2048ff898a194d59349e46ebf6258f03caccf649e891bb0bc6d6ef863
diff --git a/dev-python/pytest-randomly/metadata.xml b/dev-python/pytest-randomly/metadata.xml
deleted file mode 100644
index e9b1d8072..000000000
--- a/dev-python/pytest-randomly/metadata.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-Features
-
-All of these features are on by default but can be disabled with flags.
-
- Randomly shuffles the order of test items. This is done first at the level of modules, then at the level of test classes (if you have them), then at the order of functions. This also works with things like doctests.
- Resets random.seed() at the start of every test case and test to a fixed number - this defaults to time.time() from the start of your test run, but you can pass in --randomly-seed to repeat a randomness-induced failure.
- If factory boy is installed, its random state is reset at the start of every test. This allows for repeatable use of its random ‘fuzzy’ features.
- If faker is installed, its random state is reset at the start of every test. This is also for repeatable fuzzy data in tests - factory boy uses faker for lots of data.
- If numpy is installed, its random state is reset at the start of every test.
- If additional random generators are used, they can be registered under the pytest_randomly.random_seeder entry point and will have their seed reset at the start of every test. Register a function that takes the current seed value.
- Works with pytest-xdist.
-
-About
-
-Randomness in testing can be quite powerful to discover hidden flaws in the tests themselves, as well as giving a little more coverage to your system.
-
-By randomly ordering the tests, the risk of surprising inter-test dependencies is reduced - a technique used in many places, for example Google’s C++ test runner googletest.
-
-By resetting the random seed to a repeatable number for each test, tests can create data based on random numbers and yet remain repeatable, for example factory boy’s fuzzy values. This is good for ensuring that tests specify the data they need and that the tested system is not affected by any data that is filled in randomly due to not being specified.
-
-This plugin is a Pytest port of my plugin for nose, nose-randomly. I’ve written a blog post on its history.
- </longdescription>
- <upstream>
- <bugs-to>https://github.com/pytest-dev/pytest-randomly/issues</bugs-to>
- <changelog>https://github.com/pytest-dev/pytest-randomly/blob/master/HISTORY.rst</changelog>
- <maintainer status="active">
- <email>me@adamj.eu</email>
- <name>Adam Johnson</name>
- </maintainer>
- <remote-id type="pypi">pytest-randomly</remote-id>
- <remote-id type="github">pytest-dev/pytest-randomly</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pytest-randomly/pytest-randomly-3.8.0.ebuild b/dev-python/pytest-randomly/pytest-randomly-3.8.0.ebuild
deleted file mode 100644
index ec85af5d7..000000000
--- a/dev-python/pytest-randomly/pytest-randomly-3.8.0.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Pytest plugin to randomly order tests and control random.seed"
-HOMEPAGE="
- https://pypi.python.org/pypi/pytest-randomly
- https://github.com/pytest-dev/pytest-randomly
-"
-SRC_URI="https://github.com/pytest-dev/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- dev-python/docutils[${PYTHON_USEDEP}]
- dev-python/factory_boy[${PYTHON_USEDEP}]
- dev-python/Faker[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pytest[${PYTHON_USEDEP}]
-
- $(python_gen_cond_dep 'dev-python/pygments[${PYTHON_USEDEP}]' python3_9)
-"
-BDEPEND="
- test? (
- dev-python/pytest-xdist[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-python_test() {
- distutils_install_for_testing --via-root
- pytest -vv \
- --deselect tests/test_pytest_randomly.py::test_entrypoint_injection \
- || die "Testsuite failed under ${EPYTHON}"
-}
diff --git a/dev-python/pytest-relaxed/Manifest b/dev-python/pytest-relaxed/Manifest
new file mode 100644
index 000000000..45ddf9913
--- /dev/null
+++ b/dev-python/pytest-relaxed/Manifest
@@ -0,0 +1 @@
+DIST pytest-relaxed-2.0.2.gh.tar.gz 22078 BLAKE2B b932688a4179eb00e95b0b4d3bc1a996affba50d6f7f4435fa9f33e965e3328c8b48476c731d2728410e83ebae084833d4117abfde12dd704f61cf218ec71edd SHA512 3dfd50d737338fa98203071733ed8bbfc6686068f4ae1820cc4708da5eaa01184b0e9772343090b7dff440b9e7d35c43d38c20fe82f6475124ccaf1f404a552f
diff --git a/dev-python/pytest-relaxed/metadata.xml b/dev-python/pytest-relaxed/metadata.xml
new file mode 100644
index 000000000..5fd99fc77
--- /dev/null
+++ b/dev-python/pytest-relaxed/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pytest-relaxed</remote-id>
+ <remote-id type="github">bitprophet/pytest-relaxed</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pytest-relaxed/pytest-relaxed-2.0.2.ebuild b/dev-python/pytest-relaxed/pytest-relaxed-2.0.2.ebuild
new file mode 100644
index 000000000..01b85e71d
--- /dev/null
+++ b/dev-python/pytest-relaxed/pytest-relaxed-2.0.2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+DESCRIPTION="Relaxed test discovery for pytest"
+HOMEPAGE="https://github.com/bitprophet/pytest-relaxed https://pypi.org/project/pytest-relaxed"
+SRC_URI="https://github.com/bitprophet/pytest-relaxed/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ test? (
+ dev-python/decorator[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pytest-sanic/Manifest b/dev-python/pytest-sanic/Manifest
deleted file mode 100644
index c905f80b0..000000000
--- a/dev-python/pytest-sanic/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST pytest-sanic-1.7.1.tar.gz 30888 BLAKE2B 24623e47fb05db9919cfd0b41468261697ac70c7bc3e47a3c6c86efadbddd3c80f2e6173eb109206472d0b639ecd20edd0cebb244bd96ed1d2ca10dd88924b5b SHA512 a55ffd1c878478bd42aad5dc023f83e880ead4fb8538a24d327bd0fb7f811e0d3679e49206835ee7f98ac0a02dedb05f6fa729252eab7972879c196c57e3f071
diff --git a/dev-python/pytest-sanic/metadata.xml b/dev-python/pytest-sanic/metadata.xml
deleted file mode 100644
index e71c2c30b..000000000
--- a/dev-python/pytest-sanic/metadata.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <longdescription lang="en">
-A pytest plugin for Sanic. It helps you to test your code asynchronously.
-
-This plugin provides:
-
- very easy testing with async coroutines
- common and useful fixtures
- asynchronous fixture support
- test_client/sanic_client for Sanic application
- test_server for Sanic application
- </longdescription>
- <upstream>
- <remote-id type="github">yunstanford/pytest-sanic</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/pytest-sanic/pytest-sanic-1.7.1.ebuild b/dev-python/pytest-sanic/pytest-sanic-1.7.1.ebuild
deleted file mode 100644
index 68fed1c3a..000000000
--- a/dev-python/pytest-sanic/pytest-sanic-1.7.1.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-DISTUTILS_USE_SETUPTOOLS="pyproject.toml"
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="a Pytest Plugin for Sanic"
-HOMEPAGE="
- https://pypi.python.org/pypi/pytest-sanic
- https://github.com/yunstanford/pytest-sanic
-"
-SRC_URI="https://github.com/yunstanford/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- >=dev-python/async_generator-1.10[${PYTHON_USEDEP}]
- >=dev-python/httpx-0.15.4[${PYTHON_USEDEP}]
- >=dev-python/pytest-5.2[${PYTHON_USEDEP}]
- >=dev-python/websockets-8.1[${PYTHON_USEDEP}]
-"
-DEPEND="
- ${RDEPEND}
- test? ( >=dev-python/sanic-20.12.2[${PYTHON_USEDEP}] )
-"
-
-distutils_enable_tests pytest
-# where is the conf.py file? make html can't find it either
-#distutils_enable_sphinx docs
-
-python_test() {
- distutils_install_for_testing
- pytest -vv \
- --deselect tests/test_client.py::test_fixture_sanic_client_get \
- --deselect tests/test_client.py::test_fixture_sanic_client_post \
- --deselect tests/test_client.py::test_fixture_sanic_client_put \
- --deselect tests/test_client.py::test_fixture_sanic_client_delete \
- --deselect tests/test_client.py::test_fixture_sanic_client_patch \
- --deselect tests/test_client.py::test_fixture_sanic_client_options \
- --deselect tests/test_client.py::test_fixture_sanic_client_head \
- --deselect tests/test_client.py::test_fixture_sanic_client_close \
- --deselect tests/test_client.py::test_fixture_sanic_client_passing_headers \
- --deselect tests/test_client.py::test_fixture_sanic_client_context_manager \
- --deselect tests/test_client.py::test_fixture_test_client_context_manager \
- || die "Tests failed with ${EPYTHON}"
-
-}
diff --git a/dev-python/pytest-steps/Manifest b/dev-python/pytest-steps/Manifest
new file mode 100644
index 000000000..371f81725
--- /dev/null
+++ b/dev-python/pytest-steps/Manifest
@@ -0,0 +1 @@
+DIST pytest-steps-1.8.0.tar.gz 77136 BLAKE2B 7066cb7b586db6cc12fdc0f0da61c3207c32b9eef4dd667694d4db81fde849632dadf679bf44769cb307fcf5ab54b0878a9ad571c958f53dcb1ce6217c9a1651 SHA512 a8e159ba322c7d85dad1cc063781d79fec5a3ae3b135f341db2a254034fdbd004495bac6e5252f192771d3b34638a1abf24492594a612754d50be2d4a21e236e
diff --git a/dev-python/pytest-steps/files/pytest-steps-1.8.0-strict-mkdocs.patch b/dev-python/pytest-steps/files/pytest-steps-1.8.0-strict-mkdocs.patch
new file mode 100644
index 000000000..b9b833a46
--- /dev/null
+++ b/dev-python/pytest-steps/files/pytest-steps-1.8.0-strict-mkdocs.patch
@@ -0,0 +1,20 @@
+https://www.mkdocs.org/about/release-notes/#stricter-directory-validation
+
+diff --git a/docs/mkdocs.yml b/mkdocs.yml
+similarity index 95%
+rename from docs/mkdocs.yml
+rename to mkdocs.yml
+index 8359d3f..b4c34c4 100644
+--- a/docs/mkdocs.yml
++++ b/mkdocs.yml
+@@ -1,8 +1,8 @@
+ site_name: pytest_steps
+ # site_description: 'A short description of my project'
+ repo_url: https://github.com/smarie/python-pytest-steps
+-docs_dir: .
+-site_dir: ../site
++docs_dir: ./docs
++site_dir: ./site
+ nav:
+ - Home: index.md
+ - API reference: api_reference.md
diff --git a/dev-python/pytest-steps/metadata.xml b/dev-python/pytest-steps/metadata.xml
new file mode 100644
index 000000000..82c00a6ef
--- /dev/null
+++ b/dev-python/pytest-steps/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">pytest-steps</remote-id>
+ <remote-id type="github">smarie/python-pytest-steps</remote-id>
+ <doc>https://smarie.github.io/python-pytest-steps/</doc>
+ <maintainer>
+ <email>sylvain.marie@schneider-electric.com</email>
+ <name>Sylvain Marie</name>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pytest-steps/pytest-steps-1.8.0.ebuild b/dev-python/pytest-steps/pytest-steps-1.8.0.ebuild
new file mode 100644
index 000000000..e62ca23f4
--- /dev/null
+++ b/dev-python/pytest-steps/pytest-steps-1.8.0.ebuild
@@ -0,0 +1,60 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="dev-python/mkdocs-material"
+
+inherit distutils-r1 docs pypi
+
+DESCRIPTION="Create step-wise / incremental tests in pytest"
+HOMEPAGE="https://pypi.org/project/pytest-steps/ https://github.com/smarie/python-pytest-steps"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/makefun-1.5[${PYTHON_USEDEP}]
+ dev-python/wrapt[${PYTHON_USEDEP}]
+"
+# https://github.com/smarie/python-pytest-cases/issues/330
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pandas[${PYTHON_USEDEP}]
+ <dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/pytest-cases[${PYTHON_USEDEP}]
+ dev-python/pytest-harvest[${PYTHON_USEDEP}]
+ dev-python/tabulate[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=( "${FILESDIR}/${P}-strict-mkdocs.patch" )
+
+EPYTEST_DESELECT=(
+ # tests fail with recent Pandas
+ pytest_steps/tests/test_docs_example_with_harvest.py::test_synthesis_df
+ pytest_steps/tests/test_steps_harvest.py::test_synthesis
+)
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ sed "/pytest-runner/d" -i setup.cfg || die
+ distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+ docs_compile
+}
+
+python_test() {
+ epytest pytest_steps/tests --doctest-modules
+}
diff --git a/dev-python/pytest-syrupy/Manifest b/dev-python/pytest-syrupy/Manifest
new file mode 100644
index 000000000..e5300f617
--- /dev/null
+++ b/dev-python/pytest-syrupy/Manifest
@@ -0,0 +1 @@
+DIST pytest-syrupy-4.0.1.gh.tar.gz 2300053 BLAKE2B 875465e5bfc6462535125f374906f29392c0fdb957eb4efe1fa9a38882f10e200af69065bc3190f224270d59e73f531b3d0c017d2686068f1abd4cb8e2cbcd89 SHA512 6f786e40e1700077b0fd98f5ca794d749666945dff89388d07a9c58c538b077835b107358eaa66d4ad1d7e50bea1964371c6428ab9597868f9005ae8b4e2d874
diff --git a/dev-python/pytest-syrupy/metadata.xml b/dev-python/pytest-syrupy/metadata.xml
new file mode 100644
index 000000000..2bfa8b7ba
--- /dev/null
+++ b/dev-python/pytest-syrupy/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">syrupy</remote-id>
+ <remote-id type="github">tophat/syrupy</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pytest-syrupy/pytest-syrupy-4.0.1.ebuild b/dev-python/pytest-syrupy/pytest-syrupy-4.0.1.ebuild
new file mode 100644
index 000000000..ee41252f1
--- /dev/null
+++ b/dev-python/pytest-syrupy/pytest-syrupy-4.0.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{11..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="The sweeter pytest snapshot plugin"
+HOMEPAGE="https://github.com/tophat/syrupy https://pypi.org/project/syrupy"
+SRC_URI="https://github.com/tophat/syrupy/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/syrupy-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DOCS=( README.md CHANGELOG.md )
+
+RDEPEND="
+ dev-python/rich[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/colored[${PYTHON_USEDEP}]
+ test? (
+ dev-python/invoke[${PYTHON_USEDEP}]
+ dev-python/pytest-benchmark[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # Seems like the output changed but the tests did not
+ tests/integration/test_pytest_extension.py::test_ignores_non_function_nodes
+)
diff --git a/dev-python/pytest-vcr/Manifest b/dev-python/pytest-vcr/Manifest
new file mode 100644
index 000000000..c43bfeca5
--- /dev/null
+++ b/dev-python/pytest-vcr/Manifest
@@ -0,0 +1 @@
+DIST pytest-vcr-1.0.2.gh.tar.gz 9281 BLAKE2B dc12d9a2fda156e072c32c5b08b2b35549398ed4372f9c8c17cd086b83286e78cce98f1aa54b3db21883dda84f379facb477442fa0f411532be4bdbc498ea1e1 SHA512 29dceb51092d73f2190b89e82e88b59506591a35cfe4f141bb877c05420d67a8ab2f21f63c2630972c35697d01b242891917d1be19b14fdfa810c1799f8542c2
diff --git a/dev-python/pytest-vcr/metadata.xml b/dev-python/pytest-vcr/metadata.xml
new file mode 100644
index 000000000..0caeff73c
--- /dev/null
+++ b/dev-python/pytest-vcr/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">pytest-vcr</remote-id>
+ <remote-id type="github">ktosiek/pytest-vcr</remote-id>
+ <maintainer>
+ <email>tomasz.kontusz@gmail.com</email>
+ <name>Tomasz Kontusz</name>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pytest-vcr/pytest-vcr-1.0.2.ebuild b/dev-python/pytest-vcr/pytest-vcr-1.0.2.ebuild
new file mode 100644
index 000000000..283603d2e
--- /dev/null
+++ b/dev-python/pytest-vcr/pytest-vcr-1.0.2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DOCS_BUILDER="mkdocs"
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517="setuptools"
+inherit distutils-r1 docs
+
+DESCRIPTION="Plugin for managing VCR.py cassettes"
+HOMEPAGE="
+ https://pypi.org/project/pytest-vcr/
+ https://github.com/ktosiek/pytest-vcr
+"
+SRC_URI="https://github.com/ktosiek/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/vcrpy[${PYTHON_USEDEP}]
+"
+
+DOCS=( docs README.rst )
+
+EPYTEST_DESELECT=( tests/test_vcr.py::test_no_warnings )
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # pytest.config was removed in >=dev-python/pytest-5.0
+ sed "/pytest.config/d" -i tests/test_vcr.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+ docs_compile
+}
diff --git a/dev-python/python-barbicanclient/Manifest b/dev-python/python-barbicanclient/Manifest
deleted file mode 100644
index 013e16076..000000000
--- a/dev-python/python-barbicanclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-barbicanclient-5.0.1.tar.gz 118714 BLAKE2B dbdf98a481853c70e8548eac98a24bad66f398eba37e74425bd941b60c69aa80b1b24f77b2a4228a82f7a9f722068d55b954be8aec41f52e0665c70650b7f447 SHA512 5ab164e92b1d2820b5f84b59748e3fdf0733c587e6c4a9a17cb34cb95ab7a3900430790b50ce40b479a9f39e599a0969e3e8d1c5255ed6c595a287019a736663
diff --git a/dev-python/python-barbicanclient/metadata.xml b/dev-python/python-barbicanclient/metadata.xml
deleted file mode 100644
index 7553b7881..000000000
--- a/dev-python/python-barbicanclient/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-barbicanclient</remote-id>
- <remote-id type="github">openstack/barbican</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-barbicanclient/python-barbicanclient-5.0.1.ebuild b/dev-python/python-barbicanclient/python-barbicanclient-5.0.1.ebuild
deleted file mode 100644
index 86097bbcf..000000000
--- a/dev-python/python-barbicanclient/python-barbicanclient-5.0.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Client library for Barbican API."
-HOMEPAGE="https://github.com/openstack/barbican"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/python-blazarclient/Manifest b/dev-python/python-blazarclient/Manifest
deleted file mode 100644
index 4706c1788..000000000
--- a/dev-python/python-blazarclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-blazarclient-3.1.1.tar.gz 36460 BLAKE2B b19595a3cf52da6d298e5006eada7a68c28f396c8143bbed2f22b45e910d136b54bf3d3fde95bd4fc02887bffd206d10629e923e7d81289af643e44b751c0926 SHA512 91cf8004f83494299e11d8c419f183c45726a1b9baec09ffdb719ff8db3cb91967c24a4ac684e227c87015bc00733b03fb132e34fe2fdc773164373e3fd10561
diff --git a/dev-python/python-blazarclient/metadata.xml b/dev-python/python-blazarclient/metadata.xml
deleted file mode 100644
index 0cbf9cbdc..000000000
--- a/dev-python/python-blazarclient/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-blazarclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-blazarclient/python-blazarclient-3.1.1.ebuild b/dev-python/python-blazarclient/python-blazarclient-3.1.1.ebuild
deleted file mode 100644
index eead0dd2b..000000000
--- a/dev-python/python-blazarclient/python-blazarclient-3.1.1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="This is a client for the OpenStack Blazar API"
-HOMEPAGE="https://github.com/openstack/python-blazarclient"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-CDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0"
-DEPEND="${CDEPEND}"
-RDEPEND="
- ${CDEPEND}
- >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
- !~dev-python/cliff-2.9.0[${PYTHON_USEDEP}]
- >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
- <dev-python/prettytable-0.8[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
- !~dev-python/Babel-2.4.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/python-designateclient/Manifest b/dev-python/python-designateclient/Manifest
deleted file mode 100644
index 4917c4787..000000000
--- a/dev-python/python-designateclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-designateclient-4.1.0.tar.gz 60526 BLAKE2B 4df143ea429510aea50235ee80ac8712d436201b54544089860e452e652c220b5fa954ee88b61c30150a34655c6d38839f5d40d5860263a5456a2d65773bd58f SHA512 ae99fcf662b81ec0d14c3536dddd51e3b2f945ff5e62669efd1e2f0ad1f820884f427af6b9112c3fae5e7d0953f2008132e6e6e9fc1ad7b155c993a62434b90b
diff --git a/dev-python/python-designateclient/metadata.xml b/dev-python/python-designateclient/metadata.xml
deleted file mode 100644
index 9a5c5e114..000000000
--- a/dev-python/python-designateclient/metadata.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
- This is a client library for Designate built on the Designate API. It provides a Python API (the designateclient module) and a command-line tool (designate).
- </longdescription>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="github">openstack/python-designateclient</remote-id>
- <remote-id type="pypi">python-designateclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-designateclient/python-designateclient-4.1.0.ebuild b/dev-python/python-designateclient/python-designateclient-4.1.0.ebuild
deleted file mode 100644
index 657710c37..000000000
--- a/dev-python/python-designateclient/python-designateclient-4.1.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python bindings to the Designate API."
-HOMEPAGE="https://github.com/openstack/python-designateclient"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
- !~dev-python/cliff-2.9.0[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-2.6.0[${PYTHON_USEDEP}]
- >=dev-python/osc-lib-1.8.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-2.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
- >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/python-fire/Manifest b/dev-python/python-fire/Manifest
new file mode 100644
index 000000000..ac89896ac
--- /dev/null
+++ b/dev-python/python-fire/Manifest
@@ -0,0 +1 @@
+DIST fire-0.6.0.tar.gz 88439 BLAKE2B 5eb8a7ec2e0f93bec50f0b6a03edfe9ec6040ca2f3a85a77875df752457281c7614874254db935dcd94c229af3fd6722088c43dae7664e99c3f09047f9d4453f SHA512 491f224d31038494be2f40dd55e8713da20e4a20dc044ed1346deaeff69d65908ac754679b36ae1dbf42319c26cb30acc664a444f2d735d173971001447a9dd3
diff --git a/dev-python/python-fire/metadata.xml b/dev-python/python-fire/metadata.xml
new file mode 100644
index 000000000..a8b485ae6
--- /dev/null
+++ b/dev-python/python-fire/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">google/python-fire</remote-id>
+ <remote-id type="pypi">python-fire</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/python-fire/python-fire-0.6.0.ebuild b/dev-python/python-fire/python-fire-0.6.0.ebuild
new file mode 100644
index 000000000..6b84bae31
--- /dev/null
+++ b/dev-python/python-fire/python-fire-0.6.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN="fire"
+inherit distutils-r1 pypi
+
+DESCRIPTION="Library for automatically generating command line interfaces from Python objects"
+HOMEPAGE="https://pypi.org/project/python-fire/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/six
+ dev-python/termcolor
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-python/hypothesis
+ dev-python/mock
+ dev-python/pytest-asyncio
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-heatclient/Manifest b/dev-python/python-heatclient/Manifest
deleted file mode 100644
index 00f0034b0..000000000
--- a/dev-python/python-heatclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-heatclient-2.2.1.tar.gz 172925 BLAKE2B 3ecccdb8647f1d78c13680158db60cfbf0f8a7415636337caca171785bf5ae06516055df619b013b7d73218ccb1cb0a697e5312ea0aef40e4445b281bb740c21 SHA512 9798dbf2def1aa160d5773dc5da57cd1b1a372bd9e734e8bbf89e817e84dfa03cb36519d0b805624dba1259964b8311c729a1632531e1c659765acc483c9f024
diff --git a/dev-python/python-heatclient/metadata.xml b/dev-python/python-heatclient/metadata.xml
deleted file mode 100644
index d212e286c..000000000
--- a/dev-python/python-heatclient/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-heatclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-heatclient/python-heatclient-2.2.1.ebuild b/dev-python/python-heatclient/python-heatclient-2.2.1.ebuild
deleted file mode 100644
index cacbedbaa..000000000
--- a/dev-python/python-heatclient/python-heatclient-2.2.1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="OpenStack Orchestration API Client Library"
-HOMEPAGE="https://www.openstack.org/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-
-CDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]"
-DEPEND="${CDEPEND}"
-RDEPEND="${CDEPEND}
- >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
- !~dev-python/Babel-2.4.0[${PYTHON_USEDEP}]
- >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
- !~dev-python/cliff-2.9.0[${PYTHON_USEDEP}]
- >=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
- >=dev-python/osc-lib-1.8.0[${PYTHON_USEDEP}]
- >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
- <dev-python/prettytable-0.8[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/python-swiftclient-3.2.0[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.12.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/python-http-client/Manifest b/dev-python/python-http-client/Manifest
new file mode 100644
index 000000000..bb6b005a1
--- /dev/null
+++ b/dev-python/python-http-client/Manifest
@@ -0,0 +1 @@
+DIST python_http_client-3.3.5.tar.gz 7852 BLAKE2B 6ebcd545b3dfe06e9daf4c0c373d91f9a8ecbf9dc411b579794bbbfa5047bb388ff2fa7d1ba04cf71c64a9af5b1da2283d8ed5b5b0a3dca49f4db5cd7f569d57 SHA512 54fe0d871be4d9743d5601c218d20c513a88eac8f91afa0222daf8d585819dabe3b9fdaf63e0810e46fe94dbf72185af7460f7c39ebf00312fd8eb7411a90f75
diff --git a/dev-python/python-http-client/metadata.xml b/dev-python/python-http-client/metadata.xml
new file mode 100644
index 000000000..7d2c119aa
--- /dev/null
+++ b/dev-python/python-http-client/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>stepan_kk@pm.me</email>
+ <name>Stepan Kulikov</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">sendgrid/python-http-client</remote-id>
+ <remote-id type="pypi">python-http-client</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/python-http-client/python-http-client-3.3.5.ebuild b/dev-python/python-http-client/python-http-client-3.3.5.ebuild
new file mode 100644
index 000000000..efe1d29ae
--- /dev/null
+++ b/dev-python/python-http-client/python-http-client-3.3.5.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="HTTP REST client, simplified for Python"
+HOMEPAGE="https://github.com/sendgrid/python-http-client https://pypi.org/project/python-http-client/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DOCS="README.rst"
+
+BDEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ )"
+
+python_test() {
+ py.test -v -v || die
+}
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-lsp-isort/Manifest b/dev-python/python-lsp-isort/Manifest
new file mode 100644
index 000000000..ae4c07768
--- /dev/null
+++ b/dev-python/python-lsp-isort/Manifest
@@ -0,0 +1 @@
+DIST python-lsp-isort-0.1.gh.tar.gz 5065 BLAKE2B 385807fde3bbbfd73d7fdefb721375490be592203aac41bcb2e0a56ee5588f66a78c7e2f6b14458c2836987abb1607670935d12127caedb2ddd3b9e67b87b547 SHA512 fd2575e27c5a32c7a8dfabc8777ae9ce82a0c1fe9a46fe64341becbe60e8d37d07736950b986df307e608a777825fd51cbb1345b7163944e19086ab69985a472
diff --git a/dev-python/python-lsp-isort/metadata.xml b/dev-python/python-lsp-isort/metadata.xml
new file mode 100644
index 000000000..339401237
--- /dev/null
+++ b/dev-python/python-lsp-isort/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Moritz Brunner</name>
+ <email>moritz.brunner+gentoo@posteo.de</email>
+ </maintainer>
+ <stabilize-allarches />
+ <upstream>
+ <remote-id type="pypi">python-lsp-isort</remote-id>
+ <remote-id type="github">chantera/python-lsp-isort</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/python-lsp-isort/python-lsp-isort-0.1.ebuild b/dev-python/python-lsp-isort/python-lsp-isort-0.1.ebuild
new file mode 100644
index 000000000..f682d6b92
--- /dev/null
+++ b/dev-python/python-lsp-isort/python-lsp-isort-0.1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="isort plugin for the Python LSP Server"
+HOMEPAGE="
+ https://github.com/chantera/python-lsp-isort
+ https://pypi.org/project/python-lsp-isort/
+"
+SRC_URI="
+ https://github.com/chantera/${PN}/archive/refs/tags/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+BDEPEND="
+ >=dev-python/isort-5.0[${PYTHON_USEDEP}]
+"
+RDEPEND="
+ dev-python/python-lsp-server[${PYTHON_USEDEP}]
+ ${BDEPEND}
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-lsp-mypy/Manifest b/dev-python/python-lsp-mypy/Manifest
new file mode 100644
index 000000000..a8e291f18
--- /dev/null
+++ b/dev-python/python-lsp-mypy/Manifest
@@ -0,0 +1 @@
+DIST python-lsp-mypy-0.6.8.gh.tar.gz 13731 BLAKE2B 34bae285bfee66ac4caafab16cf04b63f2d60be825e083b7e8d26444bd7d11cc799e96a4cb33dff1c68dc4bc4ba7e361c097f402c096ab8d1b5708b930ee59df SHA512 dca528c04cbe09dac34a666541cd9a3739e9d27842191224aaba37593e672766860fccd48d6f7e81a2435e9c862b86bedbe6f1357831eef3ccf1282e478e3a98
diff --git a/dev-python/python-lsp-mypy/metadata.xml b/dev-python/python-lsp-mypy/metadata.xml
new file mode 100644
index 000000000..c75191949
--- /dev/null
+++ b/dev-python/python-lsp-mypy/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Moritz Brunner</name>
+ <email>moritz.brunner+gentoo@posteo.de</email>
+ </maintainer>
+ <stabilize-allarches />
+ <upstream>
+ <remote-id type="pypi">pylsp-mypy</remote-id>
+ <remote-id type="github">python-lsp/pylsp-mypy</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/python-lsp-mypy/python-lsp-mypy-0.6.8.ebuild b/dev-python/python-lsp-mypy/python-lsp-mypy-0.6.8.ebuild
new file mode 100644
index 000000000..9c22423d8
--- /dev/null
+++ b/dev-python/python-lsp-mypy/python-lsp-mypy-0.6.8.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12})
+
+MY_PN="pylsp-mypy"
+
+inherit distutils-r1
+
+DESCRIPTION="Mypy plugin for the Python LSP Server"
+HOMEPAGE="
+ https://github.com/python-lsp/pylsp-mypy
+ https://pypi.org/project/pylsp-mypy/
+"
+SRC_URI="
+ https://github.com/python-lsp/${MY_PN}/archive/refs/tags/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/python-lsp-server-1.7.0[${PYTHON_USEDEP}]
+ >=dev-python/mypy-0.981[${PYTHON_USEDEP}]
+ >=dev-python/tomli-1.1.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-magnumclient/Manifest b/dev-python/python-magnumclient/Manifest
deleted file mode 100644
index 5952eaeb3..000000000
--- a/dev-python/python-magnumclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-magnumclient-3.2.1.tar.gz 114288 BLAKE2B c8ed1d6ab2744fb082d33fab121594fa23a53523dfe74ad636e46681c52f3f9084ff5ced0dcdbd6f3cab219a093265da897b8b3b978d0fbb379765d123db348e SHA512 9c84e382e0be411100648ba4a33f33e45133dbfc75bf28945b97064998fe8c1bb0149970a8938498aefd322c87b87d6fa7b69286bb7ec336b40f6fbc9e31dbbc
diff --git a/dev-python/python-magnumclient/metadata.xml b/dev-python/python-magnumclient/metadata.xml
deleted file mode 100644
index 3ccfbd69e..000000000
--- a/dev-python/python-magnumclient/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-magnumclient</remote-id>
- <remote-id type="github">openstack/python-magnumclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-magnumclient/python-magnumclient-3.2.1.ebuild b/dev-python/python-magnumclient/python-magnumclient-3.2.1.ebuild
deleted file mode 100644
index 1af3c431f..000000000
--- a/dev-python/python-magnumclient/python-magnumclient-3.2.1.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="A client for the OpenStack Magnum API"
-HOMEPAGE="https://github.com/openstack/python-magnumclient"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-
-CDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]"
-DEPEND="${CDEPEND}"
-RDEPEND="
- ${CDEPEND}
- >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
- !~dev-python/Babel-2.4.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-2.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/os-client-config-1.28.0[${PYTHON_USEDEP}]
- >=dev-python/osc-lib-1.8.0[${PYTHON_USEDEP}]
- >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
- <dev-python/prettytable-0.8[${PYTHON_USEDEP}]
- >=dev-python/cryptography-3.0[${PYTHON_USEDEP}]
- >=dev-python/decorator-3.4.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/python-manilaclient/Manifest b/dev-python/python-manilaclient/Manifest
deleted file mode 100644
index 7abee2be8..000000000
--- a/dev-python/python-manilaclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-manilaclient-2.3.0.tar.gz 263246 BLAKE2B 885ed636369d296b64bee91b8556be7059837a7958252fe0d24ae6fac7d3e04971539389113bdb06cf8223beb66370e93a3e834b5b8985edbb55b6c922cafdd0 SHA512 cedbf7aa4cce98bb46379dce70684ba3425d6fbd692cfe9878674cb8d7846bd536893fcbdd4c5dbd47e863cb509739433dff905413921ad17cce4e8123e593a9
diff --git a/dev-python/python-manilaclient/metadata.xml b/dev-python/python-manilaclient/metadata.xml
deleted file mode 100644
index cdff8e189..000000000
--- a/dev-python/python-manilaclient/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-manilaclient</remote-id>
- <remote-id type="github">openstack/python-manilaclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-manilaclient/python-manilaclient-2.3.0.ebuild b/dev-python/python-manilaclient/python-manilaclient-2.3.0.ebuild
deleted file mode 100644
index 147cdaf9e..000000000
--- a/dev-python/python-manilaclient/python-manilaclient-2.3.0.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="A client for the OpenStack Manila API"
-HOMEPAGE="https://github.com/openstack/python-manilaclient"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-
-DEPEND=">=dev-python/pbr-1.8[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/pbr-1.8[${PYTHON_USEDEP}]
- >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-1.19.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/prettytable-0.7.1[${PYTHON_USEDEP}]
- <dev-python/prettytable-0.8[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/simplejson-3.5.1[${PYTHON_USEDEP}]
- >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
- !~dev-python/Babel-2.4.0[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/osc-lib-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/python-keystoneclient-3.8.0[${PYTHON_USEDEP}]
- >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/python-mistralclient/Manifest b/dev-python/python-mistralclient/Manifest
deleted file mode 100644
index b529cef7a..000000000
--- a/dev-python/python-mistralclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-mistralclient-4.1.1.tar.gz 97257 BLAKE2B 8f58cc59f782d05111b1eb009ba06dc8dd356841ffdc75a4af2fde0492eafce4d728fe8e947e7ef80f4049c3889587ab2926294acd90191dbfc26f6a643cb2c6 SHA512 4f1f5d558ef4711b0ff7da565b0eefc9e3e32d4014d0b9c808370e0e0a00d759aa4f35a7f116f95db00d43277d614aea9fb57200e15c2c0258a48c8e828910e3
diff --git a/dev-python/python-mistralclient/metadata.xml b/dev-python/python-mistralclient/metadata.xml
deleted file mode 100644
index 907153b84..000000000
--- a/dev-python/python-mistralclient/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-mistralclient</remote-id>
- <remote-id type="github">openstack/python-mistralclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-mistralclient/python-mistralclient-4.1.1.ebuild b/dev-python/python-mistralclient/python-mistralclient-4.1.1.ebuild
deleted file mode 100644
index 3eece4cc8..000000000
--- a/dev-python/python-mistralclient/python-mistralclient-4.1.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="A client for the OpenStack Mistral API"
-HOMEPAGE="https://github.com/openstack/python-mistralclient"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-
-CDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0"
-DEPEND="${CDEPEND}"
-RDEPEND="
- ${CDEPEND}
- >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
- !~dev-python/cliff-2.9.0[${PYTHON_USEDEP}]
- >=dev-python/osc-lib-1.8.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-2.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.13.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/python-monascaclient/Manifest b/dev-python/python-monascaclient/Manifest
deleted file mode 100644
index f52fb2dba..000000000
--- a/dev-python/python-monascaclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-monascaclient-2.2.1.tar.gz 51569 BLAKE2B f8c245867cd80530df0ba873d13465c364dd3f09003e7248497e102f88186ea18833598013fa3eb6b7015e37854036521edfb2850445d3db7d052e068477bdc1 SHA512 6a533c5fefdb31446aea62c997f69588c2c005f6ea4b419959381f623cc74b4fc4b0eeefccf7b305f1526a75ce86b91570338386f6dc959c31ce9f0b1e1022a2
diff --git a/dev-python/python-monascaclient/metadata.xml b/dev-python/python-monascaclient/metadata.xml
deleted file mode 100644
index dc9ec29fd..000000000
--- a/dev-python/python-monascaclient/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-monascaclient</remote-id>
- <remote-id type="github">openstack/python-monascaclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-monascaclient/python-monascaclient-2.2.1.ebuild b/dev-python/python-monascaclient/python-monascaclient-2.2.1.ebuild
deleted file mode 100644
index 724a32ff2..000000000
--- a/dev-python/python-monascaclient/python-monascaclient-2.2.1.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="A client for the OpenStack Monasca API"
-HOMEPAGE="https://github.com/openstack/python-monascaclient"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-
-CDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0"
-DEPEND="${CDEPEND}"
-RDEPEND="
- ${CDEPEND}
- >=dev-python/osc-lib-1.8.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
- !~dev-python/Babel-2.4.0[${PYTHON_USEDEP}]
- >=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
- >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
- <dev-python/prettytable-0.8[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.12.0[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/python-mpv-jsonipc/Manifest b/dev-python/python-mpv-jsonipc/Manifest
deleted file mode 100644
index 5d90757a5..000000000
--- a/dev-python/python-mpv-jsonipc/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST python-mpv-jsonipc-1.1.12.tar.gz 7575 BLAKE2B 24be588022c38bff75b16a39b5fdde0603afff9f2311deba334a5ff6e7520803e1ad381b067ae14109d83c655758f46541012009364624ea6dffadc5ffe2c3ad SHA512 64aa97f6b04e6e5529beb54530716d8749178a5b4d7cd88537bcbba4d72805562d80a9159663338c15e8c9801c99a3746e9c95c592c1f75a3bfcaa2f6d0f28b3
-DIST python-mpv-jsonipc-1.1.13.tar.gz 7560 BLAKE2B aeba9360400752baf412a43051782f950013b4408911d1faedbb652d5f28ff3fa9aa2df07ac280e4e5102236ae655b933d662576b66e57507f76fb76a309c21f SHA512 cc99048f03eb57a718209121fe471cc5e196514f58dce19ecbb352c0c3032e2722098597f5a4511942b76672d8aae34464f16809cf50abb203cea24e70e32ec3
diff --git a/dev-python/python-mpv-jsonipc/metadata.xml b/dev-python/python-mpv-jsonipc/metadata.xml
deleted file mode 100644
index cd174bd3e..000000000
--- a/dev-python/python-mpv-jsonipc/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>telans@posteo.de</email>
- <name>James Beddek</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/python-mpv-jsonipc/python-mpv-jsonipc-1.1.12.ebuild b/dev-python/python-mpv-jsonipc/python-mpv-jsonipc-1.1.12.ebuild
deleted file mode 100644
index da219358b..000000000
--- a/dev-python/python-mpv-jsonipc/python-mpv-jsonipc-1.1.12.ebuild
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 2020-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python API to MPV using JSON IPC"
-HOMEPAGE="https://github.com/iwalton3/python-mpv-jsonipc"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/python-mpv-jsonipc/python-mpv-jsonipc-1.1.13.ebuild b/dev-python/python-mpv-jsonipc/python-mpv-jsonipc-1.1.13.ebuild
deleted file mode 100644
index da219358b..000000000
--- a/dev-python/python-mpv-jsonipc/python-mpv-jsonipc-1.1.13.ebuild
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 2020-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python API to MPV using JSON IPC"
-HOMEPAGE="https://github.com/iwalton3/python-mpv-jsonipc"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/python-multipart/Manifest b/dev-python/python-multipart/Manifest
deleted file mode 100644
index f2ef213f1..000000000
--- a/dev-python/python-multipart/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-multipart-0.0.5.tar.gz 48018 BLAKE2B cfff5c1c57ada3ba3d50da71273435781d62d3907ca1b7e6180cd319f2680258b3e1e278dff760106e7ca9c116f4c5c7adf957601d6d8465bf300e6211b83773 SHA512 c2fabeb77a25119c4bbb71c3faa6de58e27ac2f0c768298eac62b519fc51e5d95fdea05c4f3846ed47205f297802982a001577a73b2feec2d9f585c784d6c3d7
diff --git a/dev-python/python-multipart/metadata.xml b/dev-python/python-multipart/metadata.xml
deleted file mode 100644
index a507be0a7..000000000
--- a/dev-python/python-multipart/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <maintainer type="person">
- <email>piotr.staroszczyk@get24.org</email>
- <name>Piotr Staroszczyk</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/python-multipart/python-multipart-0.0.5.ebuild b/dev-python/python-multipart/python-multipart-0.0.5.ebuild
deleted file mode 100644
index 2a30dfc60..000000000
--- a/dev-python/python-multipart/python-multipart-0.0.5.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=(python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="A streaming multipart parser for Python"
-HOMEPAGE="
- https://andrew-d.github.io/python-multipart
- https://github.com/andrew-d/python-multipart"
-SRC_URI="https://github.com/andrew-d/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-# RuntimeError: Unsafe load() call disabled by Gentoo. See bug #659348
-RESTRICT="test"
-
-RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
-
-DEPEND="test? ( dev-python/pyyaml[${PYTHON_USEDEP}] )"
-
-distutils_enable_tests pytest
-
-distutils_enable_sphinx docs/source dev-python/sphinx-bootstrap-theme
diff --git a/dev-python/python-oauth2/Manifest b/dev-python/python-oauth2/Manifest
new file mode 100644
index 000000000..6e9c045c0
--- /dev/null
+++ b/dev-python/python-oauth2/Manifest
@@ -0,0 +1,3 @@
+DIST python-oauth2-1.1.1.tar.gz 45363 BLAKE2B 26d502ab0f577d1ec50462bec50ce43ae94f7fd54ccc9145c731b2c1c2795f84eb939bdaea6fea43b8866076f065700a04f329c84c52114e3455507da0058d10 SHA512 5dad5ebf38298379fb430426f57f705bcfe38137c418d7b5afa837ab2473e699e0bf63cbc2078c28ca87fcdb10303f5a94cc4028739217c352eecb280a8e7847
+EBUILD python-oauth2-1.1.1-r1.ebuild 853 BLAKE2B ccd124326b21dd8a81ae8974d68eb2c8c09bfc3c2cb3f6af4782c1f233b6e88ed5918b50d6b3422e33ec369681f7ecd4fbec80b238f5b39594a9f7dfd31147ef SHA512 d139b094c6ce867bfc2cc37d39c9db6d4eb609c8704cf0f176880e24f8f39c1983a3ea3d21733f46d53302a3feb601e82732326f73481ad0df386b3d9ecca925
+MISC metadata.xml 344 BLAKE2B d89e439120cb6b7ea6e0543dcef2f107af475d9d13b9a5f2c6a79b5da4560434ff59f79929911a6f33f2459087d4001ac86815a3bd7019daa4b502ba72458c81 SHA512 aff830a58350d81f6c73a6a2249654f7b8982557dabe04bace6b05084eb940e94c07899c597f62845579a5d5e1bac2582fca230dfba153ced5581af729237e7f
diff --git a/dev-python/pdfminer-six/metadata.xml b/dev-python/python-oauth2/metadata.xml
index 17361c398..1fb0f14ac 100644
--- a/dev-python/pdfminer-six/metadata.xml
+++ b/dev-python/python-oauth2/metadata.xml
@@ -2,7 +2,10 @@
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>alarig@swordarmor.fr</email>
- <name>Alarig Le Lay</name>
+ <email>zdanevich.vitaly@ya.ru</email>
</maintainer>
+ <upstream>
+ <remote-id type="github">frida/frida</remote-id>
+ <remote-id type="pypi">python-oauth2</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/python-oauth2/python-oauth2-1.1.1-r1.ebuild b/dev-python/python-oauth2/python-oauth2-1.1.1-r1.ebuild
new file mode 100644
index 000000000..d64ad5896
--- /dev/null
+++ b/dev-python/python-oauth2/python-oauth2-1.1.1-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+PYPI_NO_NORMALIZE=1
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="OAuth 2.0 provider for python"
+HOMEPAGE="https://pypi.python.org/pypi/python-oauth2"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+RESTRICT="test"
+
+RDEPEND="dev-python/pymongo[${PYTHON_USEDEP}]
+ dev-python/python-memcached[${PYTHON_USEDEP}]
+ dev-python/redis[${PYTHON_USEDEP}]
+ dev-python/tornado[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+# test? ( dev-python/mock[${PYTHON_USEDEP}]
+# )"
+
+#python_test() {
+# # Skip tests which require network access
+# py.test -k "not (test_access_token_post or test_access_token_get \
+# or test_two_legged_post or test_two_legged_get)" || die \
+# "tests failed with ${EPYTHON}"
+#}
diff --git a/dev-python/python-octaviaclient/Manifest b/dev-python/python-octaviaclient/Manifest
deleted file mode 100644
index 12b77b75a..000000000
--- a/dev-python/python-octaviaclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-octaviaclient-2.2.0.tar.gz 83099 BLAKE2B 1ee8333ef09b205bb66445cfcb28b6789c73dd4f5752510a88ace02f0a0b5b20a086fccb9e7fd2014ffad5472c03a86bfb0fe8da8f5fb4c223c46d2352529ad9 SHA512 f6707192dd9b281acb8f3124e9c1b6d02b037034677b7c3946e39b70c0f7600790a9d70fa8228c7aa120ba3187a8aa9ce48db0a0afa16a300befd37fd77f80f1
diff --git a/dev-python/python-octaviaclient/metadata.xml b/dev-python/python-octaviaclient/metadata.xml
deleted file mode 100644
index 40ddc7806..000000000
--- a/dev-python/python-octaviaclient/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-octaviaclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-octaviaclient/python-octaviaclient-2.2.0.ebuild b/dev-python/python-octaviaclient/python-octaviaclient-2.2.0.ebuild
deleted file mode 100644
index d0e69becb..000000000
--- a/dev-python/python-octaviaclient/python-octaviaclient-2.2.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="A client for the OpenStack Zun API"
-HOMEPAGE="https://github.com/openstack/python-zunclient"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
- !~dev-python/cliff-2.9.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/python-neutronclient-6.7.0[${PYTHON_USEDEP}]
- >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
- >=dev-python/osc-lib-1.14.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-2.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/python-olm/Manifest b/dev-python/python-olm/Manifest
new file mode 100644
index 000000000..7d28bae15
--- /dev/null
+++ b/dev-python/python-olm/Manifest
@@ -0,0 +1 @@
+DIST olm-3.2.16.tar.bz2 2744360 BLAKE2B 236cd08cb4f014ef4f90377fe30907490dbf6482629ab47a779114c711de1855c44874a45ee92f4f55d7c100abbbde2c427996ce534dd95ce401a7549db351b7 SHA512 504ddc91297e7aef99e9b25f73b33bac29716ca33eb333bf1217b719d8862438e2cdaadd88cef3dc84e9f618bcc9eeeaf7e513f2d6909cc4a3d98a5dd79b0581
diff --git a/dev-python/python-olm/metadata.xml b/dev-python/python-olm/metadata.xml
new file mode 100644
index 000000000..a2bb47e19
--- /dev/null
+++ b/dev-python/python-olm/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Julien Roy</name>
+ <email>julien@jroy.ca</email>
+ </maintainer>
+ <upstream>
+ <doc>https://poljar.github.io/python-olm/html/index.html</doc>
+ <bugs-to>https://gitlab.matrix.org/matrix-org/olm/-/issues</bugs-to>
+ <remote-id type="github">poljar/python-olm</remote-id>
+ <remote-id type="pypi">python-olm</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/python-olm/python-olm-3.2.16.ebuild b/dev-python/python-olm/python-olm-3.2.16.ebuild
new file mode 100644
index 000000000..420a8a3ee
--- /dev/null
+++ b/dev-python/python-olm/python-olm-3.2.16.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_EXT=1
+inherit distutils-r1
+
+DESCRIPTION="Python bindings for dev-libs/olm"
+HOMEPAGE="https://gitlab.matrix.org/matrix-org/olm/"
+SRC_URI="https://gitlab.matrix.org/matrix-org/olm/-/archive/${PV}/olm-${PV}.tar.bz2"
+S="${WORKDIR}/olm-${PV}/python"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="dev-libs/olm"
+RDEPEND="
+ ${DEPEND}
+ dev-python/cffi[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? ( dev-python/aspectlib[${PYTHON_USEDEP}] )
+"
+
+EPYTEST_DESELECT=(
+ # disable benchmarks
+ tests/group_session_test.py::TestClass::test_encrypt
+ tests/group_session_test.py::TestClass::test_decrypt
+)
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs \
+ dev-python/alabaster
diff --git a/dev-python/python-pidfile/Manifest b/dev-python/python-pidfile/Manifest
index 10bfee13c..5ab596510 100644
--- a/dev-python/python-pidfile/Manifest
+++ b/dev-python/python-pidfile/Manifest
@@ -1 +1,2 @@
DIST python-pidfile-3.0.0.tar.gz 2943 BLAKE2B aa56e04c22784fd35da236807d5ab3c472047983d7ad76ff6fc65e46133f36ac900dfd30b609a17fb3c4dd8589c4d4aa0f97eef5ced13095e49d82850f164f2e SHA512 82f87a2b3ac733ced78a87216f42b7fdc91f956fa9ec7e64f67ea5d53caf38652dc8b6e0518f6cfacf6bfe662c5d732f632b8f469af60555a8e6a43dbb99afbe
+DIST python-pidfile-3.1.1.tar.gz 4501 BLAKE2B d3587d581d008e4248e6a56169b32f1523da37e30f9a9ba96955a60998d5b095e13d51a673327c09d5c582fb37518c6d4ceb5ba94109d5e93e69d318ef0bb489 SHA512 314a2e670d2a6baae786b8aa7639a1384bd177b8006b221e46caf297140d840b72ff23629aac22648b41072274dd44cbfc454444ffcfe64c7cf6fd24fae15c1d
diff --git a/dev-python/python-pidfile/metadata.xml b/dev-python/python-pidfile/metadata.xml
index cbe3c6a53..8d2ff43ef 100644
--- a/dev-python/python-pidfile/metadata.xml
+++ b/dev-python/python-pidfile/metadata.xml
@@ -1,8 +1,16 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>smaniotto.nicola@gmail.com</email>
<name>Nicola Smaniotto</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">mosquito/python-pidfile</remote-id>
+ <remote-id type="pypi">python-pidfile</remote-id>
+ <maintainer>
+ <name>Dmitry Orlov</name>
+ <email>me@mosquito.su</email>
+ </maintainer>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/python-pidfile/python-pidfile-3.0.0.ebuild b/dev-python/python-pidfile/python-pidfile-3.0.0-r1.ebuild
index 1eee8940c..6f60dced8 100644
--- a/dev-python/python-pidfile/python-pidfile-3.0.0.ebuild
+++ b/dev-python/python-pidfile/python-pidfile-3.0.0-r1.ebuild
@@ -3,13 +3,13 @@
EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10..11} )
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="PIDFile context processor. Supported py2 and py3"
HOMEPAGE="https://github.com/mosquito/python-pidfile"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
@@ -17,6 +17,10 @@ KEYWORDS="~amd64"
RESTRICT="test" # https://github.com/mosquito/python-pidfile/issues/7
+RDEPEND="
+ dev-python/psutil[${PYTHON_USEDEP}]
+"
+
distutils_enable_tests unittest
python_test() {
diff --git a/dev-python/python-pidfile/python-pidfile-3.1.1.ebuild b/dev-python/python-pidfile/python-pidfile-3.1.1.ebuild
new file mode 100644
index 000000000..387d6f3c3
--- /dev/null
+++ b/dev-python/python-pidfile/python-pidfile-3.1.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="PIDFile context processor. Supported py2 and py3"
+HOMEPAGE="https://github.com/mosquito/python-pidfile"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RESTRICT="test" # https://github.com/mosquito/python-pidfile/issues/7
+
+RDEPEND="
+ dev-python/psutil[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
+
+python_test() {
+ eunittest tests/
+}
diff --git a/dev-python/python-pkcs11/Manifest b/dev-python/python-pkcs11/Manifest
deleted file mode 100644
index 662c8df3c..000000000
--- a/dev-python/python-pkcs11/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-pkcs11-0.7.0.tar.gz 106517 BLAKE2B ad5dde00beab92d2c530ebe0d4922a562db51b0015591d3f2dfe2f2489a01f72a8ccc4371fc0e88b2f3c8e45eb2bfc65c32c8f71dfa025f0ac9035ba2e8f2dd8 SHA512 2f8199296810c9f600012d151c42f00f9eb39dc22643a5a429f589f784fd4a14615d8b5371e175d277ea7af117d2650c1a8b69ce3c891276549c9fcb9a75229c
diff --git a/dev-python/python-pkcs11/metadata.xml b/dev-python/python-pkcs11/metadata.xml
deleted file mode 100644
index 386a9beb8..000000000
--- a/dev-python/python-pkcs11/metadata.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-A high level, “more Pythonic” interface to the PKCS#11 (Cryptoki) standard to support HSM and Smartcard devices in Python.
-
-The interface is designed to follow the logical structure of a HSM, with useful defaults for obscurely documented parameters. Many APIs will
-optionally accept iterables and act as generators, allowing you to stream large data blocks for symmetric encryption.
-
-python-pkcs11 also includes numerous utility functions to convert between PKCS #11 data structures and common interchange formats including PKCS #1
-and X.509.
-
-python-pkcs11 is fully documented and has a full integration test suite for all features, with continuous integration against multiple HSM platforms including:
-Thales nCipher
-Opencryptoki TP
-OpenSC/Smartcard-HSM/Nitrokey HSM
- </longdescription>
- <upstream>
- <remote-id type="github">danni/python-pkcs11</remote-id>
- <remote-id type="pypi">python-pkcs11</remote-id>
- <maintainer status="unknown">
- <email>danielle@madeley.id.au</email>
- <name>Danielle Madeley</name>
- </maintainer>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-pkcs11/python-pkcs11-0.7.0.ebuild b/dev-python/python-pkcs11/python-pkcs11-0.7.0.ebuild
deleted file mode 100644
index 272f02daa..000000000
--- a/dev-python/python-pkcs11/python-pkcs11-0.7.0.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-DOCS_BUILDER="sphinx"
-DOCS_DIR="${S}/docs"
-DOCS_DEPEND="dev-python/sphinx_rtd_theme"
-
-inherit distutils-r1 docs
-
-DESCRIPTION="PKCS#11 (Cryptoki) support for Python"
-HOMEPAGE="
- https://github.com/danni/python-pkcs11
- https://pypi.org/project/python-pkcs11
-"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-#hardware device needed for tests
-RESTRICT="test"
-
-RDEPEND="
- >=dev-python/asn1crypto-1.0.0[${PYTHON_USEDEP}]
- dev-python/cached-property[${PYTHON_USEDEP}]
-"
-DEPEND="
- ${RDEPEND}
- dev-python/cython[${PYTHON_USEDEP}]
- test? (
- dev-python/cryptography[${PYTHON_USEDEP}]
- dev-python/oscrypto[${PYTHON_USEDEP}]
- dev-python/parameterized[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/python-saharaclient/Manifest b/dev-python/python-saharaclient/Manifest
deleted file mode 100644
index 17d2a6b00..000000000
--- a/dev-python/python-saharaclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-saharaclient-3.2.1.tar.gz 106266 BLAKE2B a9f439028ae523a452b5cdc0024e4d44527c3114826432cef837df1c32bbd89035ec09c8f72c349e7fc8347d438236b61e20df253119bf35bf69e27b00c2affa SHA512 a0e9dec4a8a1b86de182535060c99d79c7aa4c93f801088a0b7d6a40084294821c22de531b00cf73b4f6940e72dc43e505bea8aee218fdcb63ef0727aa806544
diff --git a/dev-python/python-saharaclient/metadata.xml b/dev-python/python-saharaclient/metadata.xml
deleted file mode 100644
index 99da083af..000000000
--- a/dev-python/python-saharaclient/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-saharaclient</remote-id>
- <remote-id type="github">openstack/python-saharaclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-saharaclient/python-saharaclient-3.2.1.ebuild b/dev-python/python-saharaclient/python-saharaclient-3.2.1.ebuild
deleted file mode 100644
index c4fa1e604..000000000
--- a/dev-python/python-saharaclient/python-saharaclient-3.2.1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="This is a client for the OpenStack Sahara API, aka HADOOP"
-HOMEPAGE="https://github.com/openstack/python-saharaclient"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/osc-lib-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-1.19.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/python-openstackclient-5.2.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/python-senlinclient/Manifest b/dev-python/python-senlinclient/Manifest
deleted file mode 100644
index 922e9068c..000000000
--- a/dev-python/python-senlinclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-senlinclient-2.1.1.tar.gz 88012 BLAKE2B 0aab4a5eefbd87334323d3785a34fb99cba0ced69cd018d66048cd9664026756c9c11a9287eebccc9cb449d90a3a83322617c04c5e69697b244dc0b6305f73d1 SHA512 7b3813a589c21d87729837a6a208d87dff6c6a8c5f887d9684edd8931d0894b86d95b32f3f8ea65286cdb24c1ae863365712288cb97d86b7aba7dd6c73e059c7
diff --git a/dev-python/python-senlinclient/metadata.xml b/dev-python/python-senlinclient/metadata.xml
deleted file mode 100644
index 66c4cb195..000000000
--- a/dev-python/python-senlinclient/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-senlinclient</remote-id>
- <remote-id type="github">openstack/python-senlinclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-senlinclient/python-senlinclient-2.1.1.ebuild b/dev-python/python-senlinclient/python-senlinclient-2.1.1.ebuild
deleted file mode 100644
index db4e5a2b4..000000000
--- a/dev-python/python-senlinclient/python-senlinclient-2.1.1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="A client for the OpenStack Senlin API"
-HOMEPAGE="https://github.com/openstack/python-senlinclient"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-
-DEPEND=">=dev-python/pbr-2.1.1[${PYTHON_USEDEP}]"
-RDEPEND=">=dev-python/pbr-2.1.1[${PYTHON_USEDEP}]
- >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
- <dev-python/prettytable-0.8[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/openstacksdk-0.24.0[${PYTHON_USEDEP}]
- >=dev-python/osc-lib-1.11.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-2.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/python-heatclient-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.13.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]"
diff --git a/dev-python/python-skywater-pdk/Manifest b/dev-python/python-skywater-pdk/Manifest
new file mode 100644
index 000000000..b9f1368f6
--- /dev/null
+++ b/dev-python/python-skywater-pdk/Manifest
@@ -0,0 +1 @@
+DIST skywater-pdk-0.0.0_p20220424.tar.gz 2453601 BLAKE2B 527c66f71b79b24d67eca0ed43d654073a62edf9ff71dec7cf86e783f6d41635803066cf723e88cacb284b090e7bf1f35b22106454d882307f9c7b8338964b35 SHA512 8a26cc93572844ff1f1f9112b42f1fb4691d65cb9598554c8de326c7372e650c8c10bf0d9258bfebcfc2917988fc7405b5b75d5c5adfe131ff5db19dd6a159b4
diff --git a/dev-python/python-skywater-pdk/metadata.xml b/dev-python/python-skywater-pdk/metadata.xml
new file mode 100644
index 000000000..44db83647
--- /dev/null
+++ b/dev-python/python-skywater-pdk/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">google/skywater-pdk</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/python-skywater-pdk/python-skywater-pdk-0.0.0_p20220424.ebuild b/dev-python/python-skywater-pdk/python-skywater-pdk-0.0.0_p20220424.ebuild
new file mode 100644
index 000000000..8317f6d9c
--- /dev/null
+++ b/dev-python/python-skywater-pdk/python-skywater-pdk-0.0.0_p20220424.ebuild
@@ -0,0 +1,29 @@
+# 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_10 ) # python3_11 depends on dev-python/dataclasses_json
+
+MY_PN="skywater-pdk"
+MY_REV=5a57f505cd4cd65d10e9f37dd2d259a526bc9bf7
+
+inherit distutils-r1
+
+DESCRIPTION="Python library for working with files found in the SkyWater PDK"
+HOMEPAGE="https://github.com/google/skywater-pdk"
+SRC_URI="https://github.com/google/skywater-pdk/archive/${MY_REV}.tar.gz -> skywater-pdk-${PV}.tar.gz"
+S="${WORKDIR}/${MY_PN}-${MY_REV}/scripts/python-skywater-pdk"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/dataclasses-json[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ sed '/sample/d' -i setup.py || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/python-socketio/Manifest b/dev-python/python-socketio/Manifest
new file mode 100644
index 000000000..49ae47954
--- /dev/null
+++ b/dev-python/python-socketio/Manifest
@@ -0,0 +1,2 @@
+DIST python-socketio-5.11.0.tar.gz 116482 BLAKE2B b55aec3c18d5313a82d6d430158fbe7e955295d36a363d4072c76cff71596e8b3e805e7a571fac343258a8576501f1f25fe92c5bf1aaffcc7272b4dea7cac2c2 SHA512 ed2068812cb7d2e74dcf9ff15a9c9b957ac07369f786a6db67d78286f0c49a7b860c5356040d405d50351c0ae49cf4f939f106d796a614c45743df1220a9b575
+DIST python-socketio-5.11.1.tar.gz 116661 BLAKE2B baadab35001cb8b5b45af302787aef2eaf1b01f29590c91d0797ce597e0bd8e55ae1c7277bbd852157faa3677e10f0022245d1d1e75c859358fa6cf9ff9ae687 SHA512 95fbaac7040e53975c68b94cc47dad58bc4b5f19138560b3b48e5c44ddef66459a8fc2277958c738f7f85ba159c54ba4e2eea93d05f35e74a5a71c9901584dc8
diff --git a/dev-python/python-socketio/metadata.xml b/dev-python/python-socketio/metadata.xml
new file mode 100644
index 000000000..69979a313
--- /dev/null
+++ b/dev-python/python-socketio/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
+ </maintainer>
+ <use>
+ <flag name="client">Add websocket client</flag>
+ <flag name="asyncio-client">Add async websocket client</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">miguelgrinberg/python-socketio</remote-id>
+ <remote-id type="pypi">python-socketio</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/python-socketio/python-socketio-5.11.0.ebuild b/dev-python/python-socketio/python-socketio-5.11.0.ebuild
new file mode 100644
index 000000000..fba80ab74
--- /dev/null
+++ b/dev-python/python-socketio/python-socketio-5.11.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10,11,12} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python implementation of the Socket.IO realtime server."
+HOMEPAGE="
+ https://python-socketio.readthedocs.org/
+ https://github.com/miguelgrinberg/python-socketio/
+ https://pypi.org/project/python-socketio"
+
+LICENSE="MIT"
+SLOT="0"
+#wait for dev-python/python-engineio
+KEYWORDS="~amd64"
+IUSE="client asyncio-client"
+
+RDEPEND="dev-python/bidict[${PYTHON_USEDEP}]
+ >=dev-python/python-engineio-4.0.0[${PYTHON_USEDEP}]
+ client? ( dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/websocket-client[${PYTHON_USEDEP}] )
+ asyncio-client? ( dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/websockets[${PYTHON_USEDEP}] )"
+DEPEND="${RDEPEND}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# pypi tarball does not contain tests
+RESTRICT="test"
diff --git a/dev-python/python-socketio/python-socketio-5.11.1.ebuild b/dev-python/python-socketio/python-socketio-5.11.1.ebuild
new file mode 100644
index 000000000..fba80ab74
--- /dev/null
+++ b/dev-python/python-socketio/python-socketio-5.11.1.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10,11,12} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python implementation of the Socket.IO realtime server."
+HOMEPAGE="
+ https://python-socketio.readthedocs.org/
+ https://github.com/miguelgrinberg/python-socketio/
+ https://pypi.org/project/python-socketio"
+
+LICENSE="MIT"
+SLOT="0"
+#wait for dev-python/python-engineio
+KEYWORDS="~amd64"
+IUSE="client asyncio-client"
+
+RDEPEND="dev-python/bidict[${PYTHON_USEDEP}]
+ >=dev-python/python-engineio-4.0.0[${PYTHON_USEDEP}]
+ client? ( dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/websocket-client[${PYTHON_USEDEP}] )
+ asyncio-client? ( dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/websockets[${PYTHON_USEDEP}] )"
+DEPEND="${RDEPEND}"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# pypi tarball does not contain tests
+RESTRICT="test"
diff --git a/dev-python/python-statemachine/Manifest b/dev-python/python-statemachine/Manifest
new file mode 100644
index 000000000..8ec92cfe6
--- /dev/null
+++ b/dev-python/python-statemachine/Manifest
@@ -0,0 +1 @@
+DIST python-statemachine-2.1.2.gh.tar.gz 240041 BLAKE2B aae4571bf9628fbf3eb77c929a912f6bb5a2be03374557b6548bf0577f3d348aa4d479599d327c8035474e30aed47f4fde9998457a38f4a255df321172ceaf88 SHA512 593eaa07d7982b15045987c20d1fbd084e016fa53ae0cd45ec96e0f3d74b5b6d9c60cf9e94d67a5daaa3d3727630a88e32fb3d1d7f03248bb3ef0b552251c729
diff --git a/dev-python/python-statemachine/metadata.xml b/dev-python/python-statemachine/metadata.xml
new file mode 100644
index 000000000..5aa6cbe1e
--- /dev/null
+++ b/dev-python/python-statemachine/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">python-statemachine</remote-id>
+ <remote-id type="github">fgmacedo/python-statemachine</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/python-statemachine/python-statemachine-2.1.2.ebuild b/dev-python/python-statemachine/python-statemachine-2.1.2.ebuild
new file mode 100644
index 000000000..e85ac73d1
--- /dev/null
+++ b/dev-python/python-statemachine/python-statemachine-2.1.2.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python Finite State Machines made easy."
+HOMEPAGE="
+ https://pypi.org/project/python-statemachine/
+ https://github.com/fgmacedo/python-statemachine
+"
+SRC_URI="https://github.com/fgmacedo/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/pydot[${PYTHON_USEDEP}]"
+
+BDEPEND="
+ ${RDEPEND}
+ test? (
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ epytest -o 'addopts=""' --ignore=tests/test_profiling.py
+}
diff --git a/dev-python/python-telegram-bot/Manifest b/dev-python/python-telegram-bot/Manifest
index 2afb32a7b..f85dd9d0e 100644
--- a/dev-python/python-telegram-bot/Manifest
+++ b/dev-python/python-telegram-bot/Manifest
@@ -1 +1,2 @@
-DIST python-telegram-bot-13.1.tar.gz 1998020 BLAKE2B 376402c28245b6a6a516c58be0f730b1e8d98b8f829d705355415afc3d702f1b35f29988a2600b13a6f346d524016499fafee51ae8b81042a5e074e34c222961 SHA512 ff51b0490d159de4cbc2a273f1011d63d71b1d83ae1850ca3967d63386f1580e9ce9f641cb8de0b99c629660f6143dfcdef8c6f49fc91a888efd43132b1697c0
+DIST python-telegram-bot-20.6.tar.gz 1958397 BLAKE2B f5f11a604ff1eb199b2b81571b86b69541faa1d98a5d12ac4f3a9f8c6789f722e924232244f211721986beba1380bc877f33251564a46086e4e33d8952e701e1 SHA512 87e42af8663d11f2e33783d40a28a1767f4f5e14203e53463a8f76be0f9a8f0601b3e34b297d1d1ed2f2111b48cbf22a22d28a4d7396b67defb1f0081b10bc38
+DIST python-telegram-bot-21.1.1.tar.gz 2059431 BLAKE2B c41a7a8eeef2e8f2f7f1865789ed38a96e225dd89ad8c5ded5db75fbcffb8bde71bac8782d7541b2d8caa29e69ce092cc6a3a8c359133b1b359bdbb32a502025 SHA512 10143ea0abdbb86e1f2d47d4383fc0cd5e066fb6c93c906974f73f4fecf29b3e8ae963597dbe79ba85e817180977a246fed485e1461f809bc57013bf31a375df
diff --git a/dev-python/python-telegram-bot/metadata.xml b/dev-python/python-telegram-bot/metadata.xml
index 01c1fc848..77bab9784 100644
--- a/dev-python/python-telegram-bot/metadata.xml
+++ b/dev-python/python-telegram-bot/metadata.xml
@@ -1,8 +1,14 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>davidroman96@gmail.com</email>
- <name>David Roman</name>
+ <email>dwosky@pm.me</email>
+ <name>Pedro Arizmendi</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">python-telegram-bot/python-telegram-bot</remote-id>
+ <doc>https://docs.python-telegram-bot.org/en/stable/</doc>
+ <bugs-to>https://github.com/python-telegram-bot/python-telegram-bot/issues</bugs-to>
+ <changelog>https://python-telegram-bot.readthedocs.io/en/stable/changelog.html</changelog>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/python-telegram-bot/python-telegram-bot-13.1.ebuild b/dev-python/python-telegram-bot/python-telegram-bot-13.1.ebuild
deleted file mode 100644
index d46cc3c39..000000000
--- a/dev-python/python-telegram-bot/python-telegram-bot-13.1.ebuild
+++ /dev/null
@@ -1,68 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python wrapper of telegram bots API"
-HOMEPAGE="https://python-telegram-bot.org https://github.com/python-telegram-bot/python-telegram-bot"
-
-if [[ ${PV} == *9999 ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/python-telegram-bot/python-telegram-bot"
-else
- SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
- KEYWORDS="~amd64 ~x86"
-fi
-
-LICENSE="GPL-3"
-SLOT="0"
-
-# This error is really strange
-# UserWarning: python-telegram-bot is using upstream urllib3. This is allowed but not supported by python-telegram-bot maintainers.
-RESTRICT="test"
-
-RDEPEND="
- dev-python/certifi[${PYTHON_USEDEP}]
- dev-python/cryptography[${PYTHON_USEDEP}]
- dev-python/decorator[${PYTHON_USEDEP}]
- dev-python/future[${PYTHON_USEDEP}]
- dev-python/PySocks[${PYTHON_USEDEP}]
- dev-python/ujson[${PYTHON_USEDEP}]
- dev-python/urllib3[${PYTHON_USEDEP}]
- www-servers/tornado[${PYTHON_USEDEP}]
-"
-
-DEPEND="test? (
- dev-python/APScheduler[${PYTHON_USEDEP}]
- dev-python/attrs[${PYTHON_USEDEP}]
- dev-python/beautifulsoup4[${PYTHON_USEDEP}]
- dev-python/flaky[${PYTHON_USEDEP}]
- dev-python/pytest-timeout[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- dev-python/yapf[${PYTHON_USEDEP}]
-)"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs/source dev-python/sphinx_rtd_theme
-
-python_prepare_all() {
- # do not make a test flaky report
- sed -i -e '/addopts/d' setup.cfg || die
-
- sed -i 's/from telegram.vendor.ptb_urllib3 //g' tests/test_*.py
- sed -i 's/telegram.vendor.ptb_urllib3.urllib3/urllib3/g' tests/test_*.py
-
- # Remove tests files that require network access
- rm tests/test_{animation,audio,bot,commandhandler,constants,conversationhandler}.py || die
- rm tests/test_{dispatcher,document,forcereply,inlinekeyboardmarkup,inputmedia}.py || die
- rm tests/test_{invoice,jobqueue,official,parsemode,persistence,photo,sticker,updater}.py || die
- rm tests/test_replykeyboard{markup,remove}.py || die
- rm tests/test_{video,videonote,voice}.py || die
-
- distutils-r1_python_prepare_all
-}
diff --git a/dev-python/python-telegram-bot/python-telegram-bot-20.6-r1.ebuild b/dev-python/python-telegram-bot/python-telegram-bot-20.6-r1.ebuild
new file mode 100644
index 000000000..19a614056
--- /dev/null
+++ b/dev-python/python-telegram-bot/python-telegram-bot-20.6-r1.ebuild
@@ -0,0 +1,150 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Python wrapper of telegram bots API"
+HOMEPAGE="https://docs.python-telegram-bot.org https://github.com/python-telegram-bot/python-telegram-bot"
+SRC_URI="https://github.com/python-telegram-bot/python-telegram-bot/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/cachetools-5.3.1[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-39.0.1[${PYTHON_USEDEP}]
+ >=dev-python/httpx-0.25.0[${PYTHON_USEDEP}]
+ >=dev-python/tornado-6.3.3[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+ dev-python/flaky[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ >=dev-python/tornado-6.3.3[${PYTHON_USEDEP}]
+ )
+"
+
+# These tests require an internet connection
+EPYTEST_DESELECT=(
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_creation
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_de_json
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_expected_values
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_get_file_instance_method
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_send_with_animation
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_slot_behaviour
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_to_dict
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_creation
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_de_json
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_equality
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_expected_values
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_get_file_instance_method
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_send_with_audio
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_slot_behaviour
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_to_dict
+ tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_de_json
+ tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_get_big_file_instance_method
+ tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_get_small_file_instance_method
+ tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_send_with_chat_photo
+ tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_slot_behaviour
+ tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_to_dict
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_creation
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_de_json
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_equality
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_expected_values
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_get_file_instance_method
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_send_with_document
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_slot_behaviour
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_to_dict
+ tests/_files/test_inputmedia.py::TestInputMediaAnimationWithoutRequest::test_with_animation
+ tests/_files/test_inputmedia.py::TestInputMediaAudioWithoutRequest::test_with_audio
+ tests/_files/test_inputmedia.py::TestInputMediaDocumentWithoutRequest::test_with_document
+ tests/_files/test_inputmedia.py::TestInputMediaPhotoWithoutRequest::test_with_photo
+ tests/_files/test_inputmedia.py::TestInputMediaVideoWithoutRequest::test_with_video
+ tests/_files/test_inputmedia.py::TestSendMediaGroupWithoutRequest::test_send_media_group_throws_error_with_group_caption_and_individual_captions
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_creation
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_de_json
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_equality
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_expected_values
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_get_file_instance_method
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_send_with_photosize
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_slot_behaviour
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_to_dict
+ tests/_files/test_sticker.py::TestStickerSetWithoutRequest::test_de_json
+ tests/_files/test_sticker.py::TestStickerSetWithoutRequest::test_get_file_instance_method
+ tests/_files/test_sticker.py::TestStickerSetWithoutRequest::test_sticker_set_to_dict
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_creation
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_de_json
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_equality
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_expected_values
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_send_with_sticker
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_slot_behaviour
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_to_dict
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_creation
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_equality
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_expected_values
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_get_file_instance_method
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_send_with_video
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_slot_behaviour
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_to_dict
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_creation
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_equality
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_expected_values
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_get_file_instance_method
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_send_with_video_note
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_slot_behaviour
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_to_dict
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_creation
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_equality
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_expected_values
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_get_file_instance_method
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_send_with_voice
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_slot_behaviour
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_to_dict
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_after_shutdown
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_exceptions
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_manual_timeouts
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_params_no_data
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_params_with_data
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_return_value
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_http_1_response
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_multiple_init_cycles
+ tests/request/test_request.py::TestRequestWithoutRequest::test_chat_migrated
+ tests/request/test_request.py::TestRequestWithoutRequest::test_error_description
+ tests/request/test_request.py::TestRequestWithoutRequest::test_exceptions_in_do_request
+ tests/request/test_request.py::TestRequestWithoutRequest::test_illegal_json_response
+ tests/request/test_request.py::TestRequestWithoutRequest::test_replaced_unprintable_char
+ tests/request/test_request.py::TestRequestWithoutRequest::test_retrieve
+ tests/request/test_request.py::TestRequestWithoutRequest::test_retry_after
+ tests/request/test_request.py::TestRequestWithoutRequest::test_special_errors
+ tests/request/test_request.py::TestRequestWithoutRequest::test_timeout_propagation
+ tests/request/test_request.py::TestRequestWithoutRequest::test_unknown_request_params
+ tests/test_bot.py::TestBotWithoutRequest::test_copy_message
+ tests/test_bot.py::TestBotWithoutRequest::test_equality
+ tests/test_bot.py::TestBotWithoutRequest::test_get_me_and_properties
+ tests/test_bot.py::TestBotWithoutRequest::test_log_decorator
+ tests/test_forum.py::TestForumTopicCreatedWithoutRequest::test_equality
+ tests/test_forum.py::TestForumTopicWithoutRequest::test_de_json
+ tests/test_forum.py::TestForumTopicWithoutRequest::test_equality
+ tests/test_forum.py::TestForumTopicWithoutRequest::test_expected_values
+ tests/test_forum.py::TestForumTopicWithoutRequest::test_slot_behaviour
+ tests/test_forum.py::TestForumTopicWithoutRequest::test_to_dict
+)
+
+distutils_enable_tests pytest
+
+# Run only the tests that don't require a connection
+python_test() {
+ epytest -m no_req
+}
+
+pkg_postinst() {
+ optfeature "using telegram.ext.JobQueue" dev-python/APScheduler
+}
diff --git a/dev-python/python-telegram-bot/python-telegram-bot-21.1.1.ebuild b/dev-python/python-telegram-bot/python-telegram-bot-21.1.1.ebuild
new file mode 100644
index 000000000..e5ba75ed0
--- /dev/null
+++ b/dev-python/python-telegram-bot/python-telegram-bot-21.1.1.ebuild
@@ -0,0 +1,161 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Python wrapper of telegram bots API"
+HOMEPAGE="https://docs.python-telegram-bot.org https://github.com/python-telegram-bot/python-telegram-bot"
+SRC_URI="https://github.com/python-telegram-bot/python-telegram-bot/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/cachetools-5.3.3[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-39.0.1[${PYTHON_USEDEP}]
+ >=dev-python/httpx-0.27.0[${PYTHON_USEDEP}]
+ >=dev-python/tornado-6.4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+ dev-python/flaky[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ >=dev-python/tornado-6.4[${PYTHON_USEDEP}]
+ )
+"
+
+# These tests require an internet connection
+EPYTEST_DESELECT=(
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_creation
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_de_json
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_expected_values
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_get_file_instance_method
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_send_animation_default_quote_parse_mode
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_send_with_animation
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_slot_behaviour
+ tests/_files/test_animation.py::TestAnimationWithoutRequest::test_to_dict
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_creation
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_de_json
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_equality
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_expected_values
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_get_file_instance_method
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_send_audio_default_quote_parse_mode
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_send_with_audio
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_slot_behaviour
+ tests/_files/test_audio.py::TestAudioWithoutRequest::test_to_dict
+ tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_de_json
+ tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_get_big_file_instance_method
+ tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_get_small_file_instance_method
+ tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_send_with_chat_photo
+ tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_slot_behaviour
+ tests/_files/test_chatphoto.py::TestChatPhotoWithoutRequest::test_to_dict
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_creation
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_de_json
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_equality
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_expected_values
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_get_file_instance_method
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_send_document_default_quote_parse_mode
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_send_with_document
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_slot_behaviour
+ tests/_files/test_document.py::TestDocumentWithoutRequest::test_to_dict
+ tests/_files/test_inputmedia.py::TestInputMediaAnimationWithoutRequest::test_with_animation
+ tests/_files/test_inputmedia.py::TestInputMediaAudioWithoutRequest::test_with_audio
+ tests/_files/test_inputmedia.py::TestInputMediaDocumentWithoutRequest::test_with_document
+ tests/_files/test_inputmedia.py::TestInputMediaPhotoWithoutRequest::test_with_photo
+ tests/_files/test_inputmedia.py::TestInputMediaVideoWithoutRequest::test_with_video
+ tests/_files/test_inputmedia.py::TestSendMediaGroupWithoutRequest::test_send_media_group_default_quote_parse_mode
+ tests/_files/test_inputmedia.py::TestSendMediaGroupWithoutRequest::test_send_media_group_throws_error_with_group_caption_and_individual_captions
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_creation
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_de_json
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_equality
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_expected_values
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_get_file_instance_method
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_send_photo_default_quote_parse_mode
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_send_with_photosize
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_slot_behaviour
+ tests/_files/test_photo.py::TestPhotoWithoutRequest::test_to_dict
+ tests/_files/test_sticker.py::TestStickerSetWithoutRequest::test_de_json
+ tests/_files/test_sticker.py::TestStickerSetWithoutRequest::test_get_file_instance_method
+ tests/_files/test_sticker.py::TestStickerSetWithoutRequest::test_sticker_set_to_dict
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_creation
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_de_json
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_equality
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_expected_values
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_send_sticker_default_quote_parse_mode
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_send_with_sticker
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_slot_behaviour
+ tests/_files/test_sticker.py::TestStickerWithoutRequest::test_to_dict
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_creation
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_equality
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_expected_values
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_get_file_instance_method
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_send_video_default_quote_parse_mode
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_send_with_video
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_slot_behaviour
+ tests/_files/test_video.py::TestVideoWithoutRequest::test_to_dict
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_creation
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_equality
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_expected_values
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_get_file_instance_method
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_send_video_note_default_quote_parse_mode
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_send_with_video_note
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_slot_behaviour
+ tests/_files/test_videonote.py::TestVideoNoteWithoutRequest::test_to_dict
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_creation
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_equality
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_expected_values
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_get_file_instance_method
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_send_voice_default_quote_parse_mode
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_send_with_voice
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_slot_behaviour
+ tests/_files/test_voice.py::TestVoiceWithoutRequest::test_to_dict
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_after_shutdown
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_exceptions
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_manual_timeouts
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_params_no_data
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_params_with_data
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_do_request_return_value
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_http_1_response
+ tests/request/test_request.py::TestHTTPXRequestWithoutRequest::test_multiple_init_cycles
+ tests/request/test_request.py::TestRequestWithoutRequest::test_chat_migrated
+ tests/request/test_request.py::TestRequestWithoutRequest::test_error_description
+ tests/request/test_request.py::TestRequestWithoutRequest::test_exceptions_in_do_request
+ tests/request/test_request.py::TestRequestWithoutRequest::test_illegal_json_response
+ tests/request/test_request.py::TestRequestWithoutRequest::test_replaced_unprintable_char
+ tests/request/test_request.py::TestRequestWithoutRequest::test_retrieve
+ tests/request/test_request.py::TestRequestWithoutRequest::test_retry_after
+ tests/request/test_request.py::TestRequestWithoutRequest::test_special_errors
+ tests/request/test_request.py::TestRequestWithoutRequest::test_timeout_propagation
+ tests/request/test_request.py::TestRequestWithoutRequest::test_unknown_request_params
+ tests/test_bot.py::TestBotWithoutRequest::test_bot_method_logging
+ tests/test_bot.py::TestBotWithoutRequest::test_copy_message
+ tests/test_bot.py::TestBotWithoutRequest::test_equality
+ tests/test_bot.py::TestBotWithoutRequest::test_get_me_and_properties
+ tests/test_bot.py::TestBotWithoutRequest::test_log_decorator
+ tests/test_bot.py::TestBotWithoutRequest::test_send_message_default_quote_parse_mode
+ tests/test_forum.py::TestForumTopicCreatedWithoutRequest::test_equality
+ tests/test_forum.py::TestForumTopicWithoutRequest::test_de_json
+ tests/test_forum.py::TestForumTopicWithoutRequest::test_equality
+ tests/test_forum.py::TestForumTopicWithoutRequest::test_expected_values
+ tests/test_forum.py::TestForumTopicWithoutRequest::test_slot_behaviour
+ tests/test_forum.py::TestForumTopicWithoutRequest::test_to_dict
+)
+
+distutils_enable_tests pytest
+
+# Run only the tests that don't require a connection
+python_test() {
+ epytest -m no_req
+}
+
+pkg_postinst() {
+ optfeature "using telegram.ext.JobQueue" dev-python/APScheduler
+}
diff --git a/dev-python/python-telegram-bot/python-telegram-bot-9999.ebuild b/dev-python/python-telegram-bot/python-telegram-bot-9999.ebuild
index 8701dde0a..bc90d5a54 100644
--- a/dev-python/python-telegram-bot/python-telegram-bot-9999.ebuild
+++ b/dev-python/python-telegram-bot/python-telegram-bot-9999.ebuild
@@ -1,64 +1,60 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1 optfeature
DESCRIPTION="Python wrapper of telegram bots API"
-HOMEPAGE="https://python-telegram-bot.org https://github.com/python-telegram-bot/python-telegram-bot"
+HOMEPAGE="https://docs.python-telegram-bot.org https://github.com/python-telegram-bot/python-telegram-bot"
if [[ ${PV} == *9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/python-telegram-bot/python-telegram-bot"
else
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
KEYWORDS="~amd64 ~x86"
fi
-LICENSE="GPL-3"
+LICENSE="LGPL-3"
SLOT="0"
RDEPEND="
- dev-python/certifi[${PYTHON_USEDEP}]
- dev-python/cryptography[${PYTHON_USEDEP}]
- dev-python/decorator[${PYTHON_USEDEP}]
- dev-python/future[${PYTHON_USEDEP}]
- dev-python/PySocks[${PYTHON_USEDEP}]
- dev-python/ujson[${PYTHON_USEDEP}]
- dev-python/urllib3[${PYTHON_USEDEP}]
- www-servers/tornado[${PYTHON_USEDEP}]
+ >=dev-python/cachetools-5.3.0[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-39.0.1[${PYTHON_USEDEP}]
+ >=dev-python/httpx-0.24.0[${PYTHON_USEDEP}]
+ >=dev-python/tornado-6.2[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+ dev-python/flaky[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ >=dev-python/tornado-6.2[${PYTHON_USEDEP}]
+ )
"
-DEPEND="test? (
- dev-python/APScheduler[${PYTHON_USEDEP}]
- dev-python/attrs[${PYTHON_USEDEP}]
- dev-python/beautifulsoup4[${PYTHON_USEDEP}]
- dev-python/flaky[${PYTHON_USEDEP}]
- dev-python/pytest-timeout[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- dev-python/yapf[${PYTHON_USEDEP}]
-)"
+PATCHES=(
+ "${FILESDIR}/${P}-no-internet-tests.patch"
+)
distutils_enable_tests pytest
-distutils_enable_sphinx docs/source dev-python/sphinx_rtd_theme
-
-python_prepare_all() {
- # do not make a test flaky report
- sed -i -e '/addopts/d' setup.cfg || die
- sed -i 's/from telegram.vendor.ptb_urllib3 //g' tests/test_*.py
- sed -i 's/telegram.vendor.ptb_urllib3.urllib3/urllib3/g' tests/test_*.py
-
- # Remove tests files that require network access
- rm tests/test_{animation,audio,bot,commandhandler,constants,conversationhandler}.py || die
- rm tests/test_{dispatcher,document,forcereply,inlinekeyboardmarkup,inputmedia}.py || die
- rm tests/test_{invoice,jobqueue,official,parsemode,persistence,photo,sticker,updater}.py || die
- rm tests/test_replykeyboard{markup,remove}.py || die
- rm tests/test_{video,videonote,voice}.py || die
+# Run only the tests that don't require a connection
+python_test() {
+ epytest -m no_req
+}
+python_prepare_all() {
distutils-r1_python_prepare_all
}
+
+pkg_postinst() {
+ optfeature_header "Optional package dependencies:"
+ optfeature "using telegram.ext.JobQueue" dev-python/APScheduler
+}
diff --git a/dev-python/python-troveclient/Manifest b/dev-python/python-troveclient/Manifest
deleted file mode 100644
index 9f8dcc268..000000000
--- a/dev-python/python-troveclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-troveclient-5.1.1.tar.gz 180476 BLAKE2B 5f306b044f558fa0cc9ecdabe92842608efa21c6194fcae4f4421a589eb9ff3f7eaf0226fb922a3ece70fce1fb1e692c8aaf6d54746ba2e8890293af976fc6d7 SHA512 731f5c5f230b520b5a8b076a76e18d910123526e39f417eb697e419d59360f3dec75cb2c27159fd0f462690e0ae09f4e6a2d724fc302c0720275b7e0e1d56f17
diff --git a/dev-python/python-troveclient/metadata.xml b/dev-python/python-troveclient/metadata.xml
deleted file mode 100644
index 11ac660c7..000000000
--- a/dev-python/python-troveclient/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-troveclient</remote-id>
- <remote-id type="github">openstack/python-troveclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-troveclient/python-troveclient-5.1.1.ebuild b/dev-python/python-troveclient/python-troveclient-5.1.1.ebuild
deleted file mode 100644
index 48eb3552b..000000000
--- a/dev-python/python-troveclient/python-troveclient-5.1.1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="A client for the OpenStack Trove API, a scalable relational database service"
-HOMEPAGE="https://github.com/openstack/python-troveclient"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-
-DEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
- <dev-python/prettytable-0.8[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/simplejson-3.5.1[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
- !~dev-python/Babel-2.4.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/python-swiftclient-3.2.0[${PYTHON_USEDEP}]
- >=dev-python/python-mistralclient-3.1.0[${PYTHON_USEDEP}]
- !~dev-python/python-mistralclient-3.2.0[${PYTHON_USEDEP}]
- >=dev-python/osc-lib-1.8.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/python-vitrageclient/Manifest b/dev-python/python-vitrageclient/Manifest
deleted file mode 100644
index 745fe2d5d..000000000
--- a/dev-python/python-vitrageclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-vitrageclient-4.1.1.tar.gz 48885 BLAKE2B 87bbd0174567c142a38901ddf5a4f785e4a9eac9a9e22c3af6f101ead69695e6f9324e52c86c0f526e4120c2f6e807ff8719b017c38de8aad3f59ed4ebf8c2c2 SHA512 2d6758045e4250ceda55e991286e9391ccb9ec154a8802f2aa3faf81d4021b2a8b3be13cefe38df965cae4b2b094592185362780b14e32dcf7cfdc7a13d005af
diff --git a/dev-python/python-vitrageclient/metadata.xml b/dev-python/python-vitrageclient/metadata.xml
deleted file mode 100644
index d7d03a165..000000000
--- a/dev-python/python-vitrageclient/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-vitrageclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-vitrageclient/python-vitrageclient-4.1.1.ebuild b/dev-python/python-vitrageclient/python-vitrageclient-4.1.1.ebuild
deleted file mode 100644
index 14992096e..000000000
--- a/dev-python/python-vitrageclient/python-vitrageclient-4.1.1.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="A client for the OpenStack Vitrage API"
-HOMEPAGE="https://github.com/openstack/python-vitrageclient"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-DEPEND=">=dev-python/pbr-3.1.1[${PYTHON_USEDEP}]"
-RDEPEND="
- >=dev-python/pbr-3.1.1[${PYTHON_USEDEP}]
- >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
- !~dev-python/cliff-2.9.0[${PYTHON_USEDEP}]
- >=dev-python/osc-lib-1.8.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
- >=dev-python/networkx-2.3[${PYTHON_USEDEP}]
- >=dev-python/pydot-1.4.1[${PYTHON_USEDEP}]"
diff --git a/dev-python/python-zaqarclient/Manifest b/dev-python/python-zaqarclient/Manifest
deleted file mode 100644
index cd3491737..000000000
--- a/dev-python/python-zaqarclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-zaqarclient-2.0.1.tar.gz 86779 BLAKE2B 5c19de28ec9329542cc77281596043c746332ac568495a7845150d4449731fd31729c1c745c828f1ba4e4cfa2f64a189b53e982248d3d74e3618e05489e5f24a SHA512 31af3bf16ac821a3f204673c9359d5dcc56915d6f108c0127cad6541ea6760be5b543c839fe053593905b5d876a6910a9038661d818e50af5f986eac442accd4
diff --git a/dev-python/python-zaqarclient/metadata.xml b/dev-python/python-zaqarclient/metadata.xml
deleted file mode 100644
index 401215879..000000000
--- a/dev-python/python-zaqarclient/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-zaqarclient</remote-id>
- <remote-id type="github">openstack/python-zaqarclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-zaqarclient/python-zaqarclient-2.0.1.ebuild b/dev-python/python-zaqarclient/python-zaqarclient-2.0.1.ebuild
deleted file mode 100644
index 1ea16456c..000000000
--- a/dev-python/python-zaqarclient/python-zaqarclient-2.0.1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="A client for the OpenStack Zaqar API"
-HOMEPAGE="https://github.com/openstack/python-zaqarclient"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- ${CDEPEND}
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-2.6.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/osc-lib-1.8.0[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/python-zunclient/Manifest b/dev-python/python-zunclient/Manifest
deleted file mode 100644
index f977a8960..000000000
--- a/dev-python/python-zunclient/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST python-zunclient-4.1.1.tar.gz 114232 BLAKE2B 973ea1191b3d0ba13fc6ad368bd2a741ea3d14ddba32158421c1c72befee5bafbb01da4c2ce12e48e50991169efaf5eeaa4cd986ad34ed058e160c0308c868f5 SHA512 7569171ad620e8e84380639d0f99985b942857925a99fbf47f98196bd372a7b0333923d1ea501c3d7d76c06f6327d38b53f1f80f199c27f4bdf073eab4c1e53b
diff --git a/dev-python/python-zunclient/metadata.xml b/dev-python/python-zunclient/metadata.xml
deleted file mode 100644
index a130b3036..000000000
--- a/dev-python/python-zunclient/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">python-zunclient</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/python-zunclient/python-zunclient-4.1.1.ebuild b/dev-python/python-zunclient/python-zunclient-4.1.1.ebuild
deleted file mode 100644
index 457582107..000000000
--- a/dev-python/python-zunclient/python-zunclient-4.1.1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="A client for the OpenStack Zun API"
-HOMEPAGE="https://github.com/openstack/python-zunclient"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-CDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0"
-DEPEND="${CDEPEND}"
-RDEPEND="
- >=dev-python/prettytable-0.7.1[${PYTHON_USEDEP}]
- <dev-python/prettytable-0.8[${PYTHON_USEDEP}]
- >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
- >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
- >=dev-python/osc-lib-1.8.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
- >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/websocket-client-0.44.0[${PYTHON_USEDEP}]
- >=dev-python/docker-py-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/pyyaml-3.13[${PYTHON_USEDEP}]"
diff --git a/dev-python/pywebview/Manifest b/dev-python/pywebview/Manifest
index 178771567..c9d1fdd84 100644
--- a/dev-python/pywebview/Manifest
+++ b/dev-python/pywebview/Manifest
@@ -1 +1,2 @@
-DIST pywebview-3.4.tar.gz 307993 BLAKE2B a838514ebbca25b8d54cbc2e9dd4a6caad01a05593cc82d6bb371398b2f70642fe1321b57f45f56121ca0cddeaa62eba05eebc0aa94f9cf0b36736bf8fe3f331 SHA512 a30c8c726e1351f3a5cc96c2774246a0a6326e8b6a2e9c25fe6e3bb7d866ff0c7cbd16da0428f6891c8316eafc70fd96c13255515b63d907ef20459a6cabd70a
+DIST pywebview-4.3.3.tar.gz 30107570 BLAKE2B 6907d928c2f0471547b75ce385636330e4ae2891c8082b24d659a75e525b84259a2db4bf4f8767c4d30c152724fc20c864456156fab8242e72753be32e908a49 SHA512 beaa481fc786ebd07d0d198167bbdfefb50e45b0c768b450c75385e6ed8f72df2cfebbcc7b5356632309300290d0d7b340bbd714e8d8aceaeca56e945857f007
+DIST pywebview-4.4.1.tar.gz 30127595 BLAKE2B 13759ee774a63ddcf44af92ed11a3b902c2c15ebd3ad252f2b541b764601a722e55002aefea8a0621702a2bd0e94a7d4f1c3d8dd86d7e6def5abe6ecec3e7f78 SHA512 b712927606cd9704a00896f68780ee6b0bcd63077510e1d5ceb8d4fbd4b44ca96fff4390be7a29c65b0b0d14dee132fbff29b8dbc1094ebca89ac893566a4731
diff --git a/dev-python/pywebview/metadata.xml b/dev-python/pywebview/metadata.xml
index cd174bd3e..9faf1cc48 100644
--- a/dev-python/pywebview/metadata.xml
+++ b/dev-python/pywebview/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>telans@posteo.de</email>
- <name>James Beddek</name>
- </maintainer>
+ <maintainer type="person">
+ <email>gentoo@tastytea.de</email>
+ <name>tastytea</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">r0x0r/pywebview</remote-id>
+ <remote-id type="pypi">pywebview</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/pywebview/pywebview-3.4.ebuild b/dev-python/pywebview/pywebview-3.4.ebuild
deleted file mode 100644
index bf5777d1b..000000000
--- a/dev-python/pywebview/pywebview-3.4.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 2020-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="A lightweight cross-platform wrapper around a webview component"
-HOMEPAGE="https://github.com/r0x0r/pywebview"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-RDEPEND="
- dev-python/pygobject[${PYTHON_USEDEP}]
- dev-python/PyQt5[${PYTHON_USEDEP}]
- dev-python/PyQtWebEngine[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/pywebview/pywebview-4.3.3.ebuild b/dev-python/pywebview/pywebview-4.3.3.ebuild
new file mode 100644
index 000000000..015ed2bd9
--- /dev/null
+++ b/dev-python/pywebview/pywebview-4.3.3.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2020-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A lightweight cross-platform wrapper around a webview component"
+HOMEPAGE="https://github.com/r0x0r/pywebview"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gtk qt5 qt6"
+REQUIRED_USE="|| ( gtk qt5 qt6 )"
+
+RDEPEND="
+ dev-python/bottle
+ dev-python/cryptography
+ dev-python/proxy_tools
+ gtk? (
+ dev-python/pygobject[cairo,${PYTHON_USEDEP}]
+ net-libs/webkit-gtk
+ )
+ qt5? (
+ dev-python/pyside2[${PYTHON_USEDEP},webengine]
+ dev-python/QtPy[${PYTHON_USEDEP},webengine]
+ )
+ qt6? (
+ dev-python/pyside6[${PYTHON_USEDEP},webengine]
+ dev-python/QtPy[${PYTHON_USEDEP},webengine]
+ )
+"
+
+distutils_enable_tests pytest
+
+RESTRICT="test" # FIXME: tests fail without message
diff --git a/dev-python/pywebview/pywebview-4.4.1.ebuild b/dev-python/pywebview/pywebview-4.4.1.ebuild
new file mode 100644
index 000000000..015ed2bd9
--- /dev/null
+++ b/dev-python/pywebview/pywebview-4.4.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2020-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A lightweight cross-platform wrapper around a webview component"
+HOMEPAGE="https://github.com/r0x0r/pywebview"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="gtk qt5 qt6"
+REQUIRED_USE="|| ( gtk qt5 qt6 )"
+
+RDEPEND="
+ dev-python/bottle
+ dev-python/cryptography
+ dev-python/proxy_tools
+ gtk? (
+ dev-python/pygobject[cairo,${PYTHON_USEDEP}]
+ net-libs/webkit-gtk
+ )
+ qt5? (
+ dev-python/pyside2[${PYTHON_USEDEP},webengine]
+ dev-python/QtPy[${PYTHON_USEDEP},webengine]
+ )
+ qt6? (
+ dev-python/pyside6[${PYTHON_USEDEP},webengine]
+ dev-python/QtPy[${PYTHON_USEDEP},webengine]
+ )
+"
+
+distutils_enable_tests pytest
+
+RESTRICT="test" # FIXME: tests fail without message
diff --git a/dev-python/queuelib/Manifest b/dev-python/queuelib/Manifest
new file mode 100644
index 000000000..4f843198e
--- /dev/null
+++ b/dev-python/queuelib/Manifest
@@ -0,0 +1 @@
+DIST queuelib-1.6.2.tar.gz 11732 BLAKE2B 6a007c29a13e21a137eb4042d8c588298a68432c05423e5ce6382bffb15692e7f85bab6b8af720a60193848256c04da897665291aff81f66f1342a49946f8abb SHA512 f474fd5cc24b72e4d6b0ddcb64ef775c06a213abb7a5b11b101671e27db46655f8debd9a3f438a1eaad0c0bb0d223d3151bde9132bdf3b6e9b19bff28b43a091
diff --git a/dev-python/queuelib/metadata.xml b/dev-python/queuelib/metadata.xml
new file mode 100644
index 000000000..f37733f16
--- /dev/null
+++ b/dev-python/queuelib/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">scrapy/queuelib</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/queuelib/queuelib-1.6.2.ebuild b/dev-python/queuelib/queuelib-1.6.2.ebuild
new file mode 100644
index 000000000..a6b81e366
--- /dev/null
+++ b/dev-python/queuelib/queuelib-1.6.2.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1
+
+DESCRIPTION="Collection of persistent and non-persistent queues for Python"
+HOMEPAGE="https://scrapy.org/"
+SRC_URI="https://github.com/scrapy/queuelib/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT=0
+KEYWORDS="~amd64"
+
+distutils_enable_tests pytest
diff --git a/dev-python/readability-lxml/Manifest b/dev-python/readability-lxml/Manifest
new file mode 100644
index 000000000..bf47cccb0
--- /dev/null
+++ b/dev-python/readability-lxml/Manifest
@@ -0,0 +1 @@
+DIST readability-lxml-0.8.1.gh.tar.gz 78871 BLAKE2B ef179d8bb727c0630e3af763a18170c1956be5cd3b8ad1cfe614b233964225e2e73b814c4ad628780eaffca21881d1ed276f45248a656b8c37ef1e6ccb121e85 SHA512 c5b296a35606f65643f72e7d9ee07d6820a7a6a36ce97350673ea6076b704f7ed72f92ded47dac56690cdf3776eb8fadbb02ea234355a9982d4127976b2e6c6e
diff --git a/dev-python/readability-lxml/metadata.xml b/dev-python/readability-lxml/metadata.xml
new file mode 100644
index 000000000..38da2b78c
--- /dev/null
+++ b/dev-python/readability-lxml/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">readability-lxml</remote-id>
+ <remote-id type="github">buriy/python-readability</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/readability-lxml/readability-lxml-0.8.1.ebuild b/dev-python/readability-lxml/readability-lxml-0.8.1.ebuild
new file mode 100644
index 000000000..b6d65c5f4
--- /dev/null
+++ b/dev-python/readability-lxml/readability-lxml-0.8.1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 2019-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+MY_PN="python-readability"
+DESCRIPTION="fast html to text parser (article readability tool)"
+HOMEPAGE="
+ https://pypi.org/project/readability-lxml/
+ https://github.com/buriy/python-readability
+"
+SRC_URI="https://github.com/buriy/${MY_PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/cssselect[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/lxml-html-clean[${PYTHON_USEDEP}]
+ || (
+ dev-python/chardet[${PYTHON_USEDEP}]
+ ( $(python_gen_cond_dep \
+ 'dev-python/cchardet[${PYTHON_USEDEP}]' python3_{8..10}) )
+ )
+"
+BDEPEND="
+ test? (
+ dev-python/chardet[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep \
+ 'dev-python/timeout-decorator[${PYTHON_USEDEP}]' python3_{8..11})
+ )
+"
+
+distutils_enable_tests unittest
+
+distutils_enable_sphinx doc/source \
+ dev-python/recommonmark \
+ dev-python/sphinx-rtd-theme
+
+python_test() {
+ [[ ${EPYTHON} == pypy3 ]] && \
+ return 0 # unsatisfied dep
+
+ distutils-r1_python_test
+}
diff --git a/dev-python/readmdict/Manifest b/dev-python/readmdict/Manifest
new file mode 100644
index 000000000..bbd1f8a75
--- /dev/null
+++ b/dev-python/readmdict/Manifest
@@ -0,0 +1 @@
+DIST readmdict-0.1.1.tar.gz 15881 BLAKE2B c320c9da11a348827379f1ebad4d67f2443cb3bda16afc5b7f8b7d7aa2a947874039b21c2c4aaaa1c9666d71b19a745ce78bcaa1df8d10455fa7a1cf5900168b SHA512 f68db59df07bb54f837b26b5fb3d2e2cd87aaac64d38bab5994398b7858f79759a4a216048259ce93e83681bf66318894cf80e68fb44fe5313a6eb44fd56f66e
diff --git a/dev-python/readmdict/metadata.xml b/dev-python/readmdict/metadata.xml
new file mode 100644
index 000000000..9b4ebec53
--- /dev/null
+++ b/dev-python/readmdict/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">readmdict</remote-id>
+ <remote-id type="github">ffreemt/readmdict</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/readmdict/readmdict-0.1.1-r1.ebuild b/dev-python/readmdict/readmdict-0.1.1-r1.ebuild
new file mode 100644
index 000000000..79ac5e01a
--- /dev/null
+++ b/dev-python/readmdict/readmdict-0.1.1-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=poetry
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="Read mdx/mdd files"
+HOMEPAGE="
+ https://github.com/ffreemt/readmdict
+ https://pypi.org/project/readmdict/
+"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+pkg_postinst() {
+ optfeature "LZO support" dev-python/python-lzo
+}
diff --git a/dev-python/recordclass/Manifest b/dev-python/recordclass/Manifest
deleted file mode 100644
index c0760ac0e..000000000
--- a/dev-python/recordclass/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST recordclass-0.14.3.tar.gz 156962 BLAKE2B 31bbe62fd059b9ba594d824d3e719ca4a03d72d3fdb18f8c94634d0d2a5350e3132bc1d3e20900a018e769c3dd377c53b12728dbd8daf23faf82d93663511f69 SHA512 9764b49e4cd24395a545d4845dab1522f409b48f6c0cd718499ad92a0b655d3ceef0361286dab91c7e7f05c5306e9db1f1a130b12f923dcf66c704ecdeeb612a
diff --git a/dev-python/recordclass/metadata.xml b/dev-python/recordclass/metadata.xml
deleted file mode 100644
index a1bd8ff7c..000000000
--- a/dev-python/recordclass/metadata.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <upstream>
- <remote-id type="bitbucket">intellimath/recordclass</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/recordclass/recordclass-0.14.3.ebuild b/dev-python/recordclass/recordclass-0.14.3.ebuild
deleted file mode 100644
index b64a92e75..000000000
--- a/dev-python/recordclass/recordclass-0.14.3.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6..8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Mutable variants of tupe and collections.namedtuple"
-HOMEPAGE="https://pypi.org/project/recordclass/"
-if [[ ${PV} == "9999" ]]
-then
- inherit git-r3
- EGIT_REPO_URI="https://bitbucket.org/intellimath/recordclass.git"
-else
- SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
- KEYWORDS="~amd64 ~x86"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-
-# lib/recordclass/mutabletuple.c:727: PyObject *mutabletuple_copy(PyMutableTupleObject *): Assertion `PyTuple_Check(ob)' failed.
-RESTRICT="test"
-
-DEPEND="dev-python/cython"
-RDEPEND="${DEPEND}"
-
-python_test() {
- [[ -n ${EPYTHON} ]] || die "EPYTHON unset, invalid call context"
- ${EPYTHON} ./test_all.py
-}
diff --git a/dev-python/rectangle-packer/Manifest b/dev-python/rectangle-packer/Manifest
new file mode 100644
index 000000000..e60e65c0c
--- /dev/null
+++ b/dev-python/rectangle-packer/Manifest
@@ -0,0 +1 @@
+DIST rectangle-packer-2.0.2.tar.gz 98022 BLAKE2B db4cdff1a98fc226de518457f8768fddc68b7ce81a3bc91fcce83243eb7c56fd63e55df21bc5785b212898a86996331aa4ad698e19ceb93967c21aaa74029602 SHA512 d73e627f91ddaa667fdf4248e89bcd0a3b93bbb42257887e5df4871d6c1b1c5b795f3de791cc94e2f68e0a4c94fabc76d9e37d6f5b392257150fa6d76ba52969
diff --git a/dev-python/rectangle-packer/metadata.xml b/dev-python/rectangle-packer/metadata.xml
new file mode 100644
index 000000000..34ee88123
--- /dev/null
+++ b/dev-python/rectangle-packer/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>navi@vlhl.dev</email>
+ <name>Anna Figueiredo Gomes</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">Penlect/rectangle-packer</remote-id>
+ </upstream>
+</pkgmetadata>
+
diff --git a/dev-python/rectangle-packer/rectangle-packer-2.0.2.ebuild b/dev-python/rectangle-packer/rectangle-packer-2.0.2.ebuild
new file mode 100644
index 000000000..86c6b766d
--- /dev/null
+++ b/dev-python/rectangle-packer/rectangle-packer-2.0.2.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_EXT=1
+inherit distutils-r1
+
+DESCRIPTION="Pack a set of rectangles into a bounding box with minimum area"
+
+HOMEPAGE="https://github.com/Penlect/rectangle-packer"
+SRC_URI="https://github.com/Penlect/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="MIT"
+SLOT="0"
+
+KEYWORDS="~amd64"
+
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/redbaron/Manifest b/dev-python/redbaron/Manifest
deleted file mode 100644
index fc44a7a90..000000000
--- a/dev-python/redbaron/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST redbaron-0.9.2.tar.gz 709401 BLAKE2B 06be75576fafd9ca69fd4f46bbeead0c9a8691c49ab233a53e91e462f87a48e0fdd4b314bb23fa91fb60ea022fe535b89371fb1f82418240117d50e214125e45 SHA512 a91670b0c48ac399ea9a000be42f1d4d4451ec39b58b2a7029a3bcdf664136dab3ff8e81284b384ddabfb77a5fa43ce4d75041d3aed5685d451ab620dfa23e9a
-DIST redbaron-0.9.tar.gz 708544 BLAKE2B e3314a29e66fe2e91ef28183f5e9f6c91117963bfffa0bcc1fb62602bc87b1c5fcf058ff545c3515e0de8077f70298aa788960e7409cbde6a0199701947786f6 SHA512 db99be12a1a0a3caab80f8b319d2966ffe5f80b15e5f838212bdb327c75c411ee273b4ff44dae76010165bd563275eb50c8c5b8d87284a493114224603e9cb25
diff --git a/dev-python/redbaron/metadata.xml b/dev-python/redbaron/metadata.xml
deleted file mode 100644
index 7904b370c..000000000
--- a/dev-python/redbaron/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>xgqt@riseup.net</email>
- <name>Maciej Barć</name>
- </maintainer>
- <upstream>
- <remote-id type="github">PyCQA/redbaron</remote-id>
- <remote-id type="pypi">redbaron</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/redbaron/redbaron-0.9.2.ebuild b/dev-python/redbaron/redbaron-0.9.2.ebuild
deleted file mode 100644
index af6cb27ad..000000000
--- a/dev-python/redbaron/redbaron-0.9.2.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="A FST for python to make writing refactoring code a realistic task"
-HOMEPAGE="
- https://redbaron.readthedocs.io/
- https://github.com/PyCQA/redbaron
-"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-3"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- >=dev-python/baron-0.7[${PYTHON_USEDEP}]
- dev-python/pygments[${PYTHON_USEDEP}]
- dev-python/pytest[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests pytest
-
-distutils_enable_sphinx docs dev-python/ipython
-
-python_prepare_all() {
- # Remove "__pycache__". Reason: unique basename
- rm -rfd "${S}"/tests/__pycache__ || die
-
- # Skip tests. Reason: calls fixture "red" directly
- rm "${S}"/tests/test_bounding_box.py || die
-
- distutils-r1_python_prepare_all
-}
diff --git a/dev-python/redbaron/redbaron-0.9.ebuild b/dev-python/redbaron/redbaron-0.9.ebuild
deleted file mode 100644
index af6cb27ad..000000000
--- a/dev-python/redbaron/redbaron-0.9.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="A FST for python to make writing refactoring code a realistic task"
-HOMEPAGE="
- https://redbaron.readthedocs.io/
- https://github.com/PyCQA/redbaron
-"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="LGPL-3"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- >=dev-python/baron-0.7[${PYTHON_USEDEP}]
- dev-python/pygments[${PYTHON_USEDEP}]
- dev-python/pytest[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests pytest
-
-distutils_enable_sphinx docs dev-python/ipython
-
-python_prepare_all() {
- # Remove "__pycache__". Reason: unique basename
- rm -rfd "${S}"/tests/__pycache__ || die
-
- # Skip tests. Reason: calls fixture "red" directly
- rm "${S}"/tests/test_bounding_box.py || die
-
- distutils-r1_python_prepare_all
-}
diff --git a/dev-python/repology-client/Manifest b/dev-python/repology-client/Manifest
new file mode 100644
index 000000000..3c76498f3
--- /dev/null
+++ b/dev-python/repology-client/Manifest
@@ -0,0 +1,2 @@
+DIST repology_client-0.0.2.tar.gz 432386 BLAKE2B 5ef3b7ed8a9f79a889ef5dd6506cb9d3b44d0f2e45419412629c3d4bb31d0166a2279a5db26e93a136da3f2d885f92feb5f1626d511cf2b2a21cc30b498fa1d5 SHA512 fa58633c03e451bc751d478464f2c3deadb5558ae603139bb658bb273e111d11da43dcdc28afc9c7d397adb2b9a158501ee008a74ba435c83a55af0c4c482687
+DIST repology_client-0.2.0.tar.gz 801523 BLAKE2B a6d9c1ed1f419d770930cfb5b5e64dee6381da516b7f1e6014f4e72394de73a02d3552f13cd0eee85e6ec827fc6d34b442d63099645988a120fd93b8ec39c06a SHA512 f60bf0c428093e4bbbf239fada260d0e4dbdeedd0f38ee3f802ad7b3dd95faef966c77ddf0ca3ce92cb130a6f35c31266dff6b1f7db25959eb725ba043389290
diff --git a/dev-python/repology-client/metadata.xml b/dev-python/repology-client/metadata.xml
new file mode 100644
index 000000000..a179c2292
--- /dev/null
+++ b/dev-python/repology-client/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <name>Anna</name>
+ <email>cyber@sysrq.in</email>
+ </maintainer>
+ <remote-id type="pypi">repology-client</remote-id>
+ <bugs-to>https://bugs.sysrq.in/enter_bug.cgi?product=Python%20libraries&amp;component=repology-client</bugs-to>
+ <changelog>https://repology-client.sysrq.in/release-notes.html</changelog>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/repology-client/repology-client-0.0.2.ebuild b/dev-python/repology-client/repology-client-0.0.2.ebuild
new file mode 100644
index 000000000..f6adbdd04
--- /dev/null
+++ b/dev-python/repology-client/repology-client-0.0.2.ebuild
@@ -0,0 +1,37 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=hatchling
+inherit distutils-r1 pypi
+
+DESCRIPTION="Asynchronous wrapper for Repology API"
+HOMEPAGE="
+ https://repology-client.sysrq.in/
+ https://pypi.org/project/repology-client/
+"
+
+LICENSE="CC-BY-SA-3.0 EUPL-1.2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+RDEPEND="
+ <dev-python/aiohttp-4[${PYTHON_USEDEP}]
+ >=dev-python/pydantic-2[${PYTHON_USEDEP}]
+ <dev-python/pydantic-3[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-recording[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-aiohttp-theme \
+ dev-python/sphinx-prompt
diff --git a/dev-python/repology-client/repology-client-0.2.0.ebuild b/dev-python/repology-client/repology-client-0.2.0.ebuild
new file mode 100644
index 000000000..789340c12
--- /dev/null
+++ b/dev-python/repology-client/repology-client-0.2.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..12} )
+DISTUTILS_USE_PEP517=hatchling
+inherit distutils-r1 pypi
+
+DESCRIPTION="Asynchronous wrapper for Repology API"
+HOMEPAGE="
+ https://repology-client.sysrq.in/
+ https://pypi.org/project/repology-client/
+"
+
+LICENSE="CC-BY-SA-3.0 EUPL-1.2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+RDEPEND="
+ >=dev-python/aiohttp-3[${PYTHON_USEDEP}]
+ <dev-python/aiohttp-4[${PYTHON_USEDEP}]
+ >=dev-python/pydantic-2[${PYTHON_USEDEP}]
+ <dev-python/pydantic-3[${PYTHON_USEDEP}]
+ >=dev-python/pydantic-core-2[${PYTHON_USEDEP}]
+ <dev-python/pydantic-core-3[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-recording[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs \
+ dev-python/alabaster \
+ dev-python/sphinx-prompt
diff --git a/dev-python/rpmautospec-core/Manifest b/dev-python/rpmautospec-core/Manifest
new file mode 100644
index 000000000..cde952efd
--- /dev/null
+++ b/dev-python/rpmautospec-core/Manifest
@@ -0,0 +1 @@
+DIST rpmautospec_core-0.1.4.tar.gz 6786 BLAKE2B d2d46d59070a03c216e50b8ab5bc63c811f02c5effbf6beb562fda3efac7ffc807138bcedf6d358a5dcc5d4394b6cf53fb5d8b618884af994e5b42471b5ecdda SHA512 ae72a27516c27d96f5e42da555a2d842aa1d8f3e9747598a558ab30847c1986369eacb4312ff8f884c5b8ae3c320d7a56d551e76627fa86d923929471d490c7f
diff --git a/dev-python/rpmautospec-core/metadata.xml b/dev-python/rpmautospec-core/metadata.xml
new file mode 100644
index 000000000..ac03bc73d
--- /dev/null
+++ b/dev-python/rpmautospec-core/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>pastalian46@gmail.com</email>
+ <name>Takuya Wakazono</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">fedora-infra/rpmautospec-core</remote-id>
+ <remote-id type="pypi">rpmautospec-core</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/rpmautospec-core/rpmautospec-core-0.1.4.ebuild b/dev-python/rpmautospec-core/rpmautospec-core-0.1.4.ebuild
new file mode 100644
index 000000000..5b5bd4cb2
--- /dev/null
+++ b/dev-python/rpmautospec-core/rpmautospec-core-0.1.4.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{11..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Core functionality used by rpmautospec"
+HOMEPAGE="
+ https://github.com/fedora-infra/rpmautospec-core/
+ https://pypi.org/project/rpmautospec-core/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests pytest
+
+python_test() {
+ # Disable pytest-cov
+ epytest -o addopts=
+}
diff --git a/dev-python/rst2ansi/metadata.xml b/dev-python/rst2ansi/metadata.xml
index 6c3e4ceeb..41bfda748 100644
--- a/dev-python/rst2ansi/metadata.xml
+++ b/dev-python/rst2ansi/metadata.xml
@@ -1,9 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>ezzieyguywuf@gmail.com</email>
<name>Wolfgang E. Sanyer</name>
</maintainer>
+ <upstream>
+ <remote-id type="pypi">rst2ansi</remote-id>
+ <remote-id type="github">Snaipe/python-rst2ansi</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/rst2ansi/rst2ansi-0.1.5-r2.ebuild b/dev-python/rst2ansi/rst2ansi-0.1.5-r2.ebuild
new file mode 100644
index 000000000..bce125799
--- /dev/null
+++ b/dev-python/rst2ansi/rst2ansi-0.1.5-r2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="Render reStructuredText documents to the terminal"
+HOMEPAGE="
+ https://pypi.org/project/rst2ansi/
+ https://github.com/Snaipe/python-rst2ansi
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
diff --git a/dev-python/rst2ansi/rst2ansi-0.1.5.ebuild b/dev-python/rst2ansi/rst2ansi-0.1.5.ebuild
deleted file mode 100644
index 11675479c..000000000
--- a/dev-python/rst2ansi/rst2ansi-0.1.5.ebuild
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-inherit distutils-r1
-
-DESCRIPTION="Render reStructuredText documents to the terminal"
-HOMEPAGE="https://github.com/Snaipe/python-rst2ansi"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
diff --git a/dev-python/rstcheck/Manifest b/dev-python/rstcheck/Manifest
index fe9ae3bf9..71ade1e8f 100644
--- a/dev-python/rstcheck/Manifest
+++ b/dev-python/rstcheck/Manifest
@@ -1 +1,2 @@
-DIST rstcheck-3.3.1.tar.gz 13825 BLAKE2B 94c1e8226b372b25907fb5e713716f46d972788f5d996a6c351fdf92728d1274e625564ec6417e0e3be7c7ec8d4ef07a193e8b80ca38085d28c1e9ee13e0ca36 SHA512 d390565c59466e1047fb41491eb5a2261fec91848806e04137bcc6053759fc87c8e4c72721d39b35c959b0baddaf90f2c8459213cec76b82be9b78bdd44076c5
+DIST rstcheck-6.2.0.tar.gz 23378 BLAKE2B e1239c884ffdb0c676d3cbe526b33d8a84685b9c914c88b28da7df58985681be8114b507d49c16c970b291475997ddc626445df26647381c23260363a1b0ec82 SHA512 8b92d0e43cf3aea8881d660dae485ffb8dcce893e43cab589f41cc2cb6918a5b685f78428a18526df97c2b0eadc8be85836be4a82fda4277f3d93b4d1bd3648e
+DIST rstcheck-6.2.1.tar.gz 23609 BLAKE2B 1c652e90e80b208d25b1644bab3eb8523a97e7018c33bd89a3beea5e4537df158a7cfd8a72897726170bc42949aa83140a061e1a217dd3c806c1a4550657e558 SHA512 6a3d9cfef0ed1ac73e0b2515053426db823bfe8d12691fee432084889541633472cf94bc2449f0e0583e83d5d28cd47520ea6bcdbb520b7831e73702b7a89e8b
diff --git a/dev-python/rstcheck/metadata.xml b/dev-python/rstcheck/metadata.xml
index d19e6b08b..a7314e551 100644
--- a/dev-python/rstcheck/metadata.xml
+++ b/dev-python/rstcheck/metadata.xml
@@ -1,13 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>samuelbernardo.mail@gmail.com</email>
- <name>Samuel Bernardo</name>
- </maintainer>
- <upstream>
- <remote-id type="pypi">rstcheck</remote-id>
- <remote-id type="github">myint/rstcheck</remote-id>
- <bugs-to>https://github.com/myint/rstcheck/issues</bugs-to>
- </upstream>
+ <maintainer type="person">
+ <email>samuelbernardo.mail@gmail.com</email>
+ <name>Samuel Bernardo</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">rstcheck</remote-id>
+ <remote-id type="github">rstcheck/rstcheck</remote-id>
+ <bugs-to>https://github.com/rstcheck/rstcheck/issues</bugs-to>
+ </upstream>
</pkgmetadata>
+<!-- vim: set ts=2 sw=2 sts=2 et sta: -->
diff --git a/dev-python/rstcheck/rstcheck-3.3.1.ebuild b/dev-python/rstcheck/rstcheck-6.2.0.ebuild
index 82b2e9a49..e05ea0b86 100644
--- a/dev-python/rstcheck/rstcheck-3.3.1.ebuild
+++ b/dev-python/rstcheck/rstcheck-6.2.0.ebuild
@@ -1,33 +1,29 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( pypy3 python3_{7,8} )
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="Checks syntax of reStructuredText and code blocks nested within it"
-HOMEPAGE="https://github.com/myint/rstcheck"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+HOMEPAGE="https://github.com/rstcheck/rstcheck"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
-RDEPEND="
- dev-python/docutils[${PYTHON_USEDEP}]
-"
+RDEPEND="dev-python/docutils[${PYTHON_USEDEP}]"
BDEPEND="
- >=dev-python/setuptools_scm-1.15.0[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-scm-1.15.0[${PYTHON_USEDEP}]
test? (
${RDEPEND}
- dev-python/path-py[${PYTHON_USEDEP}]
+ dev-python/path[${PYTHON_USEDEP}]
)
"
-S="${WORKDIR}/${P}"
-
distutils_enable_tests pytest
python_test() {
diff --git a/dev-python/rstcheck/rstcheck-6.2.1.ebuild b/dev-python/rstcheck/rstcheck-6.2.1.ebuild
new file mode 100644
index 000000000..861b4f766
--- /dev/null
+++ b/dev-python/rstcheck/rstcheck-6.2.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Checks syntax of reStructuredText and code blocks nested within it"
+HOMEPAGE="https://github.com/rstcheck/rstcheck"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/docutils[${PYTHON_USEDEP}]"
+BDEPEND="
+ >=dev-python/setuptools-scm-7.1.0[${PYTHON_USEDEP}]
+"
+
+# broken without dev-python/typer and dev-python/restcheck-core
+RESTRICT="test"
diff --git a/dev-python/rstr/Manifest b/dev-python/rstr/Manifest
deleted file mode 100644
index b5b287942..000000000
--- a/dev-python/rstr/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST rstr-2.2.6.tar.gz 11197 BLAKE2B 115b674b6d474716623846838b77d08455b60c452150f149f1577ec18a730751af1bc9b4cf3cd445b676ebac1c9bf2262da18f15583d06b75f0746adc363be1b SHA512 ddd4eb4ca25f2bd991d14af6ae800a911a7077dfb14ad1968bf9e62363505e54b4f98b36eb53b7077435f9703116cc2338490a3e0d6d4d1d6fe9857a4d560976
diff --git a/dev-python/rstr/metadata.xml b/dev-python/rstr/metadata.xml
deleted file mode 100644
index e141e5d73..000000000
--- a/dev-python/rstr/metadata.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
- rstr is a helper module for easily generating random strings
- of various types. It could be useful for fuzz testing,
- generating dummy data, or other applications.
- </longdescription>
- <upstream>
- <remote-id type="pypi">rstr</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/rstr/rstr-2.2.6.ebuild b/dev-python/rstr/rstr-2.2.6.ebuild
deleted file mode 100644
index af5142c3c..000000000
--- a/dev-python/rstr/rstr-2.2.6.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="Easily generate random strings of various types"
-HOMEPAGE="https://pypi.org/project/rstr"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${PN}-${PV}.tar.gz"
-
-LICENSE="BSD"
-SLOT=0
-KEYWORDS="~amd64"
-
-distutils_enable_tests unittest
-
-python_test() {
- "${PYTHON}" -m unittest discover -v rstr/tests || die "tests failed with ${EPYTHON}"
-}
-
-python_install_all() {
- distutils-r1_python_install_all
- find "${ED}" -type d -name "tests" -exec rm -rv {} + || die "tests removing failed"
-}
diff --git a/dev-python/ryu/Manifest b/dev-python/ryu/Manifest
deleted file mode 100644
index ae6583664..000000000
--- a/dev-python/ryu/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ryu-4.34.tar.gz 1100203 BLAKE2B fd8f133ffe3b13781664b5da871419e76b6b869bcd35991e7231c61af91c7c76201679bf5a449660d2cc5841d77303d1b6e65271f27977a6ba8954e41c9b8ea1 SHA512 6841bb9325366c2558b11854a5f4e922cdf8a16723c1c48a7cc6fb4d0848e00686086eaecb9cef1e53686553d2ed689fd1d8da84882b60eefb95cb1ad21eead9
diff --git a/dev-python/ryu/metadata.xml b/dev-python/ryu/metadata.xml
deleted file mode 100644
index cbfb56bc4..000000000
--- a/dev-python/ryu/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">ryu</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/ryu/ryu-4.34.ebuild b/dev-python/ryu/ryu-4.34.ebuild
deleted file mode 100644
index c3276fa86..000000000
--- a/dev-python/ryu/ryu-4.34.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7..8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Component-based Software-defined Networking Framework"
-HOMEPAGE="https://ryu-sdn.org/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-DEPEND="dev-python/pbr[${PYTHON_USEDEP}]"
-
-python_install_all() {
- distutils-r1_python_install_all
- mv "${D}"/usr/etc "${D}"/etc
-}
diff --git a/dev-python/sanic-routing/Manifest b/dev-python/sanic-routing/Manifest
deleted file mode 100644
index 7d2e7ed5e..000000000
--- a/dev-python/sanic-routing/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST sanic-routing-0.7.0.tar.gz 23633 BLAKE2B df5a3d122b00d958e1bd262b56e7000aa404a1aa28eaf599d50e826bdb7d9cb94c85843047b3ee9924686ad21d06082956f921e78b6b0e5bf9f20ae0d925b165 SHA512 de7e31c5f464becd3bb36cf6e9b00c2419e54771a406cc02eac6b22dbdd4c60380db52c76e1cddf28dd8387bca185e1f8156b963dbf995a9329ccd9ad25a9627
-DIST sanic-routing-0.7.1.tar.gz 24882 BLAKE2B 4b603e280210208b000cd6c0feec74bfed759cc2e4833d6408720f8cd6799ae09bf50faf8f4c738e68625c8d7bc80636f0111cca759cfaa9b018ca61b1b6208b SHA512 8871ea7efae7957f26001f9645397a74527a418dbd562e9bef831fdba4ed1998d7ffda8b4bdb6c3c26841ecef97aaad6134de64ae517c6ce7fab8ece8b78368b
diff --git a/dev-python/sanic-routing/metadata.xml b/dev-python/sanic-routing/metadata.xml
deleted file mode 100644
index ed7fc245b..000000000
--- a/dev-python/sanic-routing/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <upstream>
- <remote-id type="github">sanic-org/sanic-routing</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/sanic-routing/sanic-routing-0.7.0.ebuild b/dev-python/sanic-routing/sanic-routing-0.7.0.ebuild
deleted file mode 100644
index 8bb2c6ee8..000000000
--- a/dev-python/sanic-routing/sanic-routing-0.7.0.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="8"
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Internal handler routing for Sanic"
-HOMEPAGE="
- https://pypi.python.org/pypi/sanic-routing
- https://github.com/sanic-org/sanic-routing
-"
-SRC_URI="https://github.com/sanic-org/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND=""
-DEPEND="
- ${RDEPEND}
- test? (
- dev-python/pytest-asyncio[${PYTHON_USEDEP}]
- dev-python/sanic[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/sanic-routing/sanic-routing-0.7.1.ebuild b/dev-python/sanic-routing/sanic-routing-0.7.1.ebuild
deleted file mode 100644
index 370f04b2e..000000000
--- a/dev-python/sanic-routing/sanic-routing-0.7.1.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="8"
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Internal handler routing for Sanic"
-HOMEPAGE="
- https://pypi.python.org/pypi/sanic-routing
- https://github.com/sanic-org/sanic-routing
-"
-SRC_URI="https://github.com/sanic-org/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-DEPEND="
- test? (
- dev-python/pytest-asyncio[${PYTHON_USEDEP}]
- dev-python/sanic[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/sanic-testing/Manifest b/dev-python/sanic-testing/Manifest
deleted file mode 100644
index ab6873db1..000000000
--- a/dev-python/sanic-testing/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST sanic-testing-0.4.0.tar.gz 7859 BLAKE2B 6f2473ed5f0ed4465816a78ebec45ec1624ce660508dde988fb1642d70ab2fd2992052efaae561fc9c845654f8862e43da2685884df19937836f6a82b3aeaac4 SHA512 25ac5421428d930dcb02fe88c046f75d568650cc262ae94bbea55303c58c1668a940176dcfcb8b2c9cf44f174c1dc47549d12c516db843cb86fc925302595057
-DIST sanic-testing-0.6.0.tar.gz 7995 BLAKE2B f15d480126a1dd4dd48d58a643cd0c6384eab03ec3555920ca39ee9ddd288f949149e0371fa9470dd5f69b2c8e1310ab8d97323f258af6ee27b8c89e148217f8 SHA512 aa5e298bd800b99d542c8801591a03323bdc624bda242f9157421a5de20da374a1abbab0f9b6569ed0e4c8fba8a07710ecba6b5ca4f1315b76625163218c2fd3
diff --git a/dev-python/sanic-testing/metadata.xml b/dev-python/sanic-testing/metadata.xml
deleted file mode 100644
index 60a5af4ab..000000000
--- a/dev-python/sanic-testing/metadata.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <longdescription lang="en">
-This package is meant to be the core testing utility and clients for testing Sanic applications. It is mainly derived from sanic.testing which has (or will be) removed from the main Sanic repository in the future.
- </longdescription>
- <upstream>
- <remote-id type="github">sanic-org/sanic</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/sanic-testing/sanic-testing-0.4.0.ebuild b/dev-python/sanic-testing/sanic-testing-0.4.0.ebuild
deleted file mode 100644
index 68bf1194d..000000000
--- a/dev-python/sanic-testing/sanic-testing-0.4.0.ebuild
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Test clients for Sanic"
-HOMEPAGE="
- https://pypi.python.org/pypi/sanic-testing
- https://github.com/sanic-org/sanic-testing
-"
-SRC_URI="https://github.com/sanic-org/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- >=dev-python/httpx-0.18[${PYTHON_USEDEP}]
- >=dev-python/websockets-8.1[${PYTHON_USEDEP}]
-"
-DEPEND="
- ${RDEPEND}
- test? (
- dev-python/pytest-asyncio[${PYTHON_USEDEP}]
- >=dev-python/sanic-21.3[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/sanic-testing/sanic-testing-0.6.0.ebuild b/dev-python/sanic-testing/sanic-testing-0.6.0.ebuild
deleted file mode 100644
index 137ce4fbe..000000000
--- a/dev-python/sanic-testing/sanic-testing-0.6.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="8"
-
-PYTHON_COMPAT=( python3_{8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Test clients for Sanic"
-HOMEPAGE="
- https://pypi.python.org/pypi/sanic-testing
- https://github.com/sanic-org/sanic-testing
-"
-SRC_URI="https://github.com/sanic-org/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- >=dev-python/httpx-0.18[${PYTHON_USEDEP}]
- >=dev-python/websockets-9[${PYTHON_USEDEP}]
-"
-DEPEND="
- ${RDEPEND}
- test? (
- dev-python/pytest-asyncio[${PYTHON_USEDEP}]
- >=dev-python/sanic-21.3[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/sanic/Manifest b/dev-python/sanic/Manifest
deleted file mode 100644
index 0a0fb36f3..000000000
--- a/dev-python/sanic/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST sanic-21.3.4.tar.gz 234229 BLAKE2B a24941777099d5a09dd020a7f0a9fe39ae0ab89436fe27e2e4bbb418b684583002b9249e46438787d07bae6114ee1a0fd27e24e4e29983e8499f766f238e07d9 SHA512 15596f37b5389073d6a2b5e2d2bf5871d9a31ba29bf4e2eac9fb91df29e76035b02f7d892bb8edd5ffde75f05acdcebdb2c8f5ddf7224f40c5391c8f058f5c97
-DIST sanic-21.6.0.tar.gz 243159 BLAKE2B 2b0dfe59493a709be0059c06400723f7405ae032853bca25356e4c4296ff1bc512d9f885c77f48161de06917676bcef248952a7dd2751857e2f36a96389b2cf1 SHA512 fa6214e24d85cb2c5b059b7df9c818d58232f13de6e188c222f1ae441ece78167437464714097d1cab0432b2ca68b9f3ffd62f14c98dabfa8127cea29685b85b
diff --git a/dev-python/sanic/metadata.xml b/dev-python/sanic/metadata.xml
deleted file mode 100644
index 49a49a08c..000000000
--- a/dev-python/sanic/metadata.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <!-- maintainer-needed -->
- <longdescription lang="en">
-Sanic is a Python 3.6+ web server and web framework that’s written to go fast. It allows the usage of the async/await syntax added in Python 3.5, which makes your code non-blocking and speedy.
-
-The goal of the project is to provide a simple way to get up and running a highly performant HTTP server that is easy to build, to expand, and ultimately to scale. </longdescription>
- <upstream>
- <remote-id type="github">huge-success/sanic</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/sanic/sanic-21.3.4.ebuild b/dev-python/sanic/sanic-21.3.4.ebuild
deleted file mode 100644
index 31726c0b6..000000000
--- a/dev-python/sanic/sanic-21.3.4.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Async Python 3.6+ web server/framework | Build fast. Run fast."
-HOMEPAGE="
- https://pypi.python.org/pypi/sanic
- https://github.com/huge-success/sanic
-"
-SRC_URI="https://github.com/huge-success/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- >=dev-python/aiofiles-0.6.0[${PYTHON_USEDEP}]
- >=dev-python/httptools-0.0.10[${PYTHON_USEDEP}]
- >=dev-python/multidict-5.0[${PYTHON_USEDEP}]
- <dev-python/multidict-6.0[${PYTHON_USEDEP}]
- >=dev-python/sanic-routing-0.0.10[${PYTHON_USEDEP}]
- dev-python/ujson[${PYTHON_USEDEP}]
- dev-python/uvloop[${PYTHON_USEDEP}]
- >=dev-python/websockets-8.1[${PYTHON_USEDEP}]
-"
-DEPEND="
- ${RDEPEND}
- test? (
- dev-python/beautifulsoup4[${PYTHON_USEDEP}]
- >=dev-python/httpcore-0.3.0[${PYTHON_USEDEP}]
- >=dev-python/pytest-5.2.1[${PYTHON_USEDEP}]
- dev-python/pytest-benchmark[${PYTHON_USEDEP}]
- dev-python/pytest-sanic[${PYTHON_USEDEP}]
- dev-python/sanic-testing[${PYTHON_USEDEP}]
- dev-python/uvicorn[${PYTHON_USEDEP}]
- www-servers/gunicorn[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs \
- dev-python/docutils \
- dev-python/pygments \
- dev-python/sphinx_rtd_theme \
- dev-python/recommonmark \
- www-servers/gunicorn
-
-python_test() {
- pytest -vv --deselect tests/test_unix_socket.py::test_zero_downtime tests/test_keep_alive_timeout.py::test_keep_alive_client_timeout || die
-}
diff --git a/dev-python/sanic/sanic-21.6.0.ebuild b/dev-python/sanic/sanic-21.6.0.ebuild
deleted file mode 100644
index f17e14108..000000000
--- a/dev-python/sanic/sanic-21.6.0.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="8"
-
-DISTUTILS_USE_SETUPTOOLS=rdepend
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Async Python 3.6+ web server/framework | Build fast. Run fast."
-HOMEPAGE="
- https://pypi.python.org/pypi/sanic
- https://github.com/huge-success/sanic
-"
-SRC_URI="https://github.com/huge-success/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- >=dev-python/aiofiles-0.6.0[${PYTHON_USEDEP}]
- >=dev-python/httptools-0.0.10[${PYTHON_USEDEP}]
- >=dev-python/multidict-5.0[${PYTHON_USEDEP}]
- >=dev-python/sanic-routing-0.0.10[${PYTHON_USEDEP}]
- dev-python/ujson[${PYTHON_USEDEP}]
- dev-python/uvloop[${PYTHON_USEDEP}]
- >=dev-python/websockets-8.1[${PYTHON_USEDEP}]
-"
-DEPEND="
- ${RDEPEND}
- test? (
- dev-python/beautifulsoup4[${PYTHON_USEDEP}]
- >=dev-python/httpcore-0.3.0[${PYTHON_USEDEP}]
- >=dev-python/pytest-5.2.1[${PYTHON_USEDEP}]
- dev-python/pytest-benchmark[${PYTHON_USEDEP}]
- dev-python/pytest-sanic[${PYTHON_USEDEP}]
- dev-python/sanic-testing[${PYTHON_USEDEP}]
- dev-python/uvicorn[${PYTHON_USEDEP}]
- www-servers/gunicorn[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs \
- dev-python/docutils \
- dev-python/pygments \
- dev-python/sphinx_rtd_theme \
- dev-python/recommonmark \
- www-servers/gunicorn
-
-python_test() {
- pytest -vv --deselect tests/test_keep_alive_timeout.py::test_keep_alive_client_timeout || die
-}
diff --git a/dev-python/scenedetect/Manifest b/dev-python/scenedetect/Manifest
deleted file mode 100644
index 54358e370..000000000
--- a/dev-python/scenedetect/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST scenedetect-0.5.5.tar.gz 233089 BLAKE2B ae6b54c7e601cd107fdcb28a6fa5ca29c0c613b54a677c0ac1ae43d984a2beb5e8d8e978cea2cc66fc2b320ab4ecd14b8c8b652bd4552340a1b1ebee031fde0f SHA512 858528fa8852ca528f0f6312b67cbbab5037e81b8834ebb7337c87fff8e4066f6b1ae7487fe8cf7d78894a2fab4519b44ff8cd1c9f2ec6bd24b4be8f32388267
diff --git a/dev-python/scenedetect/metadata.xml b/dev-python/scenedetect/metadata.xml
deleted file mode 100644
index cd174bd3e..000000000
--- a/dev-python/scenedetect/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>telans@posteo.de</email>
- <name>James Beddek</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/scenedetect/scenedetect-0.5.5.ebuild b/dev-python/scenedetect/scenedetect-0.5.5.ebuild
deleted file mode 100644
index e6bb7fda0..000000000
--- a/dev-python/scenedetect/scenedetect-0.5.5.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Video Scene Cut Detection and Analysis Tool"
-HOMEPAGE="https://github.com/Breakthrough/PySceneDetect"
-SRC_URI="https://github.com/Breakthrough/PySceneDetect/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-RESTRICT="test" # Requires video file not provided
-
-RDEPEND="
- dev-python/click[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/tqdm[${PYTHON_USEDEP}]
- media-libs/opencv[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-
-S="${WORKDIR}"/PySceneDetect-${PV}
-
-distutils_enable_tests pytest
-
-src_prepare() {
- distutils-r1_src_prepare
- sed -i -e '/setup_requires/d' -e '/extras_require/d' setup.py || die
-}
diff --git a/dev-python/schedule/Manifest b/dev-python/schedule/Manifest
deleted file mode 100644
index e7435225e..000000000
--- a/dev-python/schedule/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST schedule-1.1.0.tar.gz 31873 BLAKE2B 6e33e862f94c72f32ae3bba566ad4a64428cc90f80ed6ff8d577a29717b3cc5f3c91195742cedfedbcc4090d955f343097f53ed69e9922775969c854780798ce SHA512 3fe06e334ed532f013aeb806b7beacd9418c4dbbcb80d4b27090c08178f1874694ecfced24eeddc8450e99a80831d68b34a4a3b2638a870f30f53f570650795c
diff --git a/dev-python/schedule/metadata.xml b/dev-python/schedule/metadata.xml
deleted file mode 100644
index 402305f71..000000000
--- a/dev-python/schedule/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-An in-process scheduler for periodic jobs that uses the builder pattern for configuration. Schedule lets you run Python functions (or any other callable) periodically at pre-determined intervals using a simple, human-friendly syntax.
- </longdescription>
- <upstream>
- <remote-id type="github">dbader/schedule</remote-id>
- <remote-id type="pypi">schedule</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/schedule/schedule-1.1.0.ebuild b/dev-python/schedule/schedule-1.1.0.ebuild
deleted file mode 100644
index 8ec3bbef4..000000000
--- a/dev-python/schedule/schedule-1.1.0.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-#pypy3 fails tests
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python job scheduling for humans"
-HOMEPAGE="https://github.com/dbader/schedule"
-
-SRC_URI="https://github.com/dbader/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-LICENSE="MIT"
-SLOT="0"
-
-RDEPEND=""
-DEPEND="
- test? (
- dev-python/mock[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs dev-python/pygments
-
-python_test() {
- epytest --deselect test_schedule.py::SchedulerTests::test_until_time
-}
diff --git a/dev-python/scramp/Manifest b/dev-python/scramp/Manifest
new file mode 100644
index 000000000..deb396948
--- /dev/null
+++ b/dev-python/scramp/Manifest
@@ -0,0 +1 @@
+DIST scramp-1.4.4.tar.gz 21059 BLAKE2B 3577c4447027193bc7a97fc889d7f27271fcdf4491a747a8f1e2b0c560ea66e8228187f2132b51646d9fc3f3d9f48c0b761b1e16c61997eecedb858437430d0e SHA512 60832835ccc3551ef99ee47fc069d4443b4319fa4acb0b3d08eeef434b9358988d9d660ce4fba2ec651d1ea074b3f416bcbeddfa33ab3c91bf26ab325607b874
diff --git a/dev-python/scramp/metadata.xml b/dev-python/scramp/metadata.xml
new file mode 100644
index 000000000..5389f52af
--- /dev/null
+++ b/dev-python/scramp/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <bugs-to>https://github.com/tlocke/scramp/issues</bugs-to>
+ <remote-id type="pypi">scramp</remote-id>
+ <remote-id type="github">tlocke/scramp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/scramp/scramp-1.4.4.ebuild b/dev-python/scramp/scramp-1.4.4.ebuild
new file mode 100644
index 000000000..23fcd02c1
--- /dev/null
+++ b/dev-python/scramp/scramp-1.4.4.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="A pure-Python implementation of the SCRAM authentication protocol."
+HOMEPAGE="
+ https://pypi.org/project/scramp/
+ https://github.com/tlocke/scramp
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/asn1crypto-1.4.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/passlib[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/scrapy/Manifest b/dev-python/scrapy/Manifest
new file mode 100644
index 000000000..a5485bafa
--- /dev/null
+++ b/dev-python/scrapy/Manifest
@@ -0,0 +1 @@
+DIST scrapy-2.11.0.tar.gz 1373184 BLAKE2B 7fc758a729d9e9f88c89e30c503ff8bf4c2e111bc00cbd003d5f8785dc818e5ef69ae3774013c4fe27db623c1246a57d57db097cf5220b257a9632bdd29b7023 SHA512 08da9684f4312e4149929f3785cc516207070fdd0eb99d8b7ed3276095378cc71d18534d0535fd1107af442aed42d6c91792ad7749d631b5f54522c3912ce073
diff --git a/dev-python/scrapy/files/scrapy-2.11.0-lift-twisted-restriction.patch b/dev-python/scrapy/files/scrapy-2.11.0-lift-twisted-restriction.patch
new file mode 100644
index 000000000..c3ef23287
--- /dev/null
+++ b/dev-python/scrapy/files/scrapy-2.11.0-lift-twisted-restriction.patch
@@ -0,0 +1,99 @@
+Backport commits 720f351a3eea5e5bfa83a6eaf50210cd1fa43992^..0630e4aaa10c3fb8c79c2542a229f5c0632cddde.
+At the time of writing, ::gentoo no longer has <dev-python/twisted-23.8.0.
+These commits refactor the signal handling logic to support newer versions of Twisted.
+
+Author: Lucio Sauer <watermanpaint@posteo.net>
+--- a/scrapy/crawler.py
++++ b/scrapy/crawler.py
+@@ -404,8 +404,8 @@ class CrawlerProcess(CrawlerRunner):
+ :param bool stop_after_crawl: stop or not the reactor when all
+ crawlers have finished
+
+- :param bool install_signal_handlers: whether to install the shutdown
+- handlers (default: True)
++ :param bool install_signal_handlers: whether to install the OS signal
++ handlers from Twisted and Scrapy (default: True)
+ """
+ from twisted.internet import reactor
+
+@@ -416,15 +416,17 @@ class CrawlerProcess(CrawlerRunner):
+ return
+ d.addBoth(self._stop_reactor)
+
+- if install_signal_handlers:
+- install_shutdown_handlers(self._signal_shutdown)
+ resolver_class = load_object(self.settings["DNS_RESOLVER"])
+ resolver = create_instance(resolver_class, self.settings, self, reactor=reactor)
+ resolver.install_on_reactor()
+ tp = reactor.getThreadPool()
+ tp.adjustPoolsize(maxthreads=self.settings.getint("REACTOR_THREADPOOL_MAXSIZE"))
+ reactor.addSystemEventTrigger("before", "shutdown", self.stop)
+- reactor.run(installSignalHandlers=False) # blocking call
++ if install_signal_handlers:
++ reactor.addSystemEventTrigger(
++ "after", "startup", install_shutdown_handlers, self._signal_shutdown
++ )
++ reactor.run(installSignalHandlers=install_signal_handlers) # blocking call
+
+ def _graceful_stop_reactor(self) -> Deferred:
+ d = self.stop()
+--- a/scrapy/utils/ossignal.py
++++ b/scrapy/utils/ossignal.py
+@@ -19,13 +19,10 @@ def install_shutdown_handlers(
+ function: SignalHandlerT, override_sigint: bool = True
+ ) -> None:
+ """Install the given function as a signal handler for all common shutdown
+- signals (such as SIGINT, SIGTERM, etc). If override_sigint is ``False`` the
+- SIGINT handler won't be install if there is already a handler in place
+- (e.g. Pdb)
++ signals (such as SIGINT, SIGTERM, etc). If ``override_sigint`` is ``False`` the
++ SIGINT handler won't be installed if there is already a handler in place
++ (e.g. Pdb)
+ """
+- from twisted.internet import reactor
+-
+- reactor._handleSignals()
+ signal.signal(signal.SIGTERM, function)
+ if signal.getsignal(signal.SIGINT) == signal.default_int_handler or override_sigint:
+ signal.signal(signal.SIGINT, function)
+--- a/scrapy/utils/testproc.py
++++ b/scrapy/utils/testproc.py
+@@ -2,7 +2,7 @@ from __future__ import annotations
+
+ import os
+ import sys
+-from typing import Iterable, Optional, Tuple, cast
++from typing import Iterable, List, Optional, Tuple, cast
+
+ from twisted.internet.defer import Deferred
+ from twisted.internet.error import ProcessTerminated
+@@ -26,14 +26,15 @@ class ProcessTest:
+ env = os.environ.copy()
+ if settings is not None:
+ env["SCRAPY_SETTINGS_MODULE"] = settings
++ assert self.command
+ cmd = self.prefix + [self.command] + list(args)
+ pp = TestProcessProtocol()
+- pp.deferred.addBoth(self._process_finished, cmd, check_code)
++ pp.deferred.addCallback(self._process_finished, cmd, check_code)
+ reactor.spawnProcess(pp, cmd[0], cmd, env=env, path=self.cwd)
+ return pp.deferred
+
+ def _process_finished(
+- self, pp: TestProcessProtocol, cmd: str, check_code: bool
++ self, pp: TestProcessProtocol, cmd: List[str], check_code: bool
+ ) -> Tuple[int, bytes, bytes]:
+ if pp.exitcode and check_code:
+ msg = f"process {cmd} exit with code {pp.exitcode}"
+--- a/setup.py
++++ b/setup.py
+@@ -6,8 +6,7 @@ version = (Path(__file__).parent / "scrapy/VERSION").read_text("ascii").strip()
+
+
+ install_requires = [
+- # 23.8.0 incompatibility: https://github.com/scrapy/scrapy/issues/6024
+- "Twisted>=18.9.0,<23.8.0",
++ "Twisted>=18.9.0",
+ "cryptography>=36.0.0",
+ "cssselect>=0.9.1",
+ "itemloaders>=1.0.1",
diff --git a/dev-python/scrapy/metadata.xml b/dev-python/scrapy/metadata.xml
new file mode 100644
index 000000000..23af41d36
--- /dev/null
+++ b/dev-python/scrapy/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">scrapy/scrapy</remote-id>
+ <doc>https://docs.scrapy.org/</doc>
+ <bugs-to>https://github.com/scrapy/scrapy/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/scrapy/scrapy-2.11.0-r1.ebuild b/dev-python/scrapy/scrapy-2.11.0-r1.ebuild
new file mode 100644
index 000000000..c019441a6
--- /dev/null
+++ b/dev-python/scrapy/scrapy-2.11.0-r1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="A high-level Web Crawling and Web Scraping framework"
+HOMEPAGE="https://scrapy.org/"
+SRC_URI="https://github.com/scrapy/scrapy/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT=0
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# The 'PyDispatcher>=2.0.5' distribution was not found and is required by Scrapy
+# https://bugs.gentoo.org/684734
+RDEPEND="dev-python/cssselect[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ <dev-python/priority-2.0.0[${PYTHON_USEDEP}]
+ dev-python/h2[${PYTHON_USEDEP}]
+ dev-python/itemadapter[${PYTHON_USEDEP}]
+ dev-python/itemloaders[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/parsel[${PYTHON_USEDEP}]
+ dev-python/protego[${PYTHON_USEDEP}]
+ >=dev-python/pydispatcher-2.0.5[${PYTHON_USEDEP}]
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ dev-python/queuelib[${PYTHON_USEDEP}]
+ dev-python/service-identity[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/tldextract[${PYTHON_USEDEP}]
+ >=dev-python/twisted-18.9.0[${PYTHON_USEDEP}]
+ dev-python/w3lib[${PYTHON_USEDEP}]
+ dev-python/zope-interface[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ ${RDEPEND}
+ dev-python/testfixtures[${PYTHON_USEDEP}]
+ dev-python/uvloop[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES="${FILESDIR}"/${P}-lift-twisted-restriction.patch
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # these require (local) network access
+ tests/test_command_check.py
+ tests/test_feedexport.py
+ tests/test_pipeline_files.py::TestFTPFileStore::test_persist
+ # Flaky test: https://github.com/scrapy/scrapy/issues/6193
+ tests/test_crawl.py::CrawlTestCase::test_start_requests_laziness
+ )
+EPYTEST_IGNORE=( docs )
diff --git a/dev-python/screeninfo/Manifest b/dev-python/screeninfo/Manifest
new file mode 100644
index 000000000..44a9fd72b
--- /dev/null
+++ b/dev-python/screeninfo/Manifest
@@ -0,0 +1 @@
+DIST screeninfo-0.8.1.gh.tar.gz 26498 BLAKE2B 4e67c6dab4638871247771329f7daf788015df591e03d4f02fb3950a9551c00c3cdff7c2e4d19a33930ec535a9bbaa1f67c5326830292e4ef93f3b9aaa788d18 SHA512 cbcffbd708bf3d2788efe67d9df2bcb99fdf09f91b6e9f40c024e4b1e372417bf6d3c61188a198c4b760302fe1e3ab16e2747cf7a7e14ce7ba82bda77334995c
diff --git a/dev-python/screeninfo/metadata.xml b/dev-python/screeninfo/metadata.xml
new file mode 100644
index 000000000..ea553b23a
--- /dev/null
+++ b/dev-python/screeninfo/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">screeninfo</remote-id>
+ <remote-id type="github">rr-/screeninfo</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/screeninfo/screeninfo-0.8.1.ebuild b/dev-python/screeninfo/screeninfo-0.8.1.ebuild
new file mode 100644
index 000000000..5d270350a
--- /dev/null
+++ b/dev-python/screeninfo/screeninfo-0.8.1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Fetch location and size of physical screens."
+HOMEPAGE="https://github.com/rr-/screeninfo https://pypi.org/project/screeninfo"
+SRC_URI="https://github.com/rr-/screeninfo/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+distutils_enable_tests pytest
diff --git a/dev-python/sdnotify/Manifest b/dev-python/sdnotify/Manifest
new file mode 100644
index 000000000..73384e074
--- /dev/null
+++ b/dev-python/sdnotify/Manifest
@@ -0,0 +1 @@
+DIST sdnotify-0.3.2.tar.gz 2459 BLAKE2B 1d1846e37889c36cfa7242d14e4040ebb9b73d3e53f5a3423447ae1a4912373e4249faa7803ac212e3c7d64371d1fe9e1be2d56f8604791cead2cbe22e422053 SHA512 f7e7d38c8d7f56ebad8b0343361a0bf6177208b94916430343a0a392015622d7bb62aa391e17956e5aa9a0d7189c79268cb86c46bb52b36488df5aebca5cfbd3
diff --git a/dev-python/sdnotify/metadata.xml b/dev-python/sdnotify/metadata.xml
new file mode 100644
index 000000000..768e83c1b
--- /dev/null
+++ b/dev-python/sdnotify/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>ceamac@gentoo.org</email>
+ <description>Primary maintainer</description>
+</maintainer>
+<upstream>
+ <remote-id type="github">bb4242/sdnotify</remote-id>
+ <remote-id type="pypi">sdnotify</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/dev-python/sdnotify/sdnotify-0.3.2.ebuild b/dev-python/sdnotify/sdnotify-0.3.2.ebuild
new file mode 100644
index 000000000..49b840923
--- /dev/null
+++ b/dev-python/sdnotify/sdnotify-0.3.2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..11} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python implementation of the systemd sd_notify protocol"
+HOMEPAGE="
+ https://github.com/bb4242/sdnotify
+ https://pypi.org/project/sdnotify/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+python_prepare_all() {
+ # Fix QA warning. No point in reporting upstream, the project seems abandoned
+ sed 's/description-file/description_file/' -i setup.cfg
+
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/sendgrid/Manifest b/dev-python/sendgrid/Manifest
new file mode 100644
index 000000000..70609ab01
--- /dev/null
+++ b/dev-python/sendgrid/Manifest
@@ -0,0 +1 @@
+DIST sendgrid-6.9.7.tar.gz 49919 BLAKE2B 2fdc245e026d21864d1fd1ea761b88b2597434d9d2287ae2d518802b307d737341c4caed8c2d10d3747482817eeefe5511b8a72a5dfaff6bc31515715fd0ef22 SHA512 861e056c0583bf734b0ccd6c3e940d0bdea621e9f21b6482b72d06721afaa9968290550a9c16b1487c9c0891924731d0d6a152d2dd07070f05800acd2ea5aab8
diff --git a/dev-python/sendgrid/metadata.xml b/dev-python/sendgrid/metadata.xml
new file mode 100644
index 000000000..1d8fa0699
--- /dev/null
+++ b/dev-python/sendgrid/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>stepan_kk@pm.me</email>
+ <name>Stepan Kulikov</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">sendgrid/sendgrid-python</remote-id>
+ <remote-id type="pypi">sendgrid</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/sendgrid/sendgrid-6.9.7.ebuild b/dev-python/sendgrid/sendgrid-6.9.7.ebuild
new file mode 100644
index 000000000..28077b1d0
--- /dev/null
+++ b/dev-python/sendgrid/sendgrid-6.9.7.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Twilio SendGrid library for Python"
+HOMEPAGE="https://github.com/sendgrid/sendgrid-python/ https://pypi.org/project/sendgrid/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DOCS="README.rst"
+
+RDEPEND=">=dev-python/python-http-client-3.3.5[${PYTHON_USEDEP}]
+ >=dev-python/starkbank-ecdsa-2.2.0[${PYTHON_USEDEP}]"
+BDEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest[${PYTHON_USEDEP}]
+ )"
+
+python_test() {
+ py.test -v -v || die
+}
+
+distutils_enable_tests pytest
diff --git a/dev-python/sentence-splitter/Manifest b/dev-python/sentence-splitter/Manifest
new file mode 100644
index 000000000..691ed4c48
--- /dev/null
+++ b/dev-python/sentence-splitter/Manifest
@@ -0,0 +1 @@
+DIST sentence-splitter-1.4.gh.tar.gz 33888 BLAKE2B 490da5f1dde77a164306a0ac5cd9b073eda5e25e8016f7dbd4e5add1341c276ea7dd646442e88697e9fb1f3ebe58ad04da7d0fda36793e66c34f83a728f6a121 SHA512 d1c8cc2c830f5b005265c5a0633bde9237f0d4f52526fc16197fa1b6bb413c25394e41eea03bdcedc824066c4d16d4c77b293ecb3ba37f8ec8eee2037842869f
diff --git a/dev-python/sentence-splitter/metadata.xml b/dev-python/sentence-splitter/metadata.xml
new file mode 100644
index 000000000..a286ac571
--- /dev/null
+++ b/dev-python/sentence-splitter/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@notyourcomputer.net</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">sentence-splitter</remote-id>
+ <remote-id type="github">mediacloud/sentence-splitter</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/sentence-splitter/sentence-splitter-1.4-r2.ebuild b/dev-python/sentence-splitter/sentence-splitter-1.4-r2.ebuild
new file mode 100644
index 000000000..dec09481c
--- /dev/null
+++ b/dev-python/sentence-splitter/sentence-splitter-1.4-r2.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Sentence splitter using heuristic algorithm by Philipp Koehn and Josh Schroeder"
+HOMEPAGE="
+ https://pypi.org/project/sentence-splitter/
+ https://github.com/mediacloud/sentence-splitter
+"
+SRC_URI="https://github.com/mediacloud/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="dev-python/regex[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
diff --git a/dev-python/signalstickers-client/Manifest b/dev-python/signalstickers-client/Manifest
new file mode 100644
index 000000000..682bbd0af
--- /dev/null
+++ b/dev-python/signalstickers-client/Manifest
@@ -0,0 +1 @@
+DIST signalstickers-client-3.3.0.tar.gz 15169 BLAKE2B f1437ed60b8d3995f00067bcd54c6f93566c040d46501aebbab8b9f48c1e59e75abd4d49009f6244b1e55923378a1142786fcade366989b27fa65abfd5dea06a SHA512 745e1e6ae29059c08b2f35357cd864884e4f67bef093fc303a5eba8c96bf3f2165267c1725399db23266db021248d351c0085eb5b6b514ba6c504f5e78f84b6a
diff --git a/dev-python/signalstickers-client/metadata.xml b/dev-python/signalstickers-client/metadata.xml
new file mode 100644
index 000000000..2bdbdb975
--- /dev/null
+++ b/dev-python/signalstickers-client/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>julien@jroy.ca</email>
+ <description>Julien Roy</description>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <name>Romain Ricard</name>
+ <email>contact+stickerclient@romainricard.fr</email>
+ </maintainer>
+ <doc>https://github.com/signalstickers/signalstickers-client/blob/master/STICKERS_INTERNALS.md</doc>
+ <bugs-to>https://github.com/signalstickers/signalstickers-client/issues</bugs-to>
+ <remote-id type="github">signalstickers/signalstickers-client</remote-id>
+ <remote-id type="pypi">signalstickers-client</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/signalstickers-client/signalstickers-client-3.3.0.ebuild b/dev-python/signalstickers-client/signalstickers-client-3.3.0.ebuild
new file mode 100644
index 000000000..45e1bcde6
--- /dev/null
+++ b/dev-python/signalstickers-client/signalstickers-client-3.3.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A Python client for the Signal stickers API"
+HOMEPAGE="https://github.com/signalstickers/signalstickers-client"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+# https://github.com/signalstickers/signalstickers-client/issues/22
+RESTRICT="test"
+
+distutils_enable_tests pytest
+
+RDEPEND="
+ dev-python/anyio[${PYTHON_USEDEP}]
+ dev-python/httpx[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/protobuf-python[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-httpx[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-python/simplemma/Manifest b/dev-python/simplemma/Manifest
index bfad9b33a..9a2972080 100644
--- a/dev-python/simplemma/Manifest
+++ b/dev-python/simplemma/Manifest
@@ -1 +1 @@
-DIST simplemma-0.3.0.tar.gz 44610556 BLAKE2B e82434ebfa15f2a4ec0cbb7a9ce281c198053a41b707561dfb1a59c217c03242dede9f3239a725893c22797f8781a68e030a0f769c3c2ec0a10efbd8dfe749a9 SHA512 c1a6f5d94098dd87eb992c301e8afbd2257b466571bca636c6815c9b5150f8e606ae7791652d34719383b356c0a1d5aa5311d266a4df6ebcb7f23402bbe65e2c
+DIST simplemma-0.9.1.tar.gz 75523297 BLAKE2B f8e4e141e180e24cc8d2c80cdfca7fcc111bbe7bd0a65c6bcbcf0708ea6ac559b9eaf8ee736054a4b0427ac56e21bec576d8c7975a60a32adc74713ddedf2748 SHA512 9a19088bae188e44fd1451aed7de5f66e579d70adb53782aaa84b15930d27a466d193b2d54c122c981300121ae6b0ecf8c63430cf34151daace8a752ba4b0fa6
diff --git a/dev-python/simplemma/metadata.xml b/dev-python/simplemma/metadata.xml
index 9ee6cb897..03ee686db 100644
--- a/dev-python/simplemma/metadata.xml
+++ b/dev-python/simplemma/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
<pkgmetadata>
<maintainer type="person">
- <email>shaoyu0209@tuta.io</email>
+ <email>dev@notyourcomputer.net</email>
<name>Shaoyu Tseng</name>
</maintainer>
<upstream>
diff --git a/dev-python/simplemma/simplemma-0.3.0.ebuild b/dev-python/simplemma/simplemma-0.3.0.ebuild
deleted file mode 100644
index ad1c0422f..000000000
--- a/dev-python/simplemma/simplemma-0.3.0.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-inherit distutils-r1
-
-DESCRIPTION="A simple multilingual lemmatizer for Python."
-HOMEPAGE="https://github.com/adbar/simplemma https://pypi.org/project/simplemma/"
-SRC_URI="https://github.com/adbar/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-distutils_enable_tests pytest
diff --git a/dev-python/simplemma/simplemma-0.9.1.ebuild b/dev-python/simplemma/simplemma-0.9.1.ebuild
new file mode 100644
index 000000000..24e1274a8
--- /dev/null
+++ b/dev-python/simplemma/simplemma-0.9.1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="A simple multilingual lemmatizer for Python"
+HOMEPAGE="
+ https://pypi.org/project/simplemma/
+ https://github.com/adbar/simplemma
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+DOCS=( {HISTORY,README}.rst )
+
+distutils_enable_tests pytest
diff --git a/dev-python/sjcl/Manifest b/dev-python/sjcl/Manifest
new file mode 100644
index 000000000..ac0fefc25
--- /dev/null
+++ b/dev-python/sjcl/Manifest
@@ -0,0 +1 @@
+DIST sjcl-e8bdad312fa99c89c74f8651a1240afba8a9f3bd.tar.gz 7079 BLAKE2B f3f898fe272317139cd33810ebbe1660d7decd80ced117d0e7d53acf60e38e93ff4a4542432b124084834b2de2344d66413a1f8c3aaa7ab7707f8a47af13cf43 SHA512 e048829efd0703ccad96b76c5b803fd65204c8feda67f325cfad16c48481c0b98fbc953b77378c377576324e94264a213bc8ba48912eb680b6c314e04165093c
diff --git a/dev-python/sjcl/metadata.xml b/dev-python/sjcl/metadata.xml
new file mode 100644
index 000000000..ec5331c74
--- /dev/null
+++ b/dev-python/sjcl/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>contact@hacktivis.me</email>
+ <name>Haelwenn (lanodan) Monnier</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">berlincode/sjcl</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/sjcl/sjcl-0.2.1-r1.ebuild b/dev-python/sjcl/sjcl-0.2.1-r1.ebuild
new file mode 100644
index 000000000..d6fd7fc16
--- /dev/null
+++ b/dev-python/sjcl/sjcl-0.2.1-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+MY_COMMIT="e8bdad312fa99c89c74f8651a1240afba8a9f3bd"
+
+DESCRIPTION="Decrypt and encrypt 'Stanford Javascript Crypto Library'-compatible messages"
+HOMEPAGE="https://github.com/berlincode/sjcl"
+
+# pypi tarball doesn't contains the tests
+SRC_URI="https://github.com/berlincode/sjcl/archive/${MY_COMMIT}.tar.gz -> ${PN}-${MY_COMMIT}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_COMMIT}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests setup.py
+
+RDEPEND="
+ dev-python/pycryptodome[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-python/sjcl/sjcl-0.2.1.ebuild b/dev-python/sjcl/sjcl-0.2.1.ebuild
new file mode 100644
index 000000000..458cb9ebd
--- /dev/null
+++ b/dev-python/sjcl/sjcl-0.2.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+MY_COMMIT="e8bdad312fa99c89c74f8651a1240afba8a9f3bd"
+
+DESCRIPTION="Decrypt and encrypt 'Stanford Javascript Crypto Library'-compatible messages"
+HOMEPAGE="https://github.com/berlincode/sjcl"
+
+# pypi tarball doesn't contains the tests
+SRC_URI="https://github.com/berlincode/sjcl/archive/${MY_COMMIT}.tar.gz -> ${PN}-${MY_COMMIT}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_COMMIT}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests setup.py
+
+RDEPEND="
+ dev-python/pycryptodome[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-python/skia-pathops/Manifest b/dev-python/skia-pathops/Manifest
index d26dbc8f3..c2bd807e9 100644
--- a/dev-python/skia-pathops/Manifest
+++ b/dev-python/skia-pathops/Manifest
@@ -1,2 +1 @@
-DIST skia-pathops-0.4.1.zip 41254623 BLAKE2B 8d47da77c6389419cdf229085c58e692a218f400458b3bd6633307316c0d127c05990438a739633ae1622aa394da95414f86eb23338c1ef28f69283608c4ee7a SHA512 62cef669a8518643c4aefe2860f4c2207d602a531fe3f2ff1ae700b092d6f60cd2c47190926c0d00c709995e519f5538722ed1c0f4b6881c5af5aeb2a5b43e3b
-DIST skia-pathops-0.6.0.post2.zip 41471167 BLAKE2B b9da1ff7deade28e0b5ce4fa6590eb92b50976027fc9da805b50c9d1526a60c28661d5378ecdc4dc2de42f7d3d904dd2f768b49df716b345253ffe2475f1afe7 SHA512 3ebcf044d045a57531229841630dea6e656df434a4a9b994a9a1162c93f0c894ffb20cfb493159cefd1afbe40366e2f9742a4aeea1a693d917fa55841c887e86
+DIST skia-pathops-0.8.0.post1.zip 66955898 BLAKE2B d1ad24e7dd350b44deec8aaffb17110f048fc0d4584f192eb97b52b9f98604a6fbdd35d37cc5317da14dd33225904eaf8beb0bda761017a9267b7e9f62ca0d2d SHA512 8828a8d3f070d8c4503abc144f3c5566d23812a1646b8c07e61b2b93bc43343ddee8b0c603bf47d029cfbc193c336a2a0d55251230626eb391caaa4654537342
diff --git a/dev-python/skia-pathops/files/skia-pathops-0.7.4-no-net.patch b/dev-python/skia-pathops/files/skia-pathops-0.7.4-no-net.patch
new file mode 100644
index 000000000..0cac67bc7
--- /dev/null
+++ b/dev-python/skia-pathops/files/skia-pathops-0.7.4-no-net.patch
@@ -0,0 +1,11 @@
+--- a/setup.py
++++ b/setup.py
+@@ -252,7 +252,7 @@ def build_skia(build_base):
+ build_cmd = [sys.executable, build_skia_py, build_dir]
+
+ if inside_sdist:
+- build_cmd.append("--no-sync-deps")
++ build_cmd += ["--no-sync-deps", "--no-virtualenv", "--no-fetch-gn", "--gn-path", "/usr/bin/gn"]
+
+ env = os.environ
+ target_cpu = None
diff --git a/dev-python/skia-pathops/metadata.xml b/dev-python/skia-pathops/metadata.xml
index a474f63ec..43f457251 100644
--- a/dev-python/skia-pathops/metadata.xml
+++ b/dev-python/skia-pathops/metadata.xml
@@ -1,11 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
+ <!-- maintainer-needed -->
<upstream>
<remote-id type="github">fonttools/skia-pathops</remote-id>
<remote-id type="pypi">skia-pathops</remote-id>
diff --git a/dev-python/skia-pathops/skia-pathops-0.4.1.ebuild b/dev-python/skia-pathops/skia-pathops-0.4.1.ebuild
deleted file mode 100644
index 98ba56f9a..000000000
--- a/dev-python/skia-pathops/skia-pathops-0.4.1.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python bindings for the Skia Path Ops"
-HOMEPAGE="
- https://github.com/fonttools/skia-pathops
- https://skia.org/dev/present/pathops
-"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.zip"
-
-KEYWORDS="~amd64"
-LICENSE="BSD"
-SLOT="0"
-
-RDEPEND="
- ~media-libs/skia-80_p20191220:=
-"
-DEPEND="
- ${RDEPEND}
- test? (
- dev-python/pytest-cython[${PYTHON_USEDEP}]
- dev-python/pytest-randomly[${PYTHON_USEDEP}]
- dev-python/pytest-xdist[${PYTHON_USEDEP}]
- )
-"
-BDEPEND="
- app-arch/unzip
- dev-python/cython[${PYTHON_USEDEP}]
- dev-python/setuptools_scm[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests pytest
-
-pkg_setup() {
- export BUILD_SKIA_FROM_SOURCE=0
-}
-
-python_prepare_all() {
- sed -e '/doctest-cython/d' -i tox.ini
-
- # assert <pathops.Path object at 0x7fe53e76cc00: 1 contours> == <pathops.Path object at 0x7fe53e76c2a0: 1 contours>
- sed -i -e 's:test_transform:_&:' \
- tests/pathops_test.py || die
-
- distutils-r1_python_prepare_all
-}
diff --git a/dev-python/skia-pathops/skia-pathops-0.6.0_p2.ebuild b/dev-python/skia-pathops/skia-pathops-0.6.0_p2.ebuild
deleted file mode 100644
index 40e47553f..000000000
--- a/dev-python/skia-pathops/skia-pathops-0.6.0_p2.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-MYP="${P/_p/.post}"
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python bindings for the Skia Path Ops"
-HOMEPAGE="
- https://github.com/fonttools/skia-pathops
- https://skia.org/dev/present/pathops
-"
-SRC_URI="mirror://pypi/${MYP:0:1}/${PN}/${MYP}.zip"
-S="${WORKDIR}/${MYP}"
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- media-libs/skia
-"
-DEPEND="
- ${RDEPEND}
- test? (
- dev-python/pytest-cython[${PYTHON_USEDEP}]
- dev-python/pytest-randomly[${PYTHON_USEDEP}]
- dev-python/pytest-xdist[${PYTHON_USEDEP}]
- )
-"
-BDEPEND="
- app-arch/unzip
- dev-python/cython[${PYTHON_USEDEP}]
- dev-python/setuptools_scm[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests pytest
-
-pkg_setup() {
- export BUILD_SKIA_FROM_SOURCE=0
-}
-
-python_test() {
- # assert <pathops.Path object at 0x7fe53e76cc00: 1 contours> == <pathops.Path object at 0x7fe53e76c2a0: 1 contours>
- epytest --deselect tests/pathops_test.py::PathTest::test_transform
-}
diff --git a/dev-python/skia-pathops/skia-pathops-0.8.0.ebuild b/dev-python/skia-pathops/skia-pathops-0.8.0.ebuild
new file mode 100644
index 000000000..1de1be9f3
--- /dev/null
+++ b/dev-python/skia-pathops/skia-pathops-0.8.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_EXT=1
+inherit distutils-r1 pypi
+
+hash="fa6de52d9cb3a44158431d4cce870e7c2a56cdccedc8fa1262cbf61d4e1e"
+
+DESCRIPTION="Python bindings for the Skia Path Ops"
+HOMEPAGE="
+ https://skia.org/dev/present/pathops
+ https://pypi.org/project/skia-pathops/
+ https://github.com/fonttools/skia-pathops
+"
+SRC_URI="https://files.pythonhosted.org/packages/37/15/${hash}/${P}.post1.zip"
+S="${WORKDIR}/${P}.post1"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ app-alternatives/ninja
+ app-arch/unzip
+ dev-python/cython[${PYTHON_USEDEP}]
+ dev-build/gn
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-0.7.4-no-net.patch )
+
+REPYTEST_DESELECT=(
+ tests/pathops_test.py::PathTest::test_transform
+ "tests/pathops_test.py::test_path_operation[conic_2_quad-operations3-expected3]"
+ "tests/pathops_test.py::test_path_operation[arc_to_quads-operations4-expected4]"
+)
+
+distutils_enable_tests pytest
diff --git a/dev-python/skills/Manifest b/dev-python/skills/Manifest
deleted file mode 100644
index 9a9802208..000000000
--- a/dev-python/skills/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST skills-0.3.0.zip 37199 BLAKE2B c27ac509c56ebf1152924c577a0e540a92f658977f5694be3647a658185990611ce30ebf27d755f032eee135a151a2e7228927a9054a502cf528573053789129 SHA512 0f825d0abe1fe9f1733f0be27e62bff97972a43ea09fb6ac4bf64098dfa6bf71c5408a9d0b5cb47fccfd7d539691f31c45787ab82ca408954c9a531553e20989
diff --git a/dev-python/skills/metadata.xml b/dev-python/skills/metadata.xml
deleted file mode 100644
index fc86a466a..000000000
--- a/dev-python/skills/metadata.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/McLeopold/PythonSkills/issues</bugs-to>
- <changelog>https://raw.githubusercontent.com/McLeopold/PythonSkills/master/CHANGES.rst</changelog>
- <maintainer>
- <email>mcleopold@gmail.com</email>
- <name>Scott Hamilton</name>
- </maintainer>
- <remote-id type="pypi">skills</remote-id>
- <remote-id type="github">McLeopold/PythonSkills</remote-id>
- </upstream>
- <longdescription lang="en">
-This is a Python port of the Moserware.Skills project that's available at
-
-http://github.com/moserware/Skills
-
-For more details on how the algorithm works, see
-
-http://www.moserware.com/2010/03/computing-your-skill.html
- </longdescription>
-</pkgmetadata>
diff --git a/dev-python/skills/skills-0.3.0.ebuild b/dev-python/skills/skills-0.3.0.ebuild
deleted file mode 100644
index 8167098e5..000000000
--- a/dev-python/skills/skills-0.3.0.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{7,8,9} pypy3 )
-DISTUTILS_USE_SETUPTOOLS=bdepend
-
-inherit distutils-r1
-
-DESCRIPTION="Python Implementation of the TrueSkill, Glicko and Elo Ranking Algorithms"
-HOMEPAGE="
- https://github.com/McLeopold/PythonSkills
- https://pypi.org/project/skills
-"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.zip"
-
-SLOT="0"
-LICENSE="BSD"
-KEYWORDS="~amd64"
-
-RDEPEND=""
-DEPEND=""
-BDEPEND="app-arch/unzip"
-
-distutils_enable_tests setup.py
diff --git a/dev-python/sortedcollections/Manifest b/dev-python/sortedcollections/Manifest
index ca3ac0622..ae64c7f98 100644
--- a/dev-python/sortedcollections/Manifest
+++ b/dev-python/sortedcollections/Manifest
@@ -1 +1 @@
-DIST sortedcollections-2.1.0.tar.gz 48563 BLAKE2B 5de36155858dc055c9412ff410bd70b489aba292a2956216db95641e10dcb249b98e5c005c4d7c4fd00b25c3315c65b3f43f404737591632ac223a4045b775b5 SHA512 7cb95af1791ab8f8c99847c1b9e0b8c1e7cc7dfe8a9df5db8bb3c96ceb2f15d7351ab4ff081d037d34dbb6c3108f4b575ca22c9e9e911a727d31b9ba3bf975f6
+DIST sortedcollections-2.1.0.gh.tar.gz 48563 BLAKE2B 5de36155858dc055c9412ff410bd70b489aba292a2956216db95641e10dcb249b98e5c005c4d7c4fd00b25c3315c65b3f43f404737591632ac223a4045b775b5 SHA512 7cb95af1791ab8f8c99847c1b9e0b8c1e7cc7dfe8a9df5db8bb3c96ceb2f15d7351ab4ff081d037d34dbb6c3108f4b575ca22c9e9e911a727d31b9ba3bf975f6
diff --git a/dev-python/sortedcollections/metadata.xml b/dev-python/sortedcollections/metadata.xml
index ad76e650c..3d094b8b5 100644
--- a/dev-python/sortedcollections/metadata.xml
+++ b/dev-python/sortedcollections/metadata.xml
@@ -1,13 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<upstream>
<doc>http://www.grantjenks.com/docs/sortedcollections/</doc>
- <remote-id type="github">https://github.com/grantjenks/python-sortedcollections</remote-id>
+ <remote-id type="github">grantjenks/python-sortedcollections</remote-id>
<remote-id type="pypi">sortedcollections</remote-id>
</upstream>
- <maintainer type="person">
- <email>cyber+gentoo@sysrq.in</email>
- <name>Anna</name>
- </maintainer>
+ <!-- maintainer-needed -->
</pkgmetadata>
diff --git a/dev-python/sortedcollections/sortedcollections-2.1.0.ebuild b/dev-python/sortedcollections/sortedcollections-2.1.0.ebuild
index 749cade41..734a2b09e 100644
--- a/dev-python/sortedcollections/sortedcollections-2.1.0.ebuild
+++ b/dev-python/sortedcollections/sortedcollections-2.1.0.ebuild
@@ -3,16 +3,17 @@
EAPI=8
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
DESCRIPTION="Apache2 licensed Python sorted collections library"
HOMEPAGE="
- https://pypi.org/project/sortedcollections
+ https://pypi.org/project/sortedcollections/
https://github.com/grantjenks/python-sortedcollections
"
-SRC_URI="https://github.com/grantjenks/python-${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/python-${PN}-${PV}"
+SRC_URI="https://github.com/grantjenks/python-${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/python-${P}"
LICENSE="Apache-2.0"
SLOT="0"
diff --git a/dev-python/sphinx-argparse-cli/Manifest b/dev-python/sphinx-argparse-cli/Manifest
new file mode 100644
index 000000000..b7d4d4a2e
--- /dev/null
+++ b/dev-python/sphinx-argparse-cli/Manifest
@@ -0,0 +1 @@
+DIST sphinx-argparse-cli-1.11.1.gh.tar.gz 18689 BLAKE2B 34dd1f84547dd590e4d12a600cf14a8133fc4fefa1726e0af1b7d52cd3b24317d8a66597aa9e135c98b331af20f67c9a1698efeff73c2d8cd7d587e8b698aca4 SHA512 027ac458a5bb3ddec81e1b26fe422d66071609590aba5b97b5399071ed44e13ea03e67e2a1177c31284b8e3bbdebfd15a10a1805b5de2e8ee03eaf72a0aa02c5
diff --git a/dev-python/sphinx-argparse-cli/metadata.xml b/dev-python/sphinx-argparse-cli/metadata.xml
new file mode 100644
index 000000000..b27c51a90
--- /dev/null
+++ b/dev-python/sphinx-argparse-cli/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <remote-id type="pypi">sphinx-argparse-cli</remote-id>
+ <remote-id type="github">tox-dev/sphinx-argparse-cli</remote-id>
+ <maintainer>
+ <name>Bernat Gabor</name>
+ <email>gaborjbernat@gmail.com</email>
+ </maintainer>
+ <doc>https://github.com/tox-dev/sphinx-argparse-cli#sphinx-argparse-cli</doc>
+ <bugs-to>https://github.com/tox-dev/sphinx-argparse-cli/issues</bugs-to>
+ </upstream>
+ <!-- maintainer-needed -->
+</pkgmetadata>
diff --git a/dev-python/sphinx-argparse-cli/sphinx-argparse-cli-1.11.1.ebuild b/dev-python/sphinx-argparse-cli/sphinx-argparse-cli-1.11.1.ebuild
new file mode 100644
index 000000000..6ff683747
--- /dev/null
+++ b/dev-python/sphinx-argparse-cli/sphinx-argparse-cli-1.11.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+DESCRIPTION="Render CLI arguments (sub-commands friendly) defined by argparse module"
+HOMEPAGE="https://github.com/tox-dev/sphinx-argparse-cli https://pypi.org/project/sphinx-argparse-cli/"
+SRC_URI="https://github.com/tox-dev/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/sphinx-7.0.1[${PYTHON_USEDEP}]
+"
+BDEPEND="dev-python/hatch-vcs[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
+
+src_configure() {
+ distutils-r1_src_configure
+ export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+}
diff --git a/dev-python/sphinx-argparse/Manifest b/dev-python/sphinx-argparse/Manifest
deleted file mode 100644
index a0e62eccf..000000000
--- a/dev-python/sphinx-argparse/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sphinx-argparse-0.2.5.tar.gz 24890 BLAKE2B 870329d588c5c1131bb104e548e6f1caf673b6b4ffa9cb074a9a6e769f90d8d351ec14ce05f902d10ce4ae2336e05a119a386ea154faf2a5c57ba240514c9b92 SHA512 8e946947c9d018c10d7283b19c49cf19bf5813ba5c227bf3aac21752e5ecddf4653ec2bb1e2b67b8c1c3d8eb50ede55acc5b0e0071297433a2468606d3baa0b1
diff --git a/dev-python/sphinx-argparse/metadata.xml b/dev-python/sphinx-argparse/metadata.xml
deleted file mode 100644
index a69b0a059..000000000
--- a/dev-python/sphinx-argparse/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <name>Alarig Le Lay</name>
- <email>alarig@swordarmor.fr</email>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/sphinx-argparse/sphinx-argparse-0.2.5.ebuild b/dev-python/sphinx-argparse/sphinx-argparse-0.2.5.ebuild
deleted file mode 100644
index bd22a2ff6..000000000
--- a/dev-python/sphinx-argparse/sphinx-argparse-0.2.5.ebuild
+++ /dev/null
@@ -1,42 +0,0 @@
-# Copyright 2020-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Sphinx extension that automatically documents argparse commands and options"
-HOMEPAGE="https://pypi.org/project/sphinx-argparse/
- https://github.com/alex-rudakov/sphinx-argparse"
-SRC_URI="https://github.com/alex-rudakov/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-
-DEPEND=""
-RDEPEND="
- ${DEPEND}
- dev-python/sphinx[${PYTHON_USEDEP}]
- dev-python/commonmark[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests pytest
-# requires self to build own documentation
-distutils_enable_sphinx docs dev-python/sphinx_rtd_theme dev-python/sphinx-argparse
-
-python_prepare_all() {
- # test fails, skip it until a fix is found:
- # AssertionError: assert [{'action_groups': [{'description': None,\n 'options': [{'default': None,\n
- sed -i -e 's:test_parse_nested:_&:' \
- -e 's:test_parse_nested_traversal:_&:' \
- test/test_parser.py || die
-
- # needs test files in workdir to compile docs for some reason
- cp -r test "${WORKDIR}/test/" || die
-
- distutils-r1_python_prepare_all
-}
diff --git a/dev-python/sphinx-click/Manifest b/dev-python/sphinx-click/Manifest
index 54f479211..5e3d8fc71 100644
--- a/dev-python/sphinx-click/Manifest
+++ b/dev-python/sphinx-click/Manifest
@@ -1,2 +1 @@
-DIST sphinx-click-3.0.0.tar.gz 19802 BLAKE2B 103b4d4374baac92baef327ed4a10e60b8ecbc1fecb828082ab2e9be766ba13bc4e1479d4e07eda456ba545be1626658cf599e48c3782f7257e646b819426b61 SHA512 a5d4aa443f149fbc875e773ac721a48e19f35c96ddff47fc5763639babe1dd7d87a92ce4b7139b0b2e6b252792de32f52e9bcbbf509c7af0fdbd12cb480fe0dc
-DIST sphinx-click-3.0.1.tar.gz 17193 BLAKE2B 4110e7b69975d90729b48eaa8587771ee8b082574774f1fbc22278c0e3c8993f16c7682aafa273198b14c1d698faed39216d4ff3563e5a6b56e0646a987bf58e SHA512 ef3627e53e762e19f0b11824f32369aece053cfa861b49cd08e8d8e34d392883fff7df79a1eb23b256d401a803c93eed4bad91daf54eb2ad4c93655911c2e8e4
+DIST sphinx-click-4.2.0.tar.gz 21265 BLAKE2B 3f0cd707d6eb26bb63d81cd86324b715eecbb85d038a94104599034563be024d4d4cab5ed488b1d1fb55d4f7c6abb599f48c96f8ea582be0c3d4a37169e7638d SHA512 9b9fee96b17242a1a2cfc097a49aaaa0134e47d250231481d13c438abfdd17b149adf2bde9c3591a94e4e17f02dc800c2b48002eb74994b43fec0d50ddb1083e
diff --git a/dev-python/sphinx-click/metadata.xml b/dev-python/sphinx-click/metadata.xml
index 7a441fb5c..26b8bd2c9 100644
--- a/dev-python/sphinx-click/metadata.xml
+++ b/dev-python/sphinx-click/metadata.xml
@@ -1,16 +1,14 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
+ <!-- maintainer-needed -->
+ <longdescription lang="en">
sphinx-click is a Sphinx plugin that allows you to automatically extract documentation from a click-based application and include it in your docs.
- </longdescription>
- <upstream>
- <remote-id type="github">click-contrib/sphinx-click</remote-id>
- <remote-id type="pypi">sphinx-click</remote-id>
- </upstream>
+ </longdescription>
+ <upstream>
+ <remote-id type="github">click-contrib/sphinx-click</remote-id>
+ <remote-id type="pypi">sphinx-click</remote-id>
+ <bugs-to>https://github.com/click-contrib/sphinx-click/issues</bugs-to>
+ <doc>https://sphinx-click.readthedocs.io/en/latest</doc>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/sphinx-click/sphinx-click-3.0.0.ebuild b/dev-python/sphinx-click/sphinx-click-3.0.0.ebuild
deleted file mode 100644
index e19efe79f..000000000
--- a/dev-python/sphinx-click/sphinx-click-3.0.0.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Sphinx plugin to automatically document click-based applications"
-HOMEPAGE="
- https://github.com/click-contrib/sphinx-click
- https://pypi.org/project/sphinx-click
-"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-KEYWORDS="~amd64 ~x86"
-SLOT="0"
-
-RDEPEND="
- >=dev-python/sphinx-2.0[${PYTHON_USEDEP}]
- >=dev-python/click-6[${PYTHON_USEDEP}]
- <dev-python/docutils-0.17[${PYTHON_USEDEP}]
-"
-DEPEND=">=dev-python/pbr-2.0[${PYTHON_USEDEP}]"
-
-distutils_enable_tests pytest
-distutils_enable_sphinx docs --no-autodoc
diff --git a/dev-python/sphinx-click/sphinx-click-3.0.1.ebuild b/dev-python/sphinx-click/sphinx-click-4.2.0.ebuild
index e19efe79f..7097975ba 100644
--- a/dev-python/sphinx-click/sphinx-click-3.0.1.ebuild
+++ b/dev-python/sphinx-click/sphinx-click-4.2.0.ebuild
@@ -1,29 +1,30 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{8,9} )
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="Sphinx plugin to automatically document click-based applications"
HOMEPAGE="
https://github.com/click-contrib/sphinx-click
- https://pypi.org/project/sphinx-click
+ https://pypi.org/project/sphinx-click/
"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
-KEYWORDS="~amd64 ~x86"
SLOT="0"
+KEYWORDS="~amd64"
RDEPEND="
>=dev-python/sphinx-2.0[${PYTHON_USEDEP}]
- >=dev-python/click-6[${PYTHON_USEDEP}]
- <dev-python/docutils-0.17[${PYTHON_USEDEP}]
+ >=dev-python/click-7.0[${PYTHON_USEDEP}]
+ dev-python/docutils[${PYTHON_USEDEP}]
"
-DEPEND=">=dev-python/pbr-2.0[${PYTHON_USEDEP}]"
+BDEPEND=">=dev-python/pbr-2.0[${PYTHON_USEDEP}]"
distutils_enable_tests pytest
distutils_enable_sphinx docs --no-autodoc
diff --git a/dev-python/sphinx-design/Manifest b/dev-python/sphinx-design/Manifest
new file mode 100644
index 000000000..cbd0bc11f
--- /dev/null
+++ b/dev-python/sphinx-design/Manifest
@@ -0,0 +1 @@
+DIST sphinx-design-0.5.0.gh.tar.gz 2588276 BLAKE2B 2262c8ddcaf108307e2e9d3eab2bfa8e04b7bb891a19450f3c235e81043fe7f886ea74373bb7d8929f6c8fdeae57b7d6b50cd91a9c3a4894d3dc19fbd81ef458 SHA512 26369c17d519e9a8f6a4bfdb68db60599e33c1db867037fdced6292439a9fcbe6a312c2d17ada058b14c95878ced7679bf6b64d7d4f13194f19502cd9be93b69
diff --git a/dev-python/sphinx-design/metadata.xml b/dev-python/sphinx-design/metadata.xml
new file mode 100644
index 000000000..b2816e5ae
--- /dev/null
+++ b/dev-python/sphinx-design/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">sphinx_design</remote-id>
+ <remote-id type="github">executablebooks/sphinx-design</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/sphinx-design/sphinx-design-0.5.0.ebuild b/dev-python/sphinx-design/sphinx-design-0.5.0.ebuild
new file mode 100644
index 000000000..67f8e4e04
--- /dev/null
+++ b/dev-python/sphinx-design/sphinx-design-0.5.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="A sphinx extension for designing beautiful, view size responsive web components"
+HOMEPAGE="https://sphinx-design.readthedocs.io https://github.com/executablebooks/sphinx-design"
+SRC_URI="https://github.com/executablebooks/sphinx-design/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ <dev-python/myst-parser-3[${PYTHON_USEDEP}]
+ >=dev-python/furo-2022.06.04[${PYTHON_USEDEP}]
+"
+
+src_prepare() {
+ find "${S}/docs" -type f -exec sed -i 's/sphinxcontrib.napoleon/sphinx\.ext\.napoleon/g' {} \; || die "Could not find and replace sphinxcontrib.napoleon"
+ rm -rf "${S}/tests" || die "Could not remove ${S}/tests"
+ use doc && HTML_DOCS="${S}/docs/_build/html"
+ distutils-r1_src_prepare
+}
+
+distutils_enable_sphinx docs --no-autodoc
diff --git a/dev-python/sphinx-hoverxref/Manifest b/dev-python/sphinx-hoverxref/Manifest
new file mode 100644
index 000000000..2164c9d52
--- /dev/null
+++ b/dev-python/sphinx-hoverxref/Manifest
@@ -0,0 +1 @@
+DIST sphinx-hoverxref-1.3.0.gh.tar.gz 1720899 BLAKE2B dae94b9ba8fb46e76d669548d9cfb41cc858756d800c5be8bdc73fb58c44587d56dd1fdb2c402ef8cb685f03f5e09a58852dff51c4670de9116e0f35f39fdb66 SHA512 29b61e9391b973094acccfed8206dd9b49aa1954621727b7bf1e2914bf91f8840b3114937f8fde386f6d9dca680330192df66cade4f9eb9952971111de9f0cf7
diff --git a/dev-python/sphinx-hoverxref/metadata.xml b/dev-python/sphinx-hoverxref/metadata.xml
new file mode 100644
index 000000000..a134dc25a
--- /dev/null
+++ b/dev-python/sphinx-hoverxref/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <doc>https://sphinx-hoverxref.readthedocs.io/en/latest/</doc>
+ <remote-id type="pypi">sphinx-hoverxref</remote-id>
+ <remote-id type="github">readthedocs/sphinx-hoverxref</remote-id>
+ <maintainer>
+ <name>Manuel Kaufmann</name>
+ <email>humitos@gmail.com</email>
+ </maintainer>
+ <bugs-to>https://github.com/readthedocs/sphinx-hoverxref/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/sphinx-hoverxref/sphinx-hoverxref-1.3.0.ebuild b/dev-python/sphinx-hoverxref/sphinx-hoverxref-1.3.0.ebuild
new file mode 100644
index 000000000..789beaf3b
--- /dev/null
+++ b/dev-python/sphinx-hoverxref/sphinx-hoverxref-1.3.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=flit
+inherit distutils-r1
+
+DESCRIPTION="Sphinx extension to show tooltips with content embedded when hover a reference"
+HOMEPAGE="
+ https://pypi.org/project/sphinx-hoverxref/
+ https://github.com/readthedocs/sphinx-hoverxref
+"
+SRC_URI="https://github.com/readthedocs/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ dev-python/sphinxcontrib-jquery[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/sphinxcontrib-bibtex[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_DESELECT=(
+ # tests that require network
+ tests/test_htmltag.py::test_intersphinx_default_configs
+ tests/test_htmltag.py::test_intersphinx_python_mapping
+ tests/test_htmltag.py::test_intersphinx_all_mappings
+)
+
+distutils_enable_tests pytest
+
+# Bug #883189
+#distutils_enable_sphinx docs \
+# dev-python/sphinx-autoapi \
+# dev-python/sphinx-notfound-page \
+# dev-python/sphinx-prompt \
+# dev-python/sphinx-tabs \
+# dev-python/sphinx-version-warning \
+# dev-python/sphinx-rtd-theme \
+# dev-python/sphinxcontrib-bibtex \
+# dev-python/sphinxemoji
diff --git a/dev-python/sphinx-paramlinks/Manifest b/dev-python/sphinx-paramlinks/Manifest
new file mode 100644
index 000000000..26dd7f152
--- /dev/null
+++ b/dev-python/sphinx-paramlinks/Manifest
@@ -0,0 +1 @@
+DIST sphinx-paramlinks-0.6.0.tar.gz 12363 BLAKE2B edda78286df826b2c3036b89de5dd0c334857783bca14ef6ad6c656ccb0da6dec89c64cf4361e9eddeda5a59ca33bb83f83f538758072cf714b49bb4fa67c106 SHA512 cfafc83681a230139a6f9d44bc53894511fce224f11d4ccd786b581eb3ad3274642c652f9bb1ce11ceb709e4c472af86e95c34ec357e17828dc4deffb51c8ea6
diff --git a/dev-python/sphinx-paramlinks/metadata.xml b/dev-python/sphinx-paramlinks/metadata.xml
new file mode 100644
index 000000000..4ff92577c
--- /dev/null
+++ b/dev-python/sphinx-paramlinks/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>ceamac@gentoo.org</email>
+ <name>Viorel Munteanu</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">sqlalchemyorg/sphinx-paramlinks</remote-id>
+ <remote-id type="pypi">sphinx-paramlinks</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/sphinx-paramlinks/sphinx-paramlinks-0.6.0.ebuild b/dev-python/sphinx-paramlinks/sphinx-paramlinks-0.6.0.ebuild
new file mode 100644
index 000000000..ddcdf3073
--- /dev/null
+++ b/dev-python/sphinx-paramlinks/sphinx-paramlinks-0.6.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+PYPI_NO_NORMALIZE=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Allows param links in Sphinx function/method descriptions to be linkable"
+HOMEPAGE="https://github.com/sqlalchemyorg/sphinx-paramlinks https://pypi.org/project/sphinx-paramlinks/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/docutils
+ dev-python/sphinx
+"
diff --git a/dev-python/sphinx-rtd-dark-mode/Manifest b/dev-python/sphinx-rtd-dark-mode/Manifest
new file mode 100644
index 000000000..96deecacb
--- /dev/null
+++ b/dev-python/sphinx-rtd-dark-mode/Manifest
@@ -0,0 +1 @@
+DIST sphinx-rtd-dark-mode-1.2.4.gh.tar.gz 9964 BLAKE2B 7aa68205af0578b841d35e7d7ccc8278060eafa13a598889dde6e75c3b27f606ffd7eac0c4bcc946b7e83bd2099e83c5b212768f230cabfcc6a8a0248b8f8ebc SHA512 729fa42c813bdcde8f10633aef54ac55b7ae0c20d67d376141236c3bc96731de3d42c9b890f1314527a2f0faf7de30101d769235b97b53456b6291f4137f9e75
diff --git a/dev-python/sphinx-rtd-dark-mode/metadata.xml b/dev-python/sphinx-rtd-dark-mode/metadata.xml
new file mode 100644
index 000000000..f3192a85d
--- /dev/null
+++ b/dev-python/sphinx-rtd-dark-mode/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">sphinx-rtd-dark-mode</remote-id>
+ <remote-id type="github">MrDogeBro/sphinx_rtd_dark_mode</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/sphinx-rtd-dark-mode/sphinx-rtd-dark-mode-1.2.4.ebuild b/dev-python/sphinx-rtd-dark-mode/sphinx-rtd-dark-mode-1.2.4.ebuild
new file mode 100644
index 000000000..f6a045dbe
--- /dev/null
+++ b/dev-python/sphinx-rtd-dark-mode/sphinx-rtd-dark-mode-1.2.4.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+MY_PN="sphinx_rtd_dark_mode"
+DESCRIPTION="Dark mode for the Sphinx Read the Docs theme"
+HOMEPAGE="
+ https://pypi.org/project/sphinx-rtd-dark-mode/
+ https://github.com/MrDogeBro/sphinx_rtd_dark_mode
+"
+SRC_URI="https://github.com/MrDogeBro/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ dev-python/sphinx[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( {CONTRIBUTING,README}.md )
+
+distutils_enable_tests pytest
+
+python_test() {
+ epytest tests/build.py
+}
diff --git a/dev-python/sphinx-sitemap/Manifest b/dev-python/sphinx-sitemap/Manifest
new file mode 100644
index 000000000..0340c8f83
--- /dev/null
+++ b/dev-python/sphinx-sitemap/Manifest
@@ -0,0 +1,2 @@
+DIST sphinx-sitemap-2.5.1.gh.tar.gz 26496 BLAKE2B 390050befcd3295d7d9e63495bc5095eb18c9d510db834fb221a796d28d6b8944aa8b7935c3f3018eb9ae59f6b8aba47703ae2af2cc8b9ed1ebb144fe093736a SHA512 9a470d0717f69f01178c2bc0ef8fc825824a534ceb37f1d0aec8feb36aea8c5d3fe92a3d60e34d2e4f30bc0318f497abfdb6221de42418d935da7563caeaca48
+DIST sphinx-sitemap-2.6.0.gh.tar.gz 27157 BLAKE2B fe9b8b3df5d5ca84a13e7c99adca9e1eda3b2c89135293ebb07f2575c98fdec517f45eaec8429404b7d9b08d43b0d24cd1113a48ec3e12396dce6b3e0979287b SHA512 cfe5f575c77790cf7c5b6a5765d03e39059bce62b3ec0d908a9d2ec2071c3f1d104ee0ab8b1ca77343f327b8cd7c31d4cb5588c92d5ade9ba6f6e44b0fc35c4c
diff --git a/dev-python/sphinx-sitemap/metadata.xml b/dev-python/sphinx-sitemap/metadata.xml
new file mode 100644
index 000000000..5e5f629b7
--- /dev/null
+++ b/dev-python/sphinx-sitemap/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">sphinx-sitemap</remote-id>
+ <remote-id type="github">jdillard/sphinx-sitemap</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/sphinx-sitemap/sphinx-sitemap-2.5.1.ebuild b/dev-python/sphinx-sitemap/sphinx-sitemap-2.5.1.ebuild
new file mode 100644
index 000000000..804b81213
--- /dev/null
+++ b/dev-python/sphinx-sitemap/sphinx-sitemap-2.5.1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Sitemap generator for Sphinx"
+HOMEPAGE="
+ https://pypi.org/project/sphinx-sitemap/
+ https://github.com/jdillard/sphinx-sitemap
+"
+SRC_URI="https://github.com/jdillard/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/sphinx[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
+
+#distutils_enable_sphinx docs/source \
+ #dev-python/furo \
+ #dev-python/sphinxemoji \
+ #dev-python/sphinxext-opengraph \
+ #dev-python/sphinx-contributors
diff --git a/dev-python/sphinx-sitemap/sphinx-sitemap-2.6.0.ebuild b/dev-python/sphinx-sitemap/sphinx-sitemap-2.6.0.ebuild
new file mode 100644
index 000000000..8ba84a896
--- /dev/null
+++ b/dev-python/sphinx-sitemap/sphinx-sitemap-2.6.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Sitemap generator for Sphinx"
+HOMEPAGE="
+ https://pypi.org/project/sphinx-sitemap/
+ https://github.com/jdillard/sphinx-sitemap
+"
+SRC_URI="https://github.com/jdillard/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/sphinx[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
+
+#distutils_enable_sphinx docs/source \
+ #dev-python/furo \
+ #dev-python/sphinxemoji \
+ #dev-python/sphinxext-opengraph \
+ #dev-python/sphinx-contributors
diff --git a/dev-python/sphinx-version-warning/Manifest b/dev-python/sphinx-version-warning/Manifest
new file mode 100644
index 000000000..388a250a9
--- /dev/null
+++ b/dev-python/sphinx-version-warning/Manifest
@@ -0,0 +1 @@
+DIST sphinx-version-warning-1.1.2.gh.tar.gz 88859 BLAKE2B 9f5ab5f24ad8ef3784a6f2e8213b57c9f26f79d7d9801dffcf245f74a70938cccf04f7040749eab249034b58ff275e96e06e2272cc229d2605d8474098fbb2e3 SHA512 a629b9271507f812e3e814b4f11f78d1dc3cbd90b8db12b75a680e3d3bb17216bdc52ad246e985392a29cf5f4aa22ba14801019bebc306996d9f58e895b6494d
diff --git a/dev-python/sphinx-version-warning/metadata.xml b/dev-python/sphinx-version-warning/metadata.xml
new file mode 100644
index 000000000..07779bfea
--- /dev/null
+++ b/dev-python/sphinx-version-warning/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <doc>https://sphinx-version-warning.readthedocs.io/</doc>
+ <remote-id type="pypi">sphinx-version-warning</remote-id>
+ <remote-id type="github">humitos/sphinx-version-warning</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/sphinx-version-warning/sphinx-version-warning-1.1.2.ebuild b/dev-python/sphinx-version-warning/sphinx-version-warning-1.1.2.ebuild
new file mode 100644
index 000000000..8c09c678b
--- /dev/null
+++ b/dev-python/sphinx-version-warning/sphinx-version-warning-1.1.2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Sphinx extension to add a warning banner"
+HOMEPAGE="
+ https://pypi.org/project/sphinx-version-warning/
+ https://github.com/humitos/sphinx-version-warning
+"
+SRC_URI="https://github.com/humitos/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/sphinx[${PYTHON_USEDEP}]"
+
+# TODO: enable in next release
+#distutils_enable_sphinx docs \
+# dev-python/sphinx-autoapi \
+# dev-python/sphinx-prompt \
+# dev-python/sphinx-tabs \
+# dev-python/sphinx-rtd-theme \
+# dev-python/sphinxemoji
diff --git a/dev-python/sphinxcontrib-katex/Manifest b/dev-python/sphinxcontrib-katex/Manifest
index c5713e14f..af6a3a858 100644
--- a/dev-python/sphinxcontrib-katex/Manifest
+++ b/dev-python/sphinxcontrib-katex/Manifest
@@ -1 +1 @@
-DIST sphinxcontrib-katex-0.8.6.tar.gz 17410 BLAKE2B 8e4c72dd40ef6e8f6110a54183c098a67ee08cb043e031437dfe9210376e388e8695ff8766a3b5cac62edafa5138798b09353cf9faa94bab2df5b033b11fefbd SHA512 d7285a8397fb88e5f964096e5108c61e1b97fe0b7b98628459eb0562bb526275a1d3562dbf03c4daeedfe4f34e770db4e3e5620c8279d3b5d8d42371787ce38b
+DIST sphinxcontrib-katex-0.9.9.tar.gz 99711 BLAKE2B 75d8e4acd26bb8b83693ea42d8bb05997195252ae34f8484484f094b124ea629b48b2c496d3f7b5252171cda125c63aaf3161c457032f91057662a76a1a40f8d SHA512 aaac916193d01b32e3e10636294abb5285b18f922c7e7c190e0e4dc66f477860058981f50f38a9441323e79be32d9b0585c0e99f90f4074b555229cceb0a8b8f
diff --git a/dev-python/sphinxcontrib-katex/metadata.xml b/dev-python/sphinxcontrib-katex/metadata.xml
index 5769a6680..fd706c63e 100644
--- a/dev-python/sphinxcontrib-katex/metadata.xml
+++ b/dev-python/sphinxcontrib-katex/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>torokhov-s-a@yandex.ru</email>
diff --git a/dev-python/sphinxcontrib-katex/sphinxcontrib-katex-0.8.6.ebuild b/dev-python/sphinxcontrib-katex/sphinxcontrib-katex-0.8.6.ebuild
deleted file mode 100644
index db8061ad1..000000000
--- a/dev-python/sphinxcontrib-katex/sphinxcontrib-katex-0.8.6.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="KaTeX Sphinx extension for rendering of math in HTML pages"
-HOMEPAGE="https://github.com/hagenw/sphinxcontrib-katex"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND=">=dev-python/sphinx-3.5.4[${PYTHON_USEDEP}]"
-
-DOCS=()
-
-distutils_enable_sphinx docs
-
-python_install_all() {
- distutils-r1_python_install_all
- find "${ED}" -name '*.pth' -delete || die
-}
diff --git a/dev-python/sphinxcontrib-katex/sphinxcontrib-katex-0.9.9.ebuild b/dev-python/sphinxcontrib-katex/sphinxcontrib-katex-0.9.9.ebuild
new file mode 100644
index 000000000..254c9bee6
--- /dev/null
+++ b/dev-python/sphinxcontrib-katex/sphinxcontrib-katex-0.9.9.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="KaTeX Sphinx extension for rendering of math in HTML pages"
+HOMEPAGE="https://github.com/hagenw/sphinxcontrib-katex"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/sphinx-4.5.0-r1[${PYTHON_USEDEP}]"
+
+DOCS=()
+
+distutils_enable_sphinx docs \
+ dev-python/insipid-sphinx-theme
+
+src_prepare() {
+ default
+ sed -i -e 's/license_file/license_files/' setup.cfg || die
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ find "${ED}" -name '*.pth' -delete || die
+}
diff --git a/dev-python/sphinxcontrib-napoleon/Manifest b/dev-python/sphinxcontrib-napoleon/Manifest
deleted file mode 100644
index fdfb3f5ec..000000000
--- a/dev-python/sphinxcontrib-napoleon/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sphinxcontrib-napoleon-0.7.tar.gz 21232 BLAKE2B c64433a9e42d7f68ffca0f3d45e927a10ff8a67e47d0d05f19614c1625db29633774155a9ddb48fb1a32fe04710ecb597fc13b393738afb7266afc6e62526346 SHA512 000fc00b21148ed38b3f0beed5163e232f50642369641a940fd77b30c3c426d799144b3e1c7fbc4dd86b5b1f526656b56be7d77239d4cd3a14dd93178c0e13f8
diff --git a/dev-python/sphinxcontrib-napoleon/metadata.xml b/dev-python/sphinxcontrib-napoleon/metadata.xml
deleted file mode 100644
index a0a60d714..000000000
--- a/dev-python/sphinxcontrib-napoleon/metadata.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <!-- maintainer-needed -->
-</pkgmetadata>
diff --git a/dev-python/sphinxcontrib-napoleon/sphinxcontrib-napoleon-0.7.ebuild b/dev-python/sphinxcontrib-napoleon/sphinxcontrib-napoleon-0.7.ebuild
deleted file mode 100644
index cdb82f956..000000000
--- a/dev-python/sphinxcontrib-napoleon/sphinxcontrib-napoleon-0.7.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Allow a different format in dosctrings for better clarity"
-HOMEPAGE="https://sphinxcontrib-napoleon.readthedocs.io/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-RDEPEND="
- dev-python/sphinx[${PYTHON_USEDEP}]
-"
-DEPEND="
- dev-python/pockets[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
-"
-
-python_install_all() {
- distutils-r1_python_install_all
- find "${ED}" -name '*.pth' -delete || die
-}
diff --git a/dev-python/sphinxcontrib-restbuilder/Manifest b/dev-python/sphinxcontrib-restbuilder/Manifest
deleted file mode 100644
index bde5235cd..000000000
--- a/dev-python/sphinxcontrib-restbuilder/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sphinxcontrib-restbuilder-0.3.tar.gz 24926 BLAKE2B 885ec51030ef05c9bf528efc5ee8ac1552692d760854c750342947b599411a1d469aff577938286ef22de0e051450605e646b7b904dd69b513c9016ddbc8345c SHA512 0b94d05a2fed1f2203fea94cd3a525a62530ec1777d28d59f9232241dd6816eedf871d6a6f616f6f9ce2946a90143871be09d8cae75747b224a6032e284963ed
diff --git a/dev-python/sphinxcontrib-restbuilder/metadata.xml b/dev-python/sphinxcontrib-restbuilder/metadata.xml
deleted file mode 100644
index b6ef8d6ec..000000000
--- a/dev-python/sphinxcontrib-restbuilder/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/sphinx-contrib/restbuilder/issues</bugs-to>
- <remote-id type="github">sphinx-contrib/restbuilder</remote-id>
- <remote-id type="pypi">sphinxcontrib-restbuilder</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/sphinxcontrib-restbuilder/sphinxcontrib-restbuilder-0.3.ebuild b/dev-python/sphinxcontrib-restbuilder/sphinxcontrib-restbuilder-0.3.ebuild
deleted file mode 100644
index 95458e825..000000000
--- a/dev-python/sphinxcontrib-restbuilder/sphinxcontrib-restbuilder-0.3.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="A Sphinx builder/writer to output reStructuredText (rst) files"
-HOMEPAGE="
- https://github.com/sphinx-contrib/restbuilder
- https://pypi.org/project/sphinxcontrib-restbuilder
-"
-SRC_URI="https://github.com/sphinx-contrib/restbuilder/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/${P/sphinxcontrib-/}"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="dev-python/sphinx[${PYTHON_USEDEP}]"
-
-distutils_enable_tests pytest
-
-python_install_all() {
- distutils-r1_python_install_all
- find "${ED}" -name '*.pth' -delete || die
-}
diff --git a/dev-python/sphinxext-opengraph/Manifest b/dev-python/sphinxext-opengraph/Manifest
new file mode 100644
index 000000000..aae23a22a
--- /dev/null
+++ b/dev-python/sphinxext-opengraph/Manifest
@@ -0,0 +1 @@
+DIST sphinxext-opengraph-0.9.1.tar.gz 1034511 BLAKE2B 3967c98a53f0e2a55be659741efe29ecc167413de570ba58d54cbe5f14679f1f5ba9613e4579372fb38ff602a7ef4744a6d00793bec5ca0eda800cf6f1e1ba4e SHA512 0f23e5269baccd675d67588597175adf0322942bf0c8ca76b4f22bd14b4574f1f4d2328e476293253bc9b92aec7b9311c17ac301b762ec3d4c2a6c3cd072cb91
diff --git a/dev-python/sphinxext-opengraph/metadata.xml b/dev-python/sphinxext-opengraph/metadata.xml
new file mode 100644
index 000000000..1507e30a8
--- /dev/null
+++ b/dev-python/sphinxext-opengraph/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">sphinxext-opengraph</remote-id>
+ <remote-id type="github">wpilibsuite/sphinxext-opengraph</remote-id>
+ <doc>https://sphinxext-opengraph.readthedocs.io</doc>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/sphinxext-opengraph/sphinxext-opengraph-0.9.1.ebuild b/dev-python/sphinxext-opengraph/sphinxext-opengraph-0.9.1.ebuild
new file mode 100644
index 000000000..e3594a6a2
--- /dev/null
+++ b/dev-python/sphinxext-opengraph/sphinxext-opengraph-0.9.1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Sphinx extension to generate unique OpenGraph metadata"
+HOMEPAGE="https://github.com/wpilibsuite/sphinxext-opengraph"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="doc"
+
+RDEPEND="
+ >=dev-python/sphinx-4.0[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ doc? (
+ media-fonts/roboto
+ dev-python/furo[${PYTHON_USEDEP}]
+ dev-python/myst-parser[${PYTHON_USEDEP}]
+ dev-python/sphinx-design[${PYTHON_USEDEP}]
+ )
+ test? ( dev-python/beautifulsoup4[${PYTHON_USEDEP}] )
+"
+
+distutils_enable_tests pytest
+
+python_compile_all() {
+ use doc && emake -C docs man
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ use doc && doman "${S}/docs/build/man/${PN}.1"
+}
diff --git a/dev-python/spotipy/Manifest b/dev-python/spotipy/Manifest
deleted file mode 100644
index e45578759..000000000
--- a/dev-python/spotipy/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST spotipy-2.17.1.tar.gz 100524 BLAKE2B 3c020276f245b03a5a2052b49e353ead6aca69c510ddaeef732aa0ecd835abccf49fde58ac26bd5c64f9ea7afa9b6772a36abbc3d48a076559c6fb96e465ce7d SHA512 39dbd089fe98896387f805e6cb487c38543c0777aaf73cacc805d5f6f074c07ee5a5dd7adfe7925cdc717e46b5fee0e9151265fd4f792b901040e107cb8c515c
diff --git a/dev-python/spotipy/metadata.xml b/dev-python/spotipy/metadata.xml
deleted file mode 100644
index a0a60d714..000000000
--- a/dev-python/spotipy/metadata.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <!-- maintainer-needed -->
-</pkgmetadata>
diff --git a/dev-python/spotipy/spotipy-2.17.1.ebuild b/dev-python/spotipy/spotipy-2.17.1.ebuild
deleted file mode 100644
index 4f37125b3..000000000
--- a/dev-python/spotipy/spotipy-2.17.1.ebuild
+++ /dev/null
@@ -1,54 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="A light weight Python library for the Spotify Web API"
-HOMEPAGE="https://spotipy.readthedocs.io
- https://github.com/plamere/spotipy"
-SRC_URI="https://github.com/plamere/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-IUSE="examples"
-
-LICENSE="MIT"
-KEYWORDS="~amd64 ~x86 "
-SLOT="0"
-
-RDEPEND="
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
- dev-python/urllib3[${PYTHON_USEDEP}]
-"
-
-BDEPEND="test? ( dev-python/mock[${PYTHON_USEDEP}] )"
-
-distutils_enable_sphinx docs
-distutils_enable_tests pytest
-
-python_prepare_all() {
- # this test requires user credentials
- rm tests/integration/test_user_endpoints.py || die
-
- # this test requires a spotify client ID
- rm tests/integration/test_non_user_endpoints.py || die
-
- # need internet access
- sed -i -e 's:test_spotify_client_credentials_get_access_token:_&:' \
- tests/unit/test_oauth.py || die
-
- distutils-r1_python_prepare_all
-}
-
-python_test() {
- pytest -vv tests || die "Tests fail with ${EPYTHON}"
-}
-
-python_install_all() {
- use examples && dodoc -r examples
-
- distutils-r1_python_install_all
-}
diff --git a/dev-python/sre_yield/Manifest b/dev-python/sre_yield/Manifest
deleted file mode 100644
index 698a62d9b..000000000
--- a/dev-python/sre_yield/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sre_yield-1.2.tar.gz 23491 BLAKE2B 350800649a01b2f2fbe8efb2d9afb1a2a2c6305b1873c0939ad9e02efaa867c1539ba9db692e7fef8eff2d983dac25e406f295b38e26134400388dc0ef54de2f SHA512 ef0621d2d52b36575a22ddb66409f37537bb67296235248c1c802f887aab30cdefb426caa6fd2913ebfd5daa3885151088cab2324a4cbfe5707cdad51c352f89
diff --git a/dev-python/sre_yield/metadata.xml b/dev-python/sre_yield/metadata.xml
deleted file mode 100644
index 0a9c05c2b..000000000
--- a/dev-python/sre_yield/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/simoncozens/sre_yield/issues</bugs-to>
- <remote-id type="github">simoncozens/sre_yield</remote-id>
- <remote-id type="pypi">sre_yield</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/sre_yield/sre_yield-1.2.ebuild b/dev-python/sre_yield/sre_yield-1.2.ebuild
deleted file mode 100644
index ef0270e46..000000000
--- a/dev-python/sre_yield/sre_yield-1.2.ebuild
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="Python module to generate regular all expression matches"
-HOMEPAGE="https://github.com/google/sre_yield"
-SRC_URI="https://github.com/google/sre_yield/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-KEYWORDS="~amd64"
-SLOT="0"
-
-distutils_enable_tests pytest
diff --git a/dev-python/srt/Manifest b/dev-python/srt/Manifest
index 57a8d4a7d..f343f484e 100644
--- a/dev-python/srt/Manifest
+++ b/dev-python/srt/Manifest
@@ -1 +1,3 @@
-DIST srt-3.4.1.tar.gz 23723 BLAKE2B 33445cb969db64e89978c06fcb0b8145047a1f40082500f507b8c70d42489dc083f7b2972868bf08a9f5fcb1b9a279df279f034455d0b326f3c03da086bd59c5 SHA512 bb214935203b4d3a8bc1dc7968ed318ed55709b880046dd070c3547e5c5e7df6d12f445e3be83a2e938096655008705a76461c404494a1c8eccee36f2ff465cd
+DIST srt-3.5.1.tar.gz 24003 BLAKE2B 0ba77727043090310d2db69d9569bde53fcd69a55715e9721a83ee148d382459b1d68b369eee52fc7f99ba5e8aca017128a2d999e44b5ae77dda027a23ecc8bc SHA512 0523b5b31d78db195911ea632adbd25e76d1270510cf9c7432a44bd96e44d4928196c7e4f2eed05bbd73c1d96dcbe99ecea2bd755d697ff659924773c3e6a05e
+DIST srt-3.5.2.tar.gz 24416 BLAKE2B 7da4401cce45045058f4d91a3ea3b688ae65f48d039b642abdf649acf2a8e416e096a5959235dc0165ac0a2169ca63a66b101bac6d8f20b0b330d165626b5010 SHA512 5367d7fa3ed23523f03efad1524fcb44c1a8e1c95e2f3032c0e11ff67795a1399eb32b27365e4b0f98ed5b1d7671d576ab8cd342d50bb4005554faaf03ea9c8a
+DIST srt-3.5.3.tar.gz 28296 BLAKE2B 97f8852a799e80401f09219b43b41f5d5f9fe2c7283e2b43312aef70d783d7f1c1bf126e076c3a13c10e74e80ff48f25075cc7a1cef58a99fb4ef32cfa5b2587 SHA512 434331d31763a339ebb7d5b335b9d924b7f6939f307ecd0e5476b91da19b39e0febf1a387199e22f0b15365a4305c24021d85a32a7b65058905abd7946865b70
diff --git a/dev-python/srt/metadata.xml b/dev-python/srt/metadata.xml
index cbe3c6a53..bb0fbc41f 100644
--- a/dev-python/srt/metadata.xml
+++ b/dev-python/srt/metadata.xml
@@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>smaniotto.nicola@gmail.com</email>
<name>Nicola Smaniotto</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">cdown/srt</remote-id>
+ <remote-id type="pypi">srt</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/srt/srt-3.4.1.ebuild b/dev-python/srt/srt-3.5.1.ebuild
index b6159b07a..418abeea4 100644
--- a/dev-python/srt/srt-3.4.1.ebuild
+++ b/dev-python/srt/srt-3.5.1.ebuild
@@ -1,17 +1,16 @@
-# Copyright 2021 Gentoo Authors
+# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-PYTHON_COMPAT=( python3_{8..9} )
+PYTHON_COMPAT=( python3_{10..11} )
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="A tiny library for parsing, modifying, and composing SRT files"
HOMEPAGE="https://github.com/cdown/srt"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-LICENSE="public-domain"
+LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
@@ -21,7 +20,7 @@ DEPEND="
test? (
dev-python/hypothesis[${PYTHON_USEDEP}]
)
- "
+"
src_prepare() {
default
diff --git a/dev-python/srt/srt-3.5.2.ebuild b/dev-python/srt/srt-3.5.2.ebuild
new file mode 100644
index 000000000..cb3afc56d
--- /dev/null
+++ b/dev-python/srt/srt-3.5.2.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A tiny library for parsing, modifying, and composing SRT files"
+HOMEPAGE="https://github.com/cdown/srt"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests pytest
+
+DEPEND="
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ )
+"
+
+src_prepare() {
+ default
+
+ mv "${S}"/srt_tools/srt "${S}"/srt_tools/srt-cdown || die "Cannot rename the file"
+ sed -e 's|"srt_tools/srt"|"srt_tools/srt-cdown"|' \
+ -i "${S}"/setup.py || die "Cannot update setup.py"
+
+}
+
+pkg_postinst() {
+ ewarn "To avoid conflict with dev-python/pysrt::gentoo the binary has been"
+ ewarn "renamed /usr/bin/srt-cdown. The python module is still called srt."
+}
diff --git a/dev-python/srt/srt-3.5.3.ebuild b/dev-python/srt/srt-3.5.3.ebuild
new file mode 100644
index 000000000..319b23a66
--- /dev/null
+++ b/dev-python/srt/srt-3.5.3.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A tiny library for parsing, modifying, and composing SRT files"
+HOMEPAGE="https://github.com/cdown/srt"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests pytest
+
+DEPEND="
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ )
+"
+
+src_prepare() {
+ default
+
+ mv "${S}"/srt_tools/srt "${S}"/srt_tools/srt-cdown || die "Cannot rename the file"
+ sed -e 's|"srt_tools/srt"|"srt_tools/srt-cdown"|' \
+ -i "${S}"/setup.py || die "Cannot update setup.py"
+
+}
+
+pkg_postinst() {
+ ewarn "To avoid conflict with dev-python/pysrt::gentoo the binary has been"
+ ewarn "renamed /usr/bin/srt-cdown. The python module is still called srt."
+}
diff --git a/dev-python/sse-starlette/Manifest b/dev-python/sse-starlette/Manifest
index bd02b1223..ef133c584 100644
--- a/dev-python/sse-starlette/Manifest
+++ b/dev-python/sse-starlette/Manifest
@@ -1 +1 @@
-DIST sse-starlette-0.7.2.tar.gz 510457 BLAKE2B f56849be2725b62bb4dd17afed337f21ad07bd2d6c1e0ef9e4c2f33652df2306385caa3920cc81009a7daf699d7556d7af1aece6a7fa7f1299f95df843ed070b SHA512 c02b638e6a378be21a730059a340f08bb9b1100da7d38a506858c8f9aaadf24c230394923f04e1af1989e8cc0de2b1dda4784151460829ee6daca8bad6d6334b
+DIST sse-starlette-1.1.6.tar.gz 513764 BLAKE2B 2852eed53c71a5af8f690aba76ebe1a47228319e14be643e1d88f6a6afdb376a1d4354d28c65090458b7d75f55f0b64ab08e66ee2abcc8740a5250086b17e223 SHA512 047856c672417a44e380d1e31110882f4d536469cfe3bddac185c9996e1ec0e792075bc5ce521640c5fe2a0294c9ca9ee4a423d3edf08d898acfec65495cf280
diff --git a/dev-python/sse-starlette/metadata.xml b/dev-python/sse-starlette/metadata.xml
index a507be0a7..463490241 100644
--- a/dev-python/sse-starlette/metadata.xml
+++ b/dev-python/sse-starlette/metadata.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>piotr.staroszczyk@get24.org</email>
- <name>Piotr Staroszczyk</name>
- </maintainer>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">sysid/sse-starlette</remote-id>
+ <remote-id type="pypi">sse-starlette</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/sse-starlette/sse-starlette-0.7.2.ebuild b/dev-python/sse-starlette/sse-starlette-1.1.6.ebuild
index 7177196ad..d247a016f 100644
--- a/dev-python/sse-starlette/sse-starlette-0.7.2.ebuild
+++ b/dev-python/sse-starlette/sse-starlette-1.1.6.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
+EAPI=8
+PYTHON_COMPAT=( python3_{10..11} )
+DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
DESCRIPTION="Server Sent Events for Starlette"
@@ -18,11 +18,17 @@ LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-RDEPEND="dev-python/starlette"
+RDEPEND="
+ dev-python/anyio[${PYTHON_USEDEP}]
+ dev-python/starlette[${PYTHON_USEDEP}]
+"
BDEPEND="
test? (
- dev-python/pytest-asyncio
- dev-python/requests
+ dev-python/asgi-lifespan[${PYTHON_USEDEP}]
+ dev-python/httpx[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/uvicorn[${PYTHON_USEDEP}]
)
"
diff --git a/dev-python/starkbank-ecdsa/Manifest b/dev-python/starkbank-ecdsa/Manifest
new file mode 100644
index 000000000..08a938109
--- /dev/null
+++ b/dev-python/starkbank-ecdsa/Manifest
@@ -0,0 +1 @@
+DIST starkbank-ecdsa-2.2.0.tar.gz 14690 BLAKE2B 96689eb9737aa55bfaf35245124a01cbc7f7f0e6b016bb89139280eebb807cbb4972327b5a95543f7725bb3caa5c724f64307c2a23b7b22c8cc092987f0c5bb7 SHA512 71a3717f6af39969b9d5f0ec187e4a6dbad0a3554b114ac64cf5bcaaf52ca297c3612e8ebf8a9073d9394351850a3a1a16a2e6a38d6994c8fd90d9f129749686
diff --git a/dev-python/starkbank-ecdsa/metadata.xml b/dev-python/starkbank-ecdsa/metadata.xml
new file mode 100644
index 000000000..0d41dbec9
--- /dev/null
+++ b/dev-python/starkbank-ecdsa/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>stepan_kk@pm.me</email>
+ <name>Stepan Kulikov</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">starkbank/ecdsa-python</remote-id>
+ <remote-id type="pypi">starkbank-ecdsa</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/starkbank-ecdsa/starkbank-ecdsa-2.2.0.ebuild b/dev-python/starkbank-ecdsa/starkbank-ecdsa-2.2.0.ebuild
new file mode 100644
index 000000000..1312f8ef4
--- /dev/null
+++ b/dev-python/starkbank-ecdsa/starkbank-ecdsa-2.2.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A lightweight and fast pure python ECDSA library"
+HOMEPAGE="https://github.com/starkbank/ecdsa-python/ https://pypi.org/project/starkbank-ecdsa/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DOCS="README.md"
+
+BDEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest[${PYTHON_USEDEP}]
+ )"
+
+python_test() {
+ py.test -v -v || die
+}
+
+distutils_enable_tests pytest
+
diff --git a/dev-python/starlette/Manifest b/dev-python/starlette/Manifest
deleted file mode 100644
index 18540adc6..000000000
--- a/dev-python/starlette/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST starlette-0.14.2.tar.gz 438350 BLAKE2B 862f1f6526f194e0dfd52e14860b63fbd97507a4a6d694d71e44041edbb435608a1e3511144e6fb3e8b39405672baf81e00685ad3928aebb244e566cfcd665d0 SHA512 4321d3d1890c49dea53d7923b456772ecc9d28083d28392e0e9cd1f39f33180cc1cb28914bee443849fa8c87015dd99610ea18e03f0101b0eaf3f8df56249fab
diff --git a/dev-python/starlette/metadata.xml b/dev-python/starlette/metadata.xml
deleted file mode 100644
index a507be0a7..000000000
--- a/dev-python/starlette/metadata.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-
-<pkgmetadata>
- <maintainer type="person">
- <email>piotr.staroszczyk@get24.org</email>
- <name>Piotr Staroszczyk</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/starlette/starlette-0.14.2.ebuild b/dev-python/starlette/starlette-0.14.2.ebuild
deleted file mode 100644
index ce6438b91..000000000
--- a/dev-python/starlette/starlette-0.14.2.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-DOCS_BUILDER="mkdocs"
-DOCS_DEPEND="dev-python/mkdocs-material"
-DOCS_AUTODOC=1
-
-inherit distutils-r1 docs optfeature
-
-DESCRIPTION="The little ASGI framework that shines"
-HOMEPAGE="
- https://www.starlette.io/
- https://github.com/encode/starlette
-"
-SRC_URI="https://github.com/encode/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-BDEPEND="test? (
- dev-python/aiofiles[${PYTHON_USEDEP}]
- dev-python/aiosqlite[${PYTHON_USEDEP}]
- dev-python/databases[${PYTHON_USEDEP}]
- dev-python/graphene[${PYTHON_USEDEP}]
- dev-python/itsdangerous[${PYTHON_USEDEP}]
- dev-python/jinja[${PYTHON_USEDEP}]
- dev-python/python-multipart[${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- dev-python/sse-starlette[${PYTHON_USEDEP}]
- dev-python/ujson[${PYTHON_USEDEP}]
-)"
-
-python_prepare_all() {
- # do not install LICENSE to /usr/
- sed -i -e '/data_files/d' setup.py || die
- # do not depend on pytest-cov and fail on DeprecationWarning
- rm setup.cfg || die
- # ModuleNotFoundError: No module named 'graphql.execution.executors'
- rm tests/test_graphql.py || die
-
- distutils-r1_python_prepare_all
-}
-
-pkg_postinst() {
- optfeature "Required if you want to use FileResponse or StaticFiles" dev-python/aiofiles
- optfeature "Required if you want to use Jinja2Templates" dev-python/jinja
- optfeature "Required if you want to support form parsing, with request.form()" dev-python/python-multipart
- optfeature "Required for SessionMiddleware support." dev-python/itsdangerous
- optfeature "Required for SchemaGenerator support." dev-python/pyyaml
- optfeature "Required for GraphQLApp support" dev-python/graphene
- optfeature "Required if you want to use UJSONResponse." dev-python/ujson
- optfeature "Server Sent Events" dev-python/sse-starlette
-}
-
-distutils_enable_tests pytest
diff --git a/dev-python/statmake/Manifest b/dev-python/statmake/Manifest
deleted file mode 100644
index fac72d7bb..000000000
--- a/dev-python/statmake/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST statmake-0.3.0.tar.gz 34099 BLAKE2B 42286bc7f56a74a4aa4baeda58f71ef8122caa5b9a4fe84605c0e66f659000ca969c038bb4c080734465349ef7bffeada90064f00d47ba372a0c7a4a5c54a57c SHA512 b24452e2e670900378d0a8a725810140928da2a6dbb282597ac0f2202ffababa70de9a0bbfa2fe0bd77ff9251f3c5bfbf6735c42b4a246eb8ef061b809da0db3
diff --git a/dev-python/statmake/metadata.xml b/dev-python/statmake/metadata.xml
deleted file mode 100644
index b0d7494e5..000000000
--- a/dev-python/statmake/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/daltonmaag/statmake/issues</bugs-to>
- <remote-id type="github">daltonmaag/statmake</remote-id>
- <remote-id type="pypi">statmake</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/statmake/statmake-0.3.0-r1.ebuild b/dev-python/statmake/statmake-0.3.0-r1.ebuild
deleted file mode 100644
index f8930f071..000000000
--- a/dev-python/statmake/statmake-0.3.0-r1.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_SINGLE_IMPL=1
-DISTUTILS_USE_SETUPTOOLS=pyproject.toml
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/daltonmaag/statmake/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64"
-DESCRIPTION="Generate STAT tables for variable fonts from .stylespace files"
-HOMEPAGE="https://github.com/daltonmaag/statmake"
-LICENSE="MIT"
-SLOT="0"
-IUSE="test"
-
-RDEPEND="
- $(python_gen_cond_dep '
- dev-python/cattrs[${PYTHON_USEDEP}]
- dev-python/fonttools[${PYTHON_USEDEP}]
- ')
-"
-DEPEND="
- ${RDEPEND}
- test? (
- $(python_gen_cond_dep 'dev-python/ufo2ft[${PYTHON_USEDEP}]')
- )
-"
-
-distutils_enable_tests pytest
-
-python_install() {
- distutils-r1_python_install --skip-build
- python_domodule "src/${PN}"
-}
-
-python_test() {
- local -x PYTHONPATH="${S}/src:${PYTHONPATH}"
- epytest -vv || die "Tests fail with ${EPYTHON}"
-}
diff --git a/dev-python/stdlibs/Manifest b/dev-python/stdlibs/Manifest
new file mode 100644
index 000000000..a13d366dc
--- /dev/null
+++ b/dev-python/stdlibs/Manifest
@@ -0,0 +1 @@
+DIST stdlibs-2022.6.8.tar.gz 22510 BLAKE2B 4daa85811da7c9b2c206182c6a8f45738311d751519670a53d184c1524aa9d953ed85281a8da8ea95fe6f4ce3c23d8ffdf5866ebb5ca7a88d877505ff4719c97 SHA512 085e2186a8e4bdc78a50cd4628d8f8a30703e5fc0b2b5b6d3c3e2a7ebae6fe776a04ef5049475b1c1246824962ff2283908572140ee2a2e6343b93e378f3e9ff
diff --git a/dev-python/stdlibs/metadata.xml b/dev-python/stdlibs/metadata.xml
new file mode 100644
index 000000000..b1ca0e69d
--- /dev/null
+++ b/dev-python/stdlibs/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">omnilib/stdlibs</remote-id>
+ <remote-id type="pypi">stdlibs</remote-id>
+ <doc>https://stdlibs.omnilib.dev/en/latest/</doc>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/stdlibs/stdlibs-2022.6.8.ebuild b/dev-python/stdlibs/stdlibs-2022.6.8.ebuild
new file mode 100644
index 000000000..f565569f1
--- /dev/null
+++ b/dev-python/stdlibs/stdlibs-2022.6.8.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="What's in the Python stdlib"
+HOMEPAGE="https://github.com/omnilib/stdlibs/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests unittest
diff --git a/dev-python/steam/Manifest b/dev-python/steam/Manifest
new file mode 100644
index 000000000..35bdfd271
--- /dev/null
+++ b/dev-python/steam/Manifest
@@ -0,0 +1 @@
+DIST steam-1.4.4.tar.gz 878478 BLAKE2B 755b37f0cae19f0f3eb7609931f79c15421a6c37f2ef178d809251394227b777f8626c8535d13b72257eaa9255eded27150a1018a4bff1d24cf29217224e7cab SHA512 86ddbdc9b4d9bb2b1717f81b003a6884bbe44b55e632ea0d03ddc1866215210d4d3394f35773f0cba95623d7d94f6b270e3133eab80663947c07018094af5b45
diff --git a/dev-python/steam/metadata.xml b/dev-python/steam/metadata.xml
new file mode 100644
index 000000000..79d8d284e
--- /dev/null
+++ b/dev-python/steam/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gonegrier.duarte@gmail.com</email>
+ <name>Gonçalo Negrier Duarte</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ValvePython/steam</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/steam/steam-1.4.4.ebuild b/dev-python/steam/steam-1.4.4.ebuild
new file mode 100644
index 000000000..3c6b1d2eb
--- /dev/null
+++ b/dev-python/steam/steam-1.4.4.ebuild
@@ -0,0 +1,34 @@
+# 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_{9..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python package for interacting with Steam"
+HOMEPAGE="https://github.com/ValvePython/steam"
+SRC_URI="https://github.com/ValvePython/steam/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="dev-python/six
+ dev-python/pycryptodome
+ dev-python/requests
+ dev-python/urllib3
+ dev-python/vdf
+ dev-python/protobuf-python
+ dev-python/cachetools
+"
+
+src_compile() {
+ distutils-r1_src_compile
+}
+
+src_install() {
+ distutils-r1_src_install
+}
diff --git a/dev-python/steam/steam-9999.ebuild b/dev-python/steam/steam-9999.ebuild
new file mode 100644
index 000000000..a9ddbbb09
--- /dev/null
+++ b/dev-python/steam/steam-9999.ebuild
@@ -0,0 +1,32 @@
+# 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_{9..12} )
+
+inherit git-r3 distutils-r1
+
+EGIT_REPO_URI="https://github.com/ValvePython/steam.git"
+DESCRIPTION="Python package for interacting with Steam"
+HOMEPAGE="https://github.com/ValvePython/steam"
+
+DEPEND="dev-python/six
+ dev-python/pycryptodome
+ dev-python/requests
+ dev-python/urllib3
+ dev-python/vdf
+ dev-python/protobuf-python
+ dev-python/cachetools
+"
+LICENSE="GPL-3"
+SLOT="0"
+
+src_compile() {
+ distutils-r1_src_compile
+}
+
+src_install() {
+ distutils-r1_src_install
+}
diff --git a/dev-python/stone/Manifest b/dev-python/stone/Manifest
new file mode 100644
index 000000000..36cafb547
--- /dev/null
+++ b/dev-python/stone/Manifest
@@ -0,0 +1 @@
+DIST stone-3.3.5.gh.tar.gz 281069 BLAKE2B 659048ef899c0a40d466d2c7cafca69ddbfea79f0efa1a95d153dec1a7382903c706d97e7ee71346235fd2d69e8121ef5c822f97cbadefd92eb349e40644fc84 SHA512 28431dabec6f5698b40b7f759a56a330b38266ce9824132d46cda1d2453199f44913469e3ae3b13e466f8023d154a896bc75affd67aa9a385de9b6df8cf99afa
diff --git a/dev-python/stone/metadata.xml b/dev-python/stone/metadata.xml
new file mode 100644
index 000000000..9c4da012b
--- /dev/null
+++ b/dev-python/stone/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>ceamac@gentoo.org</email>
+ <description>Primary maintainer</description>
+</maintainer>
+<upstream>
+ <remote-id type="github">dropbox/stone</remote-id>
+ <remote-id type="pypi">stone</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/dev-python/stone/stone-3.3.5.ebuild b/dev-python/stone/stone-3.3.5.ebuild
new file mode 100644
index 000000000..1e46f7315
--- /dev/null
+++ b/dev-python/stone/stone-3.3.5.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="The Official Api Spec Language for Dropbox"
+HOMEPAGE="
+ https://www.dropbox.com/developers
+ https://github.com/dropbox/stone
+ https://pypi.org/project/stone/
+"
+SRC_URI="https://github.com/dropbox/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/ply-3.4[${PYTHON_USEDEP}]
+ >=dev-python/six-1.3.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # Don't run tests via setup.py pytest
+ sed -i -e "/'pytest-runner .*',/d" setup.py || die
+
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/strictyaml/Manifest b/dev-python/strictyaml/Manifest
deleted file mode 100644
index d1006928d..000000000
--- a/dev-python/strictyaml/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST strictyaml-1.3.2.tar.gz 115883 BLAKE2B 5e56bd46c7ecf8194ec786282ad569b6b50c2151f4250ab93c62df795d5d028e718a91bef329bf4c7fff4117433cf8fe9e24fc96a2c11db4434ac2eb914d2a45 SHA512 35d1a0fc48518911944ddaff37d71f9c2ad8bdc8f2e7a94693c88f7283da39cac4ff28eccdf01be41295649cd362a1fa93c9022e19e9837c392e7e31800205e9
diff --git a/dev-python/strictyaml/metadata.xml b/dev-python/strictyaml/metadata.xml
deleted file mode 100644
index 072803ddd..000000000
--- a/dev-python/strictyaml/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/crdoconnor/strictyaml/issues</bugs-to>
- <remote-id type="github">crdoconnor/strictyaml</remote-id>
- <remote-id type="pypi">strictyaml</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/strictyaml/strictyaml-1.3.2.ebuild b/dev-python/strictyaml/strictyaml-1.3.2.ebuild
deleted file mode 100644
index d83fc5439..000000000
--- a/dev-python/strictyaml/strictyaml-1.3.2.ebuild
+++ /dev/null
@@ -1,21 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} pypy3 )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/crdoconnor/strictyaml/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64 ~x86"
-DESCRIPTION="A type-safe YAML parser built atop ruamel.yaml"
-HOMEPAGE="https://github.com/crdoconnor/strictyaml"
-LICENSE="MIT"
-SLOT="0"
-
-RDEPEND="
- dev-python/ruamel-yaml[${PYTHON_USEDEP}]
- dev-python/python-dateutil[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
diff --git a/dev-python/stringbrewer/Manifest b/dev-python/stringbrewer/Manifest
deleted file mode 100644
index 0cc99f6dc..000000000
--- a/dev-python/stringbrewer/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST stringbrewer-0.0.1.tar.gz 3982 BLAKE2B fc4515776662aafb31fac47955979bc1b9044ba1aecb3a66b21c70fea79a455ce76fd1ccccbebb1dc090773cf09e2d36115289e12ab6d218a21be04f3d2d45f3 SHA512 3a87c99d5dc4294591e7ddea9e0b86cedabc29d203cb6eb8d36810380e84cfdc546cb506c6ed7da439935289418b8e27f91e57d71eb6c6a8bdcf207e812a48e7
diff --git a/dev-python/stringbrewer/metadata.xml b/dev-python/stringbrewer/metadata.xml
deleted file mode 100644
index 80c9358d3..000000000
--- a/dev-python/stringbrewer/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/simoncozens/stringbrewer/issues</bugs-to>
- <remote-id type="github">simoncozens/stringbrewer</remote-id>
- <remote-id type="pypi">stringbrewer</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/stringbrewer/stringbrewer-0.0.1.ebuild b/dev-python/stringbrewer/stringbrewer-0.0.1.ebuild
deleted file mode 100644
index d77330b25..000000000
--- a/dev-python/stringbrewer/stringbrewer-0.0.1.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="Generate random strings matching a pattern"
-HOMEPAGE="https://github.com/simoncozens/stringbrewer"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-KEYWORDS="~amd64"
-SLOT="0"
-
-RDEPEND="
- dev-python/sre_yield[${PYTHON_USEDEP}]
- dev-python/rstr[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
diff --git a/dev-python/stringcase/metadata.xml b/dev-python/stringcase/metadata.xml
index 812742ca6..bc37fdd95 100644
--- a/dev-python/stringcase/metadata.xml
+++ b/dev-python/stringcase/metadata.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
<pkgmetadata>
<maintainer type="person">
- <email>shaoyu0209@tuta.io</email>
+ <email>dev@notyourcomputer.net</email>
<name>Shaoyu Tseng</name>
</maintainer>
<upstream>
diff --git a/dev-python/stringcase/stringcase-1.2.0.ebuild b/dev-python/stringcase/stringcase-1.2.0-r1.ebuild
index c91f56e5e..3910056d8 100644
--- a/dev-python/stringcase/stringcase-1.2.0.ebuild
+++ b/dev-python/stringcase/stringcase-1.2.0-r1.ebuild
@@ -3,15 +3,14 @@
EAPI=7
-PYTHON_COMPAT=( python3_{8..10} )
+PYTHON_COMPAT=( python3_{10..11} )
DISTUTILS_USE_SETUPTOOLS=no
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="Convert string cases between camel case, pascal case, snake case etc."
HOMEPAGE="https://github.com/okunishinishi/python-stringcase"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
diff --git a/dev-python/survey/Manifest b/dev-python/survey/Manifest
new file mode 100644
index 000000000..94991240e
--- /dev/null
+++ b/dev-python/survey/Manifest
@@ -0,0 +1,2 @@
+DIST survey-4.5.4.tar.gz 831109 BLAKE2B 00065211437f4c6c820aca5c511395625da7be9415218d6261005aff946b19a3e65cc31189a6aef755ed88ce81f309ac2eabe23ea7f1e2f359007b4fe9172f96 SHA512 045989ca95e3fa9a840ad8d37a040f46bf3f22a858dd7b826fecf88d4e53b6b14e285ef3bf266add496da2d5ffd58971c2456b4375362e24c1a071fc910a03f4
+DIST survey-5.3.0.gh.tar.gz 1564816 BLAKE2B 5f4759c2e824499ee4b7569ae906c73af60f7fa080f02022bec1cd393b1ddf9b563708ad4363d48f12448210fe24125d79526818e09c72be1b96997a2367e271 SHA512 690b9ffbd75bd70d838115430fb6d12d898a2b7b28b1d5e00dcfb8d09490b1f3663632a8b6e0b05fe8d50633b19c33cc13a6776168491a2f6c881b5764397caf
diff --git a/dev-python/survey/metadata.xml b/dev-python/survey/metadata.xml
new file mode 100644
index 000000000..c9e719e21
--- /dev/null
+++ b/dev-python/survey/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>ceamac@gentoo.org</email>
+ <description>Primary maintainer</description>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">Exahilosys/survey</remote-id>
+ <remote-id type="pypi">survey</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/survey/survey-4.5.4.ebuild b/dev-python/survey/survey-4.5.4.ebuild
new file mode 100644
index 000000000..5394b397d
--- /dev/null
+++ b/dev-python/survey/survey-4.5.4.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..11} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="A simple library for creating beautiful interactive prompts"
+HOMEPAGE="
+ https://github.com/Exahilosys/survey
+ https://pypi.org/project/survey/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-autodoc-typehints \
+ dev-python/sphinx-paramlinks \
+ dev-python/sphinx-rtd-theme
diff --git a/dev-python/survey/survey-5.3.0.ebuild b/dev-python/survey/survey-5.3.0.ebuild
new file mode 100644
index 000000000..5d68e2cb2
--- /dev/null
+++ b/dev-python/survey/survey-5.3.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2021-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1
+
+DESCRIPTION="A simple library for creating beautiful interactive prompts"
+HOMEPAGE="
+ https://github.com/Exahilosys/survey
+ https://pypi.org/project/survey/
+"
+MY_PV=${PV/_/-}
+SRC_URI="https://github.com/Exahilosys/survey/archive/v${MY_PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}"/${PN}-${MY_PV}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+"
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-autodoc-typehints \
+ dev-python/sphinx-paramlinks \
+ dev-python/sphinx-rtd-theme
+
+src_configure() {
+ distutils-r1_src_configure
+ export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+}
diff --git a/dev-python/svgelements/Manifest b/dev-python/svgelements/Manifest
new file mode 100644
index 000000000..ed721653e
--- /dev/null
+++ b/dev-python/svgelements/Manifest
@@ -0,0 +1 @@
+DIST svgelements-1.9.6.gh.tar.gz 134884 BLAKE2B c6b5c3e3b7a27b0972c78e8ad290c2880b7418d11cded3769d3c591ddcefa85d5e4ddcd5df186e181178cc6ca2054d1a48ea4a715f3506fcd16d53d5baed206f SHA512 c92004a103cb0073f91e0d4f2710a841855ba5079924d106db33df8994c482656a7c3358336c3fcae3127f2b6e668595b2339913e7c8f8364277fedbe0b854c3
diff --git a/dev-python/svgelements/files/fix_tests.patch b/dev-python/svgelements/files/fix_tests.patch
new file mode 100644
index 000000000..413e29914
--- /dev/null
+++ b/dev-python/svgelements/files/fix_tests.patch
@@ -0,0 +1,20 @@
+Fix https://bugs.gentoo.org/927876
+--- a/test/test_cubic_bezier.py
++++ b/test/test_cubic_bezier.py
+@@ -79,4 +79,4 @@ class TestElementCubicBezierPoint(unittest.TestCase):
+ p = Path(transform=Matrix(682.657124793113, 0.000000000003, -0.000000000003, 682.657124793113, 257913.248909660178, -507946.354527872754))
+ p += CubicBezier(start=Point(-117.139521365,1480.99923469), control1=Point(-41.342266634,1505.62725567), control2=Point(40.3422666342,1505.62725567), end=Point(116.139521365,1480.99923469))
+ bounds = p.bbox()
+- self.assertNotAlmostEquals(bounds[1], bounds[3], delta=100)
++ self.assertNotAlmostEqual(bounds[1], bounds[3], delta=100)
+--- a/test/test_write.py
++++ b/test/test_write.py
+@@ -24,7 +24,7 @@ class TestElementWrite(unittest.TestCase):
+
+ def test_write_group(self):
+ g = Group()
+- self.assertEquals(g.string_xml(), "<g />")
++ self.assertEqual(g.string_xml(), "<g />")
+
+ def test_write_rect(self):
+ r = Rect("1in", "1in", "3in", "3in", rx="5%")
diff --git a/dev-python/svgelements/metadata.xml b/dev-python/svgelements/metadata.xml
new file mode 100644
index 000000000..008cf8178
--- /dev/null
+++ b/dev-python/svgelements/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">svgelements</remote-id>
+ <remote-id type="github">meerk40t/svgelements</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/svgelements/svgelements-1.9.6-r1.ebuild b/dev-python/svgelements/svgelements-1.9.6-r1.ebuild
new file mode 100644
index 000000000..de37cc0d9
--- /dev/null
+++ b/dev-python/svgelements/svgelements-1.9.6-r1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="SVG Parsing for Elements, Paths, and other SVG Objects."
+HOMEPAGE="https://github.com/meerk40t/svgelements https://pypi.org/project/svgelements"
+SRC_URI="https://github.com/meerk40t/svgelements/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+PATCHES=(
+ "${FILESDIR}/fix_tests.patch"
+)
+
+BDEPEND="
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/scipy[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${BDEPEND}"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ default
+ mv "${S}/test" "${S}_tests"
+}
+
+python_test() {
+ cd "${T}" || die
+ epytest "${S}_tests"
+}
+
+pkg_postinst() {
+ optfeature "getting exact value for arc lenght computation" dev-python/scipy
+ optfeature "loading images" dev-python/pillow
+ optfeature "speeding up linearization for Shapes" dev-python/numpy
+}
diff --git a/dev-python/sysv_ipc/Manifest b/dev-python/sysv_ipc/Manifest
deleted file mode 100644
index 7e142cd84..000000000
--- a/dev-python/sysv_ipc/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST sysv_ipc-1.1.0.tar.gz 99448 BLAKE2B c8f5be7169a720a3e104072eea94d4b024d515efb6ca3e3d8e73ab45750a992bc5e0dc26c4b4483d91d9dfed7bbbe619efb01e76cd6bc598bce9967835b4b3a9 SHA512 30615c7fcd2ce45b5602fbd61bc2061f5fd44eb7d8ec0bcfd2979e2e750b0f7093bad938cb715ba65dac306c576f76973d462ecc52785fc8f7bacc70a84d79ff
diff --git a/dev-python/sysv_ipc/metadata.xml b/dev-python/sysv_ipc/metadata.xml
deleted file mode 100644
index cd174bd3e..000000000
--- a/dev-python/sysv_ipc/metadata.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>telans@posteo.de</email>
- <name>James Beddek</name>
- </maintainer>
-</pkgmetadata>
diff --git a/dev-python/sysv_ipc/sysv_ipc-1.1.0.ebuild b/dev-python/sysv_ipc/sysv_ipc-1.1.0.ebuild
deleted file mode 100644
index d9d1e0c30..000000000
--- a/dev-python/sysv_ipc/sysv_ipc-1.1.0.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 2020-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-inherit distutils-r1
-
-DESCRIPTION="System V IPC primitives for python"
-HOMEPAGE="http://semanchuk.com/philip/sysv_ipc/"
-SRC_URI="http://semanchuk.com/philip/${PN}/${P}.tar.gz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-DOCS=( README ReadMe.html history.html )
-
-distutils_enable_tests unittest
diff --git a/dev-python/taskflow/Manifest b/dev-python/taskflow/Manifest
deleted file mode 100644
index ff11b2e60..000000000
--- a/dev-python/taskflow/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST taskflow-4.5.0.tar.gz 1068584 BLAKE2B 53d3541f99df2b38f1b5ee822017d71d9fe0188b4c8542fed328a316c35215a093a49058638cc6d28dcb85a0d057505958f6e814db010fcb9b17040aa281c93b SHA512 d5245cd5c80ace671f84d222c874db8078d277cbf95b7f03bb1b6b55bb72dad9f8a97d11d2e7a427ffd316b792c18c270018f802fe420b4ed5ab42bfa6f47684
diff --git a/dev-python/taskflow/metadata.xml b/dev-python/taskflow/metadata.xml
deleted file mode 100644
index 81fb55ab9..000000000
--- a/dev-python/taskflow/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">taskflow</remote-id>
- <remote-id type="github">openstack/taskflow</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/taskflow/taskflow-4.5.0.ebuild b/dev-python/taskflow/taskflow-4.5.0.ebuild
deleted file mode 100644
index a059c53fb..000000000
--- a/dev-python/taskflow/taskflow-4.5.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_8 )
-
-inherit distutils-r1
-
-DESCRIPTION="A library to do [jobs, tasks, flows] in a HA manner using different backends"
-HOMEPAGE="https://github.com/openstack/taskflow"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-
-DEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
-"
-RDEPEND="
- >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
- !~dev-python/pbr-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
- >=dev-python/futurist-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/fasteners-0.7.0[${PYTHON_USEDEP}]
- >=dev-python/networkx-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-3.2.0[${PYTHON_USEDEP}]
- >=dev-python/automaton-1.9.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
- !~dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
- >=dev-python/tenacity-6.0.0[${PYTHON_USEDEP}]
- >=dev-python/cachetools-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/pydot-1.2.4[${PYTHON_USEDEP}]
-"
diff --git a/dev-python/templated-dictionary/Manifest b/dev-python/templated-dictionary/Manifest
new file mode 100644
index 000000000..f3a177a95
--- /dev/null
+++ b/dev-python/templated-dictionary/Manifest
@@ -0,0 +1 @@
+DIST templated-dictionary-1.4.gh.tar.gz 15384 BLAKE2B 50e5cb2762433526c6eed4f3f77050aae4c9d3a99b4340f1f8b0730825761be03e85b456855939089b26c807acd800d122d2dda5a688d73ab342c31d8af1d797 SHA512 d0c01cf53688192d29cea24d98e86d9f3f555c73ddbdf36297c0e0974b75b88257deb1a70a61e7197f90d6c62ce24fa524d4cdba561742401a439e45ae549fc1
diff --git a/dev-python/templated-dictionary/metadata.xml b/dev-python/templated-dictionary/metadata.xml
new file mode 100644
index 000000000..f5bcd8f1e
--- /dev/null
+++ b/dev-python/templated-dictionary/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>pastalian46@gmail.com</email>
+ <name>Takuya Wakazono</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">xsuchy/templated-dictionary</remote-id>
+ <remote-id type="pypi">templated-dictionary</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/templated-dictionary/templated-dictionary-1.4.ebuild b/dev-python/templated-dictionary/templated-dictionary-1.4.ebuild
new file mode 100644
index 000000000..e5039b1aa
--- /dev/null
+++ b/dev-python/templated-dictionary/templated-dictionary-1.4.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python dictionary with Jinja2 expansion"
+HOMEPAGE="
+ https://github.com/xsuchy/templated-dictionary/
+ https://pypi.org/project/templated-dictionary/
+"
+SRC_URI="https://github.com/xsuchy/templated-dictionary/archive/refs/tags/python-${P}-1.tar.gz -> ${P}.gh.tar.gz"
+
+S="${WORKDIR}/${PN}-python-${P}-1"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/jinja[${PYTHON_USEDEP}]"
diff --git a/dev-python/tempus-themes/Manifest b/dev-python/tempus-themes/Manifest
new file mode 100644
index 000000000..0505f7dcb
--- /dev/null
+++ b/dev-python/tempus-themes/Manifest
@@ -0,0 +1 @@
+DIST tempus-themes-2.3.0.20220206.tar.gz 19418 BLAKE2B d6962ef10ea8f5a34e44f64fbc6d4937d0b738e18f5c16b5832f80221ceb184c96f631c18d4d711285fb872ba911732128768fc7e6f9e2a1cc6c43d723273d79 SHA512 8677a3522eba8b783678c01e19d0977a930202362bab4d26e7c729270e2d6f2aeadf0979d69afbc91965e1e94fc9ecaebef796326a0b6b195cb0fe1a87540c62
diff --git a/dev-python/tempus-themes/metadata.xml b/dev-python/tempus-themes/metadata.xml
new file mode 100644
index 000000000..604823e6a
--- /dev/null
+++ b/dev-python/tempus-themes/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">tempus-themes</remote-id>
+ <remote-id type="gitlab">protesilaos/tempus-themes-pygments</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/tempus-themes/tempus-themes-2.3.0.20220206.ebuild b/dev-python/tempus-themes/tempus-themes-2.3.0.20220206.ebuild
new file mode 100644
index 000000000..02743ed67
--- /dev/null
+++ b/dev-python/tempus-themes/tempus-themes-2.3.0.20220206.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+inherit distutils-r1 pypi
+
+DESCRIPTION="Accessible themes for Pygments"
+HOMEPAGE="
+ https://pypi.org/project/tempus-themes/
+ https://gitlab.com/protesilaos/tempus-themes-generator
+"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/pygments[${PYTHON_USEDEP}]"
diff --git a/dev-python/tempy/Manifest b/dev-python/tempy/Manifest
new file mode 100644
index 000000000..7e51b01e0
--- /dev/null
+++ b/dev-python/tempy/Manifest
@@ -0,0 +1 @@
+DIST tempy-1.4.0.gh.tar.gz 1546608 BLAKE2B c99d18b4b2ef5d78728cb12f4c0d532b4b51b39bd270aac25a1760ff16db2b91d0da2f8f3f5037d18ea8370ce391e1d1c5e6f5a2dbf10e99afe908eca958c10b SHA512 242ce3a3d3d9cbc65b51b855f80470dd3a3c22e13f6ecef38ee77a53d621a79671b2901344c7cc93b95f370ec78b2b136281f292fb49a1f8528d016025154db0
diff --git a/dev-python/tempy/metadata.xml b/dev-python/tempy/metadata.xml
new file mode 100644
index 000000000..9793a2282
--- /dev/null
+++ b/dev-python/tempy/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">noprobelm/tempy</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/tempy/tempy-1.4.0.ebuild b/dev-python/tempy/tempy-1.4.0.ebuild
new file mode 100644
index 000000000..4c061a3fc
--- /dev/null
+++ b/dev-python/tempy/tempy-1.4.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="A simple, visually pleasing weather report in your terminal"
+HOMEPAGE="https://github.com/noprobelm/tempy"
+SRC_URI="https://github.com/noprobelm/tempy/archive/fb0db08.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/tempy-fb0db0841e097de4ed819066a45933748172e02a"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+RESTRICT="test"
+# We need https://github.com/darrenburns/ward, which is not in GURU, gentoo, or any overlay I could find.
+# When I have more time, I will write the ebuild and remove this.
+
+RDEPEND="
+ dev-python/rich[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+pkg_postinst() {
+ elog By default, tempy is using the API key of the developper by making requests throught their proxy server.
+ elog You can register your own API key at https://www.weatherapi.com, and store it in '$HOME/.config/tempyrc'.
+}
diff --git a/dev-python/termynal/Manifest b/dev-python/termynal/Manifest
new file mode 100644
index 000000000..14ea6f747
--- /dev/null
+++ b/dev-python/termynal/Manifest
@@ -0,0 +1 @@
+DIST termynal-0.12.1.gh.tar.gz 149652 BLAKE2B bcb66711efd3b306327e2010fd426bd22fb3a8f6d53ad6510f2ebd02d34879e05f6c8d82e5949a95b3a96a7cc43d24783897a6999644c0683a303404f0be23c7 SHA512 a8843acb52f5ee1cba3595445ff29972772b6ac006aad35f1fb8e2459073407ad32e044f4767d1ee191486af09fb11d62faa9dc70761e0ad779be6ecf65fc8c5
diff --git a/dev-python/termynal/metadata.xml b/dev-python/termynal/metadata.xml
new file mode 100644
index 000000000..fb178306b
--- /dev/null
+++ b/dev-python/termynal/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">termynal/termynal.py.git</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/termynal/termynal-0.12.1.ebuild b/dev-python/termynal/termynal-0.12.1.ebuild
new file mode 100644
index 000000000..8b8b8f8ea
--- /dev/null
+++ b/dev-python/termynal/termynal-0.12.1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..12} )
+
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="
+ dev-python/mkdocs-material
+ dev-python/markdown-include
+ dev-python/pymdown-extensions
+"
+
+inherit distutils-r1 docs
+
+DESCRIPTION="A lightweight and modern animated terminal window"
+HOMEPAGE="https://termynal.github.io/termynal.py/ https://github.com/termynal/termynal.py"
+SRC_URI="https://github.com/termynal/${PN}.py/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${PN}.py-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/markdown[${PYTHON_USEDEP}]
+ >=dev-python/mkdocs-1.4[${PYTHON_USEDEP}]
+ <dev-python/mkdocs-2.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/pytest-mock-3.11.1[${PYTHON_USEDEP}]
+ <dev-python/pytest-mock-4.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-6.0.1[${PYTHON_USEDEP}]
+ <dev-python/pyyaml-7.0.0[${PYTHON_USEDEP}]
+ dev-util/ruff
+ )
+"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests pytest
diff --git a/dev-python/textual-dev/Manifest b/dev-python/textual-dev/Manifest
new file mode 100644
index 000000000..31ebc51a4
--- /dev/null
+++ b/dev-python/textual-dev/Manifest
@@ -0,0 +1 @@
+DIST textual-dev-1.5.1.gh.tar.gz 61043 BLAKE2B 9c208e8eb61121dadbae450d7027c436634796d428eed31d9550da738a60e1eb02a5a2ae45be1898595228776e73c8003ece652439fc81aa65f5bbbaf61118d7 SHA512 d34100a0bf92a43088f3f5ac7c911cc9e8aaa9f5eb04b9aab328518e66fb54e29ed47617323cc3c39fd77255f08b3f33087909f97d0e60d987706d991caca8b1
diff --git a/dev-python/textual-dev/metadata.xml b/dev-python/textual-dev/metadata.xml
new file mode 100644
index 000000000..eddcc4360
--- /dev/null
+++ b/dev-python/textual-dev/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">textual-dev</remote-id>
+ <remote-id type="github">Textualize/textual-dev</remote-id>
+ <doc>https://textual.textualize.io/</doc>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/textual-dev/textual-dev-1.5.1.ebuild b/dev-python/textual-dev/textual-dev-1.5.1.ebuild
new file mode 100644
index 000000000..d0cecdd30
--- /dev/null
+++ b/dev-python/textual-dev/textual-dev-1.5.1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Modern Text User Interface framework"
+HOMEPAGE="https://github.com/Textualize/textual-dev https://pypi.org/project/textual-dev/"
+SRC_URI="https://github.com/Textualize/textual-dev/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/textual-0.36.0[${PYTHON_USEDEP}]
+ >=dev-python/aiohttp-3.8.1[${PYTHON_USEDEP}]
+ >=dev-python/click-8.1.2[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-1.0.3[${PYTHON_USEDEP}]
+ =dev-python/typing-extensions-4*[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ test? (
+ ${RDEPEND}
+ dev-python/pytest-aiohttp[${PYTHON_USEDEP}]
+ >=dev-python/time-machine-2.6.0[${PYTHON_USEDEP}]
+ <dev-python/time-machine-3[${PYTHON_USEDEP}]
+ )
+"
+
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests pytest
diff --git a/dev-python/textual/Manifest b/dev-python/textual/Manifest
new file mode 100644
index 000000000..998d32c86
--- /dev/null
+++ b/dev-python/textual/Manifest
@@ -0,0 +1 @@
+DIST textual-0.58.1.gh.tar.gz 28246721 BLAKE2B 3ab2d8610677cc45d8cc8fdb07882e1ccc4f5a01555939cd9a39141de08e5ad774aad889d3716a033f7ab30ac9f1637d3ed8605e23f87d055726ab6aa1e2b75b SHA512 3cb8410a352a75555bb6d36e29e2ae6900e80cb18cf1f0f5c779f0858bb727a3b27a0e4342b692dbba096698a73564ede0ca9fb27f8a46e87eda4209034e8de3
diff --git a/dev-python/textual/files/fix-mkdocstrings.patch b/dev-python/textual/files/fix-mkdocstrings.patch
new file mode 100644
index 000000000..d1b13868f
--- /dev/null
+++ b/dev-python/textual/files/fix-mkdocstrings.patch
@@ -0,0 +1,26 @@
+diff --git a/docs/_templates/python/material/_base/class.html b/docs/_templates/python/material/_base/class.html
+index 120fe338f..731d2ae73 100644
+--- a/docs/_templates/python/material/_base/class.html
++++ b/docs/_templates/python/material/_base/class.html
+@@ -46,7 +46,7 @@
+ {% if "__init__" in class.members %}
+ {% with function = class.members["__init__"] %}
+ {% filter highlight(language="python", inline=False) -%}
+- def {% filter format_signature(config.line_length) %}
++ def {% filter format_signature(function, config.line_length) %}
+ __init__{% include "signature.html" with context %}
+ {% endfilter %}:
+ {% endfilter %}
+diff --git a/docs/_templates/python/material/_base/function.html b/docs/_templates/python/material/_base/function.html
+index 58a4c37ad..c5e574ffa 100644
+--- a/docs/_templates/python/material/_base/function.html
++++ b/docs/_templates/python/material/_base/function.html
+@@ -37,7 +37,7 @@
+
+ {% if config.separate_signature %}
+ {% filter highlight(language="python", inline=False) %}
+-def {% filter format_signature(config.line_length) %}
++def {% filter format_signature(function, config.line_length) %}
+ {% if show_full_path %}{{ function.path }}{% else %}{{ function.name }}{% endif %}
+ {% include "signature.html" with context %}
+ {% endfilter %}:
diff --git a/dev-python/textual/metadata.xml b/dev-python/textual/metadata.xml
new file mode 100644
index 000000000..35709d6f1
--- /dev/null
+++ b/dev-python/textual/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'https://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">textual</remote-id>
+ <remote-id type="github">Textualize/textual</remote-id>
+ <doc>https://textual.textualize.io/</doc>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/textual/textual-0.58.1.ebuild b/dev-python/textual/textual-0.58.1.ebuild
new file mode 100644
index 000000000..f85851e3e
--- /dev/null
+++ b/dev-python/textual/textual-0.58.1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..12} )
+
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="
+ dev-python/mkdocstrings
+ dev-python/mkdocstrings-python
+ dev-python/mkdocs-material
+ dev-python/mkdocs-exclude
+ dev-python/mkdocs-rss-plugin
+ dev-python/pytz
+"
+DOCS_INITIALIZE_GIT=1
+
+inherit distutils-r1 docs optfeature
+
+DESCRIPTION="Modern Text User Interface framework"
+HOMEPAGE="https://github.com/Textualize/textual https://pypi.org/project/textual/"
+SRC_URI="https://github.com/Textualize/textual/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/markdown-it-py-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/rich-13.3.3[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/httpx[${PYTHON_USEDEP}]
+ >=dev-python/textual-dev-1.2.0[${PYTHON_USEDEP}]
+ <dev-python/textual-dev-2.0.0[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/griffe[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/fix-mkdocstrings.patch"
+)
+
+EPYTEST_DESELECT=(
+ # Those tests ask to press keys
+ tests/snapshot_tests/test_snapshots.py
+ # Need a package that should be optional
+ tests/text_area/test_languages.py
+)
+distutils_enable_tests pytest
+
+python_compile_all() {
+ echo "INHERIT: mkdocs-offline.yml" > "${S}/mkdocs.yml"
+ grep -v "\- \"*[Bb]log" "${S}/mkdocs-nav.yml" >> "${S}/mkdocs.yml"
+ docs_compile
+ rm "${S}/mkdocs.yml"
+}
+
+pkg_postinst() {
+ optfeature "bindings for python" dev-python/tree-sitter
+ optfeature "support for [language]" dev-libs/tree-sitter-[language]
+}
diff --git a/dev-python/timeslot/Manifest b/dev-python/timeslot/Manifest
new file mode 100644
index 000000000..71eaefc65
--- /dev/null
+++ b/dev-python/timeslot/Manifest
@@ -0,0 +1 @@
+DIST timeslot-0.1.2.tar.gz 3156 BLAKE2B 8a5b87bae4c594534369a2508b32f714546235833db7ca2c56ccba43daf550263abb772001f6bb06428a4639a5187b9a6b5f95508c89641b99071adc05230467 SHA512 f3dec3e8022a8f61b67a19268d50f7a53749d3f4b1bc5f98384cd8a90d79e68d25fddca41c9099d651330a8d81aec15849b927b7dd470701a7f436c111dad1e3
diff --git a/dev-python/timeslot/metadata.xml b/dev-python/timeslot/metadata.xml
new file mode 100644
index 000000000..b1d0d919c
--- /dev/null
+++ b/dev-python/timeslot/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>davidroman96@gmail.com</email>
+ <name>David Roman</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ErikBjare/timeslot</remote-id>
+ <remote-id type="pypi">timeslot</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/timeslot/timeslot-0.1.2.ebuild b/dev-python/timeslot/timeslot-0.1.2.ebuild
new file mode 100644
index 000000000..b3739bed8
--- /dev/null
+++ b/dev-python/timeslot/timeslot-0.1.2.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Time slots/intervals with an arbitrary start and stop"
+HOMEPAGE="https://github.com/ErikBjare/timeslot"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# Not available for now
+RESTRICT="test"
diff --git a/dev-python/tinyrpc/Manifest b/dev-python/tinyrpc/Manifest
deleted file mode 100644
index 29ebab4d9..000000000
--- a/dev-python/tinyrpc/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tinyrpc-1.0.1.tar.gz 23299 BLAKE2B c1b5b9028f978594907db7d7e23b0d5b4a7fcfabb49e660a8fc5352462fd7995f841f08d96fa4845a1b82a0718cdcfd26e94901ceaecfd30bd11b917a0987fc7 SHA512 9a27e002959a54fae1ac8d89ac931cdd52b7ee96eb08c4c19f7eda4bc402834b53b0d9a3f0be857e5205df7e9597a1391e1376d6354a7d0b6085b81d8dc24b93
diff --git a/dev-python/tinyrpc/metadata.xml b/dev-python/tinyrpc/metadata.xml
deleted file mode 100644
index 769ecff90..000000000
--- a/dev-python/tinyrpc/metadata.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <remote-id type="github">mbr/tinyrpc</remote-id>
- <remote-id type="pypi">tinyrpc</remote-id>
- </upstream>
- <use>
- <flag name="gevent">Add support for gevent</flag>
- <flag name="httpclient">Add support for httpclient</flag>
- <flag name="jsonext">Add support for jsonext</flag>
- <flag name="websocket">Add support for websocket</flag>
- <flag name="wsgi">Add support for wsgi</flag>
- <flag name="zmq">Add support for zmq</flag>
- </use>
-</pkgmetadata>
diff --git a/dev-python/tinyrpc/tinyrpc-1.0.1.ebuild b/dev-python/tinyrpc/tinyrpc-1.0.1.ebuild
deleted file mode 100644
index 7a47e5733..000000000
--- a/dev-python/tinyrpc/tinyrpc-1.0.1.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 2019-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_8 )
-inherit distutils-r1
-
-DESCRIPTION="A protocol neutral RPC library that supports JSON-RPC and zmq."
-HOMEPAGE="https://github.com/mbr/tinyrpc"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="gevent httpclient jsonext websocket wsgi zmq"
-
-DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
-RDEPEND="${DEPEND}
- dev-python/six[${PYTHON_USEDEP}]
- gevent? ( dev-python/gevent[${PYTHON_USEDEP}] )
- httpclient? ( dev-python/requests[${PYTHON_USEDEP}]
- dev-python/websocket-client[${PYTHON_USEDEP}]
- dev-python/gevent-websocket[${PYTHON_USEDEP}]
- )
- websocket? ( dev-python/gevent-websocket[${PYTHON_USEDEP}] )
- wsgi? ( dev-python/werkzeug[${PYTHON_USEDEP}] )
- zmq? ( dev-python/pyzmq[${PYTHON_USEDEP}] )
- jsonext? ( dev-python/jsonext[${PYTHON_USEDEP}] )"
-BDEPEND=""
diff --git a/dev-python/tooz/Manifest b/dev-python/tooz/Manifest
deleted file mode 100644
index 6908457c7..000000000
--- a/dev-python/tooz/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST tooz-2.7.1.tar.gz 94084 BLAKE2B f2c49af8ba98144c61c9658d7737d737f0892bff92abe8830da6c0b7bd06905519f9a5c0e89c5d511705bc8ccbf764ad2bbb3bb12f175077ac0fd6896e0b4b23 SHA512 a2c4827daac059e1bf92789226f48c40a328db855b1455b06e9f8949f8e0ea685e6d0ca3fd7ff5b5b309f2f395e7d8e42c2585a68e2c0f3fd9149f0efc829c34
diff --git a/dev-python/tooz/metadata.xml b/dev-python/tooz/metadata.xml
deleted file mode 100644
index d7889cd64..000000000
--- a/dev-python/tooz/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
- The Tooz project aims at centralizing the most common distributed primitives like group membership protocol, lock service and leader election by providing a coordination API helping developers to build distributed applications.
- </longdescription>
- <stabilize-allarches/>
- <upstream>
- <remote-id type="pypi">tooz</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/tooz/tooz-2.7.1.ebuild b/dev-python/tooz/tooz-2.7.1.ebuild
deleted file mode 100644
index 613f957b2..000000000
--- a/dev-python/tooz/tooz-2.7.1.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python{3_7,3_8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Library centralizing the most common distributed primitives"
-HOMEPAGE="http://docs.openstack.org/developer/tooz/"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-CDEPEND=">=dev-python/pbr-1.8[${PYTHON_USEDEP}]"
-DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
- ${CDEPEND}"
-RDEPEND="${CDEPEND}
- >=dev-python/stevedore-1.17.1[${PYTHON_USEDEP}]
- >=dev-python/voluptuous-0.8.9[${PYTHON_USEDEP}]
- >=dev-python/msgpack-0.4.0[${PYTHON_USEDEP}]
- >=dev-python/fasteners-0.7.0[${PYTHON_USEDEP}]
- >=dev-python/tenacity-3.2.1[${PYTHON_USEDEP}]
- >=dev-python/futurist-1.2.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-utils-3.15.0[${PYTHON_USEDEP}]
- >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]"
-
-python_prepare_all() {
- # allow useage of renamed msgpack
- sed -i '/^msgpack/d' requirements.txt || die
- distutils-r1_python_prepare_all
-}
diff --git a/dev-python/toposort/Manifest b/dev-python/toposort/Manifest
deleted file mode 100644
index 6e30f532e..000000000
--- a/dev-python/toposort/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST toposort-1.6.tar.gz 11690 BLAKE2B a9a57fd182a3324d43112c3f84a20039f032d99bf2c35c6678a6a08c23b123f18610f460529dd39c769b935d98270a25ded2f1a483e4e6f06d3ccc501b340cb8 SHA512 8dc30b5d5a6f476756520236bc93840243690779783ec8f0b5ef0f72c64d774177b25d10d2e024cda968f81352abbc4f89f3069760fc3a86bd5ee387e7951928
diff --git a/dev-python/toposort/metadata.xml b/dev-python/toposort/metadata.xml
deleted file mode 100644
index 584888840..000000000
--- a/dev-python/toposort/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>torokhov-s-a@yandex.ru</email>
- <name>Sergey Torokhov</name>
- </maintainer>
- <longdescription lang="en">Implements a topological sort algorithm.</longdescription>
- <upstream>
- <remote-id type="pypi">toposort</remote-id>
- <remote-id type="gitlab">ericvsmith/toposort</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/toposort/toposort-1.6.ebuild b/dev-python/toposort/toposort-1.6.ebuild
deleted file mode 100644
index 652575a8f..000000000
--- a/dev-python/toposort/toposort-1.6.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="A topological sort for python"
-HOMEPAGE="https://gitlab.com/ericvsmith/toposort"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-DEPEND="
- test? ( dev-python/pytest[${PYTHON_USEDEP}] )
-"
-
-DOCS=()
-
-python_test() {
- ${EPYTHON} setup.py test || die
-}
diff --git a/dev-python/trailrunner/Manifest b/dev-python/trailrunner/Manifest
new file mode 100644
index 000000000..0e3dae7a0
--- /dev/null
+++ b/dev-python/trailrunner/Manifest
@@ -0,0 +1 @@
+DIST trailrunner-1.2.1.tar.gz 14362 BLAKE2B f3be6db8bdfbd7fd8fc5dda97025f4621387cca12779187ae2c25850d91f33ad78e07e92c308d5f134e23f623771e7bd80e819e831a4cfde68508739bc463923 SHA512 eddc767626c301b143a14c4c14683d59fc7771d6b4cf6b787623601bb15d47de92cd7fd6d862304d321b58b23df800c37177ad7635a5994dbad8ad4e919ad3e2
diff --git a/dev-python/trailrunner/metadata.xml b/dev-python/trailrunner/metadata.xml
new file mode 100644
index 000000000..da850667c
--- /dev/null
+++ b/dev-python/trailrunner/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">omnilib/trailrunner</remote-id>
+ <remote-id type="pypi">trailrunner</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/trailrunner/trailrunner-1.2.1.ebuild b/dev-python/trailrunner/trailrunner-1.2.1.ebuild
new file mode 100644
index 000000000..64f5bf6b1
--- /dev/null
+++ b/dev-python/trailrunner/trailrunner-1.2.1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Walk paths and run things"
+HOMEPAGE="https://github.com/omnilib/trailrunner"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/pathspec[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests unittest
diff --git a/dev-python/trueskill/Manifest b/dev-python/trueskill/Manifest
deleted file mode 100644
index e23d76215..000000000
--- a/dev-python/trueskill/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST trueskill-0.4.5_p20191014.tar.gz 30722 BLAKE2B b93162702f79cbb727f853132568ab02bbb844735c2dc3ebc77ab71c8ff77e16109672e5d30fedca951c6893df18f81f517415ecf707c7e25f6cacc96222a182 SHA512 9892eae7d581a3bbfe33ff0fdf274c177f0641db099a0ad6a630a27f6f2d94d39d65b5a7d47c18ab91b4958d161f00c8639c40f56388714cb71750949dd4bf12
diff --git a/dev-python/trueskill/metadata.xml b/dev-python/trueskill/metadata.xml
deleted file mode 100644
index 95805be47..000000000
--- a/dev-python/trueskill/metadata.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/sublee/trueskill/issues</bugs-to>
- <changelog>https://raw.githubusercontent.com/sublee/trueskill/master/changelog.rst</changelog>
- <doc lang="en">https://trueskill.org</doc>
- <maintainer>
- <email>sub@subl.ee</email>
- <name>Heungsub Lee</name>
- </maintainer>
- <remote-id type="pypi">trueskill</remote-id>
- <remote-id type="github">sublee/trueskill</remote-id>
- </upstream>
- <longdescription lang="en">
-TrueSkill is a rating system among game players. It was developed by Microsoft Research and has been used on Xbox LIVE for ranking and matchmaking service. This system quantifies players’ TRUE skill points by the Bayesian inference algorithm. It also works well with any type of match rule including N:N team game or free-for-all.
-
-This project is a Python package which implements the TrueSkill rating system:
- </longdescription>
-</pkgmetadata>
diff --git a/dev-python/trueskill/trueskill-0.4.5_p20191014.ebuild b/dev-python/trueskill/trueskill-0.4.5_p20191014.ebuild
deleted file mode 100644
index 08a2b9b28..000000000
--- a/dev-python/trueskill/trueskill-0.4.5_p20191014.ebuild
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="8"
-
-COMMIT="91c29b1ab6cd86d6d68fc983fd7ceba3a88ad544"
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python Implementation of the TrueSkill Algorithm"
-HOMEPAGE="
- https://trueskill.org
- https://github.com/sublee/trueskill
- https://pypi.org/project/trueskill
-"
-SRC_URI="https://github.com/sublee/${PN}/archive/${COMMIT}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/${PN}-${COMMIT}"
-
-SLOT="0"
-LICENSE="BSD"
-KEYWORDS="~amd64"
-IUSE="test"
-
-DEPEND="
- dev-python/six[${PYTHON_USEDEP}]
- test? (
- >=dev-python/almost-0.1.5[${PYTHON_USEDEP}]
- >=dev-python/mpmath-0.17[${PYTHON_USEDEP}]
- dev-python/pytest[${PYTHON_USEDEP}]
- )
-"
-
-RESTRICT="!test? ( test )"
-
-distutils_enable_tests setup.py
-#docs require a py2 only sphinx theme
diff --git a/dev-python/ttfautohint-py/Manifest b/dev-python/ttfautohint-py/Manifest
deleted file mode 100644
index 29df1e941..000000000
--- a/dev-python/ttfautohint-py/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ttfautohint-py-0.4.3.tar.gz 186488 BLAKE2B cc5de63faf4a5d213a14eda9b092c48e2e67c59b04ad1580d680e22bf691d915a74f7a465cc37cd0ce907874f3fdb0312224e647bb8e18e5741f886e69e7d075 SHA512 2f21af2a4ffffb59c9e83e4c5aa77ce15d97d4391894537e87727fd05f47b8f007e3ddf1fcf98d195a880b2a4e22586ce9faab4d8dc33f6c6eaa1623dcfd3aab
diff --git a/dev-python/ttfautohint-py/files/ttfautohint-py-0.4.3-no-ext_modules.patch b/dev-python/ttfautohint-py/files/ttfautohint-py-0.4.3-no-ext_modules.patch
deleted file mode 100644
index 84dee04cc..000000000
--- a/dev-python/ttfautohint-py/files/ttfautohint-py-0.4.3-no-ext_modules.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/setup.py
-+++ b/setup.py
-@@ -120,7 +120,6 @@
- platforms=["posix", "nt"],
- package_dir={"": "src/python"},
- packages=find_packages("src/python"),
-- ext_modules=[libttfautohint],
- zip_safe=False,
- cmdclass=cmdclass,
- setup_requires=['setuptools_scm'],
diff --git a/dev-python/ttfautohint-py/metadata.xml b/dev-python/ttfautohint-py/metadata.xml
deleted file mode 100644
index f2d45cb53..000000000
--- a/dev-python/ttfautohint-py/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/fonttools/ttfautohint-py/issues</bugs-to>
- <remote-id type="github">fonttools/ttfautohint-py</remote-id>
- <remote-id type="pypi">ttfautohint-py</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/ttfautohint-py/ttfautohint-py-0.4.3.ebuild b/dev-python/ttfautohint-py/ttfautohint-py-0.4.3.ebuild
deleted file mode 100644
index 31466327d..000000000
--- a/dev-python/ttfautohint-py/ttfautohint-py-0.4.3.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/fonttools/ttfautohint-py/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64"
-DESCRIPTION="A Python wrapper for ttfautohint"
-HOMEPAGE="https://github.com/fonttools/ttfautohint-py"
-LICENSE="MIT"
-SLOT="0"
-
-RDEPEND="media-gfx/ttfautohint"
-DEPEND="
- test? (
- dev-python/fonttools[${PYTHON_USEDEP}]
- )
-"
-
-PATCHES=( "${FILESDIR}/${P}-no-ext_modules.patch" )
-
-distutils_enable_tests pytest
-
-src_prepare() {
- rm -r src/c || die
- export SETUPTOOLS_SCM_PRETEND_VERSION="${PV%_*}"
- default
-}
diff --git a/dev-python/tulir-telethon/Manifest b/dev-python/tulir-telethon/Manifest
new file mode 100644
index 000000000..d38d36ccc
--- /dev/null
+++ b/dev-python/tulir-telethon/Manifest
@@ -0,0 +1 @@
+DIST tulir-telethon-1.35.0a1.tar.gz 590359 BLAKE2B e145d6c89f7c465c308994c3646fcdd2e99941c37b3ba0be170f8784b0d8e18b5b513fad9b52e8d706532e359649d3368759f6d4676438c200882902a8a5be83 SHA512 17199aea16ede2051583cac857bac65b23301273f64e157c29acca142c7fe4bb9d3ea8d147c121a095b7a30c0bb92eab83aee3946093168ca5096fa84c9d4167
diff --git a/dev-python/tulir-telethon/metadata.xml b/dev-python/tulir-telethon/metadata.xml
new file mode 100644
index 000000000..b7b496892
--- /dev/null
+++ b/dev-python/tulir-telethon/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <name>Julien Roy</name>
+ <email>julien@jroy.ca</email>
+ </maintainer>
+ <upstream>
+ <maintainer>
+ <name>Tulir Asokan</name>
+ <email>tulir@maunium.net</email>
+ </maintainer>
+ <remote-id type="github">tulir/Telethon</remote-id>
+ <remote-id type="pypi">tulir-telethon</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/tulir-telethon/tulir-telethon-1.35.0_alpha1.ebuild b/dev-python/tulir-telethon/tulir-telethon-1.35.0_alpha1.ebuild
new file mode 100644
index 000000000..dd878b834
--- /dev/null
+++ b/dev-python/tulir-telethon/tulir-telethon-1.35.0_alpha1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYPI_NO_NORMALIZE=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+MY_PV="${PV/_alph/}"
+DESCRIPTION="Pure Python 3 MTProto API Telegram client library, for bots too!"
+HOMEPAGE="https://github.com/tulir/Telethon/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/cryptg[${PYTHON_USEDEP}]
+ dev-python/hachoir[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/pyaes[${PYTHON_USEDEP}]
+ dev-python/PySocks[${PYTHON_USEDEP}]
+ dev-python/python-socks[${PYTHON_USEDEP}]
+ dev-python/rsa[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-python/tweepy/Manifest b/dev-python/tweepy/Manifest
index ec1236764..ac2c22edc 100644
--- a/dev-python/tweepy/Manifest
+++ b/dev-python/tweepy/Manifest
@@ -1 +1 @@
-DIST tweepy-3.10.0.tar.gz 459678 BLAKE2B 8ed612e9a0ad0892110658c94bcf70ec3da4219c74fe9e4600bebd8ce16a81ef03461924aa9d170ccf3ae9127cfa0bc35a7d36a4b379b44ab5557eba8d30972c SHA512 2a40875c5612902e4ff69e6fdf73e9fa10b93a80bf4160b16e44e2dae058a90f86569b3a4bcb67a7acdf5c9c3119ce7ca35a3ae64e393181b78fde10dfd975b5
+DIST tweepy-4.14.0.tar.gz 5914530 BLAKE2B 64f5cfcd889e1726508c89f30b7e88a37eaf73b4d48e3571bfc5226ee52b33c36ea90821f45bbd06cb2e0e69699e3cd382d6a53641d6a31473629f8415d5fbaa SHA512 b4368c379b01cda05bac71cf188c31ad305ee6b1a66c76c6feb9622aa43b7875759763fce95be3ee12798f4948121501af788dc3161fada0d2f4a23bebfb0a1e
diff --git a/dev-python/tweepy/metadata.xml b/dev-python/tweepy/metadata.xml
index 01c1fc848..9c1269f2b 100644
--- a/dev-python/tweepy/metadata.xml
+++ b/dev-python/tweepy/metadata.xml
@@ -1,8 +1,9 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>davidroman96@gmail.com</email>
- <name>David Roman</name>
- </maintainer>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">tweepy/tweepy</remote-id>
+ <doc>https://tweepy.readthedocs.io</doc>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/tweepy/tweepy-3.10.0.ebuild b/dev-python/tweepy/tweepy-3.10.0.ebuild
deleted file mode 100644
index 9955d1251..000000000
--- a/dev-python/tweepy/tweepy-3.10.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="An easy-to-use Python library for accessing the Twitter API."
-HOMEPAGE="https://www.tweepy.org/"
-SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-KEYWORDS="~amd64"
-LICENSE="MIT"
-SLOT="0"
-
-RDEPEND="
- dev-python/requests[${PYTHON_USEDEP},socks5]
- dev-python/requests-oauthlib[${PYTHON_USEDEP}]
-"
-
-DEPEND="
- ${RDEPEND}
- test? (
- dev-python/mock[${PYTHON_USEDEP}]
- dev-python/vcrpy[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests nose
diff --git a/dev-python/tweepy/tweepy-4.14.0.ebuild b/dev-python/tweepy/tweepy-4.14.0.ebuild
new file mode 100644
index 000000000..9a6686f58
--- /dev/null
+++ b/dev-python/tweepy/tweepy-4.14.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="An easy-to-use Python library for accessing the Twitter API."
+HOMEPAGE="https://www.tweepy.org/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# dev-python/nose removed from ::gentoo
+RESTRICT="test"
+
+RDEPEND="
+ dev-python/requests[${PYTHON_USEDEP},socks5]
+ dev-python/requests-oauthlib[${PYTHON_USEDEP}]
+"
+
+DEPEND="${RDEPEND}"
+ # test? (
+ # dev-python/aiohttp[${PYTHON_USEDEP}]
+ # dev-python/async-lru[${PYTHON_USEDEP}]
+ # dev-python/mock[${PYTHON_USEDEP}]
+ # <dev-python/urllib3-2.0.0[${PYTHON_USEDEP}]
+ # dev-python/vcrpy[${PYTHON_USEDEP}]
+ # )
+
+# distutils_enable_tests nose
diff --git a/dev-python/types-protobuf/Manifest b/dev-python/types-protobuf/Manifest
new file mode 100644
index 000000000..f96f57b60
--- /dev/null
+++ b/dev-python/types-protobuf/Manifest
@@ -0,0 +1 @@
+DIST types-protobuf-4.24.0.20240408.tar.gz 52102 BLAKE2B 3312ddd8e28ee490f6ae94978d5ebfca353cbd9051862629cdde08474ae657130bf87cda8cb06f33ea2d38ccb5bfe9097ef3d8f4bb77fba94707b9914ff33466 SHA512 adb4d69ef5d8bab15e6e311c7d1013725419f2b681e64befea2cc435fec69cf0d0e70431ae65b9f617e8b4c86957fdaae88abd57cc306fa55ad51d3c09d5f222
diff --git a/dev-python/types-protobuf/metadata.xml b/dev-python/types-protobuf/metadata.xml
new file mode 100644
index 000000000..64df2f9a3
--- /dev/null
+++ b/dev-python/types-protobuf/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>watermanpaint@posteo.net</email>
+ <name>Lucio Sauer</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">python/typeshed</remote-id>
+ <remote-id type="pypi">types-protobuf</remote-id>
+ <changelog>https://github.com/typeshed-internal/stub_uploader/blob/main/data/changelogs/protobuf.md</changelog>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/types-protobuf/types-protobuf-4.24.0.20240408.ebuild b/dev-python/types-protobuf/types-protobuf-4.24.0.20240408.ebuild
new file mode 100644
index 000000000..6262bb240
--- /dev/null
+++ b/dev-python/types-protobuf/types-protobuf-4.24.0.20240408.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10..12} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="Typing stubs for protobuf"
+HOMEPAGE="
+ https://pypi.org/project/types-protobuf/
+ https://github.com/python/typeshed/tree/master/stubs/protobuf/
+"
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
diff --git a/dev-python/types-requests/Manifest b/dev-python/types-requests/Manifest
new file mode 100644
index 000000000..76cd278bf
--- /dev/null
+++ b/dev-python/types-requests/Manifest
@@ -0,0 +1 @@
+DIST types-requests-2.31.0.20240311.tar.gz 16824 BLAKE2B 310a7f4e49189f2ff1b1d65ad7ecd1958a33606ec36ad4d42e3ef793b71df1cf823c73a151a948102c055480b2c992675ec3699c4f67274b454d154a3fb24d5d SHA512 e7116a2225cab57918c3a9e081bebaa173c9a5496889e6ec1c9bc28c94e56c40fc0f785403ceec259a44049f61a9f731434532cf5c186d785d5d20eba7362f3a
diff --git a/dev-python/types-requests/metadata.xml b/dev-python/types-requests/metadata.xml
new file mode 100644
index 000000000..5aa2eba6a
--- /dev/null
+++ b/dev-python/types-requests/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <bugs-to>https://github.com/python/typeshed/issues</bugs-to>
+ <remote-id type="github">python/typeshed</remote-id>
+ <remote-id type="pypi">types-requests</remote-id>
+ <changelog>https://github.com/typeshed-internal/stub_uploader/blob/main/data/changelogs/requests.md</changelog>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/types-requests/types-requests-2.31.0.20240311.ebuild b/dev-python/types-requests/types-requests-2.31.0.20240311.ebuild
new file mode 100644
index 000000000..8ced6300e
--- /dev/null
+++ b/dev-python/types-requests/types-requests-2.31.0.20240311.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Typing stubs for requests"
+HOMEPAGE="
+ https://pypi.org/project/types-requests/
+ https://github.com/python/typeshed/tree/master/stubs/requests
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/urllib3-2"
diff --git a/dev-python/typing-inspect/Manifest b/dev-python/typing-inspect/Manifest
new file mode 100644
index 000000000..013f920d5
--- /dev/null
+++ b/dev-python/typing-inspect/Manifest
@@ -0,0 +1 @@
+DIST typing_inspect-0.9.0.tar.gz 13825 BLAKE2B 599ec6a99fd040ac5ee83ef20deee86a8255dd116c8d8defe67d99291088984efc3b639986a9d350b26200028a309cfe6590a3f75dc4b9e0306bdc13bb65641e SHA512 5d46e6632895fa0a59007779f49a5812beff09f59e359a81af93bfee7bb5f4c2025566efbd27422299a614baa4d9c22da2317377090b0ad1cdd89fca73e9ee5a
diff --git a/dev-python/typing-inspect/metadata.xml b/dev-python/typing-inspect/metadata.xml
new file mode 100644
index 000000000..4905763b1
--- /dev/null
+++ b/dev-python/typing-inspect/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">ilevkivskyi/typing_inspect</remote-id>
+ <remote-id type="pypi">typing-inspect</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/typing-inspect/typing-inspect-0.9.0.ebuild b/dev-python/typing-inspect/typing-inspect-0.9.0.ebuild
new file mode 100644
index 000000000..5ace51896
--- /dev/null
+++ b/dev-python/typing-inspect/typing-inspect-0.9.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Runtime inspection utilities for Python typing module"
+HOMEPAGE="https://github.com/ilevkivskyi/typing_inspect"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/mypy_extensions-0.3.0[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-3.7.4.2[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests pytest
+
+python_test() {
+ # https://github.com/ilevkivskyi/typing_inspect/issues/84
+ local EPYTEST_DESELECT=( 'test_typing_inspect.py::GetUtilityTestCase::test_typed_dict_typing_extension' )
+ epytest
+}
diff --git a/dev-python/ufo2ft/Manifest b/dev-python/ufo2ft/Manifest
deleted file mode 100644
index dbc091a99..000000000
--- a/dev-python/ufo2ft/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ufo2ft-2.21.0.zip 331745 BLAKE2B 06d273e18bd1d0b2bdc4ac187a119d04cd5385f6629a6ed30fa2b8da269714359506fb6db62b49c9f7d7b2c78f18cd1b7df5c84e531f25eee969e305537bf5e0 SHA512 c432f1c47c40ab3d97b83279fe3bd9955bc6d3bfa8fce1c00e4e54c22ac5f22036320fc39f761dc85c5ae33be0eb384bea0ea2ba8b7ef69b9fd89b92e9fe72db
diff --git a/dev-python/ufo2ft/metadata.xml b/dev-python/ufo2ft/metadata.xml
deleted file mode 100644
index 0ef967bd7..000000000
--- a/dev-python/ufo2ft/metadata.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <remote-id type="github">googlefonts/ufo2ft</remote-id>
- <remote-id type="pypi">ufo2ft</remote-id>
- </upstream>
- <longdescription lang="en">
-ufo2ft ("UFO to FontTools") is a fork of ufo2fdk whose goal is to generate OpenType font binaries from UFOs without the FDK dependency.
-
-The library provides two functions, compileOTF and compileTTF, which work exactly the same way:
-
-from defcon import Font
-from ufo2ft import compileOTF
-ufo = Font('MyFont-Regular.ufo')
-otf = compileOTF(ufo)
-otf.save('MyFont-Regular.otf')
-
-In most cases, the behavior of ufo2ft should match that of ufo2fdk, whose documentation is retained below (and hopefully is still accurate).
-Naming Data
-
-As with any OpenType compiler, you have to set the font naming data to a particular standard for your naming to be set correctly. In ufo2fdk, you can get away with setting two naming attributes in your font.info object for simple fonts:
-
- familyName: The name for your family. For example, "My Garamond".
- styleName: The style name for this particular font. For example, "Display Light Italic"
-
-ufo2fdk will create all of the other naming data based on thse two fields. If you want to use the fully automatic naming system, all of the other name attributes should be set to None in your font. However, if you want to override the automated system at any level, you can specify particular naming attributes and ufo2fdk will honor your settings. You don't have to set all of the attributes, just the ones you don't want to be automated. For example, in the family "My Garamond" you have eight weights. It would be nice to style map the italics to the romans for each weight. To do this, in the individual romans and italics, you need to set the style mapping data. This is done through the styleMapFamilyName and styleMapStyleName attributes. In each of your roman and italic pairs you would do this:
-
-My Garamond-Light.ufo
-
- familyName = "My Garamond"
- styleName = "Light"
- styleMapFamilyName = "My Garamond Display Light"
- styleMapStyleName = "regular"
-
-My Garamond-Light Italic.ufo
-
- familyName = "My Garamond"
- styleName = "Display Light Italic"
- styleMapFamilyName = "My Garamond Display Light"
- styleMapStyleName = "italic"
-
-My Garamond-Book.ufo
-
- familyName = "My Garamond"
- styleName = "Book"
- styleMapFamilyName = "My Garamond Display Book"
- styleMapStyleName = "regular"
-
-My Garamond-Book Italic.ufo
-
- familyName = "My Garamond"
- styleName = "Display Book Italic"
- styleMapFamilyName = "My Garamond Display Book"
- styleMapStyleName = "italic"
-
-etc.
-
-Additionally, if you have defined any naming data, or any data for that matter, in table definitions within your font's features that data will be honored.
-Feature generation
-
-If your font's features do not contain kerning/mark/mkmk features, ufo2ft will create them based on your font's kerning/anchor data.
-
-In addition to Adobe OpenType feature files, ufo2ft also supports the MTI/Monotype format. For example, a GPOS table in this format would be stored within the UFO at data/com.github.googlei18n.ufo2ft.mtiFeatures/GPOS.mti.
-Fallbacks
-
-Most of the fallbacks have static values. To see what is set for these, look at fontInfoData.py in the source code.
-
-In some cases, the fallback values are dynamically generated from other data in the info object. These are handled internally with functions.
-Merging TTX
-
-If the UFO data directory has a com.github.fonttools.ttx folder with TTX files ending with .ttx, these will be merged in the generated font. The index TTX (generated when using using ttx -s) is not required.
- </longdescription>
-</pkgmetadata>
diff --git a/dev-python/ufo2ft/ufo2ft-2.21.0.ebuild b/dev-python/ufo2ft/ufo2ft-2.21.0.ebuild
deleted file mode 100644
index 7c37ac03e..000000000
--- a/dev-python/ufo2ft/ufo2ft-2.21.0.ebuild
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="A bridge from UFOs to FontTool objects"
-HOMEPAGE="https://github.com/googlefonts/ufo2ft"
-SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.zip"
-
-#26 failed tests
-#RESTRICT="test"
-
-LICENSE="MIT"
-KEYWORDS="~amd64"
-SLOT="0"
-
-RDEPEND="
- >=dev-python/booleanOperations-0.9.0[${PYTHON_USEDEP}]
- >=dev-python/compreffor-0.5.1[${PYTHON_USEDEP}]
- >=dev-python/cffsubr-0.2.8[${PYTHON_USEDEP}]
- >=dev-python/cu2qu-1.6.7[${PYTHON_USEDEP}]
- >=dev-python/defcon-0.8.1[${PYTHON_USEDEP}]
- >=dev-python/fonttools-4.22.0[${PYTHON_USEDEP}]
- >=dev-python/skia-pathops-0.6.0[${PYTHON_USEDEP}]
- >=dev-python/ufoLib2-0.7.1[${PYTHON_USEDEP}]
-"
-
-BDEPEND="
- app-arch/unzip
- dev-python/setuptools_scm[${PYTHON_USEDEP}]
- test? (
- dev-python/glyphsLib[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/ufoLib2/Manifest b/dev-python/ufoLib2/Manifest
deleted file mode 100644
index 216d3fdbd..000000000
--- a/dev-python/ufoLib2/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ufoLib2-0.11.1.zip 118203 BLAKE2B 74e8fca0ed8c7ceda204d518e5be71bed2f753bba454cbdb380b379f9767e5c5a733471b2107ab32040ba729d067ebac94a1cf92ad24f190fa42ddc1f20ea005 SHA512 4e9b2ab04bb93825c698ff62d2676ffa6a92b83230aaf94176226330852431c9e2d3816b89b0fcd052cf71e91a871c9395c6053d60bdd9cf7e54a08cbe5768d5
diff --git a/dev-python/ufoLib2/metadata.xml b/dev-python/ufoLib2/metadata.xml
deleted file mode 100644
index b83a1953e..000000000
--- a/dev-python/ufoLib2/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <remote-id type="github">fonttools/ufoLib2</remote-id>
- <remote-id type="pypi">ufoLib2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/ufoLib2/ufoLib2-0.11.1.ebuild b/dev-python/ufoLib2/ufoLib2-0.11.1.ebuild
deleted file mode 100644
index 18d2c70c5..000000000
--- a/dev-python/ufoLib2/ufoLib2-0.11.1.ebuild
+++ /dev/null
@@ -1,45 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{8..9} )
-DOCS_DEPEND="
- dev-python/sphinx_rtd_theme
- dev-python/typing-extensions
-"
-DOCS_DIR="${S}/docs/source"
-DOCS_BUILDER="sphinx"
-
-inherit distutils-r1 docs
-
-DESCRIPTION="A UFO font library"
-HOMEPAGE="https://github.com/fonttools/ufoLib2"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.zip"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-# fs not pulled in by fonttools
-RDEPEND="
- >=dev-python/attrs-19.2.0[${PYTHON_USEDEP}]
- >=dev-python/fonttools-4.0.0[${PYTHON_USEDEP}]
- dev-python/fs[${PYTHON_USEDEP}]
- dev-python/lxml[${PYTHON_USEDEP}]
-"
-DEPEND="
- ${RDEPEND}
- dev-python/setuptools_scm[${PYTHON_USEDEP}]
- test? (
- dev-python/typing-extensions[${PYTHON_USEDEP}]
- )
-"
-BDEPEND="app-arch/unzip"
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
- sed -e '/\<wheel\>/d' -i setup.cfg || die
- distutils-r1_python_prepare_all
-}
diff --git a/dev-python/ufoNormalizer/Manifest b/dev-python/ufoNormalizer/Manifest
deleted file mode 100644
index 6d5545ce4..000000000
--- a/dev-python/ufoNormalizer/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ufonormalizer-0.5.4.zip 38121 BLAKE2B b88763f9904633b99bfcd8226281b2c8e7172a46d8a6ebed1360d8af6b67944030f008176b55dfb9cb85580419997853b5203867587da87f7910608621ff213f SHA512 f9bc37c6d7c366d34e9fa4cbfbcbb6f8a654955fd61afedfbe6376e70e4145d29c6fe30d48c28dca9f18e476002c1cda773172379be2fae4bd30b466ce1899ba
diff --git a/dev-python/ufoNormalizer/metadata.xml b/dev-python/ufoNormalizer/metadata.xml
deleted file mode 100644
index c6a384713..000000000
--- a/dev-python/ufoNormalizer/metadata.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/unified-font-object/ufoNormalizer/issues</bugs-to>
- <maintainer>
- <email>tal@typesupply.com</email>
- <name>Tal Leming</name>
- </maintainer>
- <remote-id type="pypi">ufonormalizer</remote-id>
- <remote-id type="github">unified-font-object/ufoNormalizer</remote-id>
- </upstream>
- <longdescription lang="en">
-Provides a standard formatting so that there are meaningful diffs in version control rather than formatting noise.
-
-Examples of formatting applied by ufoNormalizer include:
-
- Changing floating-point numbers to integers where it doesn't alter the value (e.g. x="95.0" becomes x="95" )
- Rounding floating-point numbers to 10 digits
- Formatting XML with tabs rather than spaces
- </longdescription>
-</pkgmetadata>
diff --git a/dev-python/ufoNormalizer/ufoNormalizer-0.5.4.ebuild b/dev-python/ufoNormalizer/ufoNormalizer-0.5.4.ebuild
deleted file mode 100644
index 18da06d4c..000000000
--- a/dev-python/ufoNormalizer/ufoNormalizer-0.5.4.ebuild
+++ /dev/null
@@ -1,23 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( python3_{8,9} pypy3 )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-MYPN="${PN,,}"
-MYP="${MYPN}-${PV}"
-inherit distutils-r1
-
-DESCRIPTION="A tool that will normalize the XML and other data inside of a UFO."
-HOMEPAGE="https://github.com/unified-font-object/ufoNormalizer"
-SRC_URI="mirror://pypi/${MYPN:0:1}/${MYPN}/${MYP}.zip"
-S="${WORKDIR}/${MYP}"
-SLOT="0"
-LICENSE="BSD"
-KEYWORDS="~amd64 ~x86"
-
-BDEPEND="app-arch/unzip"
-
-distutils_enable_tests setup.py
diff --git a/dev-python/ufoProcessor/Manifest b/dev-python/ufoProcessor/Manifest
deleted file mode 100644
index 3760c9408..000000000
--- a/dev-python/ufoProcessor/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ufoProcessor-1.9.0.tar.gz 34299 BLAKE2B 06570e3e3ade479e470460fcec0e8af9e786d03d95b27f8a65b6b89519b281da0931f7fc4171fe212120881efcfce489c2d0c634467402981670d392cc6113bc SHA512 8e98777eebe0e4d470cb1d6765826ea8752fb3bdcf539581c7b28cede7907b53d68371406f0ee19e718b1de585a4f1d191ef07583fb9c3badc45fb4f3ceb576c
diff --git a/dev-python/ufoProcessor/metadata.xml b/dev-python/ufoProcessor/metadata.xml
deleted file mode 100644
index 57271a0a9..000000000
--- a/dev-python/ufoProcessor/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/LettError/ufoProcessor/issues</bugs-to>
- <remote-id type="github">LettError/ufoProcessor</remote-id>
- <remote-id type="pypi">ufoProcessor</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/ufoProcessor/ufoProcessor-1.9.0.ebuild b/dev-python/ufoProcessor/ufoProcessor-1.9.0.ebuild
deleted file mode 100644
index 41fc47677..000000000
--- a/dev-python/ufoProcessor/ufoProcessor-1.9.0.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="A Python package for processing and generating UFO files"
-HOMEPAGE="https://github.com/LettError/ufoProcessor"
-SRC_URI="https://github.com/LettError/ufoProcessor/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="MIT"
-SLOT="0"
-IUSE="test"
-KEYWORDS="~amd64 ~x86"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- ${PYTHON_DEPS}
- >=dev-python/defcon-0.6.0[${PYTHON_USEDEP}]
- >=dev-python/fontMath-0.4.9[${PYTHON_USEDEP}]
- >=dev-python/fontParts-0.8.2[${PYTHON_USEDEP}]
- >=dev-python/fonttools-3.32.0[${PYTHON_USEDEP}]
- >=dev-python/MutatorMath-2.1.2[${PYTHON_USEDEP}]
-"
-DEPEND="
- ${RDEPEND}
- test? (
- dev-python/unicodedata2[${PYTHON_USEDEP}]
- )
-"
-BDEPEND="dev-python/setuptools_scm[${PYTHON_USEDEP}]"
-
-pkg_setup() {
- export SETUPTOOLS_SCM_PRETEND_VERSION="${PV%_*}"
-}
-
-python_test() {
- "${EPYTHON}" Tests/tests.py || die "Tests failed with ${EPYTHON}"
-}
diff --git a/dev-python/uharfbuzz/Manifest b/dev-python/uharfbuzz/Manifest
deleted file mode 100644
index 3c49d7b52..000000000
--- a/dev-python/uharfbuzz/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST uharfbuzz-0.16.1.tar.gz 33252 BLAKE2B 63c036b0884303d724cfc64acb0f44b2705c3ddb35e8132c399535ae0db54744ee8f244aac9e68e73b39969328cbee63d094f4e97908f5e5a007d995176c53cb SHA512 d1c08135a4cc470278726aa6c8c6da7ccac04ab6d0c718c7576c81233834d182c7428c1123abc4f05f094fac2fe4dbb1dd8d264e752cadb3030f7045721ae1ee
diff --git a/dev-python/uharfbuzz/files/uharfbuzz-0.16.1-system-harfbuzz.patch b/dev-python/uharfbuzz/files/uharfbuzz-0.16.1-system-harfbuzz.patch
deleted file mode 100644
index bc835c9be..000000000
--- a/dev-python/uharfbuzz/files/uharfbuzz-0.16.1-system-harfbuzz.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/setup.py
-+++ b/setup.py
-@@ -13,7 +13,7 @@
- with open(os.path.join(here, 'README.md'), encoding='utf-8') as f:
- long_description = f.read()
-
--define_macros = [('HB_NO_MT', '1'), ('HB_EXPERIMENTAL_API', '1')]
-+define_macros = [('HB_EXPERIMENTAL_API', '1')]
- linetrace = False
- if int(os.environ.get('CYTHON_LINETRACE', '0')):
- linetrace = True
-@@ -30,8 +30,9 @@
- extension = Extension(
- 'uharfbuzz._harfbuzz',
- define_macros=define_macros,
-- include_dirs=['harfbuzz/src'],
-- sources=['src/uharfbuzz/_harfbuzz.pyx', 'harfbuzz/src/harfbuzz.cc'],
-+ include_dirs=['/usr/include/harfbuzz'],
-+ libraries=['harfbuzz'],
-+ sources=['src/uharfbuzz/_harfbuzz.pyx'],
- language='c++',
- extra_compile_args=extra_compile_args,
- extra_link_args=extra_link_args,
diff --git a/dev-python/uharfbuzz/metadata.xml b/dev-python/uharfbuzz/metadata.xml
deleted file mode 100644
index d27e3cb7d..000000000
--- a/dev-python/uharfbuzz/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/harfbuzz/uharfbuzz/issues</bugs-to>
- <remote-id type="github">harfbuzz/uharfbuzz</remote-id>
- <remote-id type="pypi">uharfbuzz</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/uharfbuzz/uharfbuzz-0.16.1.ebuild b/dev-python/uharfbuzz/uharfbuzz-0.16.1.ebuild
deleted file mode 100644
index 36fdf0ec8..000000000
--- a/dev-python/uharfbuzz/uharfbuzz-0.16.1.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_SETUPTOOLS="pyproject.toml"
-PYTHON_COMPAT=( python3_{8..10} pypy3 )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/harfbuzz/uharfbuzz/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-KEYWORDS="~amd64"
-DESCRIPTION="Streamlined Cython bindings for the HarfBuzz shaping engine"
-HOMEPAGE="https://github.com/harfbuzz/uharfbuzz"
-LICENSE="Apache-2.0"
-SLOT="0"
-
-RDEPEND=">=media-libs/harfbuzz-2.8.1[experimental(-)]"
-DEPEND="${RDEPEND}"
-BDEPEND="
- dev-python/setuptools_scm[${PYTHON_USEDEP}]
- dev-python/cython[${PYTHON_USEDEP}]
-"
-
-PATCHES=( "${FILESDIR}/${P}-system-harfbuzz.patch" )
-
-distutils_enable_tests pytest
-
-python_prepare_all() {
- distutils-r1_python_prepare_all
- export SETUPTOOLS_SCM_PRETEND_VERSION="${PV%_*}"
- export USE_SYSTEM_HARFBUZZ=1
-}
-
-python_install() {
- distutils-r1_python_install
- python_optimize "$(python_get_sitedir)/${PN}"
-}
diff --git a/dev-python/ukpostcodeparser/Manifest b/dev-python/ukpostcodeparser/Manifest
deleted file mode 100644
index 12535d75f..000000000
--- a/dev-python/ukpostcodeparser/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST ukpostcodeparser-1.1.2.tar.gz 5585 BLAKE2B c95f215f0e4b222b85ec3ab0a8d82186845d9cb161098240411a425094ada391bb6c891904293cca4a56e9370217829b51ba30e91824dd3d762279baef6c65f7 SHA512 8113522b728c095f937a9f53f21c369130e3e63c4fc3546dbea4ad1c53648742fb0e766b1254c76ee65d69dec585f1a90caa7d39ca540de1765ff5f989a702de
diff --git a/dev-python/ukpostcodeparser/files/ukpostcodeparser-1.1.2-test.patch b/dev-python/ukpostcodeparser/files/ukpostcodeparser-1.1.2-test.patch
deleted file mode 100644
index fd08a559d..000000000
--- a/dev-python/ukpostcodeparser/files/ukpostcodeparser-1.1.2-test.patch
+++ /dev/null
@@ -1,70 +0,0 @@
---- ../ukpostcodeparser/test/parser.py 2018-12-19 17:55:53.435338634 +0200
-+++ ../ukpostcodeparser/test/parser.py 2018-12-19 17:56:54.075385419 +0200
-@@ -796,14 +796,6 @@
- expected=InvalidPostcodeError
- )
-
-- def test_091(self):
-- self.run_parser(
-- postcode='w1m 4zz',
-- strict=True,
-- incode_mandatory=False,
-- expected=InvalidPostcodeError
-- )
--
- def test_092(self):
- self.run_parser(
- postcode='3r0',
-@@ -844,22 +836,6 @@
- expected=('GIR', '')
- )
-
-- def test_097(self):
-- self.run_parser(
-- postcode='w1m 4zz',
-- strict=True,
-- incode_mandatory=False,
-- expected=InvalidPostcodeError
-- )
--
-- def test_098(self):
-- self.run_parser(
-- postcode='w1m',
-- strict=True,
-- incode_mandatory=False,
-- expected=InvalidPostcodeError
-- )
--
- def test_099(self):
- self.run_parser(
- postcode='dn169aaA',
-@@ -1068,14 +1044,6 @@
- expected=InvalidPostcodeError
- )
-
-- def test_125(self):
-- self.run_parser(
-- postcode='w1m 4zz',
-- strict=True,
-- incode_mandatory=True,
-- expected=InvalidPostcodeError
-- )
--
- def test_126(self):
- self.run_parser(
- postcode='3r0',
-@@ -1116,14 +1084,6 @@
- expected=IncodeNotFoundError
- )
-
-- def test_131(self):
-- self.run_parser(
-- postcode='w1m 4zz',
-- strict=True,
-- incode_mandatory=True,
-- expected=InvalidPostcodeError
-- )
--
- def test_132(self):
- self.run_parser(
- postcode='w1m',
diff --git a/dev-python/ukpostcodeparser/metadata.xml b/dev-python/ukpostcodeparser/metadata.xml
deleted file mode 100644
index 71bafccbc..000000000
--- a/dev-python/ukpostcodeparser/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <remote-id type="github">hamstah/ukpostcodeparser</remote-id>
- <remote-id type="pypi">UkPostcodeParser</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/ukpostcodeparser/ukpostcodeparser-1.1.2.ebuild b/dev-python/ukpostcodeparser/ukpostcodeparser-1.1.2.ebuild
deleted file mode 100644
index 13f1c1126..000000000
--- a/dev-python/ukpostcodeparser/ukpostcodeparser-1.1.2.ebuild
+++ /dev/null
@@ -1,30 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-PYTHON_COMPAT=( pypy3 python3_{7,8,9} )
-
-inherit distutils-r1
-
-DESCRIPTION="UK postcode parser library"
-HOMEPAGE="https://github.com/hamstah/ukpostcodeparser"
-SRC_URI="https://github.com/hamstah/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-# https://github.com/hamstah/ukpostcodeparser/issues/8
-PATCHES=( "${FILESDIR}/${P}-test.patch" )
-
-distutils_enable_tests unittest
-
-python_test() {
- "${PYTHON}" -m unittest discover -v -s ukpostcodeparser/test -p parser.py || die "tests failed with ${EPYTHON}"
-}
-
-python_install_all() {
- distutils-r1_python_install_all
- find "${ED}" -type d -name "test" -exec rm -rv {} + || die "tests removing failed"
-}
diff --git a/dev-python/undervolt/Manifest b/dev-python/undervolt/Manifest
new file mode 100644
index 000000000..19ac3bea1
--- /dev/null
+++ b/dev-python/undervolt/Manifest
@@ -0,0 +1 @@
+DIST undervolt-0.4.0.tar.gz 9976 BLAKE2B 57f9d7b8f1c00497a86669baab02749e43fed934e1ec29e512223ebfac2c7a1231d48def78c387e3c7030f06d716b8c165abfab95450193f8fd4c7615ec20389 SHA512 bd2743e8bea277bd9d6c80abcfad2c3e98f03a5bda2987b5ca448abbd2fd5b912e939bbddb619c59376de77bc5e7f7fe5c3dab929375a849abbdad8e55db3984
diff --git a/dev-python/undervolt/metadata.xml b/dev-python/undervolt/metadata.xml
new file mode 100644
index 000000000..3fac1e410
--- /dev/null
+++ b/dev-python/undervolt/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gonegrier.duarte@gmail.com</email>
+ <name>Gonçalo Negrier Duarte</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">georgewhewell/undervolt</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/undervolt/undervolt-0.4.0.ebuild b/dev-python/undervolt/undervolt-0.4.0.ebuild
new file mode 100644
index 000000000..794c73d9b
--- /dev/null
+++ b/dev-python/undervolt/undervolt-0.4.0.ebuild
@@ -0,0 +1,17 @@
+# 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_{9..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Undervolt Intel CPUs under Linux"
+HOMEPAGE="https://github.com/georgewhewell/undervolt"
+SRC_URI="https://github.com/georgewhewell/undervolt/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
diff --git a/dev-python/undervolt/undervolt-9999.ebuild b/dev-python/undervolt/undervolt-9999.ebuild
new file mode 100644
index 000000000..9f5d803b9
--- /dev/null
+++ b/dev-python/undervolt/undervolt-9999.ebuild
@@ -0,0 +1,24 @@
+# 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_{9..12} )
+
+inherit git-r3 distutils-r1
+
+EGIT_REPO_URI="https://github.com/georgewhewell/undervolt.git"
+DESCRIPTION="Undervolt Intel CPUs under Linux"
+HOMEPAGE="https://github.com/georgewhewell/undervolt"
+
+LICENSE="GPL-2"
+SLOT="0"
+
+src_compile() {
+ distutils-r1_src_compile
+}
+
+src_install() {
+ distutils-r1_src_install
+}
diff --git a/dev-python/unicodedata2/Manifest b/dev-python/unicodedata2/Manifest
deleted file mode 100644
index 3c5965e05..000000000
--- a/dev-python/unicodedata2/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST unicodedata2-13.0.0.2.tar.gz 1202880 BLAKE2B 237a1be7a22a9aaaa3e417a14687e7169630632a3fed90dbda963c5ef6994cbac45e67c7930529362c438a8a20251c64979b3baeaa963dd40e70bd453d2ceb77 SHA512 451a49a9e29935c59932804d8a821562f07ea22658fe57a472eed9a5eacfc9c7c497f25c084451c90cf0992638956ac51572f0c52e74452ece7d66c052d82641
diff --git a/dev-python/unicodedata2/metadata.xml b/dev-python/unicodedata2/metadata.xml
deleted file mode 100644
index 3249c9197..000000000
--- a/dev-python/unicodedata2/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/mikekap/unicodedata2/issues</bugs-to>
- <remote-id type="github">mikekap/unicodedata2</remote-id>
- <remote-id type="pypi">unicodedata2</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/unicodedata2/unicodedata2-13.0.0.2.ebuild b/dev-python/unicodedata2/unicodedata2-13.0.0.2.ebuild
deleted file mode 100644
index 09f2721ee..000000000
--- a/dev-python/unicodedata2/unicodedata2-13.0.0.2.ebuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-MYPV="$(ver_rs 3 -)"
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-SRC_URI="https://github.com/mikekap/unicodedata2/archive/refs/tags/${MYPV}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/${PN}-${MYPV}"
-KEYWORDS="~amd64 ~x86"
-DESCRIPTION="Unicodedata backport for python 2/3 updated to the latest unicode version"
-HOMEPAGE="https://github.com/mikekap/unicodedata2"
-LICENSE="Apache-2.0"
-SLOT="0"
-
-distutils_enable_tests pytest
diff --git a/dev-python/urlmatch/Manifest b/dev-python/urlmatch/Manifest
new file mode 100644
index 000000000..6c7d55d3c
--- /dev/null
+++ b/dev-python/urlmatch/Manifest
@@ -0,0 +1 @@
+DIST urlmatch-1.0.1.tar.gz 4852 BLAKE2B 564784d2d6555cab8193136e7626e7c2f9766823faf69de50985a140c72e707b89adf8916915dc4f3e94d389638873a272f6d78b867ae391791dbd9b4fa4c4ae SHA512 f5dc2bae59db0e193de4e5ec5bf7f074da60b925a09d8f466cf29f73ca7bebbe59a63c65d3b361e9dc475aac528f7990ec23fdc73fc24de260fe9f2447e287e0
diff --git a/dev-python/ffmpeg-python/metadata.xml b/dev-python/urlmatch/metadata.xml
index cbe3c6a53..9430de691 100644
--- a/dev-python/ffmpeg-python/metadata.xml
+++ b/dev-python/urlmatch/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>smaniotto.nicola@gmail.com</email>
<name>Nicola Smaniotto</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">jessepollak/urlmatch</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/urlmatch/urlmatch-1.0.1-r2.ebuild b/dev-python/urlmatch/urlmatch-1.0.1-r2.ebuild
new file mode 100644
index 000000000..2650ea8a8
--- /dev/null
+++ b/dev-python/urlmatch/urlmatch-1.0.1-r2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1
+
+DESCRIPTION="A Python library for easily pattern matching wildcard URLs"
+HOMEPAGE="https://github.com/jessepollak/urlmatch"
+SRC_URI="https://github.com/jessepollak/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests unittest
+
+src_prepare(){
+ sed 's/find_packages()/find_packages(exclude=["tests*"])/' -i setup.py || die
+ default
+}
+
+python_test(){
+ eunittest tests/ "*.py"
+}
diff --git a/dev-python/validator-collection/Manifest b/dev-python/validator-collection/Manifest
new file mode 100644
index 000000000..98aa83337
--- /dev/null
+++ b/dev-python/validator-collection/Manifest
@@ -0,0 +1 @@
+DIST validator-collection-1.5.0.gh.tar.gz 88317 BLAKE2B cfca5c094a24105d7e4e9d4b802808ad62c50c4228d1c0ffca8e68e52098ee1358dfbfba6364b58e5377903823683668abfe79ccd4d6d96bb885b0ce33cb27d0 SHA512 802b7d1516ad55ef8506ea9785b776024f2c041fc5d550d345459bc545600a66402eb32ccc3c59903c895d2c55e17d087429b3a6bd787b9ae890eb00c1c19fc3
diff --git a/dev-python/validator-collection/metadata.xml b/dev-python/validator-collection/metadata.xml
new file mode 100644
index 000000000..86e240673
--- /dev/null
+++ b/dev-python/validator-collection/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gasc@eurecom.fr</email>
+ <name>Gasc Henri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">validator-collection</remote-id>
+ <remote-id type="github">insightindustry/validator-collection</remote-id>
+ <doc>http://validator-collection.readthedocs.io/en/latest</doc>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/validator-collection/validator-collection-1.5.0-r1.ebuild b/dev-python/validator-collection/validator-collection-1.5.0-r1.ebuild
new file mode 100644
index 000000000..911962ae2
--- /dev/null
+++ b/dev-python/validator-collection/validator-collection-1.5.0-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python library of 60+ commonly-used validator functions."
+HOMEPAGE="https://github.com/insightindustry/validator-collection https://pypi.org/project/validator-collection"
+SRC_URI="https://github.com/insightindustry/validator-collection/archive/refs/tags/v.${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/${PN}-v.${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+BDEPEND="
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/sphinx-tabs[${PYTHON_USEDEP}]
+ dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
+ test? (
+ dev-python/coverage[${PYTHON_USEDEP}]
+ dev-python/pytest-benchmark[${PYTHON_USEDEP}]
+ dev-python/pytest-cov[${PYTHON_USEDEP}]
+ dev-python/codecov[${PYTHON_USEDEP}]
+ dev-python/pyfakefs[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${BDEPEND}"
+
+EPYTEST_DESELECT=(
+ # Errors, probably because of missing privileges or problems in the virtual file system used in the tests
+ "tests/test_checkers.py::test_is_readable[/var/data/xx1.txt-True-False]"
+ "tests/test_validators.py::test_readable[/var/data/xx1.txt-True-False]"
+ "tests/test_validators.py::test_writeable[/var/data/xx1.txt-True-False]"
+ "tests/test_validators.py::test_executable[/var/data/xx1.txt-True-False]"
+)
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs
diff --git a/dev-python/vharfbuzz/Manifest b/dev-python/vharfbuzz/Manifest
deleted file mode 100644
index 88b4333df..000000000
--- a/dev-python/vharfbuzz/Manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-DIST vharfbuzz-0.1.1.tar.gz 9036 BLAKE2B c22b1ef28612221b61a7f1565cb5ec37d0a8de852ad9899c1738eed58fc948c775248da460306a213cd39cfed3e180ba8440bfcda15428e2c071888be90657f7 SHA512 20579c380d15168c6635c7aa1a5d28a6c323e6bc25954a9ad2a03d172b414f2a4349f6d51ed2e8c737f8ae5331bc32c1cf1e02cc80544bbc5a265be4731feb01
-DIST vharfbuzz-0.1.2.tar.gz 9029 BLAKE2B 952956424ccb120b68f356086597bdb78c418ec3702517fe93483d25bc21b9de38d7f409d1f505467ff794880d90716f40bba252a0425a5bf6790d1516e7b2fc SHA512 12c3e18d27da6fbbf7cbc35c4f0c00e8669e521a1c46ae79e831f6b18710787d0ee8e551a52178e673d519231b3fd401e75453c420c6da6696f6443f6545ce8d
diff --git a/dev-python/vharfbuzz/files/vharfbuzz-0.1.1-fix-package-dir.patch b/dev-python/vharfbuzz/files/vharfbuzz-0.1.1-fix-package-dir.patch
deleted file mode 100644
index 7a4693959..000000000
--- a/dev-python/vharfbuzz/files/vharfbuzz-0.1.1-fix-package-dir.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/setup.py
-+++ b/setup.py
-@@ -29,7 +29,7 @@
- "Development Status :: 4 - Beta"
-
- ],
-- 'package_dir': {'':'Lib'},
-+ 'package_dir': {'':'lib'},
- 'packages': ["vharfbuzz"]
- ,
- }
diff --git a/dev-python/vharfbuzz/metadata.xml b/dev-python/vharfbuzz/metadata.xml
deleted file mode 100644
index 48c1f9a7b..000000000
--- a/dev-python/vharfbuzz/metadata.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/simoncozens/vharfbuzz/issues</bugs-to>
- <remote-id type="github">simoncozens/vharfbuzz</remote-id>
- <remote-id type="pypi">vharfbuzz</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/vharfbuzz/vharfbuzz-0.1.1.ebuild b/dev-python/vharfbuzz/vharfbuzz-0.1.1.ebuild
deleted file mode 100644
index ccd729de8..000000000
--- a/dev-python/vharfbuzz/vharfbuzz-0.1.1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="A user-friendlier way to use Harfbuzz in Python"
-HOMEPAGE="https://github.com/simoncozens/vharfbuzz"
-SRC_URI="https://github.com/simoncozens/vharfbuzz/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-KEYWORDS="~amd64"
-SLOT="0"
-
-RDEPEND="
- dev-python/fonttools[${PYTHON_USEDEP}]
- dev-python/uharfbuzz[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-
-PATCHES=( "${FILESDIR}/${P}-fix-package-dir.patch" )
-
-distutils_enable_sphinx docs dev-python/sphinxcontrib-napoleon
diff --git a/dev-python/vharfbuzz/vharfbuzz-0.1.2.ebuild b/dev-python/vharfbuzz/vharfbuzz-0.1.2.ebuild
deleted file mode 100644
index 2f638053f..000000000
--- a/dev-python/vharfbuzz/vharfbuzz-0.1.2.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="A user-friendlier way to use Harfbuzz in Python"
-HOMEPAGE="https://github.com/simoncozens/vharfbuzz"
-SRC_URI="https://github.com/simoncozens/vharfbuzz/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-KEYWORDS="~amd64"
-SLOT="0"
-
-RDEPEND="
- dev-python/fonttools[${PYTHON_USEDEP}]
- dev-python/uharfbuzz[${PYTHON_USEDEP}]
-"
-DEPEND="${RDEPEND}"
-
-distutils_enable_sphinx docs dev-python/sphinxcontrib-napoleon
diff --git a/dev-python/volatile/Manifest b/dev-python/volatile/Manifest
new file mode 100644
index 000000000..299630337
--- /dev/null
+++ b/dev-python/volatile/Manifest
@@ -0,0 +1 @@
+DIST volatile-2.1.0.tar.gz 4144 BLAKE2B 4475864271128c0f28625788c7f000aa84a0bf6c2529a7f81e580a7c1f95c3602a0f890c6681ea39c8c1f755bf3f8c67734d9729831471fabe71f07c271fdfda SHA512 2ae5bfdc863c8ed34de1c9271536de4a859bd4322d1d17c6f78c5b1e42c0d0d9be8c3cd484d1118bdf22cb19137546802e81c8a0fd47371c3819a9428dccc74d
diff --git a/dev-python/volatile/metadata.xml b/dev-python/volatile/metadata.xml
new file mode 100644
index 000000000..dc654fd20
--- /dev/null
+++ b/dev-python/volatile/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">mbr/volatile</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/volatile/volatile-2.1.0.ebuild b/dev-python/volatile/volatile-2.1.0.ebuild
new file mode 100644
index 000000000..fcbddf598
--- /dev/null
+++ b/dev-python/volatile/volatile-2.1.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1
+
+DESCRIPTION="A small extension for the tempfile module"
+HOMEPAGE="https://github.com/mbr/volatile"
+SRC_URI="https://github.com/mbr/volatile/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests pytest
diff --git a/dev-python/vttlib/Manifest b/dev-python/vttlib/Manifest
deleted file mode 100644
index 9d405ee9e..000000000
--- a/dev-python/vttlib/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST vttLib-0.11.0.zip 148335 BLAKE2B 550fb5855972ac626ad9ad98088f1b4f20794a11cb2b29f112ce669d9768c2ca910edb939392a35e3e5163eb1e236bf6a76565377828727bc6017f008ad8309a SHA512 b26f6ad967e1e16d55644e984a5f02b65ed1fd0797dc4c46fac9df786720e9b3b51eb7ab59c97a6a449b3915acecfb5f17a7a3deeb615eee21f1164c37297019
diff --git a/dev-python/vttlib/metadata.xml b/dev-python/vttlib/metadata.xml
deleted file mode 100644
index 00f1b4a06..000000000
--- a/dev-python/vttlib/metadata.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
-vttLib
-
-A library to
-
- Extract VTT hinting data from a OpenType font prepared with Microsoft Visual TrueType (VTT) and store it in a FontTools TTX dump
- Merge it back from a TTX dump into an OpenType font and
- Compile the data inside to font to ship it (turn TSI* tables into fpgm, etc.).
-
-The primary use case is version control of hinting data of fonts.
- </longdescription>
- <upstream>
- <remote-id type="github">daltonmaag/vttLib</remote-id>
- <remote-id type="pypi">vttlib</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/vttlib/vttlib-0.11.0.ebuild b/dev-python/vttlib/vttlib-0.11.0.ebuild
deleted file mode 100644
index 0712dbb23..000000000
--- a/dev-python/vttlib/vttlib-0.11.0.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="7"
-
-DISTUTILS_USE_SETUPTOOLS=pyproject.toml
-MYPN="vttLib"
-MYPV="${PV/_p/.post}"
-MYP="${MYPN}-${MYPV}"
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Dump, merge and compile Visual TrueType data in UFO3 with FontTools"
-HOMEPAGE="
- https://github.com/daltonmaag/vttLib
- https://pypi.org/project/vttlib
-"
-SRC_URI="mirror://pypi/${MYP:0:1}/${MYPN}/${MYP}.zip"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-#install_requires
-RDEPEND="
- >=dev-python/fonttools-4.10.2[${PYTHON_USEDEP}]
- >=dev-python/pyparsing-2.4.7[${PYTHON_USEDEP}]
- >=dev-python/ufoLib2-0.7.1[${PYTHON_USEDEP}]
-"
-#setup_requires
-DEPEND="
- ${RDEPEND}
- dev-python/setuptools_scm[${PYTHON_USEDEP}]
- dev-python/wheel[${PYTHON_USEDEP}]
- test? (
- >=dev-python/ufo2ft-2.14.0[${PYTHON_USEDEP}]
- )
-"
-BDEPEND="app-arch/unzip"
-S="${WORKDIR}/${MYP}"
-
-distutils_enable_tests pytest
diff --git a/dev-python/w3lib/Manifest b/dev-python/w3lib/Manifest
new file mode 100644
index 000000000..2d046d151
--- /dev/null
+++ b/dev-python/w3lib/Manifest
@@ -0,0 +1 @@
+DIST w3lib-2.1.2.tar.gz 48715 BLAKE2B 8ec3514351634430b348d19a87e21fc95fbb230bac51b59801f692c4d2dc8426bd9740db49949efb2df80eda69026fb202ea0ae80fba45506a366c0b66bc8b29 SHA512 cfff2520cab24b84c93223125de3fb813e4d40d23a022f7fc34196c3033adb5dfc01358d62566dcc4b763d40b271e1428eba0250ba997228d07f35cd3721e37e
diff --git a/dev-python/w3lib/metadata.xml b/dev-python/w3lib/metadata.xml
new file mode 100644
index 000000000..3bec3e36d
--- /dev/null
+++ b/dev-python/w3lib/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">scrapy/w3lib</remote-id>
+ <remote-id type="pypi">w3lib</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/w3lib/w3lib-2.1.2.ebuild b/dev-python/w3lib/w3lib-2.1.2.ebuild
new file mode 100644
index 000000000..a6c954743
--- /dev/null
+++ b/dev-python/w3lib/w3lib-2.1.2.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1 pypi
+
+DESCRIPTION="Library of web-related functions"
+HOMEPAGE="
+ https://scrapy.org/
+ https://pypi.org/project/w3lib/
+ https://github.com/scrapy/w3lib
+"
+
+LICENSE="BSD"
+SLOT=0
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-hoverxref \
+ dev-python/sphinx-notfound-page
+
+EPYTEST_DESELECT=(
+ # https://github.com/scrapy/w3lib/issues/164
+ tests/test_url.py::UrlTests::test_add_or_replace_parameter
+)
diff --git a/dev-python/webpy/Manifest b/dev-python/webpy/Manifest
index b793bd447..6666bae53 100644
--- a/dev-python/webpy/Manifest
+++ b/dev-python/webpy/Manifest
@@ -1 +1 @@
-DIST webpy-0.62.tar.gz 104552 BLAKE2B bd94dc9ca9aaf2c4ba9be2d14e66c176031818617f6b505c85e849d299b0fd7f4b77d008d23e78c922584cbd46938206fb5f0f4c19f082811d800d259014b79a SHA512 2b91977bb78e9387c78ed893b098d665a5189e7b9cb1eacbaf903564285524dabc960107b0e1ba4a85c3aedf73ef63ae05338cc71ccacad47a310970afb77cd9
+DIST webpy-0.62.gh.tar.gz 104552 BLAKE2B bd94dc9ca9aaf2c4ba9be2d14e66c176031818617f6b505c85e849d299b0fd7f4b77d008d23e78c922584cbd46938206fb5f0f4c19f082811d800d259014b79a SHA512 2b91977bb78e9387c78ed893b098d665a5189e7b9cb1eacbaf903564285524dabc960107b0e1ba4a85c3aedf73ef63ae05338cc71ccacad47a310970afb77cd9
diff --git a/dev-python/webpy/metadata.xml b/dev-python/webpy/metadata.xml
index 87413cf48..244db324a 100644
--- a/dev-python/webpy/metadata.xml
+++ b/dev-python/webpy/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
<upstream>
diff --git a/dev-python/webpy/webpy-0.62.ebuild b/dev-python/webpy/webpy-0.62.ebuild
index 083e62602..21d0dfedb 100644
--- a/dev-python/webpy/webpy-0.62.ebuild
+++ b/dev-python/webpy/webpy-0.62.ebuild
@@ -1,9 +1,10 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="8"
+EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
inherit distutils-r1
@@ -11,9 +12,9 @@ DESCRIPTION="A web framework for python that is as simple as it is powerful"
HOMEPAGE="
https://webpy.org
https://github.com/webpy/webpy
- https://pypi.org/project/web.py
+ https://pypi.org/project/web.py/
"
-SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
LICENSE="public-domain"
SLOT="0"
@@ -21,20 +22,18 @@ KEYWORDS="~amd64 ~x86"
RDEPEND="dev-python/cheroot[${PYTHON_USEDEP}]"
+EPYTEST_IGNORE=(
+ # TODO: tests require postgresql and mysql running
+ rm tests/test_db.py
+)
+
+EPYTEST_DESELECT=(
+ # https://github.com/webpy/webpy/issues/712
+ # https://github.com/webpy/webpy/issues/713
+ tests/test_application.py::ApplicationTest::test_routing
+ tests/test_session.py::DiskStoreTest::testStoreConcurrent
+)
+
distutils_enable_tests pytest
-distutils_enable_sphinx docs
-src_prepare() {
- #tests require postgresql and mysql running
- rm tests/test_db.py
- default
-}
-
-python_test() {
- #https://github.com/webpy/webpy/issues/712
- #https://github.com/webpy/webpy/issues/713
- epytest -vv \
- --deselect tests/test_application.py::ApplicationTest::test_routing \
- --deselect tests/test_session.py::DiskStoreTest::testStoreConcurrent \
- || die
-}
+distutils_enable_sphinx docs
diff --git a/dev-python/webrtcvad/Manifest b/dev-python/webrtcvad/Manifest
index 6c9714040..f7a5e1f0f 100644
--- a/dev-python/webrtcvad/Manifest
+++ b/dev-python/webrtcvad/Manifest
@@ -1 +1,2 @@
+DIST webrtcvad-2.0.10-patches.tar.xz 36072 BLAKE2B efe6cfccfae8c2706e4c85d47fcf6cf91135ae85dfb59aec9d61457fa3f2856ea2e51c2df9b12dd0fc79d0484f56f56277e7782faf3564931d75e252b3ebbd3c SHA512 0f18dfe92d767cf16c49677a88089f5b3a44b9e2e593d89cbcd145c23a0d049f09eb720ccc5b13a464943e9b68f1a5e741a40ed300a9a28a0eee33277ca19bfb
DIST webrtcvad-2.0.10.tar.gz 183166 BLAKE2B aa36c895c23cb9d4ea9679c3a7231abac7ef5be4adf61f06fc557fff69ab84181cabf737d4c0a7255d518454a94ca3c4c0fc969405777f02ab3c1a7c0403eac2 SHA512 ce414e39c3128e22495e8e21e46d09485952168ca763937cebb654dab87ffcfecea8198c74c009a47d8caed2a8ebc22572036fda4be36597d82e6e7057f80ae2
diff --git a/dev-python/webrtcvad/metadata.xml b/dev-python/webrtcvad/metadata.xml
index cbe3c6a53..5b895343a 100644
--- a/dev-python/webrtcvad/metadata.xml
+++ b/dev-python/webrtcvad/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>smaniotto.nicola@gmail.com</email>
<name>Nicola Smaniotto</name>
</maintainer>
+ <upstream>
+ <remote-id type="github">wiseman/py-webrtcvad</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/webrtcvad/webrtcvad-2.0.10-r1.ebuild b/dev-python/webrtcvad/webrtcvad-2.0.10-r1.ebuild
new file mode 100644
index 000000000..7c5d6f1d8
--- /dev/null
+++ b/dev-python/webrtcvad/webrtcvad-2.0.10-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python interface to the Google WebRTC Voice Activity Detector (VAD)"
+HOMEPAGE="https://github.com/wiseman/py-webrtcvad"
+SRC_URI="https://github.com/wiseman/py-${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
+ https://gentoo.kropotkin.rocks/distfiles/${P}-patches.tar.xz"
+
+S="${WORKDIR}/py-${P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# Depends on a package removed from ::gentoo (bug #915162)
+RESTRICT="test"
+
+PATCHES=(
+ "${WORKDIR}/${PN}-update-webrtc.patch"
+ "${WORKDIR}/${PN}-fix-mem-leak.patch"
+ "${WORKDIR}/${PN}-fix-oob.patch"
+)
diff --git a/dev-python/webrtcvad/webrtcvad-2.0.10.ebuild b/dev-python/webrtcvad/webrtcvad-2.0.10.ebuild
deleted file mode 100644
index 389b09dca..000000000
--- a/dev-python/webrtcvad/webrtcvad-2.0.10.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..9} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python interface to the Google WebRTC Voice Activity Detector (VAD)"
-HOMEPAGE="https://github.com/wiseman/py-webrtcvad"
-SRC_URI="https://github.com/wiseman/py-${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-S="${WORKDIR}/py-${P}"
-
-distutils_enable_tests nose
-
-DEPEND="
- test? (
- dev-python/memory_profiler[${PYTHON_USEDEP}]
- )
- "
diff --git a/dev-python/wrapio/Manifest b/dev-python/wrapio/Manifest
new file mode 100644
index 000000000..4556e129a
--- /dev/null
+++ b/dev-python/wrapio/Manifest
@@ -0,0 +1 @@
+DIST wrapio-2.0.0.tar.gz 5197 BLAKE2B 1fc6bc0792b0a14b4c39bf9be85baa33580e98535d44d2aae726713a838e99b0b8e3ce69d17242843a754966dc6fc502452a8c095079b785f622883620ed9a68 SHA512 ae15cf05c7689a738514f4c6bd815bdbc90b6929a1da958486cd3b0bd5ee7055fa13d7e8edccbff6cb5fdf07088ddad316d9cd42e2d2e97fe56687b8f73cc84c
diff --git a/dev-python/wrapio/metadata.xml b/dev-python/wrapio/metadata.xml
new file mode 100644
index 000000000..1dde81290
--- /dev/null
+++ b/dev-python/wrapio/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>ceamac@gentoo.org</email>
+ <description>Primary maintainer</description>
+</maintainer>
+<upstream>
+ <remote-id type="github">Exahilosys/wrapio</remote-id>
+ <remote-id type="pypi">wrapio</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/dev-python/wrapio/wrapio-2.0.0.ebuild b/dev-python/wrapio/wrapio-2.0.0.ebuild
new file mode 100644
index 000000000..fd567c875
--- /dev/null
+++ b/dev-python/wrapio/wrapio-2.0.0.ebuild
@@ -0,0 +1,18 @@
+# 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_{10..11} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="Handling event-based streams in Python"
+HOMEPAGE="
+ https://github.com/Exahilosys/wrapio
+ https://pypi.org/project/wrapio/
+ "
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
diff --git a/dev-python/xattr/Manifest b/dev-python/xattr/Manifest
new file mode 100644
index 000000000..9d50d9c8d
--- /dev/null
+++ b/dev-python/xattr/Manifest
@@ -0,0 +1,2 @@
+DIST xattr-1.0.0.tar.gz 15880 BLAKE2B 4a02743379f9c80658690ee2fa2f204de17cb1f8667c23c43876f8dd88dee974b73d076dc25d46b374d32606190f26cd003b13ffb7ba5f9262e57e71d4228e9d SHA512 0939e341d960f63e181328ed39dd4ab1e8f34d87d25165d646463e793c7a135260f07b106067bbee803838a5eb003a213961137b45f0a340e81dbf659352dbce
+DIST xattr-1.1.0.tar.gz 16634 BLAKE2B e920afbdc7c154e4558debb08f3b3230295854c799dcc3a28eaddb6d5a9a011bcab460c3d9a3f944cc43705796fb1fb5c57bb3b15653a128b91be17decc7b86c SHA512 b23eb96be5d6810ff2251418a2c2687d15cc98ceed422abe4a8bce01c77dda2969525f07feaf468bc43b60b6df6d573f15787b6221ed5816a772abd93ac47f8f
diff --git a/dev-python/xattr/metadata.xml b/dev-python/xattr/metadata.xml
new file mode 100644
index 000000000..914c47b33
--- /dev/null
+++ b/dev-python/xattr/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <bugs-to>https://github.com/xattr/xattr/issues</bugs-to>
+ <remote-id type="pypi">xattr</remote-id>
+ <remote-id type="github">xattr/xattr</remote-id>
+ <maintainer>
+ <name>Bob Ippolito</name>
+ <email>bob@redivi.com</email>
+ </maintainer>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/xattr/xattr-1.0.0.ebuild b/dev-python/xattr/xattr-1.0.0.ebuild
new file mode 100644
index 000000000..824aee766
--- /dev/null
+++ b/dev-python/xattr/xattr-1.0.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_EXT=1
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python wrapper for extended filesystem attributes"
+HOMEPAGE="
+ https://pypi.org/project/xattr/
+ https://github.com/xattr/xattr
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/cffi-1.16.0[${PYTHON_USEDEP}]
+ ' 'python*')
+ test? ( sys-apps/attr )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ cd "${T}" || die
+ epytest "${S}"/tests
+}
+
+check_xattr() {
+ touch tt || die
+
+ setfattr -n "user.testAttr" -v "attribute value" tt || return 1
+ getfattr -n "user.testAttr" tt >/dev/null || return 1
+
+ rm -f tt
+ return 0
+}
+
+src_test() {
+ if ! check_xattr; then
+ ewarn "Extended attributes not supported on your filesystem, skipping tests"
+ return 0
+ fi
+
+ distutils-r1_src_test
+}
diff --git a/dev-python/xattr/xattr-1.1.0.ebuild b/dev-python/xattr/xattr-1.1.0.ebuild
new file mode 100644
index 000000000..824aee766
--- /dev/null
+++ b/dev-python/xattr/xattr-1.1.0.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_EXT=1
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python wrapper for extended filesystem attributes"
+HOMEPAGE="
+ https://pypi.org/project/xattr/
+ https://github.com/xattr/xattr
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/cffi-1.16.0[${PYTHON_USEDEP}]
+ ' 'python*')
+ test? ( sys-apps/attr )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ cd "${T}" || die
+ epytest "${S}"/tests
+}
+
+check_xattr() {
+ touch tt || die
+
+ setfattr -n "user.testAttr" -v "attribute value" tt || return 1
+ getfattr -n "user.testAttr" tt >/dev/null || return 1
+
+ rm -f tt
+ return 0
+}
+
+src_test() {
+ if ! check_xattr; then
+ ewarn "Extended attributes not supported on your filesystem, skipping tests"
+ return 0
+ fi
+
+ distutils-r1_src_test
+}
diff --git a/dev-python/xunitparser/Manifest b/dev-python/xunitparser/Manifest
index 7bb29510f..067579657 100644
--- a/dev-python/xunitparser/Manifest
+++ b/dev-python/xunitparser/Manifest
@@ -1 +1 @@
-DIST xunitparser-1.3.3.tar.gz 13494 BLAKE2B bd4ff8533419b027e7ffe3cee741d1672d3461962ec5f7d87026c181603130b6ac266b9c7cf2fbaaa1ccbbc3eeb8182f39b0bdfaf123c52bebabd793bcfe740f SHA512 4b681cbaa52a01b780286d202932f1995998b5ce58571882dbc4f3ddb24d3f353e50c5693e47cbb8f4de2ab1ead1357c68d8fcd37fdfc8511ff2f54cd0242564
+DIST xunitparser-v1.3.4.tar.gz 13430 BLAKE2B 8369170f13360f51a51b2ac47c084fd75c60d7031a62909fe8bcb5bf72e4501eb0b5a351d967a4b00a480487d576323e7e072d5161c5e2e1ac5c5ac82edd4a1c SHA512 2e1d52ab225d82fe133cbfcbd73e403ff990e1321766bf61c4a3b947305a41a76cdfede874702eb35a2f4b5e711a239304193492621dc47dfcc76d623ef207bf
diff --git a/dev-python/xunitparser/metadata.xml b/dev-python/xunitparser/metadata.xml
index c698af234..ac9e2cd98 100644
--- a/dev-python/xunitparser/metadata.xml
+++ b/dev-python/xunitparser/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>contact@hacktivis.me</email>
<name>Haelwenn (lanodan) Monnier</name>
</maintainer>
+ <upstream>
+ <remote-id type="gitlab">woob/xunitparser</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/dev-python/xunitparser/xunitparser-1.3.3.ebuild b/dev-python/xunitparser/xunitparser-1.3.3.ebuild
deleted file mode 100644
index dfcbf4143..000000000
--- a/dev-python/xunitparser/xunitparser-1.3.3.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 2012-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8} )
-
-inherit distutils-r1
-
-DESCRIPTION="Read JUnit/XUnit XML files and map them to Python objects"
-HOMEPAGE="https://pypi.python.org/pypi/xunitparser"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE=""
-RESTRICT="test" #why? have you tried to fix the iasue?
-
-distutils_enable_tests unittest
-
-DOCS=( README LICENSE AUTHORS )
diff --git a/dev-python/xunitparser/xunitparser-1.3.4.ebuild b/dev-python/xunitparser/xunitparser-1.3.4.ebuild
new file mode 100644
index 000000000..5f90a7d83
--- /dev/null
+++ b/dev-python/xunitparser/xunitparser-1.3.4.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2012-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Read JUnit/XUnit XML files and map them to Python objects"
+HOMEPAGE="https://gitlab.com/woob/xunitparser/"
+SRC_URI="https://gitlab.com/woob/xunitparser/-/archive/v${PV}/xunitparser-v${PV}.tar.gz"
+S="${WORKDIR}/xunitparser-v${PV}/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+distutils_enable_tests unittest
+
+DOCS=( README LICENSE AUTHORS )
diff --git a/dev-python/yams/Manifest b/dev-python/yams/Manifest
index cd4697dd3..d8979f306 100644
--- a/dev-python/yams/Manifest
+++ b/dev-python/yams/Manifest
@@ -1 +1 @@
-DIST yams-0.7.3.tar.gz 31201 BLAKE2B 0b09157c545c3ffe4b2b792c8bd00ebf66f78b65a45904db397b7295d43f4cdefd18c5ef855b88f5652debf6c43902d8e8415cf6d134c51d225bc6ae6ba084dc SHA512 785aae9ce0e371e50dac4070a06102d6ac440acd179b6840d4283b0298dd0ae36f12b9f695ddbf7ee2bb281e4d6e1cfd600a444c4169d5652662da1f8c52f43d
+DIST yams-0.7.3.gh.tar.gz 31201 BLAKE2B 0b09157c545c3ffe4b2b792c8bd00ebf66f78b65a45904db397b7295d43f4cdefd18c5ef855b88f5652debf6c43902d8e8415cf6d134c51d225bc6ae6ba084dc SHA512 785aae9ce0e371e50dac4070a06102d6ac440acd179b6840d4283b0298dd0ae36f12b9f695ddbf7ee2bb281e4d6e1cfd600a444c4169d5652662da1f8c52f43d
diff --git a/dev-python/yams/metadata.xml b/dev-python/yams/metadata.xml
index 32d9b15d9..e6e16e8df 100644
--- a/dev-python/yams/metadata.xml
+++ b/dev-python/yams/metadata.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>myrvogna@electrosphe.re</email>
@@ -7,5 +7,10 @@
</maintainer>
<upstream>
<remote-id type="github">Berulacks/yams</remote-id>
+ <remote-id type="pypi">YAMScrobbler</remote-id>
+ <maintainer>
+ <name>Derin Yarsuvat</name>
+ <email>derin@ml1.net</email>
+ </maintainer>
</upstream>
</pkgmetadata>
diff --git a/dev-python/yams/yams-0.7.3-r1.ebuild b/dev-python/yams/yams-0.7.3-r1.ebuild
new file mode 100644
index 000000000..9e5c63c71
--- /dev/null
+++ b/dev-python/yams/yams-0.7.3-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1 systemd
+
+DESCRIPTION="Yet Another MPD Scrobbler (for Last.FM)"
+HOMEPAGE="https://github.com/Berulacks/yams"
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/Berulacks/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/Berulacks/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+
+RDEPEND="
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/python-mpd2[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ media-sound/mpd
+"
+
+python_install_all() {
+ systemd_douserunit yams.service
+
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/yams/yams-0.7.3.ebuild b/dev-python/yams/yams-0.7.3.ebuild
deleted file mode 100644
index 51b8e7eaa..000000000
--- a/dev-python/yams/yams-0.7.3.ebuild
+++ /dev/null
@@ -1,48 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7..9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1 systemd
-
-DESCRIPTION="A Last.FM scrobbler for MPD (Yet Another Mpd Scrobbler)"
-HOMEPAGE="https://github.com/Berulacks/yams"
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://github.com/Berulacks/yams.git"
- inherit git-r3
-else
- SRC_URI="https://github.com/Berulacks/yams/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64"
-fi
-
-LICENSE="GPL-3"
-SLOT="0"
-
-DEPEND="
- dev-python/psutil[${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- dev-python/python-mpd[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
-"
-RDEPEND="
- media-sound/mpd
- ${DEPEND}
-"
-
-python_prepare_all() {
- # Change application name so the .egg-info directory has the
- # same name as the Python site-package one for consistency
- sed -e "s/YAMScrobbler/yams/" -i setup.py || die
-
- distutils-r1_python_prepare_all
-}
-
-python_install_all() {
- systemd_douserunit yams.service
-
- distutils-r1_python_install_all
-}
diff --git a/dev-python/yams/yams-9999.ebuild b/dev-python/yams/yams-9999.ebuild
index 51b8e7eaa..9e5c63c71 100644
--- a/dev-python/yams/yams-9999.ebuild
+++ b/dev-python/yams/yams-9999.ebuild
@@ -1,46 +1,35 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-PYTHON_COMPAT=( python3_{7..9} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python3_{10..12} )
+DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1 systemd
-DESCRIPTION="A Last.FM scrobbler for MPD (Yet Another Mpd Scrobbler)"
+DESCRIPTION="Yet Another MPD Scrobbler (for Last.FM)"
HOMEPAGE="https://github.com/Berulacks/yams"
if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://github.com/Berulacks/yams.git"
+ EGIT_REPO_URI="https://github.com/Berulacks/${PN}.git"
inherit git-r3
else
- SRC_URI="https://github.com/Berulacks/yams/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ SRC_URI="https://github.com/Berulacks/${PN}/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
KEYWORDS="~amd64"
fi
LICENSE="GPL-3"
SLOT="0"
-DEPEND="
+RDEPEND="
dev-python/psutil[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
- dev-python/python-mpd[${PYTHON_USEDEP}]
+ dev-python/python-mpd2[${PYTHON_USEDEP}]
dev-python/requests[${PYTHON_USEDEP}]
-"
-RDEPEND="
media-sound/mpd
- ${DEPEND}
"
-python_prepare_all() {
- # Change application name so the .egg-info directory has the
- # same name as the Python site-package one for consistency
- sed -e "s/YAMScrobbler/yams/" -i setup.py || die
-
- distutils-r1_python_prepare_all
-}
-
python_install_all() {
systemd_douserunit yams.service
diff --git a/dev-python/yaql/Manifest b/dev-python/yaql/Manifest
deleted file mode 100644
index 3bcb8fe64..000000000
--- a/dev-python/yaql/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST yaql-1.1.3.tar.gz 111546 BLAKE2B 2bb2567532cf22a200074baa2e85e0fe90e402dde66e2cbad5f750c95f4e76ee94a068d0be9f741fa932ba4f505f97a2bacf1ad367dea308ce0f69a4d94c9033 SHA512 e85712f65dc932126c75cc84403d14639f76098f4bd22ff2106a68afb6685794e1797154bbf1343e1f82a8b4a13e351d2d0dec1f235e31eecd96f6394116cd4b
diff --git a/dev-python/yaql/metadata.xml b/dev-python/yaql/metadata.xml
deleted file mode 100644
index 6abde7540..000000000
--- a/dev-python/yaql/metadata.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
- YAQL (Yet Another Query Language) is an embeddable and extensible query
- language, that allows performing complex queries against arbitrary objects.
- It has a vast and comprehensive standard library of frequently used
- querying functions and can be extend even further with user-specified
- functions. YAQL is written in python and is distributed via PyPI.
- </longdescription>
- <upstream>
- <remote-id type="pypi">yaql</remote-id>
- <remote-id type="github">openstack/yaql</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/yaql/yaql-1.1.3.ebuild b/dev-python/yaql/yaql-1.1.3.ebuild
deleted file mode 100644
index 5786ce7e2..000000000
--- a/dev-python/yaql/yaql-1.1.3.ebuild
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_{7,8} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
-inherit distutils-r1
-
-DESCRIPTION="YAQL: Yet Another Query Language"
-HOMEPAGE="https://github.com/openstack/yaql"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86 ~amd64-linux ~x86-linux"
-IUSE=""
-
-DEPEND=">=dev-python/pbr-1.8[${PYTHON_USEDEP}]"
-RDEPEND=">=dev-python/pbr-1.8[${PYTHON_USEDEP}]
- >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
- >=dev-python/python-dateutil-2.4.2[${PYTHON_USEDEP}]
- dev-python/ply[${PYTHON_USEDEP}]
- >=dev-python/six-1.9.0[${PYTHON_USEDEP}]"
diff --git a/dev-python/yara-python/Manifest b/dev-python/yara-python/Manifest
deleted file mode 100644
index 2c1e298dc..000000000
--- a/dev-python/yara-python/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST yara-python-4.1.0.tar.gz 33717 BLAKE2B f3ec4a90e6d00fa9bc6fe649ce0eb373ae2e3f5fb0c9290020abcb111be10608958ae45733e8200b7199cb43b14a52b2e3ebebf794ac1ab33006467014134b62 SHA512 8b9ce780b6639ab2ee5222adec888c7e0fb6be81c7c64a8b33b033de3f261f9707aa208b7a3a86749f6e86a83fe6d73941c816857faf6eb714399d1f50239b51
diff --git a/dev-python/yara-python/files/yara-python-4.1.0-system-libyara.patch b/dev-python/yara-python/files/yara-python-4.1.0-system-libyara.patch
deleted file mode 100644
index dd2740073..000000000
--- a/dev-python/yara-python/files/yara-python-4.1.0-system-libyara.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/setup.py
-+++ b/setup.py
-@@ -370,5 +370,6 @@
- 'update': UpdateCommand},
- ext_modules=[Extension(
- name='yara',
-- include_dirs=['yara/libyara/include', 'yara/libyara/', '.'],
-+ include_dirs=['/usr/include', 'yara/libyara/include', 'yara/libyara/', '.'],
-+ libraries=['yara'],
- sources=['yara-python.c'])])
diff --git a/dev-python/yara-python/metadata.xml b/dev-python/yara-python/metadata.xml
deleted file mode 100644
index 979fdba1a..000000000
--- a/dev-python/yara-python/metadata.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/VirusTotal/yara-python/issues</bugs-to>
- <remote-id type="github">VirusTotal/yara-python</remote-id>
- <remote-id type="pypi">yara-python</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/yara-python/yara-python-4.1.0.ebuild b/dev-python/yara-python/yara-python-4.1.0.ebuild
deleted file mode 100644
index 32a20b842..000000000
--- a/dev-python/yara-python/yara-python-4.1.0.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-#with pypy3 undefined symbol: PyDescr_NewGetSet
-PYTHON_COMPAT=( python3_{8..10} )
-
-inherit distutils-r1
-
-DESCRIPTION="Python interface for a malware identification and classification tool"
-HOMEPAGE="https://github.com/VirusTotal/yara-python"
-SRC_URI="https://github.com/virustotal/yara-python/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- ${PYTHON_DEPS}
- =app-forensics/yara-$(ver_cut 1-2)*
-"
-DEPEND="${RDEPEND}"
-
-PATCHES=( "${FILESDIR}/${P}-system-libyara.patch" )
-
-distutils_enable_tests setup.py
-
-compile_python() {
- distutils-r1_python_compile --dynamic-linking
-}
-
-src_compile() {
- python_foreach_impl compile_python
-}
diff --git a/dev-python/zVMCloudConnector/Manifest b/dev-python/zVMCloudConnector/Manifest
deleted file mode 100644
index 8b65457a0..000000000
--- a/dev-python/zVMCloudConnector/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST zVMCloudConnector-1.4.1.tar.gz 238562 BLAKE2B 048caf53328cb96589ba4cdba747dce662cf931a9356e10325733800188e945a7f32cbfc5d6eed7900563b384952b8103b446d28c4c5c5ff7b51444605c7a8bc SHA512 206776bd04ef547df530438efe6209db7374c33727d13269f6f3632aa69c74713b358e628dc4fab8afc6657ac65a17bd2ec4c6f2984385de2187581fd734e65c
diff --git a/dev-python/zVMCloudConnector/metadata.xml b/dev-python/zVMCloudConnector/metadata.xml
deleted file mode 100644
index c5785e536..000000000
--- a/dev-python/zVMCloudConnector/metadata.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <description>co-maintainers welcome</description>
- <email>lssndrbarbieri@gmail.com</email>
- <name>Alessandro Barbieri</name>
- </maintainer>
- <longdescription lang="en">
- z/VM cloud connector is a development sdk for manage z/VM. It provides a set of APIs to operate z/VM including guest, image, network, volume etc.
- </longdescription>
- <upstream>
- <remote-id type="pypi">zVMCloudConnector</remote-id>
- </upstream>
-</pkgmetadata>
diff --git a/dev-python/zVMCloudConnector/zVMCloudConnector-1.4.1.ebuild b/dev-python/zVMCloudConnector/zVMCloudConnector-1.4.1.ebuild
deleted file mode 100644
index 44e242c99..000000000
--- a/dev-python/zVMCloudConnector/zVMCloudConnector-1.4.1.ebuild
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_8 )
-
-inherit distutils-r1
-
-DESCRIPTION="a development sdk for managing z/VM"
-HOMEPAGE="https://github.com/mfcloud/python-zvm-sdk"
-SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE=""
-
-DEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
- >=dev-python/jsonschema-2.3.0[${PYTHON_USEDEP}]
- >=dev-python/netaddr-0.7.5[${PYTHON_USEDEP}]
- >=dev-python/pyjwt-1.0.1[${PYTHON_USEDEP}]
- >=dev-python/requests-2.6.0[${PYTHON_USEDEP}]
- >=dev-python/routes-2.2.0[${PYTHON_USEDEP}]
- >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
- >=dev-python/webob-1.2.3[${PYTHON_USEDEP}]"
-RDEPEND="${DEPEND}"
diff --git a/dev-python/zenlib/Manifest b/dev-python/zenlib/Manifest
new file mode 100644
index 000000000..7c073246a
--- /dev/null
+++ b/dev-python/zenlib/Manifest
@@ -0,0 +1,4 @@
+DIST zenlib-2.0.0.tar.gz 16921 BLAKE2B a9bedfd8bd28e2f50bbc11dbab21ba6c0f35b60e4e1438b1ad7666ed3b8688a6b9c611f88d8fbf915f69ebddc5420315080a6a0a8ed2983d14125bb28d091749 SHA512 2e4fa3d299d8da79930ea3a0f948472d49fb430727f100bb6b9f9e28d4792a229d2dc33ecaabd20d9e790a783acecb1ccb00381b97dcc02f8c5353abef74fb31
+DIST zenlib-2.0.4.tar.gz 16971 BLAKE2B e5e58aa86742914c67a58e072c312c92db94b96947cdffdf3adbfc50d8efe6dde1fae88965ccf5685d2225bbf7b745f717529b1f0ed41857260199a0f3d8d2d2 SHA512 12ffef2e2ab23136bdc24cdac5eb3a031bb581d346a107306455aa5dc5a66757599596770cf7b7e6ecde73fbec39b4276efcd3a191a2d29f64e75e5a01ed25d1
+DIST zenlib-2.1.1.tar.gz 17139 BLAKE2B f9ff56b120d72786bd43cf60120f65c4b8b6d2ed47eb6656bc0c377e3b35ba60d6b1f348dce12b1096ebb752f073dd7113cb6765da98de279818bb7062ca8522 SHA512 f5db26e895e07266334b788530186cfa8f8ac9c239f65b8ee253d250cb47bd5a57ba6605b0b78f07b744f53cc5b3f9ab2ff229d098c6604d7d2d46e97ba34629
+DIST zenlib-2.1.2.tar.gz 17293 BLAKE2B 3d5067b9796f31d28d0ca04c842b4ef1807e0557a77c5b6ec5798cfa2aa04ee5e7eafa3549df6add4228e7c3014ca33eb1584c0aee6db9c0acc882f170972b36 SHA512 a0a53ed63a3efe83dc8f49fd512685b82ed383494f404072a47734c02a1955e0a4c9a6c9df48503419c82cb7479783669b6de8deef174a597ab73cad61da5c3e
diff --git a/dev-python/zenlib/metadata.xml b/dev-python/zenlib/metadata.xml
new file mode 100644
index 000000000..c87e3f8a0
--- /dev/null
+++ b/dev-python/zenlib/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dev@pyl.onl</email>
+ <name>Zen</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">desultory/zenlib</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/zenlib/zenlib-2.0.0.ebuild b/dev-python/zenlib/zenlib-2.0.0.ebuild
new file mode 100644
index 000000000..f9a184c85
--- /dev/null
+++ b/dev-python/zenlib/zenlib-2.0.0.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..12} )
+inherit distutils-r1
+
+DESCRIPTION="Useful python decorators and utilities"
+HOMEPAGE="https://github.com/desultory/zenlib"
+SRC_URI="https://github.com/desultory/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
diff --git a/dev-python/zenlib/zenlib-2.0.4.ebuild b/dev-python/zenlib/zenlib-2.0.4.ebuild
new file mode 100644
index 000000000..f9a184c85
--- /dev/null
+++ b/dev-python/zenlib/zenlib-2.0.4.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..12} )
+inherit distutils-r1
+
+DESCRIPTION="Useful python decorators and utilities"
+HOMEPAGE="https://github.com/desultory/zenlib"
+SRC_URI="https://github.com/desultory/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
diff --git a/dev-python/zenlib/zenlib-2.1.1.ebuild b/dev-python/zenlib/zenlib-2.1.1.ebuild
new file mode 100644
index 000000000..a517df4b6
--- /dev/null
+++ b/dev-python/zenlib/zenlib-2.1.1.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..12} )
+inherit distutils-r1
+
+DESCRIPTION="Useful python decorators and utilities"
+HOMEPAGE="https://github.com/desultory/zenlib"
+SRC_URI="https://github.com/desultory/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
diff --git a/dev-python/zenlib/zenlib-2.1.2.ebuild b/dev-python/zenlib/zenlib-2.1.2.ebuild
new file mode 100644
index 000000000..a517df4b6
--- /dev/null
+++ b/dev-python/zenlib/zenlib-2.1.2.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{11..12} )
+inherit distutils-r1
+
+DESCRIPTION="Useful python decorators and utilities"
+HOMEPAGE="https://github.com/desultory/zenlib"
+SRC_URI="https://github.com/desultory/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
diff --git a/dev-python/zopfli/Manifest b/dev-python/zopfli/Manifest
new file mode 100644
index 000000000..3ecb0f1e3
--- /dev/null
+++ b/dev-python/zopfli/Manifest
@@ -0,0 +1 @@
+DIST zopfli-0.2.2.zip 205320 BLAKE2B 30bc3ed16c82e9527e5445b0fd758bf841ae970f4b10b6ebe3d88db5cf085a5b8e560e39282cfaacb6074184b08da7c142da330f7ba582fe35b5c1fdbdb0bd51 SHA512 5fd26039ce0bd910714fc4706a72d04bb5cf794957547943174ef12efe089c932802cc6bef4840a532f24d93fa726c0c23b0b1c2e6ec9eb3209c2f54b0eb8ba0
diff --git a/dev-python/zopfli/metadata.xml b/dev-python/zopfli/metadata.xml
new file mode 100644
index 000000000..7d223b087
--- /dev/null
+++ b/dev-python/zopfli/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">zopfli</remote-id>
+ <remote-id type="github">fonttools/py-zopfli</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/zopfli/zopfli-0.2.2.ebuild b/dev-python/zopfli/zopfli-0.2.2.ebuild
new file mode 100644
index 000000000..b27a0dab3
--- /dev/null
+++ b/dev-python/zopfli/zopfli-0.2.2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+DISTUTILS_USE_PEP517=setuptools
+DISTUTILS_EXT=1
+inherit distutils-r1 pypi
+
+DESCRIPTION="Zopfli module for Python"
+HOMEPAGE="
+ https://pypi.org/project/zopfli/
+ https://github.com/fonttools/py-zopfli
+"
+SRC_URI="$(pypi_sdist_url ${PN} ${PV} .zip)"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="app-arch/zopfli:="
+RDEPEND="${DEPEND}"
+BDEPEND="
+ app-arch/unzip
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+src_configure() {
+ export USE_SYSTEM_ZOPFLI=1
+ distutils-r1_src_configure
+}