summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2021-10-30 09:50:10 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2021-10-30 09:50:10 +0000
commite08ef2001e9e040c94c32594d8e644117e0c0929 (patch)
tree18069d5ffad0d5dc507f45d95c2cbcee47ccf251 /dev-python
parentd4a7f2a56c813fedd229bd6af662e28cdde3cc9e (diff)
downloadbaldeagleos-repo-e08ef2001e9e040c94c32594d8e644117e0c0929.tar.gz
baldeagleos-repo-e08ef2001e9e040c94c32594d8e644117e0c0929.tar.xz
baldeagleos-repo-e08ef2001e9e040c94c32594d8e644117e0c0929.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/PyQt-builder/PyQt-builder-1.12.1.ebuild2
-rw-r--r--dev-python/PyQt5/PyQt5-5.15.5.ebuild2
-rw-r--r--dev-python/bpython/bpython-0.21.ebuild7
-rw-r--r--dev-python/bpython/files/bpython-0.21-fix-py3.10.patch48
-rw-r--r--dev-python/filelock/Manifest1
-rw-r--r--dev-python/filelock/filelock-3.3.2.ebuild28
-rw-r--r--dev-python/gevent/gevent-21.8.0.ebuild2
-rw-r--r--dev-python/lxml/files/lxml-4.6.3-tests-libxml2.patch22
-rw-r--r--dev-python/lxml/lxml-4.6.3-r1.ebuild1
-rw-r--r--dev-python/lxml/lxml-4.6.3.ebuild100
-rw-r--r--dev-python/markups/markups-3.1.2.ebuild2
-rw-r--r--dev-python/matplotlib/matplotlib-3.4.3-r1.ebuild2
-rw-r--r--dev-python/nuitka/Manifest1
-rw-r--r--dev-python/nuitka/nuitka-0.6.17.5.ebuild48
-rw-r--r--dev-python/pandas/files/pandas-1.3.4-arm-tests.patch21
-rw-r--r--dev-python/pandas/pandas-1.3.4.ebuild5
-rw-r--r--dev-python/passlib/passlib-1.7.4-r1.ebuild38
-rw-r--r--dev-python/prometheus_client/Manifest1
-rw-r--r--dev-python/prometheus_client/prometheus_client-0.12.0.ebuild21
-rw-r--r--dev-python/pygobject/pygobject-3.42.0.ebuild2
-rw-r--r--dev-python/pyicu/Manifest1
-rw-r--r--dev-python/pyicu/pyicu-2.8.ebuild29
-rw-r--r--dev-python/python-markdown-math/python-markdown-math-0.8.ebuild2
-rw-r--r--dev-python/soupsieve/files/soupsieve-2.2.1-lxml-libxml2-tests.patch64
-rw-r--r--dev-python/soupsieve/soupsieve-2.2.1-r1.ebuild (renamed from dev-python/soupsieve/soupsieve-2.2.1.ebuild)9
-rw-r--r--dev-python/tappy/metadata.xml4
-rw-r--r--dev-python/tappy/tappy-3.0.ebuild15
-rw-r--r--dev-python/tzlocal/Manifest1
-rw-r--r--dev-python/tzlocal/tzlocal-4.1.ebuild27
-rw-r--r--dev-python/uvicorn/files/uvicorn-0.13.4-fix-wsproto-1.0.patch31
-rw-r--r--dev-python/whisper/Manifest1
-rw-r--r--dev-python/whisper/whisper-1.1.8.ebuild24
32 files changed, 408 insertions, 154 deletions
diff --git a/dev-python/PyQt-builder/PyQt-builder-1.12.1.ebuild b/dev-python/PyQt-builder/PyQt-builder-1.12.1.ebuild
index 5db8515e76ec..8568e1353af5 100644
--- a/dev-python/PyQt-builder/PyQt-builder-1.12.1.ebuild
+++ b/dev-python/PyQt-builder/PyQt-builder-1.12.1.ebuild
@@ -19,7 +19,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="|| ( GPL-2 GPL-3 SIP )"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
RDEPEND="
dev-python/packaging[${PYTHON_USEDEP}]
diff --git a/dev-python/PyQt5/PyQt5-5.15.5.ebuild b/dev-python/PyQt5/PyQt5-5.15.5.ebuild
index 6066e5664df7..ac9831bb1ec7 100644
--- a/dev-python/PyQt5/PyQt5-5.15.5.ebuild
+++ b/dev-python/PyQt5/PyQt5-5.15.5.ebuild
@@ -19,7 +19,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="GPL-3"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
# TODO: QtNfc, QtQuick3D, QtRemoteObjects
IUSE="bluetooth dbus debug declarative designer examples gles2-only gui help location
diff --git a/dev-python/bpython/bpython-0.21.ebuild b/dev-python/bpython/bpython-0.21.ebuild
index a675907cc126..cf857173aca4 100644
--- a/dev-python/bpython/bpython-0.21.ebuild
+++ b/dev-python/bpython/bpython-0.21.ebuild
@@ -4,8 +4,6 @@
EAPI=7
PYTHON_COMPAT=( python3_{6,7,8,9,10} )
-DISTUTILS_USE_SETUPTOOLS=rdepend
-
inherit distutils-r1
DESCRIPTION="Syntax highlighting and autocompletion for the Python interpreter"
@@ -34,7 +32,10 @@ BDEPEND="
DOCS=( AUTHORS.rst CHANGELOG.rst )
-PATCHES=( "${FILESDIR}"/${PN}-sphinx-4.patch )
+PATCHES=(
+ "${FILESDIR}"/${PN}-sphinx-4.patch
+ "${FILESDIR}"/${P}-fix-py3.10.patch
+)
distutils_enable_sphinx doc/sphinx/source --no-autodoc
distutils_enable_tests unittest
diff --git a/dev-python/bpython/files/bpython-0.21-fix-py3.10.patch b/dev-python/bpython/files/bpython-0.21-fix-py3.10.patch
new file mode 100644
index 000000000000..5b7c63767820
--- /dev/null
+++ b/dev-python/bpython/files/bpython-0.21-fix-py3.10.patch
@@ -0,0 +1,48 @@
+From 78ead4c83d7c47c35ab075dd08114f51c24a709d Mon Sep 17 00:00:00 2001
+From: Thomas Ballinger <thomasballinger@gmail.com>
+Date: Wed, 6 Oct 2021 19:59:38 -0700
+Subject: [PATCH] Test Python 3.10 (#924)
+
+* Test Python 3.10
+* Update tests for Python 3.10
+
+--- a/bpython/test/test_curtsies_painting.py
++++ b/bpython/test/test_curtsies_painting.py
+@@ -139,6 +139,14 @@ def test_completion(self):
+ "└──────────────────────────────┘",
+ "Welcome to bpython! Press <F1> f",
+ ]
++ if sys.version_info[:2] < (3, 10)
++ else [
++ ">>> an",
++ "┌──────────────────────────────┐",
++ "│ and anext( any( │",
++ "└──────────────────────────────┘",
++ "Welcome to bpython! Press <F1> f",
++ ]
+ )
+ self.assert_paint_ignoring_formatting(screen, (0, 4))
+
+--- a/bpython/test/test_interpreter.py
++++ b/bpython/test/test_interpreter.py
+@@ -35,7 +35,19 @@ def test_syntaxerror(self):
+
+ i.runsource("1.1.1.1")
+
+- if sys.version_info[:2] >= (3, 8):
++ if sys.version_info[:2] >= (3, 10):
++ expected = (
++ " File "
++ + green('"<bpython-input-148>"')
++ + ", line "
++ + bold(magenta("1"))
++ + "\n 1.1.1.1\n ^^^^^\n"
++ + bold(red("SyntaxError"))
++ + ": "
++ + cyan("invalid syntax. Perhaps you forgot a comma?")
++ + "\n"
++ )
++ elif (3, 8) <= sys.version_info[:2] <= (3, 9):
+ expected = (
+ " File "
+ + green('"<input>"')
diff --git a/dev-python/filelock/Manifest b/dev-python/filelock/Manifest
index 2e86c016f825..2068df7c6813 100644
--- a/dev-python/filelock/Manifest
+++ b/dev-python/filelock/Manifest
@@ -3,3 +3,4 @@ DIST py-filelock-3.1.0.tar.gz 584958 BLAKE2B 29ce6c14ece7a45104ceda46bbb261730f7
DIST py-filelock-3.2.0.tar.gz 584871 BLAKE2B 67c5d85dd030007c12f549e772eac8d028c9f0ee9abac4b5106bbcae91e5447e7c6394938877b718630c22323c53ebc28a8bff8b2e323401f027807f7447017b SHA512 8c2f3980090b798ca0103158731a816443bf461a40d79f337e1c102aee50b3885d2b30113d509a8457df20a2cef196e70b2313fbe3f5b44557b817e5a6154d80
DIST py-filelock-3.3.0.tar.gz 200781 BLAKE2B b511e6f2780639cddaa0753b1812c44a32720d84af63ad503ea7843ee59f81555569ed828296ba89f0e42b88de3f62c9af9abea970848acb59f2ce59eafb9c64 SHA512 e0a1603f8056788223edb4e0a2b3a83d7dceba385ff14ed04966b47a29c659ef58f782383a3864b6ffa8edeb5be6e85ad3cc70abf3926514eccac5bc747c81ad
DIST py-filelock-3.3.1.tar.gz 202803 BLAKE2B d8a97d6e5beb8fe8883aa29bb55135f10f40f899232a84a53d66c4f4f50317f0e66a52141eb4285dd23fada276d23f10f43be166c481dc422a606d02eb350146 SHA512 0e8ff074a65f0f8f65fb4f05d94fcaccd37f2f1c489e5ed888e36f722a046cd143596ed1142d0638f2eaabdbfb27e48011bbce9b09e776e11c16b1c13d1467a8
+DIST py-filelock-3.3.2.tar.gz 203026 BLAKE2B fce1a0d3c6ee1867d0af76d8ad73d3109568b30dcc823923573d9094298139151dc94c41216bb6b9634137949f1d5165a1b162845392f5478e0f240aebf36c04 SHA512 ec077249d2ab2586e33a5ff55246627ad089cfd37979258e5325ea7c6aa80bd08dcb1bd4055fcc6ca326b81f07c65d0db7e7a276da61dfc2dff5500792be83d6
diff --git a/dev-python/filelock/filelock-3.3.2.ebuild b/dev-python/filelock/filelock-3.3.2.ebuild
new file mode 100644
index 000000000000..47a56ed72c09
--- /dev/null
+++ b/dev-python/filelock/filelock-3.3.2.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2018-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} pypy3 )
+inherit distutils-r1
+
+MY_P=py-filelock-${PV}
+DESCRIPTION="A platform independent file lock for Python"
+HOMEPAGE="
+ https://github.com/tox-dev/py-filelock/
+ https://pypi.org/project/filelock/"
+SRC_URI="
+ https://github.com/tox-dev/py-filelock/archive/${PV}.tar.gz
+ -> ${MY_P}.tar.gz"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="Unlicense"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+BDEPEND="
+ test? ( dev-python/pytest-timeout[${PYTHON_USEDEP}] )"
+
+distutils_enable_tests pytest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
diff --git a/dev-python/gevent/gevent-21.8.0.ebuild b/dev-python/gevent/gevent-21.8.0.ebuild
index 7361f0b3813b..01b5aaa4969c 100644
--- a/dev-python/gevent/gevent-21.8.0.ebuild
+++ b/dev-python/gevent/gevent-21.8.0.ebuild
@@ -15,7 +15,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 ~arm ~arm64 ~mips ppc ~ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~mips ppc ppc64 ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
IUSE="doc examples test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/lxml/files/lxml-4.6.3-tests-libxml2.patch b/dev-python/lxml/files/lxml-4.6.3-tests-libxml2.patch
new file mode 100644
index 000000000000..4c682add3a2d
--- /dev/null
+++ b/dev-python/lxml/files/lxml-4.6.3-tests-libxml2.patch
@@ -0,0 +1,22 @@
+https://github.com/lxml/lxml/commit/852ed1092bd80b6b9a51db24371047ec88843031
+https://bugs.gentoo.org/791190
+
+From: Stefan Behnel <stefan_ml@behnel.de>
+Date: Tue, 18 May 2021 22:02:02 +0200
+Subject: [PATCH] Adapt a test to a behavioural change in libxml2 2.9.11+.
+
+--- a/src/lxml/tests/test_etree.py
++++ b/src/lxml/tests/test_etree.py
+@@ -3036,7 +3036,10 @@ def test_subelement_nsmap(self):
+ def test_html_prefix_nsmap(self):
+ etree = self.etree
+ el = etree.HTML('<hha:page-description>aa</hha:page-description>').find('.//page-description')
+- self.assertEqual({'hha': None}, el.nsmap)
++ if etree.LIBXML_VERSION < (2, 9, 11):
++ self.assertEqual({'hha': None}, el.nsmap)
++ else:
++ self.assertEqual({}, el.nsmap)
+
+ def test_getchildren(self):
+ Element = self.etree.Element
+
diff --git a/dev-python/lxml/lxml-4.6.3-r1.ebuild b/dev-python/lxml/lxml-4.6.3-r1.ebuild
index af0bf51dcaab..67bcfa8b553a 100644
--- a/dev-python/lxml/lxml-4.6.3-r1.ebuild
+++ b/dev-python/lxml/lxml-4.6.3-r1.ebuild
@@ -41,6 +41,7 @@ DISTUTILS_IN_SOURCE_BUILD=1
PATCHES=(
"${FILESDIR}"/${PN}-4.6.0-tests-pypy.patch
+ "${FILESDIR}"/${P}-tests-libxml2.patch
)
python_check_deps() {
diff --git a/dev-python/lxml/lxml-4.6.3.ebuild b/dev-python/lxml/lxml-4.6.3.ebuild
deleted file mode 100644
index 98f6e756a6ae..000000000000
--- a/dev-python/lxml/lxml-4.6.3.ebuild
+++ /dev/null
@@ -1,100 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-PYTHON_COMPAT=( python3_{6,7,8,9,10} pypy3 )
-
-inherit distutils-r1 optfeature toolchain-funcs
-
-DESCRIPTION="A Pythonic binding for the libxml2 and libxslt libraries"
-HOMEPAGE="https://lxml.de/ https://pypi.org/project/lxml/ https://github.com/lxml/lxml"
-SRC_URI="https://github.com/lxml/lxml/archive/${P}.tar.gz"
-S=${WORKDIR}/lxml-${P}
-
-LICENSE="BSD ElementTree GPL-2 PSF-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
-IUSE="doc examples +threads test"
-RESTRICT="!test? ( test )"
-
-# Note: lib{xml2,xslt} are used as C libraries, not Python modules.
-RDEPEND="
- <dev-libs/libxml2-2.9.12
- >=dev-libs/libxslt-1.1.28"
-DEPEND="${RDEPEND}"
-BDEPEND="
- virtual/pkgconfig
- dev-python/cython[${PYTHON_USEDEP}]
- doc? (
- $(python_gen_any_dep '
- dev-python/docutils[${PYTHON_USEDEP}]
- dev-python/pygments[${PYTHON_USEDEP}]
- dev-python/sphinx[${PYTHON_USEDEP}]
- dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]
- ')
- )
- test? ( dev-python/cssselect[${PYTHON_USEDEP}] )
- "
-
-DISTUTILS_IN_SOURCE_BUILD=1
-
-PATCHES=(
- "${FILESDIR}"/${PN}-4.6.0-tests-pypy.patch
-)
-
-python_check_deps() {
- use doc || return 0
- has_version "dev-python/docutils[${PYTHON_USEDEP}]" &&
- has_version "dev-python/pygments[${PYTHON_USEDEP}]" &&
- has_version "dev-python/sphinx[${PYTHON_USEDEP}]" &&
- has_version "dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}]"
-}
-
-python_prepare_all() {
- # avoid replacing PYTHONPATH in tests.
- sed -i -e '/sys\.path/d' test.py || die
-
- # don't use some random SDK on Darwin
- sed -i -e '/_ldflags =/s/=.*isysroot.*darwin.*None/= None/' \
- setupinfo.py || die
-
- distutils-r1_python_prepare_all
-}
-
-python_compile() {
- if ! python_is_python3; then
- local -x CFLAGS="${CFLAGS} -fno-strict-aliasing"
- fi
- tc-export PKG_CONFIG
- distutils-r1_python_compile
-}
-
-python_compile_all() {
- use doc && emake html
-}
-
-python_test() {
- cp -r -l src/lxml/tests "${BUILD_DIR}"/lib/lxml/ || die
- cp -r -l src/lxml/html/tests "${BUILD_DIR}"/lib/lxml/html/ || die
- ln -s "${S}"/doc "${BUILD_DIR}"/ || die
-
- "${EPYTHON}" test.py -vv --all-levels -p || die "Test ${test} fails with ${EPYTHON}"
-}
-
-python_install_all() {
- if use doc; then
- local DOCS=( README.rst *.txt doc/*.txt )
- local HTML_DOCS=( doc/html/. )
- fi
- if use examples; then
- dodoc -r samples
- fi
-
- distutils-r1_python_install_all
-}
-
-pkg_postinst() {
- optfeature "Support for BeautifulSoup as a parser backend" dev-python/beautifulsoup4
- optfeature "Translates CSS selectors to XPath 1.0 expressions" dev-python/cssselect
-}
diff --git a/dev-python/markups/markups-3.1.2.ebuild b/dev-python/markups/markups-3.1.2.ebuild
index 40f9e2024232..7274ad817d06 100644
--- a/dev-python/markups/markups-3.1.2.ebuild
+++ b/dev-python/markups/markups-3.1.2.ebuild
@@ -18,7 +18,7 @@ S="${WORKDIR}/${MY_P}"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="amd64 x86"
+KEYWORDS="amd64 ~riscv x86"
RDEPEND="
dev-python/markdown[${PYTHON_USEDEP}]
diff --git a/dev-python/matplotlib/matplotlib-3.4.3-r1.ebuild b/dev-python/matplotlib/matplotlib-3.4.3-r1.ebuild
index 379d392c58bb..da7d8f089537 100644
--- a/dev-python/matplotlib/matplotlib-3.4.3-r1.ebuild
+++ b/dev-python/matplotlib/matplotlib-3.4.3-r1.ebuild
@@ -22,7 +22,7 @@ SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz
# Fonts: BitstreamVera, OFL-1.1
LICENSE="BitstreamVera BSD matplotlib MIT OFL-1.1"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 sparc ~x86"
+KEYWORDS="amd64 ~arm arm64 ~hppa ~ia64 ppc ~ppc64 ~riscv ~s390 sparc ~x86"
IUSE="cairo doc excel examples gtk3 latex qt5 tk webagg wxwidgets"
# internal copy of pycxx highly patched
diff --git a/dev-python/nuitka/Manifest b/dev-python/nuitka/Manifest
index 258bc9f2abc6..a5e2c6fae19a 100644
--- a/dev-python/nuitka/Manifest
+++ b/dev-python/nuitka/Manifest
@@ -1,2 +1,3 @@
DIST Nuitka-0.6.17.3.tar.gz 3147197 BLAKE2B fa72985494a362e430dd5eda0b14b5ff0620eb2d5a607cbae58802b92d9cf73d810864f00c366508dd89d8e7989bfbbdbd07b4309839ec36df224d45fa264a4c SHA512 dcda36320e1c9de269f0407869b15f47b960fada87fd6fb60b2e96cdd637f6a773042f0ca30e3d25c8e111a5fe86e69242424e982651af732ca840afd010a909
DIST Nuitka-0.6.17.4.tar.gz 3147951 BLAKE2B b82a28aab93b2ee570820c1e59f15c49649f799d97f17aec9a66e47d60563e30f5028126c3547b69e168ab425991d8e592a6dc8639971a22a44ad83cfb19d32b SHA512 0bee622d516357851cd96fc3df3dd8e550b296d5045548f40a6b02565e95b2b326b6aa6a8ae54c44d16c641ba7113a38966115967c58c6df4ab4a6ed81e9031f
+DIST Nuitka-0.6.17.5.tar.gz 3148624 BLAKE2B 41716b4736169eb9706ec0431ce34559c97259c95a02467d1ecc05a7c22cb9a471d96c0a8424a1df5e70a678bc6a5e7ff22dca24b61be891befa343b2ab48ca4 SHA512 aee2b8f1992e4d77c2650dfe02a97c9b402c9fb0d0fd75e47c1ebcc584310285603e850eed7de99e372d430ec59834a437afe613ef8dc9c0b904a80ff3996ca3
diff --git a/dev-python/nuitka/nuitka-0.6.17.5.ebuild b/dev-python/nuitka/nuitka-0.6.17.5.ebuild
new file mode 100644
index 000000000000..acc004a70528
--- /dev/null
+++ b/dev-python/nuitka/nuitka-0.6.17.5.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{6,7,8,9,10} )
+inherit distutils-r1 flag-o-matic optfeature
+
+DESCRIPTION="Python to native compiler"
+HOMEPAGE="https://www.nuitka.net"
+SRC_URI="https://nuitka.net/releases/${P^}.tar.gz"
+S="${WORKDIR}/${P^}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="dev-util/scons[${PYTHON_USEDEP}]"
+BDEPEND="
+ ${RDEPEND}
+ test? ( dev-util/ccache )
+"
+
+DOCS=( Changelog.pdf Developer_Manual.pdf README.pdf )
+
+distutils-r1_src_prepare() {
+ # remove vendored version of SCons that is Python2 only
+ # this should be removed when upstream removes support for Python2
+ rm -vR "${S}/${PN}/build/inline_copy/lib/scons-2.3.2/SCons" || die
+ eapply_user
+}
+
+python_install() {
+ distutils-r1_python_install
+ python_optimize
+ doman doc/nuitka.1 doc/nuitka3.1 doc/nuitka3-run.1 doc/nuitka-run.1
+}
+
+python_test() {
+ append-ldflags -Wl,--no-warn-search-mismatch
+ ./tests/basics/run_all.py search || die
+}
+
+pkg_postinst() {
+ optfeature "support for stand-alone executables" app-admin/chrpath
+}
diff --git a/dev-python/pandas/files/pandas-1.3.4-arm-tests.patch b/dev-python/pandas/files/pandas-1.3.4-arm-tests.patch
new file mode 100644
index 000000000000..c30d10460b63
--- /dev/null
+++ b/dev-python/pandas/files/pandas-1.3.4-arm-tests.patch
@@ -0,0 +1,21 @@
+https://bugs.gentoo.org/818964
+https://github.com/pandas-dev/pandas/commit/b0992ee2f4653c7d70ddbad6f2d172a4ef0bda32
+
+From: Sam James <sam@cmpct.info>
+Date: Fri, 29 Oct 2021 17:24:01 +0100
+Subject: [PATCH] Update is_platform_arm() to detect 32-bit arm and other
+ variants (#44225)
+
+--- a/pandas/compat/__init__.py
++++ b/pandas/compat/__init__.py
+@@ -99,7 +99,9 @@ def is_platform_arm() -> bool:
+ bool
+ True if the running platform uses ARM architecture.
+ """
+- return platform.machine() in ("arm64", "aarch64")
++ return platform.machine() in ("arm64", "aarch64") or platform.machine().startswith(
++ "armv"
++ )
+
+
+ def import_lzma():
diff --git a/dev-python/pandas/pandas-1.3.4.ebuild b/dev-python/pandas/pandas-1.3.4.ebuild
index 4ef6f81004df..b31d70bb14bb 100644
--- a/dev-python/pandas/pandas-1.3.4.ebuild
+++ b/dev-python/pandas/pandas-1.3.4.ebuild
@@ -106,6 +106,11 @@ RDEPEND="${COMMON_DEPEND}
full-support? ( ${OPTIONAL_DEPEND} )
"
+PATCHES=(
+ # Upstream patch to fix 32-bit ARM test detection
+ "${FILESDIR}"/${P}-arm-tests.patch
+)
+
python_prepare_all() {
# Prevent un-needed download during build
sed -e "/^ 'sphinx.ext.intersphinx',/d" \
diff --git a/dev-python/passlib/passlib-1.7.4-r1.ebuild b/dev-python/passlib/passlib-1.7.4-r1.ebuild
new file mode 100644
index 000000000000..1ce8c29d5ed4
--- /dev/null
+++ b/dev-python/passlib/passlib-1.7.4-r1.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_{6,7,8,9,10} pypy3 )
+
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Password hashing framework supporting over 20 schemes"
+HOMEPAGE="https://foss.heptapod.net/python-libs/passlib/wikis/home"
+SRC_URI="mirror://pypi/p/${PN}/${P}.tar.gz"
+
+LICENSE="BSD-2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+SLOT="0"
+IUSE="doc"
+
+BDEPEND="
+ test? (
+ dev-python/bcrypt[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/scrypt[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests nose
+
+python_install_all() {
+ distutils-r1_python_install_all
+ use doc && dodoc docs/{*.rst,requirements.txt,lib/*.rst}
+}
+
+pkg_postinst() {
+ optfeature "Argon2 support" dev-python/argon2-cffi
+ optfeature "bcrypt support" dev-python/bcrypt
+ optfeature "scrypt support" dev-python/scrypt
+ optfeature "Time-based One-Time Password (TOTP) support" dev-python/cryptography
+}
diff --git a/dev-python/prometheus_client/Manifest b/dev-python/prometheus_client/Manifest
index ed60370f1bde..2522b4c3e7d9 100644
--- a/dev-python/prometheus_client/Manifest
+++ b/dev-python/prometheus_client/Manifest
@@ -1 +1,2 @@
DIST prometheus_client-0.11.0.tar.gz 72272 BLAKE2B 2526a65acf928ce5f492c6a43276ecb951d8b600eeb5050b92db091919862eb0ec4f41ca41347b4dd70a612f70e8f4a49796572de80b197d21c3a8cf8e303201 SHA512 5e644d781b7fcc3e0e386a2244f524ccaf978f1eab87b1d6d8009ac3f10fe2ca4adf2c76c2a2ffa47b4b54237cd906807d55bd99530a92d82cd3825de93280dc
+DIST prometheus_client-0.12.0.tar.gz 73521 BLAKE2B eb90c7f3991519fe132f01612d6aadd10193947069b79e67c9e37faa4e174d739ca78b12de028dfc922cb368c7405baeb4fa929b378a91db12e67190ca3561ff SHA512 ebcbbed706a96a9402eb985f5da15ee8fae09de952144a89a3323e147c0d16615ccd9be58b50b5b8ede37d4f66de1e2ce93ed53c4da939ca2e44c7aac687a1f7
diff --git a/dev-python/prometheus_client/prometheus_client-0.12.0.ebuild b/dev-python/prometheus_client/prometheus_client-0.12.0.ebuild
new file mode 100644
index 000000000000..2bc7fa1c7996
--- /dev/null
+++ b/dev-python/prometheus_client/prometheus_client-0.12.0.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_{6,7,8,9,10} )
+inherit distutils-r1
+
+DESCRIPTION="Python client for the Prometheus monitoring system"
+HOMEPAGE="https://pypi.org/project/prometheus-client/
+ https://github.com/prometheus/client_python/"
+SRC_URI="https://github.com/prometheus/client_python/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/client_python-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="dev-python/twisted[${PYTHON_USEDEP}]"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pygobject/pygobject-3.42.0.ebuild b/dev-python/pygobject/pygobject-3.42.0.ebuild
index 4456c5dc8ab9..1b858da10b9d 100644
--- a/dev-python/pygobject/pygobject-3.42.0.ebuild
+++ b/dev-python/pygobject/pygobject-3.42.0.ebuild
@@ -12,7 +12,7 @@ HOMEPAGE="https://pygobject.readthedocs.io/"
LICENSE="LGPL-2.1+"
SLOT="3"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
IUSE="+cairo examples test"
RESTRICT="!test? ( test )"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
diff --git a/dev-python/pyicu/Manifest b/dev-python/pyicu/Manifest
index 5baa55744157..cccd750bd899 100644
--- a/dev-python/pyicu/Manifest
+++ b/dev-python/pyicu/Manifest
@@ -1 +1,2 @@
DIST pyicu-v2.7.4.tar.bz2 241794 BLAKE2B b76455809704b417a42a60f002b1bfcc0fdf03dd4934b514464b06c4c53d1afa2f99645d9b69a131c3c9218f36a18a4412a6742a912450ce47f856dfc088e568 SHA512 bc68d94d2bd070cd1b7a2f214f998831d2f75a3f4528ad5b1d3394b343d357c24daa6b29443d35a7c984ab0bbafd3b45949d1ccbf89b061423329efa08181fc0
+DIST pyicu-v2.8.tar.bz2 242791 BLAKE2B 0492b1fbbb97a92fb90620fb720cf82ddb2e404d4ce4d20d4204c271ae0c32c526e5832f5658205893381c074f6b1e2a3274f1935efac094241fe2afbc7b9c07 SHA512 c8ecc11322de79d42aa0f0336cdc47637af203bbf2782107132d3c194cef3725114ba6fc40bbd2bffc26ce168d6d4e39f069904aa268d0d095c506ddca292051
diff --git a/dev-python/pyicu/pyicu-2.8.ebuild b/dev-python/pyicu/pyicu-2.8.ebuild
new file mode 100644
index 000000000000..f922b0a96fed
--- /dev/null
+++ b/dev-python/pyicu/pyicu-2.8.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_{6,7,8,9,10} )
+inherit distutils-r1
+
+MY_P=${P/-/-v}
+DESCRIPTION="Python bindings for dev-libs/icu"
+HOMEPAGE="
+ https://gitlab.pyicu.org/main/pyicu/
+ https://pypi.org/project/PyICU/"
+SRC_URI="
+ https://gitlab.pyicu.org/main/pyicu/-/archive/v${PV}/${MY_P}.tar.bz2"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="dev-libs/icu:="
+DEPEND="${RDEPEND}"
+BDEPEND="
+ test? ( dev-python/six[${PYTHON_USEDEP}] )"
+
+DOCS=( CHANGES CREDITS README.md )
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-markdown-math/python-markdown-math-0.8.ebuild b/dev-python/python-markdown-math/python-markdown-math-0.8.ebuild
index ee3deccfe647..d36d78ffea09 100644
--- a/dev-python/python-markdown-math/python-markdown-math-0.8.ebuild
+++ b/dev-python/python-markdown-math/python-markdown-math-0.8.ebuild
@@ -12,7 +12,7 @@ SRC_URI="mirror://pypi/${PN::1}/${PN}/${P}.tar.gz"
LICENSE="BSD"
SLOT="0"
-KEYWORDS="amd64 x86"
+KEYWORDS="amd64 ~riscv x86"
RDEPEND="
>=dev-python/markdown-3.0.1[${PYTHON_USEDEP}]
diff --git a/dev-python/soupsieve/files/soupsieve-2.2.1-lxml-libxml2-tests.patch b/dev-python/soupsieve/files/soupsieve-2.2.1-lxml-libxml2-tests.patch
new file mode 100644
index 000000000000..a7075fa6fb6d
--- /dev/null
+++ b/dev-python/soupsieve/files/soupsieve-2.2.1-lxml-libxml2-tests.patch
@@ -0,0 +1,64 @@
+https://sources.debian.org/data/main/s/soupsieve/2.2.1-2/debian/patches/libxml2-2.9.11
+https://github.com/facelessuser/soupsieve/issues/220
+
+Apply Debian patch to skip tests which expose a lxml bug that's
+already being handled elsewhere.
+
+From: Stefano Rivera <stefanor@debian.org>
+Date: Sat, 2 Oct 2021 12:05:17 -0700
+Subject: Mark test_contains_cdata_html tests XFAIL for libxml2 >= 2.9.11
+
+libxml2 changed CDATA handling in 2.9.11.
+Beautifulsoup supports this change, but lxml upstream has pinned on an
+older version so the behaviour change isn't standardised upstream, yet.
+
+Bug-upstream: https://github.com/facelessuser/soupsieve/issues/220
+Bug-lxml: https://bugs.launchpad.net/lxml/+bug/1928795
+Bug-beautifulsoup: https://bugs.launchpad.net/beautifulsoup/+bug/1930164
+Bug-Debian: https://bugs.debian.org/995459
+
+Forwarded: no
+--- a/tests/test_extra/test_soup_contains.py
++++ b/tests/test_extra/test_soup_contains.py
+@@ -3,6 +3,9 @@ from .. import util
+ import warnings
+ import soupsieve as sv
+
++import pytest
++from lxml.etree import LIBXML_VERSION
++
+
+ class TestSoupContains(util.TestCase):
+ """Test soup-contains selectors."""
+@@ -144,6 +147,9 @@ class TestSoupContains(util.TestCase):
+ flags=util.HTML
+ )
+
++ @pytest.mark.xfail(LIBXML_VERSION >= (2, 9, 11),
++ reason='lxml parser changed CDATA handling, see '
++ 'https://github.com/facelessuser/soupsieve/issues/220')
+ def test_contains_cdata_html(self):
+ """Test contains CDATA in HTML5."""
+
+--- a/tests/test_extra/test_soup_contains_own.py
++++ b/tests/test_extra/test_soup_contains_own.py
+@@ -1,6 +1,9 @@
+ """Test contains selectors."""
+ from .. import util
+
++import pytest
++from lxml.etree import LIBXML_VERSION
++
+
+ class TestSoupContainsOwn(util.TestCase):
+ """Test soup-contains-own selectors."""
+@@ -35,6 +38,9 @@ class TestSoupContainsOwn(util.TestCase):
+ flags=util.HTML
+ )
+
++ @pytest.mark.xfail(LIBXML_VERSION >= (2, 9, 11),
++ reason='lxml parser changed CDATA handling, see '
++ 'https://github.com/facelessuser/soupsieve/issues/220')
+ def test_contains_own_cdata_html(self):
+ """Test contains CDATA in HTML5."""
+
diff --git a/dev-python/soupsieve/soupsieve-2.2.1.ebuild b/dev-python/soupsieve/soupsieve-2.2.1-r1.ebuild
index 2cfb1ad81dfa..7ac2c065a7cb 100644
--- a/dev-python/soupsieve/soupsieve-2.2.1.ebuild
+++ b/dev-python/soupsieve/soupsieve-2.2.1-r1.ebuild
@@ -19,9 +19,16 @@ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 s
BDEPEND="
test? (
dev-python/beautifulsoup4[${PYTHON_USEDEP}]
- <dev-python/lxml-4.6.3-r1[${PYTHON_USEDEP}]
+ dev-python/lxml[${PYTHON_USEDEP}]
dev-python/html5lib[${PYTHON_USEDEP}]
)
"
+PATCHES=(
+ # Needed for now until something is figured out either at lxml
+ # upstream or libxml2?
+ # See https://github.com/facelessuser/soupsieve/issues/220
+ "${FILESDIR}"/${PN}-2.2.1-lxml-libxml2-tests.patch
+)
+
distutils_enable_tests pytest
diff --git a/dev-python/tappy/metadata.xml b/dev-python/tappy/metadata.xml
index c4ae7ab5a2be..208f74833a56 100644
--- a/dev-python/tappy/metadata.xml
+++ b/dev-python/tappy/metadata.xml
@@ -7,10 +7,6 @@
<upstream>
<remote-id type="pypi">tap.py</remote-id>
</upstream>
- <use>
- <flag name="yaml">Pull dependencies needed to support YAML
- blocks associated with test results.</flag>
- </use>
<origin>gentoo-staging</origin>
<stabilize-allarches/>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/tappy/tappy-3.0.ebuild b/dev-python/tappy/tappy-3.0.ebuild
index 18c047b28107..13fa97923145 100644
--- a/dev-python/tappy/tappy-3.0.ebuild
+++ b/dev-python/tappy/tappy-3.0.ebuild
@@ -3,9 +3,8 @@
EAPI=7
-DISTUTILS_USE_SETUPTOOLS=rdepend
PYTHON_COMPAT=( python3_{6,7,8,9,10} )
-inherit distutils-r1
+inherit distutils-r1 optfeature
MY_PN=tap.py
DESCRIPTION="Test Anything Protocol (TAP) tools"
@@ -16,13 +15,7 @@ S=${WORKDIR}/${MY_PN}-${PV}
LICENSE="BSD-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="yaml"
-RDEPEND="
- yaml? (
- dev-python/more-itertools[${PYTHON_USEDEP}]
- dev-python/pyyaml[${PYTHON_USEDEP}]
- )"
BDEPEND="
dev-python/Babel[${PYTHON_USEDEP}]
test? (
@@ -31,3 +24,9 @@ BDEPEND="
)"
distutils_enable_tests unittest
+distutils_enable_sphinx docs
+
+pkg_postinst() {
+ optfeature "YAML blocks associated with test results" \
+ "dev-python/more-itertools dev-python/pyyaml"
+}
diff --git a/dev-python/tzlocal/Manifest b/dev-python/tzlocal/Manifest
index 76bd08e23875..bcfedd9b083d 100644
--- a/dev-python/tzlocal/Manifest
+++ b/dev-python/tzlocal/Manifest
@@ -3,3 +3,4 @@ DIST tzlocal-3.0.gh.tar.gz 18924 BLAKE2B 340739015ce0fae245ddcb2d3f6250886261a81
DIST tzlocal-4.0.1.gh.tar.gz 22737 BLAKE2B 0b84ab7ac80397d2d72e0627d3766e1f6a6402c3d0505f0ff0fc02fc524b372a92e0fe948f1f8ec59b0ccfae64f8240bddc8800fe988627a87aec5b8937a6df9 SHA512 0e83e9cba7d74690677d32087a82a54bf1f80dde121d6eed80ca0a80851832ef197cfab07728353619904706b989bbb4c9ca1736e7e1e6c710ad4ec93f74ac22
DIST tzlocal-4.0.2.gh.tar.gz 22978 BLAKE2B 4c1d7ed518ed6984f2dd055ab4bdeeb9acee1c2fae14160ab8752adae8cc16969ec822d0b20d2b77d40d6b52a929f44d83b2537dffbd3b7db6c016145b870ec0 SHA512 4624bfda1e712bf898a4d3a8e4be20082689caf533bc340f0dede068323a4848328e7c4a2bb0d63e4ed59258ef5f21654d47135419360f73d0bdb7c38aee2906
DIST tzlocal-4.0.gh.tar.gz 22582 BLAKE2B 35ef0b9f64e0b2758ecda19669957666ffcd807197cfef74583d94a3e2ca01811e55b27228522723dec140dd4ede69e30585d850f03f55db084d975e871d2f63 SHA512 8bb31f3d85256aaab2a803c34ea35677a25ae2bf339d54a1fb4466d035631d9f22ea465448d7905d607a17c6b1180cbc619ce06b39c3ebe724270bc048bd96ed
+DIST tzlocal-4.1.gh.tar.gz 23449 BLAKE2B 1ed3518395674af5b8066825f6a9f1dde411aa0bb534e65e9da44399042bb25ca45b61650bd7ce81d4912c3d5e1fde132d002d189fe388cd6bd4b7ed6d05bb79 SHA512 f6518c95b1e0ac0424a9f51f8ae0d39a50cacb510c8358a4fab077059e57959dd7b83d82ba455e9f7cca9bfc9224662f979d391a09d5516d172f1d6d3292779a
diff --git a/dev-python/tzlocal/tzlocal-4.1.ebuild b/dev-python/tzlocal/tzlocal-4.1.ebuild
new file mode 100644
index 000000000000..d01efb839e87
--- /dev/null
+++ b/dev-python/tzlocal/tzlocal-4.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_{6,7,8,9,10} )
+inherit distutils-r1
+
+DESCRIPTION="tzinfo object for the local timezone"
+HOMEPAGE="https://github.com/regebro/tzlocal"
+SRC_URI="https://github.com/regebro/tzlocal/archive/${PV}.tar.gz -> ${P}.gh.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ dev-python/pytz_deprecation_shim[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/backports-zoneinfo[${PYTHON_USEDEP}]
+ ' python3_8 pypy3)"
+BDEPEND="
+ test? (
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )"
+
+distutils_enable_tests pytest
diff --git a/dev-python/uvicorn/files/uvicorn-0.13.4-fix-wsproto-1.0.patch b/dev-python/uvicorn/files/uvicorn-0.13.4-fix-wsproto-1.0.patch
deleted file mode 100644
index da3038d6db40..000000000000
--- a/dev-python/uvicorn/files/uvicorn-0.13.4-fix-wsproto-1.0.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-https://github.com/encode/uvicorn/pull/892
-
-diff --git a/tests/protocols/test_http.py b/tests/protocols/test_http.py
-index f35a965d..25110fc6 100644
---- a/tests/protocols/test_http.py
-+++ b/tests/protocols/test_http.py
-@@ -67,6 +67,7 @@
- b"Host: example.org",
- b"Connection: upgrade",
- b"Upgrade: websocket",
-+ b"Sec-WebSocket-Version: 11",
- b"",
- b"",
- ]
-diff --git a/tests/protocols/test_websocket.py b/tests/protocols/test_websocket.py
-index 24bc285f..7c3fcc08 100644
---- a/tests/protocols/test_websocket.py
-+++ b/tests/protocols/test_websocket.py
-@@ -51,7 +51,11 @@ def app(scope):
- async with httpx.AsyncClient() as client:
- response = await client.get(
- "http://127.0.0.1:8000",
-- headers={"upgrade": "websocket", "connection": "upgrade"},
-+ headers={
-+ "upgrade": "websocket",
-+ "connection": "upgrade",
-+ "sec-webSocket-version": "11",
-+ },
- timeout=5,
- )
- if response.status_code == 426:
diff --git a/dev-python/whisper/Manifest b/dev-python/whisper/Manifest
index 72d9cb837988..1aa2566364bf 100644
--- a/dev-python/whisper/Manifest
+++ b/dev-python/whisper/Manifest
@@ -1 +1,2 @@
DIST whisper-1.1.7.tar.gz 38289 BLAKE2B 05c5ed972c6dbe8ecc29731d206a44e4db2605aa1270d0eba63c90390062f3cee81a6076a571e6b18cc54f8b1a0ffbc9800c91e9aa7cf3cab862d7e6bb8217c0 SHA512 2dc4f15a91b518495da120af4ad2af4b5f81d04fae6028ca1d7505046b93082a9294452a703c8de87dc89629c35dca0809c4ee7c0df1a7a6bd5ec527f3126df2
+DIST whisper-1.1.8.gh.tar.gz 39117 BLAKE2B 591a3529725f300c6d8bab40444bdd41bcfe3d832893e954295d5387e047e2a639db4235131cd90fdb686395d51afccf30f64a52e194e4cd8e00b86e38f841d6 SHA512 0452c684128a750e30e926aee0cfd6c94f129eeb561246f9e1c66d7cf1f27f139df84f91e935237f89d0b4fac98678108568cfb94c2ab4138480f4db31471ab4
diff --git a/dev-python/whisper/whisper-1.1.8.ebuild b/dev-python/whisper/whisper-1.1.8.ebuild
new file mode 100644
index 000000000000..2cece5ec2f02
--- /dev/null
+++ b/dev-python/whisper/whisper-1.1.8.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_{6,7,8,9,10} pypy3 )
+inherit distutils-r1
+
+DESCRIPTION="Fixed size round-robin style database"
+HOMEPAGE="https://github.com/graphite-project/whisper"
+# PyPI tarballs don't contain tests
+# https://github.com/graphite-project/whisper/pull/253
+SRC_URI="
+ https://github.com/graphite-project/${PN}/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+
+RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
+
+distutils_enable_tests --install pytest