Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/fakeredis/
Date: Thu, 26 May 2022 08:07:22
Message-Id: 1653552428.45e3e697f1e6c46f8b2e2ab6adf7dd025d44320f.mgorny@gentoo
1 commit: 45e3e697f1e6c46f8b2e2ab6adf7dd025d44320f
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Thu May 26 07:09:06 2022 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Thu May 26 08:07:08 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=45e3e697
7
8 dev-python/fakeredis: Bump to 1.7.6.1
9
10 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
11
12 dev-python/fakeredis/Manifest | 1 +
13 dev-python/fakeredis/fakeredis-1.7.6.1.ebuild | 93 +++++++++++++++++++++++++++
14 2 files changed, 94 insertions(+)
15
16 diff --git a/dev-python/fakeredis/Manifest b/dev-python/fakeredis/Manifest
17 index 606ba0422a70..7fcbc6919a70 100644
18 --- a/dev-python/fakeredis/Manifest
19 +++ b/dev-python/fakeredis/Manifest
20 @@ -1,3 +1,4 @@
21 DIST fakeredis-1.7.1.gh.tar.gz 71151 BLAKE2B 87877c94a4c03ad6ff4b55f307526f712daa860257374a97a8f7bd29440d171467e18e4041ca56bb6af30df30481a3d5b13c7d0657ba3eb7673a653664ffbe8a SHA512 f41d9393ae50bae9de064678948f4364fc47db06f489782e5b428f449828ad5813b08b2fb053bef878b2a1b500edbb0ea1881449dbd12c2b6e385f6a2fba4c59
22 DIST fakeredis-py-1.7.4.gh.tar.gz 73024 BLAKE2B d3d18611d846a0dabb52d74ca53cad997b37e794ef320bc800ab5339f70710bc30f9e33c0820db941064fbf9dca0dde3e72c78298895b8c2510a93353898b355 SHA512 71c9ffe7c208453bc8f5e719b3647a9b9fc5406c5fe3856ef1dc42c019bd7128355d260be468b62dcb764a918a3510f193fb1aaf374bb3866e352c9c2bae90c6
23 DIST fakeredis-py-1.7.5.gh.tar.gz 72932 BLAKE2B 3965df2d238e70f362e5e43a52fe763b2fec34ecc87d4bf38cb8fdf5e8f58b6bad87b59353a932d5e7e12ac243f3c884a19079752c48b6230795c53f7512d345 SHA512 bcefaa8e425cb47d7881c2f91d35e5ec5b46a94f3189b1ffbd71a92cd202a5fcc3d82df8250cf683475bacbbbec088f1e49545f71f2c98638adca58063cc0fa2
24 +DIST fakeredis-py-1.7.6.1.gh.tar.gz 100750 BLAKE2B aeaf9e38b173d169a8108c6559b3900ac3232690513a735f2592790bfd3866cefa5dff663672fb2fbeae96fd40c203d5a6d86c4ccc0336f54f5f68f7d0f3d38a SHA512 6a92ae7fa60ce7a6913e40b5c6b9bcbbb286f44f8602ff4bcbfb0739d8fd18d772291124a56d9dbff1fd0f69f0605a5a5f524161f8661b1529d9fe4f5f2481fd
25
26 diff --git a/dev-python/fakeredis/fakeredis-1.7.6.1.ebuild b/dev-python/fakeredis/fakeredis-1.7.6.1.ebuild
27 new file mode 100644
28 index 000000000000..7b846fe8e9e0
29 --- /dev/null
30 +++ b/dev-python/fakeredis/fakeredis-1.7.6.1.ebuild
31 @@ -0,0 +1,93 @@
32 +# Copyright 2020-2022 Gentoo Authors
33 +# Distributed under the terms of the GNU General Public License v2
34 +
35 +EAPI=8
36 +
37 +DISTUTILS_USE_PEP517=poetry
38 +PYTHON_COMPAT=( pypy3 python3_{9..10} )
39 +
40 +inherit distutils-r1 optfeature
41 +
42 +MY_P=fakeredis-py-${PV}
43 +DESCRIPTION="Fake implementation of redis API for testing purposes"
44 +HOMEPAGE="
45 + https://github.com/dsoftwareinc/fakeredis-py/
46 + https://pypi.org/project/fakeredis/
47 +"
48 +SRC_URI="
49 + https://github.com/dsoftwareinc/fakeredis-py/archive/v${PV}.tar.gz
50 + -> ${MY_P}.gh.tar.gz
51 +"
52 +S=${WORKDIR}/${MY_P}
53 +
54 +LICENSE="BSD"
55 +SLOT="0"
56 +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
57 +
58 +RDEPEND="
59 + dev-python/redis-py[${PYTHON_USEDEP}]
60 + >=dev-python/six-1.16.0[${PYTHON_USEDEP}]
61 + >=dev-python/sortedcontainers-2.4.0[${PYTHON_USEDEP}]
62 +"
63 +BDEPEND="
64 + test? (
65 + dev-db/redis
66 + dev-python/aioredis[${PYTHON_USEDEP}]
67 + dev-python/pytest-asyncio[${PYTHON_USEDEP}]
68 + dev-python/pytest-mock[${PYTHON_USEDEP}]
69 + )
70 +"
71 +
72 +distutils_enable_tests pytest
73 +
74 +src_prepare() {
75 + # unpin redis
76 + sed -i -e '/redis/s:<=[0-9.]*:*:' pyproject.toml || die
77 + distutils-r1_src_prepare
78 +}
79 +
80 +python_test() {
81 + local EPYTEST_DESELECT=(
82 + # also lupa
83 + test/test_aioredis2.py::test_failed_script_error
84 + # TODO
85 + "test/test_fakeredis.py::test_set_get_nx[StrictRedis]"
86 + "test/test_fakeredis.py::test_lpop_count[StrictRedis]"
87 + "test/test_fakeredis.py::test_rpop_count[StrictRedis]"
88 + "test/test_fakeredis.py::test_zadd_minus_zero[StrictRedis]"
89 + )
90 + local EPYTEST_IGNORE=(
91 + # these tests fail a lot...
92 + test/test_hypothesis.py
93 + )
94 + local args=(
95 + # tests requiring lupa (lua support)
96 + -k 'not test_eval and not test_lua and not test_script'
97 + )
98 + epytest "${args[@]}"
99 +}
100 +
101 +src_test() {
102 + local redis_pid="${T}"/redis.pid
103 + local redis_port=6379
104 + local redis_test_config="
105 + daemonize yes
106 + pidfile ${redis_pid}
107 + port ${redis_port}
108 + bind 127.0.0.1
109 + "
110 +
111 + einfo "Spawning Redis"
112 + einfo "NOTE: Port ${redis_port} must be free"
113 + "${EPREFIX}"/usr/sbin/redis-server - <<< "${redis_test_config}" || die
114 +
115 + # Run the tests
116 + distutils-r1_src_test
117 +
118 + # Clean up afterwards
119 + kill "$(<"${redis_pid}")" || die
120 +}
121 +
122 +pkg_postinst() {
123 + optfeature "Mock aioredis" dev-python/aioredis
124 +}