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" +}
