summaryrefslogtreecommitdiff
path: root/dev-python/pyrate-limiter
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-01-03 13:56:25 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-01-03 13:56:25 +0000
commit94b475013eb88e152032d5f8c684a7d9ce91e319 (patch)
tree09d40138872fbeea80b96af571a1da4de80bcf73 /dev-python/pyrate-limiter
parent8d3527b916ca7e0a2c8d9b8d064253a2eda02c1f (diff)
gentoo auto-resync : 03:01:2024 - 13:56:25
Diffstat (limited to 'dev-python/pyrate-limiter')
-rw-r--r--dev-python/pyrate-limiter/Manifest2
-rw-r--r--dev-python/pyrate-limiter/pyrate-limiter-3.1.1.ebuild71
2 files changed, 73 insertions, 0 deletions
diff --git a/dev-python/pyrate-limiter/Manifest b/dev-python/pyrate-limiter/Manifest
index b56d89e535bb..e27a66509de7 100644
--- a/dev-python/pyrate-limiter/Manifest
+++ b/dev-python/pyrate-limiter/Manifest
@@ -1,5 +1,7 @@
DIST pyrate-limiter-2.10.0.gh.tar.gz 71838 BLAKE2B 3b8fd16684268870991c3a731c5497802c6f7be51e57bc983a14a7484fad2d0983613304fa061fdb70a3e6645d17fe37fbd68e9ddeca57bc7bd97fef4a5d8585 SHA512 b0090b2d80d40ba2f86ac7b5c5612a35fa885b52a87d783aa9726782275e79ca8d54a9a44b1f0dd43c98bf2355f4c17e1686d7c7f806934ea492b67f66b06ffe
DIST pyrate_limiter-3.1.0.tar.gz 276659 BLAKE2B 2858b2cbb4805f139ae1a26171e6a1c235eb2d8eb93380f10ed27db16e2983b01b83e7d72d4bf5b44b69710569687e86c1194ea3e1a5ff8750e5966faf5a5b6e SHA512 601b70a380965fc108ec110842170ea73065af38a809c8d103d5061948058590c6a228327ed425e1c69ef30d2c832cb8a61508d326eb3bcd6cbb2df813fa987e
+DIST pyrate_limiter-3.1.1.tar.gz 276906 BLAKE2B 874e6407341d970f360dd8c800ff6910ebf2d3524e5b18cc56189d6cc9c0cb66e6d20287d9581c0ac4c935a2c719633cd72a56ada583c67d7659beefa8c006ce SHA512 f0c94af5ca4aa3c5bef1831b0dd188a67fe0c1ae076277f698880f2867ea81f80e702701185d49e204a2bb1b4b998850f18277cd8e19e759e3974ea573d4eca5
EBUILD pyrate-limiter-2.10.0.ebuild 1616 BLAKE2B d349d41a6c4f25164f1fa1f86f990ffb61e69e97e4b23e7ec9e2800cc17f10afaa7904f325956a2cb9443be14bcb563da94c8733b54d1ce9e7b0011a4fe29fa1 SHA512 76d89db635828ed2ff88c46f090b0ba41d364b20787df37c4b162da8071558440124dfabd3f2a9b06bcc0540f28d974d234e65333fa095860e2bd00f9ba0cd1a
EBUILD pyrate-limiter-3.1.0.ebuild 1616 BLAKE2B fb0dff4190bb7ad074839d572629e462ac6ed0c14ce3639e622c79db169b17ff4143208f424d9ae7991dd12e1ba381132436b9a957d9706ed973fb8db55f89e8 SHA512 37da1d33d820edb4d992432f368b77cd9fa6090a7ac08c3d76bd2e7823ea19bd95d276030fc2a3b3a6b56777a436a6b61b30ef04721b0880f222d3d5b94ea3f2
+EBUILD pyrate-limiter-3.1.1.ebuild 1698 BLAKE2B 5638265799b3446a0c003a7656744a69080e99fb086cb4e120356bfee54ff3c98f03ceca0ecc2d1b9acf131a03b47ee0eefeb7bcc567a9eacd5c0ffd3bb03edc SHA512 985e9ec78eb3f1505698f83ca64de3ea60ea4efd80a278446d5bc9393729cde9f917114cb259b6dc8cd9c96a2561abd34245de8307778cd89190e1b739113de2
MISC metadata.xml 525 BLAKE2B 8daa0c59b247c8ec215a3868315f383614b24bf36a80950f3a94968856a27ee2eb90cedba36784355926c509a26b530f3de44be729beeee0f22595cc0b9467b5 SHA512 429e23f33cd2889a7e989333a03ee374cbec2e264d354bf1c299263f2c9167059eb17f1c975b67cd4af7011843c3478d5296033666566bca97749ca85dfcab44
diff --git a/dev-python/pyrate-limiter/pyrate-limiter-3.1.1.ebuild b/dev-python/pyrate-limiter/pyrate-limiter-3.1.1.ebuild
new file mode 100644
index 000000000000..36c4f841a191
--- /dev/null
+++ b/dev-python/pyrate-limiter/pyrate-limiter-3.1.1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{10..11} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python Rate-Limiter using Leaky-Bucket Algorimth Family"
+HOMEPAGE="
+ https://github.com/vutran1710/PyrateLimiter/
+ https://pypi.org/project/pyrate-limiter/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/filelock[${PYTHON_USEDEP}]
+ dev-python/redis[${PYTHON_USEDEP}]
+"
+
+BDEPEND="
+ test? (
+ dev-db/redis
+ dev-python/pytest-asyncio[${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]"
+ "tests/test_limiter.py::test_limiter_01[clock0-create_sqlite_bucket-False-None]"
+)
+EPYTEST_XDIST=1
+
+# 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
+
+src_test() {
+ local redis_pid="${T}"/redis.pid
+ local redis_port=6379
+
+ # Spawn Redis itself for testing purposes
+ einfo "Spawning Redis"
+ einfo "NOTE: Port ${redis_port} must be free"
+ "${EPREFIX}"/usr/sbin/redis-server - <<- EOF || die "Unable to start redis server"
+ daemonize yes
+ pidfile ${redis_pid}
+ port ${redis_port}
+ bind 127.0.0.1 ::1
+ ${extra_conf}
+ EOF
+
+ # Run the tests
+ distutils-r1_src_test
+
+ # Clean up afterwards
+ kill "$(<"${redis_pid}")" || die
+}