diff options
| author | Crucible <crucible@localhost> | 2026-10-10 20:48:09 -0500 |
|---|---|---|
| committer | Crucible <crucible@localhost> | 2026-10-10 20:48:09 -0500 |
| commit | f118d22765d50ec3494331d5b5c45810304ea943 (patch) | |
| tree | 74a62409a22a6d022c492e5b57c531d27704d51f /dev-python/txredisapi/txredisapi-1.6.0.ebuild | |
| parent | 8d50579e39879dc6ba06d9fa6829f2e9a2c77420 (diff) | |
| download | srcux-f118d22765d50ec3494331d5b5c45810304ea943.tar.gz srcux-f118d22765d50ec3494331d5b5c45810304ea943.tar.xz srcux-f118d22765d50ec3494331d5b5c45810304ea943.zip | |
Publish srcux candidate 0000000623-20261010-204610
Diffstat (limited to 'dev-python/txredisapi/txredisapi-1.6.0.ebuild')
| -rw-r--r-- | dev-python/txredisapi/txredisapi-1.6.0.ebuild | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/dev-python/txredisapi/txredisapi-1.6.0.ebuild b/dev-python/txredisapi/txredisapi-1.6.0.ebuild new file mode 100644 index 000000000000..5cb7e3890f7c --- /dev/null +++ b/dev-python/txredisapi/txredisapi-1.6.0.ebuild @@ -0,0 +1,80 @@ +# Copyright 2023-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 optfeature pypi + +DESCRIPTION="Non-blocking redis client for python" +HOMEPAGE=" + https://github.com/IlyaSkriblovsky/txredisapi/ + https://pypi.org/project/txredisapi/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-python/six[${PYTHON_USEDEP}] + dev-python/twisted[${PYTHON_USEDEP},ssl(-)] +" +BDEPEND=" + test? ( + ${RDEPEND} + dev-db/redis + dev-python/hiredis[${PYTHON_USEDEP}] + dev-python/mock[${PYTHON_USEDEP}] + ) +" + +src_prepare() { + sed -i "/redis_sock =/s:/tmp:${T}:" tests/test_unix_connection.py || die + + distutils-r1_src_prepare +} + +python_test() { + # paralellized tests with -j parameter fail + "${EPYTHON}" -m twisted.trial tests || die "tests failed with ${EPYTHON}" +} + +src_test() { + local redis_pid="${T}"/redis.pid + local redis_port=6379 + + if has_version ">=dev-db/redis-7"; then + local extra_conf=" + enable-debug-command yes + enable-module-command yes + " + fi + + # 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 + unixsocket ${T}/redis.sock + unixsocketperm 700 + ${extra_conf} + EOF + + # Run the tests + distutils-r1_src_test + + # Clean up afterwards + kill "$(<"${redis_pid}")" || die +} + +pkg_postinst() { + optfeature "Use hiredis protocol parser" dev-python/hiredis +} |
