summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/pyrate-limiter/Manifest1
-rw-r--r--dev-python/pyrate-limiter/metadata.xml17
-rw-r--r--dev-python/pyrate-limiter/pyrate-limiter-2.8.2.ebuild48
3 files changed, 66 insertions, 0 deletions
diff --git a/dev-python/pyrate-limiter/Manifest b/dev-python/pyrate-limiter/Manifest
new file mode 100644
index 000000000000..d4c433f1a851
--- /dev/null
+++ b/dev-python/pyrate-limiter/Manifest
@@ -0,0 +1 @@
+DIST pyrate-limiter-2.8.2.gh.tar.gz 51233 BLAKE2B a9a8bbf123596c7c64f60ae2c9d4e23a394dae6d18a8d09c0ec0b289bbbfce9dacee523726b906a30cf17fd7243b3fa1d1f2dc60af1bec67dc242d944535a5fd SHA512 3ff703347a86f6a91cf6b9c8edce3017cf88f2373961ba235c2f521d0112b0116951be7314b95d737ef0bec5cb6bae9908874fafe4060eb773cf0577e2ddbdb3
diff --git a/dev-python/pyrate-limiter/metadata.xml b/dev-python/pyrate-limiter/metadata.xml
new file mode 100644
index 000000000000..90ba4d1a797a
--- /dev/null
+++ b/dev-python/pyrate-limiter/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>andrewammerlaan@gentoo.org</email>
+ <name>Andrew Ammerlaan</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ <name>Python</name>
+ </maintainer>
+ <stabilize-allarches/>
+ <upstream>
+ <remote-id type="pypi">pyrate-limiter</remote-id>
+ <remote-id type="github">vutran1710/PyrateLimiter</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-python/pyrate-limiter/pyrate-limiter-2.8.2.ebuild b/dev-python/pyrate-limiter/pyrate-limiter-2.8.2.ebuild
new file mode 100644
index 000000000000..f04b57aebe33
--- /dev/null
+++ b/dev-python/pyrate-limiter/pyrate-limiter-2.8.2.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python Rate-Limiter using Leaky-Bucket Algorimth Family"
+HOMEPAGE="https://github.com/vutran1710/PyrateLimiter"
+SRC_URI="https://github.com/vutran1710/PyrateLimiter/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
+S="${WORKDIR}/PyrateLimiter-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ dev-python/filelock[${PYTHON_USEDEP}]
+ dev-python/redis-py[${PYTHON_USEDEP}]
+"
+
+BDEPEND="test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/django[${PYTHON_USEDEP}]
+ dev-python/django-redis[${PYTHON_USEDEP}]
+ dev-python/fakeredis[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+)"
+
+EPYTEST_DESELECT=(
+ # Optional dependency redis-py-cluster not packaged
+ "tests/test_02.py::test_redis_cluster"
+ # Python 3.11 is slightly faster, leading to a non-critical failure here
+ "tests/test_concurrency.py::test_concurrency[ProcessPoolExecutor-SQLiteBucket]"
+)
+
+# TODO: package sphinx-copybutton
+# distutils_enable_sphinx docs \
+# dev-python/sphinx-autodoc-typehints \
+# dev-python/furo \
+# dev-python/myst_parser \
+# dev-python/sphinxcontrib-apidoc
+distutils_enable_tests pytest