summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2022-04-12 21:03:09 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2022-04-12 21:03:09 +0000
commitd97953e6ff67978da9554e7b4601aedceb21e215 (patch)
tree674053c902db6972b9716c9ac3b1e960ee7a5358 /dev-python
parent1d1fa5bb30df70070bbbbd2b777b839d31f09c41 (diff)
downloadbaldeagleos-repo-d97953e6ff67978da9554e7b4601aedceb21e215.tar.gz
baldeagleos-repo-d97953e6ff67978da9554e7b4601aedceb21e215.tar.xz
baldeagleos-repo-d97953e6ff67978da9554e7b4601aedceb21e215.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/DAWG-Python/DAWG-Python-0.7.2.ebuild16
-rw-r--r--dev-python/DAWG-Python/Manifest1
-rw-r--r--dev-python/DAWG-Python/metadata.xml12
-rw-r--r--dev-python/EbookLib/EbookLib-0.17.1.ebuild15
-rw-r--r--dev-python/EbookLib/Manifest1
-rw-r--r--dev-python/EbookLib/metadata.xml12
-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/Pyro5/Manifest1
-rw-r--r--dev-python/Pyro5/Pyro5-5.13.1.ebuild30
-rw-r--r--dev-python/Pyro5/metadata.xml12
-rw-r--r--dev-python/SLPP/Manifest1
-rw-r--r--dev-python/SLPP/SLPP-1.2.3.ebuild15
-rw-r--r--dev-python/SLPP/metadata.xml12
-rw-r--r--dev-python/SQLAlchemy-Utils/Manifest2
-rw-r--r--dev-python/SQLAlchemy-Utils/SQLAlchemy-Utils-0.37.9.ebuild45
-rw-r--r--dev-python/SQLAlchemy-Utils/SQLAlchemy-Utils-0.38.2.ebuild45
-rw-r--r--dev-python/SQLAlchemy-Utils/metadata.xml13
-rw-r--r--dev-python/WSME/Manifest1
-rw-r--r--dev-python/WSME/WSME-0.11.0.ebuild42
-rw-r--r--dev-python/WSME/metadata.xml13
-rw-r--r--dev-python/XenAPI/Manifest2
-rw-r--r--dev-python/XenAPI/XenAPI-2.14-r1.ebuild22
-rw-r--r--dev-python/XenAPI/XenAPI-22.14.0.ebuild83
-rw-r--r--dev-python/XenAPI/metadata.xml12
-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/Manifest2
-rw-r--r--dev-python/aiopg/aiopg-1.3.2_beta1.ebuild45
-rw-r--r--dev-python/aiopg/aiopg-1.3.3.ebuild45
-rw-r--r--dev-python/aiopg/metadata.xml9
-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/antlr4-python3-runtime/Manifest1
-rw-r--r--dev-python/antlr4-python3-runtime/antlr4-python3-runtime-4.10.ebuild25
-rw-r--r--dev-python/aodhclient/Manifest1
-rw-r--r--dev-python/aodhclient/aodhclient-2.4.1.ebuild48
-rw-r--r--dev-python/aodhclient/metadata.xml14
-rw-r--r--dev-python/asciimatics/Manifest1
-rw-r--r--dev-python/asciimatics/asciimatics-1.13.0.ebuild37
-rw-r--r--dev-python/asciimatics/asciimatics-9999.ebuild40
-rw-r--r--dev-python/asciimatics/metadata.xml14
-rw-r--r--dev-python/ascim/Manifest1
-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.xml14
-rw-r--r--dev-python/aspectlib/Manifest1
-rw-r--r--dev-python/aspectlib/aspectlib-1.5.2.ebuild41
-rw-r--r--dev-python/aspectlib/metadata.xml16
-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.25.0.ebuild26
-rw-r--r--dev-python/asyncpg/metadata.xml8
-rw-r--r--dev-python/asyncssh/Manifest1
-rw-r--r--dev-python/asyncssh/asyncssh-2.10.0.ebuild50
-rw-r--r--dev-python/asyncssh/metadata.xml55
-rw-r--r--dev-python/auditok/Manifest1
-rw-r--r--dev-python/auditok/auditok-0.2.0.ebuild45
-rw-r--r--dev-python/auditok/metadata.xml8
-rw-r--r--dev-python/autoflake/Manifest1
-rw-r--r--dev-python/autoflake/autoflake-1.4-r1.ebuild29
-rw-r--r--dev-python/autoflake/metadata.xml20
-rw-r--r--dev-python/automaton/Manifest2
-rw-r--r--dev-python/automaton/automaton-2.4.0.ebuild34
-rw-r--r--dev-python/automaton/automaton-2.5.0.ebuild34
-rw-r--r--dev-python/automaton/metadata.xml13
-rw-r--r--dev-python/avro/Manifest1
-rw-r--r--dev-python/avro/avro-1.11.0.ebuild24
-rw-r--r--dev-python/avro/metadata.xml11
-rw-r--r--dev-python/axisregistry/Manifest1
-rw-r--r--dev-python/axisregistry/axisregistry-0.2.0.ebuild32
-rw-r--r--dev-python/axisregistry/metadata.xml13
-rw-r--r--dev-python/azure-storage-blob/Manifest1
-rw-r--r--dev-python/azure-storage-blob/azure-storage-blob-12.8.1.ebuild17
-rw-r--r--dev-python/azure-storage-blob/metadata.xml8
-rw-r--r--dev-python/b2sdk/Manifest2
-rw-r--r--dev-python/b2sdk/b2sdk-1.12.0.ebuild48
-rw-r--r--dev-python/b2sdk/b2sdk-1.8.0.ebuild41
-rw-r--r--dev-python/b2sdk/files/b2sdk-1.2.0-skip-integration-test.patch12
-rw-r--r--dev-python/b2sdk/files/b2sdk-1.8.0-disable-requirement-installation.patch22
-rw-r--r--dev-python/b2sdk/metadata.xml14
-rw-r--r--dev-python/babelfont/Manifest2
-rw-r--r--dev-python/babelfont/babelfont-2.0.2.ebuild25
-rw-r--r--dev-python/babelfont/babelfont-3.0.0_alpha8.ebuild33
-rw-r--r--dev-python/babelfont/metadata.xml14
-rw-r--r--dev-python/baron/Manifest1
-rw-r--r--dev-python/baron/baron-0.9.ebuild25
-rw-r--r--dev-python/baron/metadata.xml9
-rw-r--r--dev-python/base58/Manifest1
-rw-r--r--dev-python/base58/base58-2.1.0.ebuild26
-rw-r--r--dev-python/base58/metadata.xml11
-rw-r--r--dev-python/basictracer/Manifest1
-rw-r--r--dev-python/basictracer/basictracer-3.2.0.ebuild31
-rw-r--r--dev-python/basictracer/metadata.xml13
-rw-r--r--dev-python/betamax-serializers/Manifest1
-rw-r--r--dev-python/betamax-serializers/betamax-serializers-0.2.1.ebuild23
-rw-r--r--dev-python/betamax-serializers/metadata.xml17
-rw-r--r--dev-python/beziers/Manifest2
-rw-r--r--dev-python/beziers/beziers-0.3.1.ebuild34
-rw-r--r--dev-python/beziers/beziers-0.4.0.ebuild34
-rw-r--r--dev-python/beziers/files/beziers-0.4.0-no-install-tests.patch11
-rw-r--r--dev-python/beziers/metadata.xml13
-rw-r--r--dev-python/bidict/Manifest1
-rw-r--r--dev-python/bidict/bidict-0.22.0.ebuild27
-rw-r--r--dev-python/bidict/metadata.xml12
-rw-r--r--dev-python/billiard/Manifest1
-rw-r--r--dev-python/billiard/billiard-3.6.4.0.ebuild32
-rw-r--r--dev-python/billiard/metadata.xml9
-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/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.21.38.ebuild63
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.24.38.ebuild68
-rw-r--r--dev-python/browserstack-local-python/Manifest1
-rw-r--r--dev-python/browserstack-local-python/browserstack-local-python-1.2.3.ebuild28
-rw-r--r--dev-python/browserstack-local-python/metadata.xml14
-rw-r--r--dev-python/bson/Manifest2
-rw-r--r--dev-python/bson/bson-0.5.10.ebuild29
-rw-r--r--dev-python/bson/bson-0.5.8.ebuild29
-rw-r--r--dev-python/bson/metadata.xml14
-rw-r--r--dev-python/castellan/Manifest1
-rw-r--r--dev-python/castellan/castellan-3.10.1.ebuild50
-rw-r--r--dev-python/castellan/metadata.xml13
-rw-r--r--dev-python/celery/Manifest1
-rw-r--r--dev-python/celery/celery-5.1.1.ebuild102
-rw-r--r--dev-python/celery/files/celery.confd-r251
-rw-r--r--dev-python/celery/files/celery.initd-r2205
-rw-r--r--dev-python/celery/metadata.xml8
-rw-r--r--dev-python/cffsubr/Manifest2
-rw-r--r--dev-python/cffsubr/cffsubr-0.2.8.ebuild39
-rw-r--r--dev-python/cffsubr/cffsubr-0.2.9_p1.ebuild44
-rw-r--r--dev-python/cffsubr/files/cffsubr-0.2.8-fix-setup-py.patch18
-rw-r--r--dev-python/cffsubr/files/cffsubr-0.2.9_p1-fix-setup-py.patch22
-rw-r--r--dev-python/cffsubr/files/cffsubr-system_tx.diff12
-rw-r--r--dev-python/cffsubr/metadata.xml14
-rw-r--r--dev-python/cfn-lint/Manifest1
-rw-r--r--dev-python/cfn-lint/cfn-lint-0.59.0.ebuild50
-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-didyoumean/Manifest2
-rw-r--r--dev-python/click-didyoumean/click-didyoumean-0.0.3.ebuild25
-rw-r--r--dev-python/click-didyoumean/click-didyoumean-0.3.0.ebuild27
-rw-r--r--dev-python/click-didyoumean/metadata.xml9
-rw-r--r--dev-python/click-repl/Manifest1
-rw-r--r--dev-python/click-repl/click-repl-0.2.0.ebuild28
-rw-r--r--dev-python/click-repl/metadata.xml9
-rw-r--r--dev-python/clickgen/Manifest1
-rw-r--r--dev-python/clickgen/clickgen-1.1.9.ebuild40
-rw-r--r--dev-python/clickgen/files/clickgen-flags.patch17
-rw-r--r--dev-python/clickgen/metadata.xml13
-rw-r--r--dev-python/clufter/Manifest1
-rw-r--r--dev-python/clufter/clufter-0.77.2.ebuild34
-rw-r--r--dev-python/clufter/metadata.xml8
-rw-r--r--dev-python/cmarkgfm/Manifest2
-rw-r--r--dev-python/cmarkgfm/cmarkgfm-0.6.0.ebuild32
-rw-r--r--dev-python/cmarkgfm/cmarkgfm-2022.3.4.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/collidoscope/Manifest2
-rw-r--r--dev-python/collidoscope/collidoscope-0.0.6.ebuild24
-rw-r--r--dev-python/collidoscope/collidoscope-0.4.1.ebuild24
-rw-r--r--dev-python/collidoscope/metadata.xml13
-rw-r--r--dev-python/colored/Manifest2
-rw-r--r--dev-python/colored/colored-1.4.2.ebuild24
-rw-r--r--dev-python/colored/colored-1.4.3.ebuild24
-rw-r--r--dev-python/colored/metadata.xml17
-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_p1.ebuild45
-rw-r--r--dev-python/compreffor/files/compreffor-0.5.1_p1-remove-unwanted-dependencies.patch11
-rw-r--r--dev-python/compreffor/files/remove-pytest-runner.patch11
-rw-r--r--dev-python/compreffor/metadata.xml13
-rw-r--r--dev-python/confluent-kafka/Manifest1
-rw-r--r--dev-python/confluent-kafka/confluent-kafka-1.8.2-r1.ebuild48
-rw-r--r--dev-python/confluent-kafka/metadata.xml18
-rw-r--r--dev-python/convertdate/Manifest2
-rw-r--r--dev-python/convertdate/convertdate-2.3.2.ebuild24
-rw-r--r--dev-python/convertdate/convertdate-2.4.0.ebuild23
-rw-r--r--dev-python/convertdate/metadata.xml12
-rw-r--r--dev-python/cotyledon/Manifest1
-rw-r--r--dev-python/cotyledon/cotyledon-1.7.3.ebuild33
-rw-r--r--dev-python/cotyledon/metadata.xml13
-rw-r--r--dev-python/cu2qu/Manifest1
-rw-r--r--dev-python/cu2qu/cu2qu-1.6.7.ebuild31
-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-r2.ebuild45
-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/Manifest1
-rw-r--r--dev-python/dacite/dacite-1.6.0.ebuild18
-rw-r--r--dev-python/dacite/metadata.xml8
-rw-r--r--dev-python/daff/Manifest1
-rw-r--r--dev-python/daff/daff-1.3.46.ebuild21
-rw-r--r--dev-python/daff/metadata.xml19
-rw-r--r--dev-python/daiquiri/Manifest1
-rw-r--r--dev-python/daiquiri/daiquiri-3.0.1.ebuild29
-rw-r--r--dev-python/daiquiri/metadata.xml15
-rw-r--r--dev-python/databases/Manifest2
-rw-r--r--dev-python/databases/databases-0.4.3.ebuild63
-rw-r--r--dev-python/databases/databases-0.5.3.ebuild69
-rw-r--r--dev-python/databases/metadata.xml9
-rw-r--r--dev-python/dateparser/Manifest2
-rw-r--r--dev-python/dateparser/dateparser-1.1.0.ebuild38
-rw-r--r--dev-python/dateparser/dateparser-1.1.1.ebuild51
-rw-r--r--dev-python/dateparser/metadata.xml12
-rw-r--r--dev-python/decopatch/Manifest2
-rw-r--r--dev-python/decopatch/decopatch-1.4.10.ebuild38
-rw-r--r--dev-python/decopatch/decopatch-1.4.9.ebuild38
-rw-r--r--dev-python/decopatch/metadata.xml17
-rw-r--r--dev-python/desktop-notifier/Manifest2
-rw-r--r--dev-python/desktop-notifier/desktop-notifier-3.3.2.ebuild29
-rw-r--r--dev-python/desktop-notifier/desktop-notifier-3.4.0.ebuild33
-rw-r--r--dev-python/desktop-notifier/metadata.xml12
-rw-r--r--dev-python/devtools/Manifest1
-rw-r--r--dev-python/devtools/devtools-0.6.1.ebuild38
-rw-r--r--dev-python/devtools/metadata.xml10
-rw-r--r--dev-python/digitalocean/Manifest2
-rw-r--r--dev-python/digitalocean/digitalocean-1.16.0.ebuild23
-rw-r--r--dev-python/digitalocean/digitalocean-1.17.0.ebuild25
-rw-r--r--dev-python/digitalocean/metadata.xml8
-rw-r--r--dev-python/django/Manifest8
-rw-r--r--dev-python/django/django-2.2.27.ebuild92
-rw-r--r--dev-python/django/django-2.2.28.ebuild2
-rw-r--r--dev-python/django/django-3.2.12.ebuild101
-rw-r--r--dev-python/django/django-3.2.13.ebuild2
-rw-r--r--dev-python/django/django-4.0.2.ebuild103
-rw-r--r--dev-python/django/django-4.0.3.ebuild105
-rw-r--r--dev-python/django/django-4.0.4.ebuild2
-rw-r--r--dev-python/dotmap/Manifest2
-rw-r--r--dev-python/dotmap/dotmap-1.3.26.ebuild22
-rw-r--r--dev-python/dotmap/dotmap-1.3.28.ebuild22
-rw-r--r--dev-python/dotmap/metadata.xml13
-rw-r--r--dev-python/doubles/Manifest1
-rw-r--r--dev-python/doubles/doubles-1.5.3.ebuild63
-rw-r--r--dev-python/doubles/metadata.xml13
-rw-r--r--dev-python/doxypypy/Manifest1
-rw-r--r--dev-python/doxypypy/doxypypy-0.8.8.6_p20210405.ebuild33
-rw-r--r--dev-python/doxypypy/metadata.xml9
-rw-r--r--dev-python/dropbox-sdk-python/Manifest1
-rw-r--r--dev-python/dropbox-sdk-python/dropbox-sdk-python-11.28.0.ebuild38
-rw-r--r--dev-python/dropbox-sdk-python/metadata.xml12
-rw-r--r--dev-python/etcd3/Manifest1
-rw-r--r--dev-python/etcd3/etcd3-0.12.0.ebuild44
-rw-r--r--dev-python/etcd3/metadata.xml11
-rw-r--r--dev-python/etcd3gw/Manifest2
-rw-r--r--dev-python/etcd3gw/etcd3gw-1.0.0.ebuild40
-rw-r--r--dev-python/etcd3gw/etcd3gw-1.0.1.ebuild43
-rw-r--r--dev-python/etcd3gw/metadata.xml11
-rw-r--r--dev-python/exifread/Manifest1
-rw-r--r--dev-python/exifread/exifread-2.3.2.ebuild22
-rw-r--r--dev-python/exifread/metadata.xml14
-rw-r--r--dev-python/factory_boy/Manifest2
-rw-r--r--dev-python/factory_boy/factory_boy-3.2.0.ebuild46
-rw-r--r--dev-python/factory_boy/factory_boy-3.2.1.ebuild47
-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/fastavro/Manifest2
-rw-r--r--dev-python/fastavro/fastavro-1.4.10.ebuild50
-rw-r--r--dev-python/fastavro/fastavro-1.4.7.ebuild46
-rw-r--r--dev-python/fastavro/metadata.xml16
-rw-r--r--dev-python/fchroot/Manifest1
-rw-r--r--dev-python/fchroot/fchroot-0.1.2.ebuild25
-rw-r--r--dev-python/fchroot/metadata.xml8
-rw-r--r--dev-python/filecheck/Manifest1
-rw-r--r--dev-python/filecheck/filecheck-0.0.22.ebuild17
-rw-r--r--dev-python/filecheck/metadata.xml11
-rw-r--r--dev-python/flask/flask-2.0.3.ebuild2
-rw-r--r--dev-python/font-v/Manifest2
-rw-r--r--dev-python/font-v/font-v-1.0.5.ebuild39
-rw-r--r--dev-python/font-v/font-v-2.1.0.ebuild39
-rw-r--r--dev-python/font-v/metadata.xml14
-rw-r--r--dev-python/fontFeatures/Manifest1
-rw-r--r--dev-python/fontFeatures/fontFeatures-1.6.4.ebuild32
-rw-r--r--dev-python/fontFeatures/metadata.xml35
-rw-r--r--dev-python/fontMath/Manifest2
-rw-r--r--dev-python/fontMath/fontMath-0.8.1.ebuild27
-rw-r--r--dev-python/fontMath/fontMath-0.9.1.ebuild27
-rw-r--r--dev-python/fontMath/metadata.xml14
-rw-r--r--dev-python/fontParts/Manifest2
-rw-r--r--dev-python/fontParts/fontParts-0.10.3.ebuild37
-rw-r--r--dev-python/fontParts/fontParts-0.10.4.ebuild37
-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/futurist/Manifest1
-rw-r--r--dev-python/futurist/futurist-2.3.0-r1.ebuild38
-rw-r--r--dev-python/futurist/metadata.xml9
-rw-r--r--dev-python/gabbi/Manifest2
-rw-r--r--dev-python/gabbi/gabbi-2.4.0.ebuild36
-rw-r--r--dev-python/gabbi/gabbi-2.7.1.ebuild36
-rw-r--r--dev-python/gabbi/metadata.xml13
-rw-r--r--dev-python/gemcall/Manifest1
-rw-r--r--dev-python/gemcall/gemcall-0.8.ebuild17
-rw-r--r--dev-python/gemcall/metadata.xml15
-rw-r--r--dev-python/gflanguages/Manifest1
-rw-r--r--dev-python/gflanguages/gflanguages-0.4.0.ebuild32
-rw-r--r--dev-python/gflanguages/metadata.xml13
-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-3.0.0-r1.ebuild73
-rw-r--r--dev-python/glance_store/metadata.xml20
-rw-r--r--dev-python/glicko2/Manifest1
-rw-r--r--dev-python/glicko2/glicko2-2.0.0.ebuild24
-rw-r--r--dev-python/glicko2/metadata.xml9
-rw-r--r--dev-python/glyphsLib/Manifest2
-rw-r--r--dev-python/glyphsLib/glyphsLib-5.3.2-r1.ebuild37
-rw-r--r--dev-python/glyphsLib/glyphsLib-6.0.4.ebuild43
-rw-r--r--dev-python/glyphsLib/metadata.xml21
-rw-r--r--dev-python/glyphsets/Manifest1
-rw-r--r--dev-python/glyphsets/glyphsets-0.2.1.ebuild34
-rw-r--r--dev-python/glyphsets/metadata.xml19
-rw-r--r--dev-python/glyphtools/Manifest2
-rw-r--r--dev-python/glyphtools/glyphtools-0.7.4.ebuild29
-rw-r--r--dev-python/glyphtools/glyphtools-0.8.0.ebuild29
-rw-r--r--dev-python/glyphtools/metadata.xml13
-rw-r--r--dev-python/gnocchi/Manifest1
-rw-r--r--dev-python/gnocchi/gnocchi-4.4.1.ebuild115
-rw-r--r--dev-python/gnocchi/metadata.xml24
-rw-r--r--dev-python/google-api-core/google-api-core-2.7.1-r1.ebuild8
-rw-r--r--dev-python/google-api-python-client/Manifest1
-rw-r--r--dev-python/google-api-python-client/google-api-python-client-2.44.0.ebuild50
-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/Manifest1
-rw-r--r--dev-python/googletrans/googletrans-4.0.0_rc1.ebuild19
-rw-r--r--dev-python/googletrans/metadata.xml12
-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/gpep517/gpep517-3.ebuild2
-rw-r--r--dev-python/gpxpy/Manifest2
-rw-r--r--dev-python/gpxpy/gpxpy-1.4.2.ebuild21
-rw-r--r--dev-python/gpxpy/gpxpy-1.5.0.ebuild21
-rw-r--r--dev-python/gpxpy/metadata.xml14
-rw-r--r--dev-python/graphene/Manifest4
-rw-r--r--dev-python/graphene/graphene-3.0.0.ebuild68
-rw-r--r--dev-python/graphene/graphene-3.0.0_beta7.ebuild63
-rw-r--r--dev-python/graphene/metadata.xml9
-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.1.6.ebuild28
-rw-r--r--dev-python/graphql-core/metadata.xml5
-rw-r--r--dev-python/graphql-relay/Manifest1
-rw-r--r--dev-python/graphql-relay/graphql-relay-3.1.0.ebuild26
-rw-r--r--dev-python/graphql-relay/metadata.xml8
-rw-r--r--dev-python/guidata/Manifest1
-rw-r--r--dev-python/guidata/guidata-1.7.9.ebuild24
-rw-r--r--dev-python/guidata/metadata.xml8
-rw-r--r--dev-python/hidapi/Manifest2
-rw-r--r--dev-python/hidapi/hidapi-0.10.1.ebuild31
-rw-r--r--dev-python/hidapi/hidapi-0.11.0.2.ebuild34
-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.2.2.ebuild20
-rw-r--r--dev-python/hijri-converter/hijri-converter-2.2.3.ebuild20
-rw-r--r--dev-python/hijri-converter/metadata.xml13
-rw-r--r--dev-python/hstspreload/Manifest2
-rw-r--r--dev-python/hstspreload/hstspreload-2021.10.1.ebuild25
-rw-r--r--dev-python/hstspreload/hstspreload-2021.12.1.ebuild25
-rw-r--r--dev-python/hstspreload/metadata.xml16
-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/hunter-remove-vendored-colorama.patch34
-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.4.3.ebuild82
-rw-r--r--dev-python/hunter/metadata.xml73
-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/files/hypercorn-0.13.2-no-coverage.patch11
-rw-r--r--dev-python/hypercorn/hypercorn-0.13.2.ebuild46
-rw-r--r--dev-python/hypercorn/metadata.xml28
-rw-r--r--dev-python/hyperglot/Manifest1
-rw-r--r--dev-python/hyperglot/hyperglot-0.3.8.ebuild30
-rw-r--r--dev-python/hyperglot/metadata.xml22
-rw-r--r--dev-python/hypothesis/Manifest1
-rw-r--r--dev-python/hypothesis/hypothesis-6.43.0.ebuild65
-rw-r--r--dev-python/i3ipc/Manifest1
-rw-r--r--dev-python/i3ipc/i3ipc-2.2.1.ebuild21
-rw-r--r--dev-python/i3ipc/metadata.xml6
-rw-r--r--dev-python/injector/Manifest1
-rw-r--r--dev-python/injector/injector-0.18.4.ebuild21
-rw-r--r--dev-python/injector/metadata.xml12
-rw-r--r--dev-python/itemadapter/Manifest1
-rw-r--r--dev-python/itemadapter/itemadapter-0.4.0.ebuild27
-rw-r--r--dev-python/itemadapter/metadata.xml8
-rw-r--r--dev-python/itemloaders/Manifest1
-rw-r--r--dev-python/itemloaders/itemloaders-1.0.4.ebuild25
-rw-r--r--dev-python/itemloaders/metadata.xml8
-rw-r--r--dev-python/iuliia/Manifest2
-rw-r--r--dev-python/iuliia/iuliia-0.11.4.ebuild22
-rw-r--r--dev-python/iuliia/iuliia-0.11.5.ebuild22
-rw-r--r--dev-python/iuliia/metadata.xml12
-rw-r--r--dev-python/jaeger-client/Manifest1
-rw-r--r--dev-python/jaeger-client/jaeger-client-4.8.0.ebuild42
-rw-r--r--dev-python/jaeger-client/metadata.xml13
-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/jplephem/Manifest1
-rw-r--r--dev-python/jplephem/jplephem-2.16.ebuild22
-rw-r--r--dev-python/jplephem/metadata.xml17
-rw-r--r--dev-python/jsonpath-rw-ext/Manifest1
-rw-r--r--dev-python/jsonpath-rw-ext/jsonpath-rw-ext-1.2.2.ebuild40
-rw-r--r--dev-python/jsonpath-rw-ext/metadata.xml13
-rw-r--r--dev-python/jsonpath-rw/Manifest1
-rw-r--r--dev-python/jsonpath-rw/jsonpath-rw-1.4.0.ebuild42
-rw-r--r--dev-python/jsonpath-rw/metadata.xml18
-rw-r--r--dev-python/jupyter-sphinx/Manifest1
-rw-r--r--dev-python/jupyter-sphinx/jupyter-sphinx-0.3.2.ebuild27
-rw-r--r--dev-python/jupyter-sphinx/metadata.xml6
-rw-r--r--dev-python/jupyterlab_pygments/Manifest1
-rw-r--r--dev-python/jupyterlab_pygments/jupyterlab_pygments-0.2.1.ebuild24
-rw-r--r--dev-python/keyrings-alt/Manifest1
-rw-r--r--dev-python/keyrings-alt/keyrings-alt-4.1.0.ebuild38
-rw-r--r--dev-python/keyrings-alt/metadata.xml12
-rw-r--r--dev-python/keystonemiddleware/Manifest1
-rw-r--r--dev-python/keystonemiddleware/keystonemiddleware-9.4.0.ebuild56
-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/langdetect/Manifest1
-rw-r--r--dev-python/langdetect/langdetect-1.0.9.ebuild22
-rw-r--r--dev-python/langdetect/metadata.xml12
-rw-r--r--dev-python/ldappool/Manifest1
-rw-r--r--dev-python/ldappool/ldappool-3.0.0.ebuild34
-rw-r--r--dev-python/ldappool/metadata.xml13
-rw-r--r--dev-python/libusb1/Manifest1
-rw-r--r--dev-python/libusb1/libusb1-2.0.1.ebuild20
-rw-r--r--dev-python/libusb1/metadata.xml11
-rw-r--r--dev-python/manhole/Manifest1
-rw-r--r--dev-python/manhole/manhole-1.8.0-r1.ebuild61
-rw-r--r--dev-python/manhole/metadata.xml20
-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/md-environ/Manifest1
-rw-r--r--dev-python/md-environ/md-environ-0.1.0.ebuild24
-rw-r--r--dev-python/md-environ/metadata.xml12
-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-r1.ebuild34
-rw-r--r--dev-python/mkdocs-exclude/Manifest1
-rw-r--r--dev-python/mkdocs-exclude/metadata.xml9
-rw-r--r--dev-python/mkdocs-exclude/mkdocs-exclude-1.0.2.ebuild18
-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.ebuild20
-rw-r--r--dev-python/monotonic/Manifest1
-rw-r--r--dev-python/monotonic/metadata.xml13
-rw-r--r--dev-python/monotonic/monotonic-1.6.ebuild16
-rw-r--r--dev-python/nbclient/Manifest1
-rw-r--r--dev-python/nbclient/nbclient-0.6.0.ebuild42
-rw-r--r--dev-python/ncclient/Manifest1
-rw-r--r--dev-python/ncclient/metadata.xml16
-rw-r--r--dev-python/ncclient/ncclient-0.6.12.ebuild32
-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.20.0.ebuild70
-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/nosehtmloutput/Manifest1
-rw-r--r--dev-python/nosehtmloutput/metadata.xml12
-rw-r--r--dev-python/nosehtmloutput/nosehtmloutput-0.0.7.ebuild27
-rw-r--r--dev-python/nosexcover/Manifest1
-rw-r--r--dev-python/nosexcover/metadata.xml14
-rw-r--r--dev-python/nosexcover/nosexcover-1.0.11.ebuild27
-rw-r--r--dev-python/openstep-plist/Manifest1
-rw-r--r--dev-python/openstep-plist/metadata.xml13
-rw-r--r--dev-python/openstep-plist/openstep-plist-0.3.0.ebuild38
-rw-r--r--dev-python/opentracing/Manifest1
-rw-r--r--dev-python/opentracing/metadata.xml13
-rw-r--r--dev-python/opentracing/opentracing-2.4.0.ebuild34
-rw-r--r--dev-python/opentracing_instrumentation/Manifest1
-rw-r--r--dev-python/opentracing_instrumentation/files/opentracing_instrumentation-3.3.1-no-coverage.patch8
-rw-r--r--dev-python/opentracing_instrumentation/metadata.xml13
-rw-r--r--dev-python/opentracing_instrumentation/opentracing_instrumentation-3.3.1.ebuild52
-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/orjson-bin/Manifest2
-rw-r--r--dev-python/orjson-bin/metadata.xml12
-rw-r--r--dev-python/orjson-bin/orjson-bin-3.6.7.ebuild59
-rw-r--r--dev-python/orjson/Manifest61
-rw-r--r--dev-python/orjson/files/orjson-3.6.7-no-strip.patch11
-rw-r--r--dev-python/orjson/metadata.xml13
-rw-r--r--dev-python/orjson/orjson-3.5.3-r1.ebuild109
-rw-r--r--dev-python/orjson/orjson-3.6.7.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.3.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-5.2.0.ebuild55
-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-2.3.1.ebuild53
-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.1.0.ebuild31
-rw-r--r--dev-python/os-testr/Manifest2
-rw-r--r--dev-python/os-testr/metadata.xml11
-rw-r--r--dev-python/os-testr/os-testr-2.0.1.ebuild37
-rw-r--r--dev-python/os-testr/os-testr-3.0.0.ebuild37
-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.7.0.ebuild33
-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.7.1.ebuild51
-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.6.0.ebuild69
-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-r2.ebuild53
-rw-r--r--dev-python/oscrypto/Manifest1
-rw-r--r--dev-python/oscrypto/metadata.xml9
-rw-r--r--dev-python/oscrypto/oscrypto-1.3.0.ebuild35
-rw-r--r--dev-python/oslo-cache/Manifest1
-rw-r--r--dev-python/oslo-cache/metadata.xml16
-rw-r--r--dev-python/oslo-cache/oslo-cache-2.8.1.ebuild51
-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-11.2.0.ebuild74
-rw-r--r--dev-python/oslo-limit/Manifest1
-rw-r--r--dev-python/oslo-limit/metadata.xml16
-rw-r--r--dev-python/oslo-limit/oslo-limit-1.5.0.ebuild45
-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.9.1.ebuild60
-rw-r--r--dev-python/oslo-metrics/Manifest1
-rw-r--r--dev-python/oslo-metrics/metadata.xml11
-rw-r--r--dev-python/oslo-metrics/oslo-metrics-0.3.0.ebuild38
-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.4.0.ebuild47
-rw-r--r--dev-python/oslo-policy/Manifest2
-rw-r--r--dev-python/oslo-policy/metadata.xml15
-rw-r--r--dev-python/oslo-policy/oslo-policy-3.10.1.ebuild46
-rw-r--r--dev-python/oslo-policy/oslo-policy-3.8.2.ebuild43
-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.6.2.ebuild48
-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.3.0.ebuild41
-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.3.0.ebuild38
-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.8.0.ebuild52
-rw-r--r--dev-python/oslo-upgradecheck/Manifest1
-rw-r--r--dev-python/oslo-upgradecheck/metadata.xml15
-rw-r--r--dev-python/oslo-upgradecheck/oslo-upgradecheck-1.4.0.ebuild42
-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.5.0.ebuild48
-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.10.0.ebuild49
-rw-r--r--dev-python/osprofiler/Manifest1
-rw-r--r--dev-python/osprofiler/metadata.xml14
-rw-r--r--dev-python/osprofiler/osprofiler-3.4.2.ebuild54
-rw-r--r--dev-python/ots-python/Manifest2
-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-r1.ebuild30
-rw-r--r--dev-python/ots-python/ots-python-8.2.1.ebuild30
-rw-r--r--dev-python/ovsdbapp/Manifest1
-rw-r--r--dev-python/ovsdbapp/metadata.xml13
-rw-r--r--dev-python/ovsdbapp/ovsdbapp-1.15.1.ebuild40
-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.xml8
-rw-r--r--dev-python/parsel/parsel-1.6.0.ebuild36
-rw-r--r--dev-python/pdfminer-six/Manifest1
-rw-r--r--dev-python/pdfminer-six/metadata.xml8
-rw-r--r--dev-python/pdfminer-six/pdfminer-six-20201018.ebuild29
-rw-r--r--dev-python/pg8000/Manifest2
-rw-r--r--dev-python/pg8000/metadata.xml13
-rw-r--r--dev-python/pg8000/pg8000-1.22.0.ebuild35
-rw-r--r--dev-python/pg8000/pg8000-1.24.1.ebuild34
-rw-r--r--dev-python/phx-class-registry/Manifest1
-rw-r--r--dev-python/phx-class-registry/metadata.xml13
-rw-r--r--dev-python/phx-class-registry/phx-class-registry-3.0.5.ebuild18
-rw-r--r--dev-python/pifpaf/Manifest1
-rw-r--r--dev-python/pifpaf/metadata.xml15
-rw-r--r--dev-python/pifpaf/pifpaf-3.1.5.ebuild42
-rw-r--r--dev-python/pip-api/Manifest2
-rw-r--r--dev-python/pip-api/metadata.xml13
-rw-r--r--dev-python/pip-api/pip-api-0.0.26.ebuild33
-rw-r--r--dev-python/pip-api/pip-api-0.0.29.ebuild34
-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.ebuild17
-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/pproxy/Manifest1
-rw-r--r--dev-python/pproxy/metadata.xml36
-rw-r--r--dev-python/pproxy/pproxy-2.7.8.ebuild25
-rw-r--r--dev-python/praw/Manifest1
-rw-r--r--dev-python/praw/metadata.xml18
-rw-r--r--dev-python/praw/praw-7.5.0.ebuild42
-rw-r--r--dev-python/prawcore/Manifest1
-rw-r--r--dev-python/prawcore/metadata.xml17
-rw-r--r--dev-python/prawcore/prawcore-2.3.0.ebuild28
-rw-r--r--dev-python/preggy/Manifest1
-rw-r--r--dev-python/preggy/metadata.xml12
-rw-r--r--dev-python/preggy/preggy-1.4.4.ebuild32
-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/protego/Manifest1
-rw-r--r--dev-python/protego/metadata.xml8
-rw-r--r--dev-python/protego/protego-0.1.16.ebuild19
-rw-r--r--dev-python/proxy_tools/Manifest1
-rw-r--r--dev-python/proxy_tools/metadata.xml11
-rw-r--r--dev-python/proxy_tools/proxy_tools-0.1.0.ebuild17
-rw-r--r--dev-python/psycopg2cffi/Manifest1
-rw-r--r--dev-python/psycopg2cffi/metadata.xml14
-rw-r--r--dev-python/psycopg2cffi/psycopg2cffi-2.9.0.ebuild28
-rw-r--r--dev-python/pure-protobuf/Manifest1
-rw-r--r--dev-python/pure-protobuf/files/pure-protobuf-do-not-install-tests.patch13
-rw-r--r--dev-python/pure-protobuf/metadata.xml12
-rw-r--r--dev-python/pure-protobuf/pure-protobuf-2.1.0.ebuild24
-rw-r--r--dev-python/py3nvml/Manifest1
-rw-r--r--dev-python/py3nvml/metadata.xml12
-rw-r--r--dev-python/py3nvml/py3nvml-0.2.6.ebuild18
-rw-r--r--dev-python/pyVows/Manifest1
-rw-r--r--dev-python/pyVows/metadata.xml12
-rw-r--r--dev-python/pyVows/pyVows-3.0.0.ebuild34
-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.ebuild21
-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-r1.ebuild25
-rw-r--r--dev-python/pycadf/Manifest1
-rw-r--r--dev-python/pycadf/metadata.xml9
-rw-r--r--dev-python/pycadf/pycadf-3.1.1-r1.ebuild39
-rw-r--r--dev-python/pydub/Manifest1
-rw-r--r--dev-python/pydub/metadata.xml8
-rw-r--r--dev-python/pydub/pydub-0.25.1.ebuild34
-rw-r--r--dev-python/pyfiglet/Manifest1
-rw-r--r--dev-python/pyfiglet/metadata.xml13
-rw-r--r--dev-python/pyfiglet/pyfiglet-0.8_p1.ebuild27
-rw-r--r--dev-python/pyfiglet/pyfiglet-9999.ebuild27
-rw-r--r--dev-python/pygaljs/Manifest1
-rw-r--r--dev-python/pygaljs/metadata.xml13
-rw-r--r--dev-python/pygaljs/pygaljs-1.0.2-r1.ebuild20
-rw-r--r--dev-python/pygments-promql/Manifest1
-rw-r--r--dev-python/pygments-promql/metadata.xml11
-rw-r--r--dev-python/pygments-promql/pygments-promql-0.0.9.ebuild20
-rw-r--r--dev-python/pygsl/Manifest1
-rw-r--r--dev-python/pygsl/metadata.xml9
-rw-r--r--dev-python/pygsl/pygsl-2.3.0.ebuild38
-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.xml8
-rw-r--r--dev-python/pykeepass/pykeepass-4.0.0.ebuild40
-rw-r--r--dev-python/pykeepass/pykeepass-4.0.1.ebuild40
-rw-r--r--dev-python/pylatexenc/Manifest1
-rw-r--r--dev-python/pylatexenc/metadata.xml14
-rw-r--r--dev-python/pylatexenc/pylatexenc-2.10.ebuild19
-rw-r--r--dev-python/pymeeus/Manifest2
-rw-r--r--dev-python/pymeeus/metadata.xml12
-rw-r--r--dev-python/pymeeus/pymeeus-0.4.2.ebuild24
-rw-r--r--dev-python/pymeeus/pymeeus-0.5.11.ebuild22
-rw-r--r--dev-python/pymemcache/Manifest2
-rw-r--r--dev-python/pymemcache/files/pymemcache-3.5.1-no-coverage.patch10
-rw-r--r--dev-python/pymemcache/metadata.xml24
-rw-r--r--dev-python/pymemcache/pymemcache-3.5.1.ebuild38
-rw-r--r--dev-python/pymemcache/pymemcache-3.5.2.ebuild38
-rw-r--r--dev-python/pymorphy2-dicts-ru/Manifest1
-rw-r--r--dev-python/pymorphy2-dicts-ru/metadata.xml11
-rw-r--r--dev-python/pymorphy2-dicts-ru/pymorphy2-dicts-ru-2.4.417127.4579844.ebuild16
-rw-r--r--dev-python/pymorphy2-dicts/Manifest1
-rw-r--r--dev-python/pymorphy2-dicts/metadata.xml11
-rw-r--r--dev-python/pymorphy2-dicts/pymorphy2-dicts-2.4.393442.3710985.ebuild16
-rw-r--r--dev-python/pymorphy2/Manifest1
-rw-r--r--dev-python/pymorphy2/metadata.xml12
-rw-r--r--dev-python/pymorphy2/pymorphy2-0.9.1.ebuild21
-rw-r--r--dev-python/pymp4/Manifest1
-rw-r--r--dev-python/pymp4/metadata.xml13
-rw-r--r--dev-python/pymp4/pymp4-1.2.0.ebuild24
-rw-r--r--dev-python/pyngus/Manifest1
-rw-r--r--dev-python/pyngus/metadata.xml12
-rw-r--r--dev-python/pyngus/pyngus-2.3.1.ebuild21
-rw-r--r--dev-python/pynmea2/Manifest1
-rw-r--r--dev-python/pynmea2/metadata.xml13
-rw-r--r--dev-python/pynmea2/pynmea2-1.18.0.ebuild21
-rw-r--r--dev-python/pyodbc/Manifest1
-rw-r--r--dev-python/pyodbc/metadata.xml14
-rw-r--r--dev-python/pyodbc/pyodbc-4.0.32.ebuild28
-rw-r--r--dev-python/pypandoc/Manifest2
-rw-r--r--dev-python/pypandoc/files/pypandoc-1.7.4-dont-install-examples.patch23
-rw-r--r--dev-python/pypandoc/metadata.xml13
-rw-r--r--dev-python/pypandoc/pypandoc-1.7.4.ebuild41
-rw-r--r--dev-python/pypandoc/pypandoc-1.7.5.ebuild41
-rw-r--r--dev-python/pypowervm/Manifest1
-rw-r--r--dev-python/pypowervm/metadata.xml14
-rw-r--r--dev-python/pypowervm/pypowervm-1.1.27.ebuild48
-rw-r--r--dev-python/pysaml2/Manifest1
-rw-r--r--dev-python/pysaml2/metadata.xml17
-rw-r--r--dev-python/pysaml2/pysaml2-7.1.2.ebuild46
-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/pystardict/Manifest1
-rw-r--r--dev-python/pystardict/metadata.xml12
-rw-r--r--dev-python/pystardict/pystardict-0.8.ebuild21
-rw-r--r--dev-python/pysubs2/Manifest3
-rw-r--r--dev-python/pysubs2/metadata.xml8
-rw-r--r--dev-python/pysubs2/pysubs2-1.3.1.ebuild18
-rw-r--r--dev-python/pysubs2/pysubs2-1.4.1.ebuild18
-rw-r--r--dev-python/pysubs2/pysubs2-1.4.2.ebuild18
-rw-r--r--dev-python/pytest-benchmark/Manifest1
-rw-r--r--dev-python/pytest-benchmark/metadata.xml23
-rw-r--r--dev-python/pytest-benchmark/pytest-benchmark-3.4.1.ebuild51
-rw-r--r--dev-python/pytest-cases/Manifest2
-rw-r--r--dev-python/pytest-cases/metadata.xml17
-rw-r--r--dev-python/pytest-cases/pytest-cases-3.6.11.ebuild50
-rw-r--r--dev-python/pytest-cases/pytest-cases-3.6.9.ebuild44
-rw-r--r--dev-python/pytest-celery/Manifest1
-rw-r--r--dev-python/pytest-celery/metadata.xml12
-rw-r--r--dev-python/pytest-celery/pytest-celery-0.1.0.ebuild22
-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-harvest/Manifest1
-rw-r--r--dev-python/pytest-harvest/metadata.xml17
-rw-r--r--dev-python/pytest-harvest/pytest-harvest-1.10.3.ebuild48
-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-r1.ebuild25
-rw-r--r--dev-python/pytest-isort/pytest-isort-1.3.0.ebuild23
-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/Manifest2
-rw-r--r--dev-python/pytest-randomly/metadata.xml41
-rw-r--r--dev-python/pytest-randomly/pytest-randomly-3.10.1.ebuild39
-rw-r--r--dev-python/pytest-randomly/pytest-randomly-3.11.0.ebuild38
-rw-r--r--dev-python/pytest-steps/Manifest1
-rw-r--r--dev-python/pytest-steps/metadata.xml17
-rw-r--r--dev-python/pytest-steps/pytest-steps-1.8.0.ebuild48
-rw-r--r--dev-python/pytest-testinfra/Manifest1
-rw-r--r--dev-python/pytest-testinfra/pytest-testinfra-6.7.0.ebuild40
-rw-r--r--dev-python/pytest-vcr/Manifest1
-rw-r--r--dev-python/pytest-vcr/metadata.xml16
-rw-r--r--dev-python/pytest-vcr/pytest-vcr-1.0.2.ebuild41
-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.3.0.ebuild48
-rw-r--r--dev-python/python-binary-memcached/Manifest1
-rw-r--r--dev-python/python-binary-memcached/metadata.xml16
-rw-r--r--dev-python/python-binary-memcached/python-binary-memcached-0.31.1.ebuild46
-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.4.0.ebuild42
-rw-r--r--dev-python/python-constraint/Manifest1
-rw-r--r--dev-python/python-constraint/files/python-constraint-1.4.0-exclude-examples.patch11
-rw-r--r--dev-python/python-constraint/metadata.xml12
-rw-r--r--dev-python/python-constraint/python-constraint-1.4.0.ebuild21
-rw-r--r--dev-python/python-dbus-next/Manifest1
-rw-r--r--dev-python/python-dbus-next/metadata.xml12
-rw-r--r--dev-python/python-dbus-next/python-dbus-next-0.2.3.ebuild31
-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.5.0.ebuild49
-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.5.1.ebuild50
-rw-r--r--dev-python/python-json-logger/Manifest1
-rw-r--r--dev-python/python-json-logger/metadata.xml15
-rw-r--r--dev-python/python-json-logger/python-json-logger-2.0.2.ebuild21
-rw-r--r--dev-python/python-lsp-black/Manifest1
-rw-r--r--dev-python/python-lsp-black/python-lsp-black-1.2.1.ebuild36
-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.6.0.ebuild51
-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-3.3.0.ebuild48
-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.4.0.ebuild48
-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.5.0.ebuild41
-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-octaviaclient/Manifest1
-rw-r--r--dev-python/python-octaviaclient/metadata.xml13
-rw-r--r--dev-python/python-octaviaclient/python-octaviaclient-2.5.0.ebuild48
-rw-r--r--dev-python/python-pidfile/Manifest1
-rw-r--r--dev-python/python-pidfile/metadata.xml8
-rw-r--r--dev-python/python-pidfile/python-pidfile-3.0.0.ebuild24
-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-qpid-proton/Manifest1
-rw-r--r--dev-python/python-qpid-proton/metadata.xml11
-rw-r--r--dev-python/python-qpid-proton/python-qpid-proton-0.37.0.ebuild19
-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.5.0.ebuild44
-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.4.0.ebuild50
-rw-r--r--dev-python/python-telegram-bot/Manifest1
-rw-r--r--dev-python/python-telegram-bot/metadata.xml8
-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-9999.ebuild64
-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-7.2.0.ebuild48
-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.5.0.ebuild43
-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.3.0.ebuild47
-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.4.0.ebuild50
-rw-r--r--dev-python/python_jwt/Manifest1
-rw-r--r--dev-python/python_jwt/metadata.xml22
-rw-r--r--dev-python/python_jwt/python_jwt-3.3.2.ebuild40
-rw-r--r--dev-python/pywebview/Manifest2
-rw-r--r--dev-python/pywebview/metadata.xml8
-rw-r--r--dev-python/pywebview/pywebview-3.5.ebuild26
-rw-r--r--dev-python/pywebview/pywebview-3.6.1.ebuild30
-rw-r--r--dev-python/qiskit-aer/Manifest1
-rw-r--r--dev-python/qiskit-aer/files/qiskit-aer-0.10.3-remove-cmake-dependency.patch10
-rw-r--r--dev-python/qiskit-aer/metadata.xml13
-rw-r--r--dev-python/qiskit-aer/qiskit-aer-0.10.3.ebuild92
-rw-r--r--dev-python/qiskit-terra/Manifest1
-rw-r--r--dev-python/qiskit-terra/files/qiskit-terra-0.19.2-test-corrections.patch36
-rw-r--r--dev-python/qiskit-terra/metadata.xml16
-rw-r--r--dev-python/qiskit-terra/qiskit-terra-0.19.2.ebuild70
-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/redbaron/Manifest2
-rw-r--r--dev-python/redbaron/metadata.xml9
-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/retworkx/Manifest65
-rw-r--r--dev-python/retworkx/metadata.xml12
-rw-r--r--dev-python/retworkx/retworkx-0.11.0.ebuild112
-rw-r--r--dev-python/rst2ansi/Manifest1
-rw-r--r--dev-python/rst2ansi/metadata.xml9
-rw-r--r--dev-python/rst2ansi/rst2ansi-0.1.5.ebuild15
-rw-r--r--dev-python/rstcheck/Manifest1
-rw-r--r--dev-python/rstcheck/metadata.xml13
-rw-r--r--dev-python/rstcheck/rstcheck-3.3.1.ebuild40
-rw-r--r--dev-python/rstr/Manifest1
-rw-r--r--dev-python/rstr/metadata.xml17
-rw-r--r--dev-python/rstr/rstr-3.1.0.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/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.xml13
-rw-r--r--dev-python/scramp/scramp-1.4.1.ebuild32
-rw-r--r--dev-python/scrapy/Manifest1
-rw-r--r--dev-python/scrapy/files/scrapy-2.5.1-no-doctest.patch12
-rw-r--r--dev-python/scrapy/metadata.xml8
-rw-r--r--dev-python/scrapy/scrapy-2.5.1.ebuild58
-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.ebuild20
-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-r1.ebuild19
-rw-r--r--dev-python/simplemma/Manifest1
-rw-r--r--dev-python/simplemma/metadata.xml12
-rw-r--r--dev-python/simplemma/simplemma-0.6.0.ebuild19
-rw-r--r--dev-python/skia-pathops/Manifest2
-rw-r--r--dev-python/skia-pathops/metadata.xml16
-rw-r--r--dev-python/skia-pathops/skia-pathops-0.6.0_p2.ebuild48
-rw-r--r--dev-python/skia-pathops/skia-pathops-0.7.2.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/Manifest1
-rw-r--r--dev-python/sortedcollections/metadata.xml13
-rw-r--r--dev-python/sortedcollections/sortedcollections-2.1.0.ebuild36
-rw-r--r--dev-python/sphinx-argparse-cli/Manifest1
-rw-r--r--dev-python/sphinx-argparse-cli/metadata.xml16
-rw-r--r--dev-python/sphinx-argparse-cli/sphinx-argparse-cli-1.8.2.ebuild21
-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.3.1.ebuild53
-rw-r--r--dev-python/sphinx-autodoc-typehints/Manifest1
-rw-r--r--dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-1.18.0.ebuild42
-rw-r--r--dev-python/sphinx-click/Manifest2
-rw-r--r--dev-python/sphinx-click/metadata.xml15
-rw-r--r--dev-python/sphinx-click/sphinx-click-3.0.2.ebuild30
-rw-r--r--dev-python/sphinx-click/sphinx-click-3.1.0.ebuild29
-rw-r--r--dev-python/sphinxcontrib-fulltoc/Manifest1
-rw-r--r--dev-python/sphinxcontrib-fulltoc/metadata.xml12
-rw-r--r--dev-python/sphinxcontrib-fulltoc/sphinxcontrib-fulltoc-1.2.ebuild34
-rw-r--r--dev-python/sphinxcontrib-katex/Manifest1
-rw-r--r--dev-python/sphinxcontrib-katex/metadata.xml19
-rw-r--r--dev-python/sphinxcontrib-katex/sphinxcontrib-katex-0.8.6.ebuild26
-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/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/Manifest3
-rw-r--r--dev-python/srt/metadata.xml8
-rw-r--r--dev-python/srt/srt-3.5.0.ebuild38
-rw-r--r--dev-python/srt/srt-3.5.1.ebuild38
-rw-r--r--dev-python/srt/srt-3.5.2.ebuild38
-rw-r--r--dev-python/sse-starlette/Manifest2
-rw-r--r--dev-python/sse-starlette/metadata.xml9
-rw-r--r--dev-python/sse-starlette/sse-starlette-0.7.2.ebuild29
-rw-r--r--dev-python/sse-starlette/sse-starlette-0.9.0.ebuild29
-rw-r--r--dev-python/statmake/Manifest2
-rw-r--r--dev-python/statmake/metadata.xml14
-rw-r--r--dev-python/statmake/statmake-0.4.0.ebuild43
-rw-r--r--dev-python/statmake/statmake-0.4.1.ebuild39
-rw-r--r--dev-python/stone/Manifest1
-rw-r--r--dev-python/stone/metadata.xml12
-rw-r--r--dev-python/stone/stone-3.3.1.ebuild34
-rw-r--r--dev-python/strictyaml/Manifest2
-rw-r--r--dev-python/strictyaml/metadata.xml14
-rw-r--r--dev-python/strictyaml/strictyaml-1.5.0.ebuild22
-rw-r--r--dev-python/strictyaml/strictyaml-1.6.1.ebuild20
-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/Manifest1
-rw-r--r--dev-python/stringcase/metadata.xml12
-rw-r--r--dev-python/stringcase/stringcase-1.2.0.ebuild18
-rw-r--r--dev-python/survey/Manifest1
-rw-r--r--dev-python/survey/metadata.xml12
-rw-r--r--dev-python/survey/survey-3.4.3.ebuild25
-rw-r--r--dev-python/sysv_ipc/Manifest1
-rw-r--r--dev-python/sysv_ipc/metadata.xml9
-rw-r--r--dev-python/sysv_ipc/sysv_ipc-1.1.0.ebuild23
-rw-r--r--dev-python/taskflow/Manifest2
-rw-r--r--dev-python/taskflow/metadata.xml14
-rw-r--r--dev-python/taskflow/taskflow-4.6.3.ebuild57
-rw-r--r--dev-python/taskflow/taskflow-4.6.4.ebuild59
-rw-r--r--dev-python/tchannel/Manifest1
-rw-r--r--dev-python/tchannel/metadata.xml13
-rw-r--r--dev-python/tchannel/tchannel-2.1.0.ebuild44
-rw-r--r--dev-python/tempus-themes/Manifest1
-rw-r--r--dev-python/tempus-themes/metadata.xml12
-rw-r--r--dev-python/tempus-themes/tempus-themes-2.3.0.20220206.ebuild21
-rw-r--r--dev-python/testrepository/Manifest1
-rw-r--r--dev-python/testrepository/files/testrepository-0.0.20-test-backport.patch62
-rw-r--r--dev-python/testrepository/files/testrepository-0.0.20-test-backport1.patch16
-rw-r--r--dev-python/testrepository/files/testrepository-0.0.20-test-backport2.patch49
-rw-r--r--dev-python/testrepository/metadata.xml14
-rw-r--r--dev-python/testrepository/testrepository-0.0.20-r200.ebuild106
-rw-r--r--dev-python/threadloop/Manifest1
-rw-r--r--dev-python/threadloop/metadata.xml17
-rw-r--r--dev-python/threadloop/threadloop-1.0.2.ebuild26
-rw-r--r--dev-python/thriftrw/Manifest1
-rw-r--r--dev-python/thriftrw/files/thriftrw-1.8.1-no-install-examples.patch11
-rw-r--r--dev-python/thriftrw/files/thriftrw-1.8.1-tool-pytest.patch11
-rw-r--r--dev-python/thriftrw/metadata.xml13
-rw-r--r--dev-python/thriftrw/thriftrw-1.8.1.ebuild52
-rw-r--r--dev-python/tinyrpc/Manifest2
-rw-r--r--dev-python/tinyrpc/metadata.xml13
-rw-r--r--dev-python/tinyrpc/tinyrpc-1.1.2.ebuild42
-rw-r--r--dev-python/tinyrpc/tinyrpc-1.1.4.ebuild44
-rw-r--r--dev-python/tldextract/Manifest1
-rw-r--r--dev-python/tldextract/tldextract-3.2.1.ebuild33
-rw-r--r--dev-python/tooz/Manifest2
-rw-r--r--dev-python/tooz/metadata.xml16
-rw-r--r--dev-python/tooz/tooz-2.10.1.ebuild68
-rw-r--r--dev-python/tooz/tooz-2.11.0.ebuild68
-rw-r--r--dev-python/transaction/Manifest1
-rw-r--r--dev-python/transaction/metadata.xml12
-rw-r--r--dev-python/transaction/transaction-3.0.1.ebuild37
-rw-r--r--dev-python/trivup/Manifest1
-rw-r--r--dev-python/trivup/metadata.xml28
-rw-r--r--dev-python/trivup/trivup-0.10.0.ebuild28
-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/Manifest2
-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/ttfautohint-py/ttfautohint-py-0.5.1.ebuild35
-rw-r--r--dev-python/tweedledum/Manifest1
-rw-r--r--dev-python/tweedledum/metadata.xml12
-rw-r--r--dev-python/tweedledum/tweedledum-1.1.1.ebuild35
-rw-r--r--dev-python/tweepy/Manifest1
-rw-r--r--dev-python/tweepy/metadata.xml8
-rw-r--r--dev-python/tweepy/tweepy-3.10.0.ebuild31
-rw-r--r--dev-python/twisted/twisted-22.4.0.ebuild2
-rw-r--r--dev-python/types-paramiko/Manifest2
-rw-r--r--dev-python/types-paramiko/metadata.xml13
-rw-r--r--dev-python/types-paramiko/types-paramiko-2.8.16.ebuild21
-rw-r--r--dev-python/types-paramiko/types-paramiko-2.8.17.ebuild21
-rw-r--r--dev-python/types-python-dateutil/Manifest2
-rw-r--r--dev-python/types-python-dateutil/metadata.xml12
-rw-r--r--dev-python/types-python-dateutil/types-python-dateutil-2.8.10.ebuild19
-rw-r--r--dev-python/types-python-dateutil/types-python-dateutil-2.8.9.ebuild19
-rw-r--r--dev-python/types-pytz/Manifest2
-rw-r--r--dev-python/types-pytz/metadata.xml12
-rw-r--r--dev-python/types-pytz/types-pytz-2021.3.5.ebuild19
-rw-r--r--dev-python/types-pytz/types-pytz-2021.3.6.ebuild19
-rw-r--r--dev-python/types-requests/Manifest2
-rw-r--r--dev-python/types-requests/metadata.xml12
-rw-r--r--dev-python/types-requests/types-requests-2.27.15.ebuild22
-rw-r--r--dev-python/types-requests/types-requests-2.27.16.ebuild22
-rw-r--r--dev-python/types-urllib3/Manifest2
-rw-r--r--dev-python/types-urllib3/metadata.xml12
-rw-r--r--dev-python/types-urllib3/types-urllib3-1.26.10.ebuild19
-rw-r--r--dev-python/types-urllib3/types-urllib3-1.26.11.ebuild19
-rw-r--r--dev-python/ufo2ft/Manifest2
-rw-r--r--dev-python/ufo2ft/metadata.xml79
-rw-r--r--dev-python/ufo2ft/ufo2ft-2.25.3.ebuild38
-rw-r--r--dev-python/ufo2ft/ufo2ft-2.26.0.ebuild38
-rw-r--r--dev-python/ufoLib2/Manifest2
-rw-r--r--dev-python/ufoLib2/metadata.xml13
-rw-r--r--dev-python/ufoLib2/ufoLib2-0.11.4.ebuild43
-rw-r--r--dev-python/ufoLib2/ufoLib2-0.13.1.ebuild45
-rw-r--r--dev-python/ufoNormalizer/Manifest2
-rw-r--r--dev-python/ufoNormalizer/metadata.xml27
-rw-r--r--dev-python/ufoNormalizer/ufoNormalizer-0.5.4.ebuild23
-rw-r--r--dev-python/ufoNormalizer/ufoNormalizer-0.6.1.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/Manifest2
-rw-r--r--dev-python/uharfbuzz/files/uharfbuzz-0.23.0-system-harfbuzz.patch34
-rw-r--r--dev-python/uharfbuzz/metadata.xml14
-rw-r--r--dev-python/uharfbuzz/uharfbuzz-0.23.0.ebuild35
-rw-r--r--dev-python/uharfbuzz/uharfbuzz-0.24.1.ebuild35
-rw-r--r--dev-python/uhashring/Manifest1
-rw-r--r--dev-python/uhashring/metadata.xml30
-rw-r--r--dev-python/uhashring/uhashring-2.1.ebuild26
-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/unicodedata2/Manifest2
-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/unicodedata2/unicodedata2-14.0.0.ebuild26
-rw-r--r--dev-python/urlmatch/Manifest1
-rw-r--r--dev-python/urlmatch/metadata.xml8
-rw-r--r--dev-python/urlmatch/urlmatch-1.0.1-r1.ebuild27
-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/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/webpy/Manifest1
-rw-r--r--dev-python/webpy/metadata.xml21
-rw-r--r--dev-python/webpy/webpy-0.62.ebuild40
-rw-r--r--dev-python/webrtcvad/Manifest1
-rw-r--r--dev-python/webrtcvad/metadata.xml8
-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.ebuild21
-rw-r--r--dev-python/wsgi_intercept/Manifest2
-rw-r--r--dev-python/wsgi_intercept/metadata.xml11
-rw-r--r--dev-python/wsgi_intercept/wsgi_intercept-1.9.2.ebuild33
-rw-r--r--dev-python/wsgi_intercept/wsgi_intercept-1.9.3.ebuild36
-rw-r--r--dev-python/xattr/Manifest2
-rw-r--r--dev-python/xattr/metadata.xml13
-rw-r--r--dev-python/xattr/xattr-0.9.7.ebuild21
-rw-r--r--dev-python/xattr/xattr-0.9.9.ebuild21
-rw-r--r--dev-python/xunitparser/Manifest1
-rw-r--r--dev-python/xunitparser/metadata.xml8
-rw-r--r--dev-python/xunitparser/xunitparser-1.3.3.ebuild22
-rw-r--r--dev-python/yams/Manifest1
-rw-r--r--dev-python/yams/metadata.xml16
-rw-r--r--dev-python/yams/yams-0.7.3.ebuild43
-rw-r--r--dev-python/yams/yams-9999.ebuild43
-rw-r--r--dev-python/yanc/Manifest1
-rw-r--r--dev-python/yanc/metadata.xml12
-rw-r--r--dev-python/yanc/yanc-0.3.3.ebuild24
-rw-r--r--dev-python/yaql/Manifest1
-rw-r--r--dev-python/yaql/metadata.xml20
-rw-r--r--dev-python/yaql/yaql-2.0.0.ebuild40
-rw-r--r--dev-python/youseedee/Manifest1
-rw-r--r--dev-python/youseedee/metadata.xml13
-rw-r--r--dev-python/youseedee/youseedee-0.3.0.ebuild19
-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-r1.ebuild39
-rw-r--r--dev-python/zake/Manifest1
-rw-r--r--dev-python/zake/metadata.xml25
-rw-r--r--dev-python/zake/zake-0.2.2.ebuild32
1170 files changed, 22177 insertions, 417 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
new file mode 100644
index 000000000000..ecf23143bf89
--- /dev/null
+++ b/dev-python/DAWG-Python/DAWG-Python-0.7.2.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_{7,8,9,10} pypy3 )
+DISTUTILS_USE_SETUPTOOLS=bdepend
+inherit distutils-r1
+
+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"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/DAWG-Python/Manifest b/dev-python/DAWG-Python/Manifest
new file mode 100644
index 000000000000..cde3d55801bc
--- /dev/null
+++ b/dev-python/DAWG-Python/Manifest
@@ -0,0 +1 @@
+DIST DAWG-Python-0.7.2.tar.gz 9007 BLAKE2B 44e52df192d602da965ff45cd25ee58991063f6454900f75df0eaf6c0806cea060e1ad48ccfd2a9e2314533924458f440720c6079c78c8fb1ab492557bd9bec8 SHA512 402d94ea48cca66b12368781d6f015c9356845be1ad9e24c0a08ea9be0d04be8ae376b31cd8c6e7553e49f104ce7a1d66338b8ad84b372609c831524fbb0f6b8
diff --git a/dev-python/DAWG-Python/metadata.xml b/dev-python/DAWG-Python/metadata.xml
new file mode 100644
index 000000000000..848c002c8fcc
--- /dev/null
+++ b/dev-python/DAWG-Python/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>1over137@anche.no</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">DAWG-Python</remote-id>
+ <remote-id type="github">pytries/DAWG-Python</remote-id>
+ </upstream>
+</pkgmetadata>
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 000000000000..da5214a5780d
--- /dev/null
+++ b/dev-python/EbookLib/EbookLib-0.17.1.ebuild
@@ -0,0 +1,15 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+inherit distutils-r1
+
+DESCRIPTION="Ebook library which can handle EPUB2/EPUB3 and Kindle format"
+HOMEPAGE="https://github.com/aerkalov/ebooklib https://pypi.org/project/EbookLib/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+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 000000000000..bc40ed43d3e9
--- /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 000000000000..938b83ed8eba
--- /dev/null
+++ b/dev-python/EbookLib/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>1over137@anche.no</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/MutatorMath/Manifest b/dev-python/MutatorMath/Manifest
new file mode 100644
index 000000000000..bb4890bf5c6f
--- /dev/null
+++ b/dev-python/MutatorMath/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..d93e61f9e5a5
--- /dev/null
+++ b/dev-python/MutatorMath/MutatorMath-3.0.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..9a5b10643be0
--- /dev/null
+++ b/dev-python/MutatorMath/metadata.xml
@@ -0,0 +1,14 @@
+<?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/Pyro5/Manifest b/dev-python/Pyro5/Manifest
new file mode 100644
index 000000000000..dc691d18c0f7
--- /dev/null
+++ b/dev-python/Pyro5/Manifest
@@ -0,0 +1 @@
+DIST Pyro5-5.13.1.tar.gz 430497 BLAKE2B 8b9709a683e57af09faa82320df24cc1122f91296bfb61ae4003c3486714a60b735c45b2ff8f03642b6fb1a69645be9f58ad236d0cf7597a0e177b4cdaf2ae80 SHA512 71c35842c3fb78e04f5799c6e0059882140b38cc010620beecce56f8e2764f0186211cbc166af5e82e14c3e91173ef1e3f1b45a4480184dadd91bb762d11a24f
diff --git a/dev-python/Pyro5/Pyro5-5.13.1.ebuild b/dev-python/Pyro5/Pyro5-5.13.1.ebuild
new file mode 100644
index 000000000000..3f76b6b8c976
--- /dev/null
+++ b/dev-python/Pyro5/Pyro5-5.13.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Distributed object middleware for Python (RPC)"
+HOMEPAGE="
+ https://pyro5.readthedocs.io
+ https://pypi.org/project/Pyro5/
+ https://github.com/irmen/Pyro5
+"
+SRC_URI="https://github.com/irmen/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/serpent-1.40[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs/source
+
+PROPERTIES="test_network"
+RESTRICT="test"
diff --git a/dev-python/Pyro5/metadata.xml b/dev-python/Pyro5/metadata.xml
new file mode 100644
index 000000000000..705ebead9201
--- /dev/null
+++ b/dev-python/Pyro5/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.paragon@gmail.com</email>
+ <description>Primary maintainer</description>
+</maintainer>
+<upstream>
+ <remote-id type="github">irmen/Pyro5</remote-id>
+ <remote-id type="pypi">Pyro5</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/dev-python/SLPP/Manifest b/dev-python/SLPP/Manifest
new file mode 100644
index 000000000000..ca879d8774bb
--- /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 000000000000..32e857f1b19a
--- /dev/null
+++ b/dev-python/SLPP/SLPP-1.2.3.ebuild
@@ -0,0 +1,15 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+inherit distutils-r1
+
+DESCRIPTION="Simple lua-python parser"
+HOMEPAGE="https://github.com/SirAnthony/slpp https://pypi.org/project/SLPP/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+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 000000000000..9067dd722e63
--- /dev/null
+++ b/dev-python/SLPP/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>1over137@anche.no</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/SQLAlchemy-Utils/Manifest b/dev-python/SQLAlchemy-Utils/Manifest
new file mode 100644
index 000000000000..8ea838e16ee7
--- /dev/null
+++ b/dev-python/SQLAlchemy-Utils/Manifest
@@ -0,0 +1,2 @@
+DIST SQLAlchemy-Utils-0.37.9.tar.gz 136639 BLAKE2B e9e92b185ff45cfee5b1a6e59e78ae819ef15e419e178e8773f6f76d0681e6c047b8124c17b95e49c0a1badff13f27c3718d0f68f67523eabe6333a665d5a134 SHA512 5186ea01d5fab000b79496a501321846b326336cb1e725520acd4512e2d129e51b8887d95f3ca6109575b1263fde0178a84ca7d37da06d8b410bc97649c76f14
+DIST SQLAlchemy-Utils-0.38.2.tar.gz 136800 BLAKE2B 13d1470c65a6eeb198d6846a85f4b9d0a1476fd95eed24d1a06ff3cc9a87fb56243f39bd6b542b7e5749551270e03d8345f5a3da5a1f1e548cfe757c81b26d49 SHA512 2dc98549501e3b8fc3ad77aa14f31940e9aa73999d699bb1a2d4be424eb3bff38a3fc8cacf8774e42f816c1b31cc1ccc4e9955cf1dae2fd3a2b9e4e0f0b18cc7
diff --git a/dev-python/SQLAlchemy-Utils/SQLAlchemy-Utils-0.37.9.ebuild b/dev-python/SQLAlchemy-Utils/SQLAlchemy-Utils-0.37.9.ebuild
new file mode 100644
index 000000000000..912c6d1df260
--- /dev/null
+++ b/dev-python/SQLAlchemy-Utils/SQLAlchemy-Utils-0.37.9.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_DESELECT=( tests/types/test_timezone.py )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Various utility functions and datatypes for SQLAlchemy"
+HOMEPAGE="
+ https://github.com/kvesteri/sqlalchemy-utils
+ https://pypi.org/project/SQLAlchemy-Utils/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="BSD"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/pygments-2.7.1[${PYTHON_USEDEP}]
+ >=dev-python/jinja-2.3[${PYTHON_USEDEP}]
+ >=dev-python/docutils-0.10[${PYTHON_USEDEP}]
+ >=dev-python/flexmock-0.9.7[${PYTHON_USEDEP}]
+ >=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/psycopg-2.5.1[${PYTHON_USEDEP}]
+ >=dev-python/psycopg2cffi-2.8.1[${PYTHON_USEDEP}]
+ >=dev-python/pg8000-1.12.4[${PYTHON_USEDEP}]
+ >=dev-python/pytz-2014.2[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.6[${PYTHON_USEDEP}]
+ dev-python/pymysql[${PYTHON_USEDEP}]
+ dev-python/pyodbc[${PYTHON_USEDEP}]
+ dev-python/greenlet[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/SQLAlchemy-Utils/SQLAlchemy-Utils-0.38.2.ebuild b/dev-python/SQLAlchemy-Utils/SQLAlchemy-Utils-0.38.2.ebuild
new file mode 100644
index 000000000000..c95be218077c
--- /dev/null
+++ b/dev-python/SQLAlchemy-Utils/SQLAlchemy-Utils-0.38.2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_DESELECT=( tests/types/test_timezone.py ) # https://bugs.gentoo.org/819021
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Various utility functions and datatypes for SQLAlchemy"
+HOMEPAGE="
+ https://github.com/kvesteri/sqlalchemy-utils
+ https://pypi.org/project/SQLAlchemy-Utils/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="BSD"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/pygments-2.7.1[${PYTHON_USEDEP}]
+ >=dev-python/jinja-2.3[${PYTHON_USEDEP}]
+ >=dev-python/docutils-0.10[${PYTHON_USEDEP}]
+ >=dev-python/flexmock-0.9.7[${PYTHON_USEDEP}]
+ >=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/psycopg-2.5.1[${PYTHON_USEDEP}]
+ >=dev-python/psycopg2cffi-2.8.1[${PYTHON_USEDEP}]
+ >=dev-python/pg8000-1.12.4[${PYTHON_USEDEP}]
+ >=dev-python/pytz-2014.2[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.6[${PYTHON_USEDEP}]
+ dev-python/pymysql[${PYTHON_USEDEP}]
+ dev-python/pyodbc[${PYTHON_USEDEP}]
+ dev-python/greenlet[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/SQLAlchemy-Utils/metadata.xml b/dev-python/SQLAlchemy-Utils/metadata.xml
new file mode 100644
index 000000000000..79d83211f494
--- /dev/null
+++ b/dev-python/SQLAlchemy-Utils/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/kvesteri/sqlalchemy-utils/issues</bugs-to>
+ <remote-id type="pypi">SQLAlchemy-Utils</remote-id>
+ <remote-id type="github">kvesteri/sqlalchemy-utils</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/WSME/Manifest b/dev-python/WSME/Manifest
new file mode 100644
index 000000000000..45e23f278532
--- /dev/null
+++ b/dev-python/WSME/Manifest
@@ -0,0 +1 @@
+DIST WSME-0.11.0.tar.gz 89863 BLAKE2B 3dfb9bbb2cce48eca47ec2498db8f69f1a4e9466cd6370f49fe874d640c244ae2e9cddbba1f3f5e1701612c80baaa2d3dd3f3a1309c9559c9da3b5f8dbdf4919 SHA512 5bbf2179a7efa413981ffcb360868875a1283a9cfde02626eb715fe9c61ff05367c62a346011a6d681b8c269c18e115e763f7bf589b456ec81a707bd102f913e
diff --git a/dev-python/WSME/WSME-0.11.0.ebuild b/dev-python/WSME/WSME-0.11.0.ebuild
new file mode 100644
index 000000000000..838e207da8e8
--- /dev/null
+++ b/dev-python/WSME/WSME-0.11.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Simplify the writing of REST APIs, and extend them with additional protocols"
+HOMEPAGE="
+ https://opendev.org/x/wsme
+ https://pypi.org/project/WSME/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=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}]
+"
+DEPEND="
+ ${RDEPEND}
+ dev-python/pbr[${PYTHON_USEDEP}]
+ dev-python/wheel[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/transaction[${PYTHON_USEDEP}]
+ dev-python/pecan[${PYTHON_USEDEP}]
+ dev-python/flask[${PYTHON_USEDEP}]
+ dev-python/flask-restful[${PYTHON_USEDEP}]
+ dev-python/webtest[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests nose
diff --git a/dev-python/WSME/metadata.xml b/dev-python/WSME/metadata.xml
new file mode 100644
index 000000000000..8f47315d126a
--- /dev/null
+++ b/dev-python/WSME/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">
+ <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
new file mode 100644
index 000000000000..7f5dd3349572
--- /dev/null
+++ b/dev-python/XenAPI/Manifest
@@ -0,0 +1,2 @@
+DIST XenAPI-2.14.tar.gz 5110 BLAKE2B 0391ccfffe8c2a264360eef4057a666e92bcbc8b31e7848f15704fff4d554db9758b1aa0b5210d1bfc41c4df261096b04961a4ff6722a8ea25305971b70f8562 SHA512 a56245b617fa049bcc62ee78e85167e322b632e53d2a6bc3e042e1cb0541ea0004aee4b957f9190c30685cef935f236d980a224322ac593896abd7a31e36abd2
+DIST XenAPI-22.14.0.tar.gz 3124877 BLAKE2B 2b073e0f713b45b51af1e221aa278841c4a5515c72859c7c95601edeb32ec2b8415c11dec86f79a2ab88265d4303675cf9f0432091c884346a25630a503b5244 SHA512 cc048ede21748e6e60b9e432bb68e0754590e3846277c8bf1fa9000916897353db1b5b39bd7120e7d6c894fc859c8a34129824399cfca0a07c5edf937a6e18ec
diff --git a/dev-python/XenAPI/XenAPI-2.14-r1.ebuild b/dev-python/XenAPI/XenAPI-2.14-r1.ebuild
new file mode 100644
index 000000000000..b418b4c4619e
--- /dev/null
+++ b/dev-python/XenAPI/XenAPI-2.14-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Xen API SDK, for communication with Citrix XenServer and Xen Cloud Platform"
+HOMEPAGE="
+ https://xenproject.org/developers/teams/xen-api/
+ https://github.com/xapi-project/xen-api
+ https://pypi.org/project/XenAPI/
+"
+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/XenAPI-22.14.0.ebuild b/dev-python/XenAPI/XenAPI-22.14.0.ebuild
new file mode 100644
index 000000000000..5d53de7e14bf
--- /dev/null
+++ b/dev-python/XenAPI/XenAPI-22.14.0.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_OPTIONAL=1
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit bash-completion-r1 distutils-r1 dune pam systemd
+
+DESCRIPTION="Xen API SDK, for communication with Citrix XenServer and Xen Cloud Platform"
+HOMEPAGE="
+ https://xenproject.org/developers/teams/xen-api/
+ https://github.com/xapi-project/xen-api
+ https://pypi.org/project/XenAPI/
+"
+SRC_URI="https://github.com/xapi-project/xen-api/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/xen-api-${PV}"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS=""
+IUSE="ocamlopt pam python"
+
+RDEPEND="
+ python? ( ${PYTHON_DEPS} )
+
+ dev-libs/xxhash
+ dev-ml/cstruct
+ dev-ml/ezjsonm
+ dev-ml/ezxenstore
+ dev-ml/mtime
+ dev-ml/rpc
+ dev-ml/uuidm
+ dev-ml/xapi-backtrace
+ dev-ml/xapi-stdext
+ dev-ml/xcp-inventory
+ dev-ml/xcp-rrd
+ dev-ml/xen-gnt
+ dev-ml/xenctrl
+ dev-ml/xenstore
+ dev-ml/xenstore-clients
+ dev-ml/xmlm
+"
+DEPEND="${RDEPEND}"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+src_compile() {
+ dune_src_compile
+ if use python; then
+ pushd scripts/examples/python || die
+ python_foreach_impl distutil-r1_python_compile
+ popd || die
+ fi
+}
+
+src_install() {
+ for p in *.opam ; do
+ dune_src_install "${p/.opam/}"
+ done
+
+ pushd scripts || die
+ emake install
+ popd || die
+
+ if use python; then
+ pushd scripts/examples/python || die
+ python_foreach_impl distutils-r1_python_install
+ popd || die
+ fi
+
+# newbashcomp scripts/xe-switch-network-backend-bash-completion xe-switch-network-backend
+#
+# insinto /etc/logrotate
+# newins scripts/audit-logrotate audit.conf
+#
+# for s in scripts/*.service ; do
+# systemd_dounit "${s}"
+# done
+#
+# use pam && newpamd scripts/pam.d-xapi xapi
+}
diff --git a/dev-python/XenAPI/metadata.xml b/dev-python/XenAPI/metadata.xml
new file mode 100644
index 000000000000..8f8712d853e8
--- /dev/null
+++ b/dev-python/XenAPI/metadata.xml
@@ -0,0 +1,12 @@
+<?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/aionotify/Manifest b/dev-python/aionotify/Manifest
new file mode 100644
index 000000000000..58d0b4a940c1
--- /dev/null
+++ b/dev-python/aionotify/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..fc1dbcdaec85
--- /dev/null
+++ b/dev-python/aionotify/aionotify-0.2.0.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..a507be0a7892
--- /dev/null
+++ b/dev-python/aionotify/metadata.xml
@@ -0,0 +1,9 @@
+<?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
new file mode 100644
index 000000000000..1f636750a564
--- /dev/null
+++ b/dev-python/aiopg/Manifest
@@ -0,0 +1,2 @@
+DIST aiopg-1.3.2_beta1.tar.gz 202058 BLAKE2B a303ef66ded1a0f77a33d83c0d498e16519521c87e930b3ab9097ac56c8ad6e111e5edc145c869aef2530900f3f2c2400ef785e307c2333053a0dfae1439f2f6 SHA512 855ab21528a8eb572f2b0b7965bcca37cacd42ef79910f4b042c22654c6bb37b2528dd2cddd1fa66dba24cccdc0996ba8281b44bb9d99a1607fc146747ffd642
+DIST aiopg-1.3.3.tar.gz 202064 BLAKE2B bf9998e1209753fd5095eb9e371a2038f3f849f17d0068e2516b1d8663d9c2d9fec700d30ef4f4ea236d9a63fed4f4149cf28af1323acf1c02cedda2dd4b2375 SHA512 807bbbb14df1b44a54fb193f08d91313d10c6927e4140b305ddcc4cc37a53a42b18cd63dee99a1a04d0993c8502085f3aa7626e660b6bc9cd2ef40a7414a3822
diff --git a/dev-python/aiopg/aiopg-1.3.2_beta1.ebuild b/dev-python/aiopg/aiopg-1.3.2_beta1.ebuild
new file mode 100644
index 000000000000..d9bf83e516b2
--- /dev/null
+++ b/dev-python/aiopg/aiopg-1.3.2_beta1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1 optfeature
+
+MY_PV=${PV/_beta/b}
+DESCRIPTION="Postgres integration with asyncio"
+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"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# tests use docker containers -- that's wild!
+RESTRICT="test"
+
+RDEPEND="dev-python/psycopg[${PYTHON_USEDEP}]"
+
+DEPEND="test? (
+ dev-python/docker-py[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+)"
+
+DOCS=( CHANGES.txt README.rst )
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs dev-python/sphinxcontrib-asyncio
+
+python_test() {
+ epytest --no-pull
+}
+
+pkg_postinst() {
+ optfeature "sqlalchemy support" dev-python/sqlalchemy
+}
diff --git a/dev-python/aiopg/aiopg-1.3.3.ebuild b/dev-python/aiopg/aiopg-1.3.3.ebuild
new file mode 100644
index 000000000000..d9bf83e516b2
--- /dev/null
+++ b/dev-python/aiopg/aiopg-1.3.3.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1 optfeature
+
+MY_PV=${PV/_beta/b}
+DESCRIPTION="Postgres integration with asyncio"
+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"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+# tests use docker containers -- that's wild!
+RESTRICT="test"
+
+RDEPEND="dev-python/psycopg[${PYTHON_USEDEP}]"
+
+DEPEND="test? (
+ dev-python/docker-py[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+)"
+
+DOCS=( CHANGES.txt README.rst )
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs dev-python/sphinxcontrib-asyncio
+
+python_test() {
+ epytest --no-pull
+}
+
+pkg_postinst() {
+ optfeature "sqlalchemy support" dev-python/sqlalchemy
+}
diff --git a/dev-python/aiopg/metadata.xml b/dev-python/aiopg/metadata.xml
new file mode 100644
index 000000000000..a507be0a7892
--- /dev/null
+++ b/dev-python/aiopg/metadata.xml
@@ -0,0 +1,9 @@
+<?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/aiosmtplib/Manifest b/dev-python/aiosmtplib/Manifest
new file mode 100644
index 000000000000..2393176491bd
--- /dev/null
+++ b/dev-python/aiosmtplib/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..b7d956223c12
--- /dev/null
+++ b/dev-python/aiosmtplib/aiosmtplib-1.1.6.ebuild
@@ -0,0 +1,36 @@
+# 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,10} )
+
+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
new file mode 100644
index 000000000000..28bfb7940a8f
--- /dev/null
+++ b/dev-python/aiosmtplib/metadata.xml
@@ -0,0 +1,8 @@
+<?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
new file mode 100644
index 000000000000..fb7002456a70
--- /dev/null
+++ b/dev-python/aiosqlite/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..6dd046088cb8
--- /dev/null
+++ b/dev-python/aiosqlite/aiosqlite-0.17.0-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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
new file mode 100644
index 000000000000..a507be0a7892
--- /dev/null
+++ b/dev-python/aiosqlite/metadata.xml
@@ -0,0 +1,9 @@
+<?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
new file mode 100644
index 000000000000..754319e1a00f
--- /dev/null
+++ b/dev-python/aiounittest/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..7e54e0d51422
--- /dev/null
+++ b/dev-python/aiounittest/aiounittest-1.4.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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
new file mode 100644
index 000000000000..a507be0a7892
--- /dev/null
+++ b/dev-python/aiounittest/metadata.xml
@@ -0,0 +1,9 @@
+<?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
new file mode 100644
index 000000000000..c18f6bb2a27d
--- /dev/null
+++ b/dev-python/almost/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..d14d2693bef4
--- /dev/null
+++ b/dev-python/almost/almost-0.1.5.ebuild
@@ -0,0 +1,30 @@
+# 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_{7,8,9,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
new file mode 100644
index 000000000000..fc87ec01f0dc
--- /dev/null
+++ b/dev-python/almost/files/almost-0.1.5-setuptools.patch
@@ -0,0 +1,11 @@
+--- 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
new file mode 100644
index 000000000000..13f1d02d71fc
--- /dev/null
+++ b/dev-python/almost/metadata.xml
@@ -0,0 +1,17 @@
+<?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/antlr4-python3-runtime/Manifest b/dev-python/antlr4-python3-runtime/Manifest
index c0e996986276..a6fd2f18785c 100644
--- a/dev-python/antlr4-python3-runtime/Manifest
+++ b/dev-python/antlr4-python3-runtime/Manifest
@@ -1 +1,2 @@
+DIST antlr-4.10.tar.gz 4599769 BLAKE2B 030a4cef752aec2199a816717e242b12245d869634e8c3b94825990f1ad99c000d8bc247c95b182b8146ae57f705a437b3a43fe91f9855958ed2f2115cdbef40 SHA512 af865442047ad8880172e62d17b7eb68d5eeda668ed55995b05cae69ee5e47a89d7a757ddd429ab8d93f5bad50269f0e3dc2e9cf121a9b3d6a87674787858309
DIST antlr-4.9.3.tar.gz 4640242 BLAKE2B fb58f5e533051cb2c439c32f0462c1d463c99df862ba7e1a37a1c61378ab36a9edb9525c2a342de5b517da6f02d8291de5976c550932314f3464aad1a778afb9 SHA512 61452404c9639b5a0908cda16605f17c0fed0c9adfc3278c7408f9971420e9d1fe8f9e974e0826c2e3e780fdd83324094c0246cd5b28fa63f5686b094ea08127
diff --git a/dev-python/antlr4-python3-runtime/antlr4-python3-runtime-4.10.ebuild b/dev-python/antlr4-python3-runtime/antlr4-python3-runtime-4.10.ebuild
new file mode 100644
index 000000000000..ea55e61df236
--- /dev/null
+++ b/dev-python/antlr4-python3-runtime/antlr4-python3-runtime-4.10.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python 3 runtime for ANTLR"
+HOMEPAGE="https://www.antlr.org/"
+SRC_URI="
+ https://github.com/antlr/antlr4/archive/${PV}.tar.gz
+ -> antlr-${PV}.tar.gz
+"
+S="${WORKDIR}/antlr4-${PV}/runtime/Python3"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+python_test() {
+ "${EPYTHON}" tests/run.py -v || die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/aodhclient/Manifest b/dev-python/aodhclient/Manifest
new file mode 100644
index 000000000000..e88b2c9f9d06
--- /dev/null
+++ b/dev-python/aodhclient/Manifest
@@ -0,0 +1 @@
+DIST aodhclient-2.4.1.tar.gz 49894 BLAKE2B 37204a4a3378513a67846a376404fbd15235d354c0ecebecea1953a842ea8811e71cb5f5a2c9b07ffdeff56e64becc65595d1761accb639a4a7d6411132623c4 SHA512 008ca34154a53f4a1ff17f3904e7d1b0feace7f71b40a3cb3774816c014c1289517e8f1551c1c340ff8a2bb1f2927977455a826c088c2c2e1bb2c8cd931bd7fc
diff --git a/dev-python/aodhclient/aodhclient-2.4.1.ebuild b/dev-python/aodhclient/aodhclient-2.4.1.ebuild
new file mode 100644
index 000000000000..060678081f70
--- /dev/null
+++ b/dev-python/aodhclient/aodhclient-2.4.1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_IGNORE=( aodhclient/tests/functional )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A client for the OpenStack Aodh API"
+HOMEPAGE="
+ https://github.com/openstack/python-aodhclient
+ https://opendev.org/openstack/python-aodhclient
+ https://pypi.org/project/aodhclient/
+ https://launchpad.net/python-aodhclient
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-1.4[${PYTHON_USEDEP}]
+ >=dev-python/cliff-1.14.0[${PYTHON_USEDEP}]
+ >=dev-python/osc-lib-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-1.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth-1.0.0[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/pyparsing[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/oslotest-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/reno-1.6.2[${PYTHON_USEDEP}]
+ >=dev-python/tempest-10[${PYTHON_USEDEP}]
+ >=dev-python/testtools-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/pifpaf-0.23[${PYTHON_USEDEP}]
+ dev-python/gnocchi[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/aodhclient/metadata.xml b/dev-python/aodhclient/metadata.xml
new file mode 100644
index 000000000000..f478b5bb4ba4
--- /dev/null
+++ b/dev-python/aodhclient/metadata.xml
@@ -0,0 +1,14 @@
+<?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">aodhclient</remote-id>
+ <remote-id type="github">openstack/python-aodhclient</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/asciimatics/Manifest b/dev-python/asciimatics/Manifest
new file mode 100644
index 000000000000..d92fb4dc1b3f
--- /dev/null
+++ b/dev-python/asciimatics/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..aa2ea746745e
--- /dev/null
+++ b/dev-python/asciimatics/asciimatics-1.13.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2022 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,10} )
+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
new file mode 100644
index 000000000000..f0c60c6aa2b9
--- /dev/null
+++ b/dev-python/asciimatics/asciimatics-9999.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2022 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,10} )
+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
new file mode 100644
index 000000000000..89cf7a58fe9b
--- /dev/null
+++ b/dev-python/asciimatics/metadata.xml
@@ -0,0 +1,14 @@
+<?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
new file mode 100644
index 000000000000..2e38aa4a9a8f
--- /dev/null
+++ b/dev-python/ascim/Manifest
@@ -0,0 +1 @@
+DIST ascim-0.1.1.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
new file mode 100644
index 000000000000..46a76e8af5e7
--- /dev/null
+++ b/dev-python/ascim/ascim-0.1.1.ebuild
@@ -0,0 +1,24 @@
+# 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,9,10} )
+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/ascim-9999.ebuild b/dev-python/ascim/ascim-9999.ebuild
new file mode 100644
index 000000000000..46a76e8af5e7
--- /dev/null
+++ b/dev-python/ascim/ascim-9999.ebuild
@@ -0,0 +1,24 @@
+# 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,9,10} )
+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
new file mode 100644
index 000000000000..41d14a1ef43e
--- /dev/null
+++ b/dev-python/ascim/metadata.xml
@@ -0,0 +1,14 @@
+<?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://github.com/fakefred/ascim#usage</doc>
+ <bugs-to>https://github.com/fakefred/ascim/issues</bugs-to>
+ <remote-id type="github">fakefred/ascim</remote-id>
+ <remote-id type="pypi">ascim</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/aspectlib/Manifest b/dev-python/aspectlib/Manifest
new file mode 100644
index 000000000000..c0a357938bf9
--- /dev/null
+++ b/dev-python/aspectlib/Manifest
@@ -0,0 +1 @@
+DIST aspectlib-1.5.2.tar.gz 155976 BLAKE2B a5f98c78e098226002a9cfb95cd69d2da057fe5a56cab5ae13c80666e1220c8a0fb9ae1b3f652e85d54ab9829429f9aad37162eac9cc74a4ffaab9ab1f609c1c SHA512 33642f828989d07c6af78bdf9adc9f2abbc419df89b878cfe7bd9c8df226a59401176b56b1f2b3ba48661ea5a145520de0bc7a0980226b742b0a79f31ab7dd7f
diff --git a/dev-python/aspectlib/aspectlib-1.5.2.ebuild b/dev-python/aspectlib/aspectlib-1.5.2.ebuild
new file mode 100644
index 000000000000..1e850c10d448
--- /dev/null
+++ b/dev-python/aspectlib/aspectlib-1.5.2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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/metadata.xml b/dev-python/aspectlib/metadata.xml
new file mode 100644
index 000000000000..3a4e403f66d7
--- /dev/null
+++ b/dev-python/aspectlib/metadata.xml
@@ -0,0 +1,16 @@
+<?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 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>
+</pkgmetadata>
diff --git a/dev-python/asyncpg/Manifest b/dev-python/asyncpg/Manifest
new file mode 100644
index 000000000000..0843f7e44caa
--- /dev/null
+++ b/dev-python/asyncpg/Manifest
@@ -0,0 +1,2 @@
+DIST asyncpg-0.23.0.tar.gz 775098 BLAKE2B 8afcbf1a39de87b29089fec871bae36f4bdbb38114d08b9badf7b0e2b2d19b074efe5a2ea90b611bb1d32b3b9365124cc17bba10874d2d73a267fc13028aff6a SHA512 bfb47b9d7faac4c7a0d49164c062b68c3fa3a9abac822b75b975bf41c45f6c6be25c4537140e75e1323fe1615bb03353d5ba50ef13d64c5a646293629a643b39
+DIST asyncpg-0.25.0.tar.gz 804292 BLAKE2B 55e679716fe6dab82be9142f1abaa0e47671341b91f4fd182ad564e41a61dbc91990f767e6b0e7d0d00658d530075493d67f284272239c92d3015016ec0dfb2b SHA512 7afa5ae42c0d5cab93bb1c3266bad11ce2e7c271d7ffd2c5d92e373fd8e06be89e4b18e8fd3ffd7e750e913944630f1ae6c947e20faa63f99ded7d867ad6cd80
diff --git a/dev-python/asyncpg/asyncpg-0.23.0.ebuild b/dev-python/asyncpg/asyncpg-0.23.0.ebuild
new file mode 100644
index 000000000000..d672f1042bbf
--- /dev/null
+++ b/dev-python/asyncpg/asyncpg-0.23.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,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.25.0.ebuild b/dev-python/asyncpg/asyncpg-0.25.0.ebuild
new file mode 100644
index 000000000000..d1467001435a
--- /dev/null
+++ b/dev-python/asyncpg/asyncpg-0.25.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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/metadata.xml b/dev-python/asyncpg/metadata.xml
new file mode 100644
index 000000000000..3287f65d2a76
--- /dev/null
+++ b/dev-python/asyncpg/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 type="person">
+ <email>piotr.staroszczyk@get24.org</email>
+ <name>Piotr Staroszczyk</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/asyncssh/Manifest b/dev-python/asyncssh/Manifest
new file mode 100644
index 000000000000..9354ec44a186
--- /dev/null
+++ b/dev-python/asyncssh/Manifest
@@ -0,0 +1 @@
+DIST asyncssh-2.10.0.tar.gz 481494 BLAKE2B fc06ad0579f9dc00af7fd0355f8a3a87144cc6fd5f928cfd7798e9a0942b6b549bd94877ab6371470f014cda040f4092df8980e792c37e37402d77d2f5d7bfe3 SHA512 698d97ca607582d75e74fe39798d9a8490b80c1aa5cfafa0152537c9f2354528a7386b26620d0c18b6d986c710e6c16888404ba7263b821f471211b5eae3d21f
diff --git a/dev-python/asyncssh/asyncssh-2.10.0.ebuild b/dev-python/asyncssh/asyncssh-2.10.0.ebuild
new file mode 100644
index 000000000000..d55d8e3783f6
--- /dev/null
+++ b/dev-python/asyncssh/asyncssh-2.10.0.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DOCS_BUILDER="sphinx"
+DOCS_DIR="docs"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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}]
+ >=dev-python/typing-extensions-3.6[${PYTHON_USEDEP}]
+"
+DEPEND="${REDEPEND}"
+BDEPEND="
+ 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
+
+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
new file mode 100644
index 000000000000..316963e86605
--- /dev/null
+++ b/dev-python/asyncssh/metadata.xml
@@ -0,0 +1,55 @@
+<?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
new file mode 100644
index 000000000000..93a3741995b1
--- /dev/null
+++ b/dev-python/auditok/Manifest
@@ -0,0 +1 @@
+DIST auditok-0.2.0.tar.gz 2482517 BLAKE2B 8db341116e74d875f73757c758ad24c3f8b06cf69a95b09cf7dda30495e46e456861c03ce0bdea2a0c714225a452f6d8a85348c625343fc1e247acb11db31ee6 SHA512 aa9e05d03fde68277395134d247cf7c211b48852fe0e8ac6df9d773242363b692f0505317d54268e81dc29a49250775c4695f0f826d576589850d2290efadffb
diff --git a/dev-python/auditok/auditok-0.2.0.ebuild b/dev-python/auditok/auditok-0.2.0.ebuild
new file mode 100644
index 000000000000..eb310ac5cad1
--- /dev/null
+++ b/dev-python/auditok/auditok-0.2.0.ebuild
@@ -0,0 +1,45 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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="MIT"
+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_prepare_all() {
+ distutils-r1_python_prepare_all
+
+ # these tests appear to be broken
+ rm "${S}"/tests/test_plotting.py || die
+}
+
+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 "showing progress bar while playing audio clips" dev-python/tqdm
+ 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/metadata.xml b/dev-python/auditok/metadata.xml
new file mode 100644
index 000000000000..cbe3c6a539f0
--- /dev/null
+++ b/dev-python/auditok/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>smaniotto.nicola@gmail.com</email>
+ <name>Nicola Smaniotto</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/autoflake/Manifest b/dev-python/autoflake/Manifest
new file mode 100644
index 000000000000..1c009f0b695d
--- /dev/null
+++ b/dev-python/autoflake/Manifest
@@ -0,0 +1 @@
+DIST autoflake-1.4.tar.gz 24219 BLAKE2B 622c82b9ab5e7fd68e8bc2678c5868282e605640e1c52d1a8f81fbaaba26dfb738ac1ceb9eb20195bb820256fbae27222953a5271130e74b8708988516e20e00 SHA512 53e542a765cbd18df7c35a90f16786e173bdc332b4410abfbc6d24f1009bf5d6f8a383e897e72558617bdf339573d8aa9b8de6901aac392caf48889aacf0c9a6
diff --git a/dev-python/autoflake/autoflake-1.4-r1.ebuild b/dev-python/autoflake/autoflake-1.4-r1.ebuild
new file mode 100644
index 000000000000..b51e045d28b3
--- /dev/null
+++ b/dev-python/autoflake/autoflake-1.4-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+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"
+
+DEPEND=">=dev-python/pyflakes-1.1.0[${PYTHON_USEDEP}]"
+RDEPEND="${DEPEND}"
+
+RESTRICT="!test? ( test )"
+
+python_test() {
+ "${EPYTHON}" test_autoflake.py || die
+}
diff --git a/dev-python/autoflake/metadata.xml b/dev-python/autoflake/metadata.xml
new file mode 100644
index 000000000000..dd525596e8f1
--- /dev/null
+++ b/dev-python/autoflake/metadata.xml
@@ -0,0 +1,20 @@
+<?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">
+autoflake removes unused imports and unused variables from Python code. It makes use of pyflakes to do this.
+
+By default, autoflake only removes unused imports for modules that are part of the standard library. (Other modules may have side effects that make them unsafe to remove automatically.) Removal of unused variables is also disabled by default.
+
+autoflake also removes useless pass statements.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">myint/autoflake</remote-id>
+ <remote-id type="pypi">autoflake</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/automaton/Manifest b/dev-python/automaton/Manifest
new file mode 100644
index 000000000000..5280300b3586
--- /dev/null
+++ b/dev-python/automaton/Manifest
@@ -0,0 +1,2 @@
+DIST automaton-2.4.0.tar.gz 34381 BLAKE2B dda40e6e8b5978e808e80a83581b7c101cca2d5abfd9f46388960608979ce44a1a6457e4cdcb7e7b527f3527c83c0db994c8c55908f61bacd5369ef1bce585fa SHA512 e399fd12fd883112d49aff0d092fbc2b51952a24e3b40eae47d0bd7f5e2648689ab76413a2d404ef686ce5622e4661db1beb3e44a690c5c0279b85f69d267ecd
+DIST automaton-2.5.0.tar.gz 34476 BLAKE2B d2f3fbe486a84af022586fada7b02d0a498d7335aec1c8b47f28607375ca9523674cfc7a113e8ac096c2aa127740b421b288fc76fc22f4b9c9fb67e8f1f789c3 SHA512 ff7c15240e587653a67c3be821855a0102985db31effcb2c3dba79431d052e9aacc14ab0f4d0736c4043143e7aefd7b4bcaf5821e1496b9d83e90721dcead4c4
diff --git a/dev-python/automaton/automaton-2.4.0.ebuild b/dev-python/automaton/automaton-2.4.0.ebuild
new file mode 100644
index 000000000000..5ee0a414f411
--- /dev/null
+++ b/dev-python/automaton/automaton-2.4.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Friendly state machines for python."
+HOMEPAGE="
+ https://pypi.org/project/automaton/
+ https://opendev.org/openstack/automaton
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/reno-3.1.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/automaton/automaton-2.5.0.ebuild b/dev-python/automaton/automaton-2.5.0.ebuild
new file mode 100644
index 000000000000..075e90566fe5
--- /dev/null
+++ b/dev-python/automaton/automaton-2.5.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Friendly state machines for python"
+HOMEPAGE="
+ https://pypi.org/project/automaton/
+ https://opendev.org/openstack/automaton
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/reno-3.1.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/automaton/metadata.xml b/dev-python/automaton/metadata.xml
new file mode 100644
index 000000000000..cd55b3a9f8b2
--- /dev/null
+++ b/dev-python/automaton/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">
+ <description>co-maintainers welcome</description>
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="pypi">automaton</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/avro/Manifest b/dev-python/avro/Manifest
new file mode 100644
index 000000000000..49da0325e573
--- /dev/null
+++ b/dev-python/avro/Manifest
@@ -0,0 +1 @@
+DIST avro-1.11.0.tar.gz 83374 BLAKE2B 01f63974133d2c199f2b1e50694787898505dccf9ee3100517bd783088dce47a9b7c03aa9f98c9b4bd06a989a804478e081f0068fe4f2e81c047a9579c7a395e SHA512 e5fa1842df8d1dd730da850957927049c39788ce27b8454960d88fe7e8cf6bb6537e6db2dedd630fd09c03bc736f276b567c35c749f06fdc76a6d9cac43a4c07
diff --git a/dev-python/avro/avro-1.11.0.ebuild b/dev-python/avro/avro-1.11.0.ebuild
new file mode 100644
index 000000000000..6dc24d30b137
--- /dev/null
+++ b/dev-python/avro/avro-1.11.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Apache Avro is a data serialization system"
+HOMEPAGE="
+ https://pypi.org/project/avro/
+ https://avro.apache.org
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RESTRICT="test"
+PROPERTIES="test_network"
+
+distutils_enable_tests pytest
diff --git a/dev-python/avro/metadata.xml b/dev-python/avro/metadata.xml
new file mode 100644
index 000000000000..d822d0aa062c
--- /dev/null
+++ b/dev-python/avro/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="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">avro</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/axisregistry/Manifest b/dev-python/axisregistry/Manifest
new file mode 100644
index 000000000000..43c707a492a1
--- /dev/null
+++ b/dev-python/axisregistry/Manifest
@@ -0,0 +1 @@
+DIST axisregistry-0.2.0.tar.gz 15996 BLAKE2B f773aa03d8d51e29ae188a71ceb6f7505d35575739332bf7f6c0706bb659815a3d21ef2916d752872f335bf504c6a2662ec0ba447e651d50088f6d7b449b4e3a SHA512 ca069eba5d6ea036e8908d3bc74ec6f65345cad9ef7e6255cf111741e798f68ca24a4528a9dba473a196d1a5d658491677339fd80885e8023aa09d710056f76e
diff --git a/dev-python/axisregistry/axisregistry-0.2.0.ebuild b/dev-python/axisregistry/axisregistry-0.2.0.ebuild
new file mode 100644
index 000000000000..2ee57f645791
--- /dev/null
+++ b/dev-python/axisregistry/axisregistry-0.2.0.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A Python API to access data from the Google Fonts variable fonts Axis Registry"
+HOMEPAGE="
+ https://github.com/googlefonts/axisregistry
+ https://pypi.org/project/axisregistry/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+SLOT="0"
+
+RDEPEND="dev-python/protobuf-python[${PYTHON_USEDEP}]"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/setuptools_scm-4[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION="${PV}"
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/axisregistry/metadata.xml b/dev-python/axisregistry/metadata.xml
new file mode 100644
index 000000000000..69430d931aa6
--- /dev/null
+++ b/dev-python/axisregistry/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/googlefonts/axisregistry/issues</bugs-to>
+ <remote-id type="github">googlefonts/axisregistry</remote-id>
+ <remote-id type="pypi">axisregistry</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/azure-storage-blob/Manifest b/dev-python/azure-storage-blob/Manifest
new file mode 100644
index 000000000000..662be0b5ed5e
--- /dev/null
+++ b/dev-python/azure-storage-blob/Manifest
@@ -0,0 +1 @@
+DIST azure-storage-blob-12.8.1.zip 629903 BLAKE2B cf8d4fb8a52d370c11517019e3dc00349dc9e96f065665936db7089ff15e5ce969ea430e39cd39fdc5d62ee6570969bdd918fd7ab0cfcefdc860d7c4d9d62765 SHA512 0c760b48021e2607d0e7bb9dec7fef25d238542d0b150a0727bb58d8eab94a5d265c4bcb95d7087a113735a2f62c01f0f98711d4f320799f164ef53536e103e6
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
new file mode 100644
index 000000000000..95e5ed235bbb
--- /dev/null
+++ b/dev-python/azure-storage-blob/azure-storage-blob-12.8.1.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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
new file mode 100644
index 000000000000..ad8cead24f43
--- /dev/null
+++ b/dev-python/azure-storage-blob/metadata.xml
@@ -0,0 +1,8 @@
+<?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/b2sdk/Manifest b/dev-python/b2sdk/Manifest
new file mode 100644
index 000000000000..38390b803f39
--- /dev/null
+++ b/dev-python/b2sdk/Manifest
@@ -0,0 +1,2 @@
+DIST b2sdk-1.12.0.tar.gz 273412 BLAKE2B e67cf20a6d7277c3d2990e6f6c46cf9df253b3a46a8c8672cbdc810ca851e8c0cd6b6033b9034ce00283a577e2838cdb0c15410b12546f87c480581b5920074b SHA512 4d5eff1f9efed551c474a472a4c531b67b3356e959dde1d1058aad797abd5fd160781700753019d62ac2f05bd711bf1e6a0b15c0f5f86fd93bab17347a83cb13
+DIST b2sdk-1.8.0.tar.gz 250511 BLAKE2B dad792589148fc3cad91fed1aeb43e02afca6f67f35e2f8239510606d601067abbdd36a3f0b2b2b8264697004d548d8077c999437f027c058072d7383d13c48c SHA512 ee1e1987f127835b2016bba9485c7a9d9503b4a675662a7364310fec7c963214805ed6bc15b3a1f07477f202bbe06325f480997eb202bcdfa1cb24f006d0a900
diff --git a/dev-python/b2sdk/b2sdk-1.12.0.ebuild b/dev-python/b2sdk/b2sdk-1.12.0.ebuild
new file mode 100644
index 000000000000..0332a7c16e53
--- /dev/null
+++ b/dev-python/b2sdk/b2sdk-1.12.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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.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}]
+ ')
+)"
+
+# These tests seem to require some b2 authentication (they're integration tests
+# so this is not unreasonable)
+python_test() {
+ epytest \
+ --deselect test/integration/test_large_files.py::TestLargeFile::test_large_file \
+ --deselect test/integration/test_raw_api.py::test_raw_api
+}
diff --git a/dev-python/b2sdk/b2sdk-1.8.0.ebuild b/dev-python/b2sdk/b2sdk-1.8.0.ebuild
new file mode 100644
index 000000000000..24d0e2a3bfbf
--- /dev/null
+++ b/dev-python/b2sdk/b2sdk-1.8.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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/files/b2sdk-1.2.0-skip-integration-test.patch b/dev-python/b2sdk/files/b2sdk-1.2.0-skip-integration-test.patch
new file mode 100644
index 000000000000..bd13d9944696
--- /dev/null
+++ b/dev-python/b2sdk/files/b2sdk-1.2.0-skip-integration-test.patch
@@ -0,0 +1,12 @@
+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/files/b2sdk-1.8.0-disable-requirement-installation.patch b/dev-python/b2sdk/files/b2sdk-1.8.0-disable-requirement-installation.patch
new file mode 100644
index 000000000000..482203f245d3
--- /dev/null
+++ b/dev-python/b2sdk/files/b2sdk-1.8.0-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
+@@ -95,7 +95,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=requirements,
++ # install_requires=requirements,
+
+ # List additional groups of dependencies here (e.g. development
+ # dependencies). You can install these using the following syntax,
+@@ -111,7 +111,7 @@ setup(
+ 'sadisplay'
+ ],
+ },
+- setup_requires=['setuptools_scm<6.0'], # setuptools_scm>=6.0 doesn't support Python 3.5
++ # setup_requires=['setuptools_scm<6.0'], # setuptools_scm>=6.0 doesn't support Python 3.5
+ use_scm_version=True,
+
+ # If there are data files included in your packages that need to be
diff --git a/dev-python/b2sdk/metadata.xml b/dev-python/b2sdk/metadata.xml
new file mode 100644
index 000000000000..5440a39c6c13
--- /dev/null
+++ b/dev-python/b2sdk/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>ezzieyguywuf@gmail.com</email>
+ <name>Wolfgang E. Sanyer</name>
+ </maintainer>
+ <longdescription lang="en">
+ The command-line tool that gives easy access to all of the capabilities
+ of B2 Cloud Storage.
+
+ This program provides command-line access to the B2 service.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-python/babelfont/Manifest b/dev-python/babelfont/Manifest
new file mode 100644
index 000000000000..fa63c917640a
--- /dev/null
+++ b/dev-python/babelfont/Manifest
@@ -0,0 +1,2 @@
+DIST babelfont-2.0.2.tar.gz 636572 BLAKE2B 4b30f4e4ce3840ab3e0be895d1d87d5067488405d1ba9bbb30ec9f62b02561067f2f536e910a59eeebbfeadbfc70fdd3b22370bdfd42841fa9d75490e5351109 SHA512 478dfb9aacd42b6e1bdf361912644d43a81dd4f0bba8a3414529f9aebd0132f98db24749073c35e82caceb4c371a1bba01e4d2bcaf530b8a97286bc8f26cfd8b
+DIST babelfont-3.0.0a8.tar.gz 27232 BLAKE2B d6e4e78d09014169f10960bcf4f90670d307013486b6634d4b5ec80befe6e78f49f11eb1ed42ee1ab01a972187d9b5d2cbebb972c192f396f50093d55d8a9ac3 SHA512 e2d429bbad4cea7927da75e0ac09a59ecfa94b9c38aaabe9c155e29f3cdda224e021cbc3c0c3d5863e68f306e1f57f42f0eff318b6092cf0704419811853422c
diff --git a/dev-python/babelfont/babelfont-2.0.2.ebuild b/dev-python/babelfont/babelfont-2.0.2.ebuild
new file mode 100644
index 000000000000..8a8c91887690
--- /dev/null
+++ b/dev-python/babelfont/babelfont-2.0.2.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Interrogate and manipulate UFO, TTF and OTF fonts with a common interface"
+HOMEPAGE="https://github.com/simoncozens/babelfont"
+SRC_URI="https://github.com/simoncozens/babelfont/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64 ~x86"
+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/babelfont-3.0.0_alpha8.ebuild b/dev-python/babelfont/babelfont-3.0.0_alpha8.ebuild
new file mode 100644
index 000000000000..7df8864cbc9d
--- /dev/null
+++ b/dev-python/babelfont/babelfont-3.0.0_alpha8.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MYP="${P/_alpha/a}"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Interrogate and manipulate UFO, TTF and OTF fonts with a common interface"
+HOMEPAGE="
+ https://github.com/simoncozens/babelfont
+ https://pypi.org/project/babelfont/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${MYP}.tar.gz"
+S="${WORKDIR}/${MYP}"
+
+KEYWORDS="~amd64 ~x86"
+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}"
+
+RESTRICT="test" # no tests in pypi release, pypi alpha releases untagged in github
+
+distutils_enable_tests pytest
diff --git a/dev-python/babelfont/metadata.xml b/dev-python/babelfont/metadata.xml
new file mode 100644
index 000000000000..9d9dfd3ef0ca
--- /dev/null
+++ b/dev-python/babelfont/metadata.xml
@@ -0,0 +1,14 @@
+<?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
new file mode 100644
index 000000000000..1ca7a27b6ffb
--- /dev/null
+++ b/dev-python/baron/Manifest
@@ -0,0 +1 @@
+DIST baron-0.9.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
new file mode 100644
index 000000000000..8f8684f7e0ec
--- /dev/null
+++ b/dev-python/baron/baron-0.9.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/rply[${PYTHON_USEDEP}]
+"
+
+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
+#distutils_enable_sphinx docs dev-python/matplotlib dev-python/ipython
diff --git a/dev-python/baron/metadata.xml b/dev-python/baron/metadata.xml
new file mode 100644
index 000000000000..f755a3b3aa9f
--- /dev/null
+++ b/dev-python/baron/metadata.xml
@@ -0,0 +1,9 @@
+<?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">PyCQA/baron</remote-id>
+ <remote-id type="pypi">baron</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/base58/Manifest b/dev-python/base58/Manifest
new file mode 100644
index 000000000000..db3fd16b5f6f
--- /dev/null
+++ b/dev-python/base58/Manifest
@@ -0,0 +1 @@
+DIST base58-2.1.0.tar.gz 6351 BLAKE2B 0ec76670a5257cc9ff855f0cee359932ba8a25733bdf034e98a41c9cd42a30d89765c399b0e4ef211ed90be23eb41bd790c3d8bae283c35afc36a0c9f8416788 SHA512 1912d01eed30d923fecef72f643f1a1e9954c80505805ef5d673e361eb8ee73d5cbb7cdb48599cfa3b28969b79fb4fd9994aea21dc7a9779a1bb21d729dc058c
diff --git a/dev-python/base58/base58-2.1.0.ebuild b/dev-python/base58/base58-2.1.0.ebuild
new file mode 100644
index 000000000000..53bd8c7142d4
--- /dev/null
+++ b/dev-python/base58/base58-2.1.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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/metadata.xml b/dev-python/base58/metadata.xml
new file mode 100644
index 000000000000..e3fbb3b31c57
--- /dev/null
+++ b/dev-python/base58/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="person">
+ <email>a.zuber@gmx.ch</email>
+ <name>Andreas Zuber</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">keis/base58</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/basictracer/Manifest b/dev-python/basictracer/Manifest
new file mode 100644
index 000000000000..6cba7aa4b847
--- /dev/null
+++ b/dev-python/basictracer/Manifest
@@ -0,0 +1 @@
+DIST basictracer-3.2.0.tar.gz 21262 BLAKE2B 999949a14657807ba4186a95af31e24afe4e27a45c181c9e98380a2735483989f481ae40591798b5722847f2d2954ada60f7628865c30cedff1b85fc9ea65626 SHA512 9876de9df861a1de6d00f0aacf75da70460242ff616d35b39c8dc78812af97276cb0934d903ffba70724bd5c906a2b93f556905df8315238db18c543eb275ee9
diff --git a/dev-python/basictracer/basictracer-3.2.0.ebuild b/dev-python/basictracer/basictracer-3.2.0.ebuild
new file mode 100644
index 000000000000..d31c7fd36a15
--- /dev/null
+++ b/dev-python/basictracer/basictracer-3.2.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python implementation of the BasicTracer reference implementation"
+HOMEPAGE="https://github.com/opentracing/basictracer-python"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/protobuf-python-3.0.1[${PYTHON_USEDEP}]
+ >=dev-python/opentracing-2[${PYTHON_USEDEP}]
+ >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/basictracer/metadata.xml b/dev-python/basictracer/metadata.xml
new file mode 100644
index 000000000000..25273c9f4972
--- /dev/null
+++ b/dev-python/basictracer/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/opentracing/basictracer-python/issues</bugs-to>
+ <remote-id type="pypi">basictracer</remote-id>
+ <remote-id type="github">opentracing/basictracer-python</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/betamax-serializers/Manifest b/dev-python/betamax-serializers/Manifest
new file mode 100644
index 000000000000..e93e9eec88d8
--- /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 000000000000..918fc1d105ba
--- /dev/null
+++ b/dev-python/betamax-serializers/betamax-serializers-0.2.1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+inherit distutils-r1 optfeature
+
+DESCRIPTION="A set of third-party serializers for Betamax"
+HOMEPAGE="https://pypi.org/project/betamax-serializers/ https://gitlab.com/betamax/serializers"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+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 000000000000..cafd11afbe7c
--- /dev/null
+++ b/dev-python/betamax-serializers/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>
+ <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/beziers/Manifest b/dev-python/beziers/Manifest
new file mode 100644
index 000000000000..741bb58ab04c
--- /dev/null
+++ b/dev-python/beziers/Manifest
@@ -0,0 +1,2 @@
+DIST beziers-0.3.1.tar.gz 486554 BLAKE2B 4458913acfd8d72607f4154547e895b7eac0f3f7d5ddc0a3adee1cd4a33c508b085643cb3adffcab47a6a3782395a1e54d686759dcb3566f31ac624f12b00922 SHA512 f49e9a84a1e2f8c06758211341ab2ba981c349ed546e3dabb8012c6bfa4f8bfb0c8b23ca38fe4877a5e286634f7353e4eb350c4b343643b86b0c32b4df9353d4
+DIST beziers-0.4.0.tar.gz 37943 BLAKE2B 6309b90a7dd8dbaeaef761314e158cf5f60913fca15086d1a3f59db2a46dbd61b39a02d6b00395fdcfba75c0510d237bf8847617e4b56ebf5a4eb347f1f42e13 SHA512 7568417e559c516bb37fc30f68be78ce9ba11282e8ebb1c1ae87409d1a1d560252da67566dab25069390c4b72d7164942bcd7494a6ac3017e401796a7a58e362
diff --git a/dev-python/beziers/beziers-0.3.1.ebuild b/dev-python/beziers/beziers-0.3.1.ebuild
new file mode 100644
index 000000000000..4e5fb216e32b
--- /dev/null
+++ b/dev-python/beziers/beziers-0.3.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MYPN="${PN}.py"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/beziers-0.4.0.ebuild b/dev-python/beziers/beziers-0.4.0.ebuild
new file mode 100644
index 000000000000..8142e878addf
--- /dev/null
+++ b/dev-python/beziers/beziers-0.4.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python bezier manipulation library"
+HOMEPAGE="https://github.com/simoncozens/beziers.py"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+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}"
+BDEPEND="
+ test? (
+ dev-python/dotmap[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=( "${FILESDIR}/${P}-no-install-tests.patch" )
+
+distutils_enable_tests pytest
diff --git a/dev-python/beziers/files/beziers-0.4.0-no-install-tests.patch b/dev-python/beziers/files/beziers-0.4.0-no-install-tests.patch
new file mode 100644
index 000000000000..44473ec515ef
--- /dev/null
+++ b/dev-python/beziers/files/beziers-0.4.0-no-install-tests.patch
@@ -0,0 +1,11 @@
+--- a/setup.py
++++ b/setup.py
+@@ -22,7 +22,7 @@
+ "Development Status :: 4 - Beta"
+
+ ],
+- 'packages': find_packages(),
++ 'packages': find_packages(exclude=["test", "test.*"]),
+ }
+
+ if __name__ == '__main__':
diff --git a/dev-python/beziers/metadata.xml b/dev-python/beziers/metadata.xml
new file mode 100644
index 000000000000..14ba178d6b07
--- /dev/null
+++ b/dev-python/beziers/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>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
new file mode 100644
index 000000000000..a70125f7181e
--- /dev/null
+++ b/dev-python/bidict/Manifest
@@ -0,0 +1 @@
+DIST bidict-0.22.0.tar.gz 197969 BLAKE2B 511bea446922c959c7ab2c42fadfe63dc486f9b8f4d060779048195ed02344c36819be917716be6773e2173aa9dbd9e5452e747ee325db6ee92057644789653e SHA512 28384e1f63413023c00c199558eb49298c146602a676226d995aa01ccb0f9a6958750f4e34637d0823d659a092e74bb0ce4d75969d105312f73f5e692d9f82af
diff --git a/dev-python/bidict/bidict-0.22.0.ebuild b/dev-python/bidict/bidict-0.22.0.ebuild
new file mode 100644
index 000000000000..11e86e6d8869
--- /dev/null
+++ b/dev-python/bidict/bidict-0.22.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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/metadata.xml b/dev-python/bidict/metadata.xml
new file mode 100644
index 000000000000..a4e90f14ab78
--- /dev/null
+++ b/dev-python/bidict/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://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>1over137@anche.no</email>
+<name>Shaoyu Tseng</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-python/billiard/Manifest b/dev-python/billiard/Manifest
new file mode 100644
index 000000000000..f091a3483ea5
--- /dev/null
+++ b/dev-python/billiard/Manifest
@@ -0,0 +1 @@
+DIST billiard-3.6.4.0.tar.gz 154182 BLAKE2B 3c42c2c72e2a7e2ac7a1e84685ca592f48edc6ca025eac2ab52c3162bee591fbd06db5d9800ef3a9df00265dc1f373a4130963f428b4a5c6db2d90f701c8ebb7 SHA512 8d6013c170ce54e64fdb5d7da85569f31c928d34cc4242318a124e763092be4680e8d7c3007576bac3337b0c1d86a2ead768b1563e5b673da5d73ab600048ba7
diff --git a/dev-python/billiard/billiard-3.6.4.0.ebuild b/dev-python/billiard/billiard-3.6.4.0.ebuild
new file mode 100644
index 000000000000..aa22f373b2d8
--- /dev/null
+++ b/dev-python/billiard/billiard-3.6.4.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} 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/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/metadata.xml b/dev-python/billiard/metadata.xml
new file mode 100644
index 000000000000..6e34e7272a4b
--- /dev/null
+++ b/dev-python/billiard/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">billiard</remote-id>
+ <remote-id type="github">celery/billiard</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/bitbox02/Manifest b/dev-python/bitbox02/Manifest
new file mode 100644
index 000000000000..f90182aba423
--- /dev/null
+++ b/dev-python/bitbox02/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..3346ba4fcfa0
--- /dev/null
+++ b/dev-python/bitbox02/bitbox02-5.3.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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
new file mode 100644
index 000000000000..8fb0fba37cb4
--- /dev/null
+++ b/dev-python/bitbox02/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="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/boto3/Manifest b/dev-python/boto3/Manifest
index 8e73d9e25c4e..54854e075549 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -4,3 +4,4 @@ DIST boto3-1.21.32.tar.gz 485694 BLAKE2B da6fa6f38b234af9e67bfeb8182751f1ac533a2
DIST boto3-1.21.35.tar.gz 486835 BLAKE2B 167070bf09785bac17083cef3caf144cf11a4266c4476af2f6e19b06c81f2d2bcee42b8c7de1d1c9ac178c025bcac08366b2c7cb072cdb663910d45f7e8369fa SHA512 fe73111a46fb27d9c77abec3a13c5267243b2fcc3f89c01d9036f6ca9f362d029c9cbfbb6c1df11b302a9fb0468453fc1b91ee3dac4853bab6662f1ebfa211b2
DIST boto3-1.21.36.tar.gz 487111 BLAKE2B c812e80a2bd81f2feda25b9e43444d1587eb2706ab4372a71f6aad5051020dc2439c639e04f37322ab0c1a396c22c5dc45e773cf73518886d3aab9980633f45c SHA512 1530cd11471ddfdd6a77a250fc5af7546a760cc281b327be6b67b7e49ab40cdc440d4fbe8a72387009b2c2c3dc2e6d7baaa3b1dec3d5d4d276db89e1312e55cf
DIST boto3-1.21.37.tar.gz 487557 BLAKE2B 1c716a07279ce2c1020faee9e2e81b2bde3ed6e4c56668fa76eabc03c7c0818f8dc3ac0fcef66d4007d892e1f227e8642757b6fa5d6e1e18184ad17a30a0e404 SHA512 512e7859e700a98aa3112e21bbd7653e39e7e21bc8f3ef623254322f18869bc9b8a65612a3a9133847c189c59b1e2480225b71bdebd38b2e42cf4820d7ab6972
+DIST boto3-1.21.38.tar.gz 487786 BLAKE2B c247f51e3a7a7f9c531ab18d0fa93b90881c869631bffe35be5482a463a6580e733915d4f966d5700cf6bd822676416e9431f261fd237cb9dd85440308399e2d SHA512 a1b09de7a1dbede4000d500d96028a9ae70c60aa0cc1fc74201d52bc76a83dc27937d422592985e22b3dd1b98359255e837f66f51bae59f2104b379bfa7e49b3
diff --git a/dev-python/boto3/boto3-1.21.38.ebuild b/dev-python/boto3/boto3-1.21.38.ebuild
new file mode 100644
index 000000000000..80278b309f54
--- /dev/null
+++ b/dev-python/boto3/boto3-1.21.38.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1 multiprocessing
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="https://github.com/boto/boto3"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+if [[ "${PV}" == "9999" ]]; then
+ EGIT_REPO_URI="https://github.com/boto/boto3"
+ inherit git-r3
+ BOTOCORE_PV=${PV}
+else
+ SRC_URI="https://github.com/boto/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+ # botocore is x.(y+3).z
+ BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 3)).$(ver_cut 3-)"
+fi
+
+RDEPEND="
+ >=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.3.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_sphinx docs/source \
+ 'dev-python/guzzle_sphinx_theme'
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # don't lock versions to narrow ranges
+ sed -e '/botocore/ d' \
+ -e '/jmespath/ d' \
+ -e '/s3transfer/ d' \
+ -i setup.py || die
+
+ # do not rely on bundled deps in botocore (sic!)
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ epytest tests/{functional,unit} \
+ -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")"
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index ef83598fddfb..86eaf22a9634 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -4,3 +4,4 @@ DIST botocore-1.24.32.tar.gz 8884956 BLAKE2B c899ed9b540663fc16e937d98c4c4383b5b
DIST botocore-1.24.35.tar.gz 8891601 BLAKE2B b6a56efa73a3f76f51764c4c649d38f2e596fb262624bc5931904318b68a773790f6e4e358cf42567aad0de4e97099699935e6da4c21be66a782f7005fbc15bf SHA512 3c0a7c935798a6dcdd419080a31050301f795ff67b8262673ee4ca09d8344f222ce4b1b7bfff3459089bbcb59c42041281ed8005c1533c34c24542d9a45c353c
DIST botocore-1.24.36.tar.gz 8899058 BLAKE2B c11df5acef305116433aeb4c4b999b8bdeba278506ac066bae3572f578cd2877827cc8a45d74f57fd10c5e87fdd46f39b951ec4d5bd15f0c484194640813080a SHA512 49256c288b74126595521eabcab750a58a05d07ecf5243ce0626961963326099c3fa3cb571664fb72c0f835624bd79e55e4940c9fc4b03b2b1dc7fd7d3a71213
DIST botocore-1.24.37.tar.gz 8898823 BLAKE2B 5e5495ba399e910479c0172eb4c572a5c0371db720906586c88dc59d8bfc58a50699b05125e1e554a8571b64654604447be1e1a4bfdc2b992272101060638908 SHA512 412a656e879b09bf9f82d02e291e988499106dce1f589b1048adf2145774a5dd9a9ca5f18d2b6eaedd895e384cbf1836c7b6bdc0867a83c7b863bddea77727f4
+DIST botocore-1.24.38.tar.gz 8900705 BLAKE2B 1f1504856d5908df7d8af9f92847d1d7ac9d8ce0258a63bcea4b593aaae4d87e71da45becadb5873eab53ceea6916e4c6a4931efd797b0474e7bfe4f0b60eb46 SHA512 1cf7cf2acc7773ab9f5c4d01eca24191f6d27e3eddd98abd33348bf171bcaa2708e8c9a03ceb2676060a1f906d66e6982fe3bce3b78ed878abc30434812327c0
diff --git a/dev-python/botocore/botocore-1.24.38.ebuild b/dev-python/botocore/botocore-1.24.38.ebuild
new file mode 100644
index 000000000000..5fe8ae8c2f96
--- /dev/null
+++ b/dev-python/botocore/botocore-1.24.38.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1 multiprocessing
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="https://github.com/boto/botocore"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+if [[ "${PV}" == "9999" ]]; then
+ EGIT_REPO_URI="https://github.com/boto/botocore"
+ inherit git-r3
+else
+ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+
+RDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+ <dev-python/jmespath-2[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/1.8.6-tests-pass-all-env-vars-to-cmd-runner.patch"
+)
+
+distutils_enable_sphinx docs/source \
+ 'dev-python/guzzle_sphinx_theme'
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin deps
+ sed -i -e "s:>=.*':':" setup.py || die
+
+ # unbundle deps
+ rm -r botocore/vendored || die
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # rely on bundled six
+ tests/functional/test_six_imports.py::test_no_bare_six_imports
+ tests/functional/test_six_threading.py::test_six_thread_safety
+ )
+
+ epytest tests/{functional,unit} \
+ -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")"
+}
diff --git a/dev-python/browserstack-local-python/Manifest b/dev-python/browserstack-local-python/Manifest
new file mode 100644
index 000000000000..a9a077ef7c21
--- /dev/null
+++ b/dev-python/browserstack-local-python/Manifest
@@ -0,0 +1 @@
+DIST browserstack-local-1.2.3.tar.gz 4064 BLAKE2B eec128bf3cce3967fee2c6b3f2ca5f84bcb0288edca9c2f8c896d354810f8368171112186595d6e8a2608fc6fd91db58d7f31b5d5cc7ee7b8b61fdc6859ccd6d SHA512 96c66e25e2e390cf2ccbd821bb004fca2a93583047ab8dd034591a74f21fa894359c14a7fea841cbb78c4b30345bc208a760b0887a73a85f0fec6e057ff10776
diff --git a/dev-python/browserstack-local-python/browserstack-local-python-1.2.3.ebuild b/dev-python/browserstack-local-python/browserstack-local-python-1.2.3.ebuild
new file mode 100644
index 000000000000..185a1e2a1619
--- /dev/null
+++ b/dev-python/browserstack-local-python/browserstack-local-python-1.2.3.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MYP="${P/-python/}"
+MYPN="${PN/-python/}"
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Python bindings for BrowserStack Local"
+HOMEPAGE="
+ https://github.com/browserstack/browserstack-local-python
+ https://pypi.org/project/browserstack-local/
+"
+SRC_URI="mirror://pypi/${MYPN:0:1}/${MYPN}/${MYP}.tar.gz"
+S="${WORKDIR}/${MYP}"
+KEYWORDS="~amd64"
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND="dev-python/psutil[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+RESTRICT="test" # tests need API key
+
+distutils_enable_tests unittest
diff --git a/dev-python/browserstack-local-python/metadata.xml b/dev-python/browserstack-local-python/metadata.xml
new file mode 100644
index 000000000000..8f1759654e35
--- /dev/null
+++ b/dev-python/browserstack-local-python/metadata.xml
@@ -0,0 +1,14 @@
+<?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</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/bson/Manifest b/dev-python/bson/Manifest
new file mode 100644
index 000000000000..7aada9940b21
--- /dev/null
+++ b/dev-python/bson/Manifest
@@ -0,0 +1,2 @@
+DIST bson-0.5.10.tar.gz 24735 BLAKE2B a658598d9cac3bf55327ec2084d4c884b92d00e1ffaa084bcfdbebe24fd53b342d117449fde9d394f08b5fc04f9ea9c6856394bdb90806131c65111478c75f72 SHA512 6c74344a75eaeb7f53609ab78a9223218ac89edd320e503898145668cd746d5b76624d91640223a826af7ab978b107715cdb9904f16f6499c9be1ce9f54a09f8
+DIST bson-0.5.8.tar.gz 24114 BLAKE2B e35055dcd3c8b1cf77ec9d9496d32d4bca4e9ab31ecf79399a8449c459d1b5e67375bd88743175f1450311519b55cbca8c11a8da736ba87907e1497b5a94b363 SHA512 68bd69d1f5d0d11014d51c0901e7f44b7a3d9f7ad013af4137b7ac48bc42f81bd1423115b67939beedf6e7336794e7ffd4d0d539222d4eaa50845ae25622f21a
diff --git a/dev-python/bson/bson-0.5.10.ebuild b/dev-python/bson/bson-0.5.10.ebuild
new file mode 100644
index 000000000000..ed23a418969d
--- /dev/null
+++ b/dev-python/bson/bson-0.5.10.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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/bson-0.5.8.ebuild b/dev-python/bson/bson-0.5.8.ebuild
new file mode 100644
index 000000000000..05c0b755a620
--- /dev/null
+++ b/dev-python/bson/bson-0.5.8.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,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
new file mode 100644
index 000000000000..6798dda1a04b
--- /dev/null
+++ b/dev-python/bson/metadata.xml
@@ -0,0 +1,14 @@
+<?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/castellan/Manifest b/dev-python/castellan/Manifest
new file mode 100644
index 000000000000..0353af8dc2c8
--- /dev/null
+++ b/dev-python/castellan/Manifest
@@ -0,0 +1 @@
+DIST castellan-3.10.1.tar.gz 78709 BLAKE2B e12d66788f45fdca102e9c37e3f7c39598463fd49ed7064226443468a8602b4a32f42078847a1d8df594d51edb4c200d65feb38d5c00a6edb04b2078626517d9 SHA512 cf9a523a75c5d6bada1570982541475f42ffcbc468c7f5cf7f5c0e6545833c0de38f1b1b7b940f3bfc6e92a54917dae359cf37f995b5fbd6237ff78e36c62676
diff --git a/dev-python/castellan/castellan-3.10.1.ebuild b/dev-python/castellan/castellan-3.10.1.ebuild
new file mode 100644
index 000000000000..538b05b46f4d
--- /dev/null
+++ b/dev-python/castellan/castellan-3.10.1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_DESELECT=( castellan/tests/unit/test_utils.py::TestUtils::test_oslo_context_to_keystone_token )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Generic Key Manager interface for OpenStack"
+HOMEPAGE="
+ https://pypi.org/project/castellan/
+ https://opendev.org/openstack/castellan
+ https://launchpad.net/castellan
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.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}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/python-barbicanclient-4.5.2[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pifpaf-0.10.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/castellan/metadata.xml b/dev-python/castellan/metadata.xml
new file mode 100644
index 000000000000..a7271b566c8e
--- /dev/null
+++ b/dev-python/castellan/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">
+ <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/celery/Manifest b/dev-python/celery/Manifest
new file mode 100644
index 000000000000..dd1ff1e6e13a
--- /dev/null
+++ b/dev-python/celery/Manifest
@@ -0,0 +1 @@
+DIST celery-5.1.1.tar.gz 1471516 BLAKE2B bfdabf255cffa19deb80607c3a2063b6dd8c56a803a991453b8b07914e75630fee9d189ccb8e6be1f7e88e43fb22d31353968ffea222d75a7b7765ec3a5148b5 SHA512 b50fe494ec8346b5a90236536dbc809341b4b2328c1a2b7485210fb88cd5d8142f3e53b40c6b49e9e495eecaca1abcec2000f2af6d2f2bd719265410802eb572
diff --git a/dev-python/celery/celery-5.1.1.ebuild b/dev-python/celery/celery-5.1.1.ebuild
new file mode 100644
index 000000000000..4116f9e929cc
--- /dev/null
+++ b/dev-python/celery/celery-5.1.1.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2022 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_{7,8,9,10} )
+
+inherit bash-completion-r1 distutils-r1 optfeature
+
+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${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/files/celery.confd-r2 b/dev-python/celery/files/celery.confd-r2
new file mode 100644
index 000000000000..d5ba2f7c9951
--- /dev/null
+++ b/dev-python/celery/files/celery.confd-r2
@@ -0,0 +1,51 @@
+# /etc/conf.d/celery
+
+##############################################################################
+# GLOBAL CONFIGURATION
+
+# User and group
+#CELERY_USER="celery"
+#CELERY_GROUP="celery"
+
+# This is generaly a good idea to set the environment correctly
+# because a lot of python package try to use HOME on init
+#export HOME="/var/lib/myproject"
+
+# Full path to the python project directory.
+#CELERY_PROJDIR="/var/lib/myproject"
+
+##############################################################################
+# CELERYD
+
+# Start the Celery worker daemon
+#CELERYD_ENABLED="yes"
+
+# celeryd notes
+#CELERYD_NODES="celery"
+
+# celeryd options
+# Example: set a 5 minute hard time limit for tasks, disable queue process prefetching and specify an app module from CELERY_PROJDIR
+#CELERYD_OPTS="--time-limit=300 -Ofair -A celeryapp"
+
+# Location and level of the celeryd log file
+#CELERYD_LOG_FILE=/var/log/celery/celeryd@%n.log
+#CELERYD_LOG_LEVEL="INFO"
+
+# Location of the celeryd pid file
+#CELERYD_PID_FILE=/run/celery/celeryd@%n.pid
+
+##############################################################################
+# CELERYBEAT
+
+# Start the Celery task scheduler daemon
+#CELERYBEAT_ENABLED="yes"
+
+# celerybeat options
+#CELERYBEAT_OPTS=""
+
+# Location and level of the celerybeat log file
+#CELERYBEAT_LOG_FILE=/var/log/celery/celerybeat.log
+#CELERYBEAT_LOG_LEVEL="INFO"
+
+# Location of the celerybeat pid file
+#CELERYBEAT_PID_FILE=/run/celery/celerybeat.pid
diff --git a/dev-python/celery/files/celery.initd-r2 b/dev-python/celery/files/celery.initd-r2
new file mode 100644
index 000000000000..f34c136691b0
--- /dev/null
+++ b/dev-python/celery/files/celery.initd-r2
@@ -0,0 +1,205 @@
+#!/sbin/openrc-run
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the BSD license
+
+extra_started_commands="reload"
+
+depend() {
+ need net
+ 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"}
+
+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"}
+
+export CELERY_LOADER
+
+CELERYD_MULTI=${CELERYD_MULTI:-"celery multi"}
+CELERYCTL=${CELERYCTL:-"celery"}
+CELERYBEAT=${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})
+
+ checkpath -d -q -m 0750 -o ${CELERY_USER:-"root"}:${CELERY_GROUP:-"root"} ${logdir} ${piddir}
+}
+
+[ -n "${CELERY_USER}" ] && DAEMON_OPTS="${DAEMON_OPTS} --uid=${CELERY_USER}"
+[ -n "${CELERY_GROUP}" ] && DAEMON_OPTS="${DAEMON_OPTS} --gid=${CELERY_GROUP}"
+
+checkconfig() {
+ if [ ! -c /dev/null ]; then
+ eerror "/dev/null is not a character device!"
+ return 1
+ fi
+
+ if [ -z "${CELERY_PROJDIR}" ]; then
+ eerror "Missing CELERY_PROJDIR variable"
+ return 1
+ fi
+
+ yesno "${CELERYD_ENABLED}" && \
+ create_dirs "${CELERYD_LOG_FILE}" "${CELERYD_PID_FILE}"
+
+ yesno "${CELERYBEAT_ENABLED}" && \
+ create_dirs "${CELERYBEAT_LOG_FILE}" "${CELERYBEAT_PID_FILE}"
+
+ return 0
+}
+
+celery_chdir() {
+ [ -n "${CELERY_PROJDIR}" ] && cd "${CELERY_PROJDIR}"
+}
+
+wait_pid () {
+ local pidfile=${1}
+ local timeout=${STOPTIMEOUT:-"10"}
+ local PID=$(cat "${pidfile}" 2>/dev/null)
+
+ while [ -n "${PID}" ] && [ "${timeout}" -ge 1 ]; do
+ kill -0 ${PID} 2>/dev/null || break
+ kill -TERM "${PID}"
+ timeout=$((${timeout} - 1))
+ sleep 0.5
+ done
+
+ [ "${timeout}" -lt 1 ] && return 1
+ [ -f ${pidfile} ] && rm -f ${pidfile}
+ return 0
+}
+
+# celeryd
+start_workers() {
+ yesno "${CELERYD_ENABLED}" || return 0
+
+ ${CELERYD_MULTI} start ${CELERYD_NODES} ${DAEMON_OPTS} \
+ --pidfile="${CELERYD_PID_FILE}" \
+ --logfile="${CELERYD_LOG_FILE}" \
+ --loglevel="${CELERYD_LOG_LEVEL}" \
+ ${CELERYD_OPTS}
+}
+
+stop_workers() {
+ yesno "${CELERYD_ENABLED}" || return 0
+
+ local 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)
+ while [ -n "${PID}" ] && [ "${timeout}" -ge 1 ]; do
+ kill -0 ${PID} 2>/dev/null || break
+ timeout=$((${timeout} - 1))
+ sleep 0.5
+ done
+ done
+
+ [ "${timeout}" -lt 1 ] && return 1
+ return 0
+}
+
+restart_workers() {
+ yesno "${CELERYD_ENABLED}" || return 0
+
+ ${CELERYD_MULTI} restart ${CELERYD_NODES} ${DAEMON_OPTS} \
+ --pidfile="${CELERYD_PID_FILE}" \
+ --logfile="${CELERYD_LOG_FILE}" \
+ --loglevel="${CELERYD_LOG_LEVEL}" \
+ ${CELERYD_OPTS}
+}
+
+# celerybeat
+start_beat() {
+ yesno "${CELERYBEAT_ENABLED}" || return 0
+
+ ebegin "Starting celerybeat"
+ ${CELERYBEAT} ${CELERYBEAT_OPTS} ${DAEMON_OPTS} --detach \
+ --pidfile="${CELERYBEAT_PID_FILE}"
+ eend ${?}
+}
+
+
+stop_beat() {
+ yesno "${CELERYBEAT_ENABLED}" || return 0
+
+ ebegin "Stopping celerybeat"
+ if [ -f "${CELERYBEAT_PID_FILE}" ]; then
+ wait_pid "${CELERYBEAT_PID_FILE}"
+ else
+ ewarn "not running"
+ fi
+ eend ${?}
+}
+
+
+start() {
+ local cr=0
+
+ checkconfig || return 1
+
+ ebegin "Starting ${SVCNAME}"
+ eindent
+
+ celery_chdir && \
+ start_workers && \
+ start_beat || cr=1
+
+ eoutdent
+ eend ${cr}
+}
+
+stop() {
+ local cr=0
+
+ checkconfig || return 1
+
+ ebegin "Stopping ${SVCNAME}"
+ eindent
+
+ celery_chdir
+ stop_workers || cr=1
+ stop_beat || cr=1
+
+ eoutdent
+ eend ${cr}
+}
+
+reload() {
+ local cr=0
+
+ checkconfig || return 1
+
+ ebegin "Restarting ${SVCNAME}"
+ eindent
+
+ celery_chdir
+ restart_workers || cr=1
+ stop_beat && start_beat || cr=1
+
+ eoutdent
+ eend ${cr}
+}
+
+status() {
+ checkconfig || return 1
+
+ celery_chdir && \
+ ${CELERYCTL} status
+}
diff --git a/dev-python/celery/metadata.xml b/dev-python/celery/metadata.xml
new file mode 100644
index 000000000000..914451b64f82
--- /dev/null
+++ b/dev-python/celery/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">celery</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/cffsubr/Manifest b/dev-python/cffsubr/Manifest
new file mode 100644
index 000000000000..c0a09a37122a
--- /dev/null
+++ b/dev-python/cffsubr/Manifest
@@ -0,0 +1,2 @@
+DIST cffsubr-0.2.8.tar.gz 124245 BLAKE2B fa78acf9158faf3917f194a2c30a13c2a598a7476a89dc79f95440eb04fe91663e7620729e6be1635ce1df24fff34068c42ea155abb17f016f50e961d13f52af SHA512 5f5a655168c6157799d17e20762893f23a7f7d90e739fb5bbe0a4fd895dc2b1c5359b5bdb92f4cb8333f841cd5b471359825d709f2477afd2bd7322760359d24
+DIST cffsubr-0.2.9_p1.tar.gz 124635 BLAKE2B c040339d113247b34195d7b7a220b449810ced52ffeea209bde2bb871c964a1da7d734c7167ece88ade03b26e722dca7f235a70326ff8c9b268b707ba5730a79 SHA512 8f1ea1fb732b772c1ac479883df6993ff2d56457c725d621bb1ebebf7a27393bb96771b9db8364513ae7f815bc74da15dd8c22695eeaf6f65d8dc62c8ae947dc
diff --git a/dev-python/cffsubr/cffsubr-0.2.8.ebuild b/dev-python/cffsubr/cffsubr-0.2.8.ebuild
new file mode 100644
index 000000000000..8b64599ecb3d
--- /dev/null
+++ b/dev-python/cffsubr/cffsubr-0.2.8.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/cffsubr-0.2.9_p1.ebuild b/dev-python/cffsubr/cffsubr-0.2.9_p1.ebuild
new file mode 100644
index 000000000000..f0e6b1e17b78
--- /dev/null
+++ b/dev-python/cffsubr/cffsubr-0.2.9_p1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+MYPV="${PV/_p/.post}"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Standalone CFF subroutinizer based on AFDKO tx tool"
+HOMEPAGE="https://github.com/adobe-type-tools/cffsubr"
+SRC_URI="https://github.com/adobe-type-tools/cffsubr/archive/refs/tags/v${MYPV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${MYPV}"
+KEYWORDS="~amd64"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/fonttools-4.10.2[${PYTHON_USEDEP}]
+ >=dev-util/afdko-3.6.1[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ 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
new file mode 100644
index 000000000000..2d429c2b84fb
--- /dev/null
+++ b/dev-python/cffsubr/files/cffsubr-0.2.8-fix-setup-py.patch
@@ -0,0 +1,18 @@
+--- 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-0.2.9_p1-fix-setup-py.patch b/dev-python/cffsubr/files/cffsubr-0.2.9_p1-fix-setup-py.patch
new file mode 100644
index 000000000000..dfdfe352ae75
--- /dev/null
+++ b/dev-python/cffsubr/files/cffsubr-0.2.9_p1-fix-setup-py.patch
@@ -0,0 +1,22 @@
+--- a/setup.py
++++ b/setup.py
+@@ -136,7 +136,7 @@
+ package_dir={"": "src"},
+ packages=find_packages("src"),
+ entry_points={"console_scripts": ["cffsubr = cffsubr.__main__:main"]},
+- ext_modules=[tx],
++ ext_modules=[],
+ zip_safe=False,
+ cmdclass=cmdclass,
+ install_requires=[
+@@ -144,9 +144,7 @@
+ "fontTools >= 4.10.2",
+ ],
+ setup_requires=[
+- "setuptools_scm",
+- # finds all git tracked files including submodules when making sdist MANIFEST
+- "setuptools-git-ls-files",
++ "setuptools_scm"
+ ],
+ 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
new file mode 100644
index 000000000000..16c41c74c23c
--- /dev/null
+++ b/dev-python/cffsubr/files/cffsubr-system_tx.diff
@@ -0,0 +1,12 @@
+--- 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
new file mode 100644
index 000000000000..23e1e9221cbf
--- /dev/null
+++ b/dev-python/cffsubr/metadata.xml
@@ -0,0 +1,14 @@
+<?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/cfn-lint/Manifest b/dev-python/cfn-lint/Manifest
index 7b103ad6bb25..e47fd7ad88f1 100644
--- a/dev-python/cfn-lint/Manifest
+++ b/dev-python/cfn-lint/Manifest
@@ -1,2 +1,3 @@
DIST cfn-lint-0.58.3.tar.gz 8779688 BLAKE2B 0964d477f61ec3dc4f80d59e3b05bc92cba27c0c9293a343bf15ee25df967643adf4d8aaa0c11d336a857957bc19dd1cc711b7fe9014c9c43ffd0171b197c4f5 SHA512 9f88f533a6533cf23ce9be83f61cc7418df7775e331ea932f469b391e136a370e5adef9a41a5378dc99d4aec352ababebc1eb59b15d19c0c0c6f19e12410ae06
DIST cfn-lint-0.58.4.tar.gz 8838063 BLAKE2B 77caf931c79b90d44c09c7ad63ff928c5217fa3cb9474ce8d3a3151a4a804365293e4304484ae1a2c55acfb2718dddce9f0b26165d35a570c3a7baab3cf76290 SHA512 53c24e265eaa8064bc23740376668c4a640571e0e273fc475f70de468be51683f3eacbbce82dddb9e05a23049299b49e660f28d5ef93150a60260fa0f4b77a19
+DIST cfn-lint-0.59.0.tar.gz 9004743 BLAKE2B e778c1081e45dacc813f8a4ae7726eb929fabcdbfaafcbbc5f0d925cfe32773851366c9488363728ae42349cbe899a6cacd114940ee8d76dc284b30ea87fe19a SHA512 e8e9d0fb1f366c49f8a008000a808ec4b6c4299ff3c9650229619d8e48f1812709ecd54274163d8bd389c6823f20accd7d31f6147bec926ec233ede3ee51ee10
diff --git a/dev-python/cfn-lint/cfn-lint-0.59.0.ebuild b/dev-python/cfn-lint/cfn-lint-0.59.0.ebuild
new file mode 100644
index 000000000000..71a884c0621e
--- /dev/null
+++ b/dev-python/cfn-lint/cfn-lint-0.59.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="CloudFormation Linter"
+HOMEPAGE="https://pypi.org/project/cfn-lint/ https://github.com/aws-cloudformation/cfn-lint/"
+SRC_URI="
+ https://github.com/aws-cloudformation/cfn-lint/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/aws-sam-translator-1.45.0[${PYTHON_USEDEP}]
+ dev-python/jsonpatch[${PYTHON_USEDEP}]
+ >=dev-python/jschema_to_python-1.2.3[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.0[${PYTHON_USEDEP}]
+ dev-python/junit-xml[${PYTHON_USEDEP}]
+ dev-python/networkx[${PYTHON_USEDEP}]
+ >dev-python/pyyaml-5.4[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.15.0[${PYTHON_USEDEP}]
+ >=dev-python/sarif_om-1.0.4[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # TODO
+ test/unit/module/test_template.py::TestTemplate::test_build_graph
+ # requires git repo
+ test/unit/module/maintenance/test_update_documentation.py::TestUpdateDocumentation::test_update_docs
+ # Internet
+ test/unit/module/formatters/test_formatters.py::TestFormatters::test_sarif_formatter
+ test/unit/module/maintenance/test_update_resource_specs.py::TestUpdateResourceSpecs::test_update_resource_specs_python_2
+ test/unit/module/maintenance/test_update_resource_specs.py::TestUpdateResourceSpecs::test_update_resource_specs_python_3
+)
+
+src_prepare() {
+ # unpin the deps
+ sed -e 's:~=[0-9.]*::' -i setup.py || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/check-manifest/Manifest b/dev-python/check-manifest/Manifest
new file mode 100644
index 000000000000..1990a386a057
--- /dev/null
+++ b/dev-python/check-manifest/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..d1c4d7b68107
--- /dev/null
+++ b/dev-python/check-manifest/check-manifest-0.46.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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
new file mode 100644
index 000000000000..68672b0eeefd
--- /dev/null
+++ b/dev-python/check-manifest/metadata.xml
@@ -0,0 +1,12 @@
+<?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-didyoumean/Manifest b/dev-python/click-didyoumean/Manifest
new file mode 100644
index 000000000000..1fee5236c01c
--- /dev/null
+++ b/dev-python/click-didyoumean/Manifest
@@ -0,0 +1,2 @@
+DIST click-didyoumean-0.0.3.tar.gz 4283 BLAKE2B 8af7cb4c0448a67f263c1c8939ff89e1429e4d98a8e41cd49f573c5e43458c5da72f81e78e4d72e071ce753998b2f4765de5f3aad9330cf29032decb8fff9a5f SHA512 6e832881817645eb8fa3a40acaab74a7f0dcc798aa984781a011b2ef78da2a4ae71ff2d58907bcbb35adbfc659727223c28c3622788eef05ecbdf758d6ac889d
+DIST click-didyoumean-0.3.0.tar.gz 309301 BLAKE2B 2b667b5e94dd690e5b7a2e96b83197f52e201b002a32fff4a8dbb4bd5497d5b816b40d9da98729821e1d17a795a3776c1553a746aa4c4144cf7fe6540768e1ca SHA512 4927ee392f27950c3f7ef5e0f1d5a5e2421172f3e9d34ec76986c9c7ea698cfa1981678a06fb8682577d6ed04c242c42bdd1d796d7623a1c99dfdbdb61c80fca
diff --git a/dev-python/click-didyoumean/click-didyoumean-0.0.3.ebuild b/dev-python/click-didyoumean/click-didyoumean-0.0.3.ebuild
new file mode 100644
index 000000000000..50b6c6819d3d
--- /dev/null
+++ b/dev-python/click-didyoumean/click-didyoumean-0.0.3.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+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/click-didyoumean-0.3.0.ebuild b/dev-python/click-didyoumean/click-didyoumean-0.3.0.ebuild
new file mode 100644
index 000000000000..213cbfb07011
--- /dev/null
+++ b/dev-python/click-didyoumean/click-didyoumean-0.3.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+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"
+
+DEPEND=">=dev-python/click-7"
+RDEPEND="${DEPEND}"
+
+RESTRICT="test"
+
+distutils_enable_tests pytest
diff --git a/dev-python/click-didyoumean/metadata.xml b/dev-python/click-didyoumean/metadata.xml
new file mode 100644
index 000000000000..d2b2c8ce9f88
--- /dev/null
+++ b/dev-python/click-didyoumean/metadata.xml
@@ -0,0 +1,9 @@
+<?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-repl/Manifest b/dev-python/click-repl/Manifest
new file mode 100644
index 000000000000..ebae85399dca
--- /dev/null
+++ b/dev-python/click-repl/Manifest
@@ -0,0 +1 @@
+DIST click-repl-0.2.0.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.ebuild
new file mode 100644
index 000000000000..e74dbe8e2287
--- /dev/null
+++ b/dev-python/click-repl/click-repl-0.2.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Subcommand REPL for click apps"
+HOMEPAGE="
+ https://github.com/click-contrib/click-repl
+ https://pypi.org/project/click-repl/
+"
+SRC_URI="https://github.com/click-contrib/click-repl/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="
+ dev-python/click[${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
new file mode 100644
index 000000000000..d2b2c8ce9f88
--- /dev/null
+++ b/dev-python/click-repl/metadata.xml
@@ -0,0 +1,9 @@
+<?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/clickgen/Manifest b/dev-python/clickgen/Manifest
new file mode 100644
index 000000000000..5bad634546e0
--- /dev/null
+++ b/dev-python/clickgen/Manifest
@@ -0,0 +1 @@
+DIST clickgen-1.1.9.tar.gz 1616607 BLAKE2B f16dabff6ded51833b79de5441753959643e1542ae56b979f2a88532e29e3a37d1454d3317027e265774ac4140f957b56d7d8c373991485e27f546d208893e4f SHA512 6823733a73cc4f023641325d4b53ea54b579b8168906680d2e5b071a27974b63dac9828c13d14fc73ae8c16844f47f1ed477e8de76352522bfd9abe4de53ffd3
diff --git a/dev-python/clickgen/clickgen-1.1.9.ebuild b/dev-python/clickgen/clickgen-1.1.9.ebuild
new file mode 100644
index 000000000000..04701bb52579
--- /dev/null
+++ b/dev-python/clickgen/clickgen-1.1.9.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+inherit distutils-r1 toolchain-funcs
+
+DESCRIPTION="X11 & Windows cursor building API"
+HOMEPAGE="https://github.com/ful1e5/clickgen https://pypi.org/project/clickgen/"
+SRC_URI="https://github.com/ful1e5/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="
+ media-libs/libpng
+ x11-libs/libX11
+ x11-libs/libXcursor
+"
+RDEPEND="${DEPEND}
+ dev-python/pillow[${PYTHON_USEDEP}]
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-flags.patch )
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs/source dev-python/sphinx_rtd_theme
+
+src_configure() {
+ distutils-r1_src_configure
+ tc-export CC
+}
+
+python_compile() {
+ emake -C xcursorgen
+ distutils-r1_python_compile
+}
diff --git a/dev-python/clickgen/files/clickgen-flags.patch b/dev-python/clickgen/files/clickgen-flags.patch
new file mode 100644
index 000000000000..427f7beb74e9
--- /dev/null
+++ b/dev-python/clickgen/files/clickgen-flags.patch
@@ -0,0 +1,17 @@
+--- a/xcursorgen/makefile
++++ b/xcursorgen/makefile
+@@ -1,12 +1,12 @@
+ all: xcursorgen.so
+
+-CC= gcc
++CC ?= gcc
+ LIBS= -lX11 -lXcursor -lpng -lz
+ OUT_DIR= ../clickgen
+ CP= cp -f
+
+ xcursorgen.so: xcursorgen.c
+- $(CC) -Wl,-zdefs -shared -o xcursorgen.so -fPIC xcursorgen.c $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -Wl,-zdefs -shared -o xcursorgen.so -fPIC xcursorgen.c $(LIBS)
+ $(CP) xcursorgen.so $(OUT_DIR)/xcursorgen.so
+
+ clean:
diff --git a/dev-python/clickgen/metadata.xml b/dev-python/clickgen/metadata.xml
new file mode 100644
index 000000000000..a695b755c759
--- /dev/null
+++ b/dev-python/clickgen/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>alexey@zapparov.com</email>
+ <name>Alexey Zapparov</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/ful1e5/clickgen/issues</bugs-to>
+ <changelog>https://github.com/ful1e5/clickgen/blob/main/CHANGELOG.md</changelog>
+ <remote-id type="github">ful1e5/clickgen</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/clufter/Manifest b/dev-python/clufter/Manifest
new file mode 100644
index 000000000000..a66e62db789e
--- /dev/null
+++ b/dev-python/clufter/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..85ea441e689a
--- /dev/null
+++ b/dev-python/clufter/clufter-0.77.2.ebuild
@@ -0,0 +1,34 @@
+# 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,10} )
+
+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/clufter/metadata.xml b/dev-python/clufter/metadata.xml
new file mode 100644
index 000000000000..55b9e503888b
--- /dev/null
+++ b/dev-python/clufter/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>andrea.postiglione@gmail.com</email>
+ <name>Andrea Postiglione</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/cmarkgfm/Manifest b/dev-python/cmarkgfm/Manifest
new file mode 100644
index 000000000000..ac2d67978e0d
--- /dev/null
+++ b/dev-python/cmarkgfm/Manifest
@@ -0,0 +1,2 @@
+DIST cmarkgfm-0.6.0.tar.gz 12667 BLAKE2B 8eab0a7f0b9903ddeca59a8dcd00efcd2a9ed136b0920cfd7ce40bf49a5b4d9c8d492c2096090a647deaa514b4032878e58d006852d279f91e8d439850e61add SHA512 de4653ae4b27e55b98f885b67d50f71cffa92f13511f1a5efb885a474f5aefb924ce6eb019f4241499b66ad43a7e0630053a7743e844e5c34c652050c0f83ef2
+DIST cmarkgfm-2022.3.4.tar.gz 11853 BLAKE2B 51c66b6e54856a269214731c68e496f242293fdecbcc9848fdd8f3044531409c8e80ec1c311acacc4f079346a1ca2de060c185293c32449711aa415aed83da94 SHA512 e3336f34059a29237a977e37ddc56b850f5baa204d10a4fc90d6cfa805da9d09d007428dcaae698c4ab9aab8129aa44d2907eb16809e01ee2bc3f94f78939076
diff --git a/dev-python/cmarkgfm/cmarkgfm-0.6.0.ebuild b/dev-python/cmarkgfm/cmarkgfm-0.6.0.ebuild
new file mode 100644
index 000000000000..87baefe6a381
--- /dev/null
+++ b/dev-python/cmarkgfm/cmarkgfm-0.6.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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/cmarkgfm-2022.3.4.ebuild b/dev-python/cmarkgfm/cmarkgfm-2022.3.4.ebuild
new file mode 100644
index 000000000000..4dbc5b8e2d8f
--- /dev/null
+++ b/dev-python/cmarkgfm/cmarkgfm-2022.3.4.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_{7,8,9,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}/${PN}-0.6.0-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
new file mode 100644
index 000000000000..47894810e291
--- /dev/null
+++ b/dev-python/cmarkgfm/files/cmarkgfm-0.6.0-use-system-cmark-gfm.patch
@@ -0,0 +1,47 @@
+--- 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
new file mode 100644
index 000000000000..882411550aae
--- /dev/null
+++ b/dev-python/cmarkgfm/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>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/collidoscope/Manifest b/dev-python/collidoscope/Manifest
new file mode 100644
index 000000000000..926e11589cb5
--- /dev/null
+++ b/dev-python/collidoscope/Manifest
@@ -0,0 +1,2 @@
+DIST collidoscope-0.0.6.tar.gz 30056 BLAKE2B 44979e6748cbf1db46ae7bdcba561e39ab40a51a108ce0b357a833b7a0e260d1df2de9b139010cbc50f8ac060db0bfe6d20ebdb7a2e06b0d9d6c2941278c9188 SHA512 fd38dcef982fee3ef55f8d6a500d5a56bd0f5e3adbffbae8da6506d4ad3e447864c0571042327f92d5b18212510bbee65ed07100c0c963f1fcef9ec70ad8df1a
+DIST collidoscope-0.4.1.tar.gz 32178 BLAKE2B 05b85b9321ad486a619a65b5ddbfbfe5550549d3a3f337432e07c7e1d6d80d03f7fa478ce2a19d551f846a05e27c8d6431d0a3138ef4886d48b4ac88123bd0c8 SHA512 a38fb10eeb50388024498d4900323c217a504695507a9d67b0009a0ab9e6f99b8fb836a86e0139752e7008f139363344f1761e9413f17830dc44d615212b437d
diff --git a/dev-python/collidoscope/collidoscope-0.0.6.ebuild b/dev-python/collidoscope/collidoscope-0.0.6.ebuild
new file mode 100644
index 000000000000..5fa940e4b67a
--- /dev/null
+++ b/dev-python/collidoscope/collidoscope-0.0.6.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/collidoscope-0.4.1.ebuild b/dev-python/collidoscope/collidoscope-0.4.1.ebuild
new file mode 100644
index 000000000000..155e35851760
--- /dev/null
+++ b/dev-python/collidoscope/collidoscope-0.4.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/beziers-0.0.3[${PYTHON_USEDEP}]
+ dev-python/fonttools[${PYTHON_USEDEP}]
+ dev-python/glyphtools[${PYTHON_USEDEP}]
+ dev-python/uharfbuzz[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-python/collidoscope/metadata.xml b/dev-python/collidoscope/metadata.xml
new file mode 100644
index 000000000000..364a1d3b5be0
--- /dev/null
+++ b/dev-python/collidoscope/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>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
new file mode 100644
index 000000000000..461230d2ae57
--- /dev/null
+++ b/dev-python/colored/Manifest
@@ -0,0 +1,2 @@
+DIST colored-1.4.2.tar.gz 23973 BLAKE2B 3f6d91c08634d6e6616f968b7e06d0d7822a15d02e7129fab6fb4d3a4cb9ca166fd0de5cf3240fdf76918d09aab28224459d332821994730b4070dd7d4336b7e SHA512 31b604baf41d054a3b269e843393c63ede3be279331108ce1127ee30e63f19365c45f63744a5c3bdb5c355716138b7d1768e761ead456c480d5ae1183952a406
+DIST colored-1.4.3.tar.gz 24324 BLAKE2B 8924029b06571053a450d1beebe12fb7318d813bcd273b816c88d2f9186e66f12ebdaee631680dbe17348141faf8d80e551c6446a5bd3cb9c09eb09131058571 SHA512 e6f8047a210f38e5fc84e4e24870810ab34eed2bc9003e5f777c3f6de007c3cf61a89bf75e275f3ebfa8fb63420925b41502498534516c464c92ba3949d2f4eb
diff --git a/dev-python/colored/colored-1.4.2.ebuild b/dev-python/colored/colored-1.4.2.ebuild
new file mode 100644
index 000000000000..a43303a18684
--- /dev/null
+++ b/dev-python/colored/colored-1.4.2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+inherit distutils-r1
+
+EGIT_REPO_URI="https://gitlab.com/dslackw/${PN}"
+
+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"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+
+DOCS=( CHANGES.md README.rst docs )
+
+python_test() {
+ "${EPYTHON}" tests/test_hex_1.py || die
+ "${EPYTHON}" tests/test_hex_2.py || die
+}
diff --git a/dev-python/colored/colored-1.4.3.ebuild b/dev-python/colored/colored-1.4.3.ebuild
new file mode 100644
index 000000000000..630f7a575d94
--- /dev/null
+++ b/dev-python/colored/colored-1.4.3.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+inherit distutils-r1
+
+EGIT_REPO_URI="https://gitlab.com/dslackw/${PN}"
+
+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"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+
+DOCS=( CHANGES.md README.rst docs )
+
+python_test() {
+ "${EPYTHON}" tests/test_hex_1.py || die
+ "${EPYTHON}" tests/test_hex_2.py || die
+}
diff --git a/dev-python/colored/metadata.xml b/dev-python/colored/metadata.xml
new file mode 100644
index 000000000000..dd4230819a14
--- /dev/null
+++ b/dev-python/colored/metadata.xml
@@ -0,0 +1,17 @@
+<?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">
+ Very simple Python library for color and formatting in terminal.
+ Collection of color codes and names for 256 color terminal setups.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://gitlab.com/dslackw/colored/-/issues</bugs-to>
+ <remote-id type="gitlab">dslackw/colored</remote-id>
+ <remote-id type="pypi">colored</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/commandlines/Manifest b/dev-python/commandlines/Manifest
new file mode 100644
index 000000000000..243bca7c806a
--- /dev/null
+++ b/dev-python/commandlines/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..34c762f8434d
--- /dev/null
+++ b/dev-python/commandlines/commandlines-0.4.1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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
new file mode 100644
index 000000000000..f1e0f46e94bb
--- /dev/null
+++ b/dev-python/commandlines/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>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
new file mode 100644
index 000000000000..fe4babae38b5
--- /dev/null
+++ b/dev-python/compreffor/Manifest
@@ -0,0 +1 @@
+DIST compreffor-0.5.1.post1.tar.gz 75132 BLAKE2B ed37118c45d616029dad90451240ff7d5eb131ecd080c713ccc8241d3288a869f5e2950524b0faf58e895c8f1e76e0da8df24cc0526a1ce342d509de856fc0e2 SHA512 eaab7e01b158f68c28c946f39af80bd8313b9338301aee8a4119de243442791d68cf7edc0e8ac86efc0cadf6115de89f38ec445cf5ce13055aed44dcfaeb3eed
diff --git a/dev-python/compreffor/compreffor-0.5.1_p1.ebuild b/dev-python/compreffor/compreffor-0.5.1_p1.ebuild
new file mode 100644
index 000000000000..eabf885c5008
--- /dev/null
+++ b/dev-python/compreffor/compreffor-0.5.1_p1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+MYPV="${PV/_p/.post}"
+MYP="${PN}-${MYPV}"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A CFF table subroutinizer for FontTools"
+HOMEPAGE="
+ https://github.com/googlefonts/compreffor
+ https://pypi.org/project/compreffor/
+"
+SRC_URI="mirror://pypi/${MYP:0:1}/${PN}/${MYP}.tar.gz"
+S="${WORKDIR}/${MYP}"
+KEYWORDS="~amd64"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/fonttools-4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/cython-0.29.24[${PYTHON_USEDEP}]
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+"
+BDEPEND="app-arch/unzip"
+
+PATCHES=( "${FILESDIR}/${P}-remove-unwanted-dependencies.patch" )
+
+distutils_enable_tests pytest
+
+python_compile() {
+ distutils-r1_python_compile
+ esetup.py build_ext --inplace
+}
+
+python_test() {
+ cd "${S}/src/python" || die
+ PYTHONPATH=".:${PYTHONPATH}" epytest compreffor/test
+}
diff --git a/dev-python/compreffor/files/compreffor-0.5.1_p1-remove-unwanted-dependencies.patch b/dev-python/compreffor/files/compreffor-0.5.1_p1-remove-unwanted-dependencies.patch
new file mode 100644
index 000000000000..a7ed61b459a1
--- /dev/null
+++ b/dev-python/compreffor/files/compreffor-0.5.1_p1-remove-unwanted-dependencies.patch
@@ -0,0 +1,11 @@
+--- a/setup.py
++++ b/setup.py
+@@ -152,7 +152,7 @@
+ 'build_ext': custom_build_ext,
+ },
+ setup_requires=(
+- ["setuptools_scm", "setuptools_git_ls_files"] + pytest_runner + wheel
++ ["setuptools_scm"] + wheel
+ ),
+ tests_require=[
+ 'pytest>=2.8',
diff --git a/dev-python/compreffor/files/remove-pytest-runner.patch b/dev-python/compreffor/files/remove-pytest-runner.patch
new file mode 100644
index 000000000000..f3734f3cc280
--- /dev/null
+++ b/dev-python/compreffor/files/remove-pytest-runner.patch
@@ -0,0 +1,11 @@
+--- 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
new file mode 100644
index 000000000000..f56df1a5a326
--- /dev/null
+++ b/dev-python/compreffor/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">
+ <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/confluent-kafka/Manifest b/dev-python/confluent-kafka/Manifest
new file mode 100644
index 000000000000..4936eaa58236
--- /dev/null
+++ b/dev-python/confluent-kafka/Manifest
@@ -0,0 +1 @@
+DIST confluent-kafka-1.8.2.tar.gz 250172 BLAKE2B 9fabaaf2417343ae2743b662c359925487011cee9c63e5f8d07bfa049212e0f9890530072b463fd39fcc991d46e8e2e4ce07d79b8a63b367685c7da9d658291d SHA512 6db66371b7cac822aafeaa4acb491556d9a866f8502d76e2acfe52d18b282caab338cd3f51f84845eab2ec5b2c44ed80426a7ad8afd0314a8a5ddc1a9299d693
diff --git a/dev-python/confluent-kafka/confluent-kafka-1.8.2-r1.ebuild b/dev-python/confluent-kafka/confluent-kafka-1.8.2-r1.ebuild
new file mode 100644
index 000000000000..b1f06f84328e
--- /dev/null
+++ b/dev-python/confluent-kafka/confluent-kafka-1.8.2-r1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MYPN="${PN}-python"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Confluent's Kafka Python Client"
+HOMEPAGE="
+ https://pypi.org/project/confluent-kafka/
+ https://github.com/confluentinc/confluent-kafka-python
+"
+SRC_URI="https://github.com/confluentinc/${MYPN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MYPN}-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-libs/librdkafka"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/fastavro-1.0[${PYTHON_USEDEP}]
+ >=dev-python/avro-1.10.0[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/requests-mock[${PYTHON_USEDEP}]
+ >=dev-python/trivup-0.8.3[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_install_all() {
+ distutils-r1_python_install_all
+ rm "${ED}/usr/LICENSE.txt" || die
+}
+
+pkg_postinst() {
+ optfeature "avro support" dev-python/fastavro dev-python/avro dev-python/requests
+ optfeature "json support" dev-python/jsonschema dev-python/pyrsistent dev-python/requests
+ optfeature "protobuf support" dev-python/protobuf-python dev-python/requests
+ optfeature "schema-registry support" dev-python/requests
+}
diff --git a/dev-python/confluent-kafka/metadata.xml b/dev-python/confluent-kafka/metadata.xml
new file mode 100644
index 000000000000..d4929d782bfc
--- /dev/null
+++ b/dev-python/confluent-kafka/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <longdescription lang="en">
+confluent-kafka-python provides a high-level Producer, Consumer and AdminClient compatible with all Apache KafkaTM brokers >= v0.8, Confluent Cloud and the Confluent Platform. The client is:
+Reliable - It's a wrapper around librdkafka (provided automatically via binary wheels) which is widely deployed in a diverse set of production scenarios. It's tested using the same set of system tests as the Java client and more. It's supported by Confluent.
+Performant - Performance is a key design consideration. Maximum throughput is on par with the Java client for larger message sizes (where the overhead of the Python interpreter has less impact). Latency is on par with the Java client.
+Future proof - Confluent, founded by the creators of Kafka, is building a streaming platform with Apache Kafka at its core. It's high priority for us that client features keep pace with core Apache Kafka and components of the Confluent Platform.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">confluentinc/confluent-kafka-python</remote-id>
+ <remote-id type="pypi">confluent-kafka</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/convertdate/Manifest b/dev-python/convertdate/Manifest
new file mode 100644
index 000000000000..e5acebd36276
--- /dev/null
+++ b/dev-python/convertdate/Manifest
@@ -0,0 +1,2 @@
+DIST convertdate-2.3.2.tar.gz 52155 BLAKE2B 607e5b0ec3c4bc664cec51c32c68ccec0676f72e839c9d094fb901ce1ae154c759f5bded34f5654562ae1e74111c4ee263159ae46cb545b2cfae81af343511f4 SHA512 a1c70564fafc697a5fb941d32603e8bfae565089a1a37bc3c2f8793bf926e6e97c752ffddb9192ae54e37ccafb0a02969b9f9086875595f1eb97cf264f96fde9
+DIST convertdate-2.4.0.tar.gz 52728 BLAKE2B 1ee45f86c1a424f479a0a01d7f048a861cea9a25e82adade8dc26182064428b27dac98012d9a1e6afc7412f27366dd3d06ecc8d881eb6946d24a037305bb5c57 SHA512 d6b63000fd72640d69afa12b5f942684fa1c2f52880bc76e78780f144848040176a7869cd7b95a502abfd5b8fe1ebc3c844f3eb261e2ad547e6be493b11cd432
diff --git a/dev-python/convertdate/convertdate-2.3.2.ebuild b/dev-python/convertdate/convertdate-2.3.2.ebuild
new file mode 100644
index 000000000000..3691ec265232
--- /dev/null
+++ b/dev-python/convertdate/convertdate-2.3.2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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.4.0.ebuild b/dev-python/convertdate/convertdate-2.4.0.ebuild
new file mode 100644
index 000000000000..5a4b5004c7df
--- /dev/null
+++ b/dev-python/convertdate/convertdate-2.4.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/pymeeus[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
+
+# TODO: requires myst_parser
+#distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
diff --git a/dev-python/convertdate/metadata.xml b/dev-python/convertdate/metadata.xml
new file mode 100644
index 000000000000..f4dc396fcdae
--- /dev/null
+++ b/dev-python/convertdate/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">fitnr/convertdate</remote-id>
+ <remote-id type="pypi">convertdate</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/cotyledon/Manifest b/dev-python/cotyledon/Manifest
new file mode 100644
index 000000000000..089a280887ac
--- /dev/null
+++ b/dev-python/cotyledon/Manifest
@@ -0,0 +1 @@
+DIST cotyledon-1.7.3.tar.gz 23354 BLAKE2B 9437ff26fb5b65420e2c45eb1d689e30350cef72bc92f3403d98ca9e6e92b93588764fa00a96ee26ea356283b87910dc2af05f989acb5e043572ab7bcbb651fb SHA512 28415bfa128c9f1760ece2707a4a3b67441f26e14125f322e8f23c4efaa65ea7e5a522378629a0d675ef1533ff21b4c252b36adf9ea38a70011d53af6e8ee06d
diff --git a/dev-python/cotyledon/cotyledon-1.7.3.ebuild b/dev-python/cotyledon/cotyledon-1.7.3.ebuild
new file mode 100644
index 000000000000..ff1584c1fb83
--- /dev/null
+++ b/dev-python/cotyledon/cotyledon-1.7.3.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Cotyledon provides a framework for defining long-running services"
+HOMEPAGE="
+ https://github.com/sileht/cotyledon
+ https://pypi.org/project/cotyledon/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/setproctitle[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/oslo-config[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/cotyledon/metadata.xml b/dev-python/cotyledon/metadata.xml
new file mode 100644
index 000000000000..4a436b3cd53c
--- /dev/null
+++ b/dev-python/cotyledon/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/sileht/cotyledon/issues</bugs-to>
+ <remote-id type="pypi">cotyledon</remote-id>
+ <remote-id type="github">sileht/cotyledon</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/cu2qu/Manifest b/dev-python/cu2qu/Manifest
new file mode 100644
index 000000000000..49964751a7f4
--- /dev/null
+++ b/dev-python/cu2qu/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..370716a77993
--- /dev/null
+++ b/dev-python/cu2qu/cu2qu-1.6.7.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..9c9d667bb3d4
--- /dev/null
+++ b/dev-python/cu2qu/metadata.xml
@@ -0,0 +1,48 @@
+<?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
new file mode 100644
index 000000000000..7edce9f79609
--- /dev/null
+++ b/dev-python/curio/Manifest
@@ -0,0 +1,3 @@
+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
new file mode 100644
index 000000000000..e0ebbe1013e7
--- /dev/null
+++ b/dev-python/curio/curio-0.9.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..a3d4a3feaec6
--- /dev/null
+++ b/dev-python/curio/curio-1.4-r1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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
new file mode 100644
index 000000000000..af468120fe3d
--- /dev/null
+++ b/dev-python/curio/curio-1.5.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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
new file mode 100644
index 000000000000..6a58b1a32744
--- /dev/null
+++ b/dev-python/curio/metadata.xml
@@ -0,0 +1,16 @@
+<?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
new file mode 100644
index 000000000000..5a40d9f6a308
--- /dev/null
+++ b/dev-python/cursive/Manifest
@@ -0,0 +1 @@
+DIST cursive-0.2.2.tar.gz 43065 BLAKE2B 2c007b357c3cd1d560f74958b78d157c97301b8c2e15ed50ff340950eb4abb8baac078865bd82a3222a22505862a78a651905c843b6b0ba4662d653dfdd5f369 SHA512 6c97f8f71b016ee57349b8156543c8ca41c29c3f234ea60967b96c09fce2cea4b36b9f92996c622bd9504d4a71893903e8d5a8ab50e089fd37bddb8095f4b9d2
diff --git a/dev-python/cursive/cursive-0.2.2-r2.ebuild b/dev-python/cursive/cursive-0.2.2-r2.ebuild
new file mode 100644
index 000000000000..564a52a00c54
--- /dev/null
+++ b/dev-python/cursive/cursive-0.2.2-r2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Cursive implements OpenStack-specific validation of digital signatures"
+HOMEPAGE="
+ https://github.com/openstack/cursive
+ https://opendev.org/x/cursive
+ https://launchpad.net/cursive
+ https://pypi.org/project/cursive/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-1.6[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-1.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}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/subunit-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/testrepository-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/reno-1.8.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/cursive/metadata.xml b/dev-python/cursive/metadata.xml
new file mode 100644
index 000000000000..55ddf047c5c7
--- /dev/null
+++ b/dev-python/cursive/metadata.xml
@@ -0,0 +1,9 @@
+<?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
new file mode 100644
index 000000000000..6c7e35094d11
--- /dev/null
+++ b/dev-python/cx-oracle/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..37dec9b03f3e
--- /dev/null
+++ b/dev-python/cx-oracle/cx-oracle-8.2.1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..4f0a4f1df8ad
--- /dev/null
+++ b/dev-python/cx-oracle/metadata.xml
@@ -0,0 +1,14 @@
+<?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
new file mode 100644
index 000000000000..69fce113a93a
--- /dev/null
+++ b/dev-python/dacite/Manifest
@@ -0,0 +1 @@
+DIST dacite-1.6.0.tar.gz 22102 BLAKE2B 79bfa563feb1bd0fdf3541dbafc3ec15b370808e90625e7a7656a4155ba856324644a59b146307df19aca9a0aa68898478111757e37de065f2538932ceaa236f SHA512 034255f095589d309fe5805413d8b148f430cd20a0de305b7954083b530d516da1d8f3f00ebb5264a8cfb77f2b2a76f1e2d863e78bd191f1d85021c5553815da
diff --git a/dev-python/dacite/dacite-1.6.0.ebuild b/dev-python/dacite/dacite-1.6.0.ebuild
new file mode 100644
index 000000000000..c0259f568b67
--- /dev/null
+++ b/dev-python/dacite/dacite-1.6.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="This module simplifies creation of data classes (PEP 557) from dictionaries"
+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"
+
+distutils_enable_tests pytest
diff --git a/dev-python/dacite/metadata.xml b/dev-python/dacite/metadata.xml
new file mode 100644
index 000000000000..55b9e503888b
--- /dev/null
+++ b/dev-python/dacite/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>andrea.postiglione@gmail.com</email>
+ <name>Andrea Postiglione</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/daff/Manifest b/dev-python/daff/Manifest
new file mode 100644
index 000000000000..b5b11967978d
--- /dev/null
+++ b/dev-python/daff/Manifest
@@ -0,0 +1 @@
+DIST daff-1.3.46.tar.gz 149820 BLAKE2B e79083fbdbbb975d0f81f5c932a58788925e0376e82c6c284e39596319e4498375e6e548a3ee8a9b383b1e38b0564fcd3247eb51f03519cb779899b21f29de35 SHA512 b43b6c737fd68663fd15366d8024f5190bc35e52ce6b8f3d64f8c538c544c21a1e9cdb691e4673eed4958be37cbf9590863a1029fec7d08062156adaaf28103f
diff --git a/dev-python/daff/daff-1.3.46.ebuild b/dev-python/daff/daff-1.3.46.ebuild
new file mode 100644
index 000000000000..a7de995705aa
--- /dev/null
+++ b/dev-python/daff/daff-1.3.46.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+PYTHON_REQ_USE="sqlite"
+inherit distutils-r1
+
+DESCRIPTION="Diff and patch tables"
+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
+}
diff --git a/dev-python/daff/metadata.xml b/dev-python/daff/metadata.xml
new file mode 100644
index 000000000000..3e2e0fe7f396
--- /dev/null
+++ b/dev-python/daff/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>vowstar@gmail.com</email>
+ <name>Huang Rui</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">daff</remote-id>
+ <remote-id type="github">paulfitz/daff</remote-id>
+ </upstream>
+ <longdescription lang="en">
+ daff: data diff. daff can produce and apply tabular diffs.
+ This is a library for comparing tables, producing a summary of their
+ differences, and using such a summary as a patch file. It is optimized for
+ comparing tables that share a common origin, in other words multiple
+ versions of the "same" table.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-python/daiquiri/Manifest b/dev-python/daiquiri/Manifest
new file mode 100644
index 000000000000..6a12a3d94fb1
--- /dev/null
+++ b/dev-python/daiquiri/Manifest
@@ -0,0 +1 @@
+DIST daiquiri-3.0.1.tar.gz 17948 BLAKE2B 1865d1e6b7ad0a1c9b8390992255726a3383034fd631cd217cb2ac820106efaeced3e44168f14d4b8c851e0c17a5d980aeb28a3d3ea3399701af2ea1c248b9c0 SHA512 4c786a744a8ed89147bb77c8825d8733ca88bf1d1877058c87257c92a7ae3b343a0820e9d83f4ac8a2a1b9b74d33f72bb5b306703b3bd57b51cf7931041c5d6c
diff --git a/dev-python/daiquiri/daiquiri-3.0.1.ebuild b/dev-python/daiquiri/daiquiri-3.0.1.ebuild
new file mode 100644
index 000000000000..ee3104503256
--- /dev/null
+++ b/dev-python/daiquiri/daiquiri-3.0.1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Python library to easily setup basic logging functionality"
+HOMEPAGE="
+ https://pypi.org/project/daiquiri/
+ https://github.com/jd/daiquiri
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/python-json-logger[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/daiquiri/metadata.xml b/dev-python/daiquiri/metadata.xml
new file mode 100644
index 000000000000..e0e18bf58471
--- /dev/null
+++ b/dev-python/daiquiri/metadata.xml
@@ -0,0 +1,15 @@
+<?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">
+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>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/databases/Manifest b/dev-python/databases/Manifest
new file mode 100644
index 000000000000..c0460b3aacb7
--- /dev/null
+++ b/dev-python/databases/Manifest
@@ -0,0 +1,2 @@
+DIST databases-0.4.3.tar.gz 26517 BLAKE2B 38b9f86e42740a723f4022b225913e0e7a2c635eb34793fcbf62efa0917ddb6b7ee3b59cce7f4c8503aef31befb0caea3fb3e655617606296cb8ae1bb4cebfc7 SHA512 aa49f1a33edd3bf9ae7aa203dcef4941d1a1766c930cbe34405caf3dca0801bbca494ec39357591b6339977b86294d32a031bf2020f206436e7d19edc6a8e158
+DIST databases-0.5.3.tar.gz 28342 BLAKE2B dcf8533a49b92a325bfda1440fd5bac3f9bd69751496c6fcdf72c422cc19c552a7458dc4ea0607a2a1ad9ade9afbb8cac00e178c29b6b11f7011bd4eae1f70a0 SHA512 bd0c4f1bf0f81e017ea55e41a6d4821ee17e0f995b600a50955fba68841443147dd234534b9c72d753b99785a5a08ac6e3d839894ec4760c602372cccbd4c1c0
diff --git a/dev-python/databases/databases-0.4.3.ebuild b/dev-python/databases/databases-0.4.3.ebuild
new file mode 100644
index 000000000000..b490ad3aedce
--- /dev/null
+++ b/dev-python/databases/databases-0.4.3.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/databases-0.5.3.ebuild b/dev-python/databases/databases-0.5.3.ebuild
new file mode 100644
index 000000000000..74c5fc71889b
--- /dev/null
+++ b/dev-python/databases/databases-0.5.3.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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}]
+ <dev-python/sqlalchemy-1.5.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
+
+EPYTEST_DESELECT=(
+ tests/test_connection_options.py::test_mysql_pool_size
+ tests/test_connection_options.py::test_mysql_explicit_pool_size
+ tests/test_connection_options.py::test_mysql_ssl
+ tests/test_connection_options.py::test_mysql_explicit_ssl
+ tests/test_connection_options.py::test_mysql_pool_recycle
+ tests/test_databases.py
+ tests/test_integration.py::test_integration
+)
+
+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
+}
+
+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
new file mode 100644
index 000000000000..a507be0a7892
--- /dev/null
+++ b/dev-python/databases/metadata.xml
@@ -0,0 +1,9 @@
+<?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/dateparser/Manifest b/dev-python/dateparser/Manifest
new file mode 100644
index 000000000000..e71ed270ea85
--- /dev/null
+++ b/dev-python/dateparser/Manifest
@@ -0,0 +1,2 @@
+DIST dateparser-1.1.0.tar.gz 483853 BLAKE2B d754bef57b7a062063fe35480d5c5b8cfdd8144b32d4b0c92c949e31b1bfb7bb388e5eff68981dd20a3bd51328dd48f1f650477efa80b5004337b2ab3fdb53d3 SHA512 019fa8fcc00ba298d38d166fb17bca3cb3ea34934cc59d05d7e47924a4caf1a640a628ee29552b72fc53e7a005109ec227c3a09c52e46d1094565db0a6daed2a
+DIST dateparser-1.1.1.tar.gz 484365 BLAKE2B c4044a4b00370439eee452ee90503c0fef7f7462c4a5de028af911ee312fb672dff139303fe1b8231fd737408ebf5bf46e3655dfa9b0819d740374574af70cdf SHA512 184307023306bc91c80c70a7cabb64bab8589b0e45db719c7f65f7edaad910daa76e5f3c46faf5591db15b170c0d72a0f84ea4b2ad5009fd89adba596beacfba
diff --git a/dev-python/dateparser/dateparser-1.1.0.ebuild b/dev-python/dateparser/dateparser-1.1.0.ebuild
new file mode 100644
index 000000000000..e3a0bc1eb725
--- /dev/null
+++ b/dev-python/dateparser/dateparser-1.1.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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"
+
+PROPERTIES="test_network"
+RESTRICT="test"
+
+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}]
+"
+BDEPEND="test? (
+ dev-python/ruamel-yaml[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ dev-python/GitPython[${PYTHON_USEDEP}]
+ dev-python/ordered-set[${PYTHON_USEDEP}]
+)"
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs
diff --git a/dev-python/dateparser/dateparser-1.1.1.ebuild b/dev-python/dateparser/dateparser-1.1.1.ebuild
new file mode 100644
index 000000000000..f64048936711
--- /dev/null
+++ b/dev-python/dateparser/dateparser-1.1.1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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"
+
+PROPERTIES="test_network"
+RESTRICT="test"
+
+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-2022.3.15[${PYTHON_USEDEP}]
+ dev-python/tzlocal[${PYTHON_USEDEP}]
+"
+BDEPEND="test? (
+ dev-libs/fastText[python,${PYTHON_USEDEP}]
+ dev-python/GitPython[${PYTHON_USEDEP}]
+ dev-python/langdetect[${PYTHON_USEDEP}]
+ dev-python/ordered-set[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ dev-python/ruamel-yaml[${PYTHON_USEDEP}]
+ <dev-python/pytest-7.1.0[${PYTHON_USEDEP}]
+)"
+
+EPYTEST_DESELECT=(
+ dateparser/date.py
+ dateparser/search/__init__.py
+)
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs
+
+python_prepare_all() {
+ rm tests/test_search.py || die
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/dateparser/metadata.xml b/dev-python/dateparser/metadata.xml
new file mode 100644
index 000000000000..69d0caa11602
--- /dev/null
+++ b/dev-python/dateparser/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+ <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 000000000000..db88ebb4539d
--- /dev/null
+++ b/dev-python/decopatch/Manifest
@@ -0,0 +1,2 @@
+DIST decopatch-1.4.10.tar.gz 69538 BLAKE2B 812305abb0648c42fe786f6153820ff68e3bf3cb23bf0b3eecb139085b88071f914aa556f17a90bd45b39cdf42a563fb3c30178095bbdd16331d36ec2ff29e58 SHA512 7554c5bdef6aeb06968334c8aef3f67b56bd3ff8be5e05cb6289f3088848d946d46ecc1d9f73bab9db80b6981aa4f9039c359eb8a0fe9f4acee62addf4f0ed96
+DIST decopatch-1.4.9.tar.gz 68419 BLAKE2B bb49ffd093aead65373f6c56955d2dfcdf73f5654acb12ddfbfc0b5c94f9db8e10c70493489cc06a569bef312f04c3e5cb94bbc9e64ba2f75866777fa7721aff SHA512 2f131bbc485ab177c86abb782cdd0b66b7370a7fb97b62e27da5fb62f3c115ae540eae22a346d8ecb0946216661c111f952d8e22e60b40de21371cd38b93264a
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 000000000000..43848f189271
--- /dev/null
+++ b/dev-python/decopatch/decopatch-1.4.10.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_{7,8,9,10} )
+DISTUTILS_USE_PEP517=setuptools
+
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="dev-python/mkdocs-material"
+DOCS_DIR="docs"
+
+inherit distutils-r1 docs
+
+DESCRIPTION="Create decorators easily in python"
+HOMEPAGE="https://pypi.org/project/decopatch/ https://github.com/smarie/python-decopatch"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+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}] )
+"
+
+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/decopatch-1.4.9.ebuild b/dev-python/decopatch/decopatch-1.4.9.ebuild
new file mode 100644
index 000000000000..43848f189271
--- /dev/null
+++ b/dev-python/decopatch/decopatch-1.4.9.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_{7,8,9,10} )
+DISTUTILS_USE_PEP517=setuptools
+
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="dev-python/mkdocs-material"
+DOCS_DIR="docs"
+
+inherit distutils-r1 docs
+
+DESCRIPTION="Create decorators easily in python"
+HOMEPAGE="https://pypi.org/project/decopatch/ https://github.com/smarie/python-decopatch"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+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}] )
+"
+
+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/metadata.xml b/dev-python/decopatch/metadata.xml
new file mode 100644
index 000000000000..12539f0991d8
--- /dev/null
+++ b/dev-python/decopatch/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>
+ <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/desktop-notifier/Manifest b/dev-python/desktop-notifier/Manifest
new file mode 100644
index 000000000000..5502aa2d545a
--- /dev/null
+++ b/dev-python/desktop-notifier/Manifest
@@ -0,0 +1,2 @@
+DIST desktop-notifier-3.3.2.tar.gz 4595234 BLAKE2B c53383b8f15c36acb21a77695b8a76e782f912078ba7c5946fe55c2e8c3c950ece7581a81a69dbee12553be7155364c9165336d7f2b814ccb0e3076dc082cf85 SHA512 d93825ea4880428e9eb41f0adff27e963ebeae23aa5cdc8c77e4a60aecee69aa1448f9aca8b12520597b52df531580e29e3458c2ea7b4f2e60eda68de5dfbe9f
+DIST desktop-notifier-3.4.0.tar.gz 4598031 BLAKE2B b8b6e0df59f2fc656ab6d3d8ee0e2e6ba58b9714c1efd103d866ccc4acd14bb1d05ebc9db88488de6643e7b42b8af960f75b79d0f82d877e33c6c35025e29ecc SHA512 4b98201466dac7da2555e11c624534f09855cd2183ff7ffaa682f22dac840dfaf402f97335b2892f4cae35739f5cb76e5d0458cb2ecccf7e33f939f41b7e38ef
diff --git a/dev-python/desktop-notifier/desktop-notifier-3.3.2.ebuild b/dev-python/desktop-notifier/desktop-notifier-3.3.2.ebuild
new file mode 100644
index 000000000000..1d48cf667eb3
--- /dev/null
+++ b/dev-python/desktop-notifier/desktop-notifier-3.3.2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+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
+"
+SRC_URI="https://github.com/samschott/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/wheel[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/python-dbus-next[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep 'dev-python/importlib_resources[${PYTHON_USEDEP}]' python3_8)
+"
+
+distutils_enable_sphinx docs
diff --git a/dev-python/desktop-notifier/desktop-notifier-3.4.0.ebuild b/dev-python/desktop-notifier/desktop-notifier-3.4.0.ebuild
new file mode 100644
index 000000000000..939785c3114c
--- /dev/null
+++ b/dev-python/desktop-notifier/desktop-notifier-3.4.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+DISTUTILS_USE_PEP517=setuptools
+
+inherit distutils-r1
+
+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
+"
+SRC_URI="https://github.com/samschott/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/wheel[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/python-dbus-next[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep 'dev-python/importlib_resources[${PYTHON_USEDEP}]' python3_8)
+"
+BDEPEND="
+ dev-python/build[${PYTHON_USEDEP}]
+"
+
+distutils_enable_sphinx docs
diff --git a/dev-python/desktop-notifier/metadata.xml b/dev-python/desktop-notifier/metadata.xml
new file mode 100644
index 000000000000..3c374a9ad23d
--- /dev/null
+++ b/dev-python/desktop-notifier/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>ceamac.paragon@gmail.com</email>
+ <description>Primary maintainer</description>
+</maintainer>
+<upstream>
+ <remote-id type="github">samschott/desktop-notifier</remote-id>
+ <remote-id type="pypi">desktop-notifier</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/dev-python/devtools/Manifest b/dev-python/devtools/Manifest
new file mode 100644
index 000000000000..7f2482aaf0a0
--- /dev/null
+++ b/dev-python/devtools/Manifest
@@ -0,0 +1 @@
+DIST devtools-0.6.1.tar.gz 66427 BLAKE2B b8c69ebe100e2f64a4a443f536697ff055563ac833630e04568b30ff6a887375cd009b846e0932b71c0ffdf48cdae311b571b0df9fd03096e744f5e35f9ac555 SHA512 919c443e99af972e6e27f751552777bb5556bc371ece48bb5f2bd490c27cb4140832dcdacc8312481ede9751656b01f02772b8936ec7737e8385c5d6f497a084
diff --git a/dev-python/devtools/devtools-0.6.1.ebuild b/dev-python/devtools/devtools-0.6.1.ebuild
new file mode 100644
index 000000000000..bc3a9ba489a9
--- /dev/null
+++ b/dev-python/devtools/devtools-0.6.1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..9347cb29d7a2
--- /dev/null
+++ b/dev-python/devtools/metadata.xml
@@ -0,0 +1,10 @@
+<?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">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 000000000000..73f13fe21513
--- /dev/null
+++ b/dev-python/digitalocean/Manifest
@@ -0,0 +1,2 @@
+DIST digitalocean-1.16.0.tar.gz 59077 BLAKE2B b44c045716967a192b4e79d562bd7af8af2ed3a0d6ea54490f2e15195c84476f25a661c80b5f1beda54e724a4177083a5d04682ca96855637cf626cd3397df17 SHA512 110614aeb33e2dab0564b4569058233916626d50da14d42f9702c9275f13442dccb7b77829b2dc8e97e8bbbd53d094116cebe9b3aedad920d2b0c156a5680bf7
+DIST digitalocean-1.17.0.tar.gz 60261 BLAKE2B 1a3b8ffe955fdea616420d67e9cd1b07d81d3395d673770333b150a8044f6f93d16ab6ec93d0d5efb7579a2bd7fde57c394bc3fc3e58ad02db230f5bd48006bb SHA512 3b5f5adb5fac9693450954e568433cecb43152d4cb2b5709126dc7c69c6b84f19428dcd3688718588a986d3ea9170a956387f3050cd10a69ba89d5dcdf8e100c
diff --git a/dev-python/digitalocean/digitalocean-1.16.0.ebuild b/dev-python/digitalocean/digitalocean-1.16.0.ebuild
new file mode 100644
index 000000000000..92f5a0bfeba4
--- /dev/null
+++ b/dev-python/digitalocean/digitalocean-1.16.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+DISTUTILS_USE_SETUPTOOLS=rdepend
+
+inherit distutils-r1
+
+DESCRIPTION="Digitalocean API access library"
+HOMEPAGE="https://github.com/koalalorenzo/python-digitalocean"
+SRC_URI="https://github.com/koalalorenzo/python-digitalocean/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S=${WORKDIR}/python-digitalocean-${PV}
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/jsonpickle[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/digitalocean/digitalocean-1.17.0.ebuild b/dev-python/digitalocean/digitalocean-1.17.0.ebuild
new file mode 100644
index 000000000000..cb38df2e6790
--- /dev/null
+++ b/dev-python/digitalocean/digitalocean-1.17.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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}.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}]
+"
+
+distutils_enable_sphinx docs dev-python/alabaster
+
+distutils_enable_tests pytest
diff --git a/dev-python/digitalocean/metadata.xml b/dev-python/digitalocean/metadata.xml
new file mode 100644
index 000000000000..f1206d1af40c
--- /dev/null
+++ b/dev-python/digitalocean/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>egorr.berd@gmail.com</email>
+ <name>Yahor Berdnikau</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-python/django/Manifest b/dev-python/django/Manifest
index 01dc612d89fe..30810f7d62d7 100644
--- a/dev-python/django/Manifest
+++ b/dev-python/django/Manifest
@@ -1,14 +1,6 @@
-DIST Django-2.2.27.checksum.txt 2556 BLAKE2B 770dc5670d0d4aebcfd1956d644b9d7e4e5bf0b511649ae072de1b8ec8d2ea12dbc48563f5372979dead9e729abd9b5174c99323a14170876b1f1b5e61de96f6 SHA512 fb76f2bef6e6d0a3002298e4eeec5b335bfdc365ae55f0c26dcb050d369864c504dd32d40ac3b49897d56bc0dadc10136b588361ddf3598ffdc03830a97e1d63
-DIST Django-2.2.27.tar.gz 9185716 BLAKE2B 26d509c722c62b5bf784331466a97ad1b961715572da9e6add4be1bdc7cf999c0ec7c763d9bc8ab2fc1ca35a48783feaf748c3c9388ae9f5f3e393972deea734 SHA512 0db670651a820b49d855e38a336c0c6990ce4701bb686c5e8a292ccb03342e995c61c2c628b1d625d2715404e969fc31c256e5bf0fd6c1ff714d1c1c1ee30bff
DIST Django-2.2.28.checksum.txt 2554 BLAKE2B 23421008f45040be56c417fb4d31ab8cb72d6d6fb59f12e53de1a7947ffed3a290908a49e7ce08bbb155380472daed93b33c2e90580d3bd0aa3d0d9190478bca SHA512 a7e4b2abf3f3ff79e6a0a55047afc6dcb97a2a27bdd6b25770ad60df3eaa4d260d332ef0b94e63971c500a313c2033127575510e871c5ec648bd045c04353aa1
DIST Django-2.2.28.tar.gz 9187543 BLAKE2B da6ae04b84a858a678b9740694cf1b638128b783da1aa8443c0e85ea3d7f71104e433de043ff7264575e2df36b6fea7275874ff04391b41eb70ba6c7c78306dc SHA512 228aec6ee8619ff3d0397ff867bd59352900fb95557bd02cfea594b3bc3f813b5bcd13f488b451b0ee79a4d52deab19c5e97aa40f1075ba06db72542d119228e
-DIST Django-3.2.12.checksum.txt 2556 BLAKE2B 7ae6e41305b5b07969ddad3474a0819359dff888fc3bdc1c5000ded1b9b726a7c55aa7aaffc85184558edcc6c12b617c8270cc569fa8e645622206631979a9c2 SHA512 5098dde440a15ad066fa7927943f4ec66bb925798afcb42101c5cf50b8148301866c39ad37ebb5db9d7f9e195953337c03dc6fa2c49758716f969ee2ce414d24
-DIST Django-3.2.12.tar.gz 9812448 BLAKE2B 39b6e7e8f50b79d7be62be171eb358ab815c9dd630b8b2ad2cf085c42c79a6a8c92914fae3c471f41578e65fa09f011f959dd0794c804e7b30cfbc9411cf4f4b SHA512 fc8ad3af019b268d514cc5240cac9c6b2fbf3a169c7933e8ab2da92e9cfed72df7a2784a8d92eaec8105bc9c245763acd307178bdf662e5d51407e72ae9d8683
DIST Django-3.2.13.checksum.txt 2554 BLAKE2B 301d816685f6d97c4a18b4f9d015b063521a7e90a870f1c95ec37ebbc1d4e7311abfee7f7c4aafaa40932334d0eab68fc768dcf21acfffe1d098cabd71ea161a SHA512 ef4a5d0fb8e885cbc2854a4b9b2380dec1cec0e8f6d9bc54179354eb6170755bd6f02268ad5bdc81fdea9d30022422462b0b14894ccc0f37d2e7288aeda83abb
DIST Django-3.2.13.tar.gz 9813985 BLAKE2B eb8319cc225491fc71f719d2eef6daa05114a97b1302093a0cf0f77bb2a51f398e7a034df7aa52c6a64e9796b9cc66b127fccee810cb38508506ba4cd121cfbf SHA512 08f056b18bc04b95d6705cf70c2ecc5be0c1324e0b38582991b907ed5977c4e3d35417ccf4ec06c2436a718e3aae007b015f0d40dd94ce5cfb129a54cceb6578
-DIST Django-4.0.2.checksum.txt 2547 BLAKE2B 532139126846e1758bbe7b4dc4ad4aad6c6b3607e298f4373366239637ceca7d01a26472b2a87917e64db7140d28a76c1f5fbb396e7022b1a42b723551770d1f SHA512 eddd8ac31fc60f803f1e6f975c079e84e5ef997e8ac93b7dcf3573bd0c5d057adeb6f092acaecb200529044d81aa2db9849c1c13525678c8c2bd27bd14d6b280
-DIST Django-4.0.2.tar.gz 9996300 BLAKE2B 422b0bb000e7f62a854dc8fa686001acc3f629ded462d2520fad9486a9c8eb5d501d29c6a9f30f63ff8da128ded6f40281439371eb688fb9bc95f2377c5ca0f7 SHA512 c64b25aa69b826805cc7a3efcd63ae41bbc31a61e68cdbda90e6bcec6bd8e2c5fc47b82176d0c1708f55d2c7b082c71939b89cb0621fcf1929d1475e3d393a97
-DIST Django-4.0.3.checksum.txt 2550 BLAKE2B 19471819fb593611217ae13a7dcb6bc67a0323daa94f4a4aeee508305aa09edbbd88ea759968ac989a1971bd72df766c7651e969aa86d3cbddd65b2bb3bf7efa SHA512 573cd0b9291698bf3218d6a77c146b5cda814e99c01cc2c455bf1b5ab2c4cbf4f2f569ea14a108e658237e933a69ec1a5288c293174916f4393ecb119231b9dc
-DIST Django-4.0.3.tar.gz 10061007 BLAKE2B 1cab7d16608acc64b2bd80aeb7d25e740442411080811a2704bbb8ddbc91d86d2aeb761cbb0522a9f095d29468060959ba7f4efd902f6c3afe0f6eb06399dd11 SHA512 4de4445e8b095ad5b858a741adc21939654838ab88b368d532f87490c1c2b3b9c927410f4370e02d2883d51d6a9508f5db3be13c2358221ae687cefea034b294
DIST Django-4.0.4.checksum.txt 2545 BLAKE2B d82f7b01f49f2b37de3cfd9eb8738e4af69c8eda0c3ed2b6d80a5f876989f36a9335640c5cd5916dcc682fcbf5453c299cb8b3f52e05f2d29413a4c75d274cbc SHA512 9889e086f35192432084fd2ae1104c316e63fa2ab0d34f6954d5eb98b810b5f2e10861a4136c480b54178d2a5453a36f3b893c7720a92f35b44cd578902a8bf9
DIST Django-4.0.4.tar.gz 10388499 BLAKE2B f839b343bf5c2f83810f2bb22e93a91b18ccc30754589fef2931ebdf29d4600a3bf5493f9e977a3b647097c3a379ea1ef4e0e25366efb54082bc0f43ed00485f SHA512 75ecf5991763237297b458f546d245a25f62272f7013364783aea19469586fa54ce94a16323ac9a6d6b81097f8e962ea7a20f26c7afd8acda842812409215bb1
diff --git a/dev-python/django/django-2.2.27.ebuild b/dev-python/django/django-2.2.27.ebuild
deleted file mode 100644
index 1896f650fbed..000000000000
--- a/dev-python/django/django-2.2.27.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{7,8,9,10} )
-PYTHON_REQ_USE='sqlite?,threads(+)'
-
-inherit bash-completion-r1 distutils-r1 optfeature verify-sig
-
-MY_P=${P^}
-DESCRIPTION="High-level Python web framework"
-HOMEPAGE="https://www.djangoproject.com/ https://pypi.org/project/Django/"
-SRC_URI="
- https://media.djangoproject.com/releases/$(ver_cut 1-2)/${MY_P}.tar.gz
- verify-sig? ( https://media.djangoproject.com/pgp/${MY_P}.checksum.txt )"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="BSD"
-# admin fonts: Roboto (media-fonts/roboto)
-LICENSE+=" Apache-2.0"
-# admin icons, jquery, xregexp.js
-LICENSE+=" MIT"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
-IUSE="doc sqlite test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-python/pytz[${PYTHON_USEDEP}]
- >=dev-python/sqlparse-0.2.2[${PYTHON_USEDEP}]"
-BDEPEND="
- doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
- test? (
- $(python_gen_impl_dep sqlite)
- ${RDEPEND}
- dev-python/docutils[${PYTHON_USEDEP}]
- dev-python/jinja[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pillow[webp,${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- dev-python/selenium[${PYTHON_USEDEP}]
- dev-python/tblib[${PYTHON_USEDEP}]
- sys-devel/gettext
- )
- verify-sig? ( sec-keys/openpgp-keys-django )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.0.7-bashcomp.patch
-)
-
-distutils_enable_sphinx docs --no-autodoc
-
-VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/django.asc
-
-src_unpack() {
- if use verify-sig; then
- cd "${DISTDIR}" || die
- verify-sig_verify_signed_checksums \
- "${MY_P}.checksum.txt" sha256 "${MY_P}.tar.gz"
- cd "${WORKDIR}" || die
- fi
-
- default
-}
-
-python_test() {
- # Tests have non-standard assumptions about PYTHONPATH,
- # and don't work with ${BUILD_DIR}/lib.
- PYTHONPATH=. "${EPYTHON}" tests/runtests.py --settings=test_sqlite -v2 ||
- die "Tests fail with ${EPYTHON}"
-}
-
-python_install_all() {
- newbashcomp extras/django_bash_completion ${PN}-admin
- bashcomp_alias ${PN}-admin django-admin.py
-
- distutils-r1_python_install_all
-}
-
-pkg_postinst() {
- optfeature_header "Additional Backend support can be enabled via:"
- optfeature "MySQL backend support" dev-python/mysqlclient
- optfeature "PostgreSQL backend support" dev-python/psycopg:2
- optfeature_header
- optfeature "GEO Django" "sci-libs/gdal[geos]"
- optfeature "Memcached support" dev-python/pylibmc dev-python/python-memcached
- optfeature "ImageField Support" dev-python/pillow
- optfeature "Password encryption" dev-python/bcrypt
- optfeature "High-level abstractions for Django forms" dev-python/django-formtools
-}
diff --git a/dev-python/django/django-2.2.28.ebuild b/dev-python/django/django-2.2.28.ebuild
index cc0ee416d6fd..08c29e434633 100644
--- a/dev-python/django/django-2.2.28.ebuild
+++ b/dev-python/django/django-2.2.28.ebuild
@@ -27,7 +27,7 @@ LICENSE+=" Apache-2.0"
# admin icons, jquery, xregexp.js
LICENSE+=" MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
IUSE="doc sqlite test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/django/django-3.2.12.ebuild b/dev-python/django/django-3.2.12.ebuild
deleted file mode 100644
index 5fec01e32a7a..000000000000
--- a/dev-python/django/django-3.2.12.ebuild
+++ /dev/null
@@ -1,101 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{7,8,9,10} )
-PYTHON_REQ_USE='sqlite?,threads(+)'
-
-inherit bash-completion-r1 distutils-r1 optfeature verify-sig
-
-MY_P=${P^}
-DESCRIPTION="High-level Python web framework"
-HOMEPAGE="https://www.djangoproject.com/ https://pypi.org/project/Django/"
-SRC_URI="
- https://media.djangoproject.com/releases/$(ver_cut 1-2)/${MY_P}.tar.gz
- verify-sig? ( https://media.djangoproject.com/pgp/${MY_P}.checksum.txt )"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="BSD"
-# admin fonts: Roboto (media-fonts/roboto)
-LICENSE+=" Apache-2.0"
-# admin icons, jquery, xregexp.js
-LICENSE+=" MIT"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv ~sparc x86 ~x64-macos"
-IUSE="doc sqlite test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/asgiref-3.3.4[${PYTHON_USEDEP}]
- dev-python/pytz[${PYTHON_USEDEP}]
- >=dev-python/sqlparse-0.2.2[${PYTHON_USEDEP}]"
-BDEPEND="
- test? (
- $(python_gen_impl_dep sqlite)
- ${RDEPEND}
- dev-python/docutils[${PYTHON_USEDEP}]
- dev-python/jinja[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pillow[webp,${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- dev-python/selenium[${PYTHON_USEDEP}]
- dev-python/tblib[${PYTHON_USEDEP}]
- sys-devel/gettext
- !!<dev-python/ipython-7.21.0-r1
- !!=dev-python/ipython-7.22.0-r0
- )
- verify-sig? ( >=sec-keys/openpgp-keys-django-20201201 )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-3.1-bashcomp.patch
-)
-
-distutils_enable_sphinx docs --no-autodoc
-
-VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/django.asc
-
-src_unpack() {
- if use verify-sig; then
- cd "${DISTDIR}" || die
- verify-sig_verify_signed_checksums \
- "${MY_P}.checksum.txt" sha256 "${MY_P}.tar.gz"
- cd "${WORKDIR}" || die
- fi
-
- default
-}
-
-python_prepare_all() {
- # Fails because of warnings
- sed -i 's/test_dumpdata_proxy_with_concrete/_&/' tests/fixtures/tests.py
-
- distutils-r1_python_prepare_all
-}
-
-python_test() {
- # Tests have non-standard assumptions about PYTHONPATH,
- # and don't work with ${BUILD_DIR}/lib.
- PYTHONPATH=. "${EPYTHON}" tests/runtests.py --settings=test_sqlite -v2 ||
- die "Tests fail with ${EPYTHON}"
-}
-
-python_install_all() {
- newbashcomp extras/django_bash_completion ${PN}-admin
- bashcomp_alias ${PN}-admin django-admin.py
-
- distutils-r1_python_install_all
-}
-
-pkg_postinst() {
- optfeature_header "Additional Backend support can be enabled via:"
- optfeature "MySQL backend support" dev-python/mysqlclient
- optfeature "PostgreSQL backend support" dev-python/psycopg:2
- optfeature_header
- optfeature "GEO Django" "sci-libs/gdal[geos]"
- optfeature "Memcached support" dev-python/pylibmc dev-python/python-memcached
- optfeature "ImageField Support" dev-python/pillow
- optfeature "Password encryption" dev-python/bcrypt
- optfeature "High-level abstractions for Django forms" dev-python/django-formtools
-}
diff --git a/dev-python/django/django-3.2.13.ebuild b/dev-python/django/django-3.2.13.ebuild
index 867ab2a893a8..90d72e839354 100644
--- a/dev-python/django/django-3.2.13.ebuild
+++ b/dev-python/django/django-3.2.13.ebuild
@@ -27,7 +27,7 @@ LICENSE+=" Apache-2.0"
# admin icons, jquery, xregexp.js
LICENSE+=" MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv ~sparc x86 ~x64-macos"
IUSE="doc sqlite test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/django/django-4.0.2.ebuild b/dev-python/django/django-4.0.2.ebuild
deleted file mode 100644
index 4bc7d90d764a..000000000000
--- a/dev-python/django/django-4.0.2.ebuild
+++ /dev/null
@@ -1,103 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{7,8,9,10} )
-PYTHON_REQ_USE='sqlite?,threads(+)'
-
-inherit bash-completion-r1 distutils-r1 optfeature verify-sig
-
-MY_P=${P^}
-DESCRIPTION="High-level Python web framework"
-HOMEPAGE="https://www.djangoproject.com/ https://pypi.org/project/Django/"
-SRC_URI="
- https://media.djangoproject.com/releases/$(ver_cut 1-2)/${MY_P}.tar.gz
- verify-sig? ( https://media.djangoproject.com/pgp/${MY_P}.checksum.txt )"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="BSD"
-# admin fonts: Roboto (media-fonts/roboto)
-LICENSE+=" Apache-2.0"
-# admin icons, jquery, xregexp.js
-LICENSE+=" MIT"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv ~sparc x86 ~x64-macos"
-IUSE="doc sqlite test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/asgiref-3.4.1[${PYTHON_USEDEP}]
- >=dev-python/sqlparse-0.2.2[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/backports-zoneinfo[${PYTHON_USEDEP}]
- ' python3_8 pypy3)"
-BDEPEND="
- test? (
- $(python_gen_impl_dep sqlite)
- ${RDEPEND}
- dev-python/docutils[${PYTHON_USEDEP}]
- dev-python/jinja[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pillow[webp,${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- dev-python/selenium[${PYTHON_USEDEP}]
- dev-python/tblib[${PYTHON_USEDEP}]
- sys-devel/gettext
- !!<dev-python/ipython-7.21.0-r1
- !!=dev-python/ipython-7.22.0-r0
- )
- verify-sig? ( >=sec-keys/openpgp-keys-django-20201201 )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-4.0-bashcomp.patch
-)
-
-distutils_enable_sphinx docs --no-autodoc
-
-VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/django.asc
-
-src_unpack() {
- if use verify-sig; then
- cd "${DISTDIR}" || die
- verify-sig_verify_signed_checksums \
- "${MY_P}.checksum.txt" sha256 "${MY_P}.tar.gz"
- cd "${WORKDIR}" || die
- fi
-
- default
-}
-
-python_prepare_all() {
- # Fails because of warnings
- sed -i 's/test_dumpdata_proxy_with_concrete/_&/' tests/fixtures/tests.py
-
- distutils-r1_python_prepare_all
-}
-
-python_test() {
- # Tests have non-standard assumptions about PYTHONPATH,
- # and don't work with ${BUILD_DIR}/lib.
- PYTHONPATH=. "${EPYTHON}" tests/runtests.py --settings=test_sqlite -v2 ||
- die "Tests fail with ${EPYTHON}"
-}
-
-python_install_all() {
- newbashcomp extras/django_bash_completion ${PN}-admin
- bashcomp_alias ${PN}-admin django-admin.py
-
- distutils-r1_python_install_all
-}
-
-pkg_postinst() {
- optfeature_header "Additional Backend support can be enabled via:"
- optfeature "MySQL backend support" dev-python/mysqlclient
- optfeature "PostgreSQL backend support" dev-python/psycopg:2
- optfeature_header
- optfeature "GEO Django" "sci-libs/gdal[geos]"
- optfeature "Memcached support" dev-python/pylibmc dev-python/python-memcached
- optfeature "ImageField Support" dev-python/pillow
- optfeature "Password encryption" dev-python/bcrypt
- optfeature "High-level abstractions for Django forms" dev-python/django-formtools
-}
diff --git a/dev-python/django/django-4.0.3.ebuild b/dev-python/django/django-4.0.3.ebuild
deleted file mode 100644
index 4ec710a6c224..000000000000
--- a/dev-python/django/django-4.0.3.ebuild
+++ /dev/null
@@ -1,105 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{7,8,9,10} )
-PYTHON_REQ_USE='sqlite?,threads(+)'
-
-inherit bash-completion-r1 distutils-r1 optfeature verify-sig
-
-MY_P=${P^}
-DESCRIPTION="High-level Python web framework"
-HOMEPAGE="https://www.djangoproject.com/ https://pypi.org/project/Django/"
-SRC_URI="
- https://media.djangoproject.com/releases/$(ver_cut 1-2)/${MY_P}.tar.gz
- verify-sig? ( https://media.djangoproject.com/pgp/${MY_P}.checksum.txt )"
-S="${WORKDIR}/${MY_P}"
-
-LICENSE="BSD"
-# admin fonts: Roboto (media-fonts/roboto)
-LICENSE+=" Apache-2.0"
-# admin icons, jquery, xregexp.js
-LICENSE+=" MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
-IUSE="doc sqlite test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/asgiref-3.4.1[${PYTHON_USEDEP}]
- >=dev-python/sqlparse-0.2.2[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/backports-zoneinfo[${PYTHON_USEDEP}]
- ' 3.8)
-"
-BDEPEND="
- test? (
- $(python_gen_impl_dep sqlite)
- ${RDEPEND}
- dev-python/docutils[${PYTHON_USEDEP}]
- dev-python/jinja[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- dev-python/pillow[webp,${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- dev-python/selenium[${PYTHON_USEDEP}]
- dev-python/tblib[${PYTHON_USEDEP}]
- sys-devel/gettext
- !!<dev-python/ipython-7.21.0-r1
- !!=dev-python/ipython-7.22.0-r0
- )
- verify-sig? ( >=sec-keys/openpgp-keys-django-20201201 )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-4.0-bashcomp.patch
-)
-
-distutils_enable_sphinx docs --no-autodoc
-
-VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/django.asc
-
-src_unpack() {
- if use verify-sig; then
- cd "${DISTDIR}" || die
- verify-sig_verify_signed_checksums \
- "${MY_P}.checksum.txt" sha256 "${MY_P}.tar.gz"
- cd "${WORKDIR}" || die
- fi
-
- default
-}
-
-src_prepare() {
- # TODO: this suddenly started failing
- sed -i -e 's:test_custom_fields:_&:' tests/inspectdb/tests.py || die
-
- distutils-r1_src_prepare
-}
-
-python_test() {
- # Tests have non-standard assumptions about PYTHONPATH,
- # and don't work with ${BUILD_DIR}/lib.
- PYTHONPATH=. "${EPYTHON}" tests/runtests.py --settings=test_sqlite -v2 ||
- die "Tests fail with ${EPYTHON}"
-}
-
-python_install_all() {
- newbashcomp extras/django_bash_completion ${PN}-admin
- bashcomp_alias ${PN}-admin django-admin.py
-
- distutils-r1_python_install_all
-}
-
-pkg_postinst() {
- optfeature_header "Additional Backend support can be enabled via:"
- optfeature "MySQL backend support" dev-python/mysqlclient
- optfeature "PostgreSQL backend support" dev-python/psycopg:2
- optfeature_header
- optfeature "GEO Django" "sci-libs/gdal[geos]"
- optfeature "Memcached support" dev-python/pylibmc dev-python/python-memcached
- optfeature "ImageField Support" dev-python/pillow
- optfeature "Password encryption" dev-python/bcrypt
- optfeature "High-level abstractions for Django forms" dev-python/django-formtools
-}
diff --git a/dev-python/django/django-4.0.4.ebuild b/dev-python/django/django-4.0.4.ebuild
index 6f0e550b5fd5..a6600646aa6b 100644
--- a/dev-python/django/django-4.0.4.ebuild
+++ b/dev-python/django/django-4.0.4.ebuild
@@ -27,7 +27,7 @@ LICENSE+=" Apache-2.0"
# admin icons, jquery, xregexp.js
LICENSE+=" MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv ~sparc x86 ~x64-macos"
IUSE="doc sqlite test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/dotmap/Manifest b/dev-python/dotmap/Manifest
new file mode 100644
index 000000000000..e144385b3806
--- /dev/null
+++ b/dev-python/dotmap/Manifest
@@ -0,0 +1,2 @@
+DIST dotmap-1.3.26.tar.gz 12070 BLAKE2B 28023eebf6437530f3f1ee541f138eaffbc632f441bc9698e2329ab8d9894510e04122f797a77416cbe498fde5092f5c0a821615c4e9fbd1959c75cce94f7cfc SHA512 5083fec8f9e909f68f0fa12db8709ca064d0fd134230f6d0fe315c66613983290bf7de35db29d805013b13024babf250e9110308817265d4e70b9dea5b9a132f
+DIST dotmap-1.3.28.tar.gz 12097 BLAKE2B c172a3c4b8f4b10e2351d342cf38eed1ea8cac510eb4a66fa7df5660628fcf57056083af519f8360e78dce1d494185d2b09edfc7a4e7e604af658af15335fcc3 SHA512 9d16b1886884464cbe9df5d0af6426c869969767b9fee527cf108551d8f0d5d81f479d429350e31c89b9db2d3cc6d395945321f56688850dca7bfa2bbf273451
diff --git a/dev-python/dotmap/dotmap-1.3.26.ebuild b/dev-python/dotmap/dotmap-1.3.26.ebuild
new file mode 100644
index 000000000000..f12b076956d2
--- /dev/null
+++ b/dev-python/dotmap/dotmap-1.3.26.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2022 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_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Dot access dictionary with dynamic hierarchy creation and ordered iteration"
+HOMEPAGE="
+ https://github.com/drgrib/dotmap
+ https://pypi.org/project/dotmap/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~amd64"
+SLOT="0"
+
+distutils_enable_tests unittest
diff --git a/dev-python/dotmap/dotmap-1.3.28.ebuild b/dev-python/dotmap/dotmap-1.3.28.ebuild
new file mode 100644
index 000000000000..f12b076956d2
--- /dev/null
+++ b/dev-python/dotmap/dotmap-1.3.28.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2022 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_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Dot access dictionary with dynamic hierarchy creation and ordered iteration"
+HOMEPAGE="
+ https://github.com/drgrib/dotmap
+ https://pypi.org/project/dotmap/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${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
new file mode 100644
index 000000000000..6e6b958dd264
--- /dev/null
+++ b/dev-python/dotmap/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>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/doubles/Manifest b/dev-python/doubles/Manifest
new file mode 100644
index 000000000000..b30b10de35d2
--- /dev/null
+++ b/dev-python/doubles/Manifest
@@ -0,0 +1 @@
+DIST doubles-1.5.3.tar.gz 40297 BLAKE2B 9b1e29ad0a35e0b1d65543dacefa18428741f97e15963e964b59dd7fd6bf65dccebb2e08c73d49778904cdc08d1b38612d98948a00246849a6a10f0964842056 SHA512 858fca2bd93bf78df264c61bdda32fb2afee7125f5578b7c361695638abb4b7adc2793d62adbbc7f5a9a550672747048e6df6b7c9c60292a70fb613b89ad88e4
diff --git a/dev-python/doubles/doubles-1.5.3.ebuild b/dev-python/doubles/doubles-1.5.3.ebuild
new file mode 100644
index 000000000000..ac9b54224777
--- /dev/null
+++ b/dev-python/doubles/doubles-1.5.3.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Test doubles for Python"
+HOMEPAGE="https://github.com/uber/doubles"
+SRC_URI="https://github.com/uber/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
+BDEPEND="test? ( dev-python/nose )"
+
+DOCS=( CHANGES.rst CONTRIBUTING.rst README.rst )
+
+distutils_enable_sphinx docs/source dev-python/sphinx_rtd_theme
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ test/allow_test.py::TestTwice::test_fails_when_called_three_times
+ test/allow_test.py::TestOnce::test_fails_when_called_two_times
+ test/allow_test.py::TestZeroTimes::test_fails_when_called_once_times
+ test/allow_test.py::TestExactly::test_called_with_zero
+ test/allow_test.py::TestExactly::test_fails_when_called_more_than_expected_times
+ test/allow_test.py::TestAtMost::test_fails_when_called_more_than_at_most_times
+ test/class_double_test.py::TestClassDouble::test_raises_when_stubbing_instance_methods
+ test/expect_test.py::TestExpect::test_with_args_validator_not_called
+ test/expect_test.py::TestExpect::test_raises_if_an_expected_method_call_without_args_is_not_made
+ test/expect_test.py::TestExpect::test_raises_if_an_expected_method_call_with_args_is_not_made
+ test/expect_test.py::TestExpect::test_raises_if_an_expected_method_call_with_default_args_is_not_made
+ test/expect_test.py::TestTwice::test_fails_when_called_once
+ test/expect_test.py::TestTwice::test_fails_when_called_three_times
+ test/expect_test.py::TestOnce::test_fails_when_called_two_times
+ test/expect_test.py::TestExactly::test_fails_when_called_less_than_expected_times
+ test/expect_test.py::TestExactly::test_fails_when_called_more_than_expected_times
+ test/expect_test.py::TestAtLeast::test_fails_when_called_less_than_at_least_times
+ test/expect_test.py::TestAtMost::test_fails_when_called_more_than_at_most_times
+ test/expect_test.py::Test__call__::test_unsatisfied_expectation
+ test/expect_test.py::Test__enter__::test_unsatisfied_expectation
+ test/expect_test.py::Test__exit__::test_unsatisfied_expectation
+ test/object_double_test.py::TestObjectDouble::test_raises_when_stubbing_nonexistent_methods
+ test/object_double_test.py::TestObjectDouble::test_raises_when_stubbing_noncallable_attributes
+ test/pytest_test.py
+)
+
+python_prepare() {
+ # attempts to import "coverage"
+ echo "pytest_plugins = ['doubles.pytest_plugin']" > test/conftest.py || die
+
+ # "Distribution information not found. Run 'setup.py develop'"
+ sed "s/pkg_resources.get_distribution.*/'${PV}'/" -i docs/source/conf.py || die
+}
+
+python_test() {
+ epytest -p no:doubles test
+}
diff --git a/dev-python/doubles/metadata.xml b/dev-python/doubles/metadata.xml
new file mode 100644
index 000000000000..29562d9e2469
--- /dev/null
+++ b/dev-python/doubles/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/uber/doubles/issues</bugs-to>
+ <remote-id type="pypi">doubles</remote-id>
+ <remote-id type="github">uber/doubles</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/doxypypy/Manifest b/dev-python/doxypypy/Manifest
new file mode 100644
index 000000000000..2b5d6c78fe9d
--- /dev/null
+++ b/dev-python/doxypypy/Manifest
@@ -0,0 +1 @@
+DIST doxypypy-0.8.8.6_p20210405.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.ebuild
new file mode 100644
index 000000000000..4d0bd9abb825
--- /dev/null
+++ b/dev-python/doxypypy/doxypypy-0.8.8.6_p20210405.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+inherit distutils-r1
+
+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/${COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${COMMIT}"
+
+RESTRICT="!test? ( test )"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/chardet[${PYTHON_USEDEP}]"
+BDEPEND="test? ( dev-python/zope-interface[${PYTHON_USEDEP}] )"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ distutils-r1_src_prepare
+ # These files fail to byte-compille (UTF-LE?)
+ # ValueError: source code string cannot contain null bytes
+ # Matches pypy tarball
+ rm doxypypy/test/sample_utf* || die
+ sed -i '/test_utf/,+5d' doxypypy/test/test_doxypypy.py || die
+}
diff --git a/dev-python/doxypypy/metadata.xml b/dev-python/doxypypy/metadata.xml
new file mode 100644
index 000000000000..497d90dbdb67
--- /dev/null
+++ b/dev-python/doxypypy/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">Feneric/doxypypy</remote-id>
+ <remote-id type="pypi">doxypypy</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/dropbox-sdk-python/Manifest b/dev-python/dropbox-sdk-python/Manifest
new file mode 100644
index 000000000000..b21c57ee43ae
--- /dev/null
+++ b/dev-python/dropbox-sdk-python/Manifest
@@ -0,0 +1 @@
+DIST dropbox-sdk-python-11.28.0.tar.gz 1155409 BLAKE2B b4b664b0f3c0ebaef23a4878d5331293f015b23fd8c5ed4f691dd309a98a21b82f67bc4f7cd0eced446d055808d17d6871088b1126499e340f34b15e7d6a013f SHA512 9776a75962d7370ea38b50d05801b662884086ccf865288f00cb0941143f41f8d9ab0947676cd403acdc92cd08fce519bf9f1471da9ccc64f0dd7278487be174
diff --git a/dev-python/dropbox-sdk-python/dropbox-sdk-python-11.28.0.ebuild b/dev-python/dropbox-sdk-python/dropbox-sdk-python-11.28.0.ebuild
new file mode 100644
index 000000000000..d09c9cbd6f5b
--- /dev/null
+++ b/dev-python/dropbox-sdk-python/dropbox-sdk-python-11.28.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="The offical Dropbox SDK for Python"
+HOMEPAGE="https://www.dropbox.com/developers"
+SRC_URI="https://github.com/dropbox/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+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}]
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # Don't run tests via setup.py pytest
+ sed -i -e "/'pytest-runner.*',/d" setup.py || die
+ # this is wrong
+ sed -i -e "s/^import mock$/from unittest import mock/" test/unit/test_dropbox_unit.py || die
+
+ # disable tests that need SCOPED_USER_DROPBOX_TOKEN
+ mv test/integration/test_dropbox.py test/integration/_test_dropbox.py || die
+ sed -i -e "s/\(class\) \(TestClient\)/\\1 _\\2/
+ s/test_NoRedirect_whole_flow/_&/" test/unit/test_dropbox_unit.py || die
+
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/dropbox-sdk-python/metadata.xml b/dev-python/dropbox-sdk-python/metadata.xml
new file mode 100644
index 000000000000..175daf4bd4f7
--- /dev/null
+++ b/dev-python/dropbox-sdk-python/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>ceamac.paragon@gmail.com</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/etcd3/Manifest b/dev-python/etcd3/Manifest
new file mode 100644
index 000000000000..5ffccd96749b
--- /dev/null
+++ b/dev-python/etcd3/Manifest
@@ -0,0 +1 @@
+DIST etcd3-0.12.0.tar.gz 63926 BLAKE2B adf6df5f1ced114387572c6a3361c7c57298b27be173fb91416ff989f7a252c81c1fcbe0bbbda3815102ad06fb2053d0585517ec75457a54e9617e61c6b53969 SHA512 d31cf0059036af91b489d6197fcda71314b5dcd068b6095212e1fec39d55b0bc4e943da3fdda6131fd1a6d48741334f5659e470c3284f0c6ab1a39d662d7d78a
diff --git a/dev-python/etcd3/etcd3-0.12.0.ebuild b/dev-python/etcd3/etcd3-0.12.0.ebuild
new file mode 100644
index 000000000000..ee23cd427f43
--- /dev/null
+++ b/dev-python/etcd3/etcd3-0.12.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_DESELECT=(
+ tests/test_etcd3.py::TestClient::test_compact
+ tests/test_etcd3.py::TestClient::test_user_pwd_auth
+ tests/test_etcd3.py::TestEtcd3
+ tests/test_etcd3.py::TestAlarms
+)
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python client for the etcd API v3"
+HOMEPAGE="
+ https://pypi.org/project/etcd3/
+ https://github.com/kragniz/python-etcd3
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-db/etcd
+ >=dev-python/grpcio-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/tenacity-5.0.2[${PYTHON_USEDEP}]
+ >=dev-python/protobuf-python-3.6.1[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/pyyaml-5.1[${PYTHON_USEDEP}]
+ >=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
+ dev-python/grpcio-tools[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/pifpaf[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/etcd3/metadata.xml b/dev-python/etcd3/metadata.xml
new file mode 100644
index 000000000000..b15a54b02229
--- /dev/null
+++ b/dev-python/etcd3/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="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">etcd3</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/etcd3gw/Manifest b/dev-python/etcd3gw/Manifest
new file mode 100644
index 000000000000..03bc566fcf29
--- /dev/null
+++ b/dev-python/etcd3gw/Manifest
@@ -0,0 +1,2 @@
+DIST etcd3gw-1.0.0.tar.gz 27035 BLAKE2B 5ad3dfb1b08388f4d73fc9e857d7e7610672cfde8aa0de55eb7bf6a50dd58a937fbabea19c31ebef5a9f7181f96447ad1d381e2724f6a10be589447fcedbaec1 SHA512 d1aac81ebd221277c03bbb0f5dd76bb7c99a52132113959cf397fd44a598ade77300d506e2e5cfa04864cfd6a16f40ea8ddd350a4763a30609d8d922224c78ac
+DIST etcd3gw-1.0.1.tar.gz 27309 BLAKE2B dbc2c4cc76b6602d5d631609fed49dd556c86f763d4d59f14d7d514f0e7fb43ea94e5841883b9eacfa599ec0c7bb09797496017b51b23b362dd3b1bfd42b447e SHA512 d90b69afd64f023cd16e5f9ac31c61e285887db9f364ebcf176dae56b02e4e9f7b05713d358cebde3a3d8769896a768499f99945e34d015a73634251c28b31fe
diff --git a/dev-python/etcd3gw/etcd3gw-1.0.0.ebuild b/dev-python/etcd3gw/etcd3gw-1.0.0.ebuild
new file mode 100644
index 000000000000..ee3687a4f3dc
--- /dev/null
+++ b/dev-python/etcd3gw/etcd3gw-1.0.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A python client for etcd3 grpc-gateway v3 API"
+HOMEPAGE="https://pypi.org/project/etcd3gw/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.20.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+ >=dev-python/futurist-0.16.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/subunit-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/testrepository-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/pifpaf-0.10.0[${PYTHON_USEDEP}]
+ >=dev-python/nose-1.3.7[${PYTHON_USEDEP}]
+ >=dev-python/pytest-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.15.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/etcd3gw/etcd3gw-1.0.1.ebuild b/dev-python/etcd3gw/etcd3gw-1.0.1.ebuild
new file mode 100644
index 000000000000..ea387fd73fdb
--- /dev/null
+++ b/dev-python/etcd3gw/etcd3gw-1.0.1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A python client for etcd3 grpc-gateway v3 API"
+HOMEPAGE="
+ https://opendev.org/openstack/etcd3gw
+ https://pypi.org/project/etcd3gw/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.20.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+ >=dev-python/futurist-0.16.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/subunit-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/testrepository-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/pifpaf-0.10.0[${PYTHON_USEDEP}]
+ >=dev-python/nose-1.3.7[${PYTHON_USEDEP}]
+ >=dev-python/pytest-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.15.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/etcd3gw/metadata.xml b/dev-python/etcd3gw/metadata.xml
new file mode 100644
index 000000000000..609bb40f302c
--- /dev/null
+++ b/dev-python/etcd3gw/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="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">etcd3gw</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/exifread/Manifest b/dev-python/exifread/Manifest
new file mode 100644
index 000000000000..3a4f8cbc30f5
--- /dev/null
+++ b/dev-python/exifread/Manifest
@@ -0,0 +1 @@
+DIST exifread-2.3.2.tar.gz 42796 BLAKE2B 0dca89f484a5f21ee2510af6ab069ba76dfeb4a31bc79261951ef062bb695f6f1adc6c7378ecbdf0e1a46540ec767555cb46bb77ab39b002199ac490ca58fd6b SHA512 d37cc6a70793aa894947b1b24f973ff2f9c15ba3dfe99674c5ea61e5a469b259035fc48a1d2c4d4d7021289bad431e57a4e137e2d4feb0c5352b0b162e61376a
diff --git a/dev-python/exifread/exifread-2.3.2.ebuild b/dev-python/exifread/exifread-2.3.2.ebuild
new file mode 100644
index 000000000000..b2a02b0f80bc
--- /dev/null
+++ b/dev-python/exifread/exifread-2.3.2.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=bdepend
+MY_PN="exif-py"
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Easy to use Python module to extract Exif metadata from tiff and jpeg files"
+HOMEPAGE="
+ https://pypi.org/project/ExifRead/
+ https://github.com/ianare/exif-py
+"
+SRC_URI="https://github.com/ianare/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
diff --git a/dev-python/exifread/metadata.xml b/dev-python/exifread/metadata.xml
new file mode 100644
index 000000000000..c9b046a27a64
--- /dev/null
+++ b/dev-python/exifread/metadata.xml
@@ -0,0 +1,14 @@
+<?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/ianare/exif-py/issues</bugs-to>
+ <remote-id type="github">ianare/exif-py</remote-id>
+ <remote-id type="pypi">exifread</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/factory_boy/Manifest b/dev-python/factory_boy/Manifest
new file mode 100644
index 000000000000..4d792cb42e95
--- /dev/null
+++ b/dev-python/factory_boy/Manifest
@@ -0,0 +1,2 @@
+DIST factory_boy-3.2.0.tar.gz 141428 BLAKE2B e8f25b84f31c27af5450af3dadae2ca7af41a8e0a0c71e6a88227404ac1082418059fae43cab57878e6373e3ee981d188098f01ff1001abed34e51e7826b5be5 SHA512 1e9736491229aa1648cfe9956c157738f5b9ecfd43e39a2f1d299e3c018763518f04b9bde7b19c1c7dbef48e5a93db818f1010068be541b02453313f71bc37c0
+DIST factory_boy-3.2.1.tar.gz 141947 BLAKE2B f7668e945c653276fdf8c28aca728e4dd0aa24e980868a22e116cdb6395170f37f60d9b021c915586681b93d84a50f254b6d4a0b8f75e15991fac91aa4b17e0c SHA512 45f88970fa2adf15160d489335d7843ebf78178ae619e6b1ad2cc2e3af8e6c14763cf1afe21bc4e66d1d7196458d8045862db4d5878d5cfc1f2aa658ccba1812
diff --git a/dev-python/factory_boy/factory_boy-3.2.0.ebuild b/dev-python/factory_boy/factory_boy-3.2.0.ebuild
new file mode 100644
index 000000000000..e16ccaa96124
--- /dev/null
+++ b/dev-python/factory_boy/factory_boy-3.2.0.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/factory_boy-3.2.1.ebuild b/dev-python/factory_boy/factory_boy-3.2.1.ebuild
new file mode 100644
index 000000000000..89bae3788fb3
--- /dev/null
+++ b/dev-python/factory_boy/factory_boy-3.2.1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..4e686ea06734
--- /dev/null
+++ b/dev-python/factory_boy/metadata.xml
@@ -0,0 +1,26 @@
+<?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
new file mode 100644
index 000000000000..366fc02d739f
--- /dev/null
+++ b/dev-python/fake-useragent/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..19ae5ebb2524
--- /dev/null
+++ b/dev-python/fake-useragent/fake-useragent-0.1.11-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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
new file mode 100644
index 000000000000..b90481bc45d4
--- /dev/null
+++ b/dev-python/fake-useragent/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">
+ <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/fastavro/Manifest b/dev-python/fastavro/Manifest
new file mode 100644
index 000000000000..e031979415e9
--- /dev/null
+++ b/dev-python/fastavro/Manifest
@@ -0,0 +1,2 @@
+DIST fastavro-1.4.10.tar.gz 733839 BLAKE2B 90bd57d5da0575a4b321dd31a3152531cce2a36626c51261e390b4f5f32d82fe3b1ea41ddd5e5885618ec5cb849a9a3620a8caf745c7782ecc2b3496bdf88998 SHA512 f3a474a56ef79dd54b71f18961520489fa848548fbbaac2c18d87c933d6c263762f73c56d9540b18ceb221d0184398ae085bfecd1c4cdb7236fd9160be94003b
+DIST fastavro-1.4.7.tar.gz 728167 BLAKE2B 91eadad0fdcced3c0dd88456f88ac4f73f4eb07731a527cb70f89d7f3b45eec7688c776ffb221734c5495ed74bdd69946b1c1370fb92f46db9f85b0d0e26b706 SHA512 846c7aec326f212e8c7f707dfba52d06ee757d218037f0011e1f7fe158b454862cb27bf78a7bfcef8fe54717bd83fd7c7c09f71a6dff654037476537d50fcc80
diff --git a/dev-python/fastavro/fastavro-1.4.10.ebuild b/dev-python/fastavro/fastavro-1.4.10.ebuild
new file mode 100644
index 000000000000..e3ed603db01b
--- /dev/null
+++ b/dev-python/fastavro/fastavro-1.4.10.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# https://github.com/fastavro/fastavro/issues/558
+EPYTEST_DESELECT=(
+ tests/test_fastavro.py::test_cython_python
+ tests/test_main_cli.py::test_cli_record_output
+ tests/test_main_cli.py::test_cli_stream_input
+ tests/test_main_cli.py::test_cli_arg_metadata
+ tests/test_main_cli.py::test_cli_arg_schema
+ tests/test_main_cli.py::test_cli_arg_codecs
+)
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Fast Avro for Python"
+HOMEPAGE="
+ https://github.com/fastavro/fastavro
+ https://pypi.org/project/fastavro/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=""
+DEPEND="
+ ${RDEPEND}
+ dev-python/cython[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pandas[${PYTHON_USEDEP}]
+ dev-python/snappy[${PYTHON_USEDEP}]
+ dev-python/zstandard[${PYTHON_USEDEP}]
+ dev-python/lz4[${PYTHON_USEDEP}]
+ )
+"
+
+src_configure() {
+ export FASTAVRO_USE_CYTHON=1
+ default
+}
+
+distutils_enable_tests pytest
diff --git a/dev-python/fastavro/fastavro-1.4.7.ebuild b/dev-python/fastavro/fastavro-1.4.7.ebuild
new file mode 100644
index 000000000000..bfed77baeb05
--- /dev/null
+++ b/dev-python/fastavro/fastavro-1.4.7.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_DESELECT=(
+ tests/test_fastavro.py::test_cython_python
+ tests/test_main_cli.py::test_cli_record_output
+ tests/test_main_cli.py::test_cli_stream_input
+ tests/test_main_cli.py::test_cli_arg_metadata
+ tests/test_main_cli.py::test_cli_arg_schema
+ tests/test_main_cli.py::test_cli_arg_codecs
+)
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Fast Avro for Python"
+HOMEPAGE="
+ https://github.com/fastavro/fastavro
+ https://pypi.org/project/fastavro/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=""
+DEPEND="
+ ${RDEPEND}
+ dev-python/cython[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pandas[${PYTHON_USEDEP}]
+ dev-python/snappy[${PYTHON_USEDEP}]
+ dev-python/zstandard[${PYTHON_USEDEP}]
+ dev-python/lz4[${PYTHON_USEDEP}]
+ )
+"
+
+FASTAVRO_USE_CYTHON=1
+
+distutils_enable_tests pytest
diff --git a/dev-python/fastavro/metadata.xml b/dev-python/fastavro/metadata.xml
new file mode 100644
index 000000000000..4e9c12ab6a0f
--- /dev/null
+++ b/dev-python/fastavro/metadata.xml
@@ -0,0 +1,16 @@
+<?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">
+Because the Apache Python avro package is written in pure Python, it is relatively slow. In one test case, it takes about 14 seconds to iterate through a file of 10,000 records. By comparison, the JAVA avro SDK reads the same file in 1.9 seconds.
+The fastavro library was written to offer performance comparable to the Java library. With regular CPython, fastavro uses C extensions which allow it to iterate the same 10,000 record file in 1.7 seconds. With PyPy, this drops to 1.5 seconds (to be fair, the JAVA benchmark is doing some extra JSON encoding/decoding).
+</longdescription>
+ <upstream>
+ <remote-id type="github">fastavro/fastavro</remote-id>
+ <remote-id type="pypi">fastavro</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/fchroot/Manifest b/dev-python/fchroot/Manifest
new file mode 100644
index 000000000000..8b4e0d3ad646
--- /dev/null
+++ b/dev-python/fchroot/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..faf1d8389674
--- /dev/null
+++ b/dev-python/fchroot/fchroot-0.1.2.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,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/fchroot/metadata.xml b/dev-python/fchroot/metadata.xml
new file mode 100644
index 000000000000..5dd7771521ef
--- /dev/null
+++ b/dev-python/fchroot/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">fchroot</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/filecheck/Manifest b/dev-python/filecheck/Manifest
new file mode 100644
index 000000000000..b18f320d6122
--- /dev/null
+++ b/dev-python/filecheck/Manifest
@@ -0,0 +1 @@
+DIST filecheck-0.0.22.tar.gz 12529 BLAKE2B 2726ddd45343b161f6945908e9836e4105b0cded4392c9448e010ebf8ffed84e2d2a80da0103c1f55c1720c612a8692a49e55dcf809be0b345b58444d029f58d SHA512 6d9f3c017e861daec786159c24ea88b312143c2b05829dfe38cdc6b51aed58d7d4add64685adc231427400eae94b6a1e9d49340edd503a564997e3aa3f63834c
diff --git a/dev-python/filecheck/filecheck-0.0.22.ebuild b/dev-python/filecheck/filecheck-0.0.22.ebuild
new file mode 100644
index 000000000000..8e6b714a9abc
--- /dev/null
+++ b/dev-python/filecheck/filecheck-0.0.22.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python port of LLVM's FileCheck, flexible pattern matching file verifier"
+HOMEPAGE="https://pypi.org/project/filecheck/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
diff --git a/dev-python/filecheck/metadata.xml b/dev-python/filecheck/metadata.xml
new file mode 100644
index 000000000000..14ff115f0c7c
--- /dev/null
+++ b/dev-python/filecheck/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="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">filecheck</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/flask/flask-2.0.3.ebuild b/dev-python/flask/flask-2.0.3.ebuild
index 6c2709f422d3..961737ee3510 100644
--- a/dev-python/flask/flask-2.0.3.ebuild
+++ b/dev-python/flask/flask-2.0.3.ebuild
@@ -17,7 +17,7 @@ if [[ ${PV} == *9999* ]]; then
inherit git-r3
else
SRC_URI="mirror://pypi/${MY_P:0:1}/${MY_PN}/${MY_P}.tar.gz"
- KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~amd64 arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
S="${WORKDIR}/${MY_P}"
fi
diff --git a/dev-python/font-v/Manifest b/dev-python/font-v/Manifest
new file mode 100644
index 000000000000..3fea12de96f5
--- /dev/null
+++ b/dev-python/font-v/Manifest
@@ -0,0 +1,2 @@
+DIST font-v-1.0.5.tar.gz 4270200 BLAKE2B b94c4e0bff4c07efd50803068e0fc061c910b24f8ed2e70ae1b92d06d69db9d707b6665fdc2179eb80ae814c3b2ad913f58b1c5d4a7b9f81b40269cbb505cfb7 SHA512 070415a72deb8a35804ee548f745edf399fe01ae279ea9ca88f0d1231af77a37f38456726db73e8df26d324bd8e0159b2978a668984d9f8cc24794e2a045cb73
+DIST font-v-2.1.0.tar.gz 4268916 BLAKE2B 596673c62cd29d8428f97d6c6e7cbd9591e9f4f94cc719ee438f59bfeaa81adae4dc2ebb04464cfa42ec4ff71019cf658acbfe05d748f6b98383484d1aaaba4e SHA512 a619971b32828eb026499a8fed67e2c8eca063d1a868be7586f4b8b2802ede5740bef009bf8f4e9891793bf78239d1c0329ebc3bc96cecef59666fe9635ce978
diff --git a/dev-python/font-v/font-v-1.0.5.ebuild b/dev-python/font-v/font-v-1.0.5.ebuild
new file mode 100644
index 000000000000..9f676c48ed6d
--- /dev/null
+++ b/dev-python/font-v/font-v-1.0.5.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/font-v-2.1.0.ebuild b/dev-python/font-v/font-v-2.1.0.ebuild
new file mode 100644
index 000000000000..47d1518729cc
--- /dev/null
+++ b/dev-python/font-v/font-v-2.1.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Font version string reporting and modification library"
+HOMEPAGE="https://github.com/source-foundry/font-v"
+SRC_URI="https://github.com/source-foundry/font-v/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64"
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND="
+ dev-python/fonttools[${PYTHON_USEDEP}]
+ dev-python/GitPython[${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
new file mode 100644
index 000000000000..d4baa81fa582
--- /dev/null
+++ b/dev-python/font-v/metadata.xml
@@ -0,0 +1,14 @@
+<?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/fontFeatures/Manifest b/dev-python/fontFeatures/Manifest
new file mode 100644
index 000000000000..346796d56428
--- /dev/null
+++ b/dev-python/fontFeatures/Manifest
@@ -0,0 +1 @@
+DIST fontFeatures-1.6.4.tar.gz 1236722 BLAKE2B 0efcda0175de36d5e3d78c02fc6e835f3f39a14e6d050340d23dbf391ecf6cee9385822e8a005ed45d783bb467f25b087c1b473f4af1186dff98d7d9502c6b4e SHA512 fef775845b1d6dbd2b81a7f44429586ba63bdbcc3f2a5124e4dda41e8af62ac81b143e6d7e1443c3bb90e12f7f592b512bcd90bcbdc18e5eb07de195956cc196
diff --git a/dev-python/fontFeatures/fontFeatures-1.6.4.ebuild b/dev-python/fontFeatures/fontFeatures-1.6.4.ebuild
new file mode 100644
index 000000000000..477de329b80d
--- /dev/null
+++ b/dev-python/fontFeatures/fontFeatures-1.6.4.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python library for manipulating OpenType font features"
+HOMEPAGE="https://github.com/simoncozens/fontFeatures"
+SRC_URI="https://github.com/simoncozens/fontFeatures/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64"
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND="
+ dev-python/fs[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ >=dev-python/fonttools-4.28.0[${PYTHON_USEDEP}]
+ >=dev-python/glyphtools-0.7.0[${PYTHON_USEDEP}]
+ >=dev-python/beziers-0.1.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/youseedee-0.3.0[${PYTHON_USEDEP}]
+ >=dev-python/babelfont-3.0.0_alpha1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/fontFeatures/metadata.xml b/dev-python/fontFeatures/metadata.xml
new file mode 100644
index 000000000000..17f0c7151b08
--- /dev/null
+++ b/dev-python/fontFeatures/metadata.xml
@@ -0,0 +1,35 @@
+<?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/fontFeatures/issues</bugs-to>
+ <remote-id type="github">simoncozens/fontFeatures</remote-id>
+ <remote-id type="pypi">fontFeatures</remote-id>
+ </upstream>
+ <longdescription lang="en">
+fontFeatures library
+The purpose of this library is to provide a middle ground for representing features in a machine-manipulable format, kind of like the abstract syntax tree of a computer programmer. This is so that:
+
+ features can be represented in a structured human-readable and machine-readable way, analogous to the XML files of the Unified Font Object format.
+ features can be more directly authored by programs (such as font editors), rather than them having to output AFDKO feature file format.
+ features can be easily manipulated by programs - for example, features from two files merged together, or lookups moved between languages.
+
+Components
+
+fontFeatures consists of the following components:
+
+ fontFeatures itself, which is an abstract representation of the different layout operations inside a font.
+ fontFeatures.feaLib (included as a mixin) which translates between Adobe feature syntax and fontFeatures representation.
+ fontFeatures.ttLib, which translates between OpenType binary fonts and fontFeatures representation. (Currently only OTF -> fontFeatures is partially implemented; there is no fontFeatures -> OTF compiler yet.)
+ fontFeatures.fontDameLib which translate FontDame text files into fontFeatures objects.
+
+And the following utilities:
+
+ otf2fea: translates an OTF file into Adobe features syntax.
+ txt2fea: translates a FontDame txt file into Adobe features syntax.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-python/fontMath/Manifest b/dev-python/fontMath/Manifest
new file mode 100644
index 000000000000..e7080f555453
--- /dev/null
+++ b/dev-python/fontMath/Manifest
@@ -0,0 +1,2 @@
+DIST fontMath-0.8.1.tar.gz 29657 BLAKE2B b2a85d4fbce46b381488815df363c13c2d60f4527160bbdd0591c852df606bd1ada4945ec22935907b9b59a0f729a9c51fe2fa4f9531c3cf406bde11159193a2 SHA512 815f5521099dc55ceb215f0f7ea2dded7f8586a6b5ac8c7c99bd87f4f837feb21768c46473f21aa60ad8b0e85bbdabf2bf246f0c8fabab0b4a2d63b5d052f6a8
+DIST fontMath-0.9.1.tar.gz 30031 BLAKE2B 204ba6b7cd9e1b03030d8ad10106a8ff001b513bf8e253c661cd69ec71c63c513b404a2f9772c527b480c62cfd8c45db527481319e0fc6137281450341a19b8c SHA512 36d8db21b6bf1bb08a79297c97c85fe5bf019e4a4e051e6ee7b72fab26bcc1ce50b78d5b182f440eb800544c7c2263ffb673df6dd5edb5c255d5023e90af6838
diff --git a/dev-python/fontMath/fontMath-0.8.1.ebuild b/dev-python/fontMath/fontMath-0.8.1.ebuild
new file mode 100644
index 000000000000..43ce57125835
--- /dev/null
+++ b/dev-python/fontMath/fontMath-0.8.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/fontMath-0.9.1.ebuild b/dev-python/fontMath/fontMath-0.9.1.ebuild
new file mode 100644
index 000000000000..43ce57125835
--- /dev/null
+++ b/dev-python/fontMath/fontMath-0.9.1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..0b3c9b78a0fa
--- /dev/null
+++ b/dev-python/fontMath/metadata.xml
@@ -0,0 +1,14 @@
+<?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
new file mode 100644
index 000000000000..d9ee857ce8ac
--- /dev/null
+++ b/dev-python/fontParts/Manifest
@@ -0,0 +1,2 @@
+DIST fontParts-0.10.3.tar.gz 428107 BLAKE2B 448f0b85b0cd311d77021322fce704496bdc1cb0392217dd1192035d7af7b3bba5ef91145a5ae684981cd4b4cef1eb0b53d37a4e1d298fb1ca7d48a34ed0bdb6 SHA512 f05b6d3fe9ab8c0a904944444d6308a2ac2c3287a686ab6fcb5831048384eb540836b1337de0c9b2ea6ab9ce38f0c27218bcbb335ef4dbaaa333d5207bea8f5e
+DIST fontParts-0.10.4.tar.gz 428116 BLAKE2B c3f7dcab8f8825a118373d0ba282bbbdf86073c5f0862a6ef04b88b35152370687c625933b41e1bd4da615af0325d971178186e74d2005fd12f85035d36e2979 SHA512 35bf88b80edeef3a52c46e7b8bb991e99ee93bf6a65909b81368a5a514898f7fe60354134200c176761787e8927170c064997a4d16979585d3b8ddf9962f3afe
diff --git a/dev-python/fontParts/fontParts-0.10.3.ebuild b/dev-python/fontParts/fontParts-0.10.3.ebuild
new file mode 100644
index 000000000000..bec4e7b4d8d1
--- /dev/null
+++ b/dev-python/fontParts/fontParts-0.10.3.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="An API for interacting with the parts of fonts"
+HOMEPAGE="https://github.com/robotools/fontParts"
+SRC_URI="https://github.com/robotools/fontParts/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64 ~x86"
+LICENSE="MIT"
+SLOT="0"
+IUSE="test"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-python/booleanOperations-0.9.0[${PYTHON_USEDEP}]
+ >=dev-python/defcon-0.6.0[${PYTHON_USEDEP}]
+ >=dev-python/fontMath-0.4.8[${PYTHON_USEDEP}]
+ >=dev-python/fonttools-3.32.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="test? ( dev-python/fontPens[${PYTHON_USEDEP}] )"
+
+RESTRICT="!test? ( test )"
+
+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/fontParts-0.10.4.ebuild b/dev-python/fontParts/fontParts-0.10.4.ebuild
new file mode 100644
index 000000000000..bec4e7b4d8d1
--- /dev/null
+++ b/dev-python/fontParts/fontParts-0.10.4.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="An API for interacting with the parts of fonts"
+HOMEPAGE="https://github.com/robotools/fontParts"
+SRC_URI="https://github.com/robotools/fontParts/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64 ~x86"
+LICENSE="MIT"
+SLOT="0"
+IUSE="test"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-python/booleanOperations-0.9.0[${PYTHON_USEDEP}]
+ >=dev-python/defcon-0.6.0[${PYTHON_USEDEP}]
+ >=dev-python/fontMath-0.4.8[${PYTHON_USEDEP}]
+ >=dev-python/fonttools-3.32.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="test? ( dev-python/fontPens[${PYTHON_USEDEP}] )"
+
+RESTRICT="!test? ( test )"
+
+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
new file mode 100644
index 000000000000..f3fda0a51c35
--- /dev/null
+++ b/dev-python/fontParts/metadata.xml
@@ -0,0 +1,14 @@
+<?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
new file mode 100644
index 000000000000..332d1c31525d
--- /dev/null
+++ b/dev-python/fontPens/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..3018cbeab64e
--- /dev/null
+++ b/dev-python/fontPens/fontPens-0.2.4.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..2ccee4c348db
--- /dev/null
+++ b/dev-python/fontPens/metadata.xml
@@ -0,0 +1,14 @@
+<?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/futurist/Manifest b/dev-python/futurist/Manifest
new file mode 100644
index 000000000000..33baaef09237
--- /dev/null
+++ b/dev-python/futurist/Manifest
@@ -0,0 +1 @@
+DIST futurist-2.3.0.tar.gz 42993 BLAKE2B ace10473ee65dedfa33f021437e6d2e974e7e9acd7eb5c6ae6955b133d74376d0bc5e966a8db502f17ff1825abaad1f6b583c6a21dcdd33d87ed4063d35a4638 SHA512 fa12314ce1bc12ccb7d8dd0e99a76a63dbd6a1c6560ca976eacb782f2c28a6003aee820d8ea745b59d35280b047e67563b046c761737d76fefb5928fdfba20e9
diff --git a/dev-python/futurist/futurist-2.3.0-r1.ebuild b/dev-python/futurist/futurist-2.3.0-r1.ebuild
new file mode 100644
index 000000000000..efbd99ec4e36
--- /dev/null
+++ b/dev-python/futurist/futurist-2.3.0-r1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=bdepend
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Useful additions to futures, from the future"
+HOMEPAGE="
+ https://opendev.org/openstack/futurist
+ 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"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/futurist/metadata.xml b/dev-python/futurist/metadata.xml
new file mode 100644
index 000000000000..5b3339b66fc4
--- /dev/null
+++ b/dev-python/futurist/metadata.xml
@@ -0,0 +1,9 @@
+<?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/gabbi/Manifest b/dev-python/gabbi/Manifest
new file mode 100644
index 000000000000..a6f887e5250c
--- /dev/null
+++ b/dev-python/gabbi/Manifest
@@ -0,0 +1,2 @@
+DIST gabbi-2.4.0.tar.gz 221729 BLAKE2B 3b8e97aa50434d119a4e9465df5a946e19679e5b190b738bd8dad355c6a03801bdbb7d75cd82e268c0517843e9ccc42c3de2053c1e3ef90ddd55538589ddf97f SHA512 0485ac87f223f9ae95bb9a73cdc7e95ad49d8471f9e19625596e720ecc4dac358411dc9415409944855fa363db255479e5a623893063cc0967a3207321623306
+DIST gabbi-2.7.1.tar.gz 223087 BLAKE2B 4362cc2c5a66d56603e5a2c25d69064544d116c3a71ac3afdb050b28e45c318447a92ad0d0147d447cb9f3e6a4841a79b1642c4c89c9bc084ea5da4b0c828457 SHA512 f12171051179c3ca88c2a3924319c00a51e8eab761c50e291553b22d3925474e9de9e73181697907e3749e34b249034f6978311781af28f700ad49584bdeed95
diff --git a/dev-python/gabbi/gabbi-2.4.0.ebuild b/dev-python/gabbi/gabbi-2.4.0.ebuild
new file mode 100644
index 000000000000..b51785bf68ff
--- /dev/null
+++ b/dev-python/gabbi/gabbi-2.4.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Declarative HTTP testing library"
+HOMEPAGE="
+ https://github.com/cdent/gabbi
+ https://pypi.org/project/gabbi/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/pbr[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.11.0[${PYTHON_USEDEP}]
+ dev-python/certifi[${PYTHON_USEDEP}]
+ >=dev-python/jsonpath-rw-ext-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/wsgi_intercept-1.8.1[${PYTHON_USEDEP}]
+ dev-python/colorama[${PYTHON_USEDEP}]
+"
+
+RESTRICT="test"
+PROPERTIES="test_network"
+
+distutils_enable_tests pytest
diff --git a/dev-python/gabbi/gabbi-2.7.1.ebuild b/dev-python/gabbi/gabbi-2.7.1.ebuild
new file mode 100644
index 000000000000..8c2e8526ac53
--- /dev/null
+++ b/dev-python/gabbi/gabbi-2.7.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Declarative HTTP testing library"
+HOMEPAGE="
+ https://github.com/cdent/gabbi
+ https://pypi.org/project/gabbi/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/pbr[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.26.9[${PYTHON_USEDEP}]
+ dev-python/certifi[${PYTHON_USEDEP}]
+ >=dev-python/jsonpath-rw-ext-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/wsgi_intercept-1.9.3[${PYTHON_USEDEP}]
+ dev-python/colorama[${PYTHON_USEDEP}]
+"
+
+RESTRICT="test"
+PROPERTIES="test_network"
+
+distutils_enable_tests pytest
diff --git a/dev-python/gabbi/metadata.xml b/dev-python/gabbi/metadata.xml
new file mode 100644
index 000000000000..4bedf06abfc7
--- /dev/null
+++ b/dev-python/gabbi/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/cdent/gabbi/issues</bugs-to>
+ <remote-id type="pypi">gabbi</remote-id>
+ <remote-id type="github">cdent/gabbi</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/gemcall/Manifest b/dev-python/gemcall/Manifest
new file mode 100644
index 000000000000..72aadaa0cee5
--- /dev/null
+++ b/dev-python/gemcall/Manifest
@@ -0,0 +1 @@
+DIST gemcall-0.8.tar.gz 4689 BLAKE2B 724a48c1221f775e1f60af05b24e7d2bb0ed3ce355508f7a45b226e519edd19213a9a660de471de62043c9163cd40ca599ef63967146a054d43dcf2712c2b347 SHA512 6b078399d5301a4f01198eb474e5f5d280c7a98dbddc8f03104c09e1b25d5ded4353601ac4b80973cf5ca8e1255527c3696fe16a0bce60a85f7fb4f3db9d57ac
diff --git a/dev-python/gemcall/gemcall-0.8.ebuild b/dev-python/gemcall/gemcall-0.8.ebuild
new file mode 100644
index 000000000000..ce5b00fca280
--- /dev/null
+++ b/dev-python/gemcall/gemcall-0.8.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+inherit distutils-r1
+
+DESCRIPTION="A library and CLI tool for making gemini requests"
+HOMEPAGE="https://notabug.org/tinyrabbit/gemcall/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/cryptography[${PYTHON_USEDEP}]"
diff --git a/dev-python/gemcall/metadata.xml b/dev-python/gemcall/metadata.xml
new file mode 100644
index 000000000000..7ef3a5323720
--- /dev/null
+++ b/dev-python/gemcall/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>
+ <maintainer>
+ <name>Björn Wärmedal</name>
+ <email>bjorn.warmedal@gmail.com</email>
+ </maintainer>
+ <remote-id type="pypi">gemcall</remote-id>
+ </upstream>
+ <maintainer type="person">
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/gflanguages/Manifest b/dev-python/gflanguages/Manifest
new file mode 100644
index 000000000000..64102264a3f0
--- /dev/null
+++ b/dev-python/gflanguages/Manifest
@@ -0,0 +1 @@
+DIST gflanguages-0.4.0.tar.gz 673638 BLAKE2B aec5288e3cbed146d54ea45776aa2f7bf9d7192c3a24e87461651f96d3848e2a2e6ac0a72d2b6e9ca71d8be7b950914b4d78a1a88dee84373ae3140e62c0ff7d SHA512 3f20b82e89decde525c988e0385760caa45383ab9851a9f0fb0f783dc2fd6d6e775d7755a4a0393b71a624f4f4667784aa5d50ac4e668e7bd999676220f5a3de
diff --git a/dev-python/gflanguages/gflanguages-0.4.0.ebuild b/dev-python/gflanguages/gflanguages-0.4.0.ebuild
new file mode 100644
index 000000000000..2453f167120c
--- /dev/null
+++ b/dev-python/gflanguages/gflanguages-0.4.0.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A python API for evaluating language support in the Google Fonts collection"
+HOMEPAGE="
+ https://github.com/googlefonts/lang
+ https://pypi.org/project/gflanguages/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+SLOT="0"
+
+RDEPEND="dev-python/protobuf-python[${PYTHON_USEDEP}]"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/setuptools_scm-4[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION="${PV}"
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/gflanguages/metadata.xml b/dev-python/gflanguages/metadata.xml
new file mode 100644
index 000000000000..c56e37266be9
--- /dev/null
+++ b/dev-python/gflanguages/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/googlefonts/lang/issues</bugs-to>
+ <remote-id type="github">googlefonts/lang</remote-id>
+ <remote-id type="pypi">gflanguages</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/github-sublee-glicko2/Manifest b/dev-python/github-sublee-glicko2/Manifest
new file mode 100644
index 000000000000..053b13467526
--- /dev/null
+++ b/dev-python/github-sublee-glicko2/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..79b51783062e
--- /dev/null
+++ b/dev-python/github-sublee-glicko2/github-sublee-glicko2-0_pre20191010-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+PYTHON_COMPAT=( python3_{7,8,9,10} 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
new file mode 100644
index 000000000000..b1a0922425f2
--- /dev/null
+++ b/dev-python/github-sublee-glicko2/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="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
new file mode 100644
index 000000000000..7e7b83111b4c
--- /dev/null
+++ b/dev-python/glance_store/Manifest
@@ -0,0 +1 @@
+DIST glance_store-3.0.0.tar.gz 234086 BLAKE2B 781b9aa0913c355d898b7c05ed8807bb92bf08b371380c1f308bd4a3f8749dc91e53f6c817cc56621ce3fd7be748eee1cc5f5b1764d4167606733e7ef9176abd SHA512 4bae5ed37031902e0c47c7fa0bae2703bf21ab41226df3b2786d4679497500caeed91507e55f83512afa5ad57b73a153f901577ffa33c9d103c45622f07494c3
diff --git a/dev-python/glance_store/glance_store-3.0.0-r1.ebuild b/dev-python/glance_store/glance_store-3.0.0-r1.ebuild
new file mode 100644
index 000000000000..024b2cef66ce
--- /dev/null
+++ b/dev-python/glance_store/glance_store-3.0.0-r1.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A library for glance"
+HOMEPAGE="
+ https://github.com/openstack/glance_store
+ https://opendev.org/openstack/glance_store
+ https://pypi.org/project/glance-store/
+ https://launchpad.net/glance-store
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="cinder swift vmware"
+
+RDEPEND="
+ >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-2.18.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-4.7.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.2[${PYTHON_USEDEP}]
+ >=dev-python/six-1.11.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-3.6.0[${PYTHON_USEDEP}] )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/retrying-1.3.3[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/boto3-1.9.199[${PYTHON_USEDEP}]
+ )
+"
+
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ test? ( cinder swift vmware )
+"
+
+distutils_enable_tests pytest
+
+python_install_all() {
+ distutils-r1_python_install_all
+ mv "${ED}/usr/etc" "${ED}/etc" || die
+}
diff --git a/dev-python/glance_store/metadata.xml b/dev-python/glance_store/metadata.xml
new file mode 100644
index 000000000000..85bf7e1531e4
--- /dev/null
+++ b/dev-python/glance_store/metadata.xml
@@ -0,0 +1,20 @@
+<?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/glicko2/Manifest b/dev-python/glicko2/Manifest
new file mode 100644
index 000000000000..660ac924b1cd
--- /dev/null
+++ b/dev-python/glicko2/Manifest
@@ -0,0 +1 @@
+DIST glicko2-2.0.0.tar.gz 3612 BLAKE2B 4bb4becac2c619b4d54dbf872535002d6318e9d75cbe969f676d9a47dd83a5914e5fd8750fadfa07fb32e7b86b0ed316ff000b98403b96a0ca58ef63697c205c SHA512 f010653445ace4487d31ddec451927ce42a2728f14d57760bcc14d1279e3c5345e73bfe7552937102172a5f171c14a1c4debb10aee1e53d9c697cea66761c8f2
diff --git a/dev-python/glicko2/glicko2-2.0.0.ebuild b/dev-python/glicko2/glicko2-2.0.0.ebuild
new file mode 100644
index 000000000000..cee47abba2db
--- /dev/null
+++ b/dev-python/glicko2/glicko2-2.0.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+PYTHON_COMPAT=( python3_{7,8,9,10} 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
new file mode 100644
index 000000000000..e2ba8983b3fd
--- /dev/null
+++ b/dev-python/glicko2/metadata.xml
@@ -0,0 +1,9 @@
+<?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">deepy/glicko2</remote-id>
+ <remote-id type="pypi">glicko2</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/glyphsLib/Manifest b/dev-python/glyphsLib/Manifest
new file mode 100644
index 000000000000..8e6df9be60d3
--- /dev/null
+++ b/dev-python/glyphsLib/Manifest
@@ -0,0 +1,2 @@
+DIST glyphsLib-5.3.2.zip 960327 BLAKE2B 505d14a1e4e4a5cf8e3ea9edb1ed4fd384cc4e5d0bf6874904d45ba227f53202556076e84f3cc68a7b40354c128f71733233c1a95ea66040e0693779c5da38c7 SHA512 fbb09d666cda404a02908cf6b782a2fc986774bd490960bc71bc225260904ea284800018a4b7e326122cc226bdbe5aa9718072e8eeac019eb05c1195c535778a
+DIST glyphsLib-6.0.4.tar.gz 31130361 BLAKE2B c53cc57bc001e2a5c0cc229db36767cc240659325cbb0f471c91de54adc805d73a794bb91b8e73400261ccb5ccc79c939b77f5a2fd5fc50a8c30fdc6ea9eb053 SHA512 782dfcccfb29d44c492aed790d8f52d670f4ef36e2285390e47bc799c37aec8037b6c717c923234d2bc43e2132f16a27c70c0448b594b8f64ad1af91bcbc840e
diff --git a/dev-python/glyphsLib/glyphsLib-5.3.2-r1.ebuild b/dev-python/glyphsLib/glyphsLib-5.3.2-r1.ebuild
new file mode 100644
index 000000000000..e6b40bb6d0bc
--- /dev/null
+++ b/dev-python/glyphsLib/glyphsLib-5.3.2-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A library to provide a bridge from Glyphs source files to UFOs"
+HOMEPAGE="https://github.com/googlefonts/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/glyphsLib-6.0.4.ebuild b/dev-python/glyphsLib/glyphsLib-6.0.4.ebuild
new file mode 100644
index 000000000000..03a82d9072ad
--- /dev/null
+++ b/dev-python/glyphsLib/glyphsLib-6.0.4.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A library to provide a bridge from Glyphs source files to UFOs"
+HOMEPAGE="https://github.com/googlefonts/glyphsLib"
+SRC_URI="https://github.com/googlefonts/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0 MIT"
+KEYWORDS="~amd64"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/fonttools-4.27.1[${PYTHON_USEDEP}]
+ >=dev-python/ufoLib2-0.6.2[${PYTHON_USEDEP}]
+ >=dev-python/openstep-plist-0.3.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/setuptools_scm-6.0[${PYTHON_USEDEP}]
+ dev-python/wheel[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/defcon[${PYTHON_USEDEP}]
+ dev-python/ufoNormalizer[${PYTHON_USEDEP}]
+ dev-python/ufo2ft[${PYTHON_USEDEP}]
+ >=app-text/xmldiff-2.2[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION="${PV}"
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/glyphsLib/metadata.xml b/dev-python/glyphsLib/metadata.xml
new file mode 100644
index 000000000000..db4f6cb124b4
--- /dev/null
+++ b/dev-python/glyphsLib/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">
+ <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/glyphsets/Manifest b/dev-python/glyphsets/Manifest
new file mode 100644
index 000000000000..f15e0e525b31
--- /dev/null
+++ b/dev-python/glyphsets/Manifest
@@ -0,0 +1 @@
+DIST glyphsets-0.2.1.tar.gz 1265612 BLAKE2B 29aeadf2345887eef4b0a2f91bfee272fe8a45a3c0fefdcd6ebd70eef556b899294fc9a58b8e72a8913f9fa9bc63d2b378b7d6229afb516c0a57063ff2e6d08a SHA512 0a937ec231c617ee2fe6cc0d7a4f8930b2b49342a94b82577968e0334224a84ebcfa76f104cce526da854a283c0179da3dd9b7a2dea0d3fdbabdce626f108a9e
diff --git a/dev-python/glyphsets/glyphsets-0.2.1.ebuild b/dev-python/glyphsets/glyphsets-0.2.1.ebuild
new file mode 100644
index 000000000000..521e9189693a
--- /dev/null
+++ b/dev-python/glyphsets/glyphsets-0.2.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A python API for evaluating coverage of glyph sets in font projects"
+HOMEPAGE="
+ https://github.com/googlefonts/glyphsets
+ https://pypi.org/project/glyphsets/
+"
+SRC_URI="https://github.com/googlefonts/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+SLOT="0"
+
+#ufoLib2 is an indirect dependency
+RDEPEND="
+ dev-python/fonttools[${PYTHON_USEDEP}]
+ dev-python/ufoLib2[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/setuptools_scm-4[${PYTHON_USEDEP}]
+"
+
+python_prepare_all() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION="${PV}"
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/glyphsets/metadata.xml b/dev-python/glyphsets/metadata.xml
new file mode 100644
index 000000000000..83982aa65f93
--- /dev/null
+++ b/dev-python/glyphsets/metadata.xml
@@ -0,0 +1,19 @@
+<?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">
+If you are a font developer or typeface designer, see the subdirectory encodings/GF Glyph Sets which provides glyph set definition "standards" that are typically useful sets to draw.
+
+On the other hand, the nam files on the encodings directory are probably more useful for expert web developers. Those files explain how the Unicode Range subsets are defined, typically per script (writing system), in the Google Fonts css API.
+
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/googlefonts/glyphsets/issues</bugs-to>
+ <remote-id type="github">googlefonts/glyphsets</remote-id>
+ <remote-id type="pypi">glyphsets</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/glyphtools/Manifest b/dev-python/glyphtools/Manifest
new file mode 100644
index 000000000000..bd7b36b6879c
--- /dev/null
+++ b/dev-python/glyphtools/Manifest
@@ -0,0 +1,2 @@
+DIST glyphtools-0.7.4.tar.gz 20023 BLAKE2B a771f626220dc2f26ba643edb21fd64460369b192bf21ccf4e798ee7179a8c7a35d69cd07ca700193cf0be579db757a9487434280168fc2b8c4d5b330ddcb344 SHA512 e04df8ebdfb4738d3f277dc7dce5ab1d8ad3f4e97bd30192779f362ebb65124fb688fb6f586fadf767e24b2efd7af519ffc9c4fc14adaf6d0546a07e8075c759
+DIST glyphtools-0.8.0.tar.gz 20010 BLAKE2B 19c131793875c95f5b1d4be6ac481ac1a32e5548c43a6ef598a4b1f33a8e8978cc55e45198f58be815044965c3289c27a65e2ae8326f164a8a7a1eb0c72c6672 SHA512 700e5996bee73044050caf0beeedfca6e26ac898ed33fade9000d4cc97eca300d5f8290fab4b607f0ac9c9f8a28b877ac7b35f782fec1f614bfaf1d8fe7f8fa1
diff --git a/dev-python/glyphtools/glyphtools-0.7.4.ebuild b/dev-python/glyphtools/glyphtools-0.7.4.ebuild
new file mode 100644
index 000000000000..ec33f2149683
--- /dev/null
+++ b/dev-python/glyphtools/glyphtools-0.7.4.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Routines for extracting information from fontTools glyphs"
+HOMEPAGE="https://github.com/simoncozens/glyphtools"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${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/glyphtools-0.8.0.ebuild b/dev-python/glyphtools/glyphtools-0.8.0.ebuild
new file mode 100644
index 000000000000..006e59a51e88
--- /dev/null
+++ b/dev-python/glyphtools/glyphtools-0.8.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Routines for extracting information from fontTools glyphs"
+HOMEPAGE="https://github.com/simoncozens/glyphtools"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${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
new file mode 100644
index 000000000000..1cf463302c18
--- /dev/null
+++ b/dev-python/glyphtools/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>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/gnocchi/Manifest b/dev-python/gnocchi/Manifest
new file mode 100644
index 000000000000..50da4b62e5de
--- /dev/null
+++ b/dev-python/gnocchi/Manifest
@@ -0,0 +1 @@
+DIST gnocchi-4.4.1.tar.gz 981822 BLAKE2B d47907e4cd76450f2264a681f5d6184929e7a0fc294d84d1d709aff57c4f8b667db3a3de7acb5d14dfc69c3d421dde31d0251de3242e992c1a8d4c204dd742b2 SHA512 24884f8f010ae38041d6a5d723e0dc02b195b356a1fa3a516a9a7e0c5425ad493c52a66420029041f26939c96009b3b0103e66eb070603697e3184dee2b42b96
diff --git a/dev-python/gnocchi/gnocchi-4.4.1.ebuild b/dev-python/gnocchi/gnocchi-4.4.1.ebuild
new file mode 100644
index 000000000000..0e43dd132a1b
--- /dev/null
+++ b/dev-python/gnocchi/gnocchi-4.4.1.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Timeseries database"
+HOMEPAGE="
+ https://gnocchi.osci.io
+ https://github.com/gnocchixyz/gnocchi
+ https://pypi.org/project/gnocchi/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+IUSE="amqp ceph keystone mysql postgresql redis prometheus s3 swift"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-python/numpy-1.9.0[${PYTHON_USEDEP}]
+ dev-python/iso8601[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-3.22.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-policy-3.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-middleware-3.22.0[${PYTHON_USEDEP}]
+ dev-python/pytimeparse[${PYTHON_USEDEP}]
+ >=dev-python/pecan-0.9[${PYTHON_USEDEP}]
+ dev-python/jsonpatch[${PYTHON_USEDEP}]
+ >=dev-python/cotyledon-1.5.0[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/stevedore[${PYTHON_USEDEP}]
+ dev-python/ujson[${PYTHON_USEDEP}]
+ >=dev-python/voluptuous-0.8.10[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+ >=dev-python/tenacity-4.6.0[${PYTHON_USEDEP}]
+ >=dev-python/webob-1.4.1[${PYTHON_USEDEP}]
+ dev-python/paste[${PYTHON_USEDEP}]
+ dev-python/pastedeploy[${PYTHON_USEDEP}]
+ dev-python/monotonic[${PYTHON_USEDEP}]
+ dev-python/daiquiri[${PYTHON_USEDEP}]
+ >=dev-python/pyparsing-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/lz4-0.9.0[${PYTHON_USEDEP}]
+ >=dev-python/tooz-1.38[${PYTHON_USEDEP}]
+ dev-python/cachetools[${PYTHON_USEDEP}]
+
+ keystone? (
+ >=dev-python/keystonemiddleware-4.0.0[${PYTHON_USEDEP}]
+ )
+ mysql? (
+ dev-python/pymysql[${PYTHON_USEDEP}]
+ >=dev-python/oslo-db-4.29.0[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ dev-python/SQLAlchemy-Utils[${PYTHON_USEDEP}]
+ >=dev-python/alembic-0.7.6[${PYTHON_USEDEP}]
+ )
+ postgresql? (
+ dev-python/psycopg:2[${PYTHON_USEDEP}]
+ >=dev-python/oslo-db-4.29.0[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ dev-python/SQLAlchemy-Utils[${PYTHON_USEDEP}]
+ >=dev-python/alembic-0.7.6[${PYTHON_USEDEP}]
+ )
+ s3? (
+ dev-python/boto3[${PYTHON_USEDEP}]
+ >=dev-python/botocore-1.5[${PYTHON_USEDEP}]
+ )
+ redis? (
+ >=dev-python/redis-py-2.10.0[${PYTHON_USEDEP}]
+ dev-python/hiredis[${PYTHON_USEDEP}]
+ )
+ swift? (
+ >=dev-python/python-swiftclient-3.1.0[${PYTHON_USEDEP}]
+ )
+ ceph? (
+ sys-cluster/ceph[${PYTHON_USEDEP}]
+ )
+ prometheus? (
+ dev-python/snappy[${PYTHON_USEDEP}]
+ dev-python/protobuf-python[${PYTHON_USEDEP}]
+ )
+ amqp? (
+ >=dev-python/python-qpid-proton-0.17.0[${PYTHON_USEDEP}]
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/pifpaf-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/gabbi-1.37.0[${PYTHON_USEDEP}]
+ dev-python/fixtures[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/subunit[${PYTHON_USEDEP}]
+ dev-python/os-testr[${PYTHON_USEDEP}]
+ dev-python/testrepository[${PYTHON_USEDEP}]
+ dev-python/testscenarios[${PYTHON_USEDEP}]
+ >=dev-python/testresources-0.2.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-0.9.38[${PYTHON_USEDEP}]
+ >=dev-python/webtest-2.0.16[${PYTHON_USEDEP}]
+ >=dev-python/keystonemiddleware-4.0.0[${PYTHON_USEDEP}]
+ >=dev-python/wsgi_intercept-1.4.1[${PYTHON_USEDEP}]
+ dev-python/xattr[${PYTHON_USEDEP}]
+ dev-python/python-swiftclient[${PYTHON_USEDEP}]
+ )
+"
+
+REQUIRED_USE="
+ ${PYTHON_REQUIRED_USE}
+ test? ( amqp mysql )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/gnocchi/metadata.xml b/dev-python/gnocchi/metadata.xml
new file mode 100644
index 000000000000..d6481502e3f5
--- /dev/null
+++ b/dev-python/gnocchi/metadata.xml
@@ -0,0 +1,24 @@
+<?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>
+ <use>
+ <flag name="amqp">Installs dependencies needed for AMQP 1.0 support</flag>
+ <flag name="ceph">Installs dependencies needed for Ceph storage support</flag>
+ <flag name="keystone">Installs dependencies needed for Keystone authentication support</flag>
+ <flag name="mysql">Installs dependencies needed for MYSQL indexer support</flag>
+ <flag name="postgresql">Installs dependencies needed for PostgreSQL indexer support</flag>
+ <flag name="prometheus">Installs dependencies needed for Prometheus Remote Write support</flag>
+ <flag name="redis">Installs dependencies needed for Redis storage support</flag>
+ <flag name="s3">Installs dependencies needed for Amazon S3 storage support</flag>
+ <flag name="swift">Installs dependencies needed for OpenStack Swift storage support</flag>
+ </use>
+ <upstream>
+ <bugs-to>https://github.com/gnocchixyz/gnocchi/issues</bugs-to>
+ <remote-id type="pypi">gnocchi</remote-id>
+ <remote-id type="github">gnocchixyz/gnocchi</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/google-api-core/google-api-core-2.7.1-r1.ebuild b/dev-python/google-api-core/google-api-core-2.7.1-r1.ebuild
index 950217af5a31..48570cca9b40 100644
--- a/dev-python/google-api-core/google-api-core-2.7.1-r1.ebuild
+++ b/dev-python/google-api-core/google-api-core-2.7.1-r1.ebuild
@@ -59,8 +59,12 @@ python_compile() {
find "${BUILD_DIR}" -name '*.pth' -delete || die
}
+src_test() {
+ rm -r google || die
+ distutils-r1_src_test
+}
+
python_test() {
distutils_write_namespace google
- cd "${T}" || die
- epytest -p no:aiohttp -p no:trio "${S}/tests"
+ epytest -p no:aiohttp -p no:trio tests
}
diff --git a/dev-python/google-api-python-client/Manifest b/dev-python/google-api-python-client/Manifest
index c8cda03d3e2b..512ee2e88b55 100644
--- a/dev-python/google-api-python-client/Manifest
+++ b/dev-python/google-api-python-client/Manifest
@@ -2,3 +2,4 @@ DIST google-api-python-client-2.38.0.tar.gz 29194978 BLAKE2B 741cf925256f0bd648e
DIST google-api-python-client-2.41.0.tar.gz 29608471 BLAKE2B 5a6f9eb414f02b9528d0ee8f8777da6596bd298f6aea8191966d1ebaa67219f8ea2e44a77bc667bfedab39c4ab0352a13ba04fd805f0df9a6936247cd4cf3481 SHA512 b9ee6a4374438d019d0efd09d02426c1c773fd2ca561e2bf91e426535fec2865a47a32cc5cf780e5e7da193ca3d8b5677339fee2a4983e7f4af9612d901c883d
DIST google-api-python-client-2.42.0.tar.gz 29772877 BLAKE2B f478a719c3a6ef2f78d1fa16c231d47f2d72b55e67746612579f644b92dbd93ebd7f320f0684d85c1c1e253ed2f5163d7f6ce2904343bbe7a4f6746889663970 SHA512 e55cd75dec478a3410829a7eb7ee5478b52b44450d4ade69e3a7ee11b30e5ab5690c93ff6444f4b723db6cd1f26ac70553b3f1b9c77dc0b428db271b773faa9f
DIST google-api-python-client-2.43.0.tar.gz 29820752 BLAKE2B d0f7337f2d63d9db2da3526670a5f034103cb1b2e3eefcc77fea6d15258d185c06c238662de6d304e73b4f9ea25f8b202386eae8b7b94d7c52ad2b6c15d2ea76 SHA512 0e59f22b0c03d1b29247219e39a83bf6b637afe3eddfa302ecd34acc30bebb850f771e4b7b5c24e5a607ddd74ef6833fe0597465776d00675ed868612ebd1d70
+DIST google-api-python-client-2.44.0.tar.gz 29961288 BLAKE2B 3bb7d421c76180009c7105d693edc32c5f6af7d853cf9f70d18001976e854c343d6d9e03ad5210562a1c1c17c5127b6d96d2b12128997a8007bc027eb10c841d SHA512 8a12684117a1bdd6b72ec6fce2e7d1e48115e05788e39c8aaad8f6095e4bdc3245f6c471044e6b0e6983210f8cd0328bb9ef459f55c4c9b973a89a658a30677b
diff --git a/dev-python/google-api-python-client/google-api-python-client-2.44.0.ebuild b/dev-python/google-api-python-client/google-api-python-client-2.44.0.ebuild
new file mode 100644
index 000000000000..a9fed2cd012a
--- /dev/null
+++ b/dev-python/google-api-python-client/google-api-python-client-2.44.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Google API Client for Python"
+HOMEPAGE="https://github.com/googleapis/google-api-python-client"
+SRC_URI="
+ https://github.com/googleapis/google-api-python-client/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/httplib2-0.15[${PYTHON_USEDEP}]
+ <dev-python/httplib2-1[${PYTHON_USEDEP}]
+ >=dev-python/google-api-core-2.3.1[${PYTHON_USEDEP}]
+ >=dev-python/google-auth-1.35.0[${PYTHON_USEDEP}]
+ >=dev-python/google-auth-httplib2-0.1.0[${PYTHON_USEDEP}]
+ >=dev-python/uritemplate-3.0.0[${PYTHON_USEDEP}]
+ <dev-python/uritemplate-5[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/oauth2client[${PYTHON_USEDEP}]
+ dev-python/pandas[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # require Internet access (and credentials)
+ tests/test_discovery.py::DiscoveryErrors::test_credentials_and_credentials_file_mutually_exclusive
+ tests/test_discovery.py::DiscoveryFromDocument::test_api_endpoint_override_from_client_options_mapping_object
+ )
+
+ epytest tests
+}
diff --git a/dev-python/google-cloud-storage/Manifest b/dev-python/google-cloud-storage/Manifest
new file mode 100644
index 000000000000..e429deb952ba
--- /dev/null
+++ b/dev-python/google-cloud-storage/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..cc9182792f75
--- /dev/null
+++ b/dev-python/google-cloud-storage/google-cloud-storage-1.36.0.ebuild
@@ -0,0 +1,15 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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
new file mode 100644
index 000000000000..ad8cead24f43
--- /dev/null
+++ b/dev-python/google-cloud-storage/metadata.xml
@@ -0,0 +1,8 @@
+<?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
new file mode 100644
index 000000000000..e2a731533917
--- /dev/null
+++ b/dev-python/googletrans/Manifest
@@ -0,0 +1 @@
+DIST googletrans-4.0.0_rc1.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.ebuild
new file mode 100644
index 000000000000..96052c2455a6
--- /dev/null
+++ b/dev-python/googletrans/googletrans-4.0.0_rc1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+inherit distutils-r1
+
+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"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="dev-python/requests[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
diff --git a/dev-python/googletrans/metadata.xml b/dev-python/googletrans/metadata.xml
new file mode 100644
index 000000000000..383f55897d79
--- /dev/null
+++ b/dev-python/googletrans/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>1over137@anche.no</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">googletrans</remote-id>
+ <remote-id type="github">ssut/py-googletrans</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/googletransx/Manifest b/dev-python/googletransx/Manifest
new file mode 100644
index 000000000000..6934d91ab486
--- /dev/null
+++ b/dev-python/googletransx/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..42ef8d7ddbc4
--- /dev/null
+++ b/dev-python/googletransx/googletransx-2.4.2-r1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+#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
new file mode 100644
index 000000000000..12c247f7bc60
--- /dev/null
+++ b/dev-python/googletransx/metadata.xml
@@ -0,0 +1,42 @@
+<?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/gpep517/gpep517-3.ebuild b/dev-python/gpep517/gpep517-3.ebuild
index 2495c732f866..c0cd6c0a9935 100644
--- a/dev-python/gpep517/gpep517-3.ebuild
+++ b/dev-python/gpep517/gpep517-3.ebuild
@@ -21,7 +21,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~riscv ~s390 ~sparc ~x86"
RDEPEND="
>=dev-python/installer-0.5.0[${PYTHON_USEDEP}]
diff --git a/dev-python/gpxpy/Manifest b/dev-python/gpxpy/Manifest
new file mode 100644
index 000000000000..62bb1da44a6a
--- /dev/null
+++ b/dev-python/gpxpy/Manifest
@@ -0,0 +1,2 @@
+DIST gpxpy-1.4.2.tar.gz 109735 BLAKE2B ff7dd9ef9179de60693f683a68e4068e632f795ccba0b0047abdd8775902a8528d0fefb8532ea69d9d1f591cd5b72be555339fd8b500e7a4fcc0f6b87056ed95 SHA512 34c851be1cd8dd243b11ed69588a254f932b79e7db0106142bd1dedbad6c3693be8ba65495b631e2cc149f39bd2af0a0347f1471a850799e91e215a35ffa5adb
+DIST gpxpy-1.5.0.tar.gz 113446 BLAKE2B 0ed256a3eb869a610027ffea1706c4a3465cc8c7f9ec67cbeebe93a643b03d2ff1cb24442122928624f37d11115f9bfb8f8e83d0e0f1d3a89d132b4f07b71456 SHA512 08705fa0f78e0539d4b6b84723b01fa6b62a13de0ec25d034da2c14e6cabea14debe92e2a9c4120476bd21f6ea502da8e68217043ad9a401c365895bb69698b0
diff --git a/dev-python/gpxpy/gpxpy-1.4.2.ebuild b/dev-python/gpxpy/gpxpy-1.4.2.ebuild
new file mode 100644
index 000000000000..b37fe997d74b
--- /dev/null
+++ b/dev-python/gpxpy/gpxpy-1.4.2.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="GPX file parser and GPS track manipulation library"
+HOMEPAGE="
+ https://github.com/tkrajina/gpxpy
+ https://pypi.org/project/gpxpy/
+"
+SRC_URI="https://github.com/tkrajina/gpxpy/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+distutils_enable_tests unittest
diff --git a/dev-python/gpxpy/gpxpy-1.5.0.ebuild b/dev-python/gpxpy/gpxpy-1.5.0.ebuild
new file mode 100644
index 000000000000..c0c13ca379c2
--- /dev/null
+++ b/dev-python/gpxpy/gpxpy-1.5.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2020-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="GPX file parser and GPS track manipulation library"
+HOMEPAGE="
+ https://github.com/tkrajina/gpxpy
+ https://pypi.org/project/gpxpy/
+"
+SRC_URI="https://github.com/tkrajina/gpxpy/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+distutils_enable_tests unittest
diff --git a/dev-python/gpxpy/metadata.xml b/dev-python/gpxpy/metadata.xml
new file mode 100644
index 000000000000..e9539a88ace2
--- /dev/null
+++ b/dev-python/gpxpy/metadata.xml
@@ -0,0 +1,14 @@
+<?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/tkrajina/gpxpy/issues</bugs-to>
+ <remote-id type="github">tkrajina/gpxpy</remote-id>
+ <remote-id type="pypi">gpxpy</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/graphene/Manifest b/dev-python/graphene/Manifest
new file mode 100644
index 000000000000..795eaed04e0f
--- /dev/null
+++ b/dev-python/graphene/Manifest
@@ -0,0 +1,4 @@
+DIST graphene-3.0.0.tar.gz 116388 BLAKE2B 8e0c5732a8c267e1f492c4d07b070a40777e2ac7b41badc0c4b06471c4268e58bab47d170cf3e74940755f0de3d4be246c1a67eae44654bcfbf531fa1eeefb6d SHA512 dbd651ad509248e66c739acc16778753817b040e573514820a221647e1cf4fb96d22f499d1479eb39d921f17c696fcfe9acce3bb2b89b23ffd9e43f949dc4262
+DIST graphene-3.0.0_beta7.tar.gz 113258 BLAKE2B 4a3adadfea6dc6fd936b8bad83cf02c1b2b7937648712ee26ce3c5eb7e6d6631790ae2f22fff334de4495ed3197761862e88450e7f837ee06f71e7de4009efe4 SHA512 df4dee75c8c5bc5643dd5231bff61f7f1e2efe7203e61a3e32b10c80c2f44139a408ca99726fea51d6aa6e844e648c860c41e3e20ee4679dd3573f43047e71fa
+DIST sphinx-graphene-3.0.0.zip 22270 BLAKE2B 7cc467f12e7857cedb0336c7d0708f9429b9ccaa7f65077e6453a3e4ce0af92cbdb6d4dd3bec5801bd3e5fb233b4994dbce52fabe690da196ee25b5eec7fb63f SHA512 00cdaee50a7c16729d9d820de7d6c0f61215e3b906777b0705f2de0d2029f2ffb1f86134b1d673d00675d77729be47765999537fc42aeefafb026248b9b0b3b0
+DIST sphinx-graphene-3.0.0_beta7.zip 22270 BLAKE2B 7cc467f12e7857cedb0336c7d0708f9429b9ccaa7f65077e6453a3e4ce0af92cbdb6d4dd3bec5801bd3e5fb233b4994dbce52fabe690da196ee25b5eec7fb63f SHA512 00cdaee50a7c16729d9d820de7d6c0f61215e3b906777b0705f2de0d2029f2ffb1f86134b1d673d00675d77729be47765999537fc42aeefafb026248b9b0b3b0
diff --git a/dev-python/graphene/graphene-3.0.0.ebuild b/dev-python/graphene/graphene-3.0.0.ebuild
new file mode 100644
index 000000000000..0da26fc3848f
--- /dev/null
+++ b/dev-python/graphene/graphene-3.0.0.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
+
+EPYTEST_DESELECT=(
+ graphene/types/tests/test_objecttype.py::test_objecttype_as_container_extra_args
+ graphene/types/tests/test_objecttype.py::test_objecttype_as_container_invalid_kwargs
+ graphene/types/tests/test_schema.py::TestUnforgivingExecutionContext::test_unexpected_error
+)
+
+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
+}
diff --git a/dev-python/graphene/graphene-3.0.0_beta7.ebuild b/dev-python/graphene/graphene-3.0.0_beta7.ebuild
new file mode 100644
index 000000000000..93bd2f6af254
--- /dev/null
+++ b/dev-python/graphene/graphene-3.0.0_beta7.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/metadata.xml b/dev-python/graphene/metadata.xml
new file mode 100644
index 000000000000..a507be0a7892
--- /dev/null
+++ b/dev-python/graphene/metadata.xml
@@ -0,0 +1,9 @@
+<?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/graphql-core/Manifest b/dev-python/graphql-core/Manifest
new file mode 100644
index 000000000000..06f7e595cae1
--- /dev/null
+++ b/dev-python/graphql-core/Manifest
@@ -0,0 +1,2 @@
+DIST graphql-core-3.1.5.tar.gz 497629 BLAKE2B 28b8a32669c7367bb1343e04bf3f5a1b20ce13f83e2514d243b69df067306f2fbd8d380d6a9f833fe1296831853898b3f1a0d0ec73fc3d0ea8a4726ed3062674 SHA512 d6fccd751ecc575649c4eb697b98f6b581d56db58e4d4d8b73eec8cf8285cc749dd55c6e3dc54fe9aeb216b1ae4a6d14c9e617ca65eecba4fe1d3ba41de6f7c4
+DIST graphql-core-3.1.6.tar.gz 499188 BLAKE2B c47d95854601de6f524b266de84384d334c99f05aa9c1a226a55413b9a55111dc2eb87813d2650253c502e2bd9904aa1eeaef5373b830ffa1ab8efdf0bec80e7 SHA512 fe7068fb9100e57f2198f653166136d81e98c863f56f3ac1a6b04c65f31ef73d8d1aff5e70870e13c01f333542b442a772157111db58992a4a0b36a17e0e7120
diff --git a/dev-python/graphql-core/graphql-core-3.1.5.ebuild b/dev-python/graphql-core/graphql-core-3.1.5.ebuild
new file mode 100644
index 000000000000..b962de8848f0
--- /dev/null
+++ b/dev-python/graphql-core/graphql-core-3.1.5.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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.1.6.ebuild b/dev-python/graphql-core/graphql-core-3.1.6.ebuild
new file mode 100644
index 000000000000..7c7fd5c782d3
--- /dev/null
+++ b/dev-python/graphql-core/graphql-core-3.1.6.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/metadata.xml b/dev-python/graphql-core/metadata.xml
new file mode 100644
index 000000000000..740ae6ba6f43
--- /dev/null
+++ b/dev-python/graphql-core/metadata.xml
@@ -0,0 +1,5 @@
+<?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/graphql-relay/Manifest b/dev-python/graphql-relay/Manifest
new file mode 100644
index 000000000000..94cd47b487b7
--- /dev/null
+++ b/dev-python/graphql-relay/Manifest
@@ -0,0 +1 @@
+DIST graphql-relay-3.1.0.tar.gz 47738 BLAKE2B 84a13dee3371345ca7af7ff87b4210a787e261c8446ab6d54b7c1ee196f0bd8faef15be438be424d78ab0fa7cc9df6641020da85052d9abe21d17ed2cb89b28c SHA512 7006da1ebd0a7fde2a88b6c03d2355d1cc26b14e86f51387cd91c922b498f2fcbe120af730b9634b57af0b638244fb464808e7af16e2dfdae9fa71f404bb5d65
diff --git a/dev-python/graphql-relay/graphql-relay-3.1.0.ebuild b/dev-python/graphql-relay/graphql-relay-3.1.0.ebuild
new file mode 100644
index 000000000000..ba5ff98b29de
--- /dev/null
+++ b/dev-python/graphql-relay/graphql-relay-3.1.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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"
+
+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
new file mode 100644
index 000000000000..3287f65d2a76
--- /dev/null
+++ b/dev-python/graphql-relay/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 type="person">
+ <email>piotr.staroszczyk@get24.org</email>
+ <name>Piotr Staroszczyk</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/guidata/Manifest b/dev-python/guidata/Manifest
new file mode 100644
index 000000000000..9f6e393ad247
--- /dev/null
+++ b/dev-python/guidata/Manifest
@@ -0,0 +1 @@
+DIST guidata-1.7.9.tar.gz 325254 BLAKE2B 875ffe654fa3fb7fbb7d778d16c35053f8b2da6a69b2e5fd4a44599baa0f4eb3075e10856d906a3c345a25ec7c9f354d36817e1f1e4bc29c16371939acfb1f45 SHA512 65ae8a6fea96261fea534fd0dc42fdfe8f78c73008ffe34bb2d521b88860357196f4dd5f76d1a07290d7d3240e0f230c3d09c8ec14656071c59c90124da892db
diff --git a/dev-python/guidata/guidata-1.7.9.ebuild b/dev-python/guidata/guidata-1.7.9.ebuild
new file mode 100644
index 000000000000..0510fa452c88
--- /dev/null
+++ b/dev-python/guidata/guidata-1.7.9.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/metadata.xml b/dev-python/guidata/metadata.xml
new file mode 100644
index 000000000000..01c1fc848759
--- /dev/null
+++ b/dev-python/guidata/metadata.xml
@@ -0,0 +1,8 @@
+<?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>
+</pkgmetadata>
diff --git a/dev-python/hidapi/Manifest b/dev-python/hidapi/Manifest
new file mode 100644
index 000000000000..b43625462704
--- /dev/null
+++ b/dev-python/hidapi/Manifest
@@ -0,0 +1,2 @@
+DIST hidapi-0.10.1.tar.gz 60712 BLAKE2B 9f66015f801a73ad520b303a011edbfecb6b2e79e4366b8e72cc15a4b509cd5744c4c5f9d710b120a44f10cab0c72edf6f679961979d7ad2581edf3238426609 SHA512 681e3691a4b05b13abc38d305c68e448728612442d0ef12ce54d12eeebee6e18d33566c462a276d18ce5e29fad208e6fcde49bbe4b162eae5cd72ce37dea880b
+DIST hidapi-0.11.0.post2.tar.gz 136467 BLAKE2B 9469817cf5a87d9367d9b1d57e9b3832fc83756fbe7ba314e266fc17a17a7f82efadbb73e8e4808a0eaef8ad6478675222b99488b1ffac7b9426eb951ee3e77b SHA512 5365299ef8488561a82d2a2c911523c5d34e260f8068b4d4d26e912b6e348b328229498f0ee38d1eb9c81a969e9f91ffc7a0b9a60359f4e9d0511f8937e5ff21
diff --git a/dev-python/hidapi/hidapi-0.10.1.ebuild b/dev-python/hidapi/hidapi-0.10.1.ebuild
new file mode 100644
index 000000000000..4a351da675bf
--- /dev/null
+++ b/dev-python/hidapi/hidapi-0.10.1.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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_configure_all() {
+ DISTUTILS_ARGS=( --with-system-hidapi )
+}
+
+python_test() {
+ epytest tests.py
+}
diff --git a/dev-python/hidapi/hidapi-0.11.0.2.ebuild b/dev-python/hidapi/hidapi-0.11.0.2.ebuild
new file mode 100644
index 000000000000..c8df53aea2fa
--- /dev/null
+++ b/dev-python/hidapi/hidapi-0.11.0.2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+DISTUTILS_USE_SETUPTOOLS="rdepend"
+inherit distutils-r1
+
+MY_PV=$(ver_rs 3 .post)
+DESCRIPTION="A Cython interface to the hidapi"
+HOMEPAGE="https://github.com/trezor/cython-hidapi"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${PN}-${MY_PV}.tar.gz"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+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_configure_all() {
+ DISTUTILS_ARGS=( --with-system-hidapi )
+}
+
+python_test() {
+ epytest tests.py
+}
diff --git a/dev-python/hidapi/metadata.xml b/dev-python/hidapi/metadata.xml
new file mode 100644
index 000000000000..7f7f32772cb1
--- /dev/null
+++ b/dev-python/hidapi/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 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
new file mode 100644
index 000000000000..352ca00e1822
--- /dev/null
+++ b/dev-python/hijri-converter/Manifest
@@ -0,0 +1,2 @@
+DIST hijri-converter-2.2.2.tar.gz 38541 BLAKE2B 4c032bbf5c88437457e343d9b602c9830c6e364d35ffeff60c06decf5dd7f17b2d018944e83ac292b93c5c6d32da9a7f5cb74511eedb35d37738c289011b620f SHA512 af2bc3a56fcb6f512dcc72b726f727cd7f9db883732fb0733107f4094586350fea0eba3bb8b7846eb4974170a9c9664303bc941846a951b192fea3172f0f9626
+DIST hijri-converter-2.2.3.tar.gz 42009 BLAKE2B c19caa6e8225406ca99a32fa1418890a1b380a4dfbe3b3c00d4ef99956b239e6313db619329c6becc8bf78f763060799693f664db8d4c7ed5139b4b629983cf2 SHA512 b038605ea020ded6f5eb555bfc159137cb29527693e258ca002a198932f1312ee5513ef4d1a4baa242b695337da959f203032cc6896dfce7b245b1befaddf6f1
diff --git a/dev-python/hijri-converter/hijri-converter-2.2.2.ebuild b/dev-python/hijri-converter/hijri-converter-2.2.2.ebuild
new file mode 100644
index 000000000000..d082d192fb5b
--- /dev/null
+++ b/dev-python/hijri-converter/hijri-converter-2.2.2.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} 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"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs
diff --git a/dev-python/hijri-converter/hijri-converter-2.2.3.ebuild b/dev-python/hijri-converter/hijri-converter-2.2.3.ebuild
new file mode 100644
index 000000000000..14d63e44bd37
--- /dev/null
+++ b/dev-python/hijri-converter/hijri-converter-2.2.3.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
+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/hijri-converter/metadata.xml b/dev-python/hijri-converter/metadata.xml
new file mode 100644
index 000000000000..a6efd7b8a39f
--- /dev/null
+++ b/dev-python/hijri-converter/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">
+ <description>co-maintainers welcome</description>
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/hstspreload/Manifest b/dev-python/hstspreload/Manifest
new file mode 100644
index 000000000000..6d3bca1518ab
--- /dev/null
+++ b/dev-python/hstspreload/Manifest
@@ -0,0 +1,2 @@
+DIST hstspreload-2021.10.1.tar.gz 1247430 BLAKE2B fa6bb9fb5be874094afa5a5475846a3bfd7dd4d53dd9819be25f8cd91db3606624d3c5c0813fdc142fc56d33e98d98d49023f26384fd15dbbc5dac7f7b58d353 SHA512 6ca5cbdbe3799066598da7fc1703438b108fe2786d3e422a6d84dc74bf5f8f4854b77ff4443309dbc2294840b00973b5f064db0b0adbb9b7b55425707cead81e
+DIST hstspreload-2021.12.1.tar.gz 1270649 BLAKE2B 0bac4c3ff4320486af40e1775c1ace621ab4c42f30676734ecb77fe33716b560e2e6874bb0584b8540b368ad86deb57dfdbb362b94ff877176e3d8705d4b8d7d SHA512 80ccc403e87b4f288ba3f0e2ab2d145d987ce7c9ed67d57399dec1f0e84524676305c359b866fee328329019f76c18482f42d11dc0eb5fed64910b5085450850
diff --git a/dev-python/hstspreload/hstspreload-2021.10.1.ebuild b/dev-python/hstspreload/hstspreload-2021.10.1.ebuild
new file mode 100644
index 000000000000..3e40b4e26db8
--- /dev/null
+++ b/dev-python/hstspreload/hstspreload-2021.10.1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/hstspreload-2021.12.1.ebuild b/dev-python/hstspreload/hstspreload-2021.12.1.ebuild
new file mode 100644
index 000000000000..78669847d32a
--- /dev/null
+++ b/dev-python/hstspreload/hstspreload-2021.12.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_{7,8,9,10} )
+
+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"
+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
new file mode 100644
index 000000000000..dfaf0ab6480e
--- /dev/null
+++ b/dev-python/hstspreload/metadata.xml
@@ -0,0 +1,16 @@
+<?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/httptools/Manifest b/dev-python/httptools/Manifest
new file mode 100644
index 000000000000..91c364771991
--- /dev/null
+++ b/dev-python/httptools/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..6e603e6b0dd4
--- /dev/null
+++ b/dev-python/httptools/httptools-0.1.1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} 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
new file mode 100644
index 000000000000..bb86492b211e
--- /dev/null
+++ b/dev-python/httptools/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>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
new file mode 100644
index 000000000000..1cbe63eeff8d
--- /dev/null
+++ b/dev-python/hunter/Manifest
@@ -0,0 +1,2 @@
+DIST hunter-3.3.8.tar.gz 536260 BLAKE2B cdb048798dd831229f3c3ff784b16f94ee45c54bc35eb29e9b228f2736c103dbc39357df82476a2b25310501d33be67474f85c2f5a97a61baca20c8dfc5a725f SHA512 4d715893c805afb5ca709f8c8ce20fbf5ec8540a06c7536862d941a5a4f45b0721f8cd3aa2eeb79c072152d243f4d0ce949431defbdc8c17831f744c3f7ff58a
+DIST hunter-3.4.3.tar.gz 538017 BLAKE2B 92ad2b653d0285059ea2f005c6ba9564f357e1ea438a0fe30087f88efa202aaa504bad65985a88484cf7178c24432ac44705098dabc2667328c71e0ee38f718c SHA512 921bb48ac5d384977908dda060e178e623eb7c1e4298cbf3c0a273cab23695f2a2a60221afb257e54cd144399d2b3b55b80ae9a2c7f71ba452894cc86112d5f7
diff --git a/dev-python/hunter/files/hunter-remove-vendored-colorama.patch b/dev-python/hunter/files/hunter-remove-vendored-colorama.patch
new file mode 100644
index 000000000000..1fa6342c00e3
--- /dev/null
+++ b/dev-python/hunter/files/hunter-remove-vendored-colorama.patch
@@ -0,0 +1,34 @@
+--- a/src/hunter/actions.py
++++ b/src/hunter/actions.py
+@@ -8,6 +8,8 @@
+ from itertools import islice
+ from os import getpid
+
++from colorama import AnsiToWin32
++
+ from . import config
+ from .util import BUILTIN_SYMBOLS
+ from .util import CALL_COLORS
+@@ -22,7 +20,6 @@
+ from .util import frame_iterator
+ from .util import iter_symbols
+ from .util import safe_repr
+-from .vendor.colorama import AnsiToWin32
+
+ try:
+ from threading import get_ident
+--- a/src/hunter/util.py
++++ b/src/hunter/util.py
+@@ -8,9 +8,9 @@
+ from collections import defaultdict
+ from collections import deque
+
++from colorama import Back
++from colorama import Fore
++from colorama import Style
+-from .vendor.colorama import Back
+-from .vendor.colorama import Fore
+-from .vendor.colorama import Style
+
+ try:
+ import __builtin__ as builtins
diff --git a/dev-python/hunter/files/remove-setuptools_scm-upper-constraint.patch b/dev-python/hunter/files/remove-setuptools_scm-upper-constraint.patch
new file mode 100644
index 000000000000..5e831b9064d3
--- /dev/null
+++ b/dev-python/hunter/files/remove-setuptools_scm-upper-constraint.patch
@@ -0,0 +1,15 @@
+--- 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
new file mode 100644
index 000000000000..f6291de9f643
--- /dev/null
+++ b/dev-python/hunter/hunter-3.3.8.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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.4.3.ebuild b/dev-python/hunter/hunter-3.4.3.ebuild
new file mode 100644
index 000000000000..0838480e89fb
--- /dev/null
+++ b/dev-python/hunter/hunter-3.4.3.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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"
+
+RDEPEND=">=dev-python/colorama-0.4.4[${PYTHON_USEDEP}]"
+DEPEND="
+ ${RDEPEND}
+ dev-python/cython[${PYTHON_USEDEP}]
+"
+# toml is an indirect dependency (needed by ipdb)
+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}]
+
+ dev-python/toml[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS=( AUTHORS.rst CHANGELOG.rst README.rst )
+PATCHES=( "${FILESDIR}/${PN}-remove-vendored-colorama.patch" )
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs ">=dev-python/sphinx-py3doc-enhanced-theme-2.3.2"
+
+src_prepare() {
+ # remove vendored colorama
+ rm -r src/hunter/vendor || die
+ default
+}
+
+python_compile() {
+ 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/metadata.xml b/dev-python/hunter/metadata.xml
new file mode 100644
index 000000000000..c0ae1463675d
--- /dev/null
+++ b/dev-python/hunter/metadata.xml
@@ -0,0 +1,73 @@
+<?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">
+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.
+
+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
+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.
+
+ 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.
+
+ 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.
+
+ 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.
+
+ Low overhead (tracing/filtering code has an optional Cython extension).
+
+ 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.
+
+Why not pytrace?
+
+Pytrace is another tracer tool. It seems quite similar to Smiley - it uses a sqlite database for the events, threads and IPC, thus it's reasonable to expect the same kind of problems.
+Why not PySnooper or snoop?
+
+snoop is a refined version of PySnooper. Both are more suited to tracing small programs or functions as the output is more verbose and less suited to the needs of tracing a big application where Hunter provides more flexible setup, filtering capabilities, speed and brevity.
+Why not coverage?
+
+For purposes of debugging coverage is a great tool but only as far as "debugging by looking at what code is (not) run". Checking branch coverage is good but it will only get you as far.
+
+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>
+</pkgmetadata>
diff --git a/dev-python/hwi/Manifest b/dev-python/hwi/Manifest
new file mode 100644
index 000000000000..b46b59def672
--- /dev/null
+++ b/dev-python/hwi/Manifest
@@ -0,0 +1,2 @@
+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
new file mode 100644
index 000000000000..6645a30fc906
--- /dev/null
+++ b/dev-python/hwi/hwi-1.2.1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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
new file mode 100644
index 000000000000..60c054f065b8
--- /dev/null
+++ b/dev-python/hwi/hwi-2.0.2.ebuild
@@ -0,0 +1,56 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="udev"
+
+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
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx_rtd_theme \
+ dev-python/sphinxcontrib-autoprogram
+
+python_prepare_all() {
+ # remove upper bounds on dependencies from setup.py file
+ sed 's/,<[0-9.]\+//' -i setup.py || die
+
+ pushd test || die
+ # 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 || die
+ # remove udev tests because it expects the rules are installed in the libs folder
+ rm test_udevrules.py || die
+ popd || die
+
+ 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
new file mode 100644
index 000000000000..b63e8de3081b
--- /dev/null
+++ b/dev-python/hwi/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="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
new file mode 100644
index 000000000000..b2361427ee16
--- /dev/null
+++ b/dev-python/hypercorn/Manifest
@@ -0,0 +1 @@
+DIST hypercorn-0.13.2.tar.gz 151984 BLAKE2B b0176016819409cb6958a758041bfe710a008d141a52348ce545deb285cb9e6fc0a4c05321d021bfae5b9de96149db9302f9ce40d01b57c3176d6ad9aef61402 SHA512 c7f12c173b2e9da6108388b2a66b2abca7e26e0d2952e9f3828e94d37b9e3df6076395afd8438aaaa7e328f9a4b085d62f6efd28e2503c4db9bc1f430795048e
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
new file mode 100644
index 000000000000..8c3f4210a6bd
--- /dev/null
+++ b/dev-python/hypercorn/files/hypercorn-0.11.2-no-coverage.patch
@@ -0,0 +1,9 @@
+--- 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/files/hypercorn-0.13.2-no-coverage.patch b/dev-python/hypercorn/files/hypercorn-0.13.2-no-coverage.patch
new file mode 100644
index 000000000000..78609bd739f8
--- /dev/null
+++ b/dev-python/hypercorn/files/hypercorn-0.13.2-no-coverage.patch
@@ -0,0 +1,11 @@
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -88,7 +88,7 @@
+ ignore_missing_imports = true
+
+ [tool.pytest.ini_options]
+-addopts = "--no-cov-on-fail --showlocals --strict-markers"
++addopts = "--showlocals --strict-markers"
+ testpaths = ["tests"]
+
+ [build-system]
diff --git a/dev-python/hypercorn/hypercorn-0.13.2.ebuild b/dev-python/hypercorn/hypercorn-0.13.2.ebuild
new file mode 100644
index 000000000000..1cec1cc3eaf0
--- /dev/null
+++ b/dev-python/hypercorn/hypercorn-0.13.2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=pyproject.toml
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+inherit distutils-r1
+
+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/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/h11[${PYTHON_USEDEP}]
+ >=dev-python/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
+
+distutils_enable_sphinx docs \
+ dev-python/sphinxcontrib-napoleon \
+ dev-python/pydata-sphinx-theme
diff --git a/dev-python/hypercorn/metadata.xml b/dev-python/hypercorn/metadata.xml
new file mode 100644
index 000000000000..f39c424104db
--- /dev/null
+++ b/dev-python/hypercorn/metadata.xml
@@ -0,0 +1,28 @@
+<?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/hyperglot/Manifest b/dev-python/hyperglot/Manifest
new file mode 100644
index 000000000000..1b03ea8eaca8
--- /dev/null
+++ b/dev-python/hyperglot/Manifest
@@ -0,0 +1 @@
+DIST hyperglot-0.3.8.tar.gz 7535789 BLAKE2B ea95372cfff195d2f991cc9a6bc3e26a9576e234167dde0c3a550979f6657e23b2169beb9d67b05fe8de1922e8a299ae24653da611e4277027798b2d139bc12f SHA512 32b8a08795fad10bfe909ddcab9578a53d1a0faf5a9ac79c2a129d2529d00166336560528f298ff8433fdc1149791da948fa2ef4f4d67780bd79b8f8126bdaf6
diff --git a/dev-python/hyperglot/hyperglot-0.3.8.ebuild b/dev-python/hyperglot/hyperglot-0.3.8.ebuild
new file mode 100644
index 000000000000..935c57bf4d05
--- /dev/null
+++ b/dev-python/hyperglot/hyperglot-0.3.8.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Detect language support for font binaries"
+HOMEPAGE="
+ https://hyperglot.rosettatype.com/
+ https://github.com/rosettatype/hyperglot
+ https://pypi.org/project/hyperglot/
+"
+SRC_URI="https://github.com/rosettatype/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3+ OFL"
+KEYWORDS="~amd64"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/click-7.0[${PYTHON_USEDEP}]
+ >=dev-python/fonttools-4.0.2[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-5.3[${PYTHON_USEDEP}]
+ >=dev-python/unicodedata2-13.0.0[${PYTHON_USEDEP}]
+ >=dev-python/colorlog-4.7.2[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/hyperglot/metadata.xml b/dev-python/hyperglot/metadata.xml
new file mode 100644
index 000000000000..99cbceec1b93
--- /dev/null
+++ b/dev-python/hyperglot/metadata.xml
@@ -0,0 +1,22 @@
+<?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">
+Hyperglot helps type designers answer a seemingly simple question of language support in fonts: When can I use font A to set texts in language B? It takes a pragmatic answer by identifying a standard character set for each orthography used by a language. The database that currently contains information for over 640+ languages is a work in progress, designed to grow.
+
+We record a basic and any auxiliary character sets for each orthography of a language. Note that only actively used orthographies (their status is set to primary) are used when detecting language support in a font. Other, secondary or historical, orthographies are displayed just for information purposes.
+
+Where relevant, we also provide a brief design note containing tips about shaping and positioning requirements that go beyond Unicode character code points. Hyperglot should only be used to detect whether a font can be considered for use with a particular language. It does not say anything about the quality of a font’s design.
+
+Hyperglot is a work in progress provided AS IS, and the validity of its language data varies. To help you assess the validity of the results you view, each language in the database comes with a label indicating the quality of the data we have for it (e.g. some are considered drafts, some have been verified). We have checked the information against various online and offline sources and we are committed to continually improve it. However, we admit that mapping all the languages of the world in this way is beyond our capacity – we need help from users of each respective language! So, if you spot an issue or notice your favourite language is altogether missing from the database, get in touch. We will happily incorporate your feedback and credit you.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/rosettatype/hyperglot/issues</bugs-to>
+ <remote-id type="github">rosettatype/hyperglot</remote-id>
+ <remote-id type="pypi">hyperglot</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest
index 5cd4f3495d11..2724ee9d058a 100644
--- a/dev-python/hypothesis/Manifest
+++ b/dev-python/hypothesis/Manifest
@@ -2,3 +2,4 @@ DIST hypothesis-python-6.39.6.tar.gz 9183382 BLAKE2B c1112dc11d9129c7685eccac563
DIST hypothesis-python-6.42.0.tar.gz 9186585 BLAKE2B dd08082ef466c91999a6bfa6dfc8386f773182f3e74cc471f6f09bf3c595871aea6508ea2ede4a1375b7ec1e0ba4169a7577c41c6ea97b578233ed64a36b4975 SHA512 fdd6c095aba72660b7cbf4e5200a3500019fef69f45c6a8f40a93815b6bce23c40404af16dba4309400917307485c378b3a12f3eea58d99ce8da68b397a69390
DIST hypothesis-python-6.42.2.tar.gz 9187457 BLAKE2B ee191bed48db8984a1adb14fb655f0d03e76934eeec3004842567de904508dd5e0a565c14d81b018d55ca18827b03e14a54ae520110c5960a6d048690d17a5f8 SHA512 1c82e5d010cccc54c7c4a05f12ac33eae0d53fdb1d4ed68313907c390fb4c1e58d2afb57816fc8f0f7facacaca0fd6eab90e513ba2dc0b47fb73adb19e1f2a8a
DIST hypothesis-python-6.42.3.tar.gz 9187948 BLAKE2B 3303cea4e8f2776f14defd88dcc2578f11e30bd5842a2cddf96478e31505d38f801a92e031e76070684befb2a9d63713f44b73eea7152e0bdc6cc0d16e25c08c SHA512 869e81b46da7786cc4ca981da56c916922a73fd129dc1f156d062343e40a9b74888bdda17ef2c95e6c3102dc762f7cf587d1aad4ba3b8138060990d2987a0bd1
+DIST hypothesis-python-6.43.0.tar.gz 9188330 BLAKE2B db237962b3c16c223fb49fff4c0c2e175f1969ce01c4ded3be3bcad0ff78c928f109016da58a4e9512e0d8fc3ea5ce9836732d00c74acc3ecd185ca1030849c1 SHA512 c1c3bda72cbe4f29be957d21682be1d1973f74afdf4adf95f388f05e4230781b16fb0004720620368b9aec4aa0623c4f79b7f3df16c37fbe9e812bb70a065af1
diff --git a/dev-python/hypothesis/hypothesis-6.43.0.ebuild b/dev-python/hypothesis/hypothesis-6.43.0.ebuild
new file mode 100644
index 000000000000..d09b69112221
--- /dev/null
+++ b/dev-python/hypothesis/hypothesis-6.43.0.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+PYTHON_REQ_USE="threads(+),sqlite"
+
+inherit distutils-r1 multiprocessing optfeature
+
+DESCRIPTION="A library for property based testing"
+HOMEPAGE="https://github.com/HypothesisWorks/hypothesis https://pypi.org/project/hypothesis/"
+SRC_URI="https://github.com/HypothesisWorks/${PN}/archive/${PN}-python-${PV}.tar.gz"
+S="${WORKDIR}/${PN}-${PN}-python-${PV}/${PN}-python"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+IUSE="cli"
+
+RDEPEND="
+ >=dev-python/attrs-19.2.0[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2.1.0[${PYTHON_USEDEP}]
+ cli? (
+ $(python_gen_cond_dep '
+ dev-python/black[${PYTHON_USEDEP}]
+ dev-python/click[${PYTHON_USEDEP}]
+ ' python3_{8..10})
+ )
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pexpect[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ # subtests are broken by warnings from random plugins
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=xdist.plugin,pytest_forked,_hypothesis_pytestplugin
+
+ epytest tests/cover tests/pytest tests/quality \
+ -n "$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")"
+}
+
+python_install() {
+ distutils-r1_python_install
+ if ! use cli || ! has "${EPYTHON}" python3.{8..10}; then
+ rm -r "${ED}/usr/bin" "${D}$(python_get_scriptdir)" || die
+ fi
+}
+
+pkg_postinst() {
+ optfeature "datetime support" dev-python/pytz
+ optfeature "dateutil support" dev-python/python-dateutil
+ optfeature "numpy support" dev-python/numpy
+ optfeature "django support" dev-python/django dev-python/pytz
+ optfeature "pandas support" dev-python/pandas
+ optfeature "pytest support" dev-python/pytest
+}
diff --git a/dev-python/i3ipc/Manifest b/dev-python/i3ipc/Manifest
new file mode 100644
index 000000000000..5d15d84f5dcc
--- /dev/null
+++ b/dev-python/i3ipc/Manifest
@@ -0,0 +1 @@
+DIST i3ipc-2.2.1.tar.gz 47760 BLAKE2B 4decad566ab87ed48d2ca9cc29c35e9d92bfbb0bd3ad76507fe54cf4b6b52ddd1590be75a65398dddb785b94b444e41577984daab780f91afe0d251b6b12bd93 SHA512 4a09df1d580953ab2cb55345a32731427662d3969e7f6c78cf27c685d24f289be611b00b10a93cb765663b73075ebd07ae3b76d0a9b1f832fc467944c35230f9
diff --git a/dev-python/i3ipc/i3ipc-2.2.1.ebuild b/dev-python/i3ipc/i3ipc-2.2.1.ebuild
new file mode 100644
index 000000000000..5d279db0569a
--- /dev/null
+++ b/dev-python/i3ipc/i3ipc-2.2.1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+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
new file mode 100644
index 000000000000..a0a60d71470f
--- /dev/null
+++ b/dev-python/i3ipc/metadata.xml
@@ -0,0 +1,6 @@
+<?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/injector/Manifest b/dev-python/injector/Manifest
new file mode 100644
index 000000000000..e56b938b0ca6
--- /dev/null
+++ b/dev-python/injector/Manifest
@@ -0,0 +1 @@
+DIST injector-0.18.4.tar.gz 23230 BLAKE2B 3cc344f5eab64f58575d4772b7d867988b4b3550b2cb9d7f24d169f66e05953cb395800d77fc9edcb5ccfdbc3b8688cae0f33170aa3312b19c2d44173f2e8ee1 SHA512 3afc5e69ade4d60f6f60c81b1067428852a39767a14c779436ed9137e922c47f0818b599afef0b13a1dd6fe3cd95a16fb85963e7fc5c3b6f0ae84ec54f219aca
diff --git a/dev-python/injector/injector-0.18.4.ebuild b/dev-python/injector/injector-0.18.4.ebuild
new file mode 100644
index 000000000000..f4a679d24a5d
--- /dev/null
+++ b/dev-python/injector/injector-0.18.4.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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/metadata.xml b/dev-python/injector/metadata.xml
new file mode 100644
index 000000000000..23101827af09
--- /dev/null
+++ b/dev-python/injector/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>myrvogna@electrosphe.re</email>
+ <name>Octiabrina Terrien-Puig</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">injector</remote-id>
+ <remote-id type="github">alecthomas/injector</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/itemadapter/Manifest b/dev-python/itemadapter/Manifest
new file mode 100644
index 000000000000..ecb355cede61
--- /dev/null
+++ b/dev-python/itemadapter/Manifest
@@ -0,0 +1 @@
+DIST itemadapter-0.4.0.tar.gz 14682 BLAKE2B ce7c9bcebd1dd75c35e76af2a788e6b3695c4e2fa19cc7dc467dc8dcd58deb71ae2f9272195d5030c0a72b80f56171ed9760eefd6c5c2b2769176ca8b441d6b8 SHA512 c7226c2e0e8c2f1695ec62e67a60b99ed92f4e71c9003a274292df91cef54abc382f614eb08422be6d532c0e91fa0bf962d2b5f6b2220e107b5ba43d921be15d
diff --git a/dev-python/itemadapter/itemadapter-0.4.0.ebuild b/dev-python/itemadapter/itemadapter-0.4.0.ebuild
new file mode 100644
index 000000000000..a6a47c5fc12f
--- /dev/null
+++ b/dev-python/itemadapter/itemadapter-0.4.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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 000000000000..65ac1f20562d
--- /dev/null
+++ b/dev-python/itemadapter/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/itemloaders/Manifest b/dev-python/itemloaders/Manifest
new file mode 100644
index 000000000000..48ec99822ae5
--- /dev/null
+++ b/dev-python/itemloaders/Manifest
@@ -0,0 +1 @@
+DIST itemloaders-1.0.4.tar.gz 26673 BLAKE2B a582a80a8a74be05c3e4770dc6fa017e43d20c496da79c5bb7ae9b02bdb282183347849e7a83b6174821fcc46d4021414b354537dc14291b6be82e774ffefd4e SHA512 b3f59c99db8dbf9757a304c55bd6b333347fdddc984edbeacd8314baaf8e319897b33801bc481d192330a573e75a6aa586d3da5bb11318287709723221bcbde6
diff --git a/dev-python/itemloaders/itemloaders-1.0.4.ebuild b/dev-python/itemloaders/itemloaders-1.0.4.ebuild
new file mode 100644
index 000000000000..62fbe0e3863c
--- /dev/null
+++ b/dev-python/itemloaders/itemloaders-1.0.4.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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[${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 000000000000..65ac1f20562d
--- /dev/null
+++ b/dev-python/itemloaders/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/iuliia/Manifest b/dev-python/iuliia/Manifest
new file mode 100644
index 000000000000..0621c9a3428b
--- /dev/null
+++ b/dev-python/iuliia/Manifest
@@ -0,0 +1,2 @@
+DIST iuliia-0.11.4.tar.gz 21376 BLAKE2B 181c7ace6ff35c10d6dbb1669621f94e51391ae4dc22c0f1d046856c99c7fce2dfd8d70f395b9dfa58d00212f3010049d02bcf8cf1ff9ac215274ae31236355e SHA512 29b36c1df9ddd4ddd0700d93f42615729984e82b20e5b8d9e72040936ee50b6df06cea95eca98497d12992913a6618ab67900d2f60e32f6c8d1043e784781827
+DIST iuliia-0.11.5.tar.gz 21585 BLAKE2B 99492fb2783b92ed36231fdaaf06ff405e4ec29fa0766a29657a4fce901050e995cb88238fccffbd7bb80ab949d4b6428ad6cb251cb35568d7b95f4e650e0686 SHA512 86e9dbff7a32486ed35782055fdabb6abb014ceb4e4f26acc0933007f4be11ccbb439e13d01edfcadd19b64e241bfacbce1d4e2faf368d9aa697f3d307b4ff84
diff --git a/dev-python/iuliia/iuliia-0.11.4.ebuild b/dev-python/iuliia/iuliia-0.11.4.ebuild
new file mode 100644
index 000000000000..5947ac1a3e29
--- /dev/null
+++ b/dev-python/iuliia/iuliia-0.11.4.ebuild
@@ -0,0 +1,22 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+DISTUTILS_USE_SETUPTOOLS="pyproject.toml"
+inherit distutils-r1
+
+DESCRIPTION="Transliterate Cyrillic to Latin in every possible way"
+HOMEPAGE="
+ https://dangry.ru/iuliia/
+ https://pypi.org/project/iuliia/
+ https://github.com/nalgeon/iuliia-py
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests pytest
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 000000000000..8da3d3bacaf8
--- /dev/null
+++ b/dev-python/iuliia/iuliia-0.11.5.ebuild
@@ -0,0 +1,22 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+DISTUTILS_USE_PEP517="flit"
+inherit distutils-r1
+
+DESCRIPTION="Transliterate Cyrillic to Latin in every possible way"
+HOMEPAGE="
+ https://dangry.ru/iuliia/
+ https://pypi.org/project/iuliia/
+ https://github.com/nalgeon/iuliia-py
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+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 000000000000..998c430e0242
--- /dev/null
+++ b/dev-python/iuliia/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>
+ <remote-id type="github">nalgeon/iuliia-py</remote-id>
+ <remote-id type="pypi">iuliia</remote-id>
+ </upstream>
+ <maintainer type="person">
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/jaeger-client/Manifest b/dev-python/jaeger-client/Manifest
new file mode 100644
index 000000000000..7ea76f97a284
--- /dev/null
+++ b/dev-python/jaeger-client/Manifest
@@ -0,0 +1 @@
+DIST jaeger-client-4.8.0.tar.gz 87365 BLAKE2B 11e688cd4b23c42d9fe34c9975534f59788c17e3c1057e24e8acc51b8907bbb50d0cbbdbd1754a9b7108c40f2c9c436edf31d2cdeb585c5f31f1a425e26ad071 SHA512 1b88700ebb2a81d213b425904edb431e676d6f52c5b300b780d0a4f59f5d300bf13f09d233a5ca0dee2bce54de743ec9632be99ef1820eddc563897c47eb3129
diff --git a/dev-python/jaeger-client/jaeger-client-4.8.0.ebuild b/dev-python/jaeger-client/jaeger-client-4.8.0.ebuild
new file mode 100644
index 000000000000..1d29e2bf05ab
--- /dev/null
+++ b/dev-python/jaeger-client/jaeger-client-4.8.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Jaeger Bindings for Python OpenTracing API"
+HOMEPAGE="
+ https://github.com/jaegertracing/jaeger-client-python
+ https://pypi.org/project/jaeger-client/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/threadloop-1[${PYTHON_USEDEP}]
+ dev-python/thrift[${PYTHON_USEDEP}]
+ >=www-servers/tornado-4.3[${PYTHON_USEDEP}]
+ >=dev-python/opentracing-2.1[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pycurl[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/pytest-tornado[${PYTHON_USEDEP}]
+ dev-python/pytest-benchmark[${PYTHON_USEDEP}]
+ dev-python/pytest-localserver[${PYTHON_USEDEP}]
+ >=dev-python/tchannel-2.1.0[${PYTHON_USEDEP}]
+ >=dev-python/opentracing_instrumentation-3[${PYTHON_USEDEP}]
+ >=dev-python/prometheus_client-0.11.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/jaeger-client/metadata.xml b/dev-python/jaeger-client/metadata.xml
new file mode 100644
index 000000000000..f460b9964cbf
--- /dev/null
+++ b/dev-python/jaeger-client/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="pypi">jaeger-client</remote-id>
+ <remote-id type="github">jaegertracing/jaeger-client-python</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/jellyfin-apiclient-python/Manifest b/dev-python/jellyfin-apiclient-python/Manifest
new file mode 100644
index 000000000000..b91566a4c7c6
--- /dev/null
+++ b/dev-python/jellyfin-apiclient-python/Manifest
@@ -0,0 +1,2 @@
+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
new file mode 100644
index 000000000000..ac7aa7b57943
--- /dev/null
+++ b/dev-python/jellyfin-apiclient-python/jellyfin-apiclient-python-1.6.2.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..0de1e0df4d20
--- /dev/null
+++ b/dev-python/jellyfin-apiclient-python/jellyfin-apiclient-python-1.7.2.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..cd174bd3efed
--- /dev/null
+++ b/dev-python/jellyfin-apiclient-python/metadata.xml
@@ -0,0 +1,8 @@
+<?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/jplephem/Manifest b/dev-python/jplephem/Manifest
new file mode 100644
index 000000000000..26ee80c32c70
--- /dev/null
+++ b/dev-python/jplephem/Manifest
@@ -0,0 +1 @@
+DIST jplephem-2.16.tar.gz 40918 BLAKE2B 90a14b424f4c48bb754bd4cca6a9e1d5e2a4cc51821234118889cc854c119c60b66c0157deae60f88b7368d8914124ec95ec1ac7646479cd79ee759515a1af09 SHA512 02bd3bac834726f1f41fbed9e3e7edc9ba3d00c394099248f9e1da48730c620d83880e24a3b29916becd7ced284efc7388ed98d5bf204a6fc53ec9e016ce0cf0
diff --git a/dev-python/jplephem/jplephem-2.16.ebuild b/dev-python/jplephem/jplephem-2.16.ebuild
new file mode 100644
index 000000000000..54afc71828bd
--- /dev/null
+++ b/dev-python/jplephem/jplephem-2.16.ebuild
@@ -0,0 +1,22 @@
+# 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,10} )
+
+inherit distutils-r1
+
+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"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-python/numpy[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
diff --git a/dev-python/jplephem/metadata.xml b/dev-python/jplephem/metadata.xml
new file mode 100644
index 000000000000..129c347532fc
--- /dev/null
+++ b/dev-python/jplephem/metadata.xml
@@ -0,0 +1,17 @@
+<?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">
+ This package can load and use a Jet Propulsion Laboratory (JPL)
+ ephemeris for predicting the position and velocity of a planet or
+ other Solar System body.
+ </longdescription>
+ <upstream>
+ <remote-id type="pypi">jplephem</remote-id>
+ <remote-id type="github">brandon-rhodes/python-jplephem</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 000000000000..e8a03f93b9db
--- /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.ebuild b/dev-python/jsonpath-rw-ext/jsonpath-rw-ext-1.2.2.ebuild
new file mode 100644
index 000000000000..9bb72281f85b
--- /dev/null
+++ b/dev-python/jsonpath-rw-ext/jsonpath-rw-ext-1.2.2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+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
+)
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Extensions for JSONPath RW"
+HOMEPAGE="
+ https://pypi.org/project/jsonpath-rw-ext/
+ https://github.com/sileht/python-jsonpath-rw-ext
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.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/subunit-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/testrepository-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-1.4.0[${PYTHON_USEDEP}]
+ )
+"
+
+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 000000000000..aaf8e8137b1f
--- /dev/null
+++ b/dev-python/jsonpath-rw-ext/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <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 000000000000..d4a65943b7f0
--- /dev/null
+++ b/dev-python/jsonpath-rw/Manifest
@@ -0,0 +1 @@
+DIST jsonpath-rw-1.4.0.tar.gz 19813 BLAKE2B 2ee89864f38a6671ad593b5f056a19a794fcf6dd8dd56af1fbc709e50336ee5613c1144ec7f557d7380bed4eedd4ee7cc39f99ccb61dbc3a34c2e36641b183dc SHA512 8308e950f8b397e3ddd4120aa7794ab198d9f1a233c5fe16c2f393f1ba7e7e3bf289063a8b28f2425bfe0906be028f9bc1830779d09a56c306f2f102d26e6259
diff --git a/dev-python/jsonpath-rw/jsonpath-rw-1.4.0.ebuild b/dev-python/jsonpath-rw/jsonpath-rw-1.4.0.ebuild
new file mode 100644
index 000000000000..20b0a4a066e8
--- /dev/null
+++ b/dev-python/jsonpath-rw/jsonpath-rw-1.4.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MYPN="python-${PN}"
+PYTHON_COMPAT=( python3_{7,8,9,10} 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/${MYPN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MYPN}-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+RDEPEND="
+ dev-python/decorator[${PYTHON_USEDEP}]
+ dev-python/ply[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+DEPEND="${REDEPEND}"
+BDEPEND="
+ test? (
+ dev-python/nose[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ )
+"
+
+RESTRICT="!test? ( test )"
+
+python_test() {
+ nosetests --verbose || die
+ py.test -v -v || die
+}
diff --git a/dev-python/jsonpath-rw/metadata.xml b/dev-python/jsonpath-rw/metadata.xml
new file mode 100644
index 000000000000..14dc6d8c23b5
--- /dev/null
+++ b/dev-python/jsonpath-rw/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">
+ <description>comaintainers welcome</description>
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <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
new file mode 100644
index 000000000000..ec34bb284c26
--- /dev/null
+++ b/dev-python/jupyter-sphinx/Manifest
@@ -0,0 +1 @@
+DIST jupyter-sphinx-0.3.2.tar.gz 25077 BLAKE2B 9baea1e1c5f7a59200b073752b8a5ff0af43ecded1d7880758e58ca14610d67518beb7fb67dfe979008ea1f8503a1898d7cd0d589a52e245aafc1b7d6a280da3 SHA512 1e3c760a8151647b87c26b6ee38f90430f096f147e9b2aacfe46eb9fcfcd70f50f2b8a34a2240134766c6fc53987c932bee41d5d22ef60abc2aaa6cefedc7297
diff --git a/dev-python/jupyter-sphinx/jupyter-sphinx-0.3.2.ebuild b/dev-python/jupyter-sphinx/jupyter-sphinx-0.3.2.ebuild
new file mode 100644
index 000000000000..6c2ab4dbd0d0
--- /dev/null
+++ b/dev-python/jupyter-sphinx/jupyter-sphinx-0.3.2.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+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"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/sphinx-2[${PYTHON_USEDEP}]
+ >=dev-python/ipywidgets-7.0.0[${PYTHON_USEDEP}]
+ dev-python/ipython[${PYTHON_USEDEP}]
+ >=dev-python/nbconvert-5.5[${PYTHON_USEDEP}]
+ dev-python/nbformat[${PYTHON_USEDEP}]
+"
+
+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
new file mode 100644
index 000000000000..a0a60d71470f
--- /dev/null
+++ b/dev-python/jupyter-sphinx/metadata.xml
@@ -0,0 +1,6 @@
+<?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/jupyterlab_pygments/Manifest b/dev-python/jupyterlab_pygments/Manifest
index 149205024411..ca067225840d 100644
--- a/dev-python/jupyterlab_pygments/Manifest
+++ b/dev-python/jupyterlab_pygments/Manifest
@@ -1,2 +1,3 @@
DIST jupyterlab_pygments-0.1.2.tar.gz 561989 BLAKE2B 85d6b59b2c959f838746c7c6fed99ad5adda89a514a77327cc8e9ba7d6a91b1c0206d999c09149e6c5b9c67911ca16914f0b17a67b3505db73c23a7194fe4566 SHA512 0b4f4c13017f8afbd83e9fb575b3c4ee44272bc01421761ae7b140ecab743d825aa195432caa5f6153bda0ef84fe3ab92dad61ffd9b048927736a916dd267b5a
DIST jupyterlab_pygments-0.2.0.tar.gz 132386 BLAKE2B db2b1677227fc1817769aaabd7f9e559871b13a9f937e76f5912a6e99fd186b19ce136712a01c8cd6db2b246fd2e7176b897164c9084781a59eb5f72c21577a1 SHA512 0ac05c3f31e554c51e889c4bf4af6ba3f787ef152a7a7e1862ff9dc46d89418bc3567c57e42b30f3134f1b56cc9c31a6d96ef76905fdb6ee39decfa8cf388ca6
+DIST jupyterlab_pygments-0.2.1.tar.gz 144325 BLAKE2B ee3f9d9789652ee7226cff550505113a7e5f779bbf58405d699bad44455e7448b16cdf607515528f7240dbb5008b0a3b8502c23caa842bf731b5e6a54bbcf7c7 SHA512 746b490cffba3fce133d09e209939f45d7080b778d9c78feeaeb4ca4e7ba34668499bdc7ab4c70a972caa1ed4b53e0e5d788802478c6047d93b577e618214027
diff --git a/dev-python/jupyterlab_pygments/jupyterlab_pygments-0.2.1.ebuild b/dev-python/jupyterlab_pygments/jupyterlab_pygments-0.2.1.ebuild
new file mode 100644
index 000000000000..fce3dd219c48
--- /dev/null
+++ b/dev-python/jupyterlab_pygments/jupyterlab_pygments-0.2.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2020-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=jupyter
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Pygments theme making use of JupyterLab CSS variables"
+HOMEPAGE="
+ https://pypi.org/project/jupyterlab-pygments/
+ https://github.com/jupyterlab/jupyterlab_pygments/
+"
+SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ dev-python/pygments[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/keyrings-alt/Manifest b/dev-python/keyrings-alt/Manifest
new file mode 100644
index 000000000000..931a5e32adbb
--- /dev/null
+++ b/dev-python/keyrings-alt/Manifest
@@ -0,0 +1 @@
+DIST keyrings-alt-4.1.0.tar.gz 26104 BLAKE2B 51b2bfa7d67182fa47e2994f50a8a1c9a94c8eb138e4957f1f33296f4c8696c06405953f9b10a57154d1e32f606db14810612a3526d727a8a6bcd468dbb02523 SHA512 941793b72688b182002793c14e4df84c79d8864fa3033d25326af8fd8cc90c500b10b53827916240f242490f60a9fd638873cedc3b8b04455a2621c756228bf8
diff --git a/dev-python/keyrings-alt/keyrings-alt-4.1.0.ebuild b/dev-python/keyrings-alt/keyrings-alt-4.1.0.ebuild
new file mode 100644
index 000000000000..0f2831877085
--- /dev/null
+++ b/dev-python/keyrings-alt/keyrings-alt-4.1.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+MY_PN=${PN/-/.}
+DESCRIPTION="Alternate keyring backend implementations for use with the keyring package"
+HOMEPAGE="
+ https://github.com/jaraco/keyrings.alt
+ https://pypi.org/project/keyrings.alt/
+"
+SRC_URI="https://github.com/jaraco/${MY_PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/keyring[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/setuptools_scm-3.4.1[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ dev-python/rst-linker \
+ dev-python/jaraco-packaging
+
+pkg_setup() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+}
+
+S="${WORKDIR}/${MY_PN}-${PV}"
diff --git a/dev-python/keyrings-alt/metadata.xml b/dev-python/keyrings-alt/metadata.xml
new file mode 100644
index 000000000000..700850bcec4d
--- /dev/null
+++ b/dev-python/keyrings-alt/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>ceamac.paragon@gmail.com</email>
+ <description>Primary maintainer</description>
+</maintainer>
+<upstream>
+ <remote-id type="github">jaraco/keyrings.alt</remote-id>
+ <remote-id type="pypi">keyrings.alt</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/dev-python/keystonemiddleware/Manifest b/dev-python/keystonemiddleware/Manifest
new file mode 100644
index 000000000000..eb7236860209
--- /dev/null
+++ b/dev-python/keystonemiddleware/Manifest
@@ -0,0 +1 @@
+DIST keystonemiddleware-9.4.0.tar.gz 184829 BLAKE2B 41bdb5af718e1160d6d7b04658b72f3a7e10f477d9b9aaeda7a926555f91963879c1aa9101ddb2a8179b86dd12f9d0501595fc82b383a41b4818807794272754 SHA512 bb44c68435e0ba7e58674731080cb9431dbfa72bbdbc25d6746466102620d896a5944367b55d3f3dc7418d46f15047f58f9479d7adb920f880e5e6bbe05c1e54
diff --git a/dev-python/keystonemiddleware/keystonemiddleware-9.4.0.ebuild b/dev-python/keystonemiddleware/keystonemiddleware-9.4.0.ebuild
new file mode 100644
index 000000000000..fdb62f66c6b7
--- /dev/null
+++ b/dev-python/keystonemiddleware/keystonemiddleware-9.4.0.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_SETUPTOOLS=bdepend
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A middleware for the OpenStack Keystone API"
+HOMEPAGE="
+ https://github.com/openstack/keystonemiddleware
+ https://opendev.org/openstack/keystonemiddleware
+ https://launchpad.net/keystonemiddleware
+ https://pypi.org/project/keystonemiddleware/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=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-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pycadf-1.1.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}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/cryptography-3.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+ >=dev-python/testresources-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/python-memcached-1.59[${PYTHON_USEDEP}]
+ >=dev-python/webtest-2.0.27[${PYTHON_USEDEP}]
+ >=dev-python/oslo-messaging-5.29.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/keystonemiddleware/metadata.xml b/dev-python/keystonemiddleware/metadata.xml
new file mode 100644
index 000000000000..f4976cfd5aca
--- /dev/null
+++ b/dev-python/keystonemiddleware/metadata.xml
@@ -0,0 +1,14 @@
+<?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
new file mode 100644
index 000000000000..936e8f58b3e1
--- /dev/null
+++ b/dev-python/kitchen/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..1d885ed650ec
--- /dev/null
+++ b/dev-python/kitchen/kitchen-1.2.6.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} 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
new file mode 100644
index 000000000000..ad8cead24f43
--- /dev/null
+++ b/dev-python/kitchen/metadata.xml
@@ -0,0 +1,8 @@
+<?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/langdetect/Manifest b/dev-python/langdetect/Manifest
new file mode 100644
index 000000000000..a11d7c268c91
--- /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/langdetect-1.0.9.ebuild b/dev-python/langdetect/langdetect-1.0.9.ebuild
new file mode 100644
index 000000000000..4fce4c8c82ad
--- /dev/null
+++ b/dev-python/langdetect/langdetect-1.0.9.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_{7,8,9,10} pypy3 )
+inherit distutils-r1
+
+DESCRIPTION="Port of Google's language-detection library to Python"
+HOMEPAGE="
+ https://pypi.org/project/langdetect/
+ https://github.com/Mimino666/langdetect
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
+
+distutils_enable_tests unittest
diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml
new file mode 100644
index 000000000000..c6b0ba37c1e6
--- /dev/null
+++ b/dev-python/langdetect/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>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">langdetect</remote-id>
+ <remote-id type="github">Mimino666/langdetect</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/ldappool/Manifest b/dev-python/ldappool/Manifest
new file mode 100644
index 000000000000..eb00d3685af1
--- /dev/null
+++ b/dev-python/ldappool/Manifest
@@ -0,0 +1 @@
+DIST ldappool-3.0.0.tar.gz 22373 BLAKE2B 077a4cac18185860790cb57b4bbc858c9e8bb9dfe8df61732ee10e3ec037508e198c085a0163b8fade62cf61e491f16a691720a7fa8e23190302c5dcee6728ab SHA512 75491fa41b09ab9416397d40a596801c2f1ac133cb3946dcaf2f502414ca8241b72ccd8a106b8e04ff133cd5d568e3ed88795ca8c84b973f7be0c49ba123df31
diff --git a/dev-python/ldappool/ldappool-3.0.0.ebuild b/dev-python/ldappool/ldappool-3.0.0.ebuild
new file mode 100644
index 000000000000..ca5b17934d92
--- /dev/null
+++ b/dev-python/ldappool/ldappool-3.0.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=bdepend
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A connection pool for python-ldap"
+HOMEPAGE="
+ https://pypi.org/project/ldappool/
+ https://opendev.org/openstack/ldappool
+ https://launchpad.net/ldappool
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/python-ldap-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testresources-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/ldappool/metadata.xml b/dev-python/ldappool/metadata.xml
new file mode 100644
index 000000000000..1281f06b8201
--- /dev/null
+++ b/dev-python/ldappool/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">
+ <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
new file mode 100644
index 000000000000..90e2bb9d26be
--- /dev/null
+++ b/dev-python/libusb1/Manifest
@@ -0,0 +1 @@
+DIST libusb1-2.0.1.tar.gz 82619 BLAKE2B 53b5302b0b2a6907b62493f56a041add928a20950542bf8034ada4240b65c51fd187aff3a97393d2cde64b4a7756a0aeebec449a62b25b5b7c82f4afe815c5a5 SHA512 d675ff9e0b89f53341182e69d62573a6494826abdfbcb56a3fe2de232920375ddcd37da1ee802a2315ef695418ce202a3c84b8ec4c7ed24799ed5aee37eaf242
diff --git a/dev-python/libusb1/libusb1-2.0.1.ebuild b/dev-python/libusb1/libusb1-2.0.1.ebuild
new file mode 100644
index 000000000000..84542ccfd8b3
--- /dev/null
+++ b/dev-python/libusb1/libusb1-2.0.1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Pure-python wrapper for libusb-1.0"
+HOMEPAGE="https://github.com/vpelletier/python-libusb1 https://pypi.org/project/libusb1/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+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
new file mode 100644
index 000000000000..1574714707af
--- /dev/null
+++ b/dev-python/libusb1/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>a.zuber@gmx.ch</email>
+ <name>Andreas Zuber</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">vpelletier/python-libusb1</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/manhole/Manifest b/dev-python/manhole/Manifest
new file mode 100644
index 000000000000..940de3533f98
--- /dev/null
+++ b/dev-python/manhole/Manifest
@@ -0,0 +1 @@
+DIST manhole-1.8.0.tar.gz 30823 BLAKE2B 7de4966faaa5a386097d9e3015318f3df5422f9f4525347ea93bc1b3cc988236e2db9dcdf7c5e4f058ad816c74beebab210af65fd331e2347da9c05035a22128 SHA512 041452d602895f7ceaafc74ac50713acd470120b022a942946de83f90d2d839ee15b333dfc329f88597b13e0b3fee436af526beae95a3ff94e51376fd2cc27e6
diff --git a/dev-python/manhole/manhole-1.8.0-r1.ebuild b/dev-python/manhole/manhole-1.8.0-r1.ebuild
new file mode 100644
index 000000000000..374d8fee6459
--- /dev/null
+++ b/dev-python/manhole/manhole-1.8.0-r1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+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-${P}"
+
+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_sphinx docs dev-python/sphinx-py3doc-enhanced-theme
+distutils_enable_tests pytest
+
+python_test() {
+ distutils_install_for_testing
+
+ local -x PYTHONPATH="${S}/src:${PYTHONPATH}"
+ local EPYTEST_DESELECT=(
+ tests/test_manhole.py::test_connection_handler_exec
+ tests/test_manhole.py::test_non_daemon_connection
+ tests/test_manhole.py::test_daemon_connection
+ tests/test_manhole.py::test_environ_variable_activation
+ tests/test_manhole.py::test_fork_exec
+ tests/test_manhole.py::test_uwsgi
+ tests/test_manhole_cli.py::test_help
+
+ # usually passes but sometimes fails (bug #792225)
+ tests/test_manhole.py::test_stderr_doesnt_deadlock
+ )
+
+ if [[ ${EPYTHON} == pypy3 ]]; then
+ EPYTEST_DESELECT+=(
+ tests/test_manhole.py::test_log_fh
+ )
+ fi
+
+ epytest
+}
diff --git a/dev-python/manhole/metadata.xml b/dev-python/manhole/metadata.xml
new file mode 100644
index 000000000000..293942a4d227
--- /dev/null
+++ b/dev-python/manhole/metadata.xml
@@ -0,0 +1,20 @@
+<?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">
+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.
+
+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>
+</pkgmetadata>
diff --git a/dev-python/markdown-include/Manifest b/dev-python/markdown-include/Manifest
new file mode 100644
index 000000000000..8b34c8a7c6fe
--- /dev/null
+++ b/dev-python/markdown-include/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..4e06b693f898
--- /dev/null
+++ b/dev-python/markdown-include/markdown-include-0.6.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..34949af602e4
--- /dev/null
+++ b/dev-python/markdown-include/metadata.xml
@@ -0,0 +1,16 @@
+<?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/md-environ/Manifest b/dev-python/md-environ/Manifest
new file mode 100644
index 000000000000..34d49662a2fe
--- /dev/null
+++ b/dev-python/md-environ/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..b7b4f0b82bd2
--- /dev/null
+++ b/dev-python/md-environ/md-environ-0.1.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..9c505cec495d
--- /dev/null
+++ b/dev-python/md-environ/metadata.xml
@@ -0,0 +1,12 @@
+<?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>
+ <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
new file mode 100644
index 000000000000..32786ca79eb1
--- /dev/null
+++ b/dev-python/microversion-parse/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..7f1166125d76
--- /dev/null
+++ b/dev-python/microversion-parse/metadata.xml
@@ -0,0 +1,10 @@
+<?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-r1.ebuild b/dev-python/microversion-parse/microversion-parse-1.0.1-r1.ebuild
new file mode 100644
index 000000000000..8685b26559db
--- /dev/null
+++ b/dev-python/microversion-parse/microversion-parse-1.0.1-r1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A simple parser for OpenStack microversion headers"
+HOMEPAGE="
+ https://opendev.org/openstack/microversion-parse
+ 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"
+
+DEPEND="
+ >=dev-python/pbr-5.0[${PYTHON_USEDEP}]
+ >=dev-python/webob-1.2.3[${PYTHON_USEDEP}]
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/testtools-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/gabbi-1.35.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/mkdocs-exclude/Manifest b/dev-python/mkdocs-exclude/Manifest
new file mode 100644
index 000000000000..ba75e14501b9
--- /dev/null
+++ b/dev-python/mkdocs-exclude/Manifest
@@ -0,0 +1 @@
+DIST mkdocs-exclude-1.0.2.tar.gz 6751 BLAKE2B 40ed23381925b6de426c0b16b8771f751735ecbc2966f356ea8ca16d177ddf0c6668e2ef9bc44a3d943b56680f966278042c7c24af49072339cbc2314e847cdc SHA512 71ad14d13547f02487eccacf0f4a5d2ffac7cdb7729feec4c41646e85d273280191239f12668bbb6ef750e9fcc1221abc4b49adffdcab9db2f8f819dfa7307bc
diff --git a/dev-python/mkdocs-exclude/metadata.xml b/dev-python/mkdocs-exclude/metadata.xml
new file mode 100644
index 000000000000..1d0553f1bdfb
--- /dev/null
+++ b/dev-python/mkdocs-exclude/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">apenwarr/mkdocs-exclude</remote-id>
+ <remote-id type="pypi">mkdocs-exclude</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/mkdocs-exclude/mkdocs-exclude-1.0.2.ebuild b/dev-python/mkdocs-exclude/mkdocs-exclude-1.0.2.ebuild
new file mode 100644
index 000000000000..5fb6c4b366ec
--- /dev/null
+++ b/dev-python/mkdocs-exclude/mkdocs-exclude-1.0.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/mnemonic/Manifest b/dev-python/mnemonic/Manifest
new file mode 100644
index 000000000000..1d1bbd095938
--- /dev/null
+++ b/dev-python/mnemonic/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..b75d39459651
--- /dev/null
+++ b/dev-python/mnemonic/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="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
new file mode 100644
index 000000000000..8a3f19b8b9a4
--- /dev/null
+++ b/dev-python/mnemonic/mnemonic-0.19.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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 000000000000..b0927a066ebe
--- /dev/null
+++ b/dev-python/mobi/Manifest
@@ -0,0 +1 @@
+DIST mobi-0.3.3-r1.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 000000000000..fe5d3bf4d02c
--- /dev/null
+++ b/dev-python/mobi/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>1over137@anche.no</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 000000000000..9b4e55b518a1
--- /dev/null
+++ b/dev-python/mobi/mobi-0.3.3.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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.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/monotonic/Manifest b/dev-python/monotonic/Manifest
new file mode 100644
index 000000000000..b594ed3899e8
--- /dev/null
+++ b/dev-python/monotonic/Manifest
@@ -0,0 +1 @@
+DIST monotonic-1.6.tar.gz 7615 BLAKE2B 0ec895fe54005a8bf8d65cdad89c1120af8217fbcc4baf5f4e9a4ca5e26ecec92c25e583dc2b65ed217500bf6e51a0b2e694e0c27aacdad677829114b0731a03 SHA512 e4ee3aa349592361695bdf10a302ea37981c3f07883b01b10654c6a89b62ff5ae7fef13d96dab845234f06373d9204c02fca9e10cbaab334b9c41b9fd1fc5193
diff --git a/dev-python/monotonic/metadata.xml b/dev-python/monotonic/metadata.xml
new file mode 100644
index 000000000000..e6d6dd6dbc2e
--- /dev/null
+++ b/dev-python/monotonic/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">
+ <description>co-maintainers welcome</description>
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">monotonic</remote-id>
+ <remote-id type="github">atdt/monotonic</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/monotonic/monotonic-1.6.ebuild b/dev-python/monotonic/monotonic-1.6.ebuild
new file mode 100644
index 000000000000..e436741450f4
--- /dev/null
+++ b/dev-python/monotonic/monotonic-1.6.ebuild
@@ -0,0 +1,16 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="An implementation of time.monotonic() for Python 2 & < 3.3"
+HOMEPAGE="https://github.com/atdt/monotonic"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
diff --git a/dev-python/nbclient/Manifest b/dev-python/nbclient/Manifest
index 272647d2fdeb..2abcc5769ff9 100644
--- a/dev-python/nbclient/Manifest
+++ b/dev-python/nbclient/Manifest
@@ -1 +1,2 @@
DIST nbclient-0.5.13.gh.tar.gz 75335 BLAKE2B 02a1d7d84b51c3af81f4d511e3a68a94d28478d09241a174309d9338a10be9c2e7cc48601bfb844dcad979eca867890e96df47d0e2aa6d7f7881a2e899b79ab5 SHA512 cebb9c4216d4c1668908a0b332a32d63825e7c3cfcf78b3e918df16364a04a12c396646f4e0b215a9bbc40d1be907a361f90aff3721e299d17c852f8acec0d04
+DIST nbclient-0.6.0.gh.tar.gz 76454 BLAKE2B a6b9f829d4d67f18d489d913000d6507d988ba2e88a0a63c1e750941fa24d071b4c711f1bf2f8af154b62b853378c9c1a97426d8b4082bf6911be1da6935cb26 SHA512 3e986b44ebafde75b95042fc32f38d152487b5ce3a62aac4a41eca27c35d24c795c4dd0e694a9f211d06bc37ea4f76959ce30ebb8a19e04ed4ffafd5b8f1a4a1
diff --git a/dev-python/nbclient/nbclient-0.6.0.ebuild b/dev-python/nbclient/nbclient-0.6.0.ebuild
new file mode 100644
index 000000000000..992f1096134b
--- /dev/null
+++ b/dev-python/nbclient/nbclient-0.6.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2020-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A client library for executing Jupyter notebooks"
+HOMEPAGE="
+ https://nbclient.readthedocs.io/en/latest/
+ https://github.com/jupyter/nbclient/
+ https://pypi.org/project/nbclient/
+"
+SRC_URI="
+ https://github.com/jupyter/nbclient/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/jupyter_client-6.1.5[${PYTHON_USEDEP}]
+ >=dev-python/nbformat-5.0[${PYTHON_USEDEP}]
+ dev-python/nest_asyncio[${PYTHON_USEDEP}]
+ >=dev-python/traitlets-5.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/ipython[${PYTHON_USEDEP}]
+ dev-python/ipykernel[${PYTHON_USEDEP}]
+ dev-python/ipywidgets[${PYTHON_USEDEP}]
+ dev-python/testpath[${PYTHON_USEDEP}]
+ dev-python/xmltodict[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/ncclient/Manifest b/dev-python/ncclient/Manifest
new file mode 100644
index 000000000000..923800b635fa
--- /dev/null
+++ b/dev-python/ncclient/Manifest
@@ -0,0 +1 @@
+DIST ncclient-0.6.12.tar.gz 129189 BLAKE2B 456791d422928b134aefc568f2ffa31ada9246c3e10e481724d57c56e8eb44353e402e828dfa34ee12edc7edb40e86a8e1ad12797666a7d12ecd9931e4377323 SHA512 ba1547579c830733f2f450ecafaf146a364b3a123f4cb0a3395e0ed19ad31025823b928d06acb537a531203a5ac65fc757b6fb34fefdde0f1e357e5f57bf73d0
diff --git a/dev-python/ncclient/metadata.xml b/dev-python/ncclient/metadata.xml
new file mode 100644
index 000000000000..ec4fe87ae628
--- /dev/null
+++ b/dev-python/ncclient/metadata.xml
@@ -0,0 +1,16 @@
+<?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">
+Python library that facilitates client-side scripting and application development around the NETCONF protocol
+ </longdescription>
+ <upstream>
+ <remote-id type="github">ncclient/ncclient</remote-id>
+ <remote-id type="pypi">ncclient</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/ncclient/ncclient-0.6.12.ebuild b/dev-python/ncclient/ncclient-0.6.12.ebuild
new file mode 100644
index 000000000000..9cc777dfcb37
--- /dev/null
+++ b/dev-python/ncclient/ncclient-0.6.12.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=rdepend
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python library for NETCONF clients"
+HOMEPAGE="
+ https://github.com/ncclient/ncclient
+ https://pypi.org/project/ncclient/
+"
+SRC_URI="https://github.com/ncclient/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/paramiko[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? ( dev-python/mock[${PYTHON_USEDEP}] )
+"
+
+distutils_enable_tests nose
diff --git a/dev-python/neutron-lib/Manifest b/dev-python/neutron-lib/Manifest
new file mode 100644
index 000000000000..247c039105dc
--- /dev/null
+++ b/dev-python/neutron-lib/Manifest
@@ -0,0 +1 @@
+DIST neutron-lib-2.20.0.tar.gz 525240 BLAKE2B 00dd2186f475e63bd145aeab0fe220687a86065755993c1168c038143e593e9e32493f4d3c83d6ecd609fb40bfec917b3be3ce9abe1501d8f25dbfead1f01bf1 SHA512 f6dc52900dde441e9e9b62bfa21fb0b03fdd2310e3084941c973d1ad6a6e55d11ca28bacdebba4165ced4c0f91208f6f3ee654d0f35808c84f08d6ea647240ec
diff --git a/dev-python/neutron-lib/metadata.xml b/dev-python/neutron-lib/metadata.xml
new file mode 100644
index 000000000000..eef0dab71662
--- /dev/null
+++ b/dev-python/neutron-lib/metadata.xml
@@ -0,0 +1,14 @@
+<?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.20.0.ebuild b/dev-python/neutron-lib/neutron-lib-2.20.0.ebuild
new file mode 100644
index 000000000000..a8f647f32fc3
--- /dev/null
+++ b/dev-python/neutron-lib/neutron-lib-2.20.0.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_DESELECT=(
+ neutron_lib/tests/unit/api/test_attributes.py::TestCoreResources::test_core_resource_attrs
+ neutron_lib/tests/unit/objects/test_common_types.py::TestField::test_coerce_good_values
+ neutron_lib/tests/unit/objects/test_common_types.py::TestField::test_coerce_bad_values
+ neutron_lib/tests/unit/objects/test_common_types.py::TestField::test_to_primitive
+ neutron_lib/tests/unit/objects/test_common_types.py::TestField::test_to_primitive_json_serializable
+ neutron_lib/tests/unit/objects/test_common_types.py::TestField::test_from_primitive
+ neutron_lib/tests/unit/test_context.py::TestNeutronContext::test_neutron_context_to_dict
+)
+EPYTEST_IGNORE=( neutron_lib/tests/unit/hacking )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Neutron shared routines and utilities"
+HOMEPAGE="
+ https://github.com/openstack/neutron-lib
+ https://opendev.org/openstack/neutron-lib
+ https://pypi.org/project/neutron-lib/
+
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-4.0.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pecan-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth-3.14.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-8.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-2.22.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-db-4.44.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.20.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-4.3.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-messaging-7.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-policy-3.6.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-2.25.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-service-1.24.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-4.5.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/webob-1.7.1[${PYTHON_USEDEP}]
+ >=dev-python/os-traits-0.9.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/reno-3.1.0[${PYTHON_USEDEP}]
+ >=dev-python/testresources-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+distutils_enable_tests pytest
diff --git a/dev-python/noiseprotocol/Manifest b/dev-python/noiseprotocol/Manifest
new file mode 100644
index 000000000000..0c5d463e9859
--- /dev/null
+++ b/dev-python/noiseprotocol/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..7bca1e32db94
--- /dev/null
+++ b/dev-python/noiseprotocol/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="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
new file mode 100644
index 000000000000..e3ceb7099131
--- /dev/null
+++ b/dev-python/noiseprotocol/noiseprotocol-0.3.1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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/nosehtmloutput/Manifest b/dev-python/nosehtmloutput/Manifest
new file mode 100644
index 000000000000..1931a9e9a980
--- /dev/null
+++ b/dev-python/nosehtmloutput/Manifest
@@ -0,0 +1 @@
+DIST nosehtmloutput-0.0.7.tar.gz 7582 BLAKE2B 6f2155358d91491fa42238404548379fa8046bdc8d81f4d2f7520330477032fb01838a0055838b2ac230cfc3804eaa22488e836d2afa553e54318e762e3eb543 SHA512 29461eec7f6f5c642730090fe93c1ecda9e0bb4e26bb977866c161854b5d4ec9cf037b1531b881d9504629dbddb8bc65888a416d14d99357dec99acd56ec553d
diff --git a/dev-python/nosehtmloutput/metadata.xml b/dev-python/nosehtmloutput/metadata.xml
new file mode 100644
index 000000000000..dbdafb32b81d
--- /dev/null
+++ b/dev-python/nosehtmloutput/metadata.xml
@@ -0,0 +1,12 @@
+<?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>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="pypi">nosehtmloutput</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/nosehtmloutput/nosehtmloutput-0.0.7.ebuild b/dev-python/nosehtmloutput/nosehtmloutput-0.0.7.ebuild
new file mode 100644
index 000000000000..3b0f509c18c3
--- /dev/null
+++ b/dev-python/nosehtmloutput/nosehtmloutput-0.0.7.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Nose plugin for generating HTML output"
+HOMEPAGE="
+ https://opendev.org/openstack/nose-html-output
+ https://pypi.org/project/nosehtmloutput/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/nose[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests nose
diff --git a/dev-python/nosexcover/Manifest b/dev-python/nosexcover/Manifest
new file mode 100644
index 000000000000..90bda662ebdf
--- /dev/null
+++ b/dev-python/nosexcover/Manifest
@@ -0,0 +1 @@
+DIST nosexcover-1.0.11.tar.gz 2903 BLAKE2B 297dc37504e2db992600ee4ec7c6c2cabdb36d8e137298755bdc6fe4af8dba666e99975a894ee534de62b4576514a3d912e6b98bcb43f228db9b58849788c092 SHA512 a4c75aac5095aa8323094b2a4eceb3af26243e6c87dd8720df8cf43ae0f76c28c638fe2c3cbcad621b7c2779115dccbb32e6a2f33a8bc5efb22a0fb0901d64fa
diff --git a/dev-python/nosexcover/metadata.xml b/dev-python/nosexcover/metadata.xml
new file mode 100644
index 000000000000..61b6af305522
--- /dev/null
+++ b/dev-python/nosexcover/metadata.xml
@@ -0,0 +1,14 @@
+<?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">nosexcover</remote-id>
+ <remote-id type="github">cmheisel/nose-xcover</remote-id>
+ <bugs-to>https://github.com/cmheisel/nose-xcover/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/nosexcover/nosexcover-1.0.11.ebuild b/dev-python/nosexcover/nosexcover-1.0.11.ebuild
new file mode 100644
index 000000000000..979944875389
--- /dev/null
+++ b/dev-python/nosexcover/nosexcover-1.0.11.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Extends nose.plugins.cover to add Cobertura-style XML reports"
+HOMEPAGE="
+ https://github.com/cmheisel/nose-xcover
+ https://pypi.org/project/nosexcover/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ dev-python/nose[${PYTHON_USEDEP}]
+ >=dev-python/coverage-3.4[${PYTHON_USEDEP}]
+"
+RDEPEND="${DEPEND}"
+
+distutils_enable_tests nose
diff --git a/dev-python/openstep-plist/Manifest b/dev-python/openstep-plist/Manifest
new file mode 100644
index 000000000000..ceac7099e22b
--- /dev/null
+++ b/dev-python/openstep-plist/Manifest
@@ -0,0 +1 @@
+DIST openstep-plist-0.3.0.tar.gz 20692 BLAKE2B 4be8190b08ad6146df92f774597405977af898dfa0dd7b639d8c07674641fec54c139f292ec15f04c44062c9c128e29716f1fa642e4d04d160d6c1b310128a68 SHA512 623fbe4b169805f42828e41ff949c2a9a91620b76c0adda33e4e66c19345826bef21ac645571e5c52208f029389b37b6b9918ad3e85388475b50c243e16ca715
diff --git a/dev-python/openstep-plist/metadata.xml b/dev-python/openstep-plist/metadata.xml
new file mode 100644
index 000000000000..d5c22fef46c6
--- /dev/null
+++ b/dev-python/openstep-plist/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/fonttools/openstep-plist/issues</bugs-to>
+ <remote-id type="github">fonttools/openstep-plist</remote-id>
+ <remote-id type="pypi">openstep-plist</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/openstep-plist/openstep-plist-0.3.0.ebuild b/dev-python/openstep-plist/openstep-plist-0.3.0.ebuild
new file mode 100644
index 000000000000..abec11aa3d59
--- /dev/null
+++ b/dev-python/openstep-plist/openstep-plist-0.3.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="ASCII plist parser written in Cython"
+HOMEPAGE="https://github.com/fonttools/openstep-plist"
+SRC_URI="https://github.com/fonttools/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64"
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND=""
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/cython-0.28.5[${PYTHON_USEDEP}]
+ dev-python/wheel[${PYTHON_USEDEP}]
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-cython[${PYTHON_USEDEP}]
+ dev-python/pytest-randomly[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION="${PV%_*}"
+ default
+}
diff --git a/dev-python/opentracing/Manifest b/dev-python/opentracing/Manifest
new file mode 100644
index 000000000000..6a60cba886a1
--- /dev/null
+++ b/dev-python/opentracing/Manifest
@@ -0,0 +1 @@
+DIST opentracing-2.4.0.tar.gz 46228 BLAKE2B 465026265a60935be1ed4b23c5b8692b89b90d1c973d496f0c1e87b633e1cc98fe42b83fbacac5921197b5779560e8e4bd515aaaebf09ff4707997a8ad4b8f9e SHA512 fd8fa47c8c05d8ee8c19df8ec14756e05ba9d27f20b3026ccf71f925288ccd2594ec53ff1a26503e19e94d77a8ff0024c37af4efab38a0bee53cb1fed30e9a53
diff --git a/dev-python/opentracing/metadata.xml b/dev-python/opentracing/metadata.xml
new file mode 100644
index 000000000000..acfd64bde801
--- /dev/null
+++ b/dev-python/opentracing/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/opentracing/opentracing-python/issues</bugs-to>
+ <remote-id type="pypi">opentracing</remote-id>
+ <remote-id type="github">opentracing/opentracing-python</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/opentracing/opentracing-2.4.0.ebuild b/dev-python/opentracing/opentracing-2.4.0.ebuild
new file mode 100644
index 000000000000..a8f25635406e
--- /dev/null
+++ b/dev-python/opentracing/opentracing-2.4.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="OpenTracing API for Python"
+HOMEPAGE="
+ https://opentracing.io
+ https://github.com/opentracing/opentracing-python
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+
+RDEPEND=""
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-python/doubles[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/gevent[${PYTHON_USEDEP}]
+ www-servers/tornado[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/opentracing_instrumentation/Manifest b/dev-python/opentracing_instrumentation/Manifest
new file mode 100644
index 000000000000..db3f35ac3267
--- /dev/null
+++ b/dev-python/opentracing_instrumentation/Manifest
@@ -0,0 +1 @@
+DIST opentracing_instrumentation-3.3.1.tar.gz 41897 BLAKE2B ed5b79082160a34d4f97ba4a704291e43711a40d830b6df1449ea122b00ceb962e0348d5b5901e39e9c87f33220176c74375c07f297f907f0903a299d929c0d9 SHA512 414b9755c75ebeb66a58d323a82aad01b44b513355e3a548a564f5fbd4658c63cd397ea730811c311948a55ee51537cf864f55bf9fe50366236cad1b5bfc023e
diff --git a/dev-python/opentracing_instrumentation/files/opentracing_instrumentation-3.3.1-no-coverage.patch b/dev-python/opentracing_instrumentation/files/opentracing_instrumentation-3.3.1-no-coverage.patch
new file mode 100644
index 000000000000..cfb6d9ea8b73
--- /dev/null
+++ b/dev-python/opentracing_instrumentation/files/opentracing_instrumentation-3.3.1-no-coverage.patch
@@ -0,0 +1,8 @@
+--- a/setup.cfg
++++ b/setup.cfg
+@@ -15,4 +15,4 @@
+ tests/*
+
+ [tool:pytest]
+-addopts = --cov=opentracing_instrumentation --cov-append -rs
++addopts = -rs
diff --git a/dev-python/opentracing_instrumentation/metadata.xml b/dev-python/opentracing_instrumentation/metadata.xml
new file mode 100644
index 000000000000..04846e95e8ab
--- /dev/null
+++ b/dev-python/opentracing_instrumentation/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/uber-common/opentracing-python-instrumentation/issues</bugs-to>
+ <remote-id type="pypi">opentracing-instrumentation</remote-id>
+ <remote-id type="github">uber-common/opentracing-python-instrumentation</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/opentracing_instrumentation/opentracing_instrumentation-3.3.1.ebuild b/dev-python/opentracing_instrumentation/opentracing_instrumentation-3.3.1.ebuild
new file mode 100644
index 000000000000..ab18996a35b2
--- /dev/null
+++ b/dev-python/opentracing_instrumentation/opentracing_instrumentation-3.3.1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MYPN="${PN/_/-python-}"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A collection of Python instrumentation tools for the OpenTracing API"
+HOMEPAGE="
+ https://github.com/uber-common/opentracing-python-instrumentation
+ https://pypi.org/project/opentracing-instrumentation/
+"
+SRC_URI="https://github.com/uber-common/${MYPN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MYPN}-${PV}"
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/future[${PYTHON_USEDEP}]
+ dev-python/wrapt[${PYTHON_USEDEP}]
+ >=www-servers/tornado-4.1[${PYTHON_USEDEP}]
+ >=dev-python/opentracing-2[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ dev-python/boto3[${PYTHON_USEDEP}]
+ dev-python/botocore[${PYTHON_USEDEP}]
+ dev-python/celery[${PYTHON_USEDEP}]
+ dev-python/doubles[${PYTHON_USEDEP}]
+ dev-python/moto[${PYTHON_USEDEP}]
+ dev-python/psycopg:2[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.3.7[${PYTHON_USEDEP}]
+ dev-python/pytest-localserver[${PYTHON_USEDEP}]
+ dev-python/pytest-tornado[${PYTHON_USEDEP}]
+ >=dev-python/basictracer-3[${PYTHON_USEDEP}]
+ dev-python/redis-py[${PYTHON_USEDEP}]
+ dev-python/testfixtures[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=( "${FILESDIR}/${P}-no-coverage.patch" )
+
+distutils_enable_tests pytest
diff --git a/dev-python/opentypespec/Manifest b/dev-python/opentypespec/Manifest
new file mode 100644
index 000000000000..31d20321e704
--- /dev/null
+++ b/dev-python/opentypespec/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..96276ba8f22a
--- /dev/null
+++ b/dev-python/opentypespec/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>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
new file mode 100644
index 000000000000..89ca567d95bb
--- /dev/null
+++ b/dev-python/opentypespec/opentypespec-1.8.4.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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/orjson-bin/Manifest b/dev-python/orjson-bin/Manifest
new file mode 100644
index 000000000000..881d5921025b
--- /dev/null
+++ b/dev-python/orjson-bin/Manifest
@@ -0,0 +1,2 @@
+DIST orjson-bin-3.6.7-amd64.zip 255321 BLAKE2B 5c10b6da6e388754e8ba3eac65d96ad5af8cce745877de8c0c73f2747841613b5aaca70be6b718b813e8c0376a33e8e6e8d4ee472bcd86962f47482766392429 SHA512 3ace1ab1d610b2a435b09a00b5dea62aec688bc186422397cc7191b910d904e54bc51768c50fe1c67f27d51503cf57e1209597c9281f2972653c171e0c4b0b0b
+DIST orjson-bin-3.6.7-arm64.zip 235165 BLAKE2B 292a28851d23eb386f5065a336826482c3f96468bebf95c606c30df0d5249ec5b09f0331423349a9e616bbdd59cb465b50d5be77ab42e8216eeadaa41c42ed5b SHA512 a6520cb6744765d939003f39efa8aeda8e6b8fac6f96d8772a3842d0d08a775e2b2a21e775f99ca0b9656a7dbe270d0b83f6ea8f1b9b77f2cb26e71f61800afe
diff --git a/dev-python/orjson-bin/metadata.xml b/dev-python/orjson-bin/metadata.xml
new file mode 100644
index 000000000000..0d0f8475dcc8
--- /dev/null
+++ b/dev-python/orjson-bin/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>1over137@anche.no</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.7.ebuild b/dev-python/orjson-bin/orjson-bin-3.6.7.ebuild
new file mode 100644
index 000000000000..4687da2c628c
--- /dev/null
+++ b/dev-python/orjson-bin/orjson-bin-3.6.7.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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() {
+ local my_installdir="$(python_get_sitedir)"
+ my_installdir="${my_installdir##${EPREFIX}/}"
+ insinto "${my_installdir}"
+ # Even though the soname is compatible, the python version has to be
+ # corrected in order for it to work
+ newins orjson/${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
new file mode 100644
index 000000000000..9f47c0f3053b
--- /dev/null
+++ b/dev-python/orjson/Manifest
@@ -0,0 +1,61 @@
+DIST ahash-0.7.4.crate 37072 BLAKE2B 3b82cc45993fd48d9eed018e14af005e2513938f34b195d4f33bc0d4031bc8027b082aa155b14e20e0e1e34b0f829849e8c614458805ce830652f34477b1d6a4 SHA512 f84e16f3b2764be95b4d82c9ef4bcd4c80983e977b33e1d4cc3c119398de6084428a0e7bccc1b182bccc21aa97855fa30b6a4041b961b58bff79b75dcc788005
+DIST ahash-0.7.6.crate 38030 BLAKE2B aca3661477fcd7822d6d10970151e05c28e1615f8cd7ddaac064b15102027e404b19b0f3f16dd76145048594ea1c22ae27dd08cc05c411efbae9ec7a1ef55ce9 SHA512 61354688b6fb096359faefb6f34be958cd2215d56b88c22c737d24183eaad433f811bc9e64f927e4852c87d2799c22fda82b55cfbef2ed6357ff74f0c4ffec68
+DIST arrayvec-0.5.2.crate 27838 BLAKE2B 51e2eacae0ef148f3f52d21ae00794e540e7ce4c013fb496dd1347ad91ffbbca199381fffbb064225f829216f6c5e915edfa64833f91fabdd13c3f011d86491f SHA512 1896b5f64b4dbdcff8ad234bda4ea8129bcacf87839347304717e94ee9f369cf5f4371755e453ff7d72817edb8f7fdbc726d77cc4f28ed05148dc89c7714b004
+DIST arrayvec-0.7.2.crate 29341 BLAKE2B eae9d3f494033ea2d837a6024cb24bd4574683ed1e76ac6be7f7c6b0d8ee65c0eaf03dbae7fea04cf0921299f69234ad91e1cf41342de86f554f74e287dd3ba1 SHA512 80cc6e55b6032f4882362813de970d3d99e600ada774b28ac6a24c9c8e018fda3b35c5750ac3a09fca6fb9496e2e3fe608b58d21b1b84685ebd170f567a0ecbc
+DIST associative-cache-1.0.1.crate 14048 BLAKE2B 77f36f2d23b6d07e556f20e743c9a0e47c0b54899397c64dd6d4fc9b4c31469481d4a99ceb28b250924e0aa5f52de9fb65ce93ed96f23191f2984c32156bace0 SHA512 2ad673ab907c71cbd45abf3cf59630fd56aeb95888c94932b9fe5d83d71d0c14f908915670cbc0566b691035f82ac2069ed17589edbc97db1e4388225ac2a040
+DIST autocfg-1.1.0.crate 13272 BLAKE2B 7724055c337d562103f191f4e36cab469e578f0c51cc24d33624dea155d108a07578703766341fd6a4cc1ef52acda406e7dba1650d59115f18261281e5b40203 SHA512 df972c09abbdc0b6cb6bb55b1e29c7fed706ece38a62613d9e275bac46a19574a7f96f0152cccb0239efea04ee90083a146b58b15307696c4c81878cd12de28f
+DIST bitflags-1.2.1.crate 16745 BLAKE2B 0fa6d3ce44aad7616d5cd02aad8c1d0b0fed4022650eb43067c4a72e6fc88da05442674fa51826e4858a47c9de233e1ba2229820af094197cd11bb416ceffb2b SHA512 ad89b3798845e23737a620bba581c2ff1ff3e15bac12555c765e201d2c0b90ecea0cdbc5b5b1a3fa9858c385e8e041f8226f5acfae5bbbe9925643fff2bf3f0b
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+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 chrono-0.4.19.crate 155663 BLAKE2B c92c273fb6475bbb2546dfb75eaa23321bc8f9a5fa8a7c652f527649b96ff8718fa932f52b500b02a4acae7837df5bdb14f69cb821d4962be2790dbd1d023a54 SHA512 a119349bfc2243a249f1d18b1ae548a04b30fecb75913a56f26d1ff8c0eb53097a2674d9141e2094018191cbbc1620843fbddaf52999824e077c1157f0907980
+DIST encoding_rs-0.8.28.crate 1368577 BLAKE2B bc10eff55063286b48590c3100841c7319268cf17e10176aec7adb39f3d2106e80e25d8ca68e5b4e568083be75d596eaff53807385c4e8d1b59d4aed7ed08ca0 SHA512 8b3f7450789e33f1ad9306d152f1bd230e66c7e799de52046acd5b11f903e8c86cbe2f0aa2cfb0f0e60bd64b194250defe05ef2a171b707e129a2324de47a9b0
+DIST encoding_rs-0.8.30.crate 1370089 BLAKE2B dae26cea51a7814536d1fba835f36cf7b0d536be0f26390fc4c1785720521a37651bc33acd9f7692f4967a3658d056da11a870aea071f53e803a71036d42448c SHA512 0addba12c6021a1211639cf80a956b50a5fc8bda90f127f73920941980d11a265e43de83e91f9ab423ec520ab11f6111c0d982da2d73e640128bb12aab1083f3
+DIST getrandom-0.2.3.crate 26261 BLAKE2B 3e52a87b9355f850e07e5080c20e1ab3acfa927bae28c63bb8bfd6a773ad77be96d3ba770c344631cc0f2d9a95aac920790173168b102e25f50480ee96663569 SHA512 e6da64ed529cb0fc000b613f75187ed6b20f716e721d8a02ac2ae39c507fb9f6189ebb66b522d28584eff1e7e9efc274cad6bfe43f464f58053701e1d51c603d
+DIST getrandom-0.2.4.crate 26800 BLAKE2B 68836e848f1f87f5db77e64314b027bf47517746ddfa7677191ab518c9fb77d9a554cf4d1f9490bce1d8aa22a35c1952b088e200374dfd5c5d84555ed082510f SHA512 a7e63985824dcc8459736e44b1c0c4798a212955c89e5d3a3b852a3f80643d0231c4825f6cd416e87724aab80c19097210b06bccd2006e56115ae94920241716
+DIST inlinable_string-0.1.14.crate 19371 BLAKE2B e7c7c775518f4212a17a0b8fd478ccaae96e13950045d21e310996bd1db700d29f50cbd23b9b06e4ad898ddfd223b0dc1c3bdf7a8bde16b9692621e2fcbbf2bf SHA512 9caae4dafc4b26a0ef5cc2379b34953fd2b2d9cc02b98025e9ebf956091bc0525dee14368d45cdb47cf5a3dde9264d5fbbb8c3cc5f19e15799d7f239acd5da89
+DIST inlinable_string-0.1.15.crate 19290 BLAKE2B 9e4f5b27ffde334ff5e8325db8a6f4e23c4fe9804761b9c8896597c841b129d9f5121c9426cf858c34003f2eaa8ac6a9b944b5908eb9dbd79c311d27d8ee34af SHA512 9421e0893937ce7b5d0f5e7fa27f4e6783c80665e897c8476b9f2f9ff41f1ad2e5f4ea959b8fbc3789bb1ea97165c373106c37a521aab88458cc2c1187e84754
+DIST instant-0.1.12.crate 6128 BLAKE2B 728923f757c1ee4e4a7afb90e460eed81392068961240a538e5c6468e15a0b6491f590fb5f6cc46e6d78901ca232351f65abb9f2f230d8f4983c5e58c4011902 SHA512 fae494c00111c51c840f9dd6a10febe403e27ebb933dd16633a213e9c20f2bc11adeb431c71f8a6713bf88f270a010941e15d83df294e658791934f83a5d2407
+DIST instant-0.1.9.crate 5213 BLAKE2B fe208faa09852079c603930e88b7d0392a89a55d3b934ad45ffb0c9e44df5ef7e8189ba2fa12452f1c8a6416d6f7c0655365ba959bedf2b78228613944be8278 SHA512 3915f67c3629ec93296d56c4cda0cf97b29b1a70930a9d546abb9518139d4c2f35062563a5094e84841ddb1f00b0f3df9dc00801d96c01994765221edf03ef7c
+DIST itoa-0.4.7.crate 12099 BLAKE2B 0e4ffbaad504565056f74c3ef560a87eff321a0da6d7a2c8fa35813c207713c22d77080c3b830fefbb21370dd29cfbc6a2807044485b38ac1e0c9c1de3ccebc5 SHA512 c61eb50aa00591af28698b45c528c36bd92088f7cd2f453cf686a1824f4656292638bebc468cf67f903473a5045f22777af623cc0515ef3bf25146b89a7c454f
+DIST itoa-1.0.1.crate 11059 BLAKE2B 5a2e22ab891ec883a90f652c88f924113252765579c03c783e43210fb2604e9e3ccbd4c1571087791be07bb99c4e85c7f85253be831b3ea883bc0ac18a927980 SHA512 8e7bc1e9bf4fc06871b9fe20caad4e0af965477d724f4c8d0e2a3a4d87aedf99f92e4e583a6440ce574d0fb43fc9d6a2e80add52a2f64210c6aa3b402e424295
+DIST lexical-core-0.7.6.crate 494385 BLAKE2B 417644e5e33a70aa4165cba77bad45c540aaf7bb2037a5461c691b646a5470c7ad68a60029ac50f1cf25de3b6928b3f491e9b7ef5cf5a7d3281d83fd33a173f2 SHA512 fcd7e4e073e6440183284f20a6305bbe4aafb5513a20b8ed793439e4b5a5519532a0605f31e42539f3e6236003254812b459a9b9c47b3c449f5c582dd62c3172
+DIST libc-0.2.117.crate 566541 BLAKE2B a0ee103e6167ccf84cbaca9e41934ccaa1f4abcbaad9d7a4d4a8cccdc2f22ff36ccc46a16a295fed9c3113e1534df86a3d19eda9e0cb609bb75145acf8ca9a0a SHA512 1ff22201cad04f8a21674c25bd57e2c708738af7ff1d5677b513d728ecb99f4eec4b78e9685aa633518672de0d44d5dd2e727ee7b6b06c74718181565df3fa7f
+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 lock_api-0.4.6.crate 25215 BLAKE2B af1d28010f7c340dc0857afbaf8acd2396228cabca26e52f79526cc4eafb072c2aee8987bdd9ace4ba87c272f6fc816fc6f62a69e4d7e66a5c6e91ae3e824ede SHA512 ba14d341564eba91bb5ec58bb2e0d6c87e70b3694c4609396f0c0f4afc0c6c105a88cb99c303b1e9761b0fc6cae56f79ba6a7663b063454ab1ede4d49274906d
+DIST num-integer-0.1.44.crate 22216 BLAKE2B e1c08427e006cde6f2084adadb6086e87e6d6f8bb8dfa757a8228aa671e862a366e4bd8ca5e0500008c18bab128aead9bd5b1e53568a4f40afadcaf3882ee98f SHA512 d07e27ede02a1d007373935fd91e57a26e0e84ae14bbe24be66763baae6850788bd64ad2598d2bde4f4fad6c8a4675c40bfe0927164b16b9b69de5e9a83d9771
+DIST num-traits-0.2.14.crate 45476 BLAKE2B ae310d9d5640acc3e45e1e5d1d2f519539795922c0058ee940c94c94b6654b39358b7c18dd23a276f2c1b16a30dd4de4cbc8575bcda6a5c11e70665d670e6439 SHA512 c3028eca9f7b718de0db3a36cf3e462bdba43562d52c9b809ed4cc0aa6af403aea542d6d4da743cd1dd541397815a3c5a84cef4d6e40122994e4be6a62319b2e
+DIST once_cell-1.7.2.crate 28250 BLAKE2B a30a55f6d6e820c691928173a9ce70a60486b28e3e79e8a01a08d87ca0bfb1725b967cc9e070cf53e71b924f73fc2eec2cf67190fc743361b60d82290762725d SHA512 30cf51249bb73e9881cfbc6a54ead7a3db709d560da8d420fd85cf248e66c727b92e8351b7c0c682913cff12b3f984684a272a69c965c56f8343948eb5a194d6
+DIST once_cell-1.9.0.crate 30702 BLAKE2B 3d492e64db120d8a23c08490a34d376a006e46b28bb5f0f44c3a955896e6e597c67ced35daeb4ccc7f7748f142d3bf2cb1d81ee61a99dc6526c48730c86a2fdc SHA512 cfdb6aa4bcc0f50d4c37eb69867d2deefa70323a7b607e55180b7d417b7188c4f2889417fd04fc51671c65eac75c7d9e7eda06a87dedb846056def66d14eaa46
+DIST orjson-3.5.3.tar.gz 764381 BLAKE2B bd77955365c6b50e97dabb77f5e16cedc82cff4cb9544055da2567cfa278e8808c45b32c7bc99c5ad1b370805216b3e287c2e706fb3e29834ec58a44bf179ae5 SHA512 341b9359c131d839b618f4c8c25c451a5bd6f45f65ae30a483f3942b73366965f65924330de8cddf56052331e29e562f187535b26085ec38cf98bd69d5149292
+DIST orjson-3.6.7.tar.gz 653068 BLAKE2B 2d666885420745d1e783b1d2795bd9814530447818e14f7ea4203a225849869a30962da9a377a86af1f012e3119b9377a723ebf08cf61127b5e50bd3125bdc4a SHA512 5fd7d354f19a01a72218bca4bb7d767ebb73cc79398c5e32c482fed65a93d9f98d58835ebaa0c5e85a975e5eb29d2522a1051bad8f03de8bc227dc2838b8a72b
+DIST packed_simd_2-0.3.5.crate 98197 BLAKE2B fcf5ae5d7a833b1b6869381efa601e7e624dce4b416762acac658162c639a093c130ec688e5fe934e3b91482a9d74c54a6cf023f0c009930197885eaa64409ff SHA512 64903209d359e9108190778ec11a2f96036fc79aa1fbb9e874b37fc359407693180d7c0bbfb8dd74022358a8a19389c764c72eb760ad0500e5621cb85f2ffc53
+DIST packed_simd_2-0.3.7.crate 97413 BLAKE2B 085590fc264fd515e64db65a68a9ebf761a2f8ef17d70ac01f60c0eb7f40c78f9390fcd127d263a1eede024049009c5b011089e27e21903ae04a137de50aa5c7 SHA512 ebc1dfb306ff62a419808519996e624001142fa8a84f264e120fd0e26d879eb285a4425d05547cab47098375f014118e03e9850a632b25e6baaeabc9100a0efd
+DIST parking_lot-0.11.1.crate 39854 BLAKE2B 5a097d7016811de4ca7d21e8a811a96b2e857b5224b176cf7a3bc160c0a0678c9100423e3c096c5056e2df3a4dcba17a590cc64eb1d648355c153c5cdf9db228 SHA512 17e394ac8b62656177a12fcfd246d9bb59be468a5ac174e4d6d8b4ffd0411497d3ce943ca5deab184cebf5c1bbca97b4273f79bf210c78d7f4b6f5e9d68026a2
+DIST parking_lot-0.11.2.crate 39869 BLAKE2B 67c555e87b68f5763a7790563fd8d542e126bcb77f91267f3b76c51fd73060a2c32dcb91f9d0db7ea772e555d91576c8d7ff48053a9c35fbd3b749d2459a660c SHA512 526b176363dffa59501c18324bb723a3846ef5b0ff9bf1d890e40ad10e7023284f7c8012eda87520eaa94515ee828d9ef52692a9ed590a55e176383d6d472f9e
+DIST parking_lot_core-0.8.3.crate 32147 BLAKE2B 5218cfbff706c4388fef31c885c7a5d53566005775a3c440c6a2890efb189a4edfe8e99f6499cac36038846628a915ac988c15e1ebab1b3a3ffb53a64631dc19 SHA512 1dba5a7e68ee007918fb210ff308f7382ed1c54d2fe6db36a8246453434246b71e6795db107c83ca39c2bddf5e4a27da7978a464b53d41e150e744d81e75b341
+DIST parking_lot_core-0.8.5.crate 32466 BLAKE2B 44d9cb65444ea93fded7e216e3bdbe2256ba1611f5cb6f80d67a01e71d428b81e6c7fc73cb928e2125f34bac0abf4d1da39f622e813dff89b01fed7632308b7e SHA512 c4315df551748d1ae77655e4d9f8c90f911498856e5358009e9e02e410bb8085f006f369188b0753a298371ebd74a5c383d848b65e31b55f3462381308c83a00
+DIST pyo3-0.13.2.crate 281372 BLAKE2B 22ffcd9fa239efc205e5efcefb6ffbe99a979209aca357174e461826ae8edc1824da820df04bd8af4d07afd550b6a03fce75bc24e83970e7d2ec8cdc0aa17dca SHA512 3d4198a60e9c3abc619e5cac7198288bde294a789b6f84ec87a411d5eaad93d5d55043e8ec218cb0aa09a7289be7fd5bfa0b74be188e2b67c6c646cc2aec66d3
+DIST pyo3-0.15.1.crate 370722 BLAKE2B b755c93d8dca8e778b886ed1d16e83ddca483d0f6c932b3241edb2e1211306cb0257d2a6bc31ba4298335f277898e59aad67e9f675ed4ad9a2bb9d596400bda3 SHA512 9168911db76f2c9629615c997accfc4234bf91cc72293dcdb3db14b4e93f93af9df3b3aa7900384121719aeda4a0b6dd68c0cb380bfe5424724b0be5303c02e6
+DIST pyo3-build-config-0.15.1.crate 22095 BLAKE2B 47803b389f30f15f487daf96d32e374ebc83b1b41ddee1d2dcadd1a0fbaef40c4c1af2312b86ec085637e3192b1bd213c93b5f4e8dee173d81e510f480fa6953 SHA512 a9aae6bb4a4a56f7857262276bf1c95510912a367e32470b871f2fe2d6adbffd87247ed2e3b5fa2dfd273a3b0e139d92f25f3228e15c6d8c206c6ba919f38a9c
+DIST redox_syscall-0.2.10.crate 23582 BLAKE2B 7253dd96415e7b70df488c208d86c250c670b1245ac6573a59085faabbde9e33fabfacd233e7d737e365493db14008c180274b41ea0a4af5f6f98eec666a873f SHA512 ef012eb4bffe32119e50ecdbef4cc31f6e84a344e94f026484fe4e2c904f94053a8b6249fb6bd8ada31b3ecfbf0096085283bb68aeb62b1b01b57f35794aee92
+DIST redox_syscall-0.2.8.crate 23697 BLAKE2B 5a084a48e06ab0dc69f64b05058b78d994040da6c42f04c8b615b1977fa3e813cd5a531ab33402402914362301670709679aaaa321e8904424c38d35c284b7ec SHA512 250556a7683254c9daf22887b39abb010eb9d4fe08b944e52bc6595ef6d8acfed76e5f43931fe20c84bdb3743772fb62a0be154ecfb6e66c2facb4c73546eacf
+DIST ryu-1.0.5.crate 49570 BLAKE2B 3bfba4a5f290a429de7ac3b86823b2a973f40eb6f48c15329173d95964d31ada36f2618be4b36774a03f97f2ce61364900c6a3ad5465a294e2df311a1f4104ed SHA512 d1708ffa3112a684edf2956b6730ead040401d38f1457cde074eaaa59c249007dc8b925629e7f6df89f7ea757e9d0826649d685cc8ede0a04d50296048bf476c
+DIST ryu-1.0.9.crate 48391 BLAKE2B d5c1035ffd6340d846009953cb4303fb8c250a3a6ac60b51a2fec77a6cb3648524420064b7380fe31af33c57011f950f6f739a1f0114196675b3b5de4b54efc6 SHA512 4e7c2c7ec73da1ddb32e18d36b8159cb4047b9f4feeb975361e7ba68135e671e11419bb7786df789f5d08e5895231d2c98e36035b515f2c64ac40474d08905cb
+DIST scopeguard-1.1.0.crate 11470 BLAKE2B f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe SHA512 368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
+DIST serde-1.0.126.crate 75138 BLAKE2B 51f37473483da8a05670a213f02e119173e4c97a49313cf855ff3e547bb0969fcd84ccb7d1554e7c1761b388ac5cd917cd7e680e3ac23d2504412f75401c0937 SHA512 f22ec92b2eaed0819610ae2c4471eb12aa3a4209f5fbfe829c2329010813837d11ffc02d7809335df6a978cf7944095fae79c7593324dfd49becc7633dd626ed
+DIST serde-1.0.136.crate 76158 BLAKE2B 44603c8eede428dce4211350497a443385ff0ddb0b43799170411110fd8908a56e9df801c72695723f4fcff5eb33384bcf92ef58eecb9c4924d5d9cc30e2f6c9 SHA512 d043ccfd6a1dc9a114a1a95530a63ed9342688d31d3aadeec600a9a9d47aad328be35b6f80080400ea4bb3f820ddd18cc5ce1e6ea1db28e02752962061e71019
+DIST serde_json-1.0.79.crate 144451 BLAKE2B d04f8788d3ef0d4854d73232a4f441c1f3a42934442679a91853c311262ac9a4f554240d0c44c69f2e22cdd225a3e4d4751dc928ee5092b4371c198325fca0b3 SHA512 83987c1a7eddc6adf8ae359c30e2db1fea98edabd6dc49bde840c37a56258fa845612e8ae270a7dca4cfbe9a3532dc55028091e14cdf1dd3b1ceea4bb86a2dd7
+DIST simdutf8-0.1.3.crate 25813 BLAKE2B 333301ce1309de60efc30bc0ca7ad15440975289e2a7074e6adfecc8f0d802ca8e6d02e6b054bc1bc6f680d599cced85560a7a132fb3e0f002adbcff0e5df9a5 SHA512 513a2f172541143cd585e7e124f6394605ea940e9adcb5fb21c6909959443478eed7323792d94df092020aaf2e464eb0b1b19163c86853d1e2c2246e732010aa
+DIST smallvec-1.6.1.crate 26444 BLAKE2B ca6c50a63acdd93a2131654d99e50545a6e2d08eb3e2bd57d4a8ee073d90c08195ee442745a8d62a68179ce7bb8e229b7ff8c6fcf46372a9844bc9280b7c85cb SHA512 9e6061c8211a4485ab54eb541adf40748e1fc3fdfab0849e38e5fd34fc6cc69ae78bd065b788692385a6b8157b031c2fe373900e13d3e56e94fc08d574edaaad
+DIST smallvec-1.8.0.crate 27992 BLAKE2B d02897eb4d3901805be86cafd5d3dc6768b31c2ee4d0a9d7eb455e2a21be2864ea83589f4ffde102dbbafb66e3c197707af770b5ef184b8e244d992189644b84 SHA512 17687cfa6aaf95a1df063adc3a412a7c41918a0d003eaac90f7d9e859fb8fa1d652eedee17a4cb3aaae9b33a2043f89e796519e3a7a3992b292f04049bf80b0c
+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 version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
+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/files/orjson-3.6.7-no-strip.patch b/dev-python/orjson/files/orjson-3.6.7-no-strip.patch
new file mode 100644
index 000000000000..1b52cdba8295
--- /dev/null
+++ b/dev-python/orjson/files/orjson-3.6.7-no-strip.patch
@@ -0,0 +1,11 @@
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -8,7 +8,7 @@
+
+ [tool.maturin]
+ sdist-include = ["build.rs", "Cargo.lock"]
+-strip = true
++strip = false
+
+ [tool.black]
+ line-length = 88
diff --git a/dev-python/orjson/metadata.xml b/dev-python/orjson/metadata.xml
new file mode 100644
index 000000000000..87de6e03094d
--- /dev/null
+++ b/dev-python/orjson/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>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-r1.ebuild b/dev-python/orjson/orjson-3.5.3-r1.ebuild
new file mode 100644
index 000000000000..3e6282304a2e
--- /dev/null
+++ b/dev-python/orjson/orjson-3.5.3-r1.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+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
+EPYTEST_DESELECT=(
+ test/test_datetime.py::DatetimeTests::test_datetime_pendulum_positive
+ test/test_datetime.py::DatetimeTests::test_datetime_partial_second_pendulum_supported
+ test/test_datetime.py::DatetimeTests::test_datetime_pendulum_negative_dst
+ test/test_datetime.py::DatetimeTests::test_datetime_pendulum_negative_non_dst
+ test/test_datetime.py::DatetimeTests::test_datetime_partial_hour
+ test/test_datetime.py::DatetimeTests::test_datetime_pendulum_partial_hour
+ test/test_api.py::ApiTests::test_version
+)
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+QA_FLAGS_IGNORED="*"
+
+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 orjson/orjson*.so
+ dodoc README.md
+}
diff --git a/dev-python/orjson/orjson-3.6.7.ebuild b/dev-python/orjson/orjson-3.6.7.ebuild
new file mode 100644
index 000000000000..4ae4e7b601b1
--- /dev/null
+++ b/dev-python/orjson/orjson-3.6.7.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+ ahash-0.7.6
+ arrayvec-0.7.2
+ associative-cache-1.0.1
+ autocfg-1.1.0
+ bitflags-1.3.2
+ bytecount-0.6.2
+ cfg-if-1.0.0
+ chrono-0.4.19
+ encoding_rs-0.8.30
+ getrandom-0.2.4
+ inlinable_string-0.1.15
+ instant-0.1.12
+ itoa-1.0.1
+ libc-0.2.117
+ libm-0.1.4
+ lock_api-0.4.6
+ num-integer-0.1.44
+ num-traits-0.2.14
+ once_cell-1.9.0
+ packed_simd_2-0.3.7
+ parking_lot-0.11.2
+ parking_lot_core-0.8.5
+ pyo3-0.15.1
+ pyo3-build-config-0.15.1
+ redox_syscall-0.2.10
+ ryu-1.0.9
+ scopeguard-1.1.0
+ serde-1.0.136
+ serde_json-1.0.79
+ simdutf8-0.1.3
+ smallvec-1.8.0
+ version_check-0.9.4
+ 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
+EPYTEST_DESELECT=(
+ test/test_datetime.py::DatetimeTests::test_datetime_pendulum_positive
+ test/test_datetime.py::DatetimeTests::test_datetime_partial_second_pendulum_supported
+ test/test_datetime.py::DatetimeTests::test_datetime_pendulum_negative_dst
+ test/test_datetime.py::DatetimeTests::test_datetime_pendulum_negative_non_dst
+ test/test_datetime.py::DatetimeTests::test_datetime_partial_hour
+ test/test_datetime.py::DatetimeTests::test_datetime_pendulum_partial_hour
+ test/test_api.py::ApiTests::test_version
+)
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+QA_FLAGS_IGNORED="*"
+
+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"
+
+BDEPEND="
+ 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)
+ )
+ app-arch/unzip
+ dev-lang/rust[nightly]
+ dev-util/maturin
+"
+
+QA_FLAGS_IGNORED=".*"
+PATCHES=( "${FILESDIR}/${P}-no-strip.patch" )
+
+distutils_enable_tests pytest
+
+src_compile() {
+ maturin build --no-sdist --manylinux off --interpreter ${EPYTHON} $(usex debug "" --release) || die
+ unzip target/wheels/${P}-*.whl || die
+}
+
+src_install() {
+ python_domodule orjson/orjson*.so
+ dodoc README.md
+}
diff --git a/dev-python/os-api-ref/Manifest b/dev-python/os-api-ref/Manifest
new file mode 100644
index 000000000000..04b388085db0
--- /dev/null
+++ b/dev-python/os-api-ref/Manifest
@@ -0,0 +1 @@
+DIST os-api-ref-2.3.0.tar.gz 92864 BLAKE2B 48d74f40a4b865520ec1b61235245f2571262c14c46f994d9b6655a33376a981732212ad4f38b894e495e6381302054eb455516de03b2d2f87662c8f29f4650d SHA512 e53063df90393c17e764e640c4ad5e1e6f1da7286ce9da6bdd460d54e2f831022a366c9cb711b95d8bfa872294309620f2d44cd4910277971ff2f2719c5d81eb
diff --git a/dev-python/os-api-ref/metadata.xml b/dev-python/os-api-ref/metadata.xml
new file mode 100644
index 000000000000..6c1e9a2f67c0
--- /dev/null
+++ b/dev-python/os-api-ref/metadata.xml
@@ -0,0 +1,16 @@
+<?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.3.0.ebuild b/dev-python/os-api-ref/os-api-ref-2.3.0.ebuild
new file mode 100644
index 000000000000..4ecd699cf51d
--- /dev/null
+++ b/dev-python/os-api-ref/os-api-ref-2.3.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_DESELECT=( os_api_ref/tests/test_microversions.py::TestMicroversions::test_parameters_table )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Sphinx Extensions to support API reference sites in OpenStack"
+HOMEPAGE="
+ https://opendev.org/openstack/os-api-ref
+ https://pypi.org/project/os-api-ref/
+"
+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-4.0.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ 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"
diff --git a/dev-python/os-brick/Manifest b/dev-python/os-brick/Manifest
new file mode 100644
index 000000000000..bd7271823b56
--- /dev/null
+++ b/dev-python/os-brick/Manifest
@@ -0,0 +1 @@
+DIST os-brick-5.2.0.tar.gz 223315 BLAKE2B a2cd5f3a041bbacd5fe78a3ea683940eaf7842d1ab7868bf1ec7d3f2d56b49b327f625c7e8cb5bc03809e6335e11cc93d56badbc1331e649274eb758793afa41 SHA512 c26faf619a9ccea5803d6978c5d521772dbe9a00ad850fc358d412e0b41714fd4ea86c8130189d802cac4dbb56cb8a2735904e9b4a4664007d7caf396ec4b860
diff --git a/dev-python/os-brick/metadata.xml b/dev-python/os-brick/metadata.xml
new file mode 100644
index 000000000000..dbcab1e348d5
--- /dev/null
+++ b/dev-python/os-brick/metadata.xml
@@ -0,0 +1,14 @@
+<?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-5.2.0.ebuild b/dev-python/os-brick/os-brick-5.2.0.ebuild
new file mode 100644
index 000000000000..1e1efcec977c
--- /dev/null
+++ b/dev-python/os-brick/os-brick-5.2.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="OpenStack Cinder brick library for managing local volume attaches"
+HOMEPAGE="
+ https://opendev.org/openstack/os-brick
+ https://launchpad.net/os-brick
+ https://pypi.org/project/os-brick/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-5.5.1[${PYTHON_USEDEP}]
+ >=dev-python/eventlet-0.30.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-concurrency-4.4.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-3.1.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-4.4.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-5.0.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-privsep-2.4.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-4.1.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-service-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-4.8.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.25.1[${PYTHON_USEDEP}]
+ >=dev-python/tenacity-6.3.1[${PYTHON_USEDEP}]
+ >=dev-python/os-win-5.4.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/ddt-1.4.1[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-4.4.1[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.5.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.4.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-vmware-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/castellan-3.7.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+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
new file mode 100644
index 000000000000..e11eae9551ef
--- /dev/null
+++ b/dev-python/os-ken/Manifest
@@ -0,0 +1 @@
+DIST os-ken-2.3.1.tar.gz 1374401 BLAKE2B 48d0bec58f911a708e0ff662162ea2163c0466176fa0618580733f55415e3681be545b30675ce0f2fa174a72e8dc4950ff5d5c1a4adba96f86540f9b1649e03b SHA512 5a2b916b1207595fc3c96e1e4cccfc9bed4a7be6859ca49892e50f98633fe18cbab6e59b11c3d024765b21a826d81031aec66d1016369b9887b1af9fb7952c9f
diff --git a/dev-python/os-ken/metadata.xml b/dev-python/os-ken/metadata.xml
new file mode 100644
index 000000000000..8c1ea4b8bd38
--- /dev/null
+++ b/dev-python/os-ken/metadata.xml
@@ -0,0 +1,14 @@
+<?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-2.3.1.ebuild b/dev-python/os-ken/os-ken-2.3.1.ebuild
new file mode 100644
index 000000000000..5377907be816
--- /dev/null
+++ b/dev-python/os-ken/os-ken-2.3.1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="OpenStack Cinder brick library for managing local volume attaches"
+HOMEPAGE="
+ https://github.com/openstack/os-ken
+ https://opendev.org/openstack/os-ken
+ https://pypi.org/project/os-ken/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/os-ken-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/eventlet-0.22.0[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-0.5.0[${PYTHON_USEDEP}]
+ >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-5.1.0[${PYTHON_USEDEP}]
+ >=dev-python/ovs-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/routes-2.3.1[${PYTHON_USEDEP}]
+ >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/webob-1.8.2[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/ncclient[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests nose
+
+src_prepare() {
+ rm -r "${S}/os_ken/tests/integrated" || die
+ default
+}
diff --git a/dev-python/os-resource-classes/Manifest b/dev-python/os-resource-classes/Manifest
new file mode 100644
index 000000000000..22a6300da938
--- /dev/null
+++ b/dev-python/os-resource-classes/Manifest
@@ -0,0 +1 @@
+DIST os-resource-classes-1.1.0.tar.gz 17461 BLAKE2B 22b98ce7a33b4896c2796e3a46878396f83110f7adf70384c3eda4d06f941a44bc2ae614a10a7e62aeaa8c4834171eea731c60dde2b9dbe95fb12b56fe684048 SHA512 957bab6bd9fb4463401e207852382ecaa3179098faaa42eea84cbec0879560406db87a893f6c20868a200bfff54c6935a41d85c95081cf04dc6c33941f52f3d4
diff --git a/dev-python/os-resource-classes/metadata.xml b/dev-python/os-resource-classes/metadata.xml
new file mode 100644
index 000000000000..4ed091d024af
--- /dev/null
+++ b/dev-python/os-resource-classes/metadata.xml
@@ -0,0 +1,14 @@
+<?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.1.0.ebuild b/dev-python/os-resource-classes/os-resource-classes-1.1.0.ebuild
new file mode 100644
index 000000000000..fdd0a5b1495c
--- /dev/null
+++ b/dev-python/os-resource-classes/os-resource-classes-1.1.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A list of standardized resource classes for OpenStack"
+HOMEPAGE="
+ https://github.com/openstack/os-resource-classes
+ https://opendev.org/openstack/os-resource-classes
+ https://pypi.org/project/os-resource-classes/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/pbr-2.0[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/oslotest-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-1.4.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/os-testr/Manifest b/dev-python/os-testr/Manifest
new file mode 100644
index 000000000000..c26f09507093
--- /dev/null
+++ b/dev-python/os-testr/Manifest
@@ -0,0 +1,2 @@
+DIST os-testr-2.0.1.tar.gz 50884 BLAKE2B f709b33b168fade7faf8e13d0dbf3309cb9aa8e543133138cf7a3ac1d642670cbf803ea5e3b19a4cb2db9b5237837ea89835133e30fa09565af11b52385366cd SHA512 d4c5b84a18d05c0da8a017c045e7304b8fe6a3afc3295a76fa3ba192873f0e507e2fa6c3da423f7d77a82eb3e141225b1abd6875acd56c5a2a9d77a32476deff
+DIST os-testr-3.0.0.tar.gz 38684 BLAKE2B 4089416f1abb78a90848a5bfbcf38f8f6ac404e1776d3eae2d178aa6afc60f5408bce8787d6540eb987d9922706e0e2ec84b1879265b9ab8f62cc36ffa5ef9c0 SHA512 707515153f73cb02df138bfc3211f5309b7e2ed0a283c6bf0bd62e4666250b91353a5ac1adaaac750f5c3970ca40531f65574900d2797004815a945504f8e5fc
diff --git a/dev-python/os-testr/metadata.xml b/dev-python/os-testr/metadata.xml
new file mode 100644
index 000000000000..e44745381694
--- /dev/null
+++ b/dev-python/os-testr/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="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">os-testr</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/os-testr/os-testr-2.0.1.ebuild b/dev-python/os-testr/os-testr-2.0.1.ebuild
new file mode 100644
index 000000000000..385548e36edc
--- /dev/null
+++ b/dev-python/os-testr/os-testr-2.0.1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A testr wrapper to provide functionality for OpenStack projects"
+HOMEPAGE="
+ https://opendev.org/openstack/os-testr
+ https://pypi.org/project/os-testr/
+ https://launchpad.net/os-testr
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/os-testr-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests --install pytest
diff --git a/dev-python/os-testr/os-testr-3.0.0.ebuild b/dev-python/os-testr/os-testr-3.0.0.ebuild
new file mode 100644
index 000000000000..385548e36edc
--- /dev/null
+++ b/dev-python/os-testr/os-testr-3.0.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A testr wrapper to provide functionality for OpenStack projects"
+HOMEPAGE="
+ https://opendev.org/openstack/os-testr
+ https://pypi.org/project/os-testr/
+ https://launchpad.net/os-testr
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/os-testr-${PV}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests --install pytest
diff --git a/dev-python/os-traits/Manifest b/dev-python/os-traits/Manifest
new file mode 100644
index 000000000000..3605d4097392
--- /dev/null
+++ b/dev-python/os-traits/Manifest
@@ -0,0 +1 @@
+DIST os-traits-2.7.0.tar.gz 30237 BLAKE2B bcd14d416b8b57fed413fac6fd5496c65f7e43851aaaab367593e1f44dd0d18d1aae63dc57c61ab8efa1c7ab5b17c6dcbb7c30f70c13618810f42fe38f3d8dfc SHA512 91ba2d527597eb00cc7576e1597b5bb1ca55c488752576debec5539512387f058bafa410c044eb46d7fc22441612ab446faf1e1b3db5678d11197abc91873457
diff --git a/dev-python/os-traits/metadata.xml b/dev-python/os-traits/metadata.xml
new file mode 100644
index 000000000000..bf463081629f
--- /dev/null
+++ b/dev-python/os-traits/metadata.xml
@@ -0,0 +1,14 @@
+<?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.7.0.ebuild b/dev-python/os-traits/os-traits-2.7.0.ebuild
new file mode 100644
index 000000000000..4d5d68e90ad4
--- /dev/null
+++ b/dev-python/os-traits/os-traits-2.7.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="os-traits is a library containing standardized trait strings"
+HOMEPAGE="
+ https://github.com/openstack/os-traits
+ https://pypi.org/project/os-traits/
+ https://opendev.org/openstack/os-traits
+ https://launchpad.net/os-traits
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/os-vif/Manifest b/dev-python/os-vif/Manifest
new file mode 100644
index 000000000000..4ca880b71339
--- /dev/null
+++ b/dev-python/os-vif/Manifest
@@ -0,0 +1 @@
+DIST os_vif-2.7.1.tar.gz 97094 BLAKE2B 46661eb674807035f4f6cdadc86fcffea9d37776f40eeeaadf8727ee678d8dd9237e3789708df9b6603824aaf64be0b9691c477020ed810b6fae2bb35ce04f2b SHA512 6ea31963e3f44a90b265d5b99035ac1a6e4c3effa60259a26809c25c4ac03ed5e6f171f9edc974606ba5ba4a183ad806ee6d40cc276e31e5deff715fcb70e21e
diff --git a/dev-python/os-vif/metadata.xml b/dev-python/os-vif/metadata.xml
new file mode 100644
index 000000000000..3d821f67ca4e
--- /dev/null
+++ b/dev-python/os-vif/metadata.xml
@@ -0,0 +1,14 @@
+<?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.7.1.ebuild b/dev-python/os-vif/os-vif-2.7.1.ebuild
new file mode 100644
index 000000000000..9a261eb116c6
--- /dev/null
+++ b/dev-python/os-vif/os-vif-2.7.1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_IGNORE=(
+ os_vif/tests/functional
+ vif_plug_ovs/tests/functional
+)
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="OpenStack Cinder brick library for managing local volume attaches"
+HOMEPAGE="
+ https://github.com/openstack/os-vif
+ https://opendev.org/openstack/os-vif
+ https://launchpad.net/os-vif
+ https://pypi.org/project/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"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.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}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/oslotest-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/ovs-2.9.2[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/os-win/Manifest b/dev-python/os-win/Manifest
new file mode 100644
index 000000000000..6ba62c25510f
--- /dev/null
+++ b/dev-python/os-win/Manifest
@@ -0,0 +1 @@
+DIST os-win-5.6.0.tar.gz 225948 BLAKE2B 64217d7bf625acad6a72d44f47887e5e1466f346ee6c1bd0685d9e1aa068222385654de8bf39403f2ebc90c14d651beb2978dcc1a48668d436b49bbedfbc34c7 SHA512 8856303c436ce6d9e9689993659905d4976511508d4e38ebc8fbc027a9c4a0ca26a7f38729f47af76a19ba1b1833ccef2ad4dd4277911b9d8c795e4f7dbce9ed
diff --git a/dev-python/os-win/metadata.xml b/dev-python/os-win/metadata.xml
new file mode 100644
index 000000000000..70003ca72a42
--- /dev/null
+++ b/dev-python/os-win/metadata.xml
@@ -0,0 +1,14 @@
+<?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.6.0.ebuild b/dev-python/os-win/os-win-5.6.0.ebuild
new file mode 100644
index 000000000000..c26143c76109
--- /dev/null
+++ b/dev-python/os-win/os-win-5.6.0.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_DESELECT=(
+ os_win/tests/unit/utils/compute/test_livemigrationutils.py::LiveMigrationUtilsTestCase::test_check_live_migration_config
+ os_win/tests/unit/utils/compute/test_livemigrationutils.py::LiveMigrationUtilsTestCase::test_create_planned_vm
+ os_win/tests/unit/utils/compute/test_livemigrationutils.py::LiveMigrationUtilsTestCase::test_get_vhd_setting_data
+ os_win/tests/unit/utils/compute/test_livemigrationutils.py::LiveMigrationUtilsTestCase::test_live_migrate_single_planned_vm
+ os_win/tests/unit/utils/compute/test_livemigrationutils.py::LiveMigrationUtilsTestCase::test_update_planned_vm_disk_resources
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_check_admin_permissions
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_create_vm_1_True
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_create_vm_2_False
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_detach_vm_disk
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_disable_remotefx_video_adapter
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_disable_remotefx_video_adapter_not_found
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_enable_remotefx_video_adapter
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_get_mounted_disk_resource_from_path_1_None
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_get_mounted_disk_resource_from_path_2
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_get_vm_disks
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_get_vm_serial_ports
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_remove_vm_snapshot
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_set_vm_vcpus
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_set_vm_vcpus_per_vnuma_node
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_take_vm_snapshot_1_None
+ os_win/tests/unit/utils/compute/test_vmutils.py::VMUtilsTestCase::test_take_vm_snapshot_2
+ os_win/tests/unit/utils/network/test_networkutils.py::NetworkUtilsTestCase::test_create_default_setting_data
+ os_win/tests/unit/utils/network/test_networkutils.py::NetworkUtilsTestCase::test_is_port_vm_started_false
+ os_win/tests/unit/utils/network/test_networkutils.py::NetworkUtilsTestCase::test_is_port_vm_started_true
+)
+EPYTEST_IGNORE=( os_win/tests/unit/test_hacking.py )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Windows / Hyper-V library for OpenStack projects"
+HOMEPAGE="
+ https://github.com/openstack/os-win
+ https://opendev.org/openstack/os-win
+ https://launchpad.net/os-win
+ https://pypi.org/project/os-win/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/eventlet-0.22.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-concurrency-3.29.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-6.8.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-4.7.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/ddt-1.2.1[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/os-xenapi/Manifest b/dev-python/os-xenapi/Manifest
new file mode 100644
index 000000000000..6e16541247f0
--- /dev/null
+++ b/dev-python/os-xenapi/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..7ff90896c933
--- /dev/null
+++ b/dev-python/os-xenapi/metadata.xml
@@ -0,0 +1,14 @@
+<?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-r2.ebuild b/dev-python/os-xenapi/os-xenapi-0.3.4-r2.ebuild
new file mode 100644
index 000000000000..9341817fa7ba
--- /dev/null
+++ b/dev-python/os-xenapi/os-xenapi-0.3.4-r2.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_DESELECT=(
+ os_xenapi/tests/plugins/test_agent.py::AgentTestCase::test_inject_file_with_old_agent
+ os_xenapi/tests/plugins/test_xenhost.py::NetworkTestCase::test_iptables_config
+)
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="XenAPI library for OpenStack projects"
+HOMEPAGE="
+ https://github.com/openstack/os-xenapi
+ https://launchpad.net/os-xenapi
+ https://launchpad.net/os-xenapi
+ https://opendev.org/x/os-xenapi
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
+ >=dev-python/eventlet-0.18.2[${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/paramiko-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/os-testr-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testrepository-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/reno-2.5.0[${PYTHON_USEDEP}]
+
+ dev-python/mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/oscrypto/Manifest b/dev-python/oscrypto/Manifest
new file mode 100644
index 000000000000..45a95bdae287
--- /dev/null
+++ b/dev-python/oscrypto/Manifest
@@ -0,0 +1 @@
+DIST oscrypto-1.3.0.tar.gz 313874 BLAKE2B 6dd3331978d0ca8e63a136988d55bd6e1314078256f6c5141f26d49382e8908b58974c8f8d281a98a7e5efff2e477488baf7a37e3ea4a17bf887c92f9b1d9985 SHA512 b5baf72e1a09615b267be4d1c4baf2375bb939b5bd3d717ca9ca70776541f590a8608bef95991967e23f3794e6220709ed2fe5acdedfe9bfce1921c879a74bec
diff --git a/dev-python/oscrypto/metadata.xml b/dev-python/oscrypto/metadata.xml
new file mode 100644
index 000000000000..d2b2c8ce9f88
--- /dev/null
+++ b/dev-python/oscrypto/metadata.xml
@@ -0,0 +1,9 @@
+<?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/oscrypto/oscrypto-1.3.0.ebuild b/dev-python/oscrypto/oscrypto-1.3.0.ebuild
new file mode 100644
index 000000000000..18990ea3ddbe
--- /dev/null
+++ b/dev-python/oscrypto/oscrypto-1.3.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} 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"
+
+RDEPEND=">=dev-python/asn1crypto-1.5.1[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+RESTRICT="test"
+PROPERTIES="test_network"
+
+python_test() {
+ "${EPYTHON}" run.py tests || die
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ dodoc -r docs/*
+}
diff --git a/dev-python/oslo-cache/Manifest b/dev-python/oslo-cache/Manifest
new file mode 100644
index 000000000000..fe84710e5724
--- /dev/null
+++ b/dev-python/oslo-cache/Manifest
@@ -0,0 +1 @@
+DIST oslo-cache-2.8.1.tar.gz 66086 BLAKE2B 27ea52cb00f222bab47d2b85344ac74abcadf91f202356b254b2377c1e07662b511c3d54d83a9c60c90e08cb3bff57ed8ea2352042c73ab452f1eb9a7c8c95ab SHA512 da91158415e3553c35092dc0c76d11ebae646d4e7e14ac1ad7394d9a951efc3ac963069838ccac0bd3fa84391aec7a7b0f7ca6c2771a3f0b160338d23e79afd1
diff --git a/dev-python/oslo-cache/metadata.xml b/dev-python/oslo-cache/metadata.xml
new file mode 100644
index 000000000000..268ebfbc7cb5
--- /dev/null
+++ b/dev-python/oslo-cache/metadata.xml
@@ -0,0 +1,16 @@
+<?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>
+ <bugs-to>https://bugs.launchpad.net/oslo.cache</bugs-to>
+ <remote-id type="launchpad">oslo.cache</remote-id>
+ <remote-id type="github">openstack/oslo.cache</remote-id>
+ <remote-id type="pypi">oslo.cache</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/oslo-cache/oslo-cache-2.8.1.ebuild b/dev-python/oslo-cache/oslo-cache-2.8.1.ebuild
new file mode 100644
index 000000000000..e8002e1aca62
--- /dev/null
+++ b/dev-python/oslo-cache/oslo-cache-2.8.1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=bdepend
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+MY_PN=${PN/-/.}
+
+DESCRIPTION="Oslo Caching around dogpile.cache"
+HOMEPAGE="
+ https://opendev.org/openstack/oslo.cache
+ https://pypi.org/project/oslo.cache/
+ https://github.com/openstack/oslo.cache
+"
+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"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/dogpile-cache-1.1.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}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pifpaf-0.10.0[${PYTHON_USEDEP}]
+ >=dev-python/pymemcache-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/python-binary-memcached-0.29.0[${PYTHON_USEDEP}]
+ >=dev-python/python-memcached-1.56[${PYTHON_USEDEP}]
+ >=dev-python/pymongo-3.0.2[${PYTHON_USEDEP}]
+ >=dev-python/etcd3gw-0.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+RESTRICT="test"
+PROPERTIES="test_network"
+
+distutils_enable_tests pytest
diff --git a/dev-python/oslo-db/Manifest b/dev-python/oslo-db/Manifest
new file mode 100644
index 000000000000..8142a5596e39
--- /dev/null
+++ b/dev-python/oslo-db/Manifest
@@ -0,0 +1 @@
+DIST oslo.db-11.2.0.tar.gz 177589 BLAKE2B 8e0671e7021b40856a8a9e1ee9699abf9ba8eb9f549a15efc0e8ad03b8bf2a7f5f1438b22ffc545ae5c301f38687877877794bdd4b85c4d36cc8434fb7a6edd0 SHA512 5037d83bd45187055808190bb73681d56af6edd523df91f9edff06de1ae6694a018e0635e9e2e80bbc21f0690b8eb218e73c1be0f4a4ddcd93a97ffa5f093232
diff --git a/dev-python/oslo-db/metadata.xml b/dev-python/oslo-db/metadata.xml
new file mode 100644
index 000000000000..2bb83078b1b8
--- /dev/null
+++ b/dev-python/oslo-db/metadata.xml
@@ -0,0 +1,14 @@
+<?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-11.2.0.ebuild b/dev-python/oslo-db/oslo-db-11.2.0.ebuild
new file mode 100644
index 000000000000..e58326fae939
--- /dev/null
+++ b/dev-python/oslo-db/oslo-db-11.2.0.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=bdepend
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="OpenStack Common DB Code"
+HOMEPAGE="
+ https://pypi.org/project/oslo.db/
+ https://opendev.org/openstack/oslo.db
+ https://launchpad.net/oslo.db
+"
+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"
+IUSE="+sqlite mysql postgres"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.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.4.0[sqlite,${PYTHON_USEDEP}]
+ )
+ mysql? (
+ >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.4.0[sqlite,${PYTHON_USEDEP}]
+ )
+ postgres? (
+ >=dev-python/psycopg-2.8[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.4.0[sqlite,${PYTHON_USEDEP}]
+ )
+ >=dev-python/sqlalchemy-migrate-0.11.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+"
+
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/eventlet-0.18.2[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pifpaf-0.10.0[${PYTHON_USEDEP}]
+ >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
+ >=dev-python/psycopg-2.8.0[${PYTHON_USEDEP}]
+ )
+"
+
+REQUIRED_USE="
+ || ( mysql postgres sqlite )
+ test? ( mysql )
+"
+
+distutils_enable_tests pytest
+
+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-limit/Manifest b/dev-python/oslo-limit/Manifest
new file mode 100644
index 000000000000..717e0032e873
--- /dev/null
+++ b/dev-python/oslo-limit/Manifest
@@ -0,0 +1 @@
+DIST oslo-limit-1.5.0.tar.gz 29378 BLAKE2B 36a89f9a37b7c9e3a46f1e2bdee0b22ac320f8a164b6be03e7ef3c4152854999b3b339046780f249008bebcc48ba554b2ab18a6a31107f580db05fbf839d03f6 SHA512 f77c1bd3dd38310184a84bce1aa224268d92671b45c7d234f774122a43ff8966d8118270daf1aba8dd7b8ab367ef0d715374f81537b2f0fd5850858e280afaad
diff --git a/dev-python/oslo-limit/metadata.xml b/dev-python/oslo-limit/metadata.xml
new file mode 100644
index 000000000000..ed3ce810e265
--- /dev/null
+++ b/dev-python/oslo-limit/metadata.xml
@@ -0,0 +1,16 @@
+<?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>
+ <bugs-to>https://bugs.launchpad.net/oslo.limit</bugs-to>
+ <remote-id type="launchpad">oslo.limit</remote-id>
+ <remote-id type="github">openstack/oslo.limit</remote-id>
+ <remote-id type="pypi">oslo.limit</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/oslo-limit/oslo-limit-1.5.0.ebuild b/dev-python/oslo-limit/oslo-limit-1.5.0.ebuild
new file mode 100644
index 000000000000..ebbd48d0a771
--- /dev/null
+++ b/dev-python/oslo-limit/oslo-limit-1.5.0.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+MY_PN=${PN/-/.}
+
+DESCRIPTION="Limit enforcement library to assist with quota calculation"
+HOMEPAGE="
+ https://opendev.org/openstack/oslo.limit
+ https://pypi.org/project/oslo.limit/
+ https://github.com/openstack/oslo.limit
+"
+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"
+
+RDEPEND="
+ >=dev-python/keystoneauth-3.9.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.44.0[${PYTHON_USEDEP}]
+ >=dev-python/openstacksdk-0.31.1[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ )
+"
+
+RESTRICT="test"
+
+distutils_enable_tests pytest
diff --git a/dev-python/oslo-messaging/Manifest b/dev-python/oslo-messaging/Manifest
new file mode 100644
index 000000000000..d059ad2afe6c
--- /dev/null
+++ b/dev-python/oslo-messaging/Manifest
@@ -0,0 +1 @@
+DIST oslo.messaging-12.9.1.tar.gz 267144 BLAKE2B d2338ef55a31ae44836205a4b794cc3c8e26d0a9708fd88b5ab02394e4be784047efdd7d26e82c38ede8f8bdb34f97540ed410ce22f6e1cf91572d7dd8da9c25 SHA512 808436d4a821d1f8dc8a7bf00156f6ad6a199dfc11f72e41cc4ea03c6dbb4c6ade52c1f92b4798a29cbda0c5fc07b981dbecbb1d34bb6a53b6a1b4bf8b9e5267
diff --git a/dev-python/oslo-messaging/metadata.xml b/dev-python/oslo-messaging/metadata.xml
new file mode 100644
index 000000000000..1d49241efcf8
--- /dev/null
+++ b/dev-python/oslo-messaging/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">
+ <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.9.1.ebuild b/dev-python/oslo-messaging/oslo-messaging-12.9.1.ebuild
new file mode 100644
index 000000000000..757512af59a5
--- /dev/null
+++ b/dev-python/oslo-messaging/oslo-messaging-12.9.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=bdepend
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Messaging API for RPC and notifications over different messaging transports"
+HOMEPAGE="
+ https://pypi.org/project/oslo.messaging/
+ https://opendev.org/openstack/oslo.messaging
+ https://launchpad.net/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"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.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-2.18.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-service-1.24.0[${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}]
+ >=dev-python/oslo-metrics-0.2.1[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pifpaf-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/confluent-kafka-1.3.0[${PYTHON_USEDEP}]
+ >=dev-python/pyngus-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/eventlet-0.23.0[${PYTHON_USEDEP}]
+ >=dev-python/greenlet-0.4.15[${PYTHON_USEDEP}]
+ )
+"
+
+RESTRICT="test" # special setup is needed for tests
+
+distutils_enable_tests pytest
diff --git a/dev-python/oslo-metrics/Manifest b/dev-python/oslo-metrics/Manifest
new file mode 100644
index 000000000000..32045fc0768c
--- /dev/null
+++ b/dev-python/oslo-metrics/Manifest
@@ -0,0 +1 @@
+DIST oslo.metrics-0.3.0.tar.gz 18637 BLAKE2B b2a0c1a70ee5fa4b0652f77856407c5809eb7368e33bca6de65bdac69162055a586cde9c82b30f02e58f51efc6e1251a652c640a06fff034e9cdc5220962ce7d SHA512 f30370d2837ceca015b32d66dafb71d11bf1bfb01d47afa09bdf2e57d0fd65011e30b5e2de68c0f635d5710068b23944f4112f5a22260ed6350aaa7e3c64c4d7
diff --git a/dev-python/oslo-metrics/metadata.xml b/dev-python/oslo-metrics/metadata.xml
new file mode 100644
index 000000000000..ac2ea1cc6c05
--- /dev/null
+++ b/dev-python/oslo-metrics/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="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">oslo.metrics</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/oslo-metrics/oslo-metrics-0.3.0.ebuild b/dev-python/oslo-metrics/oslo-metrics-0.3.0.ebuild
new file mode 100644
index 000000000000..4d08967cc63b
--- /dev/null
+++ b/dev-python/oslo-metrics/oslo-metrics-0.3.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="OpenStack library for collecting metrics from Oslo libraries"
+HOMEPAGE="
+ https://pypi.org/project/oslo.metrics/
+ https://opendev.org/openstack/oslo.metrics
+ https://launchpad.net/oslo.metrics
+"
+SRC_URI="mirror://pypi/${PN:0:1}/oslo.metrics/oslo.metrics-${PV}.tar.gz"
+S="${WORKDIR}/oslo.metrics-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-3.1.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.41.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.44.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-6.9.0[${PYTHON_USEDEP}]
+ >=dev-python/prometheus_client-0.6.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/oslo-middleware/Manifest b/dev-python/oslo-middleware/Manifest
new file mode 100644
index 000000000000..416181c39d4e
--- /dev/null
+++ b/dev-python/oslo-middleware/Manifest
@@ -0,0 +1 @@
+DIST oslo.middleware-4.4.0.tar.gz 63935 BLAKE2B 36cd2f0c5e7ef17ae24eaa15fa64bbaf9e5d7e87475bea1d9170f7c29d1f6d946096638e5fc1d1af3a49137411654a73642a46ed47382bc77278ec24f59eb5c5 SHA512 6cbfb22ec4a513bed214de32924c370ac290ebc9c6dfd6e14b60035179695f49f623dffba9313d263f818c02eaed92596ba58912daf6289760570861307beaa5
diff --git a/dev-python/oslo-middleware/metadata.xml b/dev-python/oslo-middleware/metadata.xml
new file mode 100644
index 000000000000..bfccce085f59
--- /dev/null
+++ b/dev-python/oslo-middleware/metadata.xml
@@ -0,0 +1,16 @@
+<?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.4.0.ebuild b/dev-python/oslo-middleware/oslo-middleware-4.4.0.ebuild
new file mode 100644
index 000000000000..89e2e6124ea5
--- /dev/null
+++ b/dev-python/oslo-middleware/oslo-middleware-4.4.0.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=bdepend
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Components injected into wsgi pipelines to intercept request/response flows"
+HOMEPAGE="
+ https://pypi.org/project/oslo.middleware/
+ https://launchpad.net/oslo.middleware
+ https://opendev.org/openstack/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"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.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}]
+ >=dev-python/bcrypt-3.1.3[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-2.18.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/oslo-policy/Manifest b/dev-python/oslo-policy/Manifest
new file mode 100644
index 000000000000..9e9ad265f4c7
--- /dev/null
+++ b/dev-python/oslo-policy/Manifest
@@ -0,0 +1,2 @@
+DIST oslo.policy-3.10.1.tar.gz 113864 BLAKE2B 87a506ce39a4540dc315eb910b777edc58834dcedfa1ff4bc9202f574ddd50805f54b7da630e428188251b736df6ca1f006341aa2a6915c6ab237f22dd400c96 SHA512 88d44c1114368d485aebe38df0eb5e14232fe5a7e112f188be3055c3534ccc3c730b0bfdb570b87e43b455d4c2d2d038baf9fd4b9ed56b67b008858c8eb20b1a
+DIST oslo.policy-3.8.2.tar.gz 112412 BLAKE2B ecfec4c18597b18a2b37e83e5e398b7bed7d9cb11c44186528517eca9a1967779ffcb22b6726f1064b55b8206af27c4396982cf2da9247535e070c56e5cd6134 SHA512 6daea44a93f53608529314b5eb780d999a1ffd65c3c54f05d58341254f99754c94e177ad01bb37aa036f98f3211bb3705c499ad6244a68165ae56fa59943c79a
diff --git a/dev-python/oslo-policy/metadata.xml b/dev-python/oslo-policy/metadata.xml
new file mode 100644
index 000000000000..efd49ad357c6
--- /dev/null
+++ b/dev-python/oslo-policy/metadata.xml
@@ -0,0 +1,15 @@
+<?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>
+ <bugs-to>https://bugs.launchpad.net/oslo.policy</bugs-to>
+ <remote-id type="pypi">oslo.policy</remote-id>
+ <remote-id type="github">openstack/oslo.policy</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/oslo-policy/oslo-policy-3.10.1.ebuild b/dev-python/oslo-policy/oslo-policy-3.10.1.ebuild
new file mode 100644
index 000000000000..a837d429e051
--- /dev/null
+++ b/dev-python/oslo-policy/oslo-policy-3.10.1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=bdepend
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Support for RBAC policy enforcement across all OpenStack services"
+HOMEPAGE="
+ https://opendev.org/openstack/oslo.policy
+ https://pypi.org/project/oslo.policy/
+ https://github.com/openstack/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"
+
+RDEPEND="
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-6.0.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/pyyaml-5.1[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.40.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-2.0.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/oslo-policy/oslo-policy-3.8.2.ebuild b/dev-python/oslo-policy/oslo-policy-3.8.2.ebuild
new file mode 100644
index 000000000000..0219296bcf9d
--- /dev/null
+++ b/dev-python/oslo-policy/oslo-policy-3.8.2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=bdepend
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Support for RBAC policy enforcement across all OpenStack services"
+HOMEPAGE="
+ https://opendev.org/openstack/oslo.policy
+ https://pypi.org/project/oslo.policy/
+ https://github.com/openstack/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"
+
+RDEPEND="
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-6.0.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/stevedore-1.20.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.40.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-2.0.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/oslo-privsep/Manifest b/dev-python/oslo-privsep/Manifest
new file mode 100644
index 000000000000..da2f9b8d9177
--- /dev/null
+++ b/dev-python/oslo-privsep/Manifest
@@ -0,0 +1 @@
+DIST oslo.privsep-2.6.2.tar.gz 45754 BLAKE2B 266362719d536fbd1935178749c3f4f7d0bb5b4baf8a184ca1a485eb4643c978355a8c3b69c71123aa856cd747b47d37c49cb3f666cb1ffa47a223b31f3487df SHA512 59cd8567ea31c17d849bc2c6f12ab8b0aeffce3341ae2a6f46c36388229a230930c3b6af9e9d59c754bf5d88a05deb11c413079b27d001ac5e49faa89baa3d1a
diff --git a/dev-python/oslo-privsep/metadata.xml b/dev-python/oslo-privsep/metadata.xml
new file mode 100644
index 000000000000..bd4e6f15f64b
--- /dev/null
+++ b/dev-python/oslo-privsep/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">
+ <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.6.2.ebuild b/dev-python/oslo-privsep/oslo-privsep-2.6.2.ebuild
new file mode 100644
index 000000000000..3a68f1f8f99b
--- /dev/null
+++ b/dev-python/oslo-privsep/oslo-privsep-2.6.2.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_IGNORE=( oslo_privsep/functional )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="OpenStack library for privilege separation"
+HOMEPAGE="
+ https://opendev.org/openstack/oslo.privsep
+ 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"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.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}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # allow usage 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
new file mode 100644
index 000000000000..722dc5817a31
--- /dev/null
+++ b/dev-python/oslo-reports/Manifest
@@ -0,0 +1 @@
+DIST oslo.reports-2.3.0.tar.gz 52902 BLAKE2B 4e0912ddbff688825f248a7e221a9d9387e30d95c2dd19f829f71147b60ba67b92b854bd3604f0d9335efe9f99ebb0e516c08da584615ab05a02bad0cb224c98 SHA512 7baf354d6e0a332805c0383cfa47171b9f0f32470a0257bdcff0b67cd401623dfb2187f7e4ba65c74e0da6fa053bf8caca7f5d3cf3ac00b1b4cf7549e0c6bc75
diff --git a/dev-python/oslo-reports/metadata.xml b/dev-python/oslo-reports/metadata.xml
new file mode 100644
index 000000000000..70277ed9c2d3
--- /dev/null
+++ b/dev-python/oslo-reports/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">
+ <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.3.0.ebuild b/dev-python/oslo-reports/oslo-reports-2.3.0.ebuild
new file mode 100644
index 000000000000..713f1fcc19bb
--- /dev/null
+++ b/dev-python/oslo-reports/oslo-reports-2.3.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="generified reports for openstack"
+HOMEPAGE="
+ https://opendev.org/openstack/oslo.reports
+ https://pypi.org/project/oslo.reports/
+ https://launchpad.net/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"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/jinja-2.10[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-2.18.0[${PYTHON_USEDEP}]
+ >=dev-python/psutil-3.2.2[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/eventlet-0.18.2[${PYTHON_USEDEP}]
+ >=dev-python/greenlet-0.4.15[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/oslo-rootwrap/Manifest b/dev-python/oslo-rootwrap/Manifest
new file mode 100644
index 000000000000..f0b0fd7863ab
--- /dev/null
+++ b/dev-python/oslo-rootwrap/Manifest
@@ -0,0 +1 @@
+DIST oslo.rootwrap-6.3.0.tar.gz 49527 BLAKE2B 8e3489674d4aca6eba36973457d14158ac1846e69a4ce102a16af1aafe5a36b8503119c3ab2bb576d493eb0222ba63a021e9a89b7ff621db94ebff990a3d504e SHA512 0f22e3b3b23dbad18109b3f11c18c2e278d582afc62bd03909e46445231e905a70b26a38773ab9c5543a0bcd0987f0681dfaf5a633cbf24f0144c6ff1f081626
diff --git a/dev-python/oslo-rootwrap/metadata.xml b/dev-python/oslo-rootwrap/metadata.xml
new file mode 100644
index 000000000000..3f3722baf51d
--- /dev/null
+++ b/dev-python/oslo-rootwrap/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">
+ <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.3.0.ebuild b/dev-python/oslo-rootwrap/oslo-rootwrap-6.3.0.ebuild
new file mode 100644
index 000000000000..60e3b99db99b
--- /dev/null
+++ b/dev-python/oslo-rootwrap/oslo-rootwrap-6.3.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Allows fine filtering of shell commands to run as root from OpenStack services"
+HOMEPAGE="
+ https://pypi.org/project/oslo.rootwrap/
+ https://opendev.org/openstack/oslo.rootwrap
+ https://launchpad.net/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"
+
+RDEPEND=">=dev-python/six-1.10.0[${PYTHON_USEDEP}]"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/eventlet-0.18.2[${PYTHON_USEDEP}]
+ >=dev-python/reno-3.1.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/oslo-service/Manifest b/dev-python/oslo-service/Manifest
new file mode 100644
index 000000000000..8011b74d7e29
--- /dev/null
+++ b/dev-python/oslo-service/Manifest
@@ -0,0 +1 @@
+DIST oslo.service-2.8.0.tar.gz 84816 BLAKE2B cac1f99b27fe84008c64d2e211901a6b6d948bc92320b72dde04e54db4a61e9f52a5fc80613d23d045b2706d15a21ba8965b41afdbcdf6f7328a42a2361f78e9 SHA512 fcaf1cacbfbb7b804e4abb0a1cddb59d4df2b5c790186300f8efa540ea3a18bd0c87bb53000c38db875d4f8688d10daf1ee6f58958e71332f40ef4cf64f22ea3
diff --git a/dev-python/oslo-service/metadata.xml b/dev-python/oslo-service/metadata.xml
new file mode 100644
index 000000000000..90133a03ff4c
--- /dev/null
+++ b/dev-python/oslo-service/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">
+ <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.8.0.ebuild b/dev-python/oslo-service/oslo-service-2.8.0.ebuild
new file mode 100644
index 000000000000..f50413facb71
--- /dev/null
+++ b/dev-python/oslo-service/oslo-service-2.8.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=bdepend
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Library for running OpenStack services"
+HOMEPAGE="
+ https://pypi.org/project/oslo.service/
+ https://opendev.org/openstack/oslo.service
+ https://launchpad.net/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"
+
+RDEPEND="
+ >=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}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/oslo-upgradecheck/Manifest b/dev-python/oslo-upgradecheck/Manifest
new file mode 100644
index 000000000000..97382a77546e
--- /dev/null
+++ b/dev-python/oslo-upgradecheck/Manifest
@@ -0,0 +1 @@
+DIST oslo-upgradecheck-1.4.0.tar.gz 19487 BLAKE2B 6731ace45abc39dc751717ca61a59800a1a07e710c2afcdf1ab9225597b5b33ab4195cb7eae3eed1bab30dc7fda60926192d1edcfd2cf2c41a4c754ccb376966 SHA512 ce53c01a6e144788c16f36af74d4593e850631c4552560e36ac17b1583d966ba2df83dc4a4251a81ccb35363935688b1d901de718e2149dd86473cdcc2570961
diff --git a/dev-python/oslo-upgradecheck/metadata.xml b/dev-python/oslo-upgradecheck/metadata.xml
new file mode 100644
index 000000000000..fe6ee74a49c6
--- /dev/null
+++ b/dev-python/oslo-upgradecheck/metadata.xml
@@ -0,0 +1,15 @@
+<?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>
+ <bugs-to>https://bugs.launchpad.net/oslo.upgradecheck</bugs-to>
+ <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.4.0.ebuild b/dev-python/oslo-upgradecheck/oslo-upgradecheck-1.4.0.ebuild
new file mode 100644
index 000000000000..99aaeec5387a
--- /dev/null
+++ b/dev-python/oslo-upgradecheck/oslo-upgradecheck-1.4.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=bdepend
+MY_PN=${PN/-/.}
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Common code for writing OpenStack upgrade checks"
+HOMEPAGE="
+ https://opendev.org/openstack/oslo.upgradecheck
+ https://pypi.org/project/oslo.upgradecheck/
+"
+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"
+
+RDEPEND="
+ >=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/oslo-utils-4.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-policy-2.0.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/oslotest-3.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-2.21.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/oslo-versionedobjects/Manifest b/dev-python/oslo-versionedobjects/Manifest
new file mode 100644
index 000000000000..0f97c6988cc0
--- /dev/null
+++ b/dev-python/oslo-versionedobjects/Manifest
@@ -0,0 +1 @@
+DIST oslo.versionedobjects-2.5.0.tar.gz 153968 BLAKE2B a109caf418148dc8e00e5afe1344d1a849c89ce454df1fb44eb48ae0455e3208f942d3d1ad5a002127a4cc02ab5c43fdf883fbd502aa43ef90f8d26372403bff SHA512 1eceac157f223e25cb08041fc2d7f73d9f4b5d8fb75cf5a542c6c6a1ecb16457c1f15cbed227b742a62c1608744dcee1f11d3dd1e8841bd9bc9990880b9bb73f
diff --git a/dev-python/oslo-versionedobjects/metadata.xml b/dev-python/oslo-versionedobjects/metadata.xml
new file mode 100644
index 000000000000..0cb887ca2f1a
--- /dev/null
+++ b/dev-python/oslo-versionedobjects/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">
+ <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.5.0.ebuild b/dev-python/oslo-versionedobjects/oslo-versionedobjects-2.5.0.ebuild
new file mode 100644
index 000000000000..5e8926bc1463
--- /dev/null
+++ b/dev-python/oslo-versionedobjects/oslo-versionedobjects-2.5.0.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A library that provides a generic versioned and RPC-friendly object model"
+HOMEPAGE="
+ https://docs.openstack.org/developer/oslo.versionedobjects
+ https://opendev.org/openstack/oslo.versionedobjects
+ https://pypi.org/project/oslo.versionedobjects/
+ https://launchpad.net/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"
+
+RDEPEND="
+ >=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-utils-4.7.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}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/oslo-vmware/Manifest b/dev-python/oslo-vmware/Manifest
new file mode 100644
index 000000000000..a80a2823c8f7
--- /dev/null
+++ b/dev-python/oslo-vmware/Manifest
@@ -0,0 +1 @@
+DIST oslo.vmware-3.10.0.tar.gz 466700 BLAKE2B 3965e265bd0927c1cd27e1823ee65187c8a670fc87747f19b4c605a79219735f01bfd5a7eba5455ba4f117ee4f026d67fe41ea4ec324983d8f3a872d5c8cfea7 SHA512 b7ff64d1d360686c78e578adac4efcee7599239aa69cc18eb3f49bb629d803babb36ec5a75c653eccc821395fcfaa26e58465c836a31f2904cee99ba20104e2f
diff --git a/dev-python/oslo-vmware/metadata.xml b/dev-python/oslo-vmware/metadata.xml
new file mode 100644
index 000000000000..dff7f89c2437
--- /dev/null
+++ b/dev-python/oslo-vmware/metadata.xml
@@ -0,0 +1,16 @@
+<?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.10.0.ebuild b/dev-python/oslo-vmware/oslo-vmware-3.10.0.ebuild
new file mode 100644
index 000000000000..fedaef2dab24
--- /dev/null
+++ b/dev-python/oslo-vmware/oslo-vmware-3.10.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_DESELECT=( oslo_vmware/tests/test_service.py::RequestsTransportTest::test_send_with_local_file_url )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Oslo VMware library for OpenStack projects"
+HOMEPAGE="
+ https://pypi.org/project/oslo.vmware/
+ https://opendev.org/openstack/oslo.vmware
+ https://launchpad.net/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"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.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/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}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/osprofiler/Manifest b/dev-python/osprofiler/Manifest
new file mode 100644
index 000000000000..17f011c1aef0
--- /dev/null
+++ b/dev-python/osprofiler/Manifest
@@ -0,0 +1 @@
+DIST osprofiler-3.4.2.tar.gz 90651 BLAKE2B ab7fdfd84126b877c3a1767166c6e80953b25e026427a7075bd83dd6272d966882ed3be83c176fce200d61a9bec88ef6d2772189842413bb250ace71e53ba639 SHA512 2127b867e2b731fe81efa3b8ea64d22426bbff04478aefe879203cfce86202fff0116d555dd100562a405edf5820a37e3afd97809968c213991c0d19bde41fbc
diff --git a/dev-python/osprofiler/metadata.xml b/dev-python/osprofiler/metadata.xml
new file mode 100644
index 000000000000..c086c158dc88
--- /dev/null
+++ b/dev-python/osprofiler/metadata.xml
@@ -0,0 +1,14 @@
+<?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.2.ebuild b/dev-python/osprofiler/osprofiler-3.4.2.ebuild
new file mode 100644
index 000000000000..5eaa2bfe8289
--- /dev/null
+++ b/dev-python/osprofiler/osprofiler-3.4.2.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_DESELECT=(
+ osprofiler/tests/functional/test_driver.py::DriverTestCase::test_get_report
+ osprofiler/tests/functional/test_driver.py::RedisDriverTestCase::test_get_report
+ osprofiler/tests/functional/test_driver.py::RedisDriverTestCase::test_list_traces
+ osprofiler/tests/unit/test_opts.py::ConfigTestCase::test_options_defaults
+ osprofiler/tests/unit/test_profiler.py::ProfilerGlobMethodsTestCase::test_get_profiler_and_init
+ osprofiler/tests/unit/test_profiler.py::test_fn_exc
+)
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="OpenStack Profiler Library"
+HOMEPAGE="
+ https://launchpad.net/osprofiler
+ https://opendev.org/openstack/osprofiler
+ https://pypi.org/project/osprofiler/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+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.33.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.2[${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}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pymongo-3.0.2[${PYTHON_USEDEP}]
+ >=dev-python/elasticsearch-py-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/redis-py-2.10.0[${PYTHON_USEDEP}]
+ >=dev-python/reno-3.1.0[${PYTHON_USEDEP}]
+ >=dev-python/jaeger-client-3.8.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/ots-python/Manifest b/dev-python/ots-python/Manifest
new file mode 100644
index 000000000000..547ec2bc94da
--- /dev/null
+++ b/dev-python/ots-python/Manifest
@@ -0,0 +1,2 @@
+DIST ots-python-8.1.4.tar.gz 10830 BLAKE2B f75e4e71c942a2214d9995184dd70505800a9a58d6238fc2321afde0efe17ee4e24906edb01f0690e12e245c5316f80fb313ae416d8a64e30c23c239c9929409 SHA512 466efae7d40dc24e0af22cb29d03d7c8bb5beb592c65c36a8e2d1678c141dd9b591184cbc01bc4879705a99cbf13e61c35bb51e878fdf866e82f82cbed75099d
+DIST ots-python-8.2.1.tar.gz 10577 BLAKE2B d642bc539b422375388cdfc94fe7541d1bee102e8292bc6186ad25764461e19974786034788ed86268e4565b3b17db22ba50fc257c1dc18d2f1289658b66f7da SHA512 be48bb860c9a1147a79fc2819f361a500d28d6655c302110cdc9596d4be1e127f4137a13e2cebf6a600209ba5356229eb4f019bf9e993231c9ed25f96ea1a74b
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
new file mode 100644
index 000000000000..5eae00dbd8f4
--- /dev/null
+++ b/dev-python/ots-python/files/ots-python-8.1.4-ots-sanitize.patch
@@ -0,0 +1,21 @@
+--- 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
new file mode 100644
index 000000000000..5c5bb5a69906
--- /dev/null
+++ b/dev-python/ots-python/metadata.xml
@@ -0,0 +1,14 @@
+<?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">opentype-sanitizers</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/ots-python/ots-python-8.1.4-r1.ebuild b/dev-python/ots-python/ots-python-8.1.4-r1.ebuild
new file mode 100644
index 000000000000..44e88e039f68
--- /dev/null
+++ b/dev-python/ots-python/ots-python-8.1.4-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="A Python wrapper for OpenType Sanitizer"
+HOMEPAGE="
+ https://github.com/googlefonts/ots-python
+ https://pypi.org/project/opentype-sanitizer/
+"
+SRC_URI="https://github.com/googlefonts/ots-python/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64"
+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/ots-python/ots-python-8.2.1.ebuild b/dev-python/ots-python/ots-python-8.2.1.ebuild
new file mode 100644
index 000000000000..cfee53bb3a0e
--- /dev/null
+++ b/dev-python/ots-python/ots-python-8.2.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="A Python wrapper for OpenType Sanitizer"
+HOMEPAGE="
+ https://github.com/googlefonts/ots-python
+ https://pypi.org/project/opentype-sanitizer/
+"
+SRC_URI="https://github.com/googlefonts/ots-python/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64"
+LICENSE="BSD"
+SLOT="0"
+
+RDEPEND=">=dev-util/ots-${PV}"
+
+PATCHES=( "${FILESDIR}/${PN}-8.1.4-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
new file mode 100644
index 000000000000..dc1a3c89f84d
--- /dev/null
+++ b/dev-python/ovsdbapp/Manifest
@@ -0,0 +1 @@
+DIST ovsdbapp-1.15.1.tar.gz 106361 BLAKE2B 754195e6ed1c9f6e43c34df66976403e84390febf3dba71a73245a34fd0c277a72def3f5b8ce6ed56c0897d3de80737ce4be521a9aec0a6d3c24ca4a36b5503a SHA512 f4d6e983c883ca23827e8216f90f352926600e0cdcf32d524a1c912505e4672c143ed66bf2e1e1bbbba1578469befc559077828910862d7fc81db2b6ceb68887
diff --git a/dev-python/ovsdbapp/metadata.xml b/dev-python/ovsdbapp/metadata.xml
new file mode 100644
index 000000000000..9496e4ebfba1
--- /dev/null
+++ b/dev-python/ovsdbapp/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">
+ <description>co-maintainers welcome</description>
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="pypi">ovsdbapp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/ovsdbapp/ovsdbapp-1.15.1.ebuild b/dev-python/ovsdbapp/ovsdbapp-1.15.1.ebuild
new file mode 100644
index 000000000000..d8d6fdca0240
--- /dev/null
+++ b/dev-python/ovsdbapp/ovsdbapp-1.15.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_IGNORE=( ovsdbapp/tests/functional )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A library for creating OVSDB applications"
+HOMEPAGE="
+ https://opendev.org/openstack/ovsdbapp
+ https://pypi.org/project/ovsdbapp/
+ https://launchpad.net/ovsdbapp
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
+ >=dev-python/ovs-2.10.0[${PYTHON_USEDEP}]
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ net-misc/openvswitch
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/parsel/Manifest b/dev-python/parsel/Manifest
new file mode 100644
index 000000000000..7912a5960bf9
--- /dev/null
+++ b/dev-python/parsel/Manifest
@@ -0,0 +1 @@
+DIST parsel-1.6.0.tar.gz 100678 BLAKE2B 9fe937013d84d168cab4e415affecece272f7b2af729448aaf802240d0d7aca553d85de5747cf06ecbd17099e2bd81c741a3afd6bbad803916afdfd3673c07d6 SHA512 d3161522e1102cceeb1f29ab020b33019d4ac7f096cfab8fbe40f54073e49afc24f02aa54206d86f56c8f92e3db2d0d2f8a3dbdfa6417492cf299201f2ae6604
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 000000000000..33b53366508c
--- /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 000000000000..65ac1f20562d
--- /dev/null
+++ b/dev-python/parsel/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/parsel/parsel-1.6.0.ebuild b/dev-python/parsel/parsel-1.6.0.ebuild
new file mode 100644
index 000000000000..0a2ca7a4b813
--- /dev/null
+++ b/dev-python/parsel/parsel-1.6.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+inherit distutils-r1
+
+DESCRIPTION="Utility to extract data from XML/HTML documents using XPath or CSS selectors"
+HOMEPAGE="https://scrapy.org/"
+SRC_URI="https://github.com/scrapy/parsel/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT=0
+KEYWORDS="~amd64"
+
+DEPEND="${PYTHON_DEPS}"
+RDEPEND="${DEPEND}
+ dev-python/cssselect[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/w3lib[${PYTHON_USEDEP}]
+"
+BDEPEND="${DEPEND}
+ test? (
+ dev-python/sybil[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-1.6.0-pytest-runner.patch" )
+
+distutils_enable_tests pytest
+
+python_test() {
+ py.test --ignore=docs || die
+}
diff --git a/dev-python/pdfminer-six/Manifest b/dev-python/pdfminer-six/Manifest
new file mode 100644
index 000000000000..5e26aa732497
--- /dev/null
+++ b/dev-python/pdfminer-six/Manifest
@@ -0,0 +1 @@
+DIST pdfminer-six-20201018.tar.gz 10256409 BLAKE2B 87e4b693621efc36c0f248d977c8c4310d8865629bc459c8f2bb65385ae215ce07701a016e8a5f31a81f84dc596dca9f58895ac98ad34f7549ea557282cfcc9e SHA512 62d3ef815072627baf30cda966f6914422ff4df4945e0442bdaa93e04f42d2e0874f0dba46cec0f789308d787f1c8842e913bb0b590709c22faf12f605ae258e
diff --git a/dev-python/pdfminer-six/metadata.xml b/dev-python/pdfminer-six/metadata.xml
new file mode 100644
index 000000000000..17361c3983f7
--- /dev/null
+++ b/dev-python/pdfminer-six/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>alarig@swordarmor.fr</email>
+ <name>Alarig Le Lay</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/pdfminer-six/pdfminer-six-20201018.ebuild b/dev-python/pdfminer-six/pdfminer-six-20201018.ebuild
new file mode 100644
index 000000000000..4e11068a558c
--- /dev/null
+++ b/dev-python/pdfminer-six/pdfminer-six-20201018.ebuild
@@ -0,0 +1,29 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/pg8000/Manifest b/dev-python/pg8000/Manifest
new file mode 100644
index 000000000000..a2d0e5be9f58
--- /dev/null
+++ b/dev-python/pg8000/Manifest
@@ -0,0 +1,2 @@
+DIST pg8000-1.22.0.tar.gz 116910 BLAKE2B a6779fe30a114f4e66c8a09924a4174ab9c128ee286138b80d60c7cc879c496abd56943c22bee1d396de460002a6971762580112f3dd2808f96f4c46db176e4d SHA512 ec506464a7d13d8befee7f8e0837983c4cbc6193b8ec7d8847c46cb04788c23339db6557b31e88d567e395cb45100e3c0a68ac3ba34a031380a980c24857ed87
+DIST pg8000-1.24.1.tar.gz 118816 BLAKE2B 43ed4cfb1850288f65c7b7d9dc20c0459f381b67829199855d5188d030212bd3ff9a4135258b515f2073e4303b7909d1961e7428cd208bb2dfc52abe35bb02c2 SHA512 3260d74eaefc5bcdf179e509b1ff3aceaeb8bf76f01e1ec6886e79d40b564540686e355c8de3fca9ace34447bdbb3ae3b2616e5941655eff890a28e336abef57
diff --git a/dev-python/pg8000/metadata.xml b/dev-python/pg8000/metadata.xml
new file mode 100644
index 000000000000..91f0325963c9
--- /dev/null
+++ b/dev-python/pg8000/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <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.22.0.ebuild b/dev-python/pg8000/pg8000-1.22.0.ebuild
new file mode 100644
index 000000000000..87a618be6576
--- /dev/null
+++ b/dev-python/pg8000/pg8000-1.22.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A Pure-Python PostgreSQL Driver"
+HOMEPAGE="
+ https://github.com/tlocke/pg8000
+ https://pypi.org/project/pg8000/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="BSD"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/scramp[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-benchmark[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ )
+"
+
+RESTRICT="test" # tests require a running postgresql
+
+distutils_enable_tests pytest
diff --git a/dev-python/pg8000/pg8000-1.24.1.ebuild b/dev-python/pg8000/pg8000-1.24.1.ebuild
new file mode 100644
index 000000000000..a5ce66a854c8
--- /dev/null
+++ b/dev-python/pg8000/pg8000-1.24.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A Pure-Python PostgreSQL Driver"
+HOMEPAGE="
+ https://github.com/tlocke/pg8000
+ https://pypi.org/project/pg8000/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="BSD"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/scramp-1.4.1[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ dev-db/postgresql
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-benchmark[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ )
+"
+
+RESTRICT="test" # tests require a running postgresql
+
+distutils_enable_tests pytest
diff --git a/dev-python/phx-class-registry/Manifest b/dev-python/phx-class-registry/Manifest
new file mode 100644
index 000000000000..4622fc776439
--- /dev/null
+++ b/dev-python/phx-class-registry/Manifest
@@ -0,0 +1 @@
+DIST phx-class-registry-3.0.5.tar.gz 23756 BLAKE2B 7ba98323cb91a328b7dbe3df2def174d950c9f78da2fbd62c81dbf3803d570d42794a20ca3219b41f8f5b739efd3317ce8672f70169db492c2cda8a980460fb1 SHA512 324171cbf14132e02c58026d90c87d408fd321d95258cf8cd66de472a125177c4131ca1e47fad279db3384a8a3a50832eb1287a4b577c76c79a9391fa1d998c6
diff --git a/dev-python/phx-class-registry/metadata.xml b/dev-python/phx-class-registry/metadata.xml
new file mode 100644
index 000000000000..c7a62a35ef79
--- /dev/null
+++ b/dev-python/phx-class-registry/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>ezzieyguywuf@gmail.com</email>
+ <name>Wolfgang E. Sanyer</name>
+ </maintainer>
+ <longdescription lang="en">
+ At the intersection of the Registry and Factory patterns lies the
+ ClassRegistry. This package contains the python modules necessary to use
+ this dessign pattern
+ </longdescription>
+</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-3.0.5.ebuild
new file mode 100644
index 000000000000..6a033523d5b1
--- /dev/null
+++ b/dev-python/phx-class-registry/phx-class-registry-3.0.5.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+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"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+S="${WORKDIR}/class-registry-${PV}"
+
+distutils_enable_tests nose
diff --git a/dev-python/pifpaf/Manifest b/dev-python/pifpaf/Manifest
new file mode 100644
index 000000000000..11ae766bb962
--- /dev/null
+++ b/dev-python/pifpaf/Manifest
@@ -0,0 +1 @@
+DIST pifpaf-3.1.5.tar.gz 189903 BLAKE2B 5742e995feeb91af41db20cc605e8a5f5f21f63281d4f66ba8b108310a88d716ab4be0a43e0371f10e7f3f42b693953b3344c648458999348b914e03abe462c8 SHA512 4e0f70740f8260cb3cf801ea97f1fa30e6b87cfc4112b5482389d0635e76bbc7f1561945397e4e6586116c49d11b1e8f721dd61dca82668833bf224f9ba3e94f
diff --git a/dev-python/pifpaf/metadata.xml b/dev-python/pifpaf/metadata.xml
new file mode 100644
index 000000000000..ce63cf84c351
--- /dev/null
+++ b/dev-python/pifpaf/metadata.xml
@@ -0,0 +1,15 @@
+<?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">
+Pifpaf is a suite of fixtures and a command-line tool that allows to start and stop daemons for a quick throw-away usage. This is typically useful when needing these daemons to run integration testing. It originaly evolved from its precussor overtest.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">jd/pifpaf</remote-id>
+ <remote-id type="pypi">pifpaf</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pifpaf/pifpaf-3.1.5.ebuild b/dev-python/pifpaf/pifpaf-3.1.5.ebuild
new file mode 100644
index 000000000000..552d9d142025
--- /dev/null
+++ b/dev-python/pifpaf/pifpaf-3.1.5.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_DESELECT=( pifpaf/tests/test_cli.py::TestCli::test_non_existing_command )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python fixtures and daemon managing tools for functional testing"
+HOMEPAGE="
+ https://pypi.org/project/pifpaf/
+ https://github.com/jd/pifpaf
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/daiquiri[${PYTHON_USEDEP}]
+ dev-python/click[${PYTHON_USEDEP}]
+ dev-python/pbr[${PYTHON_USEDEP}]
+ dev-python/jinja[${PYTHON_USEDEP}]
+ dev-python/fixtures[${PYTHON_USEDEP}]
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/xattr[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ dev-python/pbr[${PYTHON_USEDEP}]
+ test? (
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/testrepository[${PYTHON_USEDEP}]
+ dev-python/testtools[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pip-api/Manifest b/dev-python/pip-api/Manifest
new file mode 100644
index 000000000000..a49cf928a69f
--- /dev/null
+++ b/dev-python/pip-api/Manifest
@@ -0,0 +1,2 @@
+DIST pip-api-0.0.26.tar.gz 110021 BLAKE2B c286f8daa2470785525466053f3c431e93e4c7ffee19cac29b26bc0feb8f65a21eb285650981b6a3f726be471f47c8649a24cace2080a2e7e0b122cd26103548 SHA512 5d3a1eb53af73633f72210dd5aa974c619b8c96f050d7c549582829330183aba558a4d96490e15db6feddd15e14e63d0dfae60b2bba63768f61476f6b61362ea
+DIST pip-api-0.0.29-1af2c0f4cc2aa3c50d906adc8da7a6ceb2ba5df7.tar.gz 118238 BLAKE2B d7f0a5cadaaf0a673a76dfd6448c36f86cd5fac9a4633d22361fe3d2b75d4a7841c0ea3fbf2e1b6dffd4d1f3760ce8cac875172312927d878b8df98a933f8b51 SHA512 466e2e9a74c3f7d196a505475500352646655a446e4c8412d9f4dffd3ff988c0f6944bd9d32ece065a0242da49e9f9dce52bc06a4fb0021403328706e6b80236
diff --git a/dev-python/pip-api/metadata.xml b/dev-python/pip-api/metadata.xml
new file mode 100644
index 000000000000..11b79e1483ef
--- /dev/null
+++ b/dev-python/pip-api/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>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.26.ebuild b/dev-python/pip-api/pip-api-0.0.26.ebuild
new file mode 100644
index 000000000000..bd89ded5499e
--- /dev/null
+++ b/dev-python/pip-api/pip-api-0.0.26.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_SETUPTOOLS="pyproject.toml"
+PYTHON_COMPAT=( python3_{7,8,9,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"
+
+RDEPEND="dev-python/pip[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ dev-python/pretend[${PYTHON_USEDEP}]
+ dev-python/toml[${PYTHON_USEDEP}]
+ >=dev-python/virtualenv-20[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ tests/test_installed_distributions.py::test_installed_distributions_legacy_version
+ tests/test_installed_distributions.py::test_installed_distributions_multiple_paths
+)
diff --git a/dev-python/pip-api/pip-api-0.0.29.ebuild b/dev-python/pip-api/pip-api-0.0.29.ebuild
new file mode 100644
index 000000000000..466326cf7454
--- /dev/null
+++ b/dev-python/pip-api/pip-api-0.0.29.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+COMMIT="1af2c0f4cc2aa3c50d906adc8da7a6ceb2ba5df7"
+EPYTEST_DESELECT=(
+ tests/test_installed_distributions.py::test_installed_distributions_legacy_version
+ tests/test_installed_distributions.py::test_installed_distributions_multiple_paths
+)
+DISTUTILS_SETUPTOOLS="pyproject.toml"
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="An unofficial, importable pip API"
+HOMEPAGE="https://github.com/di/pip-api"
+SRC_URI="https://github.com/di/pip-api/archive/${COMMIT}.tar.gz -> ${P}-${COMMIT}.tar.gz" # only for 0.0.29
+S="${WORKDIR}/${PN}-${COMMIT}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/pip[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ dev-python/pretend[${PYTHON_USEDEP}]
+ dev-python/toml[${PYTHON_USEDEP}]
+ >=dev-python/virtualenv-20[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/playsound/Manifest b/dev-python/playsound/Manifest
new file mode 100644
index 000000000000..198688b4c337
--- /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 000000000000..16bbda6d86e4
--- /dev/null
+++ b/dev-python/playsound/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>1over137@anche.no</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 000000000000..51f2d2afad2d
--- /dev/null
+++ b/dev-python/playsound/playsound-1.3.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+inherit distutils-r1
+
+DESCRIPTION="Single function module with no dependencies for playing sounds."
+HOMEPAGE="https://pypi.org/project/playsound/ https://github.com/TaylorSMarks/playsound"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND=""
+DEPEND="${RDEPEND}"
diff --git a/dev-python/portio/Manifest b/dev-python/portio/Manifest
new file mode 100644
index 000000000000..92971e787e82
--- /dev/null
+++ b/dev-python/portio/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..7347b6dffa13
--- /dev/null
+++ b/dev-python/portio/metadata.xml
@@ -0,0 +1,19 @@
+<?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
new file mode 100644
index 000000000000..78719ebd2aef
--- /dev/null
+++ b/dev-python/portio/portio-0.5.ebuild
@@ -0,0 +1,28 @@
+# 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,10} 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/pproxy/Manifest b/dev-python/pproxy/Manifest
new file mode 100644
index 000000000000..27ad4e761650
--- /dev/null
+++ b/dev-python/pproxy/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..7d31e7fbb1da
--- /dev/null
+++ b/dev-python/pproxy/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>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
new file mode 100644
index 000000000000..31906c5512e5
--- /dev/null
+++ b/dev-python/pproxy/pproxy-2.7.8.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+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 >=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 000000000000..e341506c63a4
--- /dev/null
+++ b/dev-python/praw/Manifest
@@ -0,0 +1 @@
+DIST praw-7.5.0.tar.gz 24818192 BLAKE2B f65c65ce03df146386537c3a0d1ae188f8627b71f51b5497544723495922a4db5c0f16f971e54158e3da8101fe56d6c3f599676002ae4248d6db1b7ba691a2a4 SHA512 df2da306819df8387c9ad018b0ea886390c065e4d0af1b1b22ae2bfed3d4f612ce2ac2a029c7cee92ea90ca30cc13c7a6640373fd621dc70dd2ac175bea1b4ee
diff --git a/dev-python/praw/metadata.xml b/dev-python/praw/metadata.xml
new file mode 100644
index 000000000000..392afac7a945
--- /dev/null
+++ b/dev-python/praw/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>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+ <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.5.0.ebuild b/dev-python/praw/praw-7.5.0.ebuild
new file mode 100644
index 000000000000..3db39de3e29e
--- /dev/null
+++ b/dev-python/praw/praw-7.5.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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}.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_sphinx docs dev-python/sphinx_rtd_theme
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # disable optional dependencies
+ sed "/update_checker/d" -i setup.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ # spams deprecation warnings
+ epytest -p no:asyncio
+}
diff --git a/dev-python/prawcore/Manifest b/dev-python/prawcore/Manifest
new file mode 100644
index 000000000000..a1c38e6ff2d3
--- /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 000000000000..56409f28b0fb
--- /dev/null
+++ b/dev-python/prawcore/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>
+ <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 000000000000..2f13ebbdef15
--- /dev/null
+++ b/dev-python/prawcore/prawcore-2.3.0.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_{7,8,9,10} )
+inherit distutils-r1
+
+DESCRIPTION="Low-level communication layer for PRAW"
+HOMEPAGE="https://pypi.org/project/prawcore/ https://github.com/praw-dev/prawcore"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/requests[${PYTHON_USEDEP}]"
+BDEPEND="test? (
+ <dev-python/betamax-0.9[${PYTHON_USEDEP}]
+ <dev-python/betamax-matchers-0.5[${PYTHON_USEDEP}]
+ <dev-python/betamax-serializers-0.3[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ <dev-python/testfixtures-7[${PYTHON_USEDEP}]
+)"
+
+DOCS=( {AUTHORS,CHANGES,README}.rst )
+
+distutils_enable_tests pytest
diff --git a/dev-python/preggy/Manifest b/dev-python/preggy/Manifest
new file mode 100644
index 000000000000..b11b7e1cf619
--- /dev/null
+++ b/dev-python/preggy/Manifest
@@ -0,0 +1 @@
+DIST preggy-1.4.4.tar.gz 23351 BLAKE2B ed656f848349c0cdb0f44151ded15db1b68b7358a4633417a6889b4be9397dc0de96dbd5f43bb26f748d9cd4f16532f1954f3978690afa9e792ce24fbe942b20 SHA512 6eb6073eb28ba8684f2795c1d9aa93c2a24e50063359a769f7f7d84da2928e25a0ca86d4ac268dce0c2462bbe1a73e76f496325b6175a1218025e15fb7ce4f4c
diff --git a/dev-python/preggy/metadata.xml b/dev-python/preggy/metadata.xml
new file mode 100644
index 000000000000..197e61eb39c2
--- /dev/null
+++ b/dev-python/preggy/metadata.xml
@@ -0,0 +1,12 @@
+<?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">heynemann/preggy</remote-id>
+ <remote-id type="pypi">preggy</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/preggy/preggy-1.4.4.ebuild b/dev-python/preggy/preggy-1.4.4.ebuild
new file mode 100644
index 000000000000..b0b3418138c9
--- /dev/null
+++ b/dev-python/preggy/preggy-1.4.4.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="preggy is an assertion library for Python. What were you expecting?"
+HOMEPAGE="
+ https://github.com/heynemann/preggy
+ https://pypi.org/project/preggy/
+"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/unidecode[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ dev-python/yanc[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests nose
diff --git a/dev-python/promise/Manifest b/dev-python/promise/Manifest
new file mode 100644
index 000000000000..e5feb8bad617
--- /dev/null
+++ b/dev-python/promise/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..c0fa917a056c
--- /dev/null
+++ b/dev-python/promise/metadata.xml
@@ -0,0 +1,14 @@
+<?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
new file mode 100644
index 000000000000..cc0cec9062a5
--- /dev/null
+++ b/dev-python/promise/promise-2.3.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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/protego/Manifest b/dev-python/protego/Manifest
new file mode 100644
index 000000000000..dedec3de702d
--- /dev/null
+++ b/dev-python/protego/Manifest
@@ -0,0 +1 @@
+DIST protego-0.1.16.tar.gz 3187814 BLAKE2B 91591f21ce813e127794678602df21a38b269de69504f8aba9720aedc705225036737f4c7ca5c61cebac91d93eaa1161ee322acd8ee0c67f2c23096a6b2529c9 SHA512 3f029f34c4da6dc612dcdd747f56d421dca60f163315e0f72497435dbd74da77a5a02ee35f15774aad431e2b6e69a582c038d435ba0c07a53b3f0c83cb1c958a
diff --git a/dev-python/protego/metadata.xml b/dev-python/protego/metadata.xml
new file mode 100644
index 000000000000..65ac1f20562d
--- /dev/null
+++ b/dev-python/protego/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/protego/protego-0.1.16.ebuild b/dev-python/protego/protego-0.1.16.ebuild
new file mode 100644
index 000000000000..bde4654347a5
--- /dev/null
+++ b/dev-python/protego/protego-0.1.16.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+inherit distutils-r1
+
+DESCRIPTION="robots.txt parser with support for modern conventions"
+HOMEPAGE="https://scrapy.org/"
+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 000000000000..c31ffd692ad2
--- /dev/null
+++ b/dev-python/proxy_tools/Manifest
@@ -0,0 +1 @@
+DIST proxy_tools-0.1.0.tar.gz 2978 BLAKE2B 98322f16dde8efa0fb014de2bcf9b5c8b4856fbb6cef15977e524742c20218db1288d7bdc0b21970dba2d42d5950bd242023fde76baaa09186793e6bf8eb2d3a SHA512 047d32e31f6dd78b7666e847108072f6942c8ba9f08f04d7c98ae13cc5b52e0028f724e738e6eef28ef12945bccab22214660e4606643dcd646dbc770a641882
diff --git a/dev-python/proxy_tools/metadata.xml b/dev-python/proxy_tools/metadata.xml
new file mode 100644
index 000000000000..3ecd510261f7
--- /dev/null
+++ b/dev-python/proxy_tools/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="person">
+ <email>gentoo@tastytea.de</email>
+ <name>Ronny (tastytea) Gutbrod</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jtushman/proxy_tools</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/proxy_tools/proxy_tools-0.1.0.ebuild b/dev-python/proxy_tools/proxy_tools-0.1.0.ebuild
new file mode 100644
index 000000000000..4b2f14dc6af3
--- /dev/null
+++ b/dev-python/proxy_tools/proxy_tools-0.1.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2020-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Simple proxy (as in the GoF design pattern)"
+HOMEPAGE="https://pypi.org/project/proxy_tools/"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
diff --git a/dev-python/psycopg2cffi/Manifest b/dev-python/psycopg2cffi/Manifest
new file mode 100644
index 000000000000..26be24ea9ba5
--- /dev/null
+++ b/dev-python/psycopg2cffi/Manifest
@@ -0,0 +1 @@
+DIST psycopg2cffi-2.9.0.tar.gz 65512 BLAKE2B 2e106eea22feb08aa7154dfc4959a9e68d946b34e872711f19856521dca050d0380498d3c20e762b31e7181ecfc5371a1b02c4bb711bccccfe56a4af9f497ffc SHA512 afd3ce9fa76dcd2df29b7aa8c5d31a33058023dc020ac829b95b8f7950fa17f2733f86a8c45f3d6eefeafae1c7f3997cbae820da98952d71336f7a1c72e84353
diff --git a/dev-python/psycopg2cffi/metadata.xml b/dev-python/psycopg2cffi/metadata.xml
new file mode 100644
index 000000000000..1bd6d369b1a5
--- /dev/null
+++ b/dev-python/psycopg2cffi/metadata.xml
@@ -0,0 +1,14 @@
+<?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/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.ebuild b/dev-python/psycopg2cffi/psycopg2cffi-2.9.0.ebuild
new file mode 100644
index 000000000000..9d2987d58f71
--- /dev/null
+++ b/dev-python/psycopg2cffi/psycopg2cffi-2.9.0.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2019-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Implementation of the psycopg2 module using cffi. Compatible with Psycopg 2.5."
+HOMEPAGE="
+ https://github.com/chtd/psycopg2cffi
+ https://pypi.org/project/psycopg2cffi/
+"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-db/postgresql:*
+ dev-python/six[${PYTHON_USEDEP}]
+ virtual/python-cffi[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pure-protobuf/Manifest b/dev-python/pure-protobuf/Manifest
new file mode 100644
index 000000000000..193cc9705d78
--- /dev/null
+++ b/dev-python/pure-protobuf/Manifest
@@ -0,0 +1 @@
+DIST pure-protobuf-2.1.0.tar.gz 15566 BLAKE2B 9e07c5dc70c928bfb20504c58f60cdea51dbc45a41134cf95056829b1aec3b5f1f4e684d101332c5764349fda863aa11301c6eab99eb4c34b74a43161640ba8b SHA512 7c76eaf866a7cdddc886a583883f4aec502c4edb1952902b8a6a259b10d0577adc94874e1e1dfc0378690791872248d878e0448925ab68468bd71a194dc100fc
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
new file mode 100644
index 000000000000..6da5a8db4194
--- /dev/null
+++ b/dev-python/pure-protobuf/files/pure-protobuf-do-not-install-tests.patch
@@ -0,0 +1,13 @@
+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
new file mode 100644
index 000000000000..ed5c07c33c1c
--- /dev/null
+++ b/dev-python/pure-protobuf/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">eigenein/protobuf</remote-id>
+ <remote-id type="pypi">pure-protobuf</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pure-protobuf/pure-protobuf-2.1.0.ebuild b/dev-python/pure-protobuf/pure-protobuf-2.1.0.ebuild
new file mode 100644
index 000000000000..3eec917387b1
--- /dev/null
+++ b/dev-python/pure-protobuf/pure-protobuf-2.1.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="Python implementation of Protocol Buffers data types with dataclasses support"
+HOMEPAGE="
+ https://github.com/eigenein/protobuf
+ https://pypi.org/project/pure-protobuf/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# ModuleNotFoundError
+RESTRICT="test"
+
+distutils_enable_tests pytest
diff --git a/dev-python/py3nvml/Manifest b/dev-python/py3nvml/Manifest
new file mode 100644
index 000000000000..a0da7741f6a7
--- /dev/null
+++ b/dev-python/py3nvml/Manifest
@@ -0,0 +1 @@
+DIST py3nvml-0.2.6.tar.gz 57550 BLAKE2B eac7bff77560fa97583e17a7988d87d373d6d1caa8a762565598d18685672723acb96e7e670183dc476c65784cf3c14d8829a5e90626f59de1b17728ee6e8a55 SHA512 c0fece187bc03a74da87d96a8157fc101ce4a0307049f5ce092555056286317d607158ce0eef492f94d024e55e29fa40bc8315b96417d17b8d1da56c5424dd57
diff --git a/dev-python/py3nvml/metadata.xml b/dev-python/py3nvml/metadata.xml
new file mode 100644
index 000000000000..8bd3f17846fb
--- /dev/null
+++ b/dev-python/py3nvml/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>myrvogna@electrosphe.re</email>
+ <name>Octiabrina Terrien-Puig</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">py3nvml</remote-id>
+ <remote-id type="github">fbcotter/py3nvml</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/py3nvml/py3nvml-0.2.6.ebuild b/dev-python/py3nvml/py3nvml-0.2.6.ebuild
new file mode 100644
index 000000000000..fb6f6019a024
--- /dev/null
+++ b/dev-python/py3nvml/py3nvml-0.2.6.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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/pyVows/Manifest b/dev-python/pyVows/Manifest
new file mode 100644
index 000000000000..360102189ad7
--- /dev/null
+++ b/dev-python/pyVows/Manifest
@@ -0,0 +1 @@
+DIST pyVows-3.0.0-5b0e2a202603c1fc00d1fa0c6134c92c15b7e2b7.tar.gz 41052 BLAKE2B 98a373d4a98cf5416d173fd9c1889a82480a476ad7ccce0895a9a626068f7a3831ce131433ab9f38726c41cd92cb47426bd8ef1d5a4fb9aab7efd9ee7c06face SHA512 bfef76cce283a77cfb1fd4f3e4d9e73da648390f42ce79524151be44693d9c13864aa75411394a2e294eea93820118f08a160a291146fab4f7d23ef5e14de071
diff --git a/dev-python/pyVows/metadata.xml b/dev-python/pyVows/metadata.xml
new file mode 100644
index 000000000000..c209f7467454
--- /dev/null
+++ b/dev-python/pyVows/metadata.xml
@@ -0,0 +1,12 @@
+<?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">heynemann/pyvows</remote-id>
+ <remote-id type="pypi">pyVows</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pyVows/pyVows-3.0.0.ebuild b/dev-python/pyVows/pyVows-3.0.0.ebuild
new file mode 100644
index 000000000000..6d4926e07f13
--- /dev/null
+++ b/dev-python/pyVows/pyVows-3.0.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+COMMIT="5b0e2a202603c1fc00d1fa0c6134c92c15b7e2b7"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Parallel running of tests, code coverage reports, test profiling, and more"
+HOMEPAGE="
+ https://github.com/heynemann/pyvows
+ https://pypi.org/project/pyVows/
+"
+SRC_URI="https://github.com/heynemann/${PN}/archive/${COMMIT}.tar.gz -> ${P}-${COMMIT}.tar.gz" # only for 3.0.0
+S="${WORKDIR}/${PN,,}-${COMMIT}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/gevent-1.2.2[${PYTHON_USEDEP}]
+ >=dev-python/preggy-1.3.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/colorama-0.3.7[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pyagentx/Manifest b/dev-python/pyagentx/Manifest
new file mode 100644
index 000000000000..0333352a6405
--- /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 000000000000..63ea7d1a6386
--- /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 000000000000..6c0b9c4abffe
--- /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 000000000000..30cc8f2364a6
--- /dev/null
+++ b/dev-python/pyagentx/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://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.ebuild b/dev-python/pyagentx/pyagentx-0.4.ebuild
new file mode 100644
index 000000000000..1f23ef0a4673
--- /dev/null
+++ b/dev-python/pyagentx/pyagentx-0.4.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python AgentX Implementation"
+HOMEPAGE="https://github.com/hosthvo/pyagentx"
+SRC_URI="https://github.com/hosthvo/pyagentx/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+PATCHES="${FILESDIR}/updater.patch
+ ${FILESDIR}/python3.patch"
+
+distutils_enable_tests setup.py
diff --git a/dev-python/pybeam/Manifest b/dev-python/pybeam/Manifest
new file mode 100644
index 000000000000..382848a9e35a
--- /dev/null
+++ b/dev-python/pybeam/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..e2b997549fb7
--- /dev/null
+++ b/dev-python/pybeam/metadata.xml
@@ -0,0 +1,12 @@
+<?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
new file mode 100644
index 000000000000..ee2a387af8eb
--- /dev/null
+++ b/dev-python/pybeam/pybeam-0.7.ebuild
@@ -0,0 +1,23 @@
+# 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,10} )
+
+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
new file mode 100644
index 000000000000..12ceaa983a58
--- /dev/null
+++ b/dev-python/pybrowserstack-screenshots/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..d4d8cdc77f11
--- /dev/null
+++ b/dev-python/pybrowserstack-screenshots/metadata.xml
@@ -0,0 +1,14 @@
+<?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-screenshots</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pybrowserstack-screenshots/pybrowserstack-screenshots-0.1-r1.ebuild b/dev-python/pybrowserstack-screenshots/pybrowserstack-screenshots-0.1-r1.ebuild
new file mode 100644
index 000000000000..101221429532
--- /dev/null
+++ b/dev-python/pybrowserstack-screenshots/pybrowserstack-screenshots-0.1-r1.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_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="A python api wrapper and client for Browserstack Screenshots API"
+SRC_URI="https://github.com/cmck/pybrowserstack-screenshots/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+HOMEPAGE="
+ https://github.com/cmck/pybrowserstack-screenshots
+ https://pypi.org/project/pybrowserstack-screenshots/
+"
+KEYWORDS="~amd64"
+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
new file mode 100644
index 000000000000..4ee0cb3e9fbe
--- /dev/null
+++ b/dev-python/pycadf/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..e53f0c3cb689
--- /dev/null
+++ b/dev-python/pycadf/metadata.xml
@@ -0,0 +1,9 @@
+<?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">pycadf</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pycadf/pycadf-3.1.1-r1.ebuild b/dev-python/pycadf/pycadf-3.1.1-r1.ebuild
new file mode 100644
index 000000000000..a006e500d980
--- /dev/null
+++ b/dev-python/pycadf/pycadf-3.1.1-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=bdepend
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="python implementation of DMTF Cloud Audit (CADF) data model"
+HOMEPAGE="
+ https://opendev.org/openstack/pycadf
+ https://pypi.org/project/pycadf/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+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/pytz-2013.6[${PYTHON_USEDEP}]
+ >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pydub/Manifest b/dev-python/pydub/Manifest
new file mode 100644
index 000000000000..debead7054a9
--- /dev/null
+++ b/dev-python/pydub/Manifest
@@ -0,0 +1 @@
+DIST pydub-0.25.1.tar.gz 27555582 BLAKE2B 5a7aa4af4f2bb75306c3eef7052e403a09f6dc638e2805f7dd9269cb12149fec3962ab9b84b6c6744de75c34bde0cbe6daab711a8df050eb9861c21e70e98ef6 SHA512 8c3fb3714c4b0aed37ba7ab6727776bf4cd7568c1f5060cf43c30ede8da2ce4b498fb83326daa19ef44635250d552295407289c3945681e028eedde1b2b418e0
diff --git a/dev-python/pydub/metadata.xml b/dev-python/pydub/metadata.xml
new file mode 100644
index 000000000000..cbe3c6a539f0
--- /dev/null
+++ b/dev-python/pydub/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>smaniotto.nicola@gmail.com</email>
+ <name>Nicola Smaniotto</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/pydub/pydub-0.25.1.ebuild b/dev-python/pydub/pydub-0.25.1.ebuild
new file mode 100644
index 000000000000..287be35c72fb
--- /dev/null
+++ b/dev-python/pydub/pydub-0.25.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Manipulate audio with an simple and easy high level interface"
+HOMEPAGE="http://pydub.com/"
+SRC_URI="https://github.com/jiaaro/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="
+ test? (
+ media-video/ffmpeg[mp3,vorbis]
+ )
+ "
+
+distutils_enable_tests unittest
+
+python_test() {
+ eunittest test/
+}
+
+pkg_postinst() {
+ optfeature "opening and saving non-wav files - like mp3" media-video/ffmpeg
+ #optfeature "playing audio" dev-python/simpleaudio # upstream suggests this, not available in gentoo or guru
+ optfeature "playing audio" dev-python/pyaudio
+}
diff --git a/dev-python/pyfiglet/Manifest b/dev-python/pyfiglet/Manifest
new file mode 100644
index 000000000000..f6bf80965cd0
--- /dev/null
+++ b/dev-python/pyfiglet/Manifest
@@ -0,0 +1 @@
+DIST pyfiglet-0.8_p1.tar.gz 634618 BLAKE2B 49268581974e72f28ddb11785a1629a4ac2696bcdd57710147cafdcf7709be8c67bdf03e5ccdb1655a9be6eb8a83baf4ca5ae0a6412e2318d0923376558b8d49 SHA512 3b8c7b4c9ae48466da3ccc6711aac9c35b08a373abbdda66c60a62f17ba6edd316b0d5e3085613f7c44fbaa2f02acc4a5b3830a31d22437d9261863878421400
diff --git a/dev-python/pyfiglet/metadata.xml b/dev-python/pyfiglet/metadata.xml
new file mode 100644
index 000000000000..741d206c26bd
--- /dev/null
+++ b/dev-python/pyfiglet/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>coppens.matthias.abc@gmail.com</email>
+ <name>Matthias Coppens</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">pwaller/pyfiglet</remote-id>
+ <remote-id type="pypi">pyfiglet</remote-id>
+ <bugs-to>https://github.com/pwaller/pyfiglet/issues</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pyfiglet/pyfiglet-0.8_p1.ebuild b/dev-python/pyfiglet/pyfiglet-0.8_p1.ebuild
new file mode 100644
index 000000000000..feed70670cc3
--- /dev/null
+++ b/dev-python/pyfiglet/pyfiglet-0.8_p1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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/pyfiglet/pyfiglet-9999.ebuild b/dev-python/pyfiglet/pyfiglet-9999.ebuild
new file mode 100644
index 000000000000..feed70670cc3
--- /dev/null
+++ b/dev-python/pyfiglet/pyfiglet-9999.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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/Manifest b/dev-python/pygaljs/Manifest
new file mode 100644
index 000000000000..ae21075e9d47
--- /dev/null
+++ b/dev-python/pygaljs/Manifest
@@ -0,0 +1 @@
+DIST pygaljs-1.0.2.tar.gz 89711 BLAKE2B 64287ac1238183e34b99275218f8598546b455f9de7df0f8285691e253a8421d1287eb9c499910eed47d2e971d4f709d0341a7e56129cbcca70c938105e1d5ad SHA512 d7e0000e8cc55cde9ca455c4761c83202a95aadb2431086cb5ee21b44307f35ccc8431a50b43699814d0cdec0d8f4c14df68ec19c0ad0ac27f2c7eec85799a82
diff --git a/dev-python/pygaljs/metadata.xml b/dev-python/pygaljs/metadata.xml
new file mode 100644
index 000000000000..112a28df0fec
--- /dev/null
+++ b/dev-python/pygaljs/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">ionelmc/python-pygaljs</remote-id>
+ <remote-id type="pypi">pygaljs</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pygaljs/pygaljs-1.0.2-r1.ebuild b/dev-python/pygaljs/pygaljs-1.0.2-r1.ebuild
new file mode 100644
index 000000000000..2fb52408b362
--- /dev/null
+++ b/dev-python/pygaljs/pygaljs-1.0.2-r1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+inherit distutils-r1
+
+DESCRIPTION="Python package providing assets from https://github.com/Kozea/pygal.js"
+HOMEPAGE="
+ https://github.com/ionelmc/python-pygaljs
+ https://pypi.org/project/pygaljs/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pygments-promql/Manifest b/dev-python/pygments-promql/Manifest
new file mode 100644
index 000000000000..cbc80cd32df4
--- /dev/null
+++ b/dev-python/pygments-promql/Manifest
@@ -0,0 +1 @@
+DIST pygments-promql-0.0.9.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 000000000000..865c647d4aa0
--- /dev/null
+++ b/dev-python/pygments-promql/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>mathieu.tortuyaux@gmail.com</email>
+ <name>Mathieu Tortuyaux</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pygments-promql</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pygments-promql/pygments-promql-0.0.9.ebuild b/dev-python/pygments-promql/pygments-promql-0.0.9.ebuild
new file mode 100644
index 000000000000..1c1b45de340f
--- /dev/null
+++ b/dev-python/pygments-promql/pygments-promql-0.0.9.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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}.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
new file mode 100644
index 000000000000..e479405dd447
--- /dev/null
+++ b/dev-python/pygsl/Manifest
@@ -0,0 +1 @@
+DIST pygsl-2.3.0.tar.gz 1096186 BLAKE2B 9058d7f674ce8d8071e51c80ae7ff2a32909cb495df7f78223f9d98f2a2b6afb32e180ce13a1b413924c7c1a8a1c840d2c1122edbe00a80cb66e27dc752ffaed SHA512 66e466c37d402605e05f0b5b2d7c52c406593d31c2a886934419b45e0b4390259c57e70bce32a46146b7f2ad0b28266f517cdb10fddd73dec7975103bb445d08
diff --git a/dev-python/pygsl/metadata.xml b/dev-python/pygsl/metadata.xml
new file mode 100644
index 000000000000..dd07b6e902b6
--- /dev/null
+++ b/dev-python/pygsl/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="pypi">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
new file mode 100644
index 000000000000..7a294ec7b1d4
--- /dev/null
+++ b/dev-python/pygsl/pygsl-2.3.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/pyinquirer/Manifest b/dev-python/pyinquirer/Manifest
new file mode 100644
index 000000000000..2792ab6ebab0
--- /dev/null
+++ b/dev-python/pyinquirer/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..3812b4e16d1c
--- /dev/null
+++ b/dev-python/pyinquirer/metadata.xml
@@ -0,0 +1,22 @@
+<?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
new file mode 100644
index 000000000000..72d298046877
--- /dev/null
+++ b/dev-python/pyinquirer/pyinquirer-1.0.3_p20200708.ebuild
@@ -0,0 +1,53 @@
+# 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,9,10} )
+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
new file mode 100644
index 000000000000..4fb61d083d95
--- /dev/null
+++ b/dev-python/pyinquirer/pyinquirer-9999.ebuild
@@ -0,0 +1,51 @@
+# 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,9,10} )
+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
new file mode 100644
index 000000000000..c31d065ba4fe
--- /dev/null
+++ b/dev-python/pyinstaller/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..ad8cead24f43
--- /dev/null
+++ b/dev-python/pyinstaller/metadata.xml
@@ -0,0 +1,8 @@
+<?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
new file mode 100644
index 000000000000..15656079ba54
--- /dev/null
+++ b/dev-python/pyinstaller/pyinstaller-4.2.ebuild
@@ -0,0 +1,19 @@
+# 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,10} )
+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
new file mode 100644
index 000000000000..0192005ee72a
--- /dev/null
+++ b/dev-python/pykeepass/Manifest
@@ -0,0 +1,2 @@
+DIST pykeepass-4.0.0.tar.gz 88720 BLAKE2B 7dcce1ded4527f32e0a602d9a7b742fabd32ee6c5e6836f0d4d217c3117177f258e974275670c9cea408e05335004996bea6a68ba12fe02ac30b0276ac7cfb54 SHA512 03483c9dc78774b2c5d4088f9995db9a9142bc69a8d4bc1824f4868175d3556434cb155c1f35a3fa0c04fca72f571af518166f59bcbe21431b7fe34a20b57cb2
+DIST pykeepass-4.0.1.tar.gz 99343 BLAKE2B ed3ea6575041ef73adc769365078818af9080851bba8b31ee24ef283480633305147307c4ea7217fba96ca18cd90bcf33b0d66b0a9148121165f67937d8677b0 SHA512 512f25029fcaa7a84459767cd9101d113623722c2aaf466fd3e77cf0043c37d344ccd2c0226fcbc3b3c22e39f8060c172ab1e1c72993c469a4499b21c47f6134
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
new file mode 100644
index 000000000000..2b25721653e7
--- /dev/null
+++ b/dev-python/pykeepass/files/pykeepass-4.0.0-fix-tests-install.patch
@@ -0,0 +1,33 @@
+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
new file mode 100644
index 000000000000..cd174bd3efed
--- /dev/null
+++ b/dev-python/pykeepass/metadata.xml
@@ -0,0 +1,8 @@
+<?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/pykeepass/pykeepass-4.0.0.ebuild b/dev-python/pykeepass/pykeepass-4.0.0.ebuild
new file mode 100644
index 000000000000..003866a7a3f8
--- /dev/null
+++ b/dev-python/pykeepass/pykeepass-4.0.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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"
+
+LICENSE="GPL-3"
+SLOT="0"
+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}]
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}"/pykeepass-4.0.0-fix-tests-install.patch )
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+ # pycryptodomex to pycryptodome conversion
+ sed -i 's/Cryptodome/Crypto/g' pykeepass/kdbx_parsing/{common,twofish}.py || die
+}
+
+python_test() {
+ "${EPYTHON}" tests/tests.py -v || die
+}
diff --git a/dev-python/pykeepass/pykeepass-4.0.1.ebuild b/dev-python/pykeepass/pykeepass-4.0.1.ebuild
new file mode 100644
index 000000000000..3a08cb64d1a0
--- /dev/null
+++ b/dev-python/pykeepass/pykeepass-4.0.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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"
+
+LICENSE="GPL-3"
+SLOT="0"
+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}]
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}"/pykeepass-4.0.0-fix-tests-install.patch )
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+ # pycryptodomex to pycryptodome conversion
+ sed -i 's/Cryptodome/Crypto/g' pykeepass/kdbx_parsing/{common,twofish}.py || die
+}
+
+python_test() {
+ "${EPYTHON}" tests/tests.py -v || die
+}
diff --git a/dev-python/pylatexenc/Manifest b/dev-python/pylatexenc/Manifest
new file mode 100644
index 000000000000..a340c67f9e0e
--- /dev/null
+++ b/dev-python/pylatexenc/Manifest
@@ -0,0 +1 @@
+DIST pylatexenc-2.10.tar.gz 721836 BLAKE2B 8512e052271c127809105280360706217f5134b2349d4b21dcec720addb4cff4157173f8350115de4142aea491da2efb1a2854b4310c48ec98061470be21654e SHA512 9728731e0c84324685b77ce17fae0bea445815e2c54394d2722c4412bbd914da49280ef36b5f3a0a0346e5d2129ca2d8d3b3b92356de3c6af9eed4247cf8bd43
diff --git a/dev-python/pylatexenc/metadata.xml b/dev-python/pylatexenc/metadata.xml
new file mode 100644
index 000000000000..4bb5426aee45
--- /dev/null
+++ b/dev-python/pylatexenc/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- comaintainers-welcomed -->
+ <maintainer type="person">
+ <email>gaboroszkar@protonmail.com</email>
+ <name>Gábor Oszkár Dénes</name>
+ </maintainer>
+ <longdescription>
+ Simple LaTeX parser providing latex-to-unicode and unicode-to-latex conversion.
+ The pylatexenc.latexencode module provides a function unicode_to_latex() which converts a unicode string into LaTeX text and escape sequences. It should recognize accented characters and most math symbols. A couple of switches allow you to alter how this function behaves.
+ You can also run latexencode in command-line to convert plain unicode text (from the standard input or from files given on the command line) into LaTeX code, written on to the standard output.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-python/pylatexenc/pylatexenc-2.10.ebuild b/dev-python/pylatexenc/pylatexenc-2.10.ebuild
new file mode 100644
index 000000000000..4dc4a74100f7
--- /dev/null
+++ b/dev-python/pylatexenc/pylatexenc-2.10.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Simple LaTeX parser providing latex-to-unicode and unicode-to-latex conversion"
+HOMEPAGE="https://github.com/phfaist/pylatexenc"
+SRC_URI="https://github.com/phfaist/pylatexenc/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pymeeus/Manifest b/dev-python/pymeeus/Manifest
new file mode 100644
index 000000000000..254a51b4ee8d
--- /dev/null
+++ b/dev-python/pymeeus/Manifest
@@ -0,0 +1,2 @@
+DIST PyMeeus-0.4.2.tar.gz 5299266 BLAKE2B ff2361762f7e1c8eeb81f521dce75acbda90228133e3fc0c9aea494ff2f9b2a5b5f70c7f58e6c864f2fae025fb7dda3ce390642362fefb4d8a6ac23dc3986324 SHA512 d3f3341b1546d6a632d18916f8aefec7e4cb437693d8373a09a87d3a28525436acd7b8b6ada57d127e1449a493e5d676af985e874cb330b53f80e0bcbc91dffc
+DIST PyMeeus-0.5.11.tar.gz 5368346 BLAKE2B d1bde9d62bd3349533b086ecbf5f6c455caf333cbdb0f32d11cac450db07708e442bc44cb085ec5140231158b95068e688e9c8abfcc62ba0e52e1cdd2de294b8 SHA512 9c109a7ed0ff3635e8b1eb4ee444bc5086528169fc942719385b02c5d5eca1f1ec3d3988bb06140e94f3d4ab741473880d8a36e187c468b9b91a3254575b92e6
diff --git a/dev-python/pymeeus/metadata.xml b/dev-python/pymeeus/metadata.xml
new file mode 100644
index 000000000000..7238cd2b0f41
--- /dev/null
+++ b/dev-python/pymeeus/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+ <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.4.2.ebuild b/dev-python/pymeeus/pymeeus-0.4.2.ebuild
new file mode 100644
index 000000000000..08cae4871da7
--- /dev/null
+++ b/dev-python/pymeeus/pymeeus-0.4.2.ebuild
@@ -0,0 +1,24 @@
+# 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,8,9,10} )
+
+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.11.ebuild b/dev-python/pymeeus/pymeeus-0.5.11.ebuild
new file mode 100644
index 000000000000..6fdd6b9eb5bc
--- /dev/null
+++ b/dev-python/pymeeus/pymeeus-0.5.11.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+inherit distutils-r1
+
+MY_PN="PyMeeus"
+MY_P="${MY_PN}-${PV}"
+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"
+S="${WORKDIR}/${MY_P}"
+
+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 000000000000..9f1071a6350a
--- /dev/null
+++ b/dev-python/pymemcache/Manifest
@@ -0,0 +1,2 @@
+DIST pymemcache-3.5.1.tar.gz 65073 BLAKE2B cc3e5c6db665716c9f2eb6d99a53108484827fe38b51bdfff7799354a08b212064c71801d50683ea45c0a753ee787a634ef98adb69795e7245c5596a7716a162 SHA512 da69189e7fadc8417395075d033ed3cb72a485d4f2c4ec4deb5e2ec3cb43a34ee5558111903399f27b70f618be771f8c686513c7334d2ef507a0db959c4aa27b
+DIST pymemcache-3.5.2.tar.gz 65351 BLAKE2B e515629ffb483ece7b59c43b1cb3bd41ee70a8c1cbbc3b0cde5d41d7a5aa2f74f04a0f1d7eb4c82d77384cc32d3e8199cc78408b29ba689b19f5cd040e97c2f6 SHA512 7089b3fdf424735a1922685022a30f7984686f13401a13101e4745ea1c38a3888b1c380f859653da85889e95829f3b7c6226c3c55f838baf783465321433fda5
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 000000000000..a66193c2e126
--- /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 000000000000..164e1731ad81
--- /dev/null
+++ b/dev-python/pymemcache/metadata.xml
@@ -0,0 +1,24 @@
+<?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 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-3.5.1.ebuild b/dev-python/pymemcache/pymemcache-3.5.1.ebuild
new file mode 100644
index 000000000000..90c7e4df962d
--- /dev/null
+++ b/dev-python/pymemcache/pymemcache-3.5.1.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A comprehensive, fast, pure-Python memcached client"
+HOMEPAGE="
+ https://github.com/pinterest/pymemcache
+ https://pypi.org/project/pymemcache/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=""
+DEPEND="
+ ${RDEPEND}
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/future[${PYTHON_USEDEP}]
+ >=dev-python/gevent-21.12.0[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ >=dev-python/pylibmc-1.6.1[${PYTHON_USEDEP}]
+ >=dev-python/python-memcached-1.59[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=( "${FILESDIR}/${P}-no-coverage.patch" )
+
+distutils_enable_tests pytest
diff --git a/dev-python/pymemcache/pymemcache-3.5.2.ebuild b/dev-python/pymemcache/pymemcache-3.5.2.ebuild
new file mode 100644
index 000000000000..03267f00cee0
--- /dev/null
+++ b/dev-python/pymemcache/pymemcache-3.5.2.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A comprehensive, fast, pure-Python memcached client"
+HOMEPAGE="
+ https://github.com/pinterest/pymemcache
+ https://pypi.org/project/pymemcache/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=""
+DEPEND="
+ ${RDEPEND}
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/future[${PYTHON_USEDEP}]
+ >=dev-python/gevent-21.12.0[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ >=dev-python/pylibmc-1.6.1[${PYTHON_USEDEP}]
+ >=dev-python/python-memcached-1.59[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=( "${FILESDIR}/${PN}-3.5.1-no-coverage.patch" )
+
+distutils_enable_tests pytest
diff --git a/dev-python/pymorphy2-dicts-ru/Manifest b/dev-python/pymorphy2-dicts-ru/Manifest
new file mode 100644
index 000000000000..478485ab047f
--- /dev/null
+++ b/dev-python/pymorphy2-dicts-ru/Manifest
@@ -0,0 +1 @@
+DIST pymorphy2-dicts-ru-2.4.417127.4579844.tar.gz 8180941 BLAKE2B acdd6aaafd7fcd8ba8e8720db81133f9f1148507a7018e370dae288753c15b2abc5c314a987ab8e6fb9239a3fca372acee00b5cf3116e80f9ff7e92b039d9f91 SHA512 1ed5a8e8fddec8ef3d890d1a1e921ffc3bafcf057853e6e09a6854d3d100aca9972b845bdc379057756d30a9a08d917eb439ee42920ddb80059df5bf2b357c3f
diff --git a/dev-python/pymorphy2-dicts-ru/metadata.xml b/dev-python/pymorphy2-dicts-ru/metadata.xml
new file mode 100644
index 000000000000..44eef712ecd4
--- /dev/null
+++ b/dev-python/pymorphy2-dicts-ru/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="person">
+ <email>1over137@anche.no</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pymorphy2-dicts-ru</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.ebuild
new file mode 100644
index 000000000000..42f48206a822
--- /dev/null
+++ b/dev-python/pymorphy2-dicts-ru/pymorphy2-dicts-ru-2.4.417127.4579844.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_{7,8,9,10} pypy3 )
+DISTUTILS_USE_SETUPTOOLS=bdepend
+inherit distutils-r1
+
+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"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/pymorphy2-dicts/Manifest b/dev-python/pymorphy2-dicts/Manifest
new file mode 100644
index 000000000000..e9bde36d4983
--- /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 000000000000..3f8f4e4d5e4a
--- /dev/null
+++ b/dev-python/pymorphy2-dicts/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="person">
+ <email>1over137@anche.no</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pymorphy2-dicts</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pymorphy2-dicts/pymorphy2-dicts-2.4.393442.3710985.ebuild b/dev-python/pymorphy2-dicts/pymorphy2-dicts-2.4.393442.3710985.ebuild
new file mode 100644
index 000000000000..808c1e4f91d0
--- /dev/null
+++ b/dev-python/pymorphy2-dicts/pymorphy2-dicts-2.4.393442.3710985.ebuild
@@ -0,0 +1,16 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+DISTUTILS_USE_SETUPTOOLS=bdepend
+inherit distutils-r1
+
+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"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/pymorphy2/Manifest b/dev-python/pymorphy2/Manifest
new file mode 100644
index 000000000000..515196a0d475
--- /dev/null
+++ b/dev-python/pymorphy2/Manifest
@@ -0,0 +1 @@
+DIST pymorphy2-0.9.1.tar.gz 84929 BLAKE2B 42609efe8bd618e223940b8334738ebc9ffb8017f154885300a84e76c64d54b95d620e3035397a5634155b2e47cc5b3676d7f2c0976dfa36645406b4a7e986b1 SHA512 923108f866fb0022d831efb48b9836cda5aa56df4da55798255122544e8a28c087e2561189959ce6be8d6319a3ed791df50eda36258e8730748df5bf9468a593
diff --git a/dev-python/pymorphy2/metadata.xml b/dev-python/pymorphy2/metadata.xml
new file mode 100644
index 000000000000..76c6bd4a2ac8
--- /dev/null
+++ b/dev-python/pymorphy2/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>1over137@anche.no</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">pymorphy2</remote-id>
+ <remote-id type="github">kmike/pymorphy2</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pymorphy2/pymorphy2-0.9.1.ebuild b/dev-python/pymorphy2/pymorphy2-0.9.1.ebuild
new file mode 100644
index 000000000000..4c7e6a27596d
--- /dev/null
+++ b/dev-python/pymorphy2/pymorphy2-0.9.1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+DISTUTILS_USE_SETUPTOOLS=bdepend
+inherit distutils-r1
+
+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}]
+ dev-python/DAWG-Python[${PYTHON_USEDEP}]
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
diff --git a/dev-python/pymp4/Manifest b/dev-python/pymp4/Manifest
new file mode 100644
index 000000000000..883fdc25e9f1
--- /dev/null
+++ b/dev-python/pymp4/Manifest
@@ -0,0 +1 @@
+DIST pymp4-1.2.0.tar.gz 13969 BLAKE2B ccbf3664a410162662117307add90bc7c8ab060e633c8acf0cf96607d0ad193618af28eba48a467f380af1e39a4ce3596f0da2a341c94e764c8ef9582dd47cb6 SHA512 307b0d454f56eb185abea1213640e888880c505388e3869cc92be462b2d37dd9244e4b23984c535f84791ed067873e1454e7d89b8109763d44b6d3188658aff4
diff --git a/dev-python/pymp4/metadata.xml b/dev-python/pymp4/metadata.xml
new file mode 100644
index 000000000000..590cf7c7127d
--- /dev/null
+++ b/dev-python/pymp4/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/beardypig/pymp4/issues</bugs-to>
+ <remote-id type="github">beardypig/pymp4</remote-id>
+ <remote-id type="pypi">pymp4</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pymp4/pymp4-1.2.0.ebuild b/dev-python/pymp4/pymp4-1.2.0.ebuild
new file mode 100644
index 000000000000..5cbb35cdf41d
--- /dev/null
+++ b/dev-python/pymp4/pymp4-1.2.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A Python MP4 Parser and toolkit"
+HOMEPAGE="
+ https://github.com/beardypig/pymp4
+ https://pypi.org/project/pymp4/
+"
+SRC_URI="https://github.com/beardypig/pymp4/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+RDEPEND="dev-python/construct[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pyngus/Manifest b/dev-python/pyngus/Manifest
new file mode 100644
index 000000000000..140852e03473
--- /dev/null
+++ b/dev-python/pyngus/Manifest
@@ -0,0 +1 @@
+DIST pyngus-2.3.1.tar.gz 34368 BLAKE2B ee1aa0110e8f331c97eaeaa11929e2fe645bb4df03111df6f2a67a246668b24b3f1f9fef78012f039282c60733af167da3bc748a1b128597bc83a75e7c17f445 SHA512 0e5ae71288b1e4ef2a630218322aa23fd537dcb068689f235b019e48ef94522639408be4d1dbd2e53c347ae1427024b8936a58fe005c1ea600bde82facb4c1dc
diff --git a/dev-python/pyngus/metadata.xml b/dev-python/pyngus/metadata.xml
new file mode 100644
index 000000000000..2214f403332d
--- /dev/null
+++ b/dev-python/pyngus/metadata.xml
@@ -0,0 +1,12 @@
+<?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">kgiusti/pyngus</remote-id>
+ <remote-id type="pypi">pyngus</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pyngus/pyngus-2.3.1.ebuild b/dev-python/pyngus/pyngus-2.3.1.ebuild
new file mode 100644
index 000000000000..88b37f45705f
--- /dev/null
+++ b/dev-python/pyngus/pyngus-2.3.1.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="A connection oriented messaging framework using QPID Proton"
+HOMEPAGE="
+ https://github.com/kgiusti/pyngus
+ https://pypi.org/project/pyngus/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+#IDK how to run tests
diff --git a/dev-python/pynmea2/Manifest b/dev-python/pynmea2/Manifest
new file mode 100644
index 000000000000..7a252503dc93
--- /dev/null
+++ b/dev-python/pynmea2/Manifest
@@ -0,0 +1 @@
+DIST pynmea2-1.18.0.tar.gz 80453 BLAKE2B c7d37ec858c85ea964b0a9bb3c8a8811fae80dcca1db9c3abf9241381cfa950133d900bd038c0928405d67452a700bbe5eee45866328541e7c7e47c3c1b63676 SHA512 e3e12fc04ba8d53a3f3aea2361e7e1cf9ac9f09a4d595f7010ed9175430f4bd3e19727af53ea051407caf112175f36dfd3240dd0fdc7ebcafef1122c57e3bf1f
diff --git a/dev-python/pynmea2/metadata.xml b/dev-python/pynmea2/metadata.xml
new file mode 100644
index 000000000000..a0411d1cabad
--- /dev/null
+++ b/dev-python/pynmea2/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/Knio/pynmea2/issues</bugs-to>
+ <remote-id type="github">Knio/pynmea2</remote-id>
+ <remote-id type="pypi">pynmea2</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pynmea2/pynmea2-1.18.0.ebuild b/dev-python/pynmea2/pynmea2-1.18.0.ebuild
new file mode 100644
index 000000000000..e849ec2e15fe
--- /dev/null
+++ b/dev-python/pynmea2/pynmea2-1.18.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Python library for the NMEA 0183 protcol"
+HOMEPAGE="
+ https://github.com/Knio/pynmea2
+ https://pypi.org/project/pynmea2/
+"
+SRC_URI="https://github.com/Knio/pynmea2/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64"
+LICENSE="MIT"
+SLOT="0"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pyodbc/Manifest b/dev-python/pyodbc/Manifest
new file mode 100644
index 000000000000..261ffcc6bd8a
--- /dev/null
+++ b/dev-python/pyodbc/Manifest
@@ -0,0 +1 @@
+DIST pyodbc-4.0.32.tar.gz 280035 BLAKE2B f8c3479dc3eb78502d9a1621475603db0c53d69a65b09437180bf7eab14a919507413bd1b6bd56c00a1ba45cb6f1a6a86bd1e8b0bfcbdaad4a56a042d3937fda SHA512 a282f9b83e6cbf874db8135f1088dea86544dda49a16e86f988302f1675ff16d33473fbef092c6c0acdae7de1df6c4528cb1ea5ce3db0e6df49a7c457fcb34f8
diff --git a/dev-python/pyodbc/metadata.xml b/dev-python/pyodbc/metadata.xml
new file mode 100644
index 000000000000..3b8646a513c9
--- /dev/null
+++ b/dev-python/pyodbc/metadata.xml
@@ -0,0 +1,14 @@
+<?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/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-4.0.32.ebuild b/dev-python/pyodbc/pyodbc-4.0.32.ebuild
new file mode 100644
index 000000000000..b3dc10f99f8d
--- /dev/null
+++ b/dev-python/pyodbc/pyodbc-4.0.32.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_{7,8,9,10} ) # pypy3 https://github.com/mkleehammer/pyodbc/issues/915
+
+inherit distutils-r1
+
+DESCRIPTION="Python ODBC library"
+HOMEPAGE="
+ https://github.com/mkleehammer/pyodbc
+ https://pypi.org/project/pyodbc/
+"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="mssql"
+
+RDEPEND="
+ >=dev-db/unixODBC-2.3.0
+ mssql? ( >=dev-db/freetds-0.64[odbc] )
+"
+DEPEND="${RDEPEND}"
+
+RESTRICT="test" # need running databases
diff --git a/dev-python/pypandoc/Manifest b/dev-python/pypandoc/Manifest
new file mode 100644
index 000000000000..59a93f827f55
--- /dev/null
+++ b/dev-python/pypandoc/Manifest
@@ -0,0 +1,2 @@
+DIST pypandoc-1.7.4.tar.gz 30526 BLAKE2B 44ea2083e014874e4fc5ce9ce8d2dcff64319e7d0d77baffc61fa0d0c2a7fd209642f706eaf4ad258b65a4f0ad8851a9ea02d38d0db4e71c136b972a5934cb79 SHA512 01a7165974ca844b55c387e8ed9b5278c43b5879ca6ea51e0aafab9f035667d37fc06a52a5c0820e18b321ddd5185e53a49561c84e157cb0ead76c7f84d0bcc1
+DIST pypandoc-1.7.5.tar.gz 23186705 BLAKE2B 2718e2c4485a10e2a1f78e59b893b8041fcbfd6fd3393c8fcf429625fb0fbe0a0f83229323579e58fb40b6fb85fe018ecc7b597de7774e20e2736f301761fc9f SHA512 bbd5e96a98b1030aa7dfbeaea12dc5c053e9b3182c0feca6d6cec6eba9c148662a628cbe12b1ddf8a4f2891df98fe8f60fc1bde0d5d2f60664dd3e412974655f
diff --git a/dev-python/pypandoc/files/pypandoc-1.7.4-dont-install-examples.patch b/dev-python/pypandoc/files/pypandoc-1.7.4-dont-install-examples.patch
new file mode 100644
index 000000000000..2e84756c8f7f
--- /dev/null
+++ b/dev-python/pypandoc/files/pypandoc-1.7.4-dont-install-examples.patch
@@ -0,0 +1,23 @@
+From 44fa67fc92993301ec3e446d342a74c49d58334c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Anna=20=E2=80=9CCyberTailor=E2=80=9D?= <cyber@sysrq.in>
+Date: Fri, 18 Mar 2022 08:41:08 +0500
+Subject: [PATCH] Don't install examples
+
+See Gentoo Bugzilla: https://bugs.gentoo.org/835475
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -32,14 +32,6 @@ packages = [
+ { include = "pypandoc" },
+ ]
+
+-include = [
+-"examples/*",
+-"LICENSE",
+-"README.md",
+-"tests.py",
+-"filter_test.md",
+-]
+-
+ [tool.poetry.dependencies]
+ python = "^2.7 || ^3.6"
+
diff --git a/dev-python/pypandoc/metadata.xml b/dev-python/pypandoc/metadata.xml
new file mode 100644
index 000000000000..dd7560284a8f
--- /dev/null
+++ b/dev-python/pypandoc/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">
+ <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>
+</pkgmetadata>
diff --git a/dev-python/pypandoc/pypandoc-1.7.4.ebuild b/dev-python/pypandoc/pypandoc-1.7.4.ebuild
new file mode 100644
index 000000000000..a5876484e549
--- /dev/null
+++ b/dev-python/pypandoc/pypandoc-1.7.4.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{7,8,9,10} 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}]
+"
+
+PATCHES=( "${FILESDIR}/${P}-dont-install-examples.patch" )
+PROPERTIES="test_network"
+RESTRICT="test"
+
+python_test() {
+ "${EPYTHON}" tests.py || die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/pypandoc/pypandoc-1.7.5.ebuild b/dev-python/pypandoc/pypandoc-1.7.5.ebuild
new file mode 100644
index 000000000000..2ee3a4bb8f13
--- /dev/null
+++ b/dev-python/pypandoc/pypandoc-1.7.5.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{7,8,9,10} 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}]
+"
+
+PATCHES=( "${FILESDIR}/${PN}-1.7.4-dont-install-examples.patch" )
+PROPERTIES="test_network"
+RESTRICT="test"
+
+python_test() {
+ "${EPYTHON}" tests.py || die "Tests fail with ${EPYTHON}"
+}
diff --git a/dev-python/pypowervm/Manifest b/dev-python/pypowervm/Manifest
new file mode 100644
index 000000000000..5342887c87ec
--- /dev/null
+++ b/dev-python/pypowervm/Manifest
@@ -0,0 +1 @@
+DIST pypowervm-1.1.27.tar.gz 905402 BLAKE2B db4edb5a5344e1c4f4907437bda40b0075cfadc78e15111e0109c34bd4eeb0e98963f315060dc133282e46a518d0a2d94e4fd85c70fed3e9b7d9d65233abfe38 SHA512 8397ae8418965ee296939adfd6e23c2144fdd69deab5990da0fecd8ed5bd9c31d7e4c08d7fbe5d434056158c9db46b4cfa53b2fc0ef2efe56a5ead08c0a8c187
diff --git a/dev-python/pypowervm/metadata.xml b/dev-python/pypowervm/metadata.xml
new file mode 100644
index 000000000000..aa6b184c13a2
--- /dev/null
+++ b/dev-python/pypowervm/metadata.xml
@@ -0,0 +1,14 @@
+<?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.27.ebuild b/dev-python/pypowervm/pypowervm-1.1.27.ebuild
new file mode 100644
index 000000000000..634377ba3397
--- /dev/null
+++ b/dev-python/pypowervm/pypowervm-1.1.27.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python binding for the PowerVM REST API"
+HOMEPAGE="
+ https://github.com/powervm/pypowervm
+ https://pypi.org/project/pypowervm/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+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.12.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-2019.3[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.10.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.14.0[${PYTHON_USEDEP}]
+ >=dev-python/taskflow-3.8.0[${PYTHON_USEDEP}]
+ dev-python/Babel[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/subunit-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/mock-2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pysaml2/Manifest b/dev-python/pysaml2/Manifest
new file mode 100644
index 000000000000..e97e39f1c33f
--- /dev/null
+++ b/dev-python/pysaml2/Manifest
@@ -0,0 +1 @@
+DIST pysaml2-7.1.2.tar.gz 6017150 BLAKE2B e14bff119e5f6e477244820887ed76531acad5d7207cfc6ca398eaeaa0f5649e168bd6322d50e29560e8ad78e8da66d47b9d293ffcedee4358e288640931df96 SHA512 cf13ef0f74785bac357b2871f1ab521e60720cb236881fbc6c93d0eaca5323d198952392fa8a13850060a54757b1ff06a959e723bc7aeb5db9c8b2522b3c859b
diff --git a/dev-python/pysaml2/metadata.xml b/dev-python/pysaml2/metadata.xml
new file mode 100644
index 000000000000..7817113c0618
--- /dev/null
+++ b/dev-python/pysaml2/metadata.xml
@@ -0,0 +1,17 @@
+<?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-7.1.2.ebuild b/dev-python/pysaml2/pysaml2-7.1.2.ebuild
new file mode 100644
index 000000000000..e26a0102ce0c
--- /dev/null
+++ b/dev-python/pysaml2/pysaml2-7.1.2.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_{7,8,9,10} )
+
+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="https://github.com/IdentityPython/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+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/python-xmlsec[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ >=dev-python/requests-1.0.0[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/xmlschema[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep 'dev-python/importlib_resources[${PYTHON_USEDEP}]' python3.8)
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pyasn1[${PYTHON_USEDEP}]
+ >=dev-python/pymongo-3[${PYTHON_USEDEP}]
+ dev-python/responses[${PYTHON_USEDEP}]
+ dev-python/toml[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests --install pytest
+
+python_prepare_all() {
+ # No module named 'pymongo.mongo_replica_set_client' because pymongo should be <4 but we only have >=4
+ rm tests/test_{75_mongodb,76_metadata_in_mdb}.py || die
+ distutils-r1_python_prepare_all
+}
diff --git a/dev-python/pysftp/Manifest b/dev-python/pysftp/Manifest
new file mode 100644
index 000000000000..0dfb9b1e4440
--- /dev/null
+++ b/dev-python/pysftp/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..ad8cead24f43
--- /dev/null
+++ b/dev-python/pysftp/metadata.xml
@@ -0,0 +1,8 @@
+<?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
new file mode 100644
index 000000000000..935c0e36cd52
--- /dev/null
+++ b/dev-python/pysftp/pysftp-0.2.9.ebuild
@@ -0,0 +1,15 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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/pystardict/Manifest b/dev-python/pystardict/Manifest
new file mode 100644
index 000000000000..9619607e69b6
--- /dev/null
+++ b/dev-python/pystardict/Manifest
@@ -0,0 +1 @@
+DIST PyStarDict-0.8.tar.gz 795302 BLAKE2B eed78612e616a56920ab40035dd14682d8420d34919df8f00deabdf36b287723cd12815cda9bb3c5eb9d6d123edd961dbd5da7301a4f5c5ac56b0b49665a5050 SHA512 a5cb64993e4d870c3fb30e78462ac52bba994088b51d74e2eb7a0c41436bd1bb6733c6a11f30404eae446669209a7dc8f8d74efb28f5cce3997c26fcad833db7
diff --git a/dev-python/pystardict/metadata.xml b/dev-python/pystardict/metadata.xml
new file mode 100644
index 000000000000..0a0d2c13904e
--- /dev/null
+++ b/dev-python/pystardict/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://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>1over137@anche.no</email>
+ <name>shaoyu</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/pystardict/pystardict-0.8.ebuild b/dev-python/pystardict/pystardict-0.8.ebuild
new file mode 100644
index 000000000000..696cebf18ceb
--- /dev/null
+++ b/dev-python/pystardict/pystardict-0.8.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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/pysubs2/Manifest b/dev-python/pysubs2/Manifest
new file mode 100644
index 000000000000..5280f7d2db43
--- /dev/null
+++ b/dev-python/pysubs2/Manifest
@@ -0,0 +1,3 @@
+DIST pysubs2-1.3.1.tar.gz 847254 BLAKE2B a5e225c6ad3b8e2a26ba5e4caa07fe022af0addb3f86d90f6922e98335146b6605fbefd22a05c27e69d02590e1c53d67e5b91ee641d444d1d09fa93ab1ef4488 SHA512 dc50107932f484ccf15a2e9d88a767aeeb1ef1bc4dba07ac573489e0405d0f7002bced460230a9406e4eb8ef3db89f8e4e622bb7a89b114b9cd6308ae1f3c0e0
+DIST pysubs2-1.4.1.tar.gz 849144 BLAKE2B fb992754c9cccd062509fcadda2f891a21b5cc3112b99439b0c272848776d567b33b56a7178eee1292cd657f578152e749ff73020018f25b56ab0666bb48a6ee SHA512 2a1480aacd77582d8a9a8145c37a3e61556caae16ea38d2deb869377ac1bc58106c5d2e9f870a939957900a267ee0645f4208115ca8824a2cfac22b0a9ccf3b6
+DIST pysubs2-1.4.2.tar.gz 850181 BLAKE2B 3aecd8a908bbde55e8426aec632a069da6f1f148cf853b28010562f239d84b92dd47b11ce96c38d9583703855c6ce2214dbec0607911dc1a48af14c1aa549752 SHA512 57d632fb7e29b1fb23eaf3f28275d3e05c83aa718b66ed2c0e1a0a617f7d7b47be133ed517c4373256bf2dc79003bc1415ccf5947d924523b7fb539aa5917271
diff --git a/dev-python/pysubs2/metadata.xml b/dev-python/pysubs2/metadata.xml
new file mode 100644
index 000000000000..cbe3c6a539f0
--- /dev/null
+++ b/dev-python/pysubs2/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>smaniotto.nicola@gmail.com</email>
+ <name>Nicola Smaniotto</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/pysubs2/pysubs2-1.3.1.ebuild b/dev-python/pysubs2/pysubs2-1.3.1.ebuild
new file mode 100644
index 000000000000..3b7f9b3a60b9
--- /dev/null
+++ b/dev-python/pysubs2/pysubs2-1.3.1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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.4.1.ebuild b/dev-python/pysubs2/pysubs2-1.4.1.ebuild
new file mode 100644
index 000000000000..41b0b25c6586
--- /dev/null
+++ b/dev-python/pysubs2/pysubs2-1.4.1.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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.4.2.ebuild b/dev-python/pysubs2/pysubs2-1.4.2.ebuild
new file mode 100644
index 000000000000..41b0b25c6586
--- /dev/null
+++ b/dev-python/pysubs2/pysubs2-1.4.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..f02988a91720
--- /dev/null
+++ b/dev-python/pytest-benchmark/Manifest
@@ -0,0 +1 @@
+DIST pytest-benchmark-3.4.1.tar.gz 322758 BLAKE2B d29254f412aee0955429e7957fa31e9443b3319bec256b601c456efa7020abbd5b4d9ed43799fda62f53f70f14de3f42a93b29b7366989294f037ec2ee3215fc SHA512 54fb5e3a176578b3c8f339878c7a9d047a0785befcbba42bb68c34b4b636d9b6f6a2097b36c5eefbbcf1a91f943bdae762c7978a0dba1af53514052f513ef4c5
diff --git a/dev-python/pytest-benchmark/metadata.xml b/dev-python/pytest-benchmark/metadata.xml
new file mode 100644
index 000000000000..bb332d1e981c
--- /dev/null
+++ b/dev-python/pytest-benchmark/metadata.xml
@@ -0,0 +1,23 @@
+<?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 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>
+</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
new file mode 100644
index 000000000000..aa5f812f7986
--- /dev/null
+++ b/dev-python/pytest-benchmark/pytest-benchmark-3.4.1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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-cases/Manifest b/dev-python/pytest-cases/Manifest
new file mode 100644
index 000000000000..79003e686d89
--- /dev/null
+++ b/dev-python/pytest-cases/Manifest
@@ -0,0 +1,2 @@
+DIST pytest-cases-3.6.11.tar.gz 1082043 BLAKE2B 396f7fa414729a49a8fb668126b959d13e5d10133ea0a47073cc42b8ce0a38c07df2e98c216e4904205696cf511a96d98e248e8f97a9324ee950e4399c1de746 SHA512 ee81d520eba8ab995bb4c32ba082a0107183d1d2892a29c3dc19d52a5324b1a73da2dbc97c202fdf6e6e17ac766f1d0383e87ee81ad22e49f7720a5e6417d0da
+DIST pytest-cases-3.6.9.tar.gz 1080527 BLAKE2B 9209c62eb5aebe496cfcad825c5eddf90881d6a23794e88fca34921ebc8a6036072a70cb693dd0dcd5d13d4ae67a192c52e6f770ae6c44c8a19265ecca55f552 SHA512 13d5ebdff00d14a39063d6dd4f41ff130b11fac9a073141d0f7acbb316a7b39730afaf1930bd18205ac068dabd236a37ff6bafda960c5f793eb723235eced6d3
diff --git a/dev-python/pytest-cases/metadata.xml b/dev-python/pytest-cases/metadata.xml
new file mode 100644
index 000000000000..4fbac7824d5e
--- /dev/null
+++ b/dev-python/pytest-cases/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>
+ <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.6.11.ebuild b/dev-python/pytest-cases/pytest-cases-3.6.11.ebuild
new file mode 100644
index 000000000000..3f312b3dce19
--- /dev/null
+++ b/dev-python/pytest-cases/pytest-cases-3.6.11.ebuild
@@ -0,0 +1,50 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+DISTUTILS_USE_PEP517=setuptools
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="dev-python/mkdocs-material"
+DOCS_DIR="docs"
+inherit distutils-r1 docs
+
+DESCRIPTION="Separate test code from test cases in pytest"
+HOMEPAGE="https://pypi.org/project/pytest-cases/ https://github.com/smarie/python-pytest-cases"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/decopatch[${PYTHON_USEDEP}]
+ >=dev-python/makefun-1.9.5[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-harvest[${PYTHON_USEDEP}]
+ dev-python/pytest-steps[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_DESELECT=(
+ tests/pytest_extension/doc/test_doc_fixture_graph_union.py::test_closure
+ tests/pytest_extension/fixtures/fixture_unions/test_fixture_closure_edits.py::test_super_closure_edits2
+ tests/pytest_extension/fixtures/fixture_unions/test_fixtures_union_2hard.py::test_super_closure
+)
+
+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/pytest-cases/pytest-cases-3.6.9.ebuild b/dev-python/pytest-cases/pytest-cases-3.6.9.ebuild
new file mode 100644
index 000000000000..9498462ab4a8
--- /dev/null
+++ b/dev-python/pytest-cases/pytest-cases-3.6.9.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+DISTUTILS_USE_PEP517=setuptools
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="dev-python/mkdocs-material"
+DOCS_DIR="docs"
+inherit distutils-r1 docs
+
+DESCRIPTION="Separate test code from test cases in pytest"
+HOMEPAGE="https://pypi.org/project/pytest-cases/ https://github.com/smarie/python-pytest-cases"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/decopatch[${PYTHON_USEDEP}]
+ >=dev-python/makefun-1.9.5[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-harvest[${PYTHON_USEDEP}]
+ dev-python/pytest-steps[${PYTHON_USEDEP}]
+ )
+"
+
+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/pytest-celery/Manifest b/dev-python/pytest-celery/Manifest
new file mode 100644
index 000000000000..1c771e6bfb59
--- /dev/null
+++ b/dev-python/pytest-celery/Manifest
@@ -0,0 +1 @@
+DIST pytest-celery-0.1.0.tar.gz 2746 BLAKE2B a9f2a355adaa88ec33061f43664d53e1bb50f94e2679d79e61443a0ff3d0d8f68fec0b7101538344c17bd854c964c75e546198bc7388c8f44b1f361fc87877fe SHA512 b48e03a2f1bc813aebd19124ed51666cfe6a049651a79c3dab15b14925de426bfb89284f8a599490c73477a60939e0321b14fdc90e0c72f82e6bcc67992d791f
diff --git a/dev-python/pytest-celery/metadata.xml b/dev-python/pytest-celery/metadata.xml
new file mode 100644
index 000000000000..96e702a5be7c
--- /dev/null
+++ b/dev-python/pytest-celery/metadata.xml
@@ -0,0 +1,12 @@
+<?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">celery/pytest-celery</remote-id>
+ <remote-id type="pypi">celery</remote-id>
+ </upstream>
+</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/pytest-celery/pytest-celery-0.1.0.ebuild b/dev-python/pytest-celery/pytest-celery-0.1.0.ebuild
new file mode 100644
index 000000000000..c51198ac3cd2
--- /dev/null
+++ b/dev-python/pytest-celery/pytest-celery-0.1.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/
+"
+SRC_URI="https://github.com/celery/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/celery-4.4.0[${PYTHON_USEDEP}]"
diff --git a/dev-python/pytest-cython/Manifest b/dev-python/pytest-cython/Manifest
new file mode 100644
index 000000000000..f5da597e9144
--- /dev/null
+++ b/dev-python/pytest-cython/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..3819393dce07
--- /dev/null
+++ b/dev-python/pytest-cython/metadata.xml
@@ -0,0 +1,20 @@
+<?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
new file mode 100644
index 000000000000..69c69fa72bc3
--- /dev/null
+++ b/dev-python/pytest-cython/pytest-cython-0.1.1.ebuild
@@ -0,0 +1,33 @@
+# 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-harvest/Manifest b/dev-python/pytest-harvest/Manifest
new file mode 100644
index 000000000000..71ce9a5df4ff
--- /dev/null
+++ b/dev-python/pytest-harvest/Manifest
@@ -0,0 +1 @@
+DIST pytest-harvest-1.10.3.tar.gz 77312 BLAKE2B 301a9c890c527213025f33e72fc9a9e7d23354ef174e489b3e40e3597bf5b180ecd15f584cd736d379a4010f739e0aedcb5914012f0db767a45c7dfd4f38d126 SHA512 ba76e86a9109daeef70ac5ee454e92655468e2dbf4ade39d62e80b67f09978e78cc7f41bdf366f946d6a859b0b3f6d1f937155b4a486799b5806b9f68634e7ae
diff --git a/dev-python/pytest-harvest/metadata.xml b/dev-python/pytest-harvest/metadata.xml
new file mode 100644
index 000000000000..b55fd740f556
--- /dev/null
+++ b/dev-python/pytest-harvest/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>
+ <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.3.ebuild b/dev-python/pytest-harvest/pytest-harvest-1.10.3.ebuild
new file mode 100644
index 000000000000..9ceb2ca9f618
--- /dev/null
+++ b/dev-python/pytest-harvest/pytest-harvest-1.10.3.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="dev-python/mkdocs-material"
+DOCS_DIR="docs"
+inherit distutils-r1 docs
+
+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"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/decopatch[${PYTHON_USEDEP}]
+ >=dev-python/makefun-1.5[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pandas[${PYTHON_USEDEP}]
+ dev-python/pytest-cases[${PYTHON_USEDEP}]
+ dev-python/tabulate[${PYTHON_USEDEP}]
+ )
+"
+
+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
new file mode 100644
index 000000000000..6f6278fa236f
--- /dev/null
+++ b/dev-python/pytest-instafail/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..450c13e40793
--- /dev/null
+++ b/dev-python/pytest-instafail/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>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
new file mode 100644
index 000000000000..1630d88086ab
--- /dev/null
+++ b/dev-python/pytest-instafail/pytest-instafail-0.4.2.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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
new file mode 100644
index 000000000000..61690190d1c5
--- /dev/null
+++ b/dev-python/pytest-isort/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..23b46bec7f1e
--- /dev/null
+++ b/dev-python/pytest-isort/metadata.xml
@@ -0,0 +1,10 @@
+<?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-r1.ebuild b/dev-python/pytest-isort/pytest-isort-1.3.0-r1.ebuild
new file mode 100644
index 000000000000..2978dc71f610
--- /dev/null
+++ b/dev-python/pytest-isort/pytest-isort-1.3.0-r1.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Plugin to check import ordering using isort"
+HOMEPAGE="https://github.com/stephrdev/pytest-isort"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+
+distutils_enable_tests pytest
+# I don't know what's going on, so I took the easy route. 😝
+EPYTEST_DESELECT=( test_isort.py::TestIsortItem::test_init )
+
+RDEPEND="
+ >=dev-python/pytest-3.5[${PYTHON_USEDEP}]
+ >=dev-python/isort-4.0[${PYTHON_USEDEP}]
+"
diff --git a/dev-python/pytest-isort/pytest-isort-1.3.0.ebuild b/dev-python/pytest-isort/pytest-isort-1.3.0.ebuild
new file mode 100644
index 000000000000..0d16f3c21cac
--- /dev/null
+++ b/dev-python/pytest-isort/pytest-isort-1.3.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Plugin to check import ordering using isort"
+HOMEPAGE="https://github.com/stephrdev/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-pythonpath/Manifest b/dev-python/pytest-pythonpath/Manifest
new file mode 100644
index 000000000000..dd8506bf0575
--- /dev/null
+++ b/dev-python/pytest-pythonpath/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..4d61fd1c54e0
--- /dev/null
+++ b/dev-python/pytest-pythonpath/metadata.xml
@@ -0,0 +1,9 @@
+<?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
new file mode 100644
index 000000000000..2703079dd662
--- /dev/null
+++ b/dev-python/pytest-pythonpath/pytest-pythonpath-0.7.3.ebuild
@@ -0,0 +1,25 @@
+# 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,10} )
+
+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
new file mode 100644
index 000000000000..e6374a38f1e4
--- /dev/null
+++ b/dev-python/pytest-randomly/Manifest
@@ -0,0 +1,2 @@
+DIST pytest-randomly-3.10.1.tar.gz 28000 BLAKE2B 662f28e34db5dace9d421d91bb8baf3775c7e5163fa93eeb12cbe3de251ea5425d995301e193253f55a602d98deeaf0dc2e676be9bdb7a97db93ba54fa9cfa5f SHA512 d93e017df706d7021ff3f4682b4ed65d474177a60e303455685266d47a0a214e4f30b2f7dd150768de711d602ca1d22e2cfeca2703a7139cfaab97e3424afa1c
+DIST pytest-randomly-3.11.0.tar.gz 30822 BLAKE2B 81411f8882f786c18ded69d42296117421498515ed0808064b4da418f94be5aa6e0dedf1dabf0e87f8f508b9cc886f8b645e4b5f845009cade4f20b8f437dd95 SHA512 6c2da071492d032b60782c17aee01751fe0728f921dfd192a17d9be95330ddf6dd0c960ef93a200dbe990c8457340008c556f28aea9cbc74677984fee0618ad7
diff --git a/dev-python/pytest-randomly/metadata.xml b/dev-python/pytest-randomly/metadata.xml
new file mode 100644
index 000000000000..e9b1d8072917
--- /dev/null
+++ b/dev-python/pytest-randomly/metadata.xml
@@ -0,0 +1,41 @@
+<?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.10.1.ebuild b/dev-python/pytest-randomly/pytest-randomly-3.10.1.ebuild
new file mode 100644
index 000000000000..f2fc4f1d475a
--- /dev/null
+++ b/dev-python/pytest-randomly/pytest-randomly-3.10.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/factory_boy[${PYTHON_USEDEP}]
+ dev-python/Faker[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+
+ $(python_gen_cond_dep '>=dev-python/importlib_metadata-3.6.0[${PYTHON_USEDEP}]' python3_{8,9})
+"
+DEPEND="${RDEPEND}"
+
+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-randomly/pytest-randomly-3.11.0.ebuild b/dev-python/pytest-randomly/pytest-randomly-3.11.0.ebuild
new file mode 100644
index 000000000000..2bef1d1e3407
--- /dev/null
+++ b/dev-python/pytest-randomly/pytest-randomly-3.11.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="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/factory_boy[${PYTHON_USEDEP}]
+ dev-python/Faker[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+
+ $(python_gen_cond_dep '>=dev-python/importlib_metadata-3.6.0[${PYTHON_USEDEP}]' python3_{8,9})
+"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests pytest
+
+python_test() {
+ distutils_install_for_testing --via-root
+ pytest -vv || die "Testsuite failed under ${EPYTHON}"
+}
diff --git a/dev-python/pytest-steps/Manifest b/dev-python/pytest-steps/Manifest
new file mode 100644
index 000000000000..371f81725e61
--- /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/metadata.xml b/dev-python/pytest-steps/metadata.xml
new file mode 100644
index 000000000000..e8349094adae
--- /dev/null
+++ b/dev-python/pytest-steps/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>
+ <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 000000000000..dd7d04a53c52
--- /dev/null
+++ b/dev-python/pytest-steps/pytest-steps-1.8.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+DOCS_BUILDER="mkdocs"
+DOCS_DEPEND="dev-python/mkdocs-material"
+DOCS_DIR="docs"
+inherit distutils-r1 docs
+
+DESCRIPTION="Create step-wise / incremental tests in pytest"
+HOMEPAGE="https://pypi.org/project/pytest-steps/ https://github.com/smarie/python-pytest-steps"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/makefun-1.5[${PYTHON_USEDEP}]
+ dev-python/wrapt[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pandas[${PYTHON_USEDEP}]
+ dev-python/pytest-cases[${PYTHON_USEDEP}]
+ dev-python/pytest-harvest[${PYTHON_USEDEP}]
+ dev-python/tabulate[${PYTHON_USEDEP}]
+ )
+"
+
+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-testinfra/Manifest b/dev-python/pytest-testinfra/Manifest
index a4654b7565e3..d0bea5315dd0 100644
--- a/dev-python/pytest-testinfra/Manifest
+++ b/dev-python/pytest-testinfra/Manifest
@@ -1 +1,2 @@
DIST pytest-testinfra-6.6.0.tar.gz 78285 BLAKE2B c7583685aeb770f76e4679730599909b8fff53d1909664f55e2d35f7f5a6a96741e3aa56b81da464c2d474d1d5f646892e36a4f9b6938327cb526476536b0b6c SHA512 f78f1cd5240e157d4e2949178f29900a7b85a6065b4113b18273af3f1fef6b19c859192f59426b93eba48418bb89d163ad1d951e97d4fdfcea4394635a05140a
+DIST pytest-testinfra-6.7.0.tar.gz 79187 BLAKE2B 08678f381392fe8a1fe335adc90ac6dc67c5bfa33c87f4e9d81b439eaabd29c393b8dc80cc79625784e76e5b0e264cdfc272cddb531acefbac9a8327be46f7be SHA512 d11f30da0eae9f215173d3f84e6ba7965d926b8ef6c49619c2ccae3d3ff215f351b950eea019e6516a56de0aa7bc533658af978d827a3ad3d1c50e37902b6f91
diff --git a/dev-python/pytest-testinfra/pytest-testinfra-6.7.0.ebuild b/dev-python/pytest-testinfra/pytest-testinfra-6.7.0.ebuild
new file mode 100644
index 000000000000..ee248f8c1869
--- /dev/null
+++ b/dev-python/pytest-testinfra/pytest-testinfra-6.7.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Write unit tests in Python to test actual state of your servers"
+HOMEPAGE="
+ https://github.com/pytest-dev/pytest-testinfra/
+"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/pytest[${PYTHON_USEDEP}]
+"
+# Ansible is called via its CLI
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ <app-admin/ansible-5
+ dev-python/paramiko[${PYTHON_USEDEP}]
+ dev-python/pywinrm[${PYTHON_USEDEP}]
+ app-admin/salt[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+pkg_postinst() {
+ elog "For the list of available connection back-ends and their dependencies,"
+ elog "please consult https://testinfra.readthedocs.io/en/latest/backends.html"
+}
diff --git a/dev-python/pytest-vcr/Manifest b/dev-python/pytest-vcr/Manifest
new file mode 100644
index 000000000000..8f1cd7cb7ea3
--- /dev/null
+++ b/dev-python/pytest-vcr/Manifest
@@ -0,0 +1 @@
+DIST pytest-vcr-1.0.2.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 000000000000..36fc17cc25fc
--- /dev/null
+++ b/dev-python/pytest-vcr/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>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+ <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 000000000000..5e45c0536d96
--- /dev/null
+++ b/dev-python/pytest-vcr/pytest-vcr-1.0.2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DOCS_BUILDER="mkdocs"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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}.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 --install 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
new file mode 100644
index 000000000000..dcd75288f814
--- /dev/null
+++ b/dev-python/python-barbicanclient/Manifest
@@ -0,0 +1 @@
+DIST python-barbicanclient-5.3.0.tar.gz 119436 BLAKE2B 950517ce4f87f41fa389765b667f573cc46acbd6ea55eb201ce93f1a637dc4716e05b9d74dfa7de67a806bdfa4b9116ef90eae95efa1153fbb39a006f3180183 SHA512 3d9ee7e812e3b52e5cedc654ba1e49cdd2764998cf7a296af8df70effd572d2f8adf351155324168d512f56a1386093bfbcb25fff14350a33b4e90e358a47d25
diff --git a/dev-python/python-barbicanclient/metadata.xml b/dev-python/python-barbicanclient/metadata.xml
new file mode 100644
index 000000000000..7553b7881a5c
--- /dev/null
+++ b/dev-python/python-barbicanclient/metadata.xml
@@ -0,0 +1,14 @@
+<?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.3.0.ebuild b/dev-python/python-barbicanclient/python-barbicanclient-5.3.0.ebuild
new file mode 100644
index 000000000000..6a2130d828f1
--- /dev/null
+++ b/dev-python/python-barbicanclient/python-barbicanclient-5.3.0.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Client library for Barbican API"
+HOMEPAGE="
+ https://github.com/openstack/python-barbicanclient
+ https://opendev.org/openstack/python-barbicanclient
+ https://pypi.org/project/python-barbicanclient/
+ https://launchpad.net/python-barbicanclient
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=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-2.18.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
+ )
+"
+
+RESTRICT="test"
+PROPERTIES="test_network"
+
+distutils_enable_tests nose
diff --git a/dev-python/python-binary-memcached/Manifest b/dev-python/python-binary-memcached/Manifest
new file mode 100644
index 000000000000..c53caf703cb7
--- /dev/null
+++ b/dev-python/python-binary-memcached/Manifest
@@ -0,0 +1 @@
+DIST python-binary-memcached-0.31.1-gh.tar.gz 93809 BLAKE2B 6a7a6921a7ff24427ddb5443acf7a81c43a06baaadaead9caf50a8eb758d05d43430dd581e69d6dd4e83799e52e93949250cbf69309bb860857c63972ad0fc2c SHA512 3fbf0cbf05b42a5e28f01542ff0d190d138104cab97a5b05c17133f245fe37aad97b4daba31c203d854a4228fc9d49fd0306d93a45541a8cf7d173afc81c70ab
diff --git a/dev-python/python-binary-memcached/metadata.xml b/dev-python/python-binary-memcached/metadata.xml
new file mode 100644
index 000000000000..399b6e3379e6
--- /dev/null
+++ b/dev-python/python-binary-memcached/metadata.xml
@@ -0,0 +1,16 @@
+<?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 pure python module (thread safe) to access memcached via it's binary with SASL auth support.
+The main purpose of this module it to be able to communicate with memcached using binary protocol and support authentication, so it can work with Heroku for example.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">jaysonsantos/python-binary-memcached</remote-id>
+ <remote-id type="pypi">python-binary-memcached</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/python-binary-memcached/python-binary-memcached-0.31.1.ebuild b/dev-python/python-binary-memcached/python-binary-memcached-0.31.1.ebuild
new file mode 100644
index 000000000000..3e4986c0bc3c
--- /dev/null
+++ b/dev-python/python-binary-memcached/python-binary-memcached-0.31.1.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="access memcached via it's binary protocol with SASL auth support"
+HOMEPAGE="
+ https://github.com/jaysonsantos/python-binary-memcached
+ https://pypi.org/project/python-binary-memcached/
+"
+SRC_URI="https://github.com/jaysonsantos/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}-gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/uhashring[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/m2r-0.2.1[${PYTHON_USEDEP}]
+ test? ( net-misc/memcached )
+"
+BDEPEND="
+ test? (
+ dev-python/mistune[${PYTHON_USEDEP}]
+ >=dev-python/pytest-6.2[${PYTHON_USEDEP}]
+ >=dev-python/trustme-0.9.0[${PYTHON_USEDEP}]
+ >=dev-python/mock-4.0[${PYTHON_USEDEP}]
+ )
+"
+
+RESTRICT="test" # tests require a running memcached
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ rm README.rst || die
+ default
+}
diff --git a/dev-python/python-blazarclient/Manifest b/dev-python/python-blazarclient/Manifest
new file mode 100644
index 000000000000..efbbbb2551aa
--- /dev/null
+++ b/dev-python/python-blazarclient/Manifest
@@ -0,0 +1 @@
+DIST python-blazarclient-3.4.0.tar.gz 41757 BLAKE2B 227be7089b1f07c2a200483e06792fc4fa9b26cd2e26d05f35e2d3c8beb48eece6491effaf7a3d24501031eac84a0d421399151c8b6067f9a1beed698005edbb SHA512 38b26c489b6fed7a2854b0ade9678eb57939c58bc0f288a6317ec5638fcc90ccd498d4901bd3a1f6ebbb430b744d586bf081fd2de9f825a3571556d6cdb4a7ef
diff --git a/dev-python/python-blazarclient/metadata.xml b/dev-python/python-blazarclient/metadata.xml
new file mode 100644
index 000000000000..0cbf9cbdc443
--- /dev/null
+++ b/dev-python/python-blazarclient/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">
+ <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.4.0.ebuild b/dev-python/python-blazarclient/python-blazarclient-3.4.0.ebuild
new file mode 100644
index 000000000000..63398c6cc949
--- /dev/null
+++ b/dev-python/python-blazarclient/python-blazarclient-3.4.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="This is a client for the OpenStack Blazar API"
+HOMEPAGE="
+ https://github.com/openstack/python-blazarclient
+ https://opendev.org/openstack/python-blazarclient
+ https://pypi.org/project/python-blazarclient/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/Babel-2.3.4[${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.3.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-constraint/Manifest b/dev-python/python-constraint/Manifest
new file mode 100644
index 000000000000..c91937213f66
--- /dev/null
+++ b/dev-python/python-constraint/Manifest
@@ -0,0 +1 @@
+DIST python-constraint-1.4.0.tar.gz 24966 BLAKE2B 5ada7926f226536a1384bf9a082da41824e46d683ee71a278c50e1e5ca0a21eb3acbde4c0b47d6b48c53864ab4ea47d602fc9acb976423035aee74b0c6f3ed85 SHA512 fbc65ba5854e227e62469290e2d8362ed3247931592e2ac7eb5bcd5d3f9f720bbab8a984a8f7cf9dce989663f13965c5401286a1bdc673c2c076c8b22e19f0cd
diff --git a/dev-python/python-constraint/files/python-constraint-1.4.0-exclude-examples.patch b/dev-python/python-constraint/files/python-constraint-1.4.0-exclude-examples.patch
new file mode 100644
index 000000000000..797b8e18cff5
--- /dev/null
+++ b/dev-python/python-constraint/files/python-constraint-1.4.0-exclude-examples.patch
@@ -0,0 +1,11 @@
+--- a/setup.py 2022-02-27 15:57:35.035889587 +0100
++++ b/setup.py 2022-02-27 15:58:04.049889476 +0100
+@@ -70,7 +70,7 @@
+ keywords="csp constraint solving problems problem solver",
+ # You can just specify the packages manually here if your project is
+ # simple. Or you can use find_packages().
+- packages=find_packages(exclude=["contrib", "docs", "tests*"]),
++ packages=find_packages(exclude=["contrib", "docs", "tests*", "examples*"]),
+ # List run-time dependencies here. These will be installed by pip when your
+ # project is installed. For an analysis of "install_requires" vs pip's
+ # requirements files see:
diff --git a/dev-python/python-constraint/metadata.xml b/dev-python/python-constraint/metadata.xml
new file mode 100644
index 000000000000..a0974b823394
--- /dev/null
+++ b/dev-python/python-constraint/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- comaintainers-welcomed -->
+ <maintainer type="person">
+ <email>gaboroszkar@protonmail.com</email>
+ <name>Gábor Oszkár Dénes</name>
+ </maintainer>
+ <longdescription>
+ The Python constraint module offers solvers for Constraint Satisfaction Problems (CSPs) over finite domains in simple and pure Python. CSP is class of problems which may be represented in terms of variables (a, b, ...), domains (a in [1, 2, 3], ...), and constraints (a &lt; b, ...).
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-python/python-constraint/python-constraint-1.4.0.ebuild b/dev-python/python-constraint/python-constraint-1.4.0.ebuild
new file mode 100644
index 000000000000..7ca5f19b9d8c
--- /dev/null
+++ b/dev-python/python-constraint/python-constraint-1.4.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Constraint Solving Problem resolver for Python"
+HOMEPAGE="https://github.com/python-constraint/python-constraint"
+SRC_URI="https://github.com/python-constraint/python-constraint/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests pytest
+
+PATCHES=( "${FILESDIR}/python-constraint-1.4.0-exclude-examples.patch" )
diff --git a/dev-python/python-dbus-next/Manifest b/dev-python/python-dbus-next/Manifest
new file mode 100644
index 000000000000..2c73f9a9e746
--- /dev/null
+++ b/dev-python/python-dbus-next/Manifest
@@ -0,0 +1 @@
+DIST python-dbus-next-0.2.3.tar.gz 81711 BLAKE2B 6acc38a05511b3de7e13893d82dd1ecd55f9a6124b4d859574294602b921ff012776c12ddb02e1be437b258c7bd5120a3a9625fc5b06bbbe02915dcc4c14897b SHA512 7836d855c755c8ac6cbbb251ca0cbd2f4df9b573f31b1ea1cab480e47896d36b4cb0d479b2469b0bf0b5c700068361a18874b4a087f73020cdcb4e04a2d7dbe7
diff --git a/dev-python/python-dbus-next/metadata.xml b/dev-python/python-dbus-next/metadata.xml
new file mode 100644
index 000000000000..7d50e4c0a40e
--- /dev/null
+++ b/dev-python/python-dbus-next/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>ceamac.paragon@gmail.com</email>
+ <description>Primary maintainer</description>
+</maintainer>
+<upstream>
+ <remote-id type="github">altdesktop/python-dbus-next</remote-id>
+ <remote-id type="pypi">dbus-next</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/dev-python/python-dbus-next/python-dbus-next-0.2.3.ebuild b/dev-python/python-dbus-next/python-dbus-next-0.2.3.ebuild
new file mode 100644
index 000000000000..d9eab14a3a59
--- /dev/null
+++ b/dev-python/python-dbus-next/python-dbus-next-0.2.3.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="python-dbus-next is a Python library for DBus"
+HOMEPAGE="
+ https://github.com/altdesktop/python-dbus-next
+ https://pypi.org/project/dbus-next/
+"
+SRC_URI="https://github.com/altdesktop/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+BDEPEND="test? ( dev-python/pytest-asyncio[${PYTHON_USEDEP}] )"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs \
+ dev-python/sphinxcontrib-asyncio \
+ dev-python/sphinxcontrib-fulltoc
+
+# some tests fail with:
+# dbus_next.errors.InvalidAddressError: DBUS_SESSION_BUS_ADDRESS not set and could not get DISPLAY environment variable to get bus addres
+# or require certain services to be installed (like org.freedesktop.DBus.Debug.Stats)
+RESTRICT="test"
diff --git a/dev-python/python-designateclient/Manifest b/dev-python/python-designateclient/Manifest
new file mode 100644
index 000000000000..2bae8957d51a
--- /dev/null
+++ b/dev-python/python-designateclient/Manifest
@@ -0,0 +1 @@
+DIST python-designateclient-4.5.0.tar.gz 70182 BLAKE2B 83c127935434367d64b4eac6f10040d5d0c59f58fc89db2a92e52f33c7b0f473d8c991fdb98ea1d3fddfd2111e91c6e162047cda061dd8fd897a430baa9c7629 SHA512 0229b925d9c659af777e5b7151830746b20d990e17a2328ad03cbdea3e04d7d5de78a16778d644b112b9d7b6f04a2a52ae57c9404c32fdab018c2be60ba3ca4e
diff --git a/dev-python/python-designateclient/metadata.xml b/dev-python/python-designateclient/metadata.xml
new file mode 100644
index 000000000000..9a5c5e11475c
--- /dev/null
+++ b/dev-python/python-designateclient/metadata.xml
@@ -0,0 +1,17 @@
+<?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.5.0.ebuild b/dev-python/python-designateclient/python-designateclient-4.5.0.ebuild
new file mode 100644
index 000000000000..574844f42686
--- /dev/null
+++ b/dev-python/python-designateclient/python-designateclient-4.5.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_IGNORE=( designateclient/functionaltests/ )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python bindings to the Designate API"
+HOMEPAGE="
+ https://github.com/openstack/python-designateclient
+ https://opendev.org/openstack/python-blazarclient
+ https://pypi.org/project/python-blazarclient/
+ https://launchpad.net/python-designateclient
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/cliff-2.8.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-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+ >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/os-testr-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/reno-3.1.0[${PYTHON_USEDEP}]
+ >=dev-python/tempest-17.1.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-heatclient/Manifest b/dev-python/python-heatclient/Manifest
new file mode 100644
index 000000000000..49bbc60d46ba
--- /dev/null
+++ b/dev-python/python-heatclient/Manifest
@@ -0,0 +1 @@
+DIST python-heatclient-2.5.1.tar.gz 178919 BLAKE2B 577f0b37de268b106afc682b78fdaf6ea5c3eb274afded9e7fc8f018d2553907c28033bcccb0453a63ac6526de45acb946cb9babd5f6bb9161a72645f267c80f SHA512 5dec4edf3adce3a47acdf2a0153945098c6dbb3cbafa61d2044de173d3c747bb6a7c4d0db4a1dcc3c8b8eb22a8db0b1bc7b5cb96c1c7f90c3fcebe35882d706b
diff --git a/dev-python/python-heatclient/metadata.xml b/dev-python/python-heatclient/metadata.xml
new file mode 100644
index 000000000000..d212e286c653
--- /dev/null
+++ b/dev-python/python-heatclient/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">
+ <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.5.1.ebuild b/dev-python/python-heatclient/python-heatclient-2.5.1.ebuild
new file mode 100644
index 000000000000..b4ba445dba8f
--- /dev/null
+++ b/dev-python/python-heatclient/python-heatclient-2.5.1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="OpenStack Orchestration API Client Library"
+HOMEPAGE="
+ https://github.com/openstack/python-heatclient
+ https://opendev.org/openstack/python-heatclient
+ https://pypi.org/project/python-heatclient/
+ https://launchpad.net/python-heatclient
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
+ >=dev-python/osc-lib-1.14.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.2[${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}]
+ >=dev-python/keystoneauth-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/python-swiftclient-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.13[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+ >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
+ >=dev-python/tempest-17.1.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-json-logger/Manifest b/dev-python/python-json-logger/Manifest
new file mode 100644
index 000000000000..36a19c729fec
--- /dev/null
+++ b/dev-python/python-json-logger/Manifest
@@ -0,0 +1 @@
+DIST python-json-logger-2.0.2.tar.gz 9546 BLAKE2B 0c331e6b57c2c49161502e8c015f93a829944232ff1b0754cac4e9f92fc92f8a3bdd33f0401a5e913a48ff5f3a40f52325cc4074a83f1b10d875c06f6127d85b SHA512 ce9df1cff0b91e64b7e2d75064d7ad0ec95f0845354e422fabaebba81dc94b31c7944ed40312c0025b690ec34c87a4778beb5d19adb9f621629389bc421ee62e
diff --git a/dev-python/python-json-logger/metadata.xml b/dev-python/python-json-logger/metadata.xml
new file mode 100644
index 000000000000..fc09474f40e4
--- /dev/null
+++ b/dev-python/python-json-logger/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <description>comaintainers welcome</description>
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <longdescription lang="en">
+This library is provided to allow standard python logging to output log data as json objects. With JSON we can make our logs more readable by machines and we can stop writing custom parsers for syslog type records. </longdescription>
+ <upstream>
+ <remote-id type="github">madzak/python-json-logger</remote-id>
+ <remote-id type="pypi">python-json-logger</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/python-json-logger/python-json-logger-2.0.2.ebuild b/dev-python/python-json-logger/python-json-logger-2.0.2.ebuild
new file mode 100644
index 000000000000..976bc7c8e112
--- /dev/null
+++ b/dev-python/python-json-logger/python-json-logger-2.0.2.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Standard python logging to output log data as json objects"
+HOMEPAGE="
+ https://github.com/madzak/python-json-logger
+ https://pypi.org/project/python-json-logger/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+distutils_enable_tests unittest
diff --git a/dev-python/python-lsp-black/Manifest b/dev-python/python-lsp-black/Manifest
index c5610989d9b9..3647d928ca82 100644
--- a/dev-python/python-lsp-black/Manifest
+++ b/dev-python/python-lsp-black/Manifest
@@ -1 +1,2 @@
DIST python-lsp-black-1.2.0.gh.tar.gz 9226 BLAKE2B a9efe698c32ac86060f360e1d1129620783d0dd1588cf16b6f96a4f805845d5c94e862b265d63643e877afc68916ad0fbbe922fc0c17e224ea08f61756a3fb41 SHA512 b5f999b0e02abc63dc194a2973f028aa5f74b3110d0ac35e6aefb45a4260bf3fb5b1f142f71a85feec431765af98409977a47039d28a79cfac5746cc677794c7
+DIST python-lsp-black-1.2.1.gh.tar.gz 9355 BLAKE2B f9c70ff07d9dfa31e3af919143deb8a49f43269469e8c64525f514624f4db67636da8254dae5274685ba2d883c8ddfd6dd9cb99981a337d7837d4007f15af11c SHA512 289b8f3642ed806409671d25e32997fb473720d0abd642c58c07d8c894831fa00f56dbc39e7d0fc8d98cad7de9f95ebdb6a0f637b8b4bbcc2a0716690feb647e
diff --git a/dev-python/python-lsp-black/python-lsp-black-1.2.1.ebuild b/dev-python/python-lsp-black/python-lsp-black-1.2.1.ebuild
new file mode 100644
index 000000000000..73c8307d12aa
--- /dev/null
+++ b/dev-python/python-lsp-black/python-lsp-black-1.2.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Black plugin for the Python LSP Server"
+HOMEPAGE="
+ https://github.com/python-lsp/python-lsp-black/
+ https://pypi.org/project/python-lsp-black/
+"
+SRC_URI="
+ https://github.com/python-lsp/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/python-lsp-server-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/black-22.3.0[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ test? (
+ dev-python/toml[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-magnumclient/Manifest b/dev-python/python-magnumclient/Manifest
new file mode 100644
index 000000000000..57de44f9005b
--- /dev/null
+++ b/dev-python/python-magnumclient/Manifest
@@ -0,0 +1 @@
+DIST python-magnumclient-3.6.0.tar.gz 120199 BLAKE2B 09106e8edae4c58ecc04ca996007a7852d6a07e6e71d1ae36f7adc3c134d84600a37ed9f2bef6b2e07792efd29f5e8d320c2f27c3ad37bca0fb4f04cc0579aff SHA512 3b789cb8af90a943dca38ac1364b7ff9a8bc31be56750a0fceb5e853a332bba73ebcab4b0c8bcbb691234e3c79e13f3dbd9b58479f9f9d16aa924009cb4cb7cf
diff --git a/dev-python/python-magnumclient/metadata.xml b/dev-python/python-magnumclient/metadata.xml
new file mode 100644
index 000000000000..3ccfbd69e5dc
--- /dev/null
+++ b/dev-python/python-magnumclient/metadata.xml
@@ -0,0 +1,14 @@
+<?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.6.0.ebuild b/dev-python/python-magnumclient/python-magnumclient-3.6.0.ebuild
new file mode 100644
index 000000000000..b2d10c318a51
--- /dev/null
+++ b/dev-python/python-magnumclient/python-magnumclient-3.6.0.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A client for the OpenStack Magnum API"
+HOMEPAGE="
+ https://github.com/openstack/python-magnumclient
+ https://opendev.org/openstack/python-magnumclient
+ https://launchpad.net/python-magnumclient
+ https://pypi.org/project/python-magnumclient/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/Babel-2.3.4[${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-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/cryptography-3.0[${PYTHON_USEDEP}]
+ >=dev-python/decorator-3.4.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-manilaclient/Manifest b/dev-python/python-manilaclient/Manifest
new file mode 100644
index 000000000000..b540031b5459
--- /dev/null
+++ b/dev-python/python-manilaclient/Manifest
@@ -0,0 +1 @@
+DIST python-manilaclient-3.3.0.tar.gz 320475 BLAKE2B e83e30593d26e9ba26f9f487507f6c9a9b38be69b59af69dcdb85242abb81879e689efb70c937bb8afef74841adf54e5e7724f2173a6bc9c7d76c90535bf1b4c SHA512 084293115370a174678dd8bde3f144213f10ce4a3addf7058365b0bbde31b2a56643b0417ec97ced297bf99e141a1fd96503aea96795c36862548268d6f7ae31
diff --git a/dev-python/python-manilaclient/metadata.xml b/dev-python/python-manilaclient/metadata.xml
new file mode 100644
index 000000000000..cdff8e18940b
--- /dev/null
+++ b/dev-python/python-manilaclient/metadata.xml
@@ -0,0 +1,14 @@
+<?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-3.3.0.ebuild b/dev-python/python-manilaclient/python-manilaclient-3.3.0.ebuild
new file mode 100644
index 000000000000..1b6a8a9439dd
--- /dev/null
+++ b/dev-python/python-manilaclient/python-manilaclient-3.3.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_IGNORE=( manilaclient/tests/functional )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A client for the OpenStack Manila API"
+HOMEPAGE="
+ https://opendev.org/openstack/python-manilaclient
+ https://github.com/openstack/python-manilaclient
+ https://pypi.org/project/python-manilaclient/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-2.18.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.1[${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/osc-lib-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/python-keystoneclient-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/tempest-17.1.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-mistralclient/Manifest b/dev-python/python-mistralclient/Manifest
new file mode 100644
index 000000000000..7253ef7e316b
--- /dev/null
+++ b/dev-python/python-mistralclient/Manifest
@@ -0,0 +1 @@
+DIST python-mistralclient-4.4.0.tar.gz 107831 BLAKE2B 258e74d766fe2a804eeb27f1265206ee37f1db52d9ed54ba733868e97b6b7e6af0261a8c202e1dc4518e3e0a0f040c6b4cfb609c6e16fab9b214e431d6a2a589 SHA512 f28c5b5b237c6fa3851ded112024d70192adbdeeab1e6d5fad9b388ec53d800006ca1c4babaf397946a01bb0d4bedcf35b1fbbbf3a1db0d323303c7ca065228c
diff --git a/dev-python/python-mistralclient/metadata.xml b/dev-python/python-mistralclient/metadata.xml
new file mode 100644
index 000000000000..907153b84f0b
--- /dev/null
+++ b/dev-python/python-mistralclient/metadata.xml
@@ -0,0 +1,14 @@
+<?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.4.0.ebuild b/dev-python/python-mistralclient/python-mistralclient-4.4.0.ebuild
new file mode 100644
index 000000000000..e019f6721555
--- /dev/null
+++ b/dev-python/python-mistralclient/python-mistralclient-4.4.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_IGNORE=( mistralclient/tests/functional )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A client for the OpenStack Mistral API"
+HOMEPAGE="
+ https://github.com/openstack/python-mistralclient
+ https://opendev.org/openstack/python-blazarclient
+ https://pypi.org/project/python-blazarclient/
+ https://launchpad.net/python-mistralclient/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/cliff-2.8.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/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.13[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/tempest-17.1.0[${PYTHON_USEDEP}]
+ >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/os-client-config-1.28.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-monascaclient/Manifest b/dev-python/python-monascaclient/Manifest
new file mode 100644
index 000000000000..e6dd5c3cbbbb
--- /dev/null
+++ b/dev-python/python-monascaclient/Manifest
@@ -0,0 +1 @@
+DIST python-monascaclient-2.5.0.tar.gz 53507 BLAKE2B fa4bbecaac06903c912953a0ed9ac2b7ca173dbe0a6734416faffd15948be652de7e1aad8e016add1703eea5f1fb790997e04d5e0efeaee66511b03abc7a5ff5 SHA512 32573e3985c56e77242bad7b1c84449d9af4761f5ca565fc1c979ad5148b0f5e53285cc6c589ae5beea6e62cfd5c8060164b395bb2f369e95588d8aae4833fca
diff --git a/dev-python/python-monascaclient/metadata.xml b/dev-python/python-monascaclient/metadata.xml
new file mode 100644
index 000000000000..dc9ec29fd794
--- /dev/null
+++ b/dev-python/python-monascaclient/metadata.xml
@@ -0,0 +1,14 @@
+<?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.5.0.ebuild b/dev-python/python-monascaclient/python-monascaclient-2.5.0.ebuild
new file mode 100644
index 000000000000..e08a82cbd12f
--- /dev/null
+++ b/dev-python/python-monascaclient/python-monascaclient-2.5.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A client for the OpenStack Monasca API"
+HOMEPAGE="
+ https://github.com/openstack/python-monascaclient
+ https://opendev.org/openstack/python-octaviaclient
+ https://pypi.org/project/python-octaviaclient/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/osc-lib-1.8.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
+ >=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.12.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-multipart/Manifest b/dev-python/python-multipart/Manifest
new file mode 100644
index 000000000000..f2ef213f182f
--- /dev/null
+++ b/dev-python/python-multipart/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..a507be0a7892
--- /dev/null
+++ b/dev-python/python-multipart/metadata.xml
@@ -0,0 +1,9 @@
+<?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
new file mode 100644
index 000000000000..22607b1fd491
--- /dev/null
+++ b/dev-python/python-multipart/python-multipart-0.0.5.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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}]"
+BDEPEND="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-octaviaclient/Manifest b/dev-python/python-octaviaclient/Manifest
new file mode 100644
index 000000000000..101aadfdc35c
--- /dev/null
+++ b/dev-python/python-octaviaclient/Manifest
@@ -0,0 +1 @@
+DIST python-octaviaclient-2.5.0.tar.gz 92839 BLAKE2B 5b1c3c12f1dbf3d8162fd37dfe88984f6abf2ea2707ab24b712c257ce50d311e79633f731778a13fd2d4c302af80c84ca75c4b3ae764de81dd99f383503fadff SHA512 bb9c3fe2099ab00ea5a1a86a2391c84429e28c9d6bac668bee41048935fc05eee8aca05918a22825ad8c64d88d44379074f2a6e6a4e8ad315f965da6e7528ed0
diff --git a/dev-python/python-octaviaclient/metadata.xml b/dev-python/python-octaviaclient/metadata.xml
new file mode 100644
index 000000000000..40ddc78068a4
--- /dev/null
+++ b/dev-python/python-octaviaclient/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">
+ <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.5.0.ebuild b/dev-python/python-octaviaclient/python-octaviaclient-2.5.0.ebuild
new file mode 100644
index 000000000000..9061f96b4726
--- /dev/null
+++ b/dev-python/python-octaviaclient/python-octaviaclient-2.5.0.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A client for the Octavia Load Balancing"
+HOMEPAGE="
+ https://github.com/openstack/python-octaviaclient
+ https://opendev.org/openstack/python-octaviaclient
+ https://pypi.org/project/python-octaviaclient/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth-3.18.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-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_IGNORE=(
+ octaviaclient/tests/unit/test_hacking.py
+)
diff --git a/dev-python/python-pidfile/Manifest b/dev-python/python-pidfile/Manifest
new file mode 100644
index 000000000000..10bfee13cfd6
--- /dev/null
+++ b/dev-python/python-pidfile/Manifest
@@ -0,0 +1 @@
+DIST python-pidfile-3.0.0.tar.gz 2943 BLAKE2B aa56e04c22784fd35da236807d5ab3c472047983d7ad76ff6fc65e46133f36ac900dfd30b609a17fb3c4dd8589c4d4aa0f97eef5ced13095e49d82850f164f2e SHA512 82f87a2b3ac733ced78a87216f42b7fdc91f956fa9ec7e64f67ea5d53caf38652dc8b6e0518f6cfacf6bfe662c5d732f632b8f469af60555a8e6a43dbb99afbe
diff --git a/dev-python/python-pidfile/metadata.xml b/dev-python/python-pidfile/metadata.xml
new file mode 100644
index 000000000000..cbe3c6a539f0
--- /dev/null
+++ b/dev-python/python-pidfile/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>smaniotto.nicola@gmail.com</email>
+ <name>Nicola Smaniotto</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/python-pidfile/python-pidfile-3.0.0.ebuild b/dev-python/python-pidfile/python-pidfile-3.0.0.ebuild
new file mode 100644
index 000000000000..5408441a3361
--- /dev/null
+++ b/dev-python/python-pidfile/python-pidfile-3.0.0.ebuild
@@ -0,0 +1,24 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+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"
+KEYWORDS="~amd64"
+
+RESTRICT="test" # https://github.com/mosquito/python-pidfile/issues/7
+
+distutils_enable_tests unittest
+
+python_test() {
+ eunittest tests/
+}
diff --git a/dev-python/python-pkcs11/Manifest b/dev-python/python-pkcs11/Manifest
new file mode 100644
index 000000000000..662c8df3cc43
--- /dev/null
+++ b/dev-python/python-pkcs11/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..386a9beb889c
--- /dev/null
+++ b/dev-python/python-pkcs11/metadata.xml
@@ -0,0 +1,30 @@
+<?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
new file mode 100644
index 000000000000..e94f2b8b7fea
--- /dev/null
+++ b/dev-python/python-pkcs11/python-pkcs11-0.7.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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-qpid-proton/Manifest b/dev-python/python-qpid-proton/Manifest
new file mode 100644
index 000000000000..7361e22bb7e5
--- /dev/null
+++ b/dev-python/python-qpid-proton/Manifest
@@ -0,0 +1 @@
+DIST python-qpid-proton-0.37.0.tar.gz 406828 BLAKE2B f6a7411e4551d6cc416246e0abc925b06742e615463db0f6578907a73fe9b63addc0b67e192dcb9aeeb23a03acb39b0de4a6f9f03853ce817d342a662d763856 SHA512 9d6cf86145e6714cffeebc2e1f4ba84c84b96d2a63150177f24bad28b753a48834344e11037f012aede86c38c809d5b3e2d71be2ace1393c302ce7696e91bfe6
diff --git a/dev-python/python-qpid-proton/metadata.xml b/dev-python/python-qpid-proton/metadata.xml
new file mode 100644
index 000000000000..3f42991c26d8
--- /dev/null
+++ b/dev-python/python-qpid-proton/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="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">python-qpid-proton</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/python-qpid-proton/python-qpid-proton-0.37.0.ebuild b/dev-python/python-qpid-proton/python-qpid-proton-0.37.0.ebuild
new file mode 100644
index 000000000000..de46a235a86d
--- /dev/null
+++ b/dev-python/python-qpid-proton/python-qpid-proton-0.37.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="An AMQP based messaging library"
+HOMEPAGE="
+ https://qpid.apache.org/proton
+ https://pypi.org/project/python-qpid-proton/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
diff --git a/dev-python/python-saharaclient/Manifest b/dev-python/python-saharaclient/Manifest
new file mode 100644
index 000000000000..48edc0b8c1c9
--- /dev/null
+++ b/dev-python/python-saharaclient/Manifest
@@ -0,0 +1 @@
+DIST python-saharaclient-3.5.0.tar.gz 109169 BLAKE2B a10183f9a35f8f380852ab711884ba18e9ae39362d3859fc49b1a744132de52c08e2f615d8d04eeff5be5d05af006d6ae7a54a78908df84c898991a7d0859b54 SHA512 20de5a964891314043790de98a1cb77fe5aa59cdb309c419feb73cf2034313c5f3c1ea6ee7303a0599080c2215c9ef7db0141ba42978d5a840281ba005a20bc0
diff --git a/dev-python/python-saharaclient/metadata.xml b/dev-python/python-saharaclient/metadata.xml
new file mode 100644
index 000000000000..99da083afe19
--- /dev/null
+++ b/dev-python/python-saharaclient/metadata.xml
@@ -0,0 +1,14 @@
+<?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.5.0.ebuild b/dev-python/python-saharaclient/python-saharaclient-3.5.0.ebuild
new file mode 100644
index 000000000000..e6714e08201a
--- /dev/null
+++ b/dev-python/python-saharaclient/python-saharaclient-3.5.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=bdepend
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="This is a client for the OpenStack Sahara API, aka HADOOP"
+HOMEPAGE="
+ https://github.com/openstack/python-saharaclient
+ https://opendev.org/openstack/python-saharaclient
+ https://launchpad.net/python-saharaclient
+ https://pypi.org/project/python-saharaclient/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.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-2.18.0[${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}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-senlinclient/Manifest b/dev-python/python-senlinclient/Manifest
new file mode 100644
index 000000000000..ac51b1691134
--- /dev/null
+++ b/dev-python/python-senlinclient/Manifest
@@ -0,0 +1 @@
+DIST python-senlinclient-2.4.0.tar.gz 95000 BLAKE2B b6689df20e08f747e1c478b521525c1f0b0050b779837607446975baa6a95d7af536b1442306934058dc02c46d5e66c42bca30c08fdd6e824ee3b438db6d59c1 SHA512 0551fca8b72e333e039612dd6ed21b0e35036e7794043410097c5fec013af38237e7d59a2fa1bb2171f7da261ef62696c02b3ff17ba60a0a82a0f292d99afffa
diff --git a/dev-python/python-senlinclient/metadata.xml b/dev-python/python-senlinclient/metadata.xml
new file mode 100644
index 000000000000..66c4cb195098
--- /dev/null
+++ b/dev-python/python-senlinclient/metadata.xml
@@ -0,0 +1,14 @@
+<?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.4.0.ebuild b/dev-python/python-senlinclient/python-senlinclient-2.4.0.ebuild
new file mode 100644
index 000000000000..5758398f6426
--- /dev/null
+++ b/dev-python/python-senlinclient/python-senlinclient-2.4.0.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+EPYTEST_IGNORE=( senlinclient/tests/functional )
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A client for the OpenStack Senlin API"
+HOMEPAGE="
+ https://github.com/openstack/python-senlinclient
+ https://opendev.org/openstack/python-senlinclient
+ https://launchpad.net/python-senlinclient
+ https://pypi.org/project/python-senlinclient/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.2[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth-3.11.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-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/python-heatclient-1.10.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-5.3.1[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/tempest-17.1.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-telegram-bot/Manifest b/dev-python/python-telegram-bot/Manifest
new file mode 100644
index 000000000000..2afb32a7b2c3
--- /dev/null
+++ b/dev-python/python-telegram-bot/Manifest
@@ -0,0 +1 @@
+DIST python-telegram-bot-13.1.tar.gz 1998020 BLAKE2B 376402c28245b6a6a516c58be0f730b1e8d98b8f829d705355415afc3d702f1b35f29988a2600b13a6f346d524016499fafee51ae8b81042a5e074e34c222961 SHA512 ff51b0490d159de4cbc2a273f1011d63d71b1d83ae1850ca3967d63386f1580e9ce9f641cb8de0b99c629660f6143dfcdef8c6f49fc91a888efd43132b1697c0
diff --git a/dev-python/python-telegram-bot/metadata.xml b/dev-python/python-telegram-bot/metadata.xml
new file mode 100644
index 000000000000..01c1fc848759
--- /dev/null
+++ b/dev-python/python-telegram-bot/metadata.xml
@@ -0,0 +1,8 @@
+<?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>
+</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
new file mode 100644
index 000000000000..84652c4d741f
--- /dev/null
+++ b/dev-python/python-telegram-bot/python-telegram-bot-13.1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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-9999.ebuild b/dev-python/python-telegram-bot/python-telegram-bot-9999.ebuild
new file mode 100644
index 000000000000..6fda0de2b0dc
--- /dev/null
+++ b/dev-python/python-telegram-bot/python-telegram-bot-9999.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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"
+
+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-troveclient/Manifest b/dev-python/python-troveclient/Manifest
new file mode 100644
index 000000000000..731ca03ee309
--- /dev/null
+++ b/dev-python/python-troveclient/Manifest
@@ -0,0 +1 @@
+DIST python-troveclient-7.2.0.tar.gz 191972 BLAKE2B f3473856cd07b91e948392c52d307900cd79882d04b0e72c5e9a91938354be434a31e1f233432e650e7a808431025381ae9166af5117f23d6883f6f473eb522b SHA512 701d0e0be44f57f7798b91b90419e0ce26dda3d0f37532284cb0544b9a2f352a7b0ab816bdee4e63e210cf119e4c7e41dca0163c8ff5171958a57916cfc5a912
diff --git a/dev-python/python-troveclient/metadata.xml b/dev-python/python-troveclient/metadata.xml
new file mode 100644
index 000000000000..11ac660c783c
--- /dev/null
+++ b/dev-python/python-troveclient/metadata.xml
@@ -0,0 +1,14 @@
+<?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-7.2.0.ebuild b/dev-python/python-troveclient/python-troveclient-7.2.0.ebuild
new file mode 100644
index 000000000000..572305d91b1b
--- /dev/null
+++ b/dev-python/python-troveclient/python-troveclient-7.2.0.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A client for the OpenStack Trove API, a scalable relational database service"
+HOMEPAGE="
+ https://github.com/openstack/python-troveclient
+ https://opendev.org/openstack/python-troveclient
+ https://launchpad.net/python-troveclient
+ https://pypi.org/project/python-troveclient/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.2[${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/keystoneauth-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/python-swiftclient-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/python-mistralclient-3.1.0[${PYTHON_USEDEP}]
+ >=dev-python/osc-lib-1.8.0[${PYTHON_USEDEP}]
+ >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/httplib2-0.9.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-vitrageclient/Manifest b/dev-python/python-vitrageclient/Manifest
new file mode 100644
index 000000000000..0b5eaf4ecdf3
--- /dev/null
+++ b/dev-python/python-vitrageclient/Manifest
@@ -0,0 +1 @@
+DIST python-vitrageclient-4.5.0.tar.gz 51797 BLAKE2B 2feff696952380fd4abe60f2f9aa35d166055aa968e850cac83bea1fa1423127b18b6ff30bc2bc48511a42181123dd539f74ff8c3761367b63b264e2838b7db2 SHA512 06f8a939140632362291e37bca4d6b793ea367957cc5c8316a6a471310c2ee2b525749917b8554e5bcf795d9af61175db3f7cfc84e9a2be406a9ea4deabdd2be
diff --git a/dev-python/python-vitrageclient/metadata.xml b/dev-python/python-vitrageclient/metadata.xml
new file mode 100644
index 000000000000..d7d03a16545b
--- /dev/null
+++ b/dev-python/python-vitrageclient/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">
+ <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.5.0.ebuild b/dev-python/python-vitrageclient/python-vitrageclient-4.5.0.ebuild
new file mode 100644
index 000000000000..7cf64e49549b
--- /dev/null
+++ b/dev-python/python-vitrageclient/python-vitrageclient-4.5.0.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A client for the OpenStack Vitrage API"
+HOMEPAGE="
+ https://github.com/openstack/python-vitrageclient
+ https://opendev.org/openstack/python-vitrageclient
+ https://launchpad.net/python-vitrageclient
+ https://pypi.org/project/python-vitrageclient/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-3.1.1[${PYTHON_USEDEP}]
+ >=dev-python/cliff-2.8.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}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/subunit-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.3.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.5.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-zaqarclient/Manifest b/dev-python/python-zaqarclient/Manifest
new file mode 100644
index 000000000000..4654ae8807af
--- /dev/null
+++ b/dev-python/python-zaqarclient/Manifest
@@ -0,0 +1 @@
+DIST python-zaqarclient-2.3.0.tar.gz 90878 BLAKE2B 52cd86d9875fe2bd1ec1cb5a2a3864733cd786333dfb649ef317b106ad552ca6c81db1baf67ef7c0c950faf717e54e8754a8173c2d191d479fdd06e03dea9f0a SHA512 9a88fc285eabed82a04d988e35ce90e668d436f3faab5b0db0ffca5122af4b633b9b7a7e40ff18d17ed9c6406ae223f0c900327d5bb408bb8de29169720f8635
diff --git a/dev-python/python-zaqarclient/metadata.xml b/dev-python/python-zaqarclient/metadata.xml
new file mode 100644
index 000000000000..4012158792b7
--- /dev/null
+++ b/dev-python/python-zaqarclient/metadata.xml
@@ -0,0 +1,14 @@
+<?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.3.0.ebuild b/dev-python/python-zaqarclient/python-zaqarclient-2.3.0.ebuild
new file mode 100644
index 000000000000..581f1f5e2da4
--- /dev/null
+++ b/dev-python/python-zaqarclient/python-zaqarclient-2.3.0.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=bdepend
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A client for the OpenStack Zaqar API"
+HOMEPAGE="
+ https://github.com/openstack/python-zaqarclient
+ https://pypi.org/project/python-zaqarclient/
+ https://launchpad.net/python-zaqarclient
+ https://opendev.org/openstack/python-zaqarclient
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+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/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}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-zunclient/Manifest b/dev-python/python-zunclient/Manifest
new file mode 100644
index 000000000000..683d0bf06963
--- /dev/null
+++ b/dev-python/python-zunclient/Manifest
@@ -0,0 +1 @@
+DIST python-zunclient-4.4.0.tar.gz 119253 BLAKE2B bb532e6ef916491b1663436a71918c69601cf7fd18aa69cf645662249d6ca5d18c673ae2c5c2e27801a1a2c7e4d0df20eb7f0d14a61939eb597197d256844981 SHA512 869da6f89cb52d70f77292ce841cd48369ac042ef3564bb1b00e810992edc4cb35fda518039bfa4df3bc2b6f1b07825e26c49953b0e67329138d45af3150a0ec
diff --git a/dev-python/python-zunclient/metadata.xml b/dev-python/python-zunclient/metadata.xml
new file mode 100644
index 000000000000..a130b3036be2
--- /dev/null
+++ b/dev-python/python-zunclient/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">
+ <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.4.0.ebuild b/dev-python/python-zunclient/python-zunclient-4.4.0.ebuild
new file mode 100644
index 000000000000..6a0ddb2cdd28
--- /dev/null
+++ b/dev-python/python-zunclient/python-zunclient-4.4.0.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A client for the OpenStack Zun API"
+HOMEPAGE="
+ https://github.com/openstack/python-zunclient
+ https://pypi.org/project/python-zunclient/
+ https://launchpad.net/python-zunclient
+ https://opendev.org/openstack/python-zunclient
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7.1[${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.4.2[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.13[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/tempest-17.1.0[${PYTHON_USEDEP}]
+ >=dev-python/testresources-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python_jwt/Manifest b/dev-python/python_jwt/Manifest
new file mode 100644
index 000000000000..e621bf7602ab
--- /dev/null
+++ b/dev-python/python_jwt/Manifest
@@ -0,0 +1 @@
+DIST python_jwt-3d9747df616d209c07bffe2bcf28b42e92a7d8d4.tar.gz 239032 BLAKE2B 2221d0445898ff1fa7737369e6488cf87287b359751113df61f4677bc9a31d3c90790c77bbaa4df08789019bca93c432dca96245ff28fa931557c046bc705f83 SHA512 43896e20bb2104d43b800f86342035d9eea3a0c70175c47d7875fa9b926dbb7c0f2840a68f25bdae5689df1f80198f74a7738c6a5a19d30748d53c1ebac39cf5
diff --git a/dev-python/python_jwt/metadata.xml b/dev-python/python_jwt/metadata.xml
new file mode 100644
index 000000000000..1fb50e120631
--- /dev/null
+++ b/dev-python/python_jwt/metadata.xml
@@ -0,0 +1,22 @@
+<?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">
+Module for generating and verifying JSON Web Tokens.
+
+ Note: From version 2.0.1 the namespace has changed from jwt to python_jwt, in order to avoid conflict with PyJWT.
+ Note: Versions 1.0.0 and later fix a vulnerability in JSON Web Token verification so please upgrade if you're using this functionality. The API has changed so you will need to update your application. verify_jwt now requires you to specify which signature algorithms are allowed.
+ Uses jwcrypto to do the heavy lifting.
+ Supports RS256, RS384, RS512, PS256, PS384, PS512, HS256, HS384, HS512, ES256, ES384, ES512, ES256K, EdDSA and none signature algorithms.
+ Unit tests, including tests for interoperability with jose.
+ Supports Python 2,7 and 3.6+. Note: generate_jwt returns the token as a Unicode string, even on Python 2.7.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">davedoesdev/python-jwt</remote-id>
+ <remote-id type="pypi">python-jwt</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/python_jwt/python_jwt-3.3.2.ebuild b/dev-python/python_jwt/python_jwt-3.3.2.ebuild
new file mode 100644
index 000000000000..e10dddca6834
--- /dev/null
+++ b/dev-python/python_jwt/python_jwt-3.3.2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+COMMIT="3d9747df616d209c07bffe2bcf28b42e92a7d8d4"
+MYPN="${PN/_/-}"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python module for generating and verifying JSON Web Tokens"
+HOMEPAGE="
+ https://github.com/davedoesdev/python-jwt
+ https://pypi.org/project/python-jwt/
+"
+SRC_URI="https://github.com/davedoesdev/${MYPN}/archive/${COMMIT}.tar.gz -> ${PN}-${COMMIT}.tar.gz"
+S="${WORKDIR}/${MYPN}-${COMMIT}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+RDEPEND=">=dev-python/jwcrypto-1.0.0[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/coverage-4.0.3[${PYTHON_USEDEP}]
+ >=dev-python/gevent-1.2.2[${PYTHON_USEDEP}]
+ >=dev-python/pyVows-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/mock-1.3.0[${PYTHON_USEDEP}]
+ )
+"
+
+RESTRICT="!test? ( test )"
+
+python_test() {
+ "${EPYTHON}" test/run/run_pyvows.py -v test || die
+}
diff --git a/dev-python/pywebview/Manifest b/dev-python/pywebview/Manifest
new file mode 100644
index 000000000000..5c29729f0d40
--- /dev/null
+++ b/dev-python/pywebview/Manifest
@@ -0,0 +1,2 @@
+DIST pywebview-3.5.tar.gz 336741 BLAKE2B 332a71499d034acb94e2151771399007d441d85485bf596fb510e7513a417ac8dd1f1091db7796a767b535089d024affaea979567d6992f1bbe1154452cfcd80 SHA512 0d4e60a1389a11a9406634ac05446bc11bdea30ed4d81aca311ef01d8e9613d3582cf480c0a79bfe2b5a8c803c56c437abc0bb86ef4ba243bff638fcd6de9490
+DIST pywebview-3.6.1.tar.gz 338235 BLAKE2B 6376ee4f6bea245e1583414a0203bfed518f84cc64480a451e0b445c2b43f1d532c99dbf1403bca54f2e2b71859262e451b23be231578c91372d5691ffcbff37 SHA512 0877981f66c34f72d8c216c5e5167df2bf3c9b4bdd597e1ddde64958ab31e683d722df51e4638510cfa02f382f879340da6ce1b55760b792c215d4c826233f84
diff --git a/dev-python/pywebview/metadata.xml b/dev-python/pywebview/metadata.xml
new file mode 100644
index 000000000000..5533c93d756a
--- /dev/null
+++ b/dev-python/pywebview/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@tastytea.de</email>
+ <name>Ronny (tastytea) Gutbrod</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/pywebview/pywebview-3.5.ebuild b/dev-python/pywebview/pywebview-3.5.ebuild
new file mode 100644
index 000000000000..373186f2c114
--- /dev/null
+++ b/dev-python/pywebview/pywebview-3.5.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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"
+IUSE="gtk qt5"
+REQUIRED_USE="|| ( gtk qt5 )"
+
+RDEPEND="
+ gtk? (
+ dev-python/pygobject[cairo,${PYTHON_USEDEP}]
+ net-libs/webkit-gtk
+ )
+ qt5? ( dev-python/PyQtWebEngine[${PYTHON_USEDEP}] )
+"
diff --git a/dev-python/pywebview/pywebview-3.6.1.ebuild b/dev-python/pywebview/pywebview-3.6.1.ebuild
new file mode 100644
index 000000000000..368325184549
--- /dev/null
+++ b/dev-python/pywebview/pywebview-3.6.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2020-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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"
+IUSE="gtk qt5"
+REQUIRED_USE="|| ( gtk qt5 )"
+
+RDEPEND="
+ dev-python/proxy_tools
+ gtk? (
+ dev-python/pygobject[cairo,${PYTHON_USEDEP}]
+ net-libs/webkit-gtk
+ )
+ qt5? (
+ dev-python/pyside2[${PYTHON_USEDEP}]
+ dev-python/QtPy[${PYTHON_USEDEP}]
+ )
+"
diff --git a/dev-python/qiskit-aer/Manifest b/dev-python/qiskit-aer/Manifest
new file mode 100644
index 000000000000..c71d77b9ad68
--- /dev/null
+++ b/dev-python/qiskit-aer/Manifest
@@ -0,0 +1 @@
+DIST qiskit-aer-0.10.3.tar.gz 6657490 BLAKE2B 443f7df2259c720fb93a60659da9b1cded25f9dbdf585bd0322e9f4effe4c5955daf6587d6c3964ab4a7e4a8bf6270f857abae1cf4e6b0718801daa6a96c2aec SHA512 c882624bac373566b003a01fffa6963d4ad8796ce18786b50ef85350daac26814c147b36067eb6fce4f264919b3680246e767b5c13ac338817fd394620392079
diff --git a/dev-python/qiskit-aer/files/qiskit-aer-0.10.3-remove-cmake-dependency.patch b/dev-python/qiskit-aer/files/qiskit-aer-0.10.3-remove-cmake-dependency.patch
new file mode 100644
index 000000000000..44917bbf8cca
--- /dev/null
+++ b/dev-python/qiskit-aer/files/qiskit-aer-0.10.3-remove-cmake-dependency.patch
@@ -0,0 +1,10 @@
+--- a/setup.py 2022-02-09 17:41:55.000000000 +0100
++++ b/setup.py 2022-03-02 14:44:04.344551645 +0100
+@@ -72,7 +72,6 @@
+
+ setup_requirements = common_requirements + [
+ 'scikit-build>=0.11.0',
+- 'cmake!=3.17,!=3.17.0',
+ 'pybind11>=2.6',
+ ]
+
diff --git a/dev-python/qiskit-aer/metadata.xml b/dev-python/qiskit-aer/metadata.xml
new file mode 100644
index 000000000000..78ba94b392af
--- /dev/null
+++ b/dev-python/qiskit-aer/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- comaintainers-welcomed -->
+ <maintainer type="person">
+ <email>gaboroszkar@protonmail.com</email>
+ <name>Gábor Oszkár Dénes</name>
+ </maintainer>
+ <longdescription>
+ Qiskit is an open-source framework for working with noisy quantum computers at the level of pulses, circuits, and algorithms.
+ Qiskit is made up of elements that each work together to enable quantum computing. This element is Aer, which provides high-performance quantum computing simulators with realistic noise models.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-python/qiskit-aer/qiskit-aer-0.10.3.ebuild b/dev-python/qiskit-aer/qiskit-aer-0.10.3.ebuild
new file mode 100644
index 000000000000..1016ff037532
--- /dev/null
+++ b/dev-python/qiskit-aer/qiskit-aer-0.10.3.ebuild
@@ -0,0 +1,92 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="High performance simulator for quantum circuits that includes noise models"
+HOMEPAGE="https://github.com/Qiskit/qiskit-aer"
+SRC_URI="https://github.com/Qiskit/qiskit-aer/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# The reference implementation of BLAS/CBLAS is not compatible with qiskit-aer right now,
+# because importing library causes an error.
+# /usr/lib/python3.9/site-packages/qiskit/providers/aer/backends/controller_wrappers.cpython-39-x86_64-linux-gnu.so: undefined symbol: slamch_
+# Using sci-libs/openblas instead here,
+# with the option to switch between reference/openblas implementation runtime (eselect-ldso).
+COMMON_DEPEND="
+ >=dev-python/numpy-1.16.3[${PYTHON_USEDEP}]
+ >=dev-cpp/nlohmann_json-3.1.1
+ >=dev-libs/spdlog-1.5.0
+ >=dev-cpp/muParserX-4.0.8
+ virtual/cblas[eselect-ldso]
+ sci-libs/openblas[eselect-ldso]"
+
+BDEPEND="
+ ${COMMON_DEPEND}
+ >dev-util/cmake-3.17
+ >=dev-python/scikit-build-0.11.0[${PYTHON_USEDEP}]
+ >=dev-python/pybind11-2.6[${PYTHON_USEDEP}]
+ test? (
+ dev-python/ddt[${PYTHON_USEDEP}]
+ dev-python/fixtures[${PYTHON_USEDEP}]
+ )"
+
+RDEPEND="
+ ${COMMON_DEPEND}
+ >=dev-python/qiskit-terra-0.19.1[${PYTHON_USEDEP}]
+ >=dev-python/scipy-1.0[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
+
+# Remove cmake dependency from setup.py because of
+# invalid dependency description. We put this dependency check in BDEPEND.
+PATCHES=( "${FILESDIR}/qiskit-aer-0.10.3-remove-cmake-dependency.patch" )
+
+check_openblas() {
+ local libdir=$(get_libdir) me="openblas"
+
+ # check blas
+ local current_blas=$(eselect blas show ${libdir} | cut -d' ' -f2)
+ if [[ ${current_blas} != "${me}" ]]; then
+ eerror "Current eselect: BLAS/CBLAS ($libdir) -> [${current_blas}]."
+ eerror "To use qiskit-aer, you have to issue (as root):"
+ eerror "\t eselect blas set ${libdir} ${me}"
+ return 1
+ fi
+ return 0
+}
+
+pkg_setup() {
+ if use test; then
+ check_openblas
+ if [ $? -ne 0 ]; then
+ die "Set blas implementation to openblas using 'eselect blas set openblas'!"
+ fi
+ fi
+}
+
+python_prepare_all() {
+ export DISABLE_CONAN="ON"
+ export DISABLE_DEPENDENCY_INSTALL="ON"
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ # We have to hide the source code directory so tests
+ # do not use these, but instead the compiled library.
+ mv qiskit qiskit.hidden || die
+ epytest
+ mv qiskit.hidden qiskit || die
+}
+
+pkg_postinst() {
+ check_openblas
+}
diff --git a/dev-python/qiskit-terra/Manifest b/dev-python/qiskit-terra/Manifest
new file mode 100644
index 000000000000..ab8d976069fd
--- /dev/null
+++ b/dev-python/qiskit-terra/Manifest
@@ -0,0 +1 @@
+DIST qiskit-terra-0.19.2.tar.gz 9536647 BLAKE2B 966370a782179512f3c4cd209f604f536ac4ac503f4805681d5729f4d6df4020bbaa5a2beb2fc393506eaa67a81666254375f14b827e07e1c1478a381fde5b45 SHA512 d02c028a86927610f1bca63830cb489069e68e016ed744a4092a96ddde163ea8ca1071048fc82b1807d4136e1fb2b0fcdde6d1a639ffc2ebe7c99dfd50c2e3d4
diff --git a/dev-python/qiskit-terra/files/qiskit-terra-0.19.2-test-corrections.patch b/dev-python/qiskit-terra/files/qiskit-terra-0.19.2-test-corrections.patch
new file mode 100644
index 000000000000..ec44ebe75faa
--- /dev/null
+++ b/dev-python/qiskit-terra/files/qiskit-terra-0.19.2-test-corrections.patch
@@ -0,0 +1,36 @@
+diff --git a/test/python/qobj/test_pulse_converter.py b/test/python/qobj/test_pulse_converter.py
+index ea5b77e78..cde568ecf 100644
+--- a/test/python/qobj/test_pulse_converter.py
++++ b/test/python/qobj/test_pulse_converter.py
+@@ -341,7 +341,8 @@ class TestQobjToInstructionConverter(QiskitTestCase):
+
+ self.assertEqual(evaluated_instruction.start_time, 1)
+ self.assertEqual(evaluated_instruction.duration, 1)
+- self.assertEqual(evaluated_instruction.instructions[0][-1], instruction)
++ self.assertEqual(evaluated_instruction.instructions[0][-1].channel, instruction.channel)
++ self.assertAlmostEqual(evaluated_instruction.instructions[0][-1].frequency, instruction.frequency)
+
+ def test_delay(self):
+ """Test converted qobj from Delay."""
+diff --git a/test/randomized/test_transpiler_equivalence.py b/test/randomized/test_transpiler_equivalence.py
+index 302760279..1d0a3e16f 100644
+--- a/test/randomized/test_transpiler_equivalence.py
++++ b/test/randomized/test_transpiler_equivalence.py
+@@ -21,7 +21,7 @@ from hypothesis.stateful import Bundle, RuleBasedStateMachine
+
+ import hypothesis.strategies as st
+
+-from qiskit import execute, transpile, Aer
++from qiskit import execute, transpile, BasicAer
+ from qiskit import QuantumCircuit, QuantumRegister, ClassicalRegister
+ from qiskit.circuit import Measure, Reset, Gate, Barrier
+ from qiskit.test.mock import (
+@@ -98,7 +98,7 @@ class QCircuitMachine(RuleBasedStateMachine):
+ qubits = Bundle("qubits")
+ clbits = Bundle("clbits")
+
+- backend = Aer.get_backend("qasm_simulator")
++ backend = BasicAer.get_backend("qasm_simulator")
+ max_qubits = int(backend.configuration().n_qubits / 2)
+
+ def __init__(self):
diff --git a/dev-python/qiskit-terra/metadata.xml b/dev-python/qiskit-terra/metadata.xml
new file mode 100644
index 000000000000..0ff9a7974cce
--- /dev/null
+++ b/dev-python/qiskit-terra/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- comaintainers-welcomed -->
+ <maintainer type="person">
+ <email>gaboroszkar@protonmail.com</email>
+ <name>Gábor Oszkár Dénes</name>
+ </maintainer>
+ <longdescription>
+ Qiskit is an open-source framework for working with noisy quantum computers at the level of pulses, circuits, and algorithms.
+ Qiskit is made up of elements that work together to enable quantum computing. This element is Terra and is the foundation on which the rest of Qiskit is built.
+ </longdescription>
+ <use>
+ <flag name="visualization">Enable visualization modules</flag>
+ </use>
+</pkgmetadata>
diff --git a/dev-python/qiskit-terra/qiskit-terra-0.19.2.ebuild b/dev-python/qiskit-terra/qiskit-terra-0.19.2.ebuild
new file mode 100644
index 000000000000..dd47bb480367
--- /dev/null
+++ b/dev-python/qiskit-terra/qiskit-terra-0.19.2.ebuild
@@ -0,0 +1,70 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Terra is the foundation on which Qiskit is built"
+HOMEPAGE="https://github.com/Qiskit/qiskit-terra"
+SRC_URI="https://github.com/Qiskit/qiskit-terra/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="+visualization"
+KEYWORDS="~amd64"
+
+BDEPEND=">=dev-python/cython-0.27.1[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/ddt-1.4.4[${PYTHON_USEDEP}]
+ >=dev-python/hypothesis-4.24.3[${PYTHON_USEDEP}]
+ >=dev-python/networkx-2.2[${PYTHON_USEDEP}]
+ app-text/poppler[png]
+ >=sci-libs/scikit-learn-0.20.0[${PYTHON_USEDEP}]
+ )"
+
+RDEPEND="
+ >=dev-python/retworkx-0.10.1[${PYTHON_USEDEP}]
+ >=dev-python/numpy-1.17[${PYTHON_USEDEP}]
+ >=dev-python/ply-3.10[${PYTHON_USEDEP}]
+ >=dev-python/psutil-5[${PYTHON_USEDEP}]
+ >=dev-python/scipy-1.5[${PYTHON_USEDEP}]
+ >=dev-python/sympy-1.3[${PYTHON_USEDEP}]
+ >=dev-python/dill-0.3[${PYTHON_USEDEP}]
+ >=dev-python/python-constraint-1.4[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/symengine-0.8[${PYTHON_USEDEP}]
+ >=dev-python/tweedledum-1.1[${PYTHON_USEDEP}]
+ visualization? (
+ >=dev-python/matplotlib-3.3[${PYTHON_USEDEP}]
+ >=dev-python/ipywidgets-7.3.0[${PYTHON_USEDEP}]
+ dev-python/pydot[${PYTHON_USEDEP}]
+ >=dev-python/pillow-4.2.1[${PYTHON_USEDEP}]
+ >=dev-python/pylatexenc-1.4[${PYTHON_USEDEP}]
+ >=dev-python/seaborn-0.9.0[${PYTHON_USEDEP}]
+ >=dev-python/pygments-2.4[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests pytest
+
+# Small issues with the tests.
+# qiskit.Aer module depends on qiskit-terra, it cannot be used,
+# and an exact comparison of float switched to approximate comparison.
+PATCHES=( "${FILESDIR}/qiskit-terra-0.19.2-test-corrections.patch" )
+
+python_test() {
+ # We have to hide the source code directory so tests
+ # do not use these, but instead the compiled library.
+ mv qiskit qiskit.hidden || die
+
+ # Some small tests are failing which test optional features.
+ # Why they fail is still under investigation.
+ # transpiler_equivalence tests take too long time, they are also skipped.
+ epytest -k 'not (TestOptions and test_copy) and not TestUnitarySynthesisPlugin and not test_transpiler_equivalence and not (TestPauliSumOp and test_to_instruction)'
+
+ mv qiskit.hidden qiskit || die
+}
diff --git a/dev-python/recordclass/Manifest b/dev-python/recordclass/Manifest
new file mode 100644
index 000000000000..c0760ac0eb1f
--- /dev/null
+++ b/dev-python/recordclass/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..a1bd8ff7cb29
--- /dev/null
+++ b/dev-python/recordclass/metadata.xml
@@ -0,0 +1,7 @@
+<?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
new file mode 100644
index 000000000000..347a6f2abc18
--- /dev/null
+++ b/dev-python/recordclass/recordclass-0.14.3.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/redbaron/Manifest b/dev-python/redbaron/Manifest
new file mode 100644
index 000000000000..fc44a7a90d99
--- /dev/null
+++ b/dev-python/redbaron/Manifest
@@ -0,0 +1,2 @@
+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
new file mode 100644
index 000000000000..325307d162da
--- /dev/null
+++ b/dev-python/redbaron/metadata.xml
@@ -0,0 +1,9 @@
+<?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">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
new file mode 100644
index 000000000000..420ad9e5429f
--- /dev/null
+++ b/dev-python/redbaron/redbaron-0.9.2.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..420ad9e5429f
--- /dev/null
+++ b/dev-python/redbaron/redbaron-0.9.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/retworkx/Manifest b/dev-python/retworkx/Manifest
new file mode 100644
index 000000000000..692e30950f56
--- /dev/null
+++ b/dev-python/retworkx/Manifest
@@ -0,0 +1,65 @@
+DIST ahash-0.7.6.crate 38030 BLAKE2B aca3661477fcd7822d6d10970151e05c28e1615f8cd7ddaac064b15102027e404b19b0f3f16dd76145048594ea1c22ae27dd08cc05c411efbae9ec7a1ef55ce9 SHA512 61354688b6fb096359faefb6f34be958cd2215d56b88c22c737d24183eaad433f811bc9e64f927e4852c87d2799c22fda82b55cfbef2ed6357ff74f0c4ffec68
+DIST autocfg-1.0.1.crate 12908 BLAKE2B 40c53cab298e4f26634c3acff3ece6a3371188d91dbf377ed664eabedcde20536edaa93daf406618f37edde019f049a6e7b9a47f627344587dbd126bee2b5e3a SHA512 630b348acb98b012e97804e6325d03c89abc22f2157762c59144c04e6c733daf550bdc7f0fe0b9f3b50e15dae8c1c3c4bdfce3d805b02f0fc987311f5332419b
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+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 crossbeam-channel-0.5.1.crate 86919 BLAKE2B b223d0dcacbb09850d457825cb2a018494d798d0000a20eed3f54b1152e41ebca4698e7d50e81f467b86543779155ad08566da9496eee36aa06644b69cf5d7eb SHA512 f15aff67e9105584f5fe41e1ee650ae4fdd0d0ca0fa9202ee83c6f6025398a300decaa50d1b4682e8afb9bd6e11e95b69bcf23f68ae117419aa84df14ee7747b
+DIST crossbeam-deque-0.8.1.crate 20852 BLAKE2B 0e7a2616b82c5e501c0f74935adfea3ee09db5475408be83db8f1b6faab4cd5509de2e029bdf6df90435e474ef91f3fc8d482ce3a72966b2a3bec5967666bdc4 SHA512 44a4fe1d4ab7457e2b0950be787b76b15e1bb0b1c108d032381ce3fe99bf7bf76f3d1718085660083d813e2639e66fdd3635d9186e85a9eb7267063b117eaca4
+DIST crossbeam-epoch-0.9.5.crate 43883 BLAKE2B c0ee0879c583bd1051b63d29eccac37ceb9f9446ee8cb64756b2e3d95a30c5c11bc79d9d460be4ef4b62513049e28900a96085031f805d064e81b5eae4bc297a SHA512 ad822e967e5ef45fa0c4a939f057f44146f1f051032fd032355a75c0f45ae4e0a55e1d31c80bc67c01ff8d9c87a51aba7ccfe9a440f061fd8225c879aa663064
+DIST crossbeam-utils-0.8.5.crate 38414 BLAKE2B 8a10162cbc54f77737602b6f8574b65a02765577f0e2f59d71e1d87662180fe24a781df542f3e765c4d64b7a0666575157e000766dac138bd4fc0356944092ad SHA512 fd4d2ae10340bb96c22b31190b300aab54e96b8089fd62489e102c76a944e6a16c582a90bc40f5e188f13f841293a4b9becf30830c2ece04f3ce78c29066532f
+DIST either-1.6.1.crate 13641 BLAKE2B e5f40c40a5edb6dcb07a10bf79183cbe42438f1f70f3932dce72f6f6e91f75f24d17d82bc447507def4dad4345ffc9dd9162dde778afb253bdb1218e91887949 SHA512 4bfe56920e30cbc8eb4f90162db618f7dca653b42db35ab6a7045d3fd9a24ceb1778b1f79613850bdb1a87ad3794fa0d73015e46c48d513f368d8c3776fc9ddf
+DIST fixedbitset-0.4.1.crate 15551 BLAKE2B bcebd833a45215566a565bcc8cc3440c5bacbced810d2658048da7050808b56c13951bacdd3930f85530129a118bdc23c42381206b63265da7d6846085937536 SHA512 8c53515f1a372a2626e83bc6999adaa00be6451f68627a63e0207ce6a8967e9cab6061adde3e33305c700c472be750903eb36b6f5ce071248db461c0af450b33
+DIST getrandom-0.2.3.crate 26261 BLAKE2B 3e52a87b9355f850e07e5080c20e1ab3acfa927bae28c63bb8bfd6a773ad77be96d3ba770c344631cc0f2d9a95aac920790173168b102e25f50480ee96663569 SHA512 e6da64ed529cb0fc000b613f75187ed6b20f716e721d8a02ac2ae39c507fb9f6189ebb66b522d28584eff1e7e9efc274cad6bfe43f464f58053701e1d51c603d
+DIST hashbrown-0.11.2.crate 85713 BLAKE2B 402f9f1bdcb92631206f9b72923ee35e28db8623e87469c0f1496664bc7185077013ab3c8aea68268241e5b2504f10cddc613a350abd4291050deda6c112e559 SHA512 c21ca68fd49bbb741901f59fed04cc124b8da99e2a4dfc26e2e5e1140637872b344612a01691bd30cc771575c571be15f756c84dde225441699cd2322af2ad6c
+DIST hermit-abi-0.1.19.crate 9979 BLAKE2B 801e8052b85341cca388ada9db4b06bb1bd7b64474185b2ad06c0256b9e597639bd3dd4ba0053ea010f922e53969a4ab47b90d451fd9b94c8f2324055d151ea1 SHA512 1c877fcd562b15d2de9c151fd6c5f3ea4bf48abcb799e6139a180ffad5d64b632f0000d5707bbd92ff23a0e5f349157b9e0f5be8b50f03680b0fa47315dbb78a
+DIST indexmap-1.7.0.crate 50363 BLAKE2B b45318ae2a6e1f008494db77a3159eea3fed4f77eb04ae65599be9392d6ef78d4677b65d04fefab8f917f6808fee821a33bcf53a50b88785fae5ef6848e3a08a SHA512 9b882b4a7068a686acaee0a08bd4f3b35b58d36e786358cf14a3436eb61339649e64f1757331cc7833a2fa364c76eb6b75cf0c732afaeb202113de1e66b72ab9
+DIST indoc-0.3.6.crate 9663 BLAKE2B ca7a1f4d3cbedbee0ba0a3f19c4b3352ff90927eef744b7e4f1d60855d4dc4265202972e81e0fc06d1222d8d5fb322efc4ef669af7396b251248a1e45c91def2 SHA512 e900aa3b001df0fdbf1f543d8b679af317e85a1f95e26fc556213f2826a4f6c82d8c4f3f82de435e3591f8bc14e78eb22668d901dcbe2287f46740e0291afacd
+DIST indoc-impl-0.3.6.crate 7933 BLAKE2B 93e232e360e8f02943ef9a9cabf16bc863d792d8096b8d9a13a07f0b7b396db590abf83b5444f082317059dad7578ffae974dbc8a7e56fbdbab817b7d2534725 SHA512 18406587ee56a09dd2062cee456af697efa903343de42c0ff618a64ddf2bf7efed5da02e7220fed2636c555a6ae18059018f5c3c9b44ba8d3e5a34ea5b53c806
+DIST instant-0.1.10.crate 5218 BLAKE2B 1e4203d235006ca922134c715781a5bda5a932f6740b7e22505db21d3b675758bce10dbb370e96694574c40c43a1d71ea2e6372df7116b30fe8cb0b65a3b95fe SHA512 a6b2c7e0a7b954e961f2d904a4cd6f701617ad70a7ea13230ee157c473c903803dd64596baa0fabd075e995cd3d013e10681c8d712977341ea2b6f97dd48d596
+DIST lazy_static-1.4.0.crate 10443 BLAKE2B 25b2e61bbac48f0dcbc79c81d7bf01f2403d8269ecb6be3ea6147bd00f7a588df15a91f44dfc18ada19b21faa71de4637c7d493a8628cbecd0e547d74e616a23 SHA512 e124c0521ec7c950f3c4a066821918da7a9c6e711115d98009ae7c351928fdddead852e7596fea5937a9c30e4e4ce8eee7099b20248b5d6e3b2494b6a6d88cb8
+DIST libc-0.2.101.crate 530003 BLAKE2B 55be777a0ab91df07e06f8c5045fa49dcb356eddcda2feb3a16949afbfb395abb3a50a97fdc6b6f1b8974c07af13c9b286f8222fe8557b668247065515063d8a SHA512 876a5739c1ba29d4a4d5c9407b013afabebc6f5644dc57864104e99f0303e7e7ef1d5ee81a665f1029433b9251917b1e1571624a123dfc15586d6bc49ecfb3e2
+DIST lock_api-0.4.5.crate 25199 BLAKE2B c91adefaa0dc3efa786957794b67cf219f5159909179282c13c7e3b68d73a0acebac29438cfcb39b75cbe87bc181e981ab4ff2776134621d8ea92e7a6aaf966a SHA512 d6cd948a4183a73e8b91b9167d551e72dd75820c76123fb0839f8389c7872d2c46dbcf5785d7600ecc4e27f3d214f476585b9c39e85f70500eb8d012e5ff9535
+DIST matrixmultiply-0.2.4.crate 32929 BLAKE2B bd3c6b2d11202ea9390760ca59b7452beb4094b4a95314c1a1c596ff623eb985ae5cf2b3821d365dd2e2912c1bd25713188de07b4555a996a667cb4d6b0cfb11 SHA512 3ec6846e1342d6dddb81f5bd4495e940f011a3e048c712262cc413318c087aaa137550cff6d969873ac96bb628f6a460e92536674c0d503d5c609d9be5d9d184
+DIST memoffset-0.6.4.crate 7664 BLAKE2B 098783d0fde7268b16fc5c9f5df005b93daac18092f04d981559b9f0fa310344c6fbbb93d42587ec7107a5c4e8d757508377dadf03471dbd7022f3bdb5b3da4b SHA512 bf8d05b72571ccdef32a93cc4489ab4cb7abd41415d55572d1dfb983053afe3eb2615e968d87a326af90c5702b9959150f985a4186acfd61df9b69a74e99713d
+DIST ndarray-0.13.1.crate 213899 BLAKE2B 41a4e6249c84dd4acefe911c445f46c6ae2c101b131aba93d3587089622438b834f8eb8941d3159ae49ad02af3b28553ddf171bfd73c40b57d8d71283ed27861 SHA512 8dbe6eea8c04e477f57d9693760424c4d2adbdce65ef8a047fb3b09226f8395e91fbad3a21c71a1d0242cdb89996bbf7eea435ffa8c58c37dee03af9913eedca
+DIST num-bigint-0.4.3.crate 97799 BLAKE2B afe9a08bf20dc974dcea12b5f9dd465e8b399a0cb0a6d0028d08f7f753aa4dfc929710e4dae883e67633d9dda073f995287e5315b1487e8f99f8f23f1f70e581 SHA512 4b38eaa8b51119dbc7cd8a1e177f37ec935ee348b693a93378742e9bfa68fe5f7e5062b7f34638283c23f04d2127451d796d310cd8adb64dc8e865b28708374f
+DIST num-complex-0.2.4.crate 24679 BLAKE2B 175ee644720b6bbff108eb4ef94d0fea8f340533c2be0e18524e54777734d1c7dc10a7c36b1f2ca3f032ddcb3dc351e60564340aa59b29aa4fa7ecb2487314c4 SHA512 53be64d6f67b1ff7d0a4e1723ae21035abfd300ab27bed0976e0c3903fe8e29f47ffe75040832ee2f81da5c2f4f671d3d845d308365b9a5a989ace99a7d463ea
+DIST num-complex-0.4.0.crate 24805 BLAKE2B c9ca4c01f59bea06e68de80aae5fb68362eeadab92f8f2cdf0474d46339b606d4921b80b4ce377771a1c08ea4e38a335e6fe2ddb412dd2842966b824c1252f3d SHA512 ececfb4ecd82acdb038322ffcb431a09c271b33d3f028f90577f585289251c38ba425d67413815442cd5c2daba821ac9b3b45b09122b1ca2cb7d35f45dd9d2d8
+DIST num-integer-0.1.44.crate 22216 BLAKE2B e1c08427e006cde6f2084adadb6086e87e6d6f8bb8dfa757a8228aa671e862a366e4bd8ca5e0500008c18bab128aead9bd5b1e53568a4f40afadcaf3882ee98f SHA512 d07e27ede02a1d007373935fd91e57a26e0e84ae14bbe24be66763baae6850788bd64ad2598d2bde4f4fad6c8a4675c40bfe0927164b16b9b69de5e9a83d9771
+DIST num-traits-0.2.14.crate 45476 BLAKE2B ae310d9d5640acc3e45e1e5d1d2f519539795922c0058ee940c94c94b6654b39358b7c18dd23a276f2c1b16a30dd4de4cbc8575bcda6a5c11e70665d670e6439 SHA512 c3028eca9f7b718de0db3a36cf3e462bdba43562d52c9b809ed4cc0aa6af403aea542d6d4da743cd1dd541397815a3c5a84cef4d6e40122994e4be6a62319b2e
+DIST num_cpus-1.13.0.crate 14704 BLAKE2B e7a26e597ad5e45309393a9500b031ba64a77831320cbb96d7861139a2f7a453b7ba06a3255439b43ac1e2e36269b0a350d514020d3cd82c2513b57934b3ebbc SHA512 e75ec298fa682be84bf4efb6cf40126da9233ef25f07e887c2fa7421ee78790204564e6406c8219466651f47421e27f69eca690bb9cdfc982b644d78cc10de3f
+DIST numpy-0.15.1.crate 42767 BLAKE2B fc33bd004706516796262bcc028565b6c8488bd483bfb4229d2e3bb248965f227c591798e043f107593cdf107400c8445c97c0cee058c6d4f0c87efa075d052d SHA512 ab44f660ddfe0cdfad183c8494e049473c6c0104401a4fd3ec1c2e77e192967bf971c923f8f8ed419b8d160bb55bc22b968964ad902f52f5a795da78ce501907
+DIST once_cell-1.8.0.crate 28925 BLAKE2B 7681b1a7497b5711e663773c1a7e076f333c06c10d3f289079a781c36f050c1620cc279742ea8e5b15ec48f3d6038a6079bbda7fee3ae8e1128bd916d53ed43a SHA512 88e55c9433225ce85a08353168c87fca2237615482160a5c28f3ac17f06d48c63e0c21b5f7ef81f82ca133436e371802ea099453844f1c111003bcb6ba89e827
+DIST parking_lot-0.11.2.crate 39869 BLAKE2B 67c555e87b68f5763a7790563fd8d542e126bcb77f91267f3b76c51fd73060a2c32dcb91f9d0db7ea772e555d91576c8d7ff48053a9c35fbd3b749d2459a660c SHA512 526b176363dffa59501c18324bb723a3846ef5b0ff9bf1d890e40ad10e7023284f7c8012eda87520eaa94515ee828d9ef52692a9ed590a55e176383d6d472f9e
+DIST parking_lot_core-0.8.5.crate 32466 BLAKE2B 44d9cb65444ea93fded7e216e3bdbe2256ba1611f5cb6f80d67a01e71d428b81e6c7fc73cb928e2125f34bac0abf4d1da39f622e813dff89b01fed7632308b7e SHA512 c4315df551748d1ae77655e4d9f8c90f911498856e5358009e9e02e410bb8085f006f369188b0753a298371ebd74a5c383d848b65e31b55f3462381308c83a00
+DIST paste-0.1.18.crate 12259 BLAKE2B ed72b93a27166b0989743c2528d4a41f4b87ffdd0c588557d11a5f37f85d5b8f03ced86150af6209f9fa8d0f6efee705769b26a2f4dc3363f35cc3ac12c0e6ad SHA512 a4d9c75f6f358d6c86eb0a66cdf22eedec180db37358ca2870a992e215d5b389b7991837d8f2769742ac1b093674cb4352ef9d6754a249253472fbcb3a81c001
+DIST paste-impl-0.1.18.crate 9451 BLAKE2B e465c4c7eef44d02eb1b61b5290090513607b452f4adc11487947b7047ddc44905d7a02df827feb2142f0e74583afdd9648c1c66086f10e1bd861b663200bf8c SHA512 c635efee46cb251b76ee9427432f81a0d944cdf1d0a95693d824c6085e7dea7e1e3f48c692ae27946f69e4e78d8080220058acf98e5c8a78482007349f8a7a4b
+DIST petgraph-0.6.0.crate 182063 BLAKE2B da9373f4d671d0694b8924e25efde32eaf29a1dc3e460a971b655461717594a84823da8bf65bae20e7a277057d081397999ae3d8c9ca83404e626e547bfefa2b SHA512 d71e014b25cf6008a35d425794f69b4361de7c5e8b8fb255c35758bf5631f375a5646431ab1cb59f1fceef93762a169d0408301a5baebbd3a0886a60f688e8d0
+DIST ppv-lite86-0.2.10.crate 20915 BLAKE2B 83a075381c24b2b89f5266929f5672ce051c3781c1a199252738dadbf471618c8b87452ce84e1cd87a9eac11b44107002894f544091210cc7e77bf52c045288e SHA512 c9941052e504b9b310024064026e4b1d540dd877705ef450a833d9ff6dee70ba874cdad68c46381a71d5b54482cd80b3dbb8e0c225758fd339069031a55195f1
+DIST proc-macro-hack-0.5.19.crate 15556 BLAKE2B 98c22fc3e5f5fa8b6f44d15de42b6ffcc82ba3f98a07ffa48bcbc5d3abcfca6af136c5d0d8c7f1ca34261ed8f8c9c17a394231f97a4c342c81aa7f8b9e74b203 SHA512 9e4cbec41056438287f5b23086264c86e2f0cdc193064006556736377b2954229de13a585149b9995002c9aee3334ee2a80ae4afdcc96cabe7ed2bf718476952
+DIST proc-macro2-1.0.29.crate 38772 BLAKE2B 742c2602afc4beddc96b688d105fd93b1dbdb3cfced724aaf542e97120d374d334e90cfbf02ab62741dd052a272dc583b7d2e1992da3d1b8ff260414c65ac89e SHA512 b3b3b7c6988afeb92209c7e0362f45f9c207611a74bb63bc7746b86fb9ab0d74fea9e7a2d9bc8ac943225ea439540726ffc13711dc5bcb056c1821fc99e8dc63
+DIST pyo3-0.15.1.crate 370722 BLAKE2B b755c93d8dca8e778b886ed1d16e83ddca483d0f6c932b3241edb2e1211306cb0257d2a6bc31ba4298335f277898e59aad67e9f675ed4ad9a2bb9d596400bda3 SHA512 9168911db76f2c9629615c997accfc4234bf91cc72293dcdb3db14b4e93f93af9df3b3aa7900384121719aeda4a0b6dd68c0cb380bfe5424724b0be5303c02e6
+DIST pyo3-build-config-0.15.1.crate 22095 BLAKE2B 47803b389f30f15f487daf96d32e374ebc83b1b41ddee1d2dcadd1a0fbaef40c4c1af2312b86ec085637e3192b1bd213c93b5f4e8dee173d81e510f480fa6953 SHA512 a9aae6bb4a4a56f7857262276bf1c95510912a367e32470b871f2fe2d6adbffd87247ed2e3b5fa2dfd273a3b0e139d92f25f3228e15c6d8c206c6ba919f38a9c
+DIST pyo3-macros-0.15.1.crate 7555 BLAKE2B c7d87c150678efbb5dd6ef98da9997676ef3e7f8628a79f01a3ecbf94cc8b2d0752573d894fd769fb8791f30bcfd03a5c9f76cce73c00be90c1488faed63198d SHA512 1969b5ec6dd26ff2d534fe43143e44b91b66e05c61281b64f96fda47ff7826f625c658412d7587520df7455a67cd970a9aa49c7544ffb70a425314a0cff65060
+DIST pyo3-macros-backend-0.15.1.crate 46111 BLAKE2B fabde516114a001e7f9ec1a1f422c5819ad5bceb4db36ecf2ef5dfde397d4d3c7dc7a8acf11cafde4156594e90a4f95d51dbefa43ee8bc172441d3f81eb299b2 SHA512 6c62fd1bc50666f63f9854947e9d88ae385159d90d026e0179d91aa151fef8403b23f55eab6f3340b1455b23d411083780c49198afacc267b49a52ee9c4999a4
+DIST quote-1.0.9.crate 25042 BLAKE2B 26ef31e89fd2f0cc21ff65f8072f30c7977ac634d2536cf9845a0894d6659f62a96cd0a6ee48f7706036c2c1b898ef8c9167bd62714ad0c9cba4fb02f30922af SHA512 dd6cdaea183b85400531ef01e56657edbec0d8f7c27898c1e591b72dff755fa5875b33ca320bd65be0e9aecfc6a61ec119a4bd1291e9f2057fca642ab5b198c8
+DIST rand-0.8.4.crate 87406 BLAKE2B c09358416d2425a8243b623346fe71bf6f03fddab1a23fc752f4303ba7c241b3606629e4edf0ea720785bda0bca534acd675c2de079b78eac3df24a1ad6ba654 SHA512 77ae0e988e31e12f7d3f2c40814f930eecbc94c4aced827c337be78eeeabf39fde2dc5c4fda059afdc01285ff4afe30393c32694377de004feff16207606558e
+DIST rand_chacha-0.3.1.crate 15251 BLAKE2B 645771b2c3e274f085e0837a20306b1d59f6e9032fba8eb38a6d1b30180d15e2f89ffa2a162bf6358da41e030098242d81e71dab4321980d0a4f6ddfc2974ce3 SHA512 8198c580b1b9b0429758ffa49cd8138fa3ce724f0dcf73c767ea7e55611d6a2e4c7cad9950896510def500ce4062b594386c947ac3d89425b4e5c9b04d0b8075
+DIST rand_core-0.6.3.crate 21938 BLAKE2B 7c73e2da6d423c68dbbca31f6528bdb3f42fa39b30d0951ca7058e05ce16ef09ef5e047697b33ec17720314f934512c0907aeb892df93d63abd8b63eda2b50a7 SHA512 0fc31f96ca8ebba8c179367de01458e909265e1d627ec0c5620be7c8e83d2f9570471d6ec2cb2bc4bc531505b02fc31f1165708cc1357906791c87123b06ee87
+DIST rand_hc-0.3.1.crate 11891 BLAKE2B b3aa810638390eea4245ebb711de88ccdc2a64350a5c6e14064fea7685d49746b4b77215dbb8374fa7a6cbc2cfd79fb553513d6e551acf64586d8303f7d4f3a0 SHA512 582bb44b81c27e698eb57c6f06444b8a7c9d3f7ee73f4e14be8004c4bfd3bbfd9795c69f7294b5e87107e86b90fa3e91ad080964474af81c92705d356e43fbb5
+DIST rand_pcg-0.3.1.crate 11983 BLAKE2B 87c2a9d0f6fd71076280a0f6447ef2a8c9efb81567c530bc45001ed93a254dbf0d007f4d3d22355cb68dea51e82bbd78761bfb9f139a62983dda39f0432306ed SHA512 6386c23c26fb911c3b20718e31b6a2f395e3cb46b59351cbd58bbc0666f1d42c2092638360162079387e0d61f7591d01271cb50212b91db6df78a76bae239dc4
+DIST rawpointer-0.2.1.crate 7490 BLAKE2B ee4542886347f2bfc7cb32cf4f7d025d35c78cb763e6d6acf2a8f85ae8d0261a2a20f86903952bd33b886dcaff789bd30c507b4e5d53c0debd2e6696291a825b SHA512 bff9ba7b69e7754e89ca6d42bd3b7a547f450404de999e35c10e4002fe03ee1f563b9799673c5010aa4c2f80885ca9e45b5560c5093e117be3b75d86affcb62f
+DIST rayon-1.5.1.crate 160424 BLAKE2B 1c31c8e3290f76d02347271cb020e50e8f915b7a064f133a196c12e07ae1551c0e7c31883a31ec419a05198d6c71f0057be1b8ddb21f451db9ba40da511a0e1a SHA512 a68e65aae7040a6f6b0cc33b53b4c22929c15504ed4fdf54f5eb5fcaeab137c220b00c716aed96246b6a762c4f1e8be920356231d6c4a0b3e01132b9ab96ffc9
+DIST rayon-core-1.9.1.crate 64961 BLAKE2B 7201024124324d2cf2d5785b7e79d2195adc7de576b826a9c28603dc44f1b5de46d277b791a741413c85facb4f4a552bfd55989a190f6f5ea3df4bbd32042f66 SHA512 c24c34dc488171ce476df145e8c6953d35fea93412805f6c411ba8b8e9dbbd733610b291203ee91bd265b766b78e14ba15a7b587e8f0ae8bde53f60e0644ef78
+DIST redox_syscall-0.2.10.crate 23582 BLAKE2B 7253dd96415e7b70df488c208d86c250c670b1245ac6573a59085faabbde9e33fabfacd233e7d737e365493db14008c180274b41ea0a4af5f6f98eec666a873f SHA512 ef012eb4bffe32119e50ecdbef4cc31f6e84a344e94f026484fe4e2c904f94053a8b6249fb6bd8ada31b3ecfbf0096085283bb68aeb62b1b01b57f35794aee92
+DIST retworkx-0.11.0.tar.gz 332386 BLAKE2B ec84e208d5a7e6135578ea1c0c053e49e10ccdbfd118e02631304425a880112877472fa4e3d9801bfbf32eb3ab043f71bdaff013de0c13dff2633a01946bd21e SHA512 2b20962add7c9c6716a846144e617a6b4a729739cd1227b91967dbefc6014703739562a639d66ee6f1e7431efc5e25a8e18ea29068aecbed6361744565c4572f
+DIST scopeguard-1.1.0.crate 11470 BLAKE2B f774eb90b7d3ffb2efba47518e9d1dead4017ab4b38a4bd74914daa84a5af4bf9eb63da0496e3924499d79cd0439c37447aeda4a21226f95645bddcd6becfabe SHA512 368fa5726df8f42b599993681579a9ffd0196480ee3cd0f9f671e8493f3bedd1e1779bdf2beb329e77e0005fa09b816e3385f309490c0f2781568db275d4d17d
+DIST smallvec-1.6.1.crate 26444 BLAKE2B ca6c50a63acdd93a2131654d99e50545a6e2d08eb3e2bd57d4a8ee073d90c08195ee442745a8d62a68179ce7bb8e229b7ff8c6fcf46372a9844bc9280b7c85cb SHA512 9e6061c8211a4485ab54eb541adf40748e1fc3fdfab0849e38e5fd34fc6cc69ae78bd065b788692385a6b8157b031c2fe373900e13d3e56e94fc08d574edaaad
+DIST syn-1.0.76.crate 233723 BLAKE2B 99b781b6ffa926ca71d0a09ae81dacfc6ee713e15fd057232e527761b73f088c30967eb13d624bdf34a089c5a33fa28ecf6ca069e3dfd7061932643849243967 SHA512 0f32138d219ca74fcff1ee5ee5bb89f965a30b74c10a040bd8361332cb84900322194dd85ad7571c4bce72c1f66368546db5881165939800f2587b15ce07298a
+DIST unicode-xid-0.2.2.crate 14955 BLAKE2B 6c6da49ac08dbd8b3248272224d6bff96b9cd1f36029b1937a58a0b929c3a48326053305ed49e73edd70f572f5abbc4817cedc899c69e3457805ad056669f6af SHA512 92ffd0dd34e3ca235ecf110b38c447d3ec1faa23d76c112457f28d432f92fa6b5f428bc5e1bfd278f361f55426dd96e19ecb0d3eff6cf250892f069c52bd89a8
+DIST unindent-0.1.7.crate 8346 BLAKE2B cbf76fd18e49332e61275ab204cef1fc4dee58091307f8cbe2107d3a8441551055541583f1d643d4d15f9cc17a8405f540f0c53548f5b2379dd70791a03640cb SHA512 d3f4543f97f1386f63306a206074de1d10077ae968ea6eb6638545eeaf8cef662e1c84a15788e9df640eeb6af4cbc187721ec01af43984e4eeb2dfb0423c6d70
+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/retworkx/metadata.xml b/dev-python/retworkx/metadata.xml
new file mode 100644
index 000000000000..fbecd37e2029
--- /dev/null
+++ b/dev-python/retworkx/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- comaintainers-welcomed -->
+ <maintainer type="person">
+ <email>gaboroszkar@protonmail.com</email>
+ <name>Gábor Oszkár Dénes</name>
+ </maintainer>
+ <longdescription>
+ retworkx is a general purpose graph library for python3 written in Rust to take advantage of the performance and safety that Rust provides. It was built as a replacement for qiskit's previous (and current) networkx usage (hence the name) but is designed to provide a high performance general purpose graph library for any python application. The project was originally started to build a faster directed graph to use as the underlying data structure for the DAG at the center of qiskit-terra's transpiler, but it has since grown to cover all the graph usage in Qiskit and other applications.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-python/retworkx/retworkx-0.11.0.ebuild b/dev-python/retworkx/retworkx-0.11.0.ebuild
new file mode 100644
index 000000000000..338670a50b88
--- /dev/null
+++ b/dev-python/retworkx/retworkx-0.11.0.ebuild
@@ -0,0 +1,112 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+# Generated with https://github.com/gentoo/cargo-ebuild.
+CRATES="
+ ahash-0.7.6
+ autocfg-1.0.1
+ bitflags-1.3.2
+ cfg-if-0.1.10
+ cfg-if-1.0.0
+ crossbeam-channel-0.5.1
+ crossbeam-deque-0.8.1
+ crossbeam-epoch-0.9.5
+ crossbeam-utils-0.8.5
+ either-1.6.1
+ fixedbitset-0.4.1
+ getrandom-0.2.3
+ hashbrown-0.11.2
+ hermit-abi-0.1.19
+ indexmap-1.7.0
+ indoc-0.3.6
+ indoc-impl-0.3.6
+ instant-0.1.10
+ lazy_static-1.4.0
+ libc-0.2.101
+ lock_api-0.4.5
+ matrixmultiply-0.2.4
+ memoffset-0.6.4
+ ndarray-0.13.1
+ num-bigint-0.4.3
+ num-complex-0.2.4
+ num-complex-0.4.0
+ num-integer-0.1.44
+ num-traits-0.2.14
+ num_cpus-1.13.0
+ numpy-0.15.1
+ once_cell-1.8.0
+ parking_lot-0.11.2
+ parking_lot_core-0.8.5
+ paste-0.1.18
+ paste-impl-0.1.18
+ petgraph-0.6.0
+ ppv-lite86-0.2.10
+ proc-macro-hack-0.5.19
+ proc-macro2-1.0.29
+ pyo3-0.15.1
+ pyo3-build-config-0.15.1
+ pyo3-macros-0.15.1
+ pyo3-macros-backend-0.15.1
+ quote-1.0.9
+ rand-0.8.4
+ rand_chacha-0.3.1
+ rand_core-0.6.3
+ rand_hc-0.3.1
+ rand_pcg-0.3.1
+ rawpointer-0.2.1
+ rayon-1.5.1
+ rayon-core-1.9.1
+ redox_syscall-0.2.10
+ scopeguard-1.1.0
+ smallvec-1.6.1
+ syn-1.0.76
+ unicode-xid-0.2.2
+ unindent-0.1.7
+ 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
+"
+
+inherit cargo distutils-r1
+
+DESCRIPTION="A high performance Python graph library implemented in Rust"
+HOMEPAGE="https://github.com/Qiskit/retworkx"
+SRC_URI="https://github.com/Qiskit/retworkx/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
+ $(cargo_crate_uris ${CRATES})"
+
+LICENSE="Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD BSD-2 MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+BDEPEND="dev-python/setuptools_rust
+ test? (
+ dev-python/fixtures[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/networkx-2.5[${PYTHON_USEDEP}]
+ dev-python/stestr[${PYTHON_USEDEP}]
+ media-gfx/graphviz[gts]
+ dev-python/graphviz[${PYTHON_USEDEP}]
+ )"
+
+RDEPEND=">=dev-python/numpy-1.16.0"
+
+distutils_enable_tests pytest
+
+# Libraries built with rust do not use CFLAGS and LDFLAGS.
+QA_FLAGS_IGNORED="usr/lib.*/py.*/site-packages/retworkx/retworkx.*\\.so"
+
+python_test() {
+ # We have to hide the source code directory so tests
+ # do not use these, but instead the compiled library.
+ mv retworkx retworkx.hidden || die
+ # There is one small test which has issues, skipping it.
+ epytest -k 'not test_image_type'
+ mv retworkx.hidden retworkx || die
+}
diff --git a/dev-python/rst2ansi/Manifest b/dev-python/rst2ansi/Manifest
new file mode 100644
index 000000000000..ce5c205f62d0
--- /dev/null
+++ b/dev-python/rst2ansi/Manifest
@@ -0,0 +1 @@
+DIST rst2ansi-0.1.5.tar.gz 9989 BLAKE2B 6792a7a4c0c23ea3eff6ef9462b2349743d3a0ea956e3dce2965981b1c058152a4117be031d5cfca7df18e992994453b2a4db8b7ab719d2279978ab659a78321 SHA512 ab964c9a263df3a638e24537f8077345d9240f88e0e62bcb423caea74c0ffa7736365beb777c9f240c7ccd8ae6ba68a94358f5c487ccc9a6175ce3a81b083b65
diff --git a/dev-python/rst2ansi/metadata.xml b/dev-python/rst2ansi/metadata.xml
new file mode 100644
index 000000000000..6c3e4ceeb064
--- /dev/null
+++ b/dev-python/rst2ansi/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="person">
+ <email>ezzieyguywuf@gmail.com</email>
+ <name>Wolfgang E. Sanyer</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/rst2ansi/rst2ansi-0.1.5.ebuild b/dev-python/rst2ansi/rst2ansi-0.1.5.ebuild
new file mode 100644
index 000000000000..eb4565725428
--- /dev/null
+++ b/dev-python/rst2ansi/rst2ansi-0.1.5.ebuild
@@ -0,0 +1,15 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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
new file mode 100644
index 000000000000..fe9ae3bf9002
--- /dev/null
+++ b/dev-python/rstcheck/Manifest
@@ -0,0 +1 @@
+DIST rstcheck-3.3.1.tar.gz 13825 BLAKE2B 94c1e8226b372b25907fb5e713716f46d972788f5d996a6c351fdf92728d1274e625564ec6417e0e3be7c7ec8d4ef07a193e8b80ca38085d28c1e9ee13e0ca36 SHA512 d390565c59466e1047fb41491eb5a2261fec91848806e04137bcc6053759fc87c8e4c72721d39b35c959b0baddaf90f2c8459213cec76b82be9b78bdd44076c5
diff --git a/dev-python/rstcheck/metadata.xml b/dev-python/rstcheck/metadata.xml
new file mode 100644
index 000000000000..d19e6b08bfe3
--- /dev/null
+++ b/dev-python/rstcheck/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>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>
+</pkgmetadata>
diff --git a/dev-python/rstcheck/rstcheck-3.3.1.ebuild b/dev-python/rstcheck/rstcheck-3.3.1.ebuild
new file mode 100644
index 000000000000..7eab0a60de17
--- /dev/null
+++ b/dev-python/rstcheck/rstcheck-3.3.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+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"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/docutils[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/setuptools_scm-1.15.0[${PYTHON_USEDEP}]
+ test? (
+ ${RDEPEND}
+ dev-python/path-py[${PYTHON_USEDEP}]
+ )
+"
+
+S="${WORKDIR}/${P}"
+
+distutils_enable_tests pytest
+
+python_test() {
+ # Ignore the module from ${S}, use the one from ${BUILD_DIR}
+ # Otherwise, ImportMismatchError may occur
+ # https://github.com/gentoo/gentoo/pull/1622#issuecomment-224482396
+ # Override pytest options to skip flake8
+ pytest -vv --ignore=rst --override-ini="addopts=--doctest-modules" \
+ || die "tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/rstr/Manifest b/dev-python/rstr/Manifest
new file mode 100644
index 000000000000..3b57c5b99783
--- /dev/null
+++ b/dev-python/rstr/Manifest
@@ -0,0 +1 @@
+DIST rstr-3.1.0.tar.gz 12044 BLAKE2B 8b79b777d0b60f60c5e86be9521c5a08af72d5988e3b1ef871d29925a9b341e48668963e71972113655ea1ed2bc14060e09ec8068fbb30b7e7d27f1215810908 SHA512 3b5c8ed0039aa8e47ab777f273fdcc4158b6197646831908da66d2e5e6b313c6d12cfdb9832f131a79d47496ac200a8ba1ebb7cdfa03074c290d3c8442437216
diff --git a/dev-python/rstr/metadata.xml b/dev-python/rstr/metadata.xml
new file mode 100644
index 000000000000..e141e5d73d0e
--- /dev/null
+++ b/dev-python/rstr/metadata.xml
@@ -0,0 +1,17 @@
+<?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-3.1.0.ebuild b/dev-python/rstr/rstr-3.1.0.ebuild
new file mode 100644
index 000000000000..55959507b7a5
--- /dev/null
+++ b/dev-python/rstr/rstr-3.1.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_SETUPTOOLS=pyproject.toml
+PYTHON_COMPAT=( python3_{7,8,9,10} ) # pypy3 https://bugs.gentoo.org/835474
+
+inherit distutils-r1
+
+DESCRIPTION="Easily generate random strings of various types"
+HOMEPAGE="
+ https://github.com/leapfrogonline/rstr
+ 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_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
new file mode 100644
index 000000000000..ae65836645e4
--- /dev/null
+++ b/dev-python/ryu/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..cbfb56bc4243
--- /dev/null
+++ b/dev-python/ryu/metadata.xml
@@ -0,0 +1,9 @@
+<?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
new file mode 100644
index 000000000000..6d813f73bc08
--- /dev/null
+++ b/dev-python/ryu/ryu-4.34.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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/schedule/Manifest b/dev-python/schedule/Manifest
new file mode 100644
index 000000000000..e7435225e9d8
--- /dev/null
+++ b/dev-python/schedule/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..402305f71717
--- /dev/null
+++ b/dev-python/schedule/metadata.xml
@@ -0,0 +1,15 @@
+<?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
new file mode 100644
index 000000000000..77798b182635
--- /dev/null
+++ b/dev-python/schedule/schedule-1.1.0.ebuild
@@ -0,0 +1,32 @@
+# 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,10} )
+
+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 000000000000..6b03a9092381
--- /dev/null
+++ b/dev-python/scramp/Manifest
@@ -0,0 +1 @@
+DIST scramp-1.4.1.tar.gz 30939 BLAKE2B e82edcb4d64ec63a36521742b0526b582860dc31a30410e96108243e51c1dbc3eaf1d7a7a6eec4cca775528a6d80601f1d2e55dbf4ab422d51f0c0bad1195c4d SHA512 47015e0429da1353eb6c89ac89c90ab3e646418af828deb754adc05764cbe2da98a553388a3d3c84320d470b63a66d1882ab96e5a43fd2c2c7e39a82155fb74c
diff --git a/dev-python/scramp/metadata.xml b/dev-python/scramp/metadata.xml
new file mode 100644
index 000000000000..f7446f204408
--- /dev/null
+++ b/dev-python/scramp/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <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.1.ebuild b/dev-python/scramp/scramp-1.4.1.ebuild
new file mode 100644
index 000000000000..29d10dddd483
--- /dev/null
+++ b/dev-python/scramp/scramp-1.4.1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A pure-Python implementation of the SCRAM authentication protocol."
+HOMEPAGE="
+ https://pypi.org/project/scramp/
+ https://github.com/tlocke/scramp
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="MIT"
+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 000000000000..e42b11779e84
--- /dev/null
+++ b/dev-python/scrapy/Manifest
@@ -0,0 +1 @@
+DIST scrapy-2.5.1.tar.gz 1276985 BLAKE2B 7e4a43391a8dd4f641d188c7a89d26d52bc51aae3eb8340e02c9de2477bc6458f80b3a8ba16f6a17a9ec1debb85fe558fb7c1c48358fd923e02864758ea75fa5 SHA512 4285272412b4c474707e864ece701990435d206b0a1ef28cb9f99cff87a02e6b0323e744e96f15878a3b433a7efe4be413d24068bb252f00f9ab1b0a980d844a
diff --git a/dev-python/scrapy/files/scrapy-2.5.1-no-doctest.patch b/dev-python/scrapy/files/scrapy-2.5.1-no-doctest.patch
new file mode 100644
index 000000000000..7c1b76d052f8
--- /dev/null
+++ b/dev-python/scrapy/files/scrapy-2.5.1-no-doctest.patch
@@ -0,0 +1,12 @@
+diff --git a/pytest.ini b/pytest.ini
+index 0aae09f..c1f20ee 100644
+--- a/pytest.ini
++++ b/pytest.ini
+@@ -5,7 +5,6 @@ python_files=test_*.py __init__.py
+ python_classes=
+ addopts =
+ --assert=plain
+- --doctest-modules
+ --ignore=docs/_ext
+ --ignore=docs/conf.py
+ --ignore=docs/news.rst
diff --git a/dev-python/scrapy/metadata.xml b/dev-python/scrapy/metadata.xml
new file mode 100644
index 000000000000..65ac1f20562d
--- /dev/null
+++ b/dev-python/scrapy/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>gentoo@aisha.cc</email>
+ <name>Aisha Tammy</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/scrapy/scrapy-2.5.1.ebuild b/dev-python/scrapy/scrapy-2.5.1.ebuild
new file mode 100644
index 000000000000..2450fb01fe41
--- /dev/null
+++ b/dev-python/scrapy/scrapy-2.5.1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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"
+
+# The 'PyDispatcher>=2.0.5' distribution was not found and is required by Scrapy
+# https://bugs.gentoo.org/684734
+RDEPEND="${PYTHON_DEPS}
+ dev-python/cssselect[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ <dev-python/priority-2.0.0[${PYTHON_USEDEP}]
+ <dev-python/h2-4.0.0[${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/twisted-17.9.0[${PYTHON_USEDEP}]
+ dev-python/w3lib[${PYTHON_USEDEP}]
+ dev-python/zope-interface[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ test? (
+ dev-python/testfixtures[${PYTHON_USEDEP}]
+ dev-python/uvloop[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+PATCHES=( "${FILESDIR}/${PN}-2.5.1-no-doctest.patch" )
+
+python_test() {
+ py.test -vv --ignore=docs \
+ --ignore="tests/test_proxy_connect.py" \
+ --ignore="tests/test_utils_display.py" \
+ --ignore="tests/test_command_check.py" \
+ --ignore="tests/test_feedexport.py" \
+ --ignore="tests/test_pipeline_files.py" \
+ --ignore="tests/test_pipeline_images.py" \
+ --ignore="tests/test_squeues.py" || die
+}
diff --git a/dev-python/sdnotify/Manifest b/dev-python/sdnotify/Manifest
new file mode 100644
index 000000000000..72673d54e124
--- /dev/null
+++ b/dev-python/sdnotify/Manifest
@@ -0,0 +1 @@
+DIST bb4242-sdnotify-0.3.2.tar.gz 3302 BLAKE2B add938bb947d8834abc9cbfaae28dfd85d9e9580d130f6dac0660a1f06f291723b909eac61eb39023d999566568985f93ab07587ab235bdfe79fe09efca28874 SHA512 08fbbd2865ac075f0faa4ee3c1a9e5afb824318a4863cc603bc544ebb173d9f1caf4941df19470c0c506b4f518cc1f30ec1d8be70b03a46afadf490765af2e55
diff --git a/dev-python/sdnotify/metadata.xml b/dev-python/sdnotify/metadata.xml
new file mode 100644
index 000000000000..c633830a6c99
--- /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.paragon@gmail.com</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 000000000000..8a20c962abcc
--- /dev/null
+++ b/dev-python/sdnotify/sdnotify-0.3.2.ebuild
@@ -0,0 +1,20 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+DISTUTILS_USE_SETUPTOOLS=no
+
+inherit distutils-r1
+
+DESCRIPTION="Python implementation of the systemd sd_notify protocol"
+HOMEPAGE="
+ https://github.com/bb4242/sdnotify
+ https://pypi.org/project/sdnotify/
+"
+SRC_URI="https://github.com/bb4242/${PN}/archive/refs/tags/v${PV}.tar.gz -> bb4242-${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
diff --git a/dev-python/sentence-splitter/Manifest b/dev-python/sentence-splitter/Manifest
new file mode 100644
index 000000000000..e43d104387c9
--- /dev/null
+++ b/dev-python/sentence-splitter/Manifest
@@ -0,0 +1 @@
+DIST sentence-splitter-1.4.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 000000000000..d28d3c76bac8
--- /dev/null
+++ b/dev-python/sentence-splitter/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>1over137@anche.no</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-r1.ebuild b/dev-python/sentence-splitter/sentence-splitter-1.4-r1.ebuild
new file mode 100644
index 000000000000..da04228963bc
--- /dev/null
+++ b/dev-python/sentence-splitter/sentence-splitter-1.4-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+inherit distutils-r1
+
+DESCRIPTION="Sentence splitter using heuristic algorithm by Philipp Koehn and Josh Schroeder"
+HOMEPAGE="https://github.com/mediacloud/sentence-splitter https://pypi.org/project/sentence-splitter/"
+SRC_URI="https://github.com/mediacloud/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.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/simplemma/Manifest b/dev-python/simplemma/Manifest
new file mode 100644
index 000000000000..5f2159f9b980
--- /dev/null
+++ b/dev-python/simplemma/Manifest
@@ -0,0 +1 @@
+DIST simplemma-0.6.0.tar.gz 73437400 BLAKE2B 6f7e17d00801f17706cf55b5ec06f87e92745555883f3b21080dda08a4f4ee8e4b4305945b8da0974cc5e4dfd4c4b016993e21a7dd97c65d3caa2dae1006af9b SHA512 2dc0ea3c19d0d312f8ddc378846c1191499a4999aa28652212c91cc3be8a77592af7031bf0468347c1c8ef6da122567ced854a6ca4910a030c16e92adbadeb08
diff --git a/dev-python/simplemma/metadata.xml b/dev-python/simplemma/metadata.xml
new file mode 100644
index 000000000000..dc66beb92268
--- /dev/null
+++ b/dev-python/simplemma/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>1over137@anche.no</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">simplemma</remote-id>
+ <remote-id type="github">adbar/simplemma</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/simplemma/simplemma-0.6.0.ebuild b/dev-python/simplemma/simplemma-0.6.0.ebuild
new file mode 100644
index 000000000000..da8e4d557bfc
--- /dev/null
+++ b/dev-python/simplemma/simplemma-0.6.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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"
+
+DOCS=( HISTORY.rst README.rst )
+
+distutils_enable_tests pytest
diff --git a/dev-python/skia-pathops/Manifest b/dev-python/skia-pathops/Manifest
new file mode 100644
index 000000000000..5b4c87f540dd
--- /dev/null
+++ b/dev-python/skia-pathops/Manifest
@@ -0,0 +1,2 @@
+DIST skia-pathops-0.6.0.post2.zip 41471167 BLAKE2B b9da1ff7deade28e0b5ce4fa6590eb92b50976027fc9da805b50c9d1526a60c28661d5378ecdc4dc2de42f7d3d904dd2f768b49df716b345253ffe2475f1afe7 SHA512 3ebcf044d045a57531229841630dea6e656df434a4a9b994a9a1162c93f0c894ffb20cfb493159cefd1afbe40366e2f9742a4aeea1a693d917fa55841c887e86
+DIST skia-pathops-0.7.2.zip 61294134 BLAKE2B 7cd7d5b9c244ee108bbf9b6c086e210fa05f65a8d2e36e7036a9ad94a1ff9ad2f8777ce74e4227ddd15e6b197afa668fad1cf8d110e5ac87e496c85b6e97c8dd SHA512 bf4c02895d08ee174f700d83753e3d5ada1f1de018a07b2e1574f01bd3283edaf71b1859c732d27a45030fc070232c34098760b3144b2a91a7bee72ff220394d
diff --git a/dev-python/skia-pathops/metadata.xml b/dev-python/skia-pathops/metadata.xml
new file mode 100644
index 000000000000..a474f63ec9da
--- /dev/null
+++ b/dev-python/skia-pathops/metadata.xml
@@ -0,0 +1,16 @@
+<?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/skia-pathops</remote-id>
+ <remote-id type="pypi">skia-pathops</remote-id>
+ </upstream>
+ <longdescription lang="en">
+Python bindings for the Google Skia library's Path Ops module, performing boolean operations on paths (intersection, union, difference, xor).
+ </longdescription>
+</pkgmetadata>
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
new file mode 100644
index 000000000000..18d20fe8aac4
--- /dev/null
+++ b/dev-python/skia-pathops/skia-pathops-0.6.0_p2.ebuild
@@ -0,0 +1,48 @@
+# 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_{7,8,9,10} )
+
+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.7.2.ebuild b/dev-python/skia-pathops/skia-pathops-0.7.2.ebuild
new file mode 100644
index 000000000000..88be24c9d929
--- /dev/null
+++ b/dev-python/skia-pathops/skia-pathops-0.7.2.ebuild
@@ -0,0 +1,41 @@
+# 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_{7,8,9,10} )
+
+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}"
+BDEPEND="
+ app-arch/unzip
+ dev-python/cython[${PYTHON_USEDEP}]
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? ( dev-python/pytest-cython[${PYTHON_USEDEP}] )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_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]"
+)
+
+pkg_setup() {
+ export BUILD_SKIA_FROM_SOURCE=0
+}
diff --git a/dev-python/skills/Manifest b/dev-python/skills/Manifest
new file mode 100644
index 000000000000..9a9802208c86
--- /dev/null
+++ b/dev-python/skills/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..fc86a466ac6e
--- /dev/null
+++ b/dev-python/skills/metadata.xml
@@ -0,0 +1,27 @@
+<?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
new file mode 100644
index 000000000000..02099e2a38aa
--- /dev/null
+++ b/dev-python/skills/skills-0.3.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} 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
new file mode 100644
index 000000000000..ca3ac0622fee
--- /dev/null
+++ b/dev-python/sortedcollections/Manifest
@@ -0,0 +1 @@
+DIST sortedcollections-2.1.0.tar.gz 48563 BLAKE2B 5de36155858dc055c9412ff410bd70b489aba292a2956216db95641e10dcb249b98e5c005c4d7c4fd00b25c3315c65b3f43f404737591632ac223a4045b775b5 SHA512 7cb95af1791ab8f8c99847c1b9e0b8c1e7cc7dfe8a9df5db8bb3c96ceb2f15d7351ab4ff081d037d34dbb6c3108f4b575ca22c9e9e911a727d31b9ba3bf975f6
diff --git a/dev-python/sortedcollections/metadata.xml b/dev-python/sortedcollections/metadata.xml
new file mode 100644
index 000000000000..f436facfe272
--- /dev/null
+++ b/dev-python/sortedcollections/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <doc>http://www.grantjenks.com/docs/sortedcollections/</doc>
+ <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>
+</pkgmetadata>
diff --git a/dev-python/sortedcollections/sortedcollections-2.1.0.ebuild b/dev-python/sortedcollections/sortedcollections-2.1.0.ebuild
new file mode 100644
index 000000000000..2f7df1a78e3c
--- /dev/null
+++ b/dev-python/sortedcollections/sortedcollections-2.1.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+inherit distutils-r1
+
+DESCRIPTION="Apache2 licensed Python sorted collections library"
+HOMEPAGE="
+ 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}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="dev-python/sortedcontainers[${PYTHON_USEDEP}]"
+BDEPEND="doc? ( ${RDEPEND} )"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs
+
+src_prepare() {
+ # breaks pytest
+ rm tox.ini || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ epytest --doctest-glob="*.rst"
+}
diff --git a/dev-python/sphinx-argparse-cli/Manifest b/dev-python/sphinx-argparse-cli/Manifest
new file mode 100644
index 000000000000..43655ceb31c7
--- /dev/null
+++ b/dev-python/sphinx-argparse-cli/Manifest
@@ -0,0 +1 @@
+DIST sphinx_argparse_cli-1.8.2.tar.gz 21990 BLAKE2B fda2e87902fa8682a183aa4a16fd80f686a6f0144c4b61d2f8e3840c857b937e27422d2e2c3f346296ef79cc4624ad535ab892409d1633c782343c256d08a763 SHA512 bbc26b0171b20e62a17e130a91b962785ec9edad98b9e838e7a82fe9d464397ac4b12b33c4556253a47320aae2c3e695f938bee04e6583cfbabfe0383955a2d5
diff --git a/dev-python/sphinx-argparse-cli/metadata.xml b/dev-python/sphinx-argparse-cli/metadata.xml
new file mode 100644
index 000000000000..e29cc43b0f74
--- /dev/null
+++ b/dev-python/sphinx-argparse-cli/metadata.xml
@@ -0,0 +1,16 @@
+<?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>
+ </upstream>
+ <maintainer type="person">
+ <email>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/sphinx-argparse-cli/sphinx-argparse-cli-1.8.2.ebuild b/dev-python/sphinx-argparse-cli/sphinx-argparse-cli-1.8.2.ebuild
new file mode 100644
index 000000000000..6ce9a2c9cc2f
--- /dev/null
+++ b/dev-python/sphinx-argparse-cli/sphinx-argparse-cli-1.8.2.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+inherit distutils-r1
+
+MY_PN="${PN//-/_}"
+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="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_PN}-${PV}.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/sphinx[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
diff --git a/dev-python/sphinx-argparse/Manifest b/dev-python/sphinx-argparse/Manifest
new file mode 100644
index 000000000000..cc6a6ba198dc
--- /dev/null
+++ b/dev-python/sphinx-argparse/Manifest
@@ -0,0 +1 @@
+DIST sphinx-argparse-0.3.1.tar.gz 42953 BLAKE2B 76c74a270a638b1b894548bc898918fbfa5fde6bcf1ccbf5e69a3daaada829bc1ae27ad8befd18e834646dc2fc3b025f36807c2be894911cc0c6d65294174898 SHA512 3d289c90165eb6a3d7a94dff8e6a429a49eb404ce373e80e007a0cd9abaae1e1236f5393df2fbf11701c349dade9d199640dc398064da4fd50a58a90eb3f8f12
diff --git a/dev-python/sphinx-argparse/metadata.xml b/dev-python/sphinx-argparse/metadata.xml
new file mode 100644
index 000000000000..418bde979bcb
--- /dev/null
+++ b/dev-python/sphinx-argparse/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 type="person">
+ <name>Alarig Le Lay</name>
+ <email>alarig@swordarmor.fr</email>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/sphinx-argparse/sphinx-argparse-0.3.1.ebuild b/dev-python/sphinx-argparse/sphinx-argparse-0.3.1.ebuild
new file mode 100644
index 000000000000..f34391eaa5c1
--- /dev/null
+++ b/dev-python/sphinx-argparse/sphinx-argparse-0.3.1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+DISTUTILS_USE_SETUPTOOLS="pyproject.toml"
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Sphinx extension that automatically documents argparse commands and options"
+HOMEPAGE="
+ https://pypi.org/project/sphinx-argparse/
+ https://github.com/ashb/sphinx-argparse
+"
+SRC_URI="https://github.com/ashb/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/sphinx[${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() {
+ # needs test files in workdir to compile docs for some reason
+ cp -r test "${WORKDIR}" || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ if [[ ${EPYTHON} == python3.10 ]]; then
+ EPYTEST_DESELECT=(
+ test/test_parser.py::test_parse_nested
+ test/test_parser.py::test_parse_nested_with_alias
+ test/test_parser.py::test_parse_groups
+ test/test_parser.py::test_action_groups_with_subcommands
+ )
+ fi
+
+ epytest
+}
+
+pkg_postinst() {
+ optfeature "markdown support" dev-python/commonmark
+}
diff --git a/dev-python/sphinx-autodoc-typehints/Manifest b/dev-python/sphinx-autodoc-typehints/Manifest
index 968d9023abd6..c75288fd577e 100644
--- a/dev-python/sphinx-autodoc-typehints/Manifest
+++ b/dev-python/sphinx-autodoc-typehints/Manifest
@@ -1 +1,2 @@
DIST sphinx-autodoc-typehints-1.17.0.gh.tar.gz 26087 BLAKE2B d2193378160404dd18ee066dd09c299f69d92b3b747edcd88910a8eb29a707b0ad3f7c95e56a0137c19010d37bddd3d72c5d378dcf72376ea36d69ab2eba52d4 SHA512 0b35cbc3a26cd084c7c741df1ad0a0887eca9943adc16980f7dbc3304c00854bb2861b1314c126e59b2d59cdbff22f5f466cc433e485ec05e40ed93e36ee9650
+DIST sphinx-autodoc-typehints-1.18.0.gh.tar.gz 26201 BLAKE2B 00c2be7d1a9770bf3c2a133ae5f810703e70afc0ce3372c5e667ef9e8783ce74c28fd796211a8bb38507ed1d1142c52461c6d6002069756961dc8d95e837337b SHA512 fa2202551365e929b5dda4c97f9565fec124cb1edda3a957953f4d59716d1c1e28adca769c3dbeadf265763cfb123bf6fefce0f9d9467daf4043f93d360195e3
diff --git a/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-1.18.0.ebuild b/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-1.18.0.ebuild
new file mode 100644
index 000000000000..a7be1864d723
--- /dev/null
+++ b/dev-python/sphinx-autodoc-typehints/sphinx-autodoc-typehints-1.18.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Type hints support for the Sphinx autodoc extension "
+HOMEPAGE="
+ https://github.com/tox-dev/sphinx-autodoc-typehints/
+ https://pypi.org/project/sphinx-autodoc-typehints/
+"
+SRC_URI="
+ https://github.com/tox-dev/sphinx-autodoc-typehints/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+SLOT="0"
+
+RDEPEND=">=dev-python/sphinx-4.5[${PYTHON_USEDEP}]"
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/nptyping-2[${PYTHON_USEDEP}]
+ dev-python/sphobjinv[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ # this package is addicted to Internet
+ tests/test_sphinx_autodoc_typehints.py::test_format_annotation
+)
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
diff --git a/dev-python/sphinx-click/Manifest b/dev-python/sphinx-click/Manifest
new file mode 100644
index 000000000000..fa88c6f6e6d3
--- /dev/null
+++ b/dev-python/sphinx-click/Manifest
@@ -0,0 +1,2 @@
+DIST sphinx-click-3.0.2.tar.gz 19764 BLAKE2B 7190958afaa8edab311e6728c5b2ea37e04d9402882c8bb0ceac935fc1bc93b5c087cbe6847396f9331b9b6b4d7fcb2a439d725661bd8d4cebdde6851f38f78a SHA512 dcf60ca31dcc7c1f45157ed88a5d723d8b531f01b617fb0cc4ada8f09c709b23b55a86bcf8bbe66bf4c2f5ef77329123d271724887022a43b86747087e87ed7c
+DIST sphinx-click-3.1.0.tar.gz 20265 BLAKE2B ca38720636c8c3009db4b4345534883b63e647bd1e2fe1a5d79a4e80c2221a0e9543518d4f1ae9663571259cd14aff8b89f302f05a335b2c824ec24622e04853 SHA512 fe44d9e104216a7edadc2cdd467fd704deeacf580908b2d6e597104dabbf5d1006ee08019aa1252895d2929c42f34fc8ae540530a7bf20023cedcce8267c9a8b
diff --git a/dev-python/sphinx-click/metadata.xml b/dev-python/sphinx-click/metadata.xml
new file mode 100644
index 000000000000..e1c7001b531a
--- /dev/null
+++ b/dev-python/sphinx-click/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <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>
+</pkgmetadata>
diff --git a/dev-python/sphinx-click/sphinx-click-3.0.2.ebuild b/dev-python/sphinx-click/sphinx-click-3.0.2.ebuild
new file mode 100644
index 000000000000..2fbccd474f09
--- /dev/null
+++ b/dev-python/sphinx-click/sphinx-click-3.0.2.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+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-7[${PYTHON_USEDEP}]
+ dev-python/docutils[${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-click/sphinx-click-3.1.0.ebuild b/dev-python/sphinx-click/sphinx-click-3.1.0.ebuild
new file mode 100644
index 000000000000..ea40f0109178
--- /dev/null
+++ b/dev-python/sphinx-click/sphinx-click-3.1.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+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"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/sphinx-2.0[${PYTHON_USEDEP}]
+ >=dev-python/click-5[${PYTHON_USEDEP}]
+ dev-python/docutils[${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/sphinxcontrib-fulltoc/Manifest b/dev-python/sphinxcontrib-fulltoc/Manifest
new file mode 100644
index 000000000000..0af2795447b5
--- /dev/null
+++ b/dev-python/sphinxcontrib-fulltoc/Manifest
@@ -0,0 +1 @@
+DIST sphinxcontrib-fulltoc-1.2.tar.gz 12366 BLAKE2B 229fed6e70f6908152b88ad192fcc19df862905d5c99580f0bd9be8dc44f2a6355c14d6121e69f6e9beec3111d2328d05158052712cc0e5f287f1872ed792e9b SHA512 ea622e1918711390d58061e3608ea8e4d72ccc104c7f80577060c0cc8d608d78b5bdbf097302cf3f96153643266b4edc1a70d039b3f2e1ec555a230cd06671c9
diff --git a/dev-python/sphinxcontrib-fulltoc/metadata.xml b/dev-python/sphinxcontrib-fulltoc/metadata.xml
new file mode 100644
index 000000000000..edbfddfb90e8
--- /dev/null
+++ b/dev-python/sphinxcontrib-fulltoc/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>ceamac.paragon@gmail.com</email>
+ <description>Primary maintainer</description>
+</maintainer>
+<upstream>
+ <remote-id type="github">sphinx-contrib/fulltoc</remote-id>
+ <remote-id type="pypi">sphinxcontrib-fulltoc</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/dev-python/sphinxcontrib-fulltoc/sphinxcontrib-fulltoc-1.2.ebuild b/dev-python/sphinxcontrib-fulltoc/sphinxcontrib-fulltoc-1.2.ebuild
new file mode 100644
index 000000000000..2f1f3e176d1d
--- /dev/null
+++ b/dev-python/sphinxcontrib-fulltoc/sphinxcontrib-fulltoc-1.2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="python-dbus-next is a Python library for DBus"
+HOMEPAGE="
+ https://github.com/sphinx-contrib/fulltoc
+ https://pypi.org/project/sphinxcontrib-fulltoc/
+ https://sphinxcontrib-fulltoc.readthedocs.io
+"
+SRC_URI="https://github.com/sphinx-contrib/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-python/sphinx[${PYTHON_USEDEP}]"
+BDEPEND="dev-python/pbr[${PYTHON_USEDEP}]"
+
+export OSLO_PACKAGE_VERSION=${PV}
+
+S="${WORKDIR}/fulltoc-${PV}"
+
+distutils_enable_tests setup.py
+
+python_install_all() {
+ distutils-r1_python_install_all
+ find "${D}" -name '*.pth' -delete || die
+}
diff --git a/dev-python/sphinxcontrib-katex/Manifest b/dev-python/sphinxcontrib-katex/Manifest
new file mode 100644
index 000000000000..c5713e14f48f
--- /dev/null
+++ b/dev-python/sphinxcontrib-katex/Manifest
@@ -0,0 +1 @@
+DIST sphinxcontrib-katex-0.8.6.tar.gz 17410 BLAKE2B 8e4c72dd40ef6e8f6110a54183c098a67ee08cb043e031437dfe9210376e388e8695ff8766a3b5cac62edafa5138798b09353cf9faa94bab2df5b033b11fefbd SHA512 d7285a8397fb88e5f964096e5108c61e1b97fe0b7b98628459eb0562bb526275a1d3562dbf03c4daeedfe4f34e770db4e3e5620c8279d3b5d8d42371787ce38b
diff --git a/dev-python/sphinxcontrib-katex/metadata.xml b/dev-python/sphinxcontrib-katex/metadata.xml
new file mode 100644
index 000000000000..5769a6680dd0
--- /dev/null
+++ b/dev-python/sphinxcontrib-katex/metadata.xml
@@ -0,0 +1,19 @@
+<?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">
+ Sphinx extension using KaTeX to render math in HTML.
+
+ The extension uses KaTeX for rendering of math in HTML pages.
+ It is designed as a replacement for the built-in extension
+ sphinx.ext.mathjax, which uses MathJax for rendering.
+</longdescription>
+<upstream>
+ <remote-id type="pypi">sphinxcontrib-katex</remote-id>
+ <remote-id type="github">hagenw/sphinxcontrib-katex</remote-id>
+</upstream>
+</pkgmetadata>
diff --git a/dev-python/sphinxcontrib-katex/sphinxcontrib-katex-0.8.6.ebuild b/dev-python/sphinxcontrib-katex/sphinxcontrib-katex-0.8.6.ebuild
new file mode 100644
index 000000000000..6413089c17c8
--- /dev/null
+++ b/dev-python/sphinxcontrib-katex/sphinxcontrib-katex-0.8.6.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{7,8,9,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-napoleon/Manifest b/dev-python/sphinxcontrib-napoleon/Manifest
new file mode 100644
index 000000000000..fdfb3f5ec85b
--- /dev/null
+++ b/dev-python/sphinxcontrib-napoleon/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..a0a60d71470f
--- /dev/null
+++ b/dev-python/sphinxcontrib-napoleon/metadata.xml
@@ -0,0 +1,6 @@
+<?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
new file mode 100644
index 000000000000..aa1b72dc591f
--- /dev/null
+++ b/dev-python/sphinxcontrib-napoleon/sphinxcontrib-napoleon-0.7.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..bde5235cdcd6
--- /dev/null
+++ b/dev-python/sphinxcontrib-restbuilder/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..b6ef8d6ecf53
--- /dev/null
+++ b/dev-python/sphinxcontrib-restbuilder/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>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
new file mode 100644
index 000000000000..7ca7ec14e230
--- /dev/null
+++ b/dev-python/sphinxcontrib-restbuilder/sphinxcontrib-restbuilder-0.3.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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/sre_yield/Manifest b/dev-python/sre_yield/Manifest
new file mode 100644
index 000000000000..698a62d9bd4f
--- /dev/null
+++ b/dev-python/sre_yield/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..769fe848e3f5
--- /dev/null
+++ b/dev-python/sre_yield/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/google/sre_yield/issues</bugs-to>
+ <remote-id type="github">google/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
new file mode 100644
index 000000000000..0d90d4291113
--- /dev/null
+++ b/dev-python/sre_yield/sre_yield-1.2.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,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
new file mode 100644
index 000000000000..0b0d8eba76ab
--- /dev/null
+++ b/dev-python/srt/Manifest
@@ -0,0 +1,3 @@
+DIST srt-3.5.0.tar.gz 24678 BLAKE2B c50704f7811e271116ab6531f4f63eb579b2e34c48e9ab81179d41d08ef803266f3ce7fb0332a9158591326f8a428dda80e3e641db3b4b73cec690cb93af404f SHA512 f5dac7995ce0eddb4da56084b1125200c861a0b21d5b4c8a75c4179a0ce840143abb75f306855ed68170d8c4ab913792c577e21e258ba18bac366c630803a7a5
+DIST srt-3.5.1.tar.gz 24003 BLAKE2B 0ba77727043090310d2db69d9569bde53fcd69a55715e9721a83ee148d382459b1d68b369eee52fc7f99ba5e8aca017128a2d999e44b5ae77dda027a23ecc8bc SHA512 0523b5b31d78db195911ea632adbd25e76d1270510cf9c7432a44bd96e44d4928196c7e4f2eed05bbd73c1d96dcbe99ecea2bd755d697ff659924773c3e6a05e
+DIST srt-3.5.2.tar.gz 24416 BLAKE2B 7da4401cce45045058f4d91a3ea3b688ae65f48d039b642abdf649acf2a8e416e096a5959235dc0165ac0a2169ca63a66b101bac6d8f20b0b330d165626b5010 SHA512 5367d7fa3ed23523f03efad1524fcb44c1a8e1c95e2f3032c0e11ff67795a1399eb32b27365e4b0f98ed5b1d7671d576ab8cd342d50bb4005554faaf03ea9c8a
diff --git a/dev-python/srt/metadata.xml b/dev-python/srt/metadata.xml
new file mode 100644
index 000000000000..cbe3c6a539f0
--- /dev/null
+++ b/dev-python/srt/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>smaniotto.nicola@gmail.com</email>
+ <name>Nicola Smaniotto</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/srt/srt-3.5.0.ebuild b/dev-python/srt/srt-3.5.0.ebuild
new file mode 100644
index 000000000000..586fb03535f3
--- /dev/null
+++ b/dev-python/srt/srt-3.5.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+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"
+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.1.ebuild b/dev-python/srt/srt-3.5.1.ebuild
new file mode 100644
index 000000000000..c02eea494ba0
--- /dev/null
+++ b/dev-python/srt/srt-3.5.1.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+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="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.2.ebuild b/dev-python/srt/srt-3.5.2.ebuild
new file mode 100644
index 000000000000..c02eea494ba0
--- /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_{7,8,9,10} )
+
+inherit distutils-r1
+
+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="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
new file mode 100644
index 000000000000..6747aaf69bf5
--- /dev/null
+++ b/dev-python/sse-starlette/Manifest
@@ -0,0 +1,2 @@
+DIST sse-starlette-0.7.2.tar.gz 510457 BLAKE2B f56849be2725b62bb4dd17afed337f21ad07bd2d6c1e0ef9e4c2f33652df2306385caa3920cc81009a7daf699d7556d7af1aece6a7fa7f1299f95df843ed070b SHA512 c02b638e6a378be21a730059a340f08bb9b1100da7d38a506858c8f9aaadf24c230394923f04e1af1989e8cc0de2b1dda4784151460829ee6daca8bad6d6334b
+DIST sse-starlette-0.9.0.tar.gz 511176 BLAKE2B 0ff4cffb60c585af99d70c8fa710b342323b03e1fb9a52af63d5c43b41f49fa2ef71a78355d6677d8e89ab3ecc80ce75cc0a10a4cc48c728b82deec2acab027a SHA512 bca27f1bca8ac864af24dc03f3f49765d8249940583036830ccc805289a7b87f8dcf1c159af308c4e94b85641d8af50c6236be55eaa802bca9d02c7d5cead50d
diff --git a/dev-python/sse-starlette/metadata.xml b/dev-python/sse-starlette/metadata.xml
new file mode 100644
index 000000000000..a507be0a7892
--- /dev/null
+++ b/dev-python/sse-starlette/metadata.xml
@@ -0,0 +1,9 @@
+<?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/sse-starlette/sse-starlette-0.7.2.ebuild b/dev-python/sse-starlette/sse-starlette-0.7.2.ebuild
new file mode 100644
index 000000000000..c99bbba15c87
--- /dev/null
+++ b/dev-python/sse-starlette/sse-starlette-0.7.2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Server Sent Events for Starlette"
+HOMEPAGE="
+ https://pypi.org/project/sse-starlette/
+ https://github.com/sysid/sse-starlette
+"
+SRC_URI="https://github.com/sysid/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-python/starlette"
+BDEPEND="
+ test? (
+ dev-python/pytest-asyncio
+ dev-python/requests
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/sse-starlette/sse-starlette-0.9.0.ebuild b/dev-python/sse-starlette/sse-starlette-0.9.0.ebuild
new file mode 100644
index 000000000000..01d9eab48463
--- /dev/null
+++ b/dev-python/sse-starlette/sse-starlette-0.9.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Server Sent Events for Starlette"
+HOMEPAGE="
+ https://pypi.org/project/sse-starlette/
+ https://github.com/sysid/sse-starlette
+"
+SRC_URI="https://github.com/sysid/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-python/starlette"
+BDEPEND="
+ test? (
+ dev-python/pytest-asyncio
+ dev-python/requests
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/statmake/Manifest b/dev-python/statmake/Manifest
new file mode 100644
index 000000000000..2a6d3790d140
--- /dev/null
+++ b/dev-python/statmake/Manifest
@@ -0,0 +1,2 @@
+DIST statmake-0.4.0.tar.gz 36803 BLAKE2B cae3f7070c00c6c9cb823b60e683aef4bd9e55ba8e2a98a19f87a1093682e52a0667b21245a888f4569b425c8ba6486870df1d83d66255583b2dd4b516add176 SHA512 7102dfd085674b008b4bbdb54ec8b405ab7e70d96fd54963f6dc40eb53bc4816b4977decd2439756727a887da86fc8917a0f2763cc197c2e437dc53dcde95c84
+DIST statmake-0.4.1.tar.gz 38631 BLAKE2B a13bdfe6ab255bb255315786dd23c3108a8549fe2ecc510699d9562647a9a5c0669c5d43c17252bf08e6052facbda81043226da876a71071107a4cbc9b8d872e SHA512 d0423427aa29982863eba80ac1f52e0e56589504a9b47d76c2145edd47f9cc49eb7a1efbb9dd08445efd39f61be71cea99076c328f77770b115190d31a4b5438
diff --git a/dev-python/statmake/metadata.xml b/dev-python/statmake/metadata.xml
new file mode 100644
index 000000000000..b0d7494e581c
--- /dev/null
+++ b/dev-python/statmake/metadata.xml
@@ -0,0 +1,14 @@
+<?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.4.0.ebuild b/dev-python/statmake/statmake-0.4.0.ebuild
new file mode 100644
index 000000000000..c6cca3a01e51
--- /dev/null
+++ b/dev-python/statmake/statmake-0.4.0.ebuild
@@ -0,0 +1,43 @@
+# 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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Generate STAT tables for variable fonts from .stylespace files"
+HOMEPAGE="https://github.com/daltonmaag/statmake"
+SRC_URI="https://github.com/daltonmaag/statmake/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64"
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/cattrs[${PYTHON_USEDEP}]
+ dev-python/fonttools[${PYTHON_USEDEP}]
+ ')
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ 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/statmake/statmake-0.4.1.ebuild b/dev-python/statmake/statmake-0.4.1.ebuild
new file mode 100644
index 000000000000..dd27375d548f
--- /dev/null
+++ b/dev-python/statmake/statmake-0.4.1.ebuild
@@ -0,0 +1,39 @@
+# 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_{7,8,9,10} )
+inherit distutils-r1
+
+DESCRIPTION="Generate STAT tables for variable fonts from .stylespace files"
+HOMEPAGE="https://github.com/daltonmaag/statmake"
+SRC_URI="https://github.com/daltonmaag/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64"
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/cattrs[${PYTHON_USEDEP}]
+ dev-python/fonttools[${PYTHON_USEDEP}]
+ ')
+"
+BDEPEND="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
+}
diff --git a/dev-python/stone/Manifest b/dev-python/stone/Manifest
new file mode 100644
index 000000000000..619d554c042c
--- /dev/null
+++ b/dev-python/stone/Manifest
@@ -0,0 +1 @@
+DIST stone-3.3.1.tar.gz 282831 BLAKE2B b9a866e43feedea28cd33b89f78100be520a2756fa78888e9a786ae27942a5c19df51010c0af952de70c782d3fc3588de1ae0f58450d807053989bb91d285f15 SHA512 ee07f01b6f10e771afbe6ca6f07d7efa24a5460e5c163f339ae84a8b7742a659f5cb535e674a2f315d1bfa95b7c02e56f46db1f397188b5b6705f6c00c1e9d73
diff --git a/dev-python/stone/metadata.xml b/dev-python/stone/metadata.xml
new file mode 100644
index 000000000000..e15fed67c33f
--- /dev/null
+++ b/dev-python/stone/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>ceamac.paragon@gmail.com</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.1.ebuild b/dev-python/stone/stone-3.3.1.ebuild
new file mode 100644
index 000000000000..b97fc7ecf5b3
--- /dev/null
+++ b/dev-python/stone/stone-3.3.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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}.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
new file mode 100644
index 000000000000..35870dfa15bc
--- /dev/null
+++ b/dev-python/strictyaml/Manifest
@@ -0,0 +1,2 @@
+DIST strictyaml-1.5.0.tar.gz 201594 BLAKE2B 39217a6189cfedde8c4ddf54097db3af558d098d016ef3bef64915e4f652f9780bf7544db7513dfea56acc0b34c41c396533ec6af22e9c204c70706554dd20d5 SHA512 708f82356a081bd0b53b9e1f59d669897be8262d57d3d8bb6d75af2225f68eb9c16791cdf2bc7148dfd5b94f54a2d214bbe166f5dd513dbb7987cc472e6e7b4d
+DIST strictyaml-1.6.1.tar.gz 287908 BLAKE2B ab59addc5a86624c242339ec371403dd0ebb509c0bcf6d9484e71c26ee2670df897458bc7613367eaabe1493068ecaff37cd0b5e2cf08dc97e10107b9f3061f2 SHA512 8492432b599a6af283bd4d9adeac7fba0fc5dd3e081fb5055526799475e62987de30527ca94eecfebf568673d9bd18ffa9a70bb298c88a49e81683e4eea11349
diff --git a/dev-python/strictyaml/metadata.xml b/dev-python/strictyaml/metadata.xml
new file mode 100644
index 000000000000..072803ddd3c0
--- /dev/null
+++ b/dev-python/strictyaml/metadata.xml
@@ -0,0 +1,14 @@
+<?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.5.0.ebuild b/dev-python/strictyaml/strictyaml-1.5.0.ebuild
new file mode 100644
index 000000000000..68b7cd710d6e
--- /dev/null
+++ b/dev-python/strictyaml/strictyaml-1.5.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="A type-safe YAML parser built atop ruamel.yaml"
+HOMEPAGE="https://github.com/crdoconnor/strictyaml"
+SRC_URI="https://github.com/crdoconnor/strictyaml/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64 ~x86"
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND="
+ dev-python/ruamel-yaml[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
diff --git a/dev-python/strictyaml/strictyaml-1.6.1.ebuild b/dev-python/strictyaml/strictyaml-1.6.1.ebuild
new file mode 100644
index 000000000000..166bec87cdbb
--- /dev/null
+++ b/dev-python/strictyaml/strictyaml-1.6.1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="A type-safe YAML parser built atop ruamel.yaml"
+HOMEPAGE="https://github.com/crdoconnor/strictyaml"
+SRC_URI="https://github.com/crdoconnor/strictyaml/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64 ~x86"
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND="dev-python/python-dateutil[${PYTHON_USEDEP}]"
+
+DOCS=( CHANGELOG.md README.md docs )
diff --git a/dev-python/stringbrewer/Manifest b/dev-python/stringbrewer/Manifest
new file mode 100644
index 000000000000..0cc99f6dc566
--- /dev/null
+++ b/dev-python/stringbrewer/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..80c9358d31e1
--- /dev/null
+++ b/dev-python/stringbrewer/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>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
new file mode 100644
index 000000000000..04112d9a3923
--- /dev/null
+++ b/dev-python/stringbrewer/stringbrewer-0.0.1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/Manifest b/dev-python/stringcase/Manifest
new file mode 100644
index 000000000000..18389032bb03
--- /dev/null
+++ b/dev-python/stringcase/Manifest
@@ -0,0 +1 @@
+DIST stringcase-1.2.0.tar.gz 2958 BLAKE2B a649604d079ae0ff00032b7c5efb9941b511ad32937de7f75b5946539641c3ece7d3bec61806f9457e716514bb272c92723bedd107412936c9376273df273240 SHA512 c987f9aa42d22bcfaa6559791bf9292e4300af00d2cf2165838cacd6203b913da197852d49285c30188ca529fd529513cce73a1984f5555cfb81e704977786d3
diff --git a/dev-python/stringcase/metadata.xml b/dev-python/stringcase/metadata.xml
new file mode 100644
index 000000000000..3124698d6149
--- /dev/null
+++ b/dev-python/stringcase/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>1over137@anche.no</email>
+ <name>Shaoyu Tseng</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">stringcase</remote-id>
+ <remote-id type="github">okunishinishi/python-stringcase</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/stringcase/stringcase-1.2.0.ebuild b/dev-python/stringcase/stringcase-1.2.0.ebuild
new file mode 100644
index 000000000000..63c1348ff5a5
--- /dev/null
+++ b/dev-python/stringcase/stringcase-1.2.0.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+DISTUTILS_USE_SETUPTOOLS=no
+
+inherit distutils-r1
+
+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"
+KEYWORDS="~amd64 ~hppa ~ia64 ~x86"
diff --git a/dev-python/survey/Manifest b/dev-python/survey/Manifest
new file mode 100644
index 000000000000..602ad2b98f8a
--- /dev/null
+++ b/dev-python/survey/Manifest
@@ -0,0 +1 @@
+DIST survey-3.4.3.tar.gz 13533965 BLAKE2B 4b2e881bdddb3c606cc356ab1883545ea98b433e8568fc421ae0601c75e9828f1facfaa0b988da19962f93ded7b16ecd4d495c02022b5d1f99a00ba4c6996362 SHA512 a4033a54a9eef5e9082d9903a0b9cc158897d9f58696905c5fb551c64d55fe13d9a687ca161555b280002df3d0f9405dfcbf16830f691004fec614dd980b3e32
diff --git a/dev-python/survey/metadata.xml b/dev-python/survey/metadata.xml
new file mode 100644
index 000000000000..3390e1da3c23
--- /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.paragon@gmail.com</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-3.4.3.ebuild b/dev-python/survey/survey-3.4.3.ebuild
new file mode 100644
index 000000000000..6038f34557d2
--- /dev/null
+++ b/dev-python/survey/survey-3.4.3.ebuild
@@ -0,0 +1,25 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A simple library for creating beautiful interactive prompts"
+HOMEPAGE="
+ https://github.com/Exahilosys/survey
+ https://pypi.org/project/survey/
+"
+SRC_URI="https://github.com/Exahilosys/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ >=dev-python/wrapio-1.0.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_sphinx docs
diff --git a/dev-python/sysv_ipc/Manifest b/dev-python/sysv_ipc/Manifest
new file mode 100644
index 000000000000..7e142cd84f8e
--- /dev/null
+++ b/dev-python/sysv_ipc/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..d2b2c8ce9f88
--- /dev/null
+++ b/dev-python/sysv_ipc/metadata.xml
@@ -0,0 +1,9 @@
+<?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/sysv_ipc/sysv_ipc-1.1.0.ebuild b/dev-python/sysv_ipc/sysv_ipc-1.1.0.ebuild
new file mode 100644
index 000000000000..4f7bb46c0baf
--- /dev/null
+++ b/dev-python/sysv_ipc/sysv_ipc-1.1.0.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2020-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="System V IPC primitives for python"
+HOMEPAGE="
+ https://pypi.org/project/sysv-ipc/
+ https://semanchuk.com/philip/sysv_ipc/
+"
+SRC_URI="https://semanchuk.com/philip/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DOCS=( README ReadMe.html history.html )
+
+distutils_enable_tests unittest
diff --git a/dev-python/taskflow/Manifest b/dev-python/taskflow/Manifest
new file mode 100644
index 000000000000..1dd355f22e3a
--- /dev/null
+++ b/dev-python/taskflow/Manifest
@@ -0,0 +1,2 @@
+DIST taskflow-4.6.3.tar.gz 1076461 BLAKE2B 9a95bfb7f8ef7e06dbf90a29be202d7361f798e41af2700b8713d22e526612905471f4cf269f18f642d01a430f22d321cda981146b672a11ce8dc81b0479f849 SHA512 b024cccc04f8ad5f57515381d1175f4e1ad654fe8f345da1cf041035e40b0a91e0e81bf2203b4df33c5426276ea0b99afb83b6f0759f5fc7da469cc33e75d514
+DIST taskflow-4.6.4.tar.gz 1076719 BLAKE2B b202a6981deb9c9b6c86e9de740d44492a2028e0bd48ff9779e2db7f1ccb1076e5c4fa9195b0cdf5a8fb2af52a30e1ae8b6b3900a268f1b706b014f13df13cf8 SHA512 f8826e2d106123bc3d3c57826c2004c4aeaf17434931a660777ce2866dc659f82427c95bbf6e25459b2fb5ab303bb8ec11a898f53b4cb8b52f614965a56d298a
diff --git a/dev-python/taskflow/metadata.xml b/dev-python/taskflow/metadata.xml
new file mode 100644
index 000000000000..81fb55ab9f96
--- /dev/null
+++ b/dev-python/taskflow/metadata.xml
@@ -0,0 +1,14 @@
+<?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.6.3.ebuild b/dev-python/taskflow/taskflow-4.6.3.ebuild
new file mode 100644
index 000000000000..7b1ce783ffff
--- /dev/null
+++ b/dev-python/taskflow/taskflow-4.6.3.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A library to do [jobs, tasks, flows] in a HA manner using different backends"
+HOMEPAGE="
+ https://github.com/openstack/taskflow
+ https://opendev.org/openstack/taskflow
+ https://pypi.org/project/taskflow/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ >=dev-python/pbr-2.0.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/tenacity-6.0.0[${PYTHON_USEDEP}]
+ >=dev-python/cachetools-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pydot-1.2.4[${PYTHON_USEDEP}]
+"
+
+RDEPEND="${DEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/kazoo-2.6.0[${PYTHON_USEDEP}]
+ >=dev-python/kombu-4.3.0[${PYTHON_USEDEP}]
+ >=dev-python/eventlet-0.18.2[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ >=dev-python/alembic-0.8.0[${PYTHON_USEDEP}]
+ >=dev-python/SQLAlchemy-Utils-0.30.11[${PYTHON_USEDEP}]
+ >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
+ >=dev-python/psycopg-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/pydotplus-2.0.2[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/taskflow/taskflow-4.6.4.ebuild b/dev-python/taskflow/taskflow-4.6.4.ebuild
new file mode 100644
index 000000000000..98d8359e1081
--- /dev/null
+++ b/dev-python/taskflow/taskflow-4.6.4.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A library to do [jobs, tasks, flows] in a HA manner using different backends"
+HOMEPAGE="
+ https://github.com/openstack/taskflow
+ https://opendev.org/openstack/taskflow
+ https://pypi.org/project/taskflow/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ >=dev-python/pbr-2.0.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/tenacity-6.0.0[${PYTHON_USEDEP}]
+ >=dev-python/cachetools-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pydot-1.2.4[${PYTHON_USEDEP}]
+"
+
+RDEPEND="${DEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/kazoo-2.6.0[${PYTHON_USEDEP}]
+ >=dev-python/zake-0.1.6[${PYTHON_USEDEP}]
+ >=dev-python/redis-py-2.10.0[${PYTHON_USEDEP}]
+ >=dev-python/kombu-4.3.0[${PYTHON_USEDEP}]
+ >=dev-python/eventlet-0.18.2[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ >=dev-python/alembic-0.8.0[${PYTHON_USEDEP}]
+ >=dev-python/SQLAlchemy-Utils-0.30.11[${PYTHON_USEDEP}]
+ >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
+ >=dev-python/psycopg-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/pydotplus-2.0.2[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/tchannel/Manifest b/dev-python/tchannel/Manifest
new file mode 100644
index 000000000000..cff63b8da06c
--- /dev/null
+++ b/dev-python/tchannel/Manifest
@@ -0,0 +1 @@
+DIST tchannel-2.1.0-gh.tar.gz 199413 BLAKE2B 20c25526440e9378acfba1dd9c05aaa5a5300bb19ec2c78c1997bfc7ce6be740bca7ef6d4fd49048c42e57f649f33b8c124955dc347bba81501fdf778ce4177e SHA512 651159cdbb83f59039d1c51ad5d5af7c0bf20e8a8fbb6c83c76bdc78cda809bea883d65947c5171c6dd2992ea499d543c4a2dad1102c6a7a4d631e24f005453c
diff --git a/dev-python/tchannel/metadata.xml b/dev-python/tchannel/metadata.xml
new file mode 100644
index 000000000000..57a5d0973d40
--- /dev/null
+++ b/dev-python/tchannel/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/uber/tchannel/issues</bugs-to>
+ <remote-id type="pypi">tchannel</remote-id>
+ <remote-id type="github">uber/tchannel-python</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/tchannel/tchannel-2.1.0.ebuild b/dev-python/tchannel/tchannel-2.1.0.ebuild
new file mode 100644
index 000000000000..b03fd9cd4245
--- /dev/null
+++ b/dev-python/tchannel/tchannel-2.1.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MYPN="${PN}-python"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Network multiplexing and framing protocol for RPC"
+HOMEPAGE="https://github.com/uber/tchannel-python"
+SRC_URI="https://github.com/uber/${MYPN}/archive/refs/tags/${PV}.tar.gz -> ${P}-gh.tar.gz"
+S="${WORKDIR}/${MYPN}-${PV}"
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/crcmod-1[${PYTHON_USEDEP}]
+ >=dev-python/opentracing-2[${PYTHON_USEDEP}]
+ >=dev-python/opentracing_instrumentation-3[${PYTHON_USEDEP}]
+ >=dev-python/thriftrw-0.4[${PYTHON_USEDEP}]
+ >=dev-python/threadloop-1[${PYTHON_USEDEP}]
+ >=www-servers/tornado-4.3[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/hypothesis-1.14[${PYTHON_USEDEP}]
+ dev-python/ipdb[${PYTHON_USEDEP}]
+ >=dev-python/jaeger-client-4[${PYTHON_USEDEP}]
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pygal[${PYTHON_USEDEP}]
+ >=dev-python/pytest-benchmark-3[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/pytest-tornado[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/wrapt-1.10[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/tempus-themes/Manifest b/dev-python/tempus-themes/Manifest
new file mode 100644
index 000000000000..0505f7dcb15f
--- /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 000000000000..4eb9a443b0e8
--- /dev/null
+++ b/dev-python/tempus-themes/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>cyber+gentoo@sysrq.in</email>
+ <name>Anna</name>
+ </maintainer>
+ <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 000000000000..915d26a7fdaa
--- /dev/null
+++ b/dev-python/tempus-themes/tempus-themes-2.3.0.20220206.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_{7,8,9,10} pypy3 )
+inherit distutils-r1
+
+DESCRIPTION="Accessible themes for Pygments"
+HOMEPAGE="
+ https://pypi.org/project/tempus-themes/
+ https://gitlab.com/protesilaos/tempus-themes-generator
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/pygments[${PYTHON_USEDEP}]"
diff --git a/dev-python/testrepository/Manifest b/dev-python/testrepository/Manifest
new file mode 100644
index 000000000000..013694ad9220
--- /dev/null
+++ b/dev-python/testrepository/Manifest
@@ -0,0 +1 @@
+DIST testrepository-0.0.20.tar.gz 84956 BLAKE2B 9b9a8e0c21754fe8ba019b58024f137e72b4341cb368fb48dc48039f512b232ca4f03f16c2596aa34b428d69097db939e5776417a7d26f5a8508c8f0c1f1a5bf SHA512 df14500e2b27b6f39d9d4c4f42961efd63dfe25186e561eb1678952a8ab9311f17c36b78819fea33e0ac879c47a33d45c31ff58be017609c8a6157905ee712d6
diff --git a/dev-python/testrepository/files/testrepository-0.0.20-test-backport.patch b/dev-python/testrepository/files/testrepository-0.0.20-test-backport.patch
new file mode 100644
index 000000000000..d7ab87c06694
--- /dev/null
+++ b/dev-python/testrepository/files/testrepository-0.0.20-test-backport.patch
@@ -0,0 +1,62 @@
+From 8f8ab15fafdad6db850c84772323b32375b09285 Mon Sep 17 00:00:00 2001
+From: Robert Collins <robertc@robertcollins.net>
+Date: Tue, 10 Mar 2015 15:21:49 +1300
+Subject: [PATCH] Fixup tests with latest testtools.
+
+Testtools has started chunking exceptions (which is perhaps good,
+perhaps bad) - but we shouldn't depend on the exact behaviour in it
+for our tests.
+--- a/NEWS
++++ b/NEWS
+@@ -5,6 +5,12 @@ testrepository release notes
+ NEXT (In development)
+ +++++++++++++++++++++
+
++CHANGES
++-------
++
++* Isolate the testrepository test suite from the chunking (or otherwise)
++ behaviour of testtools' exception handlers. (Robert Collins)
++
+ 0.0.20
+ ++++++
+
+--- a/testrepository/tests/test_repository.py
++++ b/testrepository/tests/test_repository.py
+@@ -28,6 +28,7 @@
+ from testresources import TestResource
+ from testtools import (
+ clone_test_with_new_id,
++ content,
+ PlaceHolder,
+ )
+ import testtools
+@@ -103,19 +104,24 @@ class Case(ResourcedTestCase):
+ def passing(self):
+ pass
+
+- def failing(self):
+- self.fail("oops")
+-
+ def unexpected_success(self):
+ self.expectFailure("unexpected success", self.assertTrue, True)
+
+
++class FailingCase:
++
++ def run(self, result):
++ result.startTest(self)
++ result.addError(
++ self, None, details={'traceback': content.text_content("")})
++ result.stopTest(self)
++
+ def make_test(id, should_pass):
+ """Make a test."""
+ if should_pass:
+ case = Case("passing")
+ else:
+- case = Case("failing")
++ case = FailingCase()
+ return clone_test_with_new_id(case, id)
+
+
diff --git a/dev-python/testrepository/files/testrepository-0.0.20-test-backport1.patch b/dev-python/testrepository/files/testrepository-0.0.20-test-backport1.patch
new file mode 100644
index 000000000000..655d2c3e79e0
--- /dev/null
+++ b/dev-python/testrepository/files/testrepository-0.0.20-test-backport1.patch
@@ -0,0 +1,16 @@
+From d3d6cac4fd42f2067c0dd81be748853f81c348fc Mon Sep 17 00:00:00 2001
+From: Robert Collins <robertc@robertcollins.net>
+Date: Sun, 12 Jul 2015 21:37:34 +1200
+Subject: [PATCH] Fix 3.3+ tests with nested classnames.
+
+--- a/testrepository/tests/ui/test_cli.py
++++ b/testrepository/tests/ui/test_cli.py
+@@ -157,7 +157,7 @@ def method(self):
+ self.assertThat(ui._stdout.buffer.getvalue().decode('utf8'),
+ DocTestMatches("""\
+ ======================================================================
+-FAIL: testrepository.tests.ui.test_cli.Case.method
++FAIL: testrepository.tests.ui.test_cli...Case.method
+ ----------------------------------------------------------------------
+ ...Traceback (most recent call last):...
+ File "...test_cli.py", line ..., in method
diff --git a/dev-python/testrepository/files/testrepository-0.0.20-test-backport2.patch b/dev-python/testrepository/files/testrepository-0.0.20-test-backport2.patch
new file mode 100644
index 000000000000..69d591c2f245
--- /dev/null
+++ b/dev-python/testrepository/files/testrepository-0.0.20-test-backport2.patch
@@ -0,0 +1,49 @@
+From e2f84ae6b2bcf89221613056d0c45dd308f46d62 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jelmer=20Vernoo=C4=B3?= <jelmer@jelmer.uk>
+Date: Thu, 5 Apr 2018 01:02:40 +0100
+Subject: [PATCH] Fix the testrepository tests with newer versions of
+ testtools.
+
+--- a/testrepository/tests/commands/test_failing.py
++++ b/testrepository/tests/commands/test_failing.py
+@@ -90,7 +90,7 @@ class TestCommand(ResourcedTestCase):
+ finally:
+ log.stopTestRun()
+ self.assertEqual(
+- log._events, [
++ [tuple(ev) for ev in log._events], [
+ ('startTestRun',),
+ ('status', 'failing', 'inprogress', None, True, None, None, False,
+ None, None, Wildcard),
+--- a/testrepository/tests/test_repository.py
++++ b/testrepository/tests/test_repository.py
+@@ -113,9 +113,10 @@ class FailingCase:
+ def run(self, result):
+ result.startTest(self)
+ result.addError(
+- self, None, details={'traceback': content.text_content("")})
++ self, None, details={'traceback': content.text_content("tb")})
+ result.stopTest(self)
+
++
+ def make_test(id, should_pass):
+ """Make a test."""
+ if should_pass:
+@@ -409,7 +410,7 @@ class TestRepositoryContract(ResourcedTestCase):
+ finally:
+ log.stopTestRun()
+ self.assertEqual(
+- log._events, [
++ [tuple(ev) for ev in log._events], [
+ ('startTestRun',),
+ ('status',
+ 'testrepository.tests.test_repository.Case.method',
+@@ -465,7 +466,7 @@ class TestRepositoryContract(ResourcedTestCase):
+ finally:
+ log.stopTestRun()
+ self.assertEqual(
+- log._events,
++ [tuple(ev) for ev in log._events],
+ [
+ ('startTestRun',),
+ ('status',
diff --git a/dev-python/testrepository/metadata.xml b/dev-python/testrepository/metadata.xml
new file mode 100644
index 000000000000..3491fff6168d
--- /dev/null
+++ b/dev-python/testrepository/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <description>Comaintainers welcome</description>
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">testing-cabal/testrepository</remote-id>
+ <remote-id type="pypi">testrepository</remote-id>
+ <remote-id type="launchpad">testrepository</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/testrepository/testrepository-0.0.20-r200.ebuild b/dev-python/testrepository/testrepository-0.0.20-r200.ebuild
new file mode 100644
index 000000000000..76165e5e911c
--- /dev/null
+++ b/dev-python/testrepository/testrepository-0.0.20-r200.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Required for test phase
+DISTUTILS_IN_SOURCE_BUILD=1
+EPYTEST_DESELECT=(
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_can_get_inserter
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_can_initialise_with_param
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_count
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_failing_complete_runs_delete_missing_failures
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_failing_empty
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_failing_get_id
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_failing_get_subunit_stream
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_failing_one_run
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_failing_partial_runs_preserve_missing_failures
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_latest_run
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_latest_run_empty_repo
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_subunit_from_test_run
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_test_from_test_run
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_test_ids
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_test_run
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_test_run_get_id
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_test_run_missing_keyerror
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_get_times_unknown_tests_are_unknown
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_insert_stream_smoke
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_inserted_exists_no_impact_on_test_times
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_inserted_test_times_known
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_inserting_creates_id
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_latest_id_empty
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_latest_id_nonempty
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_open
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_open_non_existent
+ testrepository/tests/test_repository.py::TestRepositoryContract::test_unexpected_success
+ testrepository/tests/test_ui.py::TestUIContract::test_args_are_exposed_at_arguments
+ testrepository/tests/test_ui.py::TestUIContract::test_exec_subprocess
+ testrepository/tests/test_ui.py::TestUIContract::test_factory_input_stream_args
+ testrepository/tests/test_ui.py::TestUIContract::test_factory_noargs
+ testrepository/tests/test_ui.py::TestUIContract::test_here
+ testrepository/tests/test_ui.py::TestUIContract::test_iter_streams_load_stdin_use_case
+ testrepository/tests/test_ui.py::TestUIContract::test_iter_streams_unexpected_type_raises
+ testrepository/tests/test_ui.py::TestUIContract::test_make_result
+ testrepository/tests/test_ui.py::TestUIContract::test_make_result_previous_run
+ testrepository/tests/test_ui.py::TestUIContract::test_options_at_options
+ testrepository/tests/test_ui.py::TestUIContract::test_options_on_command_picked_up
+ testrepository/tests/test_ui.py::TestUIContract::test_options_when_set_at_options
+ testrepository/tests/test_ui.py::TestUIContract::test_output_error
+ testrepository/tests/test_ui.py::TestUIContract::test_output_rest
+ testrepository/tests/test_ui.py::TestUIContract::test_output_stream
+ testrepository/tests/test_ui.py::TestUIContract::test_output_stream_non_utf8
+ testrepository/tests/test_ui.py::TestUIContract::test_output_summary
+ testrepository/tests/test_ui.py::TestUIContract::test_output_table
+ testrepository/tests/test_ui.py::TestUIContract::test_output_tests
+ testrepository/tests/test_ui.py::TestUIContract::test_output_values
+ testrepository/tests/test_ui.py::TestUIContract::test_set_command
+ testrepository/tests/test_ui.py::TestUIContract::test_set_command_checks_args_invalid_arg
+ testrepository/tests/test_ui.py::TestUIContract::test_set_command_checks_args_missing_arg
+ testrepository/tests/test_ui.py::TestUIContract::test_set_command_checks_args_unwanted_arg
+ testrepository/tests/test_ui.py::TestUIContract::test_set_command_with_no_name_works
+ testrepository/tests/test_ui.py::TestUIContract::test_subprocesses_have_stdin
+ testrepository/tests/test_ui.py::TestUIContract::test_subprocesses_have_stdout
+ testrepository/tests/commands/test_run.py::TestReturnCodeToSubunit::test_returncode_0_no_change
+ testrepository/tests/commands/test_run.py::TestReturnCodeToSubunit::test_returncode_nonzero_fail_appended_to_content
+ testrepository/tests/ui/test_cli.py::TestCLIUI::test_dash_dash_help_shows_help
+)
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="A repository of test results"
+HOMEPAGE="
+ https://launchpad.net/testrepository
+ https://pypi.org/project/testrepository/
+ https://github.com/testing-cabal/testrepository
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0 BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/subunit-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/testtools-0.9.30[${PYTHON_USEDEP}]
+ dev-python/fixtures[${PYTHON_USEDEP}]
+"
+#bzr is listed but presumably req'd for a live repo test run
+DEPEND="
+ ${RDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/testresources[${PYTHON_USEDEP}]
+ dev-python/testscenarios[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-test-backport.patch"
+ "${FILESDIR}/${P}-test-backport1.patch"
+ "${FILESDIR}/${P}-test-backport2.patch"
+)
+
+distutils_enable_tests pytest
diff --git a/dev-python/threadloop/Manifest b/dev-python/threadloop/Manifest
new file mode 100644
index 000000000000..6adfe8f0e5da
--- /dev/null
+++ b/dev-python/threadloop/Manifest
@@ -0,0 +1 @@
+DIST threadloop-1.0.2.tar.gz 4905 BLAKE2B a3a569dd1353fc32277bab59649666c8fe79b3aeee3f04926b3b29fe4d12c771c5d59fbf9bae5eb4eeb70baf0d4c80a2a62b8f1fb54a96b7abaa9dca340aea02 SHA512 63dc84e26d697e6489b4fc1bf035749c8e77af039528a9b1d1df87258654db993ef9c33abce7e04403ac5d5a3e56ed102ce4510193eb31f1f681e642cb1a9614
diff --git a/dev-python/threadloop/metadata.xml b/dev-python/threadloop/metadata.xml
new file mode 100644
index 000000000000..a1932917de4c
--- /dev/null
+++ b/dev-python/threadloop/metadata.xml
@@ -0,0 +1,17 @@
+<?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/breerly/threadloop/issues</bugs-to>
+ <maintainer>
+ <email>breerly@gmail.com</email>
+ <name>Grayson Koonce</name>
+ </maintainer>
+ <remote-id type="pypi">threadloop</remote-id>
+ <remote-id type="github">breerly/threadloop</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/threadloop/threadloop-1.0.2.ebuild b/dev-python/threadloop/threadloop-1.0.2.ebuild
new file mode 100644
index 000000000000..ba9008d97af0
--- /dev/null
+++ b/dev-python/threadloop/threadloop-1.0.2.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Run Tornado Coroutines from Synchronous Python"
+HOMEPAGE="https://github.com/GoodPete/threadloop"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~amd64"
+
+RDEPEND=""
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-python/ipdb[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/thriftrw/Manifest b/dev-python/thriftrw/Manifest
new file mode 100644
index 000000000000..e804affc0131
--- /dev/null
+++ b/dev-python/thriftrw/Manifest
@@ -0,0 +1 @@
+DIST thriftrw-1.8.1.tar.gz 91370 BLAKE2B 8e267b77f80ce1dec0bfd04a0a047cbe8279374f65f7a928ad65019ee11bb44afc991182c8f5525c34e3e6ce736deb1eb6a2e8428cf4e8853ad2d2e18649e8ed SHA512 ea40d4aa35d8f5f097557cb0b1c8800b2a935fc738c33266951163f4ade783b2a5d866a18433afe4e304f435b8de012f52c6d717e812b604e34c7a4ee61fd0fa
diff --git a/dev-python/thriftrw/files/thriftrw-1.8.1-no-install-examples.patch b/dev-python/thriftrw/files/thriftrw-1.8.1-no-install-examples.patch
new file mode 100644
index 000000000000..0cc86410765e
--- /dev/null
+++ b/dev-python/thriftrw/files/thriftrw-1.8.1-no-install-examples.patch
@@ -0,0 +1,11 @@
+--- a/setup.py
++++ b/setup.py
+@@ -148,7 +148,7 @@
+ author='Abhinav Gupta',
+ author_email='abg@uber.com',
+ url='https://github.com/thriftrw/thriftrw-python',
+- packages=find_packages(exclude=('tests', 'tests.*')),
++ packages=find_packages(exclude=('tests', 'tests.*', 'examples', 'examples*')),
+ license='MIT',
+ install_requires=['six', 'ply'],
+ tests_require=['pytest', 'mock'],
diff --git a/dev-python/thriftrw/files/thriftrw-1.8.1-tool-pytest.patch b/dev-python/thriftrw/files/thriftrw-1.8.1-tool-pytest.patch
new file mode 100644
index 000000000000..5bb3774c6f30
--- /dev/null
+++ b/dev-python/thriftrw/files/thriftrw-1.8.1-tool-pytest.patch
@@ -0,0 +1,11 @@
+--- a/setup.cfg
++++ b/setup.cfg
+@@ -2,7 +2,7 @@
+ create-wheel = yes
+ python-file-with-version = thriftrw/__init__.py
+
+-[pytest]
++[tool:pytest]
+ addopts = --tb short --benchmark-autosave --benchmark-save-data
+
+ [egg_info]
diff --git a/dev-python/thriftrw/metadata.xml b/dev-python/thriftrw/metadata.xml
new file mode 100644
index 000000000000..94d4ab11fbf6
--- /dev/null
+++ b/dev-python/thriftrw/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/thriftrw/thriftrw-python/issues</bugs-to>
+ <remote-id type="pypi">thriftrw</remote-id>
+ <remote-id type="github">thriftrw/thriftrw-python</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/thriftrw/thriftrw-1.8.1.ebuild b/dev-python/thriftrw/thriftrw-1.8.1.ebuild
new file mode 100644
index 000000000000..e17b450c98a0
--- /dev/null
+++ b/dev-python/thriftrw/thriftrw-1.8.1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+inherit distutils-r1
+
+MY_PN="${PN}-python"
+DESCRIPTION="A Thrift encoding library for Python"
+HOMEPAGE="
+ https://github.com/thriftrw/thriftrw-python
+ https://pypi.org/project/thriftrw/
+"
+SRC_URI="https://github.com/thriftrw/${MY_PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~amd64"
+
+# broken tests
+RESTRICT="test"
+
+RDEPEND="dev-python/ply[${PYTHON_USEDEP}]"
+BDEPEND="
+ >=dev-python/cython-0.17[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/pytest-benchmark-3.0.1[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-no-install-examples.patch"
+ "${FILESDIR}/${P}-tool-pytest.patch"
+)
+
+DOCS=( CHANGELOG.rst CONTRIBUTING.md README.rst TODO.rst )
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs dev-python/alabaster
+
+python_prepare_all() {
+ rm tests/protocol/test_binary.py || die
+ distutils-r1_python_prepare_all
+}
+
+python_compile() {
+ use test && esetup.py build_ext --force --inplace
+ distutils-r1_python_compile
+}
diff --git a/dev-python/tinyrpc/Manifest b/dev-python/tinyrpc/Manifest
new file mode 100644
index 000000000000..1ae04e1e3286
--- /dev/null
+++ b/dev-python/tinyrpc/Manifest
@@ -0,0 +1,2 @@
+DIST tinyrpc-1.1.2.tar.gz 77020 BLAKE2B 1b5fc9126288e8046adb0bb1fb97b94cbff655d4d4573e3b7b369e3739746ccd96a6db9ad2a6bdf7a935a96d6c808ca0891619693669b1d8cee30a7c231c6f9a SHA512 d2322f852bf320e4e27917bdb3aa0acd05f00c3ab242e367602df7e2db700e3b3556600a45d57b3a92abf00b54c184891f3b40c18fbb42ed97a0f1387aa97abd
+DIST tinyrpc-1.1.4.tar.gz 77281 BLAKE2B 880c9e53ba39e1a6e5992d91b3f2d2991117c6122e504f1b4cc2ff685f467ed1592bbd28cbca584ad104b1f5f340272cdffb86ea5ef28940b12dbc60e9a50d7e SHA512 423a76ae12dc7a46579574c12ea12168cf04f71b3988067e2889cacbf67f5575e946f4f6b854a63bac2fb56915f5659669ad7974730cdec5482434403143912e
diff --git a/dev-python/tinyrpc/metadata.xml b/dev-python/tinyrpc/metadata.xml
new file mode 100644
index 000000000000..2f6e820f4468
--- /dev/null
+++ b/dev-python/tinyrpc/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">
+ <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>
+</pkgmetadata>
diff --git a/dev-python/tinyrpc/tinyrpc-1.1.2.ebuild b/dev-python/tinyrpc/tinyrpc-1.1.2.ebuild
new file mode 100644
index 000000000000..5520257750f4
--- /dev/null
+++ b/dev-python/tinyrpc/tinyrpc-1.1.2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2019-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+inherit distutils-r1 optfeature
+
+DESCRIPTION="A protocol neutral RPC library that supports JSON-RPC and zmq."
+HOMEPAGE="https://github.com/mbr/tinyrpc"
+SRC_URI="https://github.com/mbr/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
+BDEPEND="test? (
+ dev-python/gevent-websocket[${PYTHON_USEDEP}]
+ dev-python/gevent[${PYTHON_USEDEP}]
+ dev-python/jsonext[${PYTHON_USEDEP}]
+ dev-python/msgpack[${PYTHON_USEDEP}]
+ dev-python/pika[${PYTHON_USEDEP}]
+ dev-python/pyzmq[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/websocket-client[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+)"
+
+distutils_enable_tests pytest
+
+distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
+
+pkg_postinst() {
+ optfeature "gevent support" dev-python/gevent
+ optfeature "httpclient support" \
+ "dev-python/requests dev-python/websocket-client dev-python/gevent-websocket"
+ optfeature "websocket support" dev-python/gevent-websocket
+ optfeature "wsgi support" dev-python/werkzeug
+ optfeature "zmq support" dev-python/pyzmq
+ optfeature "jsonext support" dev-python/jsonext
+}
diff --git a/dev-python/tinyrpc/tinyrpc-1.1.4.ebuild b/dev-python/tinyrpc/tinyrpc-1.1.4.ebuild
new file mode 100644
index 000000000000..2982e87ef0eb
--- /dev/null
+++ b/dev-python/tinyrpc/tinyrpc-1.1.4.ebuild
@@ -0,0 +1,44 @@
+# Copyright 2019-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="A protocol neutral RPC library that supports JSON-RPC and zmq"
+HOMEPAGE="https://github.com/mbr/tinyrpc"
+SRC_URI="https://github.com/mbr/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/six-1.16.0[${PYTHON_USEDEP}]"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/gevent-websocket-0.10.1[${PYTHON_USEDEP}]
+ >=dev-python/gevent-21.1.2[${PYTHON_USEDEP}]
+ dev-python/jsonext[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-1.0.2[${PYTHON_USEDEP}]
+ >=dev-python/pika-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pyzmq-22.0.3[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.25.1[${PYTHON_USEDEP}]
+ dev-python/websocket-client[${PYTHON_USEDEP}]
+ >=dev-python/werkzeug-2.0.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs dev-python/sphinx_rtd_theme
+
+pkg_postinst() {
+ optfeature "gevent support" dev-python/gevent
+ optfeature "httpclient support" "dev-python/requests dev-python/websocket-client dev-python/gevent-websocket"
+ optfeature "websocket support" dev-python/gevent-websocket
+ optfeature "wsgi support" dev-python/werkzeug
+ optfeature "zmq support" dev-python/pyzmq
+ optfeature "jsonext support" dev-python/jsonext
+}
diff --git a/dev-python/tldextract/Manifest b/dev-python/tldextract/Manifest
index b294a521b402..1f9bca95710b 100644
--- a/dev-python/tldextract/Manifest
+++ b/dev-python/tldextract/Manifest
@@ -1 +1,2 @@
DIST tldextract-3.2.0.tar.gz 103653 BLAKE2B 74b85da2e5a8c953075636f908bd32ba825c53fbea145a691cb681596376318b63729e2c6b7291f1ef21a55fa927d48e31cf0db241bb94be47f706fb68239515 SHA512 4e0731792793eb0a6d0da8387d15e8b9de17f20108361230703fd9f66f2aaad6260073b611e27135e571b1899844b271f3dae4e77122186cc78fbb05f3b3f237
+DIST tldextract-3.2.1.tar.gz 104364 BLAKE2B 6bd16ad4af4b3d7f92286f09ff265ba83f3661aa17976688e741bc3d8a2c386f695edff85f15f94fe203420cf44e5ce76ff8cfb047c3eeec1b6a8056b4a48cd1 SHA512 545013f5f25ea2e207e8dc65caeef3999f0f3a5abdaad09f5a599dc25a9344c9fde9a816785a20df8a137c082e37329f3984fdf6a80789d5976c0bef244d9095
diff --git a/dev-python/tldextract/tldextract-3.2.1.ebuild b/dev-python/tldextract/tldextract-3.2.1.ebuild
new file mode 100644
index 000000000000..9c41e5e693f2
--- /dev/null
+++ b/dev-python/tldextract/tldextract-3.2.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
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Accurately separate the TLD from the registered domain and subdomains of a URL"
+HOMEPAGE="https://pypi.org/project/tldextract/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ dev-python/filelock[${PYTHON_USEDEP}]
+ dev-python/idna[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/requests-file[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/responses[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/tooz/Manifest b/dev-python/tooz/Manifest
new file mode 100644
index 000000000000..08ee81f74b1c
--- /dev/null
+++ b/dev-python/tooz/Manifest
@@ -0,0 +1,2 @@
+DIST tooz-2.10.1.tar.gz 95627 BLAKE2B 046ac561f235c54be4a7984fb8d4f9c55e59a19284c9a2565d4001e78c55bf79e0247669e544dd8f4d4d78a3874282da92fbec05f615b561740cf7246042ecd8 SHA512 c968561ea950e2da3be47c4bb1bdc2cb5e0de62ce7f9bf371f455185b0587085b8224a853a183a9b1a8d5221ed054fa0b80da29fb6bfb1ac88b9793476f9c87c
+DIST tooz-2.11.0.tar.gz 95997 BLAKE2B a61199586e58ec6bb63133137c91445df9c284a65b91125fa73e8c19efa37a5b5da039be94bc73b983f7a83dfa2b34d4d6cd7eb702823fa5eaca9429984fc323 SHA512 feb9217908bb986aeeffe92ae765b948edb1c1311eeb011b19b7bfdccb9b94dec82139e6056bbdbbffa79b208fc9ef22d1e100f75d6e9c61f7352dee3523ab8f
diff --git a/dev-python/tooz/metadata.xml b/dev-python/tooz/metadata.xml
new file mode 100644
index 000000000000..d7889cd642eb
--- /dev/null
+++ b/dev-python/tooz/metadata.xml
@@ -0,0 +1,16 @@
+<?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.10.1.ebuild b/dev-python/tooz/tooz-2.10.1.ebuild
new file mode 100644
index 000000000000..a683aadaaab0
--- /dev/null
+++ b/dev-python/tooz/tooz-2.10.1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Library centralizing the most common distributed primitives"
+HOMEPAGE="
+ https://opendev.org/openstack/tooz
+ https://pypi.org/project/tooz/
+ https://launchpad.net/python-tooz
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-1.6.1[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.16.0[${PYTHON_USEDEP}]
+ >=dev-python/voluptuous-0.8.9[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-0.4.0[${PYTHON_USEDEP}]
+ >=dev-python/fasteners-0.7[${PYTHON_USEDEP}]
+ >=dev-python/tenacity-3.2.1[${PYTHON_USEDEP}]
+ >=dev-python/futurist-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-4.7.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/subunit-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/testtools-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pifpaf-0.10.0[${PYTHON_USEDEP}]
+ >=dev-python/ddt-1.2.1[${PYTHON_USEDEP}]
+ >=dev-python/nose-1.3.7[${PYTHON_USEDEP}]
+
+ dev-python/etcd3[${PYTHON_USEDEP}]
+ dev-python/etcd3gw[${PYTHON_USEDEP}]
+ dev-python/pymemcache[${PYTHON_USEDEP}]
+ dev-python/pymysql[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/sysv_ipc[${PYTHON_USEDEP}]
+ dev-python/zake[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests nose
+
+python_prepare_all() {
+ # allow usage of renamed msgpack
+ sed -i '/^msgpack/d' requirements.txt || die
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ nosetests \
+ -e tooz.tests.test_coordination.TestAPI \
+ -e tooz.tests.test_memcache.TestMemcacheDriverFailures.test_client_failure_join \
+ -e tooz.tests.test_memcache.TestMemcacheDriverFailures.test_client_failure_leave \
+ -e tooz.tests.test_partitioner \
+ || die
+}
diff --git a/dev-python/tooz/tooz-2.11.0.ebuild b/dev-python/tooz/tooz-2.11.0.ebuild
new file mode 100644
index 000000000000..a683aadaaab0
--- /dev/null
+++ b/dev-python/tooz/tooz-2.11.0.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Library centralizing the most common distributed primitives"
+HOMEPAGE="
+ https://opendev.org/openstack/tooz
+ https://pypi.org/project/tooz/
+ https://launchpad.net/python-tooz
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-1.6.1[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.16.0[${PYTHON_USEDEP}]
+ >=dev-python/voluptuous-0.8.9[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-0.4.0[${PYTHON_USEDEP}]
+ >=dev-python/fasteners-0.7[${PYTHON_USEDEP}]
+ >=dev-python/tenacity-3.2.1[${PYTHON_USEDEP}]
+ >=dev-python/futurist-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-4.7.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/subunit-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/testtools-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pifpaf-0.10.0[${PYTHON_USEDEP}]
+ >=dev-python/ddt-1.2.1[${PYTHON_USEDEP}]
+ >=dev-python/nose-1.3.7[${PYTHON_USEDEP}]
+
+ dev-python/etcd3[${PYTHON_USEDEP}]
+ dev-python/etcd3gw[${PYTHON_USEDEP}]
+ dev-python/pymemcache[${PYTHON_USEDEP}]
+ dev-python/pymysql[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/sysv_ipc[${PYTHON_USEDEP}]
+ dev-python/zake[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests nose
+
+python_prepare_all() {
+ # allow usage of renamed msgpack
+ sed -i '/^msgpack/d' requirements.txt || die
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ nosetests \
+ -e tooz.tests.test_coordination.TestAPI \
+ -e tooz.tests.test_memcache.TestMemcacheDriverFailures.test_client_failure_join \
+ -e tooz.tests.test_memcache.TestMemcacheDriverFailures.test_client_failure_leave \
+ -e tooz.tests.test_partitioner \
+ || die
+}
diff --git a/dev-python/transaction/Manifest b/dev-python/transaction/Manifest
new file mode 100644
index 000000000000..1adde7642c77
--- /dev/null
+++ b/dev-python/transaction/Manifest
@@ -0,0 +1 @@
+DIST transaction-3.0.1.tar.gz 72934 BLAKE2B 2bd48ddfac0eb28c7551edc04fbb032ce4e22c178a01e9e0f57605d9d1a6eecba9cda486810fdc333029ca521bf78a7ca33f238ab9bfbad2429445674f45da3c SHA512 9609d6eeb90bb35e3757b1bd3a36e25b910d087f390701afa245641f61b92e55081812d07d56bccd2ab50da96a39212f7f517fb437843909bb7b75cb8d879f40
diff --git a/dev-python/transaction/metadata.xml b/dev-python/transaction/metadata.xml
new file mode 100644
index 000000000000..2d31c617beef
--- /dev/null
+++ b/dev-python/transaction/metadata.xml
@@ -0,0 +1,12 @@
+<?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">zopefoundation/transaction</remote-id>
+ <remote-id type="pypi">transaction</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/transaction/transaction-3.0.1.ebuild b/dev-python/transaction/transaction-3.0.1.ebuild
new file mode 100644
index 000000000000..b5d39c754331
--- /dev/null
+++ b/dev-python/transaction/transaction-3.0.1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Transaction management for Python"
+HOMEPAGE="
+ https://pypi.python.org/pypi/transaction
+ https://github.com/zopefoundation/transaction
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="ZPL"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/zope-interface[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ )
+"
+
+DOCS="CHANGES.rst README.rst"
+
+distutils_enable_tests nose
+distutils_enable_sphinx docs
+
+src_test() {
+ cd src || die
+ python_foreach_impl python_test
+}
diff --git a/dev-python/trivup/Manifest b/dev-python/trivup/Manifest
new file mode 100644
index 000000000000..c2acddf5c6f1
--- /dev/null
+++ b/dev-python/trivup/Manifest
@@ -0,0 +1 @@
+DIST trivup-0.10.0-gh.tar.gz 194500 BLAKE2B 46e9f50e1602f270aab5720d205a3d16882a5c7fcf342913083a9172b86f97346b8a7d33267d666734c476f2c7ef7d2618a3fa234fbf1cd559ae614766e1c425 SHA512 8598280e3a38dee85c46d52e688dc2e146bc5ffcede678326af661ac9fd09f7719d6b892a7d264b94d147e0b02f117eca8472898d479bdc4a64b521c2807262a
diff --git a/dev-python/trivup/metadata.xml b/dev-python/trivup/metadata.xml
new file mode 100644
index 000000000000..8b0293d219ca
--- /dev/null
+++ b/dev-python/trivup/metadata.xml
@@ -0,0 +1,28 @@
+<?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">
+trivup is a flexible, pluggable, light-weight, partly naiivistic, framework for trivially bringing up a cluster of applications.
+
+The initial use-case is to bring up a simple Kafka cluster for easily testing librdkafka on different broker versions.
+
+Featured apps:
+
+ Apache Kafka cluster with optional KRaft (ZooKeeper-less) support
+ Apache ZooKeeper
+ Confluent's Schema-Registry
+ Kerberos 5 KDC for GSSAPI/Kerberos authentication
+ OAUTHBEARER OIDC JWK ticket server
+ SSL CA/public/private certificate generation
+
+SECURITY WARNING: trivup will run unprotected, wide-open, poorly-configured, server applications on your machine, providing an ingress vector for intrusion, theft and data-loss. DO NOT RUN ON PUBLIC NETWORKS.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">edenhill/trivup</remote-id>
+ <remote-id type="pypi">trivup</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/trivup/trivup-0.10.0.ebuild b/dev-python/trivup/trivup-0.10.0.ebuild
new file mode 100644
index 000000000000..cf886b19bfc6
--- /dev/null
+++ b/dev-python/trivup/trivup-0.10.0.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_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Trivially Up a cluster of applications"
+HOMEPAGE="
+ https://github.com/edenhill/trivup
+ https://pypi.org/project/trivup/
+"
+SRC_URI="https://github.com/edenhill/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}-gh.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/jwcrypto[${PYTHON_USEDEP}]
+ dev-python/python_jwt[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests pytest
diff --git a/dev-python/trueskill/Manifest b/dev-python/trueskill/Manifest
new file mode 100644
index 000000000000..e23d76215194
--- /dev/null
+++ b/dev-python/trueskill/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..95805be4765f
--- /dev/null
+++ b/dev-python/trueskill/metadata.xml
@@ -0,0 +1,24 @@
+<?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
new file mode 100644
index 000000000000..545d262891a4
--- /dev/null
+++ b/dev-python/trueskill/trueskill-0.4.5_p20191014.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+COMMIT="91c29b1ab6cd86d6d68fc983fd7ceba3a88ad544"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..c6483b58266b
--- /dev/null
+++ b/dev-python/ttfautohint-py/Manifest
@@ -0,0 +1,2 @@
+DIST ttfautohint-py-0.4.3.tar.gz 186488 BLAKE2B cc5de63faf4a5d213a14eda9b092c48e2e67c59b04ad1580d680e22bf691d915a74f7a465cc37cd0ce907874f3fdb0312224e647bb8e18e5741f886e69e7d075 SHA512 2f21af2a4ffffb59c9e83e4c5aa77ce15d97d4391894537e87727fd05f47b8f007e3ddf1fcf98d195a880b2a4e22586ce9faab4d8dc33f6c6eaa1623dcfd3aab
+DIST ttfautohint-py-0.5.1.tar.gz 186884 BLAKE2B ab09325f262e631639433852a9709b52c23a08e2a179fb9f2bce46d851a5523205076ef2698de5c2af10828fc8290d905d5cfe58c44fbfecce4474d504c2d84c SHA512 0673daa17666af7df4fdd9836c978bb6e1620193524a9043d31900047191ef29dd75783afaf5929cb3a7b74137ec9b4e9b5c15793f811824ab6dc2a0780fd798
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
new file mode 100644
index 000000000000..84dee04cc39e
--- /dev/null
+++ b/dev-python/ttfautohint-py/files/ttfautohint-py-0.4.3-no-ext_modules.patch
@@ -0,0 +1,10 @@
+--- 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
new file mode 100644
index 000000000000..f2d45cb535c2
--- /dev/null
+++ b/dev-python/ttfautohint-py/metadata.xml
@@ -0,0 +1,14 @@
+<?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
new file mode 100644
index 000000000000..d335490cd05e
--- /dev/null
+++ b/dev-python/ttfautohint-py/ttfautohint-py-0.4.3.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/ttfautohint-py/ttfautohint-py-0.5.1.ebuild b/dev-python/ttfautohint-py/ttfautohint-py-0.5.1.ebuild
new file mode 100644
index 000000000000..a0c764a969cb
--- /dev/null
+++ b/dev-python/ttfautohint-py/ttfautohint-py-0.5.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A Python wrapper for ttfautohint"
+HOMEPAGE="https://github.com/fonttools/ttfautohint-py"
+SRC_URI="https://github.com/fonttools/ttfautohint-py/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+KEYWORDS="~amd64"
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND="media-gfx/ttfautohint"
+DEPEND="
+ ${RDEPEND}
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/fonttools[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ rm -r src/c || die
+ export SETUPTOOLS_SCM_PRETEND_VERSION="${PV%_*}"
+ export TTFAUTOHINTPY_BUNDLE_DLL=0
+ default
+}
diff --git a/dev-python/tweedledum/Manifest b/dev-python/tweedledum/Manifest
new file mode 100644
index 000000000000..135a4f9993f3
--- /dev/null
+++ b/dev-python/tweedledum/Manifest
@@ -0,0 +1 @@
+DIST tweedledum-1.1.1.tar.gz 5105832 BLAKE2B 71e3e9baaccc345910d5be3831ea0476b06bc3171311d17fc3f160b7d4c9026bab719b1e80f1d462183cdcc1feb750542e2649c2aab5cdc6d4551ab258866649 SHA512 eda9c0d895d59450150946d52d942174652d305a863a10bafa60300cde63a692a8105b7bb5dcc86aeb610b666945215905cf95859f3726b875c88d5cd3d34891
diff --git a/dev-python/tweedledum/metadata.xml b/dev-python/tweedledum/metadata.xml
new file mode 100644
index 000000000000..935938db517d
--- /dev/null
+++ b/dev-python/tweedledum/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- comaintainers-welcomed -->
+ <maintainer type="person">
+ <email>gaboroszkar@protonmail.com</email>
+ <name>Gábor Oszkár Dénes</name>
+ </maintainer>
+ <longdescription>
+ tweedledum is a library for synthesis, compilation, and optimization of quantum circuits. The library is written to be scalable up to problem sizes in which quantum circuits outperform classical ones. Also, it is meant to be used both independently and alongside established tools.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-python/tweedledum/tweedledum-1.1.1.ebuild b/dev-python/tweedledum/tweedledum-1.1.1.ebuild
new file mode 100644
index 000000000000..abbff1b127bc
--- /dev/null
+++ b/dev-python/tweedledum/tweedledum-1.1.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Library for analysis, compilation, synthesis, optimization of quantum circuits"
+HOMEPAGE="https://github.com/boschmitt/tweedledum"
+SRC_URI="https://github.com/boschmitt/tweedledum/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# >=dev-python/setuptools-42.0.0
+# >=dev-python/wheel
+# dev-util/ninja
+BDEPEND="
+ >=dev-util/cmake-3.18
+ >=dev-python/scikit-build-0.12.0"
+
+distutils_enable_tests pytest
+
+python_compile() {
+ local -x SKBUILD_CONFIGURE_OPTIONS="-DCMAKE_BUILD_TYPE=RelWithDebInfo"
+ distutils-r1_python_compile
+}
+
+python_test() {
+ epytest python/test
+}
diff --git a/dev-python/tweepy/Manifest b/dev-python/tweepy/Manifest
new file mode 100644
index 000000000000..ec1236764c0b
--- /dev/null
+++ b/dev-python/tweepy/Manifest
@@ -0,0 +1 @@
+DIST tweepy-3.10.0.tar.gz 459678 BLAKE2B 8ed612e9a0ad0892110658c94bcf70ec3da4219c74fe9e4600bebd8ce16a81ef03461924aa9d170ccf3ae9127cfa0bc35a7d36a4b379b44ab5557eba8d30972c SHA512 2a40875c5612902e4ff69e6fdf73e9fa10b93a80bf4160b16e44e2dae058a90f86569b3a4bcb67a7acdf5c9c3119ce7ca35a3ae64e393181b78fde10dfd975b5
diff --git a/dev-python/tweepy/metadata.xml b/dev-python/tweepy/metadata.xml
new file mode 100644
index 000000000000..01c1fc848759
--- /dev/null
+++ b/dev-python/tweepy/metadata.xml
@@ -0,0 +1,8 @@
+<?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>
+</pkgmetadata>
diff --git a/dev-python/tweepy/tweepy-3.10.0.ebuild b/dev-python/tweepy/tweepy-3.10.0.ebuild
new file mode 100644
index 000000000000..b87e79b3223c
--- /dev/null
+++ b/dev-python/tweepy/tweepy-3.10.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/twisted/twisted-22.4.0.ebuild b/dev-python/twisted/twisted-22.4.0.ebuild
index 7a9ec0f28aa4..a36f1af404c0 100644
--- a/dev-python/twisted/twisted-22.4.0.ebuild
+++ b/dev-python/twisted/twisted-22.4.0.ebuild
@@ -19,7 +19,7 @@ S=${WORKDIR}/${PN}-${P}
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="conch crypt http2 serial test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/types-paramiko/Manifest b/dev-python/types-paramiko/Manifest
new file mode 100644
index 000000000000..c0e046357978
--- /dev/null
+++ b/dev-python/types-paramiko/Manifest
@@ -0,0 +1,2 @@
+DIST types-paramiko-2.8.16.tar.gz 19948 BLAKE2B 9230c958b3644d8f2b5e644fa24fac065577d3b4ce3b7adc71f8aff00a932f4fd146b83333f8d867dec8941b753cd9676bb63b357d5ba7880861e9f1ffbb1946 SHA512 5e79cf930f281315c0996f46fa7c78612680da3d737cf650b0980d2cf97a825c9956afe1f20c398c200f52edf28a722505b25518f01f865dc652cafe5ed7e83b
+DIST types-paramiko-2.8.17.tar.gz 20005 BLAKE2B d380b937cef7603169f8233536f823434c80888a2878c4bac51be6ecbae5ecb305d7eddd171e89df309914c1b3d5c5a0dcc92c77d3a3037a81bdfcbf459b444a SHA512 ea8e2b4d41ff504727456b3268a15428a1774e2aafbda968e4b2d02912b10f5cc05eb4780742a2474e607532a6fa944c64b630889db9490cba414a0af04aacd0
diff --git a/dev-python/types-paramiko/metadata.xml b/dev-python/types-paramiko/metadata.xml
new file mode 100644
index 000000000000..56b4f73b0671
--- /dev/null
+++ b/dev-python/types-paramiko/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/python/typeshed/issues</bugs-to>
+ <remote-id type="pypi">types-paramiko</remote-id>
+ <remote-id type="github">python/typeshed</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/types-paramiko/types-paramiko-2.8.16.ebuild b/dev-python/types-paramiko/types-paramiko-2.8.16.ebuild
new file mode 100644
index 000000000000..fa6d3a658a07
--- /dev/null
+++ b/dev-python/types-paramiko/types-paramiko-2.8.16.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Typing stubs for paramiko"
+HOMEPAGE="
+ https://pypi.org/project/types-paramiko/
+ https://github.com/python/typeshed/tree/master/stubs/paramiko
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/cryptography-3.4.4[${PYTHON_USEDEP}]"
diff --git a/dev-python/types-paramiko/types-paramiko-2.8.17.ebuild b/dev-python/types-paramiko/types-paramiko-2.8.17.ebuild
new file mode 100644
index 000000000000..fa6d3a658a07
--- /dev/null
+++ b/dev-python/types-paramiko/types-paramiko-2.8.17.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Typing stubs for paramiko"
+HOMEPAGE="
+ https://pypi.org/project/types-paramiko/
+ https://github.com/python/typeshed/tree/master/stubs/paramiko
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/cryptography-3.4.4[${PYTHON_USEDEP}]"
diff --git a/dev-python/types-python-dateutil/Manifest b/dev-python/types-python-dateutil/Manifest
new file mode 100644
index 000000000000..a5bd12bee578
--- /dev/null
+++ b/dev-python/types-python-dateutil/Manifest
@@ -0,0 +1,2 @@
+DIST types-python-dateutil-2.8.10.tar.gz 6621 BLAKE2B e0833d78f958b8c7e1829969c54a0a985372214ddd2838c1837a83fa05b00578d7718d8102738fe4d59c47c6f426e999da9b1fedcd27063beff80385648ec14d SHA512 0c645141bfa2c1427877afc2742b7fa8f323fee9d62cdff88393baf26680a6c1b15e5990a82149ab56bd48bf5142d2be2c4d04562430681bce64243facfa205a
+DIST types-python-dateutil-2.8.9.tar.gz 6613 BLAKE2B 899f37df550666e586c118e27860a2c0fa3b6063e67880e34bcdf3a76a1b4263e61979fc0593525f663c1cd99c5d097dccd2bd0fc422bb181b20eb95f326b202 SHA512 ec4ff75e361afebce93115755c2137d39d5145eaaf7b3ef32de2c9c4518d1ed01d7cd9c489cde2f4e243cf547068f4dd944981b3f163f12f38949dd4091c7dbb
diff --git a/dev-python/types-python-dateutil/metadata.xml b/dev-python/types-python-dateutil/metadata.xml
new file mode 100644
index 000000000000..94a5dc7c96ef
--- /dev/null
+++ b/dev-python/types-python-dateutil/metadata.xml
@@ -0,0 +1,12 @@
+<?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/python/typeshed/issues</bugs-to>
+ <remote-id type="pypi">types-python-dateutil</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/types-python-dateutil/types-python-dateutil-2.8.10.ebuild b/dev-python/types-python-dateutil/types-python-dateutil-2.8.10.ebuild
new file mode 100644
index 000000000000..fcc908ef2fa8
--- /dev/null
+++ b/dev-python/types-python-dateutil/types-python-dateutil-2.8.10.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Typing stubs for python-dateutil"
+HOMEPAGE="
+ https://pypi.org/project/types-python-dateutil/
+ https://github.com/python/typeshed/tree/master/stubs/python-dateutil
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
diff --git a/dev-python/types-python-dateutil/types-python-dateutil-2.8.9.ebuild b/dev-python/types-python-dateutil/types-python-dateutil-2.8.9.ebuild
new file mode 100644
index 000000000000..fcc908ef2fa8
--- /dev/null
+++ b/dev-python/types-python-dateutil/types-python-dateutil-2.8.9.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Typing stubs for python-dateutil"
+HOMEPAGE="
+ https://pypi.org/project/types-python-dateutil/
+ https://github.com/python/typeshed/tree/master/stubs/python-dateutil
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
diff --git a/dev-python/types-pytz/Manifest b/dev-python/types-pytz/Manifest
new file mode 100644
index 000000000000..2c4d94442666
--- /dev/null
+++ b/dev-python/types-pytz/Manifest
@@ -0,0 +1,2 @@
+DIST types-pytz-2021.3.5.tar.gz 3030 BLAKE2B 59728927f7fe6828659d915b0054b7aa9a937b62d474f694487dfac45e5e605de62d55a71bf1155ccb0eb6a2519b393f09979bd3f12c8c06998edcb6d54b7d8a SHA512 6c4c99ce685d8a6e9b3d0f8e26b64c54505880a1fa139850822c61f16f967ad3efeb5779c57a2005612974f6e35a25808585b346fe7ca97e5d7a5ef08d2ed26e
+DIST types-pytz-2021.3.6.tar.gz 3134 BLAKE2B a3be61269c8dcebb1ba6d1ff3f0c5ac383a04783d6d572c7cf5ae48aba02ceebad91092d51f7e1cff3a230597f19be6d03c3fa1b927fbcae943be3ff425a8269 SHA512 d172b3192f4b2e5cec715205507cf04cb8347db29cb0a33dd9d610a4d936e57b7a72ab05e05648c716582ac24b19b48381e16e31075d6ae3f46c904f27073de4
diff --git a/dev-python/types-pytz/metadata.xml b/dev-python/types-pytz/metadata.xml
new file mode 100644
index 000000000000..d5941b282c84
--- /dev/null
+++ b/dev-python/types-pytz/metadata.xml
@@ -0,0 +1,12 @@
+<?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/python/typeshed/issues</bugs-to>
+ <remote-id type="pypi">types-pytz</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/types-pytz/types-pytz-2021.3.5.ebuild b/dev-python/types-pytz/types-pytz-2021.3.5.ebuild
new file mode 100644
index 000000000000..a58168958658
--- /dev/null
+++ b/dev-python/types-pytz/types-pytz-2021.3.5.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Typing stubs for pytz"
+HOMEPAGE="
+ https://pypi.org/project/types-pytz/
+ https://github.com/python/typeshed/tree/master/stubs/pytz
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
diff --git a/dev-python/types-pytz/types-pytz-2021.3.6.ebuild b/dev-python/types-pytz/types-pytz-2021.3.6.ebuild
new file mode 100644
index 000000000000..a58168958658
--- /dev/null
+++ b/dev-python/types-pytz/types-pytz-2021.3.6.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Typing stubs for pytz"
+HOMEPAGE="
+ https://pypi.org/project/types-pytz/
+ https://github.com/python/typeshed/tree/master/stubs/pytz
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
diff --git a/dev-python/types-requests/Manifest b/dev-python/types-requests/Manifest
new file mode 100644
index 000000000000..31b65555d8be
--- /dev/null
+++ b/dev-python/types-requests/Manifest
@@ -0,0 +1,2 @@
+DIST types-requests-2.27.15.tar.gz 10503 BLAKE2B 2c5c1939a9a03f217a947922de2f4c0a5d60e58ef71f03b645a7c9565388c8d325631fa0fd05fc98e0355e14721c2498bbf2eb360826f6b27a4e567ee4859f74 SHA512 8831e5a9b8928e9fc356f3996ee11d548551657026afba3909372ee2e89928757f9e2d434d7adcc41fb1567a439b3f679375ee188d62459b61390beb63753239
+DIST types-requests-2.27.16.tar.gz 10528 BLAKE2B d3a70d56d01046ea832fc75f5c1c00fa1bd01bb3a92f29785a4e0f67863b46b3ffae7a5b799e992f3baac3d05b4623598befa5b30fdd1bfc4e040eb701933a2f SHA512 62bc651f23b15dbae09d7a06eecaf7922322a573edd67dd259d31933c22dd7af9d84bca632fce55dc766ce7e3ad233d4dabf9df6393ccec52b2f5317e52e975f
diff --git a/dev-python/types-requests/metadata.xml b/dev-python/types-requests/metadata.xml
new file mode 100644
index 000000000000..a17a03bb9e24
--- /dev/null
+++ b/dev-python/types-requests/metadata.xml
@@ -0,0 +1,12 @@
+<?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/python/typeshed/issues</bugs-to>
+ <remote-id type="pypi">types-requests</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/types-requests/types-requests-2.27.15.ebuild b/dev-python/types-requests/types-requests-2.27.15.ebuild
new file mode 100644
index 000000000000..116e2d39e19e
--- /dev/null
+++ b/dev-python/types-requests/types-requests-2.27.15.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Typing stubs for requests"
+HOMEPAGE="
+ https://pypi.org/project/types-requests/
+ https://github.com/python/typeshed/tree/master/stubs/requests
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+
+RDEPEND="<dev-python/types-urllib3-1.27"
+DEPEND="${RDEPEND}"
diff --git a/dev-python/types-requests/types-requests-2.27.16.ebuild b/dev-python/types-requests/types-requests-2.27.16.ebuild
new file mode 100644
index 000000000000..116e2d39e19e
--- /dev/null
+++ b/dev-python/types-requests/types-requests-2.27.16.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Typing stubs for requests"
+HOMEPAGE="
+ https://pypi.org/project/types-requests/
+ https://github.com/python/typeshed/tree/master/stubs/requests
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+
+RDEPEND="<dev-python/types-urllib3-1.27"
+DEPEND="${RDEPEND}"
diff --git a/dev-python/types-urllib3/Manifest b/dev-python/types-urllib3/Manifest
new file mode 100644
index 000000000000..05bf95812e09
--- /dev/null
+++ b/dev-python/types-urllib3/Manifest
@@ -0,0 +1,2 @@
+DIST types-urllib3-1.26.10.tar.gz 8547 BLAKE2B 47dd538fe9ffb96793536942f8fe5deb7403e655473e919771ebaae1eb39839cb4c0f60fb7117d5c1eaa971937167ce1002eac4a7cc978edc20e76cc5c037675 SHA512 8341951167d51e596eb4d532691cbc948cf92936af7688d3bbd2161d86de327ba88f096e4205f5c74c9a1c3c5a1bec8e1317d829e870eca3c8760aa4997a30a1
+DIST types-urllib3-1.26.11.tar.gz 8629 BLAKE2B d0db71c5553e931dab376c4508881e3220bcad17bfe593ced81a72ad198bd81538c747b0be5a0e4987ce23aa0e16f3c4bc86c288dbdddedd5b5e3ee15bfe4d51 SHA512 e900817ae173861c436e7879b8fc7d243cb0467dedca851b8695ec51632be0d3d80e9b427c58e3ee693e5797bb951dce4a9e79ea01c693e57d0a330f6a1b0d10
diff --git a/dev-python/types-urllib3/metadata.xml b/dev-python/types-urllib3/metadata.xml
new file mode 100644
index 000000000000..7f25d47487aa
--- /dev/null
+++ b/dev-python/types-urllib3/metadata.xml
@@ -0,0 +1,12 @@
+<?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/python/typeshed/issues</bugs-to>
+ <remote-id type="pypi">types-urllib3</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/types-urllib3/types-urllib3-1.26.10.ebuild b/dev-python/types-urllib3/types-urllib3-1.26.10.ebuild
new file mode 100644
index 000000000000..6f750110bde2
--- /dev/null
+++ b/dev-python/types-urllib3/types-urllib3-1.26.10.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Typing stubs for urllib3"
+HOMEPAGE="
+ https://pypi.org/project/types-urllib3/
+ https://github.com/python/typeshed/tree/master/stubs/urllib3
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
diff --git a/dev-python/types-urllib3/types-urllib3-1.26.11.ebuild b/dev-python/types-urllib3/types-urllib3-1.26.11.ebuild
new file mode 100644
index 000000000000..6f750110bde2
--- /dev/null
+++ b/dev-python/types-urllib3/types-urllib3-1.26.11.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Typing stubs for urllib3"
+HOMEPAGE="
+ https://pypi.org/project/types-urllib3/
+ https://github.com/python/typeshed/tree/master/stubs/urllib3
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
diff --git a/dev-python/ufo2ft/Manifest b/dev-python/ufo2ft/Manifest
new file mode 100644
index 000000000000..fe175322b9d5
--- /dev/null
+++ b/dev-python/ufo2ft/Manifest
@@ -0,0 +1,2 @@
+DIST ufo2ft-2.25.3.tar.gz 173168 BLAKE2B 365a14dff4704f98a8c6ad1904420d01e367099e96d35fe9275e93dd30c4224d3c0f573fc5d0cb4bede7625e6eaeea58f14a1864fa22355ce4ee259f18a82f18 SHA512 eec5ddd997830bfb93c7545e94569d447f31f23ac74babe66bf5a3f552c709ef9add6da43b02a92f6990413aaa64b411dc8ed79151cf4debf5c38aadeb4ff856
+DIST ufo2ft-2.26.0.tar.gz 173354 BLAKE2B 6271498143219e7a6870dc66eacf99a0ef4f6a0216d6d41e20b74517b0efa68f9a0a950c17c92d0a080a26c0761a86cf88d4918efb76658e233d9b08b76d1e9d SHA512 6a6d07603c0335adbe74f6913bfa3cb33d5eaaf6fb8b3ff0d92744bb2aaddcfa14bbfeedfd18215d3483fe39e4c6166352387b639768ce90a7d9c4905a79900d
diff --git a/dev-python/ufo2ft/metadata.xml b/dev-python/ufo2ft/metadata.xml
new file mode 100644
index 000000000000..0ef967bd7c83
--- /dev/null
+++ b/dev-python/ufo2ft/metadata.xml
@@ -0,0 +1,79 @@
+<?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.25.3.ebuild b/dev-python/ufo2ft/ufo2ft-2.25.3.ebuild
new file mode 100644
index 000000000000..bd412cf995cf
--- /dev/null
+++ b/dev-python/ufo2ft/ufo2ft-2.25.3.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A bridge from UFOs to FontTool objects"
+HOMEPAGE="
+ https://github.com/googlefonts/ufo2ft
+ https://pypi.org/project/ufo2ft/
+"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~amd64"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/booleanOperations-0.9.0[${PYTHON_USEDEP}]
+ >=dev-python/compreffor-0.5.1_p1[${PYTHON_USEDEP}]
+ >=dev-python/cffsubr-0.2.9_p1[${PYTHON_USEDEP}]
+ >=dev-python/cu2qu-1.6.7[${PYTHON_USEDEP}]
+ >=dev-python/defcon-0.10.0[${PYTHON_USEDEP}]
+ >=dev-python/fonttools-4.29.1[${PYTHON_USEDEP}]
+ >=dev-python/skia-pathops-0.7.0[${PYTHON_USEDEP}]
+ >=dev-python/ufoLib2-0.13.1[${PYTHON_USEDEP}]
+"
+DEPEND="
+ dev-python/setuptools_scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/glyphsLib[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/ufo2ft/ufo2ft-2.26.0.ebuild b/dev-python/ufo2ft/ufo2ft-2.26.0.ebuild
new file mode 100644
index 000000000000..bd412cf995cf
--- /dev/null
+++ b/dev-python/ufo2ft/ufo2ft-2.26.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="A bridge from UFOs to FontTool objects"
+HOMEPAGE="
+ https://github.com/googlefonts/ufo2ft
+ https://pypi.org/project/ufo2ft/
+"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~amd64"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/booleanOperations-0.9.0[${PYTHON_USEDEP}]
+ >=dev-python/compreffor-0.5.1_p1[${PYTHON_USEDEP}]
+ >=dev-python/cffsubr-0.2.9_p1[${PYTHON_USEDEP}]
+ >=dev-python/cu2qu-1.6.7[${PYTHON_USEDEP}]
+ >=dev-python/defcon-0.10.0[${PYTHON_USEDEP}]
+ >=dev-python/fonttools-4.29.1[${PYTHON_USEDEP}]
+ >=dev-python/skia-pathops-0.7.0[${PYTHON_USEDEP}]
+ >=dev-python/ufoLib2-0.13.1[${PYTHON_USEDEP}]
+"
+DEPEND="
+ 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
new file mode 100644
index 000000000000..ffa41dfc3824
--- /dev/null
+++ b/dev-python/ufoLib2/Manifest
@@ -0,0 +1,2 @@
+DIST ufoLib2-0.11.4.zip 119452 BLAKE2B 841c7737c8d8479cc9bdbdbd0f1690854088abba9028035a9f03ccf091c95808d77fa445e678e2f5576482f820fcf5f20d92b93822e3bd167a1def5cdd8024a5 SHA512 dcd307d24a1c7ef0c932ed6edda2e5aab6a691cf7b0ae1f4c89b7bf57f6cb988fde9889d569ca21f1571f493c6efcf0411b55b8990e7a9fdce3316863de9a8cd
+DIST ufoLib2-0.13.1.tar.gz 88239 BLAKE2B 5c15c1ad9eedba904cb9730604d3853d21fc8f7ae30f440421349f233bac356947aaab7f57204cef9684f1beaabeeefbf913a973f44afc6b8dd185015abb9d87 SHA512 163304999912f1d838f995e3524f4538c176bbff471b07b7670147a0d7e706542c67601dacd29dd985bf5a7ae95688008b7c292f1d67c38756ec633069c7bd64
diff --git a/dev-python/ufoLib2/metadata.xml b/dev-python/ufoLib2/metadata.xml
new file mode 100644
index 000000000000..b83a1953e7e9
--- /dev/null
+++ b/dev-python/ufoLib2/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">
+ <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.4.ebuild b/dev-python/ufoLib2/ufoLib2-0.11.4.ebuild
new file mode 100644
index 000000000000..98c8eb4770df
--- /dev/null
+++ b/dev-python/ufoLib2/ufoLib2-0.11.4.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DOCS_DEPEND="
+ dev-python/sphinx_rtd_theme
+ dev-python/typing-extensions
+"
+DOCS_DIR="${S}/docs/source"
+DOCS_BUILDER="sphinx"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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"
+
+RDEPEND="
+ >=dev-python/attrs-19.2.0[${PYTHON_USEDEP}]
+ >=dev-python/fonttools-4.0.0[${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/ufoLib2/ufoLib2-0.13.1.ebuild b/dev-python/ufoLib2/ufoLib2-0.13.1.ebuild
new file mode 100644
index 000000000000..322c080fc68c
--- /dev/null
+++ b/dev-python/ufoLib2/ufoLib2-0.13.1.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+DOCS_DEPEND="
+ dev-python/sphinx_rtd_theme
+ dev-python/typing-extensions
+"
+DOCS_DIR="${S}/docs/source"
+DOCS_BUILDER="sphinx"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1 docs
+
+DESCRIPTION="A UFO font library"
+HOMEPAGE="
+ https://github.com/fonttools/ufoLib2
+ https://pypi.org/project/ufoLib2/
+"
+SRC_URI="https://github.com/fonttools/ufoLib2/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/attrs-20.1.0[${PYTHON_USEDEP}]
+ >=dev-python/fonttools-4.0.0[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/setuptools_scm-6.2[${PYTHON_USEDEP}]
+ test? (
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ )
+"
+
+pkg_setup() {
+ export SETUPTOOLS_SCM_PRETEND_VERSION="${PV%_*}"
+}
+
+distutils_enable_tests pytest
diff --git a/dev-python/ufoNormalizer/Manifest b/dev-python/ufoNormalizer/Manifest
new file mode 100644
index 000000000000..22d2f41120e1
--- /dev/null
+++ b/dev-python/ufoNormalizer/Manifest
@@ -0,0 +1,2 @@
+DIST ufonormalizer-0.5.4.zip 38121 BLAKE2B b88763f9904633b99bfcd8226281b2c8e7172a46d8a6ebed1360d8af6b67944030f008176b55dfb9cb85580419997853b5203867587da87f7910608621ff213f SHA512 f9bc37c6d7c366d34e9fa4cbfbcbb6f8a654955fd61afedfbe6376e70e4145d29c6fe30d48c28dca9f18e476002c1cda773172379be2fae4bd30b466ce1899ba
+DIST ufonormalizer-0.6.1.zip 37360 BLAKE2B b2270b9bd40c5c67e2854049f285eac0a7c202bd4a2245837a99259140e3dd352adcd1c74a9cfd40670fd4c7ee801dacddfd092582abb96459fc4a475c65fd43 SHA512 301bef368a7d42333d885437322991d075e5ebb7169e3397e1d2a486ae18d4efba4db625bad1f9452f512e0a452ec8a9fd0b5c716c8571eb45f9d4d2718f37a7
diff --git a/dev-python/ufoNormalizer/metadata.xml b/dev-python/ufoNormalizer/metadata.xml
new file mode 100644
index 000000000000..2a364a50e5f8
--- /dev/null
+++ b/dev-python/ufoNormalizer/metadata.xml
@@ -0,0 +1,27 @@
+<?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>
+ <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
new file mode 100644
index 000000000000..3cbaa86914ec
--- /dev/null
+++ b/dev-python/ufoNormalizer/ufoNormalizer-0.5.4.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} 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/ufoNormalizer/ufoNormalizer-0.6.1.ebuild b/dev-python/ufoNormalizer/ufoNormalizer-0.6.1.ebuild
new file mode 100644
index 000000000000..49f0f0404bf9
--- /dev/null
+++ b/dev-python/ufoNormalizer/ufoNormalizer-0.6.1.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN="${PN,,}"
+MY_P="${MY_PN}-${PV}"
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+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/${MY_PN:0:1}/${MY_PN}/${MY_P}.zip"
+S="${WORKDIR}/${MY_P}"
+
+SLOT="0"
+LICENSE="BSD"
+KEYWORDS="~amd64 ~x86"
+
+BDEPEND="app-arch/unzip"
+
+distutils_enable_tests unittest
diff --git a/dev-python/ufoProcessor/Manifest b/dev-python/ufoProcessor/Manifest
new file mode 100644
index 000000000000..3760c9408f18
--- /dev/null
+++ b/dev-python/ufoProcessor/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..57271a0a9a59
--- /dev/null
+++ b/dev-python/ufoProcessor/metadata.xml
@@ -0,0 +1,14 @@
+<?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
new file mode 100644
index 000000000000..39558841161e
--- /dev/null
+++ b/dev-python/ufoProcessor/ufoProcessor-1.9.0.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..55295a1ffc8d
--- /dev/null
+++ b/dev-python/uharfbuzz/Manifest
@@ -0,0 +1,2 @@
+DIST uharfbuzz-0.23.0.tar.gz 36287 BLAKE2B 6f03aa991d53b6fe093879a0cb5d09b5065ad4fb31453f74323f540aadcdace2430ccdc0a466cddc43a356bb1dd62f066537074a208c1b56d51d43c4eb2062ee SHA512 8cacb54a3d48db29f025bd9eb72133e9a11cf61f6b8064cb91c5399e875e7b46f592bb3c4b284741a161f534bea5771f9c471489c8082ee768953b5948ee2c09
+DIST uharfbuzz-0.24.1.tar.gz 36603 BLAKE2B 3da4b1a7e3b2b3cc8928c06ad7a80c00ddc3f34807788d827c8e558d9a9b48e3688cb38e26e5ea2414b274d62328be4c5a4dbd6e627d45c49ff7d11c6573e643 SHA512 c1451f3aea7a6e076a621a8931e8de0222122f3788ac7ef7a0174f32a1a625c8f245d4ba0e9835387071ab8cfa7351d3e245afe6b94319c178cc6cc7fc337707
diff --git a/dev-python/uharfbuzz/files/uharfbuzz-0.23.0-system-harfbuzz.patch b/dev-python/uharfbuzz/files/uharfbuzz-0.23.0-system-harfbuzz.patch
new file mode 100644
index 000000000000..8ff591bb1ab3
--- /dev/null
+++ b/dev-python/uharfbuzz/files/uharfbuzz-0.23.0-system-harfbuzz.patch
@@ -0,0 +1,34 @@
+--- 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
+@@ -21,7 +21,7 @@
+
+ extra_compile_args = []
+ extra_link_args = []
+-libraries = []
++libraries = ['harfbuzz', 'harfbuzz-subset']
+ if platform.system() != 'Windows':
+ extra_compile_args.append('-std=c++11')
+ define_macros.append(('HAVE_MMAP', '1'))
+@@ -39,11 +39,9 @@
+ extension = Extension(
+ 'uharfbuzz._harfbuzz',
+ define_macros=define_macros,
+- include_dirs=['harfbuzz/src'],
++ include_dirs=['/usr/include/harfbuzz'],
+ sources=[
+- 'src/uharfbuzz/_harfbuzz.pyx',
+- 'harfbuzz/src/harfbuzz.cc',
+- 'harfbuzz/src/hb-subset-repacker.cc',
++ 'src/uharfbuzz/_harfbuzz.pyx'
+ ],
+ language='c++',
+ libraries=libraries,
diff --git a/dev-python/uharfbuzz/metadata.xml b/dev-python/uharfbuzz/metadata.xml
new file mode 100644
index 000000000000..d27e3cb7db17
--- /dev/null
+++ b/dev-python/uharfbuzz/metadata.xml
@@ -0,0 +1,14 @@
+<?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.23.0.ebuild b/dev-python/uharfbuzz/uharfbuzz-0.23.0.ebuild
new file mode 100644
index 000000000000..8685a87f3b5b
--- /dev/null
+++ b/dev-python/uharfbuzz/uharfbuzz-0.23.0.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Streamlined Cython bindings for the HarfBuzz shaping engine"
+HOMEPAGE="https://github.com/harfbuzz/uharfbuzz"
+SRC_URI="https://github.com/harfbuzz/uharfbuzz/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+RDEPEND=">=media-libs/harfbuzz-4.0.0[experimental(-)]"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/cython-0.28.1[${PYTHON_USEDEP}]
+ >=dev-python/setuptools_scm-2.1[${PYTHON_USEDEP}]
+ >=dev-python/wheel-0.31[${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
+}
diff --git a/dev-python/uharfbuzz/uharfbuzz-0.24.1.ebuild b/dev-python/uharfbuzz/uharfbuzz-0.24.1.ebuild
new file mode 100644
index 000000000000..e208f17f9ba0
--- /dev/null
+++ b/dev-python/uharfbuzz/uharfbuzz-0.24.1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Streamlined Cython bindings for the HarfBuzz shaping engine"
+HOMEPAGE="https://github.com/harfbuzz/uharfbuzz"
+SRC_URI="https://github.com/harfbuzz/uharfbuzz/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+RDEPEND=">=media-libs/harfbuzz-4.0.0[experimental(-)]"
+DEPEND="
+ ${RDEPEND}
+ >=dev-python/cython-0.28.1[${PYTHON_USEDEP}]
+ >=dev-python/setuptools_scm-2.1[${PYTHON_USEDEP}]
+ >=dev-python/wheel-0.31[${PYTHON_USEDEP}]
+"
+
+PATCHES=( "${FILESDIR}/${PN}-0.23.0-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
+}
diff --git a/dev-python/uhashring/Manifest b/dev-python/uhashring/Manifest
new file mode 100644
index 000000000000..a910ed1d2e9c
--- /dev/null
+++ b/dev-python/uhashring/Manifest
@@ -0,0 +1 @@
+DIST uhashring-2.1.tar.gz 18288 BLAKE2B 95d76b1999d21b52ff33b5f76b2eee125d22fa02c51281d6b72058b9d608ea69cca11608f41f50b9348d46a26cc8931c40a6873f0fe17b72d76891b51dcaa1cb SHA512 0e3b3647f1b8b648389fa1018f5903d880947556244633e0b2b4809ccab3d14cf8e742cd14a99e2e88972a84c8fb97956dc290b023e514de63c7793a21b6c294
diff --git a/dev-python/uhashring/metadata.xml b/dev-python/uhashring/metadata.xml
new file mode 100644
index 000000000000..6459b118c0f9
--- /dev/null
+++ b/dev-python/uhashring/metadata.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <description>comaintainers welcome</description>
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <longdescription lang="en">
+uhashring implements consistent hashing in pure Python.
+
+Consistent hashing is mostly used on distributed systems/caches/databases as this avoid the total reshuffling of your key-node mappings when adding or removing a node in your ring (called continuum on libketama). More information and details about this can be found in the literature section.
+
+This full featured implementation offers:
+
+a lot of convenient methods to use your consistent hash ring in real world applications.
+simple integration with other libs such as memcache through monkey patching.
+a full ketama compatibility if you need to use it (see important mention below).
+all the missing functions in the libketama C python binding (which is not even available on pypi) for ketama users.
+possibility to use your own weight and hash functions if you don't care about the ketama compatibility.
+instance-oriented usage so you can use your consistent hash ring object directly in your code (see advanced usage).
+native pypy support, since this is a pure python library.
+tests of implementation, key distribution and ketama compatibility.
+Per node weight is also supported and will affect the nodes distribution on the ring.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">ultrabug/uhashring</remote-id>
+ <remote-id type="pypi">uhashring</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/uhashring/uhashring-2.1.ebuild b/dev-python/uhashring/uhashring-2.1.ebuild
new file mode 100644
index 000000000000..b89972101d94
--- /dev/null
+++ b/dev-python/uhashring/uhashring-2.1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Full featured consistent hashing python library compatible with ketama"
+HOMEPAGE="https://github.com/ultrabug/uhashring"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=""
+DEPEND="
+ ${RDEPEND}
+ test? (
+ >=dev-python/python-memcached-1.59[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/ukpostcodeparser/Manifest b/dev-python/ukpostcodeparser/Manifest
new file mode 100644
index 000000000000..12535d75facc
--- /dev/null
+++ b/dev-python/ukpostcodeparser/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..fd08a559d3be
--- /dev/null
+++ b/dev-python/ukpostcodeparser/files/ukpostcodeparser-1.1.2-test.patch
@@ -0,0 +1,70 @@
+--- ../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
new file mode 100644
index 000000000000..71bafccbc42d
--- /dev/null
+++ b/dev-python/ukpostcodeparser/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">
+ <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
new file mode 100644
index 000000000000..ae5d46d4b3f9
--- /dev/null
+++ b/dev-python/ukpostcodeparser/ukpostcodeparser-1.1.2.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="7"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+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/unicodedata2/Manifest b/dev-python/unicodedata2/Manifest
new file mode 100644
index 000000000000..9fa962410fd6
--- /dev/null
+++ b/dev-python/unicodedata2/Manifest
@@ -0,0 +1,2 @@
+DIST unicodedata2-13.0.0.2.tar.gz 1202880 BLAKE2B 237a1be7a22a9aaaa3e417a14687e7169630632a3fed90dbda963c5ef6994cbac45e67c7930529362c438a8a20251c64979b3baeaa963dd40e70bd453d2ceb77 SHA512 451a49a9e29935c59932804d8a821562f07ea22658fe57a472eed9a5eacfc9c7c497f25c084451c90cf0992638956ac51572f0c52e74452ece7d66c052d82641
+DIST unicodedata2-14.0.0.tar.gz 624067 BLAKE2B 0394af31670dbc3e89f616144f88081a69e1e4d9404d432a3f70c8973e967f28b914413219e0b22f089ccaa898193a45f4a2ce41bfe1f889622c69bd9b56735e SHA512 bb0b1e3834a892d23bda0d51443655b244e0f24cbb9ed51065afac3fdd2ed01a6382d4015ea0dcfaddc99c7858e19e3e3e86a9024a5600cb67cef219ebc719ba
diff --git a/dev-python/unicodedata2/metadata.xml b/dev-python/unicodedata2/metadata.xml
new file mode 100644
index 000000000000..3249c91978cf
--- /dev/null
+++ b/dev-python/unicodedata2/metadata.xml
@@ -0,0 +1,14 @@
+<?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
new file mode 100644
index 000000000000..7d26c234dc8a
--- /dev/null
+++ b/dev-python/unicodedata2/unicodedata2-13.0.0.2.ebuild
@@ -0,0 +1,19 @@
+# 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_{7,8,9,10} )
+
+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/unicodedata2/unicodedata2-14.0.0.ebuild b/dev-python/unicodedata2/unicodedata2-14.0.0.ebuild
new file mode 100644
index 000000000000..664b0ba1ffac
--- /dev/null
+++ b/dev-python/unicodedata2/unicodedata2-14.0.0.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MYPV="$(ver_rs 3 -)"
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Unicodedata backport for python 2/3 updated to the latest unicode version"
+HOMEPAGE="https://github.com/mikekap/unicodedata2"
+SRC_URI="https://github.com/mikekap/unicodedata2/archive/refs/tags/${MYPV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/${PN}-${MYPV}"
+KEYWORDS="~amd64"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+DEPEND="
+ test? (
+ dev-python/pytest-randomly[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/urlmatch/Manifest b/dev-python/urlmatch/Manifest
new file mode 100644
index 000000000000..6c7d55d3cb97
--- /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/urlmatch/metadata.xml b/dev-python/urlmatch/metadata.xml
new file mode 100644
index 000000000000..cbe3c6a539f0
--- /dev/null
+++ b/dev-python/urlmatch/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>smaniotto.nicola@gmail.com</email>
+ <name>Nicola Smaniotto</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/urlmatch/urlmatch-1.0.1-r1.ebuild b/dev-python/urlmatch/urlmatch-1.0.1-r1.ebuild
new file mode 100644
index 000000000000..af61d987b75f
--- /dev/null
+++ b/dev-python/urlmatch/urlmatch-1.0.1-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/vharfbuzz/Manifest b/dev-python/vharfbuzz/Manifest
new file mode 100644
index 000000000000..88b4333df1a1
--- /dev/null
+++ b/dev-python/vharfbuzz/Manifest
@@ -0,0 +1,2 @@
+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
new file mode 100644
index 000000000000..7a4693959ff7
--- /dev/null
+++ b/dev-python/vharfbuzz/files/vharfbuzz-0.1.1-fix-package-dir.patch
@@ -0,0 +1,11 @@
+--- 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
new file mode 100644
index 000000000000..48c1f9a7b296
--- /dev/null
+++ b/dev-python/vharfbuzz/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>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
new file mode 100644
index 000000000000..65910bf6408a
--- /dev/null
+++ b/dev-python/vharfbuzz/vharfbuzz-0.1.1.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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
new file mode 100644
index 000000000000..4ed4e471b0d6
--- /dev/null
+++ b/dev-python/vharfbuzz/vharfbuzz-0.1.2.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/vttlib/Manifest b/dev-python/vttlib/Manifest
new file mode 100644
index 000000000000..9d405ee9e5b8
--- /dev/null
+++ b/dev-python/vttlib/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..00f1b4a066a1
--- /dev/null
+++ b/dev-python/vttlib/metadata.xml
@@ -0,0 +1,24 @@
+<?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
new file mode 100644
index 000000000000..caf66e6e9014
--- /dev/null
+++ b/dev-python/vttlib/vttlib-0.11.0.ebuild
@@ -0,0 +1,43 @@
+# 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_{7,8,9,10} )
+
+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/webpy/Manifest b/dev-python/webpy/Manifest
new file mode 100644
index 000000000000..b793bd44738e
--- /dev/null
+++ b/dev-python/webpy/Manifest
@@ -0,0 +1 @@
+DIST webpy-0.62.tar.gz 104552 BLAKE2B bd94dc9ca9aaf2c4ba9be2d14e66c176031818617f6b505c85e849d299b0fd7f4b77d008d23e78c922584cbd46938206fb5f0f4c19f082811d800d259014b79a SHA512 2b91977bb78e9387c78ed893b098d665a5189e7b9cb1eacbaf903564285524dabc960107b0e1ba4a85c3aedf73ef63ae05338cc71ccacad47a310970afb77cd9
diff --git a/dev-python/webpy/metadata.xml b/dev-python/webpy/metadata.xml
new file mode 100644
index 000000000000..87413cf48f0d
--- /dev/null
+++ b/dev-python/webpy/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-needed -->
+ <upstream>
+ <remote-id type="github">webpy/webpy</remote-id>
+ <remote-id type="pypi">web.py</remote-id>
+ <doc lang="en">https://webpy.org/docs</doc>
+ <bugs-to>https://github.com/webpy/webpy/issues</bugs-to>
+ <changelog>https://raw.githubusercontent.com/webpy/webpy/master/ChangeLog.txt</changelog>
+ <maintainer>
+ <name>Anand Chitipothu</name>
+ <email>anandology@gmail.com</email>
+ </maintainer>
+ </upstream>
+ <longdescription lang="en">
+ web.py provides small and simple web framework for
+ python. It is a convenient tool for small sized
+ websites.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-python/webpy/webpy-0.62.ebuild b/dev-python/webpy/webpy-0.62.ebuild
new file mode 100644
index 000000000000..d82908cbf6b6
--- /dev/null
+++ b/dev-python/webpy/webpy-0.62.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+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/
+"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-python/cheroot[${PYTHON_USEDEP}]"
+
+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
+}
diff --git a/dev-python/webrtcvad/Manifest b/dev-python/webrtcvad/Manifest
new file mode 100644
index 000000000000..6c9714040b3e
--- /dev/null
+++ b/dev-python/webrtcvad/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..cbe3c6a539f0
--- /dev/null
+++ b/dev-python/webrtcvad/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM 'http://www.gentoo.org/dtd/metadata.dtd'>
+<pkgmetadata>
+ <maintainer type="person">
+ <email>smaniotto.nicola@gmail.com</email>
+ <name>Nicola Smaniotto</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/webrtcvad/webrtcvad-2.0.10.ebuild b/dev-python/webrtcvad/webrtcvad-2.0.10.ebuild
new file mode 100644
index 000000000000..551d1758ad98
--- /dev/null
+++ b/dev-python/webrtcvad/webrtcvad-2.0.10.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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 000000000000..e0b2bf02338d
--- /dev/null
+++ b/dev-python/wrapio/Manifest
@@ -0,0 +1 @@
+DIST wrapio-2.0.0.tar.gz 7239 BLAKE2B 228d1a0367bdcb1c69e9035de2bd780d9a47b3a6b5ccb9080fc7f9974dafdfec3ccca8888e9f4ff7368d4d5c06424cecc5832a38db60410954cde561a0c2e272 SHA512 09056de108f6f5fc6af83534a9e8a9c80c70ead6d1d492f3dfd573b38a5dd909c837934309f9f7611394768573848afa737484b3f64ff682bcf6c7a091e15a46
diff --git a/dev-python/wrapio/metadata.xml b/dev-python/wrapio/metadata.xml
new file mode 100644
index 000000000000..2bc6e6284275
--- /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.paragon@gmail.com</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 000000000000..08256485ad21
--- /dev/null
+++ b/dev-python/wrapio/wrapio-2.0.0.ebuild
@@ -0,0 +1,21 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Handling event-based streams in Python"
+HOMEPAGE="
+ https://github.com/Exahilosys/wrapio
+ https://pypi.org/project/wrapio/
+ "
+SRC_URI="https://github.com/Exahilosys/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+distutils_enable_sphinx docs
diff --git a/dev-python/wsgi_intercept/Manifest b/dev-python/wsgi_intercept/Manifest
new file mode 100644
index 000000000000..95c20a033c61
--- /dev/null
+++ b/dev-python/wsgi_intercept/Manifest
@@ -0,0 +1,2 @@
+DIST wsgi_intercept-1.9.2.tar.gz 29083 BLAKE2B 97eda40f40f0ea00ff213f2222310ce6c77ee9c822e89330ed8a277f32851d06bdf1050629e69677cf7fb00d04128403c5a89aec1d03d796fdbb65e8f3e4e9b6 SHA512 a313fe6302c9f168bd050c83ded1d58ef74feb54870197eb85b3527c2cc77eb76b4ca61ff4b554e13cca10ec7106ad9ba35c9a41a00bbd82ef39a26df2af7769
+DIST wsgi_intercept-1.9.3.tar.gz 30002 BLAKE2B 65b7b39543dc486d8ea394b093a3892bdbd7b8e8314a3b839af13ca7abc79f0397092b0d908a873821b1d42d713f5fdd64d2cd815498c7e4f77300725b8ab30c SHA512 b23cbbe20299dad413db0130bf9b055b58ad0a8349d18d9a3eb22cec4db6c9c570785c2ba29245ac52fa1c340a80cb7eb18c04b7bd75dd57961ae8c5142eabdc
diff --git a/dev-python/wsgi_intercept/metadata.xml b/dev-python/wsgi_intercept/metadata.xml
new file mode 100644
index 000000000000..5796baec0d8a
--- /dev/null
+++ b/dev-python/wsgi_intercept/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="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">wsgi-intercept</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/wsgi_intercept/wsgi_intercept-1.9.2.ebuild b/dev-python/wsgi_intercept/wsgi_intercept-1.9.2.ebuild
new file mode 100644
index 000000000000..82b75815dc24
--- /dev/null
+++ b/dev-python/wsgi_intercept/wsgi_intercept-1.9.2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="wsgi_intercept installs a WSGI application in place of a real URI for testing"
+HOMEPAGE="https://pypi.org/project/wsgi-intercept/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-python/httplib2[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.0.1[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.11.0[${PYTHON_USEDEP}]
+ )
+"
+
+RESTRICT="test"
+PROPERTIES="test_network"
+
+distutils_enable_tests pytest
diff --git a/dev-python/wsgi_intercept/wsgi_intercept-1.9.3.ebuild b/dev-python/wsgi_intercept/wsgi_intercept-1.9.3.ebuild
new file mode 100644
index 000000000000..b71399f04352
--- /dev/null
+++ b/dev-python/wsgi_intercept/wsgi_intercept-1.9.3.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="wsgi_intercept installs a WSGI application in place of a real URI for testing"
+HOMEPAGE="
+ https://pypi.org/project/wsgi-intercept/
+ https://github.com/cdent/wsgi-intercept
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="MIT"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ dev-python/httplib2[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.0.1[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.11.0[${PYTHON_USEDEP}]
+ )
+"
+
+RESTRICT="test"
+PROPERTIES="test_network"
+
+distutils_enable_tests pytest
diff --git a/dev-python/xattr/Manifest b/dev-python/xattr/Manifest
new file mode 100644
index 000000000000..8086105a85c4
--- /dev/null
+++ b/dev-python/xattr/Manifest
@@ -0,0 +1,2 @@
+DIST xattr-0.9.7.tar.gz 13389 BLAKE2B cae6adafe873555058b09c06ee7132726f70642672abce3d2e8ab4844bfadaf6c88ec49d82e51d30c1167e6b362adddec9ef466c9c9cf0d70080c84a741a3f07 SHA512 98473ad4ac270b747416e448f426eb55888ed1a641027f27fc9ced58eff29c6866de6b1d914628e9be1785a93dc857977d172e6bcbe5233e6449447dd08d9bd0
+DIST xattr-0.9.9.tar.gz 15508 BLAKE2B e56c262ca1f390365ed95d746a57a95a39c118ad0c50c7ece556e006d666879d5d318c1e53686b588cb6d8deb9d7f699f3962b15b2440e327b93d840f8765e4b SHA512 1c4c15d77757850290e4434f50d0fae243a9dfe2d190e68310ba35e675e1499a21cd0cd156c4b9f5325b6c2834485527fcf41ec0b255b0bbf2fde4c303f2e325
diff --git a/dev-python/xattr/metadata.xml b/dev-python/xattr/metadata.xml
new file mode 100644
index 000000000000..53736c47b445
--- /dev/null
+++ b/dev-python/xattr/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <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>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/xattr/xattr-0.9.7.ebuild b/dev-python/xattr/xattr-0.9.7.ebuild
new file mode 100644
index 000000000000..654cda00b211
--- /dev/null
+++ b/dev-python/xattr/xattr-0.9.7.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python wrapper for extended filesystem attributes"
+HOMEPAGE="https://github.com/xattr/xattr"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/cffi-1.0.0[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests setup.py
diff --git a/dev-python/xattr/xattr-0.9.9.ebuild b/dev-python/xattr/xattr-0.9.9.ebuild
new file mode 100644
index 000000000000..7e84ae83ec1b
--- /dev/null
+++ b/dev-python/xattr/xattr-0.9.9.ebuild
@@ -0,0 +1,21 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python wrapper for extended filesystem attributes"
+HOMEPAGE="https://github.com/xattr/xattr"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/cffi-1.0.0[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests setup.py
diff --git a/dev-python/xunitparser/Manifest b/dev-python/xunitparser/Manifest
new file mode 100644
index 000000000000..7bb29510f1c8
--- /dev/null
+++ b/dev-python/xunitparser/Manifest
@@ -0,0 +1 @@
+DIST xunitparser-1.3.3.tar.gz 13494 BLAKE2B bd4ff8533419b027e7ffe3cee741d1672d3461962ec5f7d87026c181603130b6ac266b9c7cf2fbaaa1ccbbc3eeb8182f39b0bdfaf123c52bebabd793bcfe740f SHA512 4b681cbaa52a01b780286d202932f1995998b5ce58571882dbc4f3ddb24d3f353e50c5693e47cbb8f4de2ab1ead1357c68d8fcd37fdfc8511ff2f54cd0242564
diff --git a/dev-python/xunitparser/metadata.xml b/dev-python/xunitparser/metadata.xml
new file mode 100644
index 000000000000..c698af234438
--- /dev/null
+++ b/dev-python/xunitparser/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>contact@hacktivis.me</email>
+ <name>Haelwenn (lanodan) Monnier</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-python/xunitparser/xunitparser-1.3.3.ebuild b/dev-python/xunitparser/xunitparser-1.3.3.ebuild
new file mode 100644
index 000000000000..c57d77de1c23
--- /dev/null
+++ b/dev-python/xunitparser/xunitparser-1.3.3.ebuild
@@ -0,0 +1,22 @@
+# Copyright 2012-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+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/yams/Manifest b/dev-python/yams/Manifest
new file mode 100644
index 000000000000..cd4697dd3251
--- /dev/null
+++ b/dev-python/yams/Manifest
@@ -0,0 +1 @@
+DIST yams-0.7.3.tar.gz 31201 BLAKE2B 0b09157c545c3ffe4b2b792c8bd00ebf66f78b65a45904db397b7295d43f4cdefd18c5ef855b88f5652debf6c43902d8e8415cf6d134c51d225bc6ae6ba084dc SHA512 785aae9ce0e371e50dac4070a06102d6ac440acd179b6840d4283b0298dd0ae36f12b9f695ddbf7ee2bb281e4d6e1cfd600a444c4169d5652662da1f8c52f43d
diff --git a/dev-python/yams/metadata.xml b/dev-python/yams/metadata.xml
new file mode 100644
index 000000000000..e6e16e8df046
--- /dev/null
+++ b/dev-python/yams/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>myrvogna@electrosphe.re</email>
+ <name>Octiabrina Terrien-Puig</name>
+ </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.ebuild b/dev-python/yams/yams-0.7.3.ebuild
new file mode 100644
index 000000000000..f637c94ca5c1
--- /dev/null
+++ b/dev-python/yams/yams-0.7.3.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+
+RDEPEND="
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/python-mpd[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ media-sound/mpd
+"
+
+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
new file mode 100644
index 000000000000..f637c94ca5c1
--- /dev/null
+++ b/dev-python/yams/yams-9999.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+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}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+
+RDEPEND="
+ dev-python/psutil[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/python-mpd[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ media-sound/mpd
+"
+
+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/yanc/Manifest b/dev-python/yanc/Manifest
new file mode 100644
index 000000000000..59ffcd368818
--- /dev/null
+++ b/dev-python/yanc/Manifest
@@ -0,0 +1 @@
+DIST yanc-0.3.3.tar.gz 16600 BLAKE2B 3a84943f59f60a153b7e76825c047f4a20779125f83a5b20c253cd24909d99e6aeb67bc870fd36b9f853edd7c9770b9e0b687dc868464c5a569242ae0140552a SHA512 8c19f6490b44aaa3745b9c0048e0a8fdd7081691815bede0399b1a2a313fa62697bfba526bb1bcb41078f4d1375208c494c89879a3111a8749ef70928ea2bf4a
diff --git a/dev-python/yanc/metadata.xml b/dev-python/yanc/metadata.xml
new file mode 100644
index 000000000000..35fa92140627
--- /dev/null
+++ b/dev-python/yanc/metadata.xml
@@ -0,0 +1,12 @@
+<?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">0compute/yanc</remote-id>
+ <remote-id type="pypi">yanc</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/yanc/yanc-0.3.3.ebuild b/dev-python/yanc/yanc-0.3.3.ebuild
new file mode 100644
index 000000000000..881050610583
--- /dev/null
+++ b/dev-python/yanc/yanc-0.3.3.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Yet another nose colorer"
+HOMEPAGE="
+ https://github.com/0compute/yanc
+ https://pypi.org/project/yanc/
+"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="dev-python/nose[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests nose
diff --git a/dev-python/yaql/Manifest b/dev-python/yaql/Manifest
new file mode 100644
index 000000000000..8fa23e3de998
--- /dev/null
+++ b/dev-python/yaql/Manifest
@@ -0,0 +1 @@
+DIST yaql-2.0.0.tar.gz 126174 BLAKE2B 0709c77c30085a2c6ef2ecb643330aef4dd74401b2de358966e146baa57a70a7a09067f55edd07cb1a1fe20a4b4613920ffd0f5b46123343be0ea701cd80b1a5 SHA512 9e28552b833b3dcf5ba40e46f6cffe70e0ecca831c25ac013ab2ec4b85c370103a870efe2efdcf2626cc09ff8b6fc9441451bd9963effbd0b8b903f5e06628c5
diff --git a/dev-python/yaql/metadata.xml b/dev-python/yaql/metadata.xml
new file mode 100644
index 000000000000..6abde7540236
--- /dev/null
+++ b/dev-python/yaql/metadata.xml
@@ -0,0 +1,20 @@
+<?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-2.0.0.ebuild b/dev-python/yaql/yaql-2.0.0.ebuild
new file mode 100644
index 000000000000..fa1cee1e8fc3
--- /dev/null
+++ b/dev-python/yaql/yaql-2.0.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="YAQL: Yet Another Query Language"
+HOMEPAGE="
+ https://github.com/openstack/yaql
+ https://pypi.org/project/yaql/
+ https://launchpad.net/yaql
+ https://opendev.org/openstack/yaql
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/pbr-1.8[${PYTHON_USEDEP}]
+ >=dev-python/python-dateutil-2.4.2[${PYTHON_USEDEP}]
+ dev-python/ply[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-1.3.1[${PYTHON_USEDEP}]
+ >=dev-python/subunit-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/testrepository-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
+ >=dev-python/testtools-1.4.0[${PYTHON_USEDEP}]
+
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/youseedee/Manifest b/dev-python/youseedee/Manifest
new file mode 100644
index 000000000000..b58355cc5fcc
--- /dev/null
+++ b/dev-python/youseedee/Manifest
@@ -0,0 +1 @@
+DIST youseedee-0.3.0.tar.gz 9832 BLAKE2B 3c9f65e8d6f361ddd4f2299853ee1b50ad91637c376690c85a2cbc00b23e5bbf907c8d07f634b96ef4e866403655f94a1007402bb54ac3bc0efab39ce632be0d SHA512 563eda343a853de06acc705570559c4e19b585dd02e4ef0d279b43157ec3989f96993bb5e39331bdd8460250965b80a5b72fe22aed6deaf1f7660288608b820d
diff --git a/dev-python/youseedee/metadata.xml b/dev-python/youseedee/metadata.xml
new file mode 100644
index 000000000000..35b842ca2ace
--- /dev/null
+++ b/dev-python/youseedee/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>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/simoncozens/youseedee/issues</bugs-to>
+ <remote-id type="github">simoncozens/youseedee</remote-id>
+ <remote-id type="pypi">youseedee</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/youseedee/youseedee-0.3.0.ebuild b/dev-python/youseedee/youseedee-0.3.0.ebuild
new file mode 100644
index 000000000000..404da3eb8ede
--- /dev/null
+++ b/dev-python/youseedee/youseedee-0.3.0.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Interface to the Unicode Character Database"
+HOMEPAGE="https://github.com/simoncozens/youseedee"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+KEYWORDS="~amd64"
+LICENSE="MIT"
+SLOT="0"
+
+RDEPEND="dev-python/requests[${PYTHON_USEDEP}]"
+DEPEND="${RDEPEND}"
diff --git a/dev-python/zVMCloudConnector/Manifest b/dev-python/zVMCloudConnector/Manifest
new file mode 100644
index 000000000000..8b65457a0a73
--- /dev/null
+++ b/dev-python/zVMCloudConnector/Manifest
@@ -0,0 +1 @@
+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
new file mode 100644
index 000000000000..c5785e536dbb
--- /dev/null
+++ b/dev-python/zVMCloudConnector/metadata.xml
@@ -0,0 +1,15 @@
+<?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-r1.ebuild b/dev-python/zVMCloudConnector/zVMCloudConnector-1.4.1-r1.ebuild
new file mode 100644
index 000000000000..7ffd7f791a02
--- /dev/null
+++ b/dev-python/zVMCloudConnector/zVMCloudConnector-1.4.1-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="a development sdk for managing z/VM"
+HOMEPAGE="
+ https://github.com/mfcloud/python-zvm-sdk
+ https://pypi.org/project/zVMCloudConnector/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=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}]
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? (
+ >=dev-python/mock-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/subunit-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-1.6.2[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/zake/Manifest b/dev-python/zake/Manifest
new file mode 100644
index 000000000000..ff5703542118
--- /dev/null
+++ b/dev-python/zake/Manifest
@@ -0,0 +1 @@
+DIST zake-0.2.2.tar.gz 13544 BLAKE2B 622f56430a2451c24f687d319188d35cef62059a4bfd9983be323184de6f7b346d236e1fec8922a130b263296e3a1569aa1dc4f6dacbceff68c1dcba81401181 SHA512 40da54970553e2e560de2f76c54ab55287e29f99c53c41c2c50fa8642855f1632319aa80e77f4f2ae0a776b94667839385e6323a174cd76219420be71adf7484
diff --git a/dev-python/zake/metadata.xml b/dev-python/zake/metadata.xml
new file mode 100644
index 000000000000..6989d6f6e8c4
--- /dev/null
+++ b/dev-python/zake/metadata.xml
@@ -0,0 +1,25 @@
+<?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 python package that works to provide a nice set of testing utilities for the kazoo library.
+
+It includes the following functionality:
+
+ Storage access (for viewing what was saved/created).
+ Kazoo mostly compatible client API.
+ Sync/transaction/create/get/delete... commands.
+ Listener support.
+ And more...
+
+It simplifies testing by providing a client that has a similar API as the kazoo client so that your tests (or applications/libraries that use kazoo) do not require a real zookeeper server to be tested with (since this is not available in all testing environments).
+ </longdescription>
+ <upstream>
+ <remote-id type="github">yahoo/Zake</remote-id>
+ <remote-id type="pypi">zake</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/zake/zake-0.2.2.ebuild b/dev-python/zake/zake-0.2.2.ebuild
new file mode 100644
index 000000000000..6cef41f16885
--- /dev/null
+++ b/dev-python/zake/zake-0.2.2.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{7,8,9,10} )
+
+inherit distutils-r1
+
+DESCRIPTION="Provide a nice set of testing utilities for the kazoo library"
+HOMEPAGE="
+ https://pypi.org/project/zake/
+ https://github.com/yahoo/Zake
+"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND=">=dev-python/kazoo-1.3.1[${PYTHON_USEDEP}]"
+DEPEND="
+ ${REDEPEND}
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/testtools[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests nose