Release Notes
v2.26.1¶
π Bug Fixes¶
v2.26.0¶
π Features¶
π Bug Fixes¶
v2.25.1¶
π Bug Fixes¶
- Fix missing default values for version/server_type in
FakeBaseConnectionMixin
#334
v2.25.0¶
π Features¶
- Implement support for hash expiration related commands @j00bar #328
HEXPIRE
,HEXPIREAT
,HEXPIRETIME
,HPERSIST
,HPEXPIRE
,HPEXPIREAT
,HPEXPIRETIME
,HPTTL
,HTTL
,
- Implement support for
SORT_RO
#325,EXPIRETIME
#323, andPEXPIRETIME
#324 - Support for creating a tcp server listening to multiple clients
- Testing against valkey 8.0 #333
- Improve documentation #332
π Bug Fixes¶
- Replace
typing_extensions
dependency withtyping-extensions
#330
v2.24.1¶
π Bug Fixes¶
- Fix license file added to site-packages #320
v2.24.0¶
π Features¶
- Support for TIME SERIES commands (no support for align arguments on some commands) #310
π Bug Fixes¶
π§° Maintenance¶
- Update all dependencies, particularly pytest to v8
- Add tests against Dragonfly server #318
- Implement decocator
unsupported_server_types
to enable excluding tests from running against certain server types #318
v2.23.5¶
π Bug Fixes¶
- fix:issue with async connection and blocking operations writing responses twice to socket #316
v2.23.4¶
π Bug Fixes¶
- fix:move random seed to HeavyKeeper to avoid issues #315
π§° Maintenance¶
- Documented how to use fakeredis with FastAPI. @ sjjessop #292
- Using black for linting python code.
v2.23.3¶
π§° Maintenance¶
- docs: Full code for FastAPI integration (#312)
π Bug Fixes¶
- Fix ttl for empty stream #313
v2.23.2¶
π Bug Fixes¶
- Fix reading multiple streams with blocking #309
v2.23.1¶
π Bug Fixes¶
- Fix
XREAD
behavior whenCOUNT
is not provided butBLOCKING
is provided #308
v2.23.0¶
π Features¶
- Support for TDigest
commands:
TDIGEST.ADD
,TDIGEST.BYRANK
,TDIGEST.BYREVRANK
,TDIGEST.CDF
,TDIGEST.CREATE
,TDIGEST.INFO
,TDIGEST.MAX
,TDIGEST.MERGE
,TDIGEST.MIN
,TDIGEST.QUANTILE
,TDIGEST.RANK
,TDIGEST.RESET
,TDIGEST.REVRANK
,TDIGEST.TRIMMED_MEAN
.
π Bug Fixes¶
- Import
Self
from typing vs. typing_extension
π§° Maintenance¶
v2.22.0¶
π Features¶
- Support for setting LUA version from environment variable
FAKEREDIS_LUA_VERSION
#287 - Support for loading LUA binary modules in fakeredis #304
π Bug Fixes¶
- Fix the type hint for the version parameter in the async client #302
- Using LUA 5.1 like real redis #287
- fix: FakeRedisMixin.from_url() return type is really Self. @ben-xo #305
v2.21.3¶
π Bug Fixes¶
- Revert behavior of defaulting to share the same server data structure between connections @howamith #303
- Fix type hint for version #302
v2.21.2¶
Note: Since connection params are defaulted to be the same between async and sync connections, different FakeRedis connections with the same connection params (or without connection parameters) will share the same server data structure.
π Bug Fixes¶
- Connection params are defaulted to be the same between async and sync connections #297
xinfo_stream
raises exception when stream does not exist #296
v2.21.1¶
π Bug Fixes¶
- Support for float timeout values #289
π§° Maintenance¶
- Fix django cache documentation #286
v2.21.0¶
π Features¶
- Implement all TOP-K commands (
TOPK.INFO
,TOPK.LIST
,TOPK.RESERVE
,TOPK.ADD
,TOPK.COUNT
,TOPK.QUERY
,TOPK.INCRBY
) #278 - Implement all cuckoo filter commands #276
- Implement all Count-Min Sketch commands #277
π Bug Fixes¶
π§° Maintenance¶
- Support for redis-py 5.1.0b3
- Improve
@testtools.run_test_if_redispy_ver
- Refactor bloom filter commands implementation to use pyprobables instead of pybloom_live
v2.20.1¶
π Bug Fixes¶
- Fix
XREAD
bug #256
π§° Maintenance¶
- Testing for python 3.12
- Dependencies update
v2.20.0¶
π Features¶
v2.19.0¶
π Features¶
- Implement Bloom filters commands #239
π Bug Fixes¶
- Fix error on blocking XREADGROUP #237
v2.18.1¶
π Bug Fixes¶
- Fix stream type issue #233
π§° Maintenance¶
- Add mypy hints to everything
- Officially for redis-py 5.0.0, redis 7.2
v2.18.0¶
π Features¶
- Implement
PUBSUB NUMPAT
#195,SSUBSCRIBE
#199,SPUBLISH
#198,SUNSUBSCRIBE
#200,PUBSUB SHARDCHANNELS
#196,PUBSUB SHARDNUMSUB
#197
π Bug Fixes¶
- Fix All aio.FakeRedis instances share the same server #218
v2.17.0¶
π Features¶
π Bug Fixes¶
- Fix incorrect error msg for the group not found #210
- fix: use the same server_key within the pipeline when issued watch #213
- issue with ZRANGE and ZRANGESTORE with BYLEX #214
Contributors¶
We'd like to thank all the contributors who worked on this release!
v2.16.0¶
π Features¶
π Bug Fixes¶
- Add support for
version
for async FakeRedis #205
π§° Maintenance¶
- Updated how to test django_rq #204
v2.15.0¶
π Features¶
- Implemented support for various stream groups commands:
- Implemented sorted set commands:
- Implemented list commands:
BLMOVE
#182,
π§° Maintenance¶
- Improved documentation.
v2.14.2¶
π Bug Fixes¶
- Fix documentation link
v2.14.1¶
π Bug Fixes¶
- Fix requirement for packaging.Version #177
v2.14.0¶
π Features¶
- Implement
HRANDFIELD
#156 - Implement
JSON.MSET
π§° Maintenance¶
- Improve streams code
v2.13.0¶
π Bug Fixes¶
π§° Maintenance¶
- Improve test code
- Fix reported security issue
v2.12.1¶
π Bug Fixes¶
- Add support for
Connection.read_response
arguments used in redis-py 4.5.5 and 5.0.0 - Adding state for scan commands (#99)
π§° Maintenance¶
- Improved documentation (added async sample, etc.)
- Add redis-py 5.0.0b3 to GitHub workflow
v2.12.0¶
π Features¶
- Implement
XREAD
#147
v2.11.2¶
π Bug Fixes¶
- Unique FakeServer when no connection params are provided (#142)
v2.11.1¶
π§° Maintenance¶
- Minor fixes supporting multiple connections
- Update documentation
v2.11.0¶
π Features¶
- connection parameters awareness: Creating multiple clients with the same connection parameters will result in the same server data structure.
π Bug Fixes¶
- Fix creating fakeredis.aioredis using url with user/password (#139)
v2.10.3¶
π§° Maintenance¶
- Support for redis-py 5.0.0b1
- Include tests in sdist (#133)
π Bug Fixes¶
- Fix import used in GenericCommandsMixin.randomkey (#135)
v2.10.2¶
π Bug Fixes¶
- Fix async_timeout usage on py3.11 (#132)
v2.10.1¶
π Bug Fixes¶
- Enable testing django-cache using
FakeConnection
.
v2.10.0¶
π Features¶
- All geo commands implemented
v2.9.2¶
π Bug Fixes¶
- Fix bug for
xrange
v2.9.1¶
π Bug Fixes¶
- Fix bug for
xrevrange
v2.9.0¶
π Features¶
- Implement
XTRIM
- Add support for
MAXLEN
,MAXID
,LIMIT
arguments forXADD
command - Add support for
ZRANGE
arguments forZRANGE
command #127
π§° Maintenance¶
- Relax python version requirement #128
v2.8.0¶
π Features¶
- Support for redis-py 4.5.0 #125
π Bug Fixes¶
- Fix import error for redis-py v3+ #121
v2.7.1¶
π Bug Fixes¶
- Fix import error for NoneType #527
v2.7.0¶
π Features¶
- Implement
JSON.ARRINDEX
,JSON.OBJLEN
,JSON.OBJKEYS
,JSON.ARRPOP
,JSON.ARRTRIM
,JSON.NUMINCRBY
,JSON.NUMMULTBY
,XADD
,XLEN
,XRANGE
,XREVRANGE
π§° Maintenance¶
- Improve json commands implementation.
- Improve commands documentation.
v2.6.0¶
π Features¶
- Implement
JSON.TYPE
,JSON.ARRLEN
andJSON.ARRAPPEND
π Bug Fixes¶
- Fix encoding of None (#118)
π§° Maintenance¶
- Start skeleton for streams commands in
streams_mixin.py
andtest_streams_commands.py
- Start migrating documentation to https://fakeredis.readthedocs.io/
Full Changelog: https://github.com/cunla/fakeredis-py/compare/v2.5.0...v2.6.0
v2.5.0¶
π Features¶
- Implement support for
BITPOS
(bitmap command) (#112)
π Bug Fixes¶
π§° Maintenance¶
- Extract param handling (#113)
Contributors¶
We'd like to thank all the contributors who worked on this release!
Full Changelog: https://github.com/cunla/fakeredis-py/compare/v2.4.0...v2.5.0
v2.4.0¶
π Features¶
π Bug Fixes¶
- Fix a bug the checking type in scan_iter (#109)
Full Changelog: https://github.com/cunla/fakeredis-py/compare/v2.3.0...v2.4.0
v2.3.0¶
π Features¶
- Implement
GETEX
(#102) - Implement support for
JSON.STRAPPEND
(json command) (#98) - Implement
JSON.STRLEN
,JSON.TOGGLE
and fix bugs withJSON.DEL
(#96) - Implement
PUBSUB CHANNELS
,PUBSUB NUMSUB
π Bug Fixes¶
- ZADD with XX \& GT allows updates with lower scores (#105)
Full Changelog: https://github.com/cunla/fakeredis-py/compare/v2.2.0...v2.3.0
v2.2.0¶
π Features¶
- Implement
JSON.CLEAR
(#87) - Support for redis-py v4.4.0
π§° Maintenance¶
- Implement script to create issues for missing commands
- Remove checking for deprecated redis-py versions in tests
Full Changelog: https://github.com/cunla/fakeredis-py/compare/v2.1.0...v2.2.0
v2.1.0¶
π Features¶
π Bug Fixes¶
- fix: add nowait for asyncio disconnect (#76)
π§° Maintenance¶
Contributors¶
We'd like to thank all the contributors who worked on this release!
@hyeongguen-song, @the-wondersmith
Full Changelog: https://github.com/cunla/fakeredis-py/compare/v2.0.0...v2.1.0
v2.0.0¶
π Breaking changes¶
- Remove support for aioredis separate from redis-py (redis-py versions 4.1.2 and below). (#65)
π Features¶
π§° Maintenance¶
- Separate commands to mixins (#71)
- Use release-drafter
- Update GitHub workflows
Full Changelog: https://github.com/cunla/fakeredis-py/compare/v1.10.1...v2.0.0
v1.10.1¶
What's Changed¶
- Implement support for
zmscore
by @the-wondersmith in #67
New Contributors¶
- @the-wondersmith made their first contribution in #67
Full Changelog: https://github.com/cunla/fakeredis-py/compare/v1.10.0...v1.10.1
v1.10.0¶
What's Changed¶
- implement
GETDEL
andSINTERCARD
support in #57 - Test get float-type behavior in #59
- Implement
BZPOPMIN
/BZPOPMAX
support in #60
Full Changelog: https://github.com/cunla/fakeredis-py/compare/v1.9.4...v1.10.0
v1.9.4¶
What's Changed¶
- Separate LUA support to a different file in #55 Full Changelog: https://github.com/cunla/fakeredis-py/compare/v1.9.3...v1.9.4
v1.9.3¶
Changed¶
- Removed python-six dependency
Full Changelog: https://github.com/cunla/fakeredis-py/compare/v1.9.2...v1.9.3
v1.9.2¶
What's Changed¶
Full Changelog: https://github.com/cunla/fakeredis-py/compare/v1.9.1...v1.9.2
v1.9.1¶
What's Changed¶
Full Changelog: https://github.com/cunla/fakeredis-py/compare/v1.9.0...v1.9.1
v1.9.0¶
What's Changed¶
- Enable redis7 support in #42
Full Changelog: https://github.com/cunla/fakeredis-py/compare/v1.8.2...v1.9.0
v1.8.2¶
What's Changed¶
- Update the
publish
GitHub action to create an issue on failure by @terencehonles in #33 - Add
release draft
job in #37 - Fix input and output type of cursors for SCAN commands by @tohin in #40
- Fix passing params in argsβFix #36 in #41
New Contributors¶
Full Changelog: https://github.com/dsoftwareinc/fakeredis-py/compare/v1.8.1...v1.8.2
v1.8.1¶
What's Changed¶
- fix: allow redis 4.3.* by @terencehonles in #30
New Contributors¶
- @terencehonles made their first contribution in #30
Full Changelog: https://github.com/dsoftwareinc/fakeredis-py/compare/v1.8...v1.8.1
v1.8¶
What's Changed¶
- Fix handling url with username and password in #27
- Refactor tests in #28
- 23 - Re-add dependencies lost during switch to poetry by @xkortex in #26
Full Changelog: https://github.com/dsoftwareinc/fakeredis-py/compare/v1.7.6.1...v1.8
v1.7.6¶
Added¶
Removed¶
What's Changed¶
- fix: work with
redis.asyncio
by @zhongkechen in #10 - Migrate to poetry in #12
- Create annotation for redis4+ tests in #14
- Make aioredis and lupa optional dependencies in #16
- Remove aioredis requirement if redis-py 4.2+ by @ikornaselur in #19
New Contributors¶
- @nzw0301 made their first contribution in #8
- @zhongkechen made their first contribution in #10
- @BGroever made their first contribution in #11
- @ikornaselur made their first contribution in #19
- @OlegZv made their first contribution in #20
Full Changelog: https://github.com/dsoftwareinc/fakeredis-py/compare/v1.7.5...v1.7.6
Thanks to our sponsors this month¶
v1.7.5¶
What's Changed¶
- Fix python3.8 redis4.2+ issue in #6
Full Changelog: https://github.com/dsoftwareinc/fakeredis-py/compare/v1.7.4...v1.7.5
v1.7.4¶
What's Changed¶
Full Changelog: https://github.com/dsoftwareinc/fakeredis-py/compare/1.7.1...v1.7.4