commit:     0ef34d0da54f3a316fa5400502ba9bad9a9dc4ed
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 17 05:51:18 2025 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Dec 17 06:16:45 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0ef34d0d

dev-python/fakeredis: Bump to 2.33.0

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-python/fakeredis/Manifest                |  2 +
 dev-python/fakeredis/fakeredis-2.33.0.ebuild | 98 ++++++++++++++++++++++++++++
 2 files changed, 100 insertions(+)

diff --git a/dev-python/fakeredis/Manifest b/dev-python/fakeredis/Manifest
index e821cde8ab4b..246b4fd8f7bd 100644
--- a/dev-python/fakeredis/Manifest
+++ b/dev-python/fakeredis/Manifest
@@ -1 +1,3 @@
 DIST fakeredis-2.32.1.tar.gz 171582 BLAKE2B 
bec107824e359750303aa8ef4530f0aa3dfbbca6f87ce8b574f0a8fe1f748e71f113964b8172bf2d3793377cb264bcf977a917488a7f8e01df3914cee47b871c
 SHA512 
cd04bf7c705b118c35e7b72cf2ed0fb8ed99f520ea6466e9676f07f640f2a6fa178ea9ba2fc401502c08d92c310673b6d5faabc5dcdba41e2c0ee3720d82435b
+DIST fakeredis-2.33.0.tar.gz 175187 BLAKE2B 
6f8e091275bfa20de5188d7a0cbe56b071546b78e37cd73c0e0ceada9b4f6e4b034a80465b542768b1362cf2cb72a1aef95a636d8265146019252208bdd43d54
 SHA512 
dcbdfa39b80ce616e95999cb7f1bf84e2b02498813758db9bfdee0168074b0f95478f321a41f35d6f5262e49f02764d9ca192ee0294c0182af070e2ac44a93e1
+DIST fakeredis-2.33.0.tar.gz.provenance 9622 BLAKE2B 
ac7f78bc90fd52370c62fdc2699f36a32eaba625313ce83ac344005ab420763af50db1fa126c46af633b54c13abcc397223b270e3ded9a273a6e10f1b0bf011c
 SHA512 
ef6d9bea6db499d3b1048de6aecef4cc3983e92f0d233a9eb1a06d8fe3adba231a8d404379fa1048b4914b5130dd36235419740cd2adc286b900a5870ece92c3

diff --git a/dev-python/fakeredis/fakeredis-2.33.0.ebuild 
b/dev-python/fakeredis/fakeredis-2.33.0.ebuild
new file mode 100644
index 000000000000..5a09a922bfa1
--- /dev/null
+++ b/dev-python/fakeredis/fakeredis-2.33.0.ebuild
@@ -0,0 +1,98 @@
+# Copyright 2020-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYPI_VERIFY_REPO=https://github.com/cunla/fakeredis-py
+PYTHON_COMPAT=( pypy3_11 python3_{11..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Fake implementation of redis API for testing purposes"
+HOMEPAGE="
+       https://github.com/cunla/fakeredis-py/
+       https://pypi.org/project/fakeredis/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+       >=dev-python/redis-4.3[${PYTHON_USEDEP}]
+       >=dev-python/sortedcontainers-2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+       test? (
+               dev-db/redis
+               dev-python/packaging[${PYTHON_USEDEP}]
+       )
+"
+
+EPYTEST_PLUGINS=( pytest-{asyncio,mock} )
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+       # TODO
+       
"test/test_mixins/test_pubsub_commands.py::test_pubsub_channels[StrictRedis2]"
+       
"test/test_mixins/test_pubsub_commands.py::test_pubsub_channels[StrictRedis3]"
+       
"test/test_mixins/test_pubsub_commands.py::test_published_message_to_shard_channel[StrictRedis3]"
+       test/test_mixins/test_set_commands.py::test_smismember_wrong_type
+       
"test/test_mixins/test_pubsub_commands.py::test_pubsub_shardnumsub[StrictRedis2]"
+       
"test/test_mixins/test_pubsub_commands.py::test_pubsub_shardnumsub[StrictRedis3]"
+       
"test/test_mixins/test_streams_commands.py::test_xgroup_setid_redis7[StrictRedis2]"
+       
"test/test_mixins/test_streams_commands.py::test_xgroup_setid_redis7[StrictRedis3]"
+       # json ext
+       test/test_json/test_json.py
+       test/test_json/test_json_arr_commands.py
+       # unknown command 'evalsha'
+       "test/test_asyncredis.py::test_async_lock[fake_resp2]"
+       "test/test_asyncredis.py::test_async_lock[fake_resp3]"
+       # incompatible with xdist, not worth extra effort
+       test/test_tcp_server/test_connectivity.py
+       # flaky
+       test/test_mixins/test_server_commands.py::test_bgsave
+)
+EPYTEST_IGNORE=(
+       # these tests fail a lot...
+       test/test_hypothesis
+       test/test_hypothesis_joint.py
+       # require valkey package
+       test/test_valkey
+)
+
+src_prepare() {
+       distutils-r1_src_prepare
+
+       # do not install duplicate license
+       sed -i -e '\@fakeredis/LICENSE@d' pyproject.toml || die
+}
+
+src_test() {
+       local redis_pid="${T}"/redis.pid
+       local redis_port=6390
+
+       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
+       EOF
+
+       # Run the tests
+       distutils-r1_src_test
+
+       # Clean up afterwards
+       kill "$(<"${redis_pid}")" || die
+}
+
+python_test() {
+       # we can run "fake" tests in parallel, but "real" seem to share
+       # the same connection
+       epytest -m "not real"
+       EPYTEST_XDIST= epytest -m "real"
+}

Reply via email to