diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2026-05-07 07:10:39 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2026-05-07 07:10:39 +0000 |
| commit | 6dd565aea2fc1e47796bb22fc2ec929c74dfa246 (patch) | |
| tree | 97379541729a9e467025bf3266d6b70a207c35ae /dev-python/txredisapi/txredisapi-1.4.12.ebuild | |
| parent | 6c2c44c149dc52d1f72e760c171f73fa33c4ee45 (diff) | |
| download | srcux-6dd565aea2fc1e47796bb22fc2ec929c74dfa246.tar.gz srcux-6dd565aea2fc1e47796bb22fc2ec929c74dfa246.tar.xz srcux-6dd565aea2fc1e47796bb22fc2ec929c74dfa246.zip | |
Adding metadata
Diffstat (limited to 'dev-python/txredisapi/txredisapi-1.4.12.ebuild')
| -rw-r--r-- | dev-python/txredisapi/txredisapi-1.4.12.ebuild | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/dev-python/txredisapi/txredisapi-1.4.12.ebuild b/dev-python/txredisapi/txredisapi-1.4.12.ebuild new file mode 100644 index 000000000000..188a269c7e29 --- /dev/null +++ b/dev-python/txredisapi/txredisapi-1.4.12.ebuild @@ -0,0 +1,85 @@ +# 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_{10..14} ) +inherit distutils-r1 optfeature + +DESCRIPTION="Non-blocking redis client for python" +HOMEPAGE=" + https://github.com/IlyaSkriblovsky/txredisapi/ + https://pypi.org/project/txredisapi/ +" +# Github is used because PyPI archive does not contain tests, +# see https://github.com/IlyaSkriblovsky/txredisapi/issues/149 +SRC_URI=" + https://github.com/IlyaSkriblovsky/${PN}/archive/refs/tags/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +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 +} |
