Releases: redis/redis-py
5.1.0b5
Changes
π§ͺ Experimental Features
- Client side caching improvements: typing, better test coverage, bug fixes (#3216)
π Bug Fixes
- Make it possible to customize SSL ciphers (#3214)
- Make
message
in LockError optional to support backwards compatibility (#3176)
π§° Maintenance
- Adding a twine check prior to package release (#3198)
- Update black version to 24.3.0 (#3193)
- Avoid workflows canceling each other out (#3183)
- Documentation update (asyncio_examples.ipynb) (#3125)
- Optimizing cluster initialization changing the checks for cluster-enabled flag (#3158)
- Bump release-drafter/release-drafter from 5 to 6 (#3171)
- Bump rojopolis/spellcheck-github-actions from 0.35.0 to 0.36.0 (#3172)
- Remove redundant async-timeout dependency from modern Python (#3177)
Contributors
We'd like to thank all the contributors who worked on this release!
@AYMENJD, @AniketP04, @BackflipPenguin, @ING-XIAOJIAN, @MrDenkoV, @Pedram-Parsian, @TheBlusky, @Zaczero, @ahmedabdou14, @akx, @chayim, @d184230, @danielzhangau, @dmkulazhenko, @dvora-h, @enjoy-binbin, @gerzse, @hongqn, @jakob-keller, @kristjanvalur, @matrey, @mattwang44, @parmenashp, @poiuj, @r0ro, @sjpotter, @tbbream, @trkwyk, @w-miller, @wKollendorf, @willianmrs, @zakaf, @zware and @zxjlm
5.0.4
5.0.3
5.1.0b4
Changes
How to try Client-Side Caching
- Install redis-py 5.1.0b4
- Use the following code example to get started:
import redis
# enable csc
r = redis.Redis(
"localhost", 6379, protocol=3,
cache_enabled=True, cache_ttl=100, cache_max_size=1000,
# cache_blacklist=["GET", "LLEN"] # if needed, you can exclude certain commands from caching
)
r.set("foo", "bar")
r.get("foo")
r.get("foo") # this will be fetched from cache
# manually invalidate key in cache
r.invalidate_key_from_cache("foo")
# or flush the entire cache
r.flush_cache()
π New Features
π Bug Fixes
- Client side caching causes unexpected disconnections (#3160) (#3165)
- Fix retry logic for pubsub and pipeline (#3134)
- Ignore TypeError on disconnect (within multiprocess) (#3149)
- Release already acquired connections on ClusterPipeline, when get_connection raises an exception (#3133)
π§° Maintenance
- Fix incorrect asserts in test and ensure connections are closed (#3004)
- Remove typing-extensions from dependencies (#3146)
- Revert stale issue version update (#3142)
- Docs: Add timeout parameter for get_message example (#3129)
- Bump codecov/codecov-action from 3 to 4 (#3131)
- Bump actions/stale from 3 to 9 (#3132)
- Fix grammar in BlockingConnectionPool class documentation (#3120)
Contributors
We'd like to thank all the contributors who worked on this release!
@AYMENJD, @AniketP04, @BackflipPenguin, @ING-XIAOJIAN, @MrDenkoV, @Pedram-Parsian, @TheBlusky, @ahmedabdou14, @akx, @chayim, @d184230, @danielzhangau, @dependabot, @dependabot[bot], @dmkulazhenko, @dvora-h, @enjoy-binbin, @hongqn, @jakob-keller, @kristjanvalur, @mattwang44, @parmenashp, @poiuj, @r0ro, @sjpotter, @tbbream, @trkwyk, @w-miller, @wKollendorf, @zakaf, @zware and @zxjlm
5.0.2
Changes
π New Features
- Allow to control the minimum SSL version (#3127)
- Add modules support to async RedisCluster (#3115)
- Adding lock_name to LockError (#3023)
- Add GEOSHAPE field type for index creation of RediSearch (#2957)
π Bug Fixes
- Fix retry logic for pubsub and pipeline (#3134)
- Ignore TypeError on disconnect (within multiprocess) (#3149)
- Release already acquired connections on ClusterPipeline, when get_connection raises an exception (#3133)
- Fix possible pipeline connections leak (#3104)
- Return a copy of the response from cache (#3106)
- Fix:
HSET
unexpectedly mutates the list passed to items (#3103) - Fix
acl_genpass
with bits (#3062) - Allow the parsing of the asking command to forward original options (#3012)
- Fix parsing of
FT.PROFILE
result (#3063) - Use
disable_decoding
in asyncread_response
with hiredis parser. (#3042) - Fix return types in json commands (#3071)
- Fix Specifying Target Nodes broken hyperlink (#3072)
π§° Maintenance
- Fix incorrect asserts in test and ensure connections are closed (#3004)
- Revert stale issue version update (#3142)
- Docs: Add timeout parameter for get_message example (#3129)
- Bump codecov/codecov-action from 3 to 4 (#3131)
- Bump actions/stale from 3 to 9 (#3132)
- Fix grammer in BlockingConnectionPool class documentation (#3120)
- Updating async-timeout to 4.0.3 (#3109)
- Fix type hint of arbitrary argument lists (#2908)
- Fix
JSON.OBJLEN
type hint (#2966) - Fix
HDEL
type hint (#3029) - Docs: organize cluster mode part of lua scripting (#3073)
- Update reported version deprecation in asyncio.client (#2968)
- Make the connection callback methods public again, add documentation (#2980)
- Update repr of important classes with module name and recommended "< β¦ (#3001)
- Typo in advanced features documentation (#3019)
- Fix typos in documentation (#3016
- Add "sum" to DUPLICATE_POLICY documentation of TS.CREATE, TS.ADD and TS.ALTER (#3027)
- Fixed typo in ocsp.py (#3022)
- Creating CODEOWNERS for documentation (#2993)
Contributors
We'd like to thank all the contributors who worked on this release!
@AYMENJD, @AniketP04, @BackflipPenguin, @ING-XIAOJIAN, @MrDenkoV, @Pedram-Parsian, @TheBlusky, @ahmedabdou14, @akx, @chayim, @d184230, @danielzhangau, @dependabot, @dependabot[bot], @dmkulazhenko, @dvora-h, @enjoy-binbin, @hongqn, @jakob-keller, @kristjanvalur, @mattwang44, @parmenashp, @poiuj, @r0ro, @sjpotter, @tbbream, @trkwyk, @w-miller, @wKollendorf, @zakaf, @zware and @zxjlm
5.1.0b3
Changes
π§ͺ Experimental Features
- Expose delete functions, rename attributes, add AbstractCache class (#3110)
- Support client side caching with RedisCluster (#3102)
π New Features
- Adding lock_name to LockError (#3023)
π Bug Fixes
- Fix possible pipeline connections leak (#3104)
- Return a copy of the response from cache (#3106)
- Fix:
HSET
unexpectedly mutates the list passed to items (#3103)
π§° Maintenance
- Updating async-timeout to 4.0.3 (#3109)
- Fix type hint of arbitrary argument lists (#2908)
- Fix
JSON.OBJLEN
type hint (#2966) - Fix
HDEL
type hint (#3029) - Docs: organize cluster mode part of lua scripting (#3073)
Contributors
We'd like to thank all the contributors who worked on this release!
@AYMENJD, @AniketP04, @BackflipPenguin, @ING-XIAOJIAN, @MrDenkoV, @Pedram-Parsian, @TheBlusky, @akx, @chayim, @d184230, @danielzhangau, @dependabot, @dependabot[bot], @dmkulazhenko, @dvora-h, @enjoy-binbin, @jakob-keller, @kristjanvalur, @mattwang44, @parmenashp, @r0ro, @sjpotter, @tbbream, @trkwyk, @zware and @zxjlm
5.1.0b2
5.1.0b1
Changes
π₯ Breaking Changes
- Removing Python 3.7 compatibility (#2928)
- Update repr of important classes with module name and recommended "< β¦ (#3001)
- Prevent async ClusterPipeline instances from becoming "false-y" in ca⦠(#3068)
π§ͺ Experimental Features
- Client side caching invalidations (standalone) (#3089)
π Bug Fixes
- Fix
acl_genpass
with bits (#3062) - Allow the parsing of the asking command to forward original options (#3012)
- Prevent async ClusterPipeline instances from becoming "false-y" in ca⦠(#3068)
- Fix parsing of
FT.PROFILE
result (#3063) - Use
disable_decoding
in asyncread_response
with hiredis parser. (#3042) - Fix return types in json commands (#3071)
- Fix Specifying Target Nodes broken hyperlink (#3072)
π§° Maintenance
- Update reported version deprecation in asyncio.client (#2968)
- Make the connection callback methods public again, add documentation (#2980)
- Update repr of important classes with module name and recommended "< β¦ (#3001)
- Typo in advanced features documentation (#3019)
- Fix typos in documentation (#3016
- Add "sum" to DUPLICATE_POLICY documentation of TS.CREATE, TS.ADD and TS.ALTER (#3027)
- Fixed typo in ocsp.py (#3022)
- Creating CODEOWNERS for documentation (#2993)
Contributors
We'd like to thank all the contributors who worked on this release!
@AYMENJD, @AniketP04, @BackflipPenguin, @MrDenkoV, @Pedram-Parsian, @akx, @chayim, @d184230, @danielzhangau, @dependabot, @dependabot[bot], @dvora-h, @enjoy-binbin, @jakob-keller, @kristjanvalur, @parmenashp, @r0ro, @sjpotter, @tbbream and @zware
5.1.0a1
Changes
π§ͺ Experimental Features
- Client Side Caching (#3038)
π New Features
- Add GEOSHAPE field type for index creation of RediSearch (#2957)
π Bug Fixes
- Fix parsing resp3 dicts (#2982)
- Fix BlockingConnectionPool.from_url parsing of timeout in query args #2983 (#2984)
- Fix incorrect lock scope in BlockingConnectionPool (#2997)
- Fixing type hint on from_url (#2963)
π§° Maintenance
- Update client.py sleep_time typing for run_in_thread function (#2977)
- Better handling of "lost" connections for async Redis (#2999)
- Linking to Redis learning resources (#3006)
- Close various objects created during asyncio tests (#3005)
Contributors
We'd like to thank all the contributors who worked on this release!
@chayim, @d184230, @danielzhangau, @dependabot, @dependabot[bot], @dvora-h, @kristjanvalur, @r0ro and @sjpotter
5.0.1
Changes
π New Features
- Provide aclose() / close() for classes requiring lifetime management (#2898)
- Add support for
ModuleCommands
in cluster (#2951) - Add support for multiple values in
RPUSHX
(#2949) - Add
Redis.from_pool()
class method, for explicitly owning and closing a ConnectionPool (#2913)
π Bug Fixes
- Fixing monitor parsing for messages containing specific substrings (#2950)
- Cluster determine slot command name need to be upper (#2919)
- Support timeout = 0 in search query (#2934)
- Fix async sentinel: add
push_request
keyword argument toread_response
(#2922) - Fix protocol checking for search commands (#2923)
- Fix: SentinelManagedConnection.read_response() got an unexpected keyword argument 'push_request' (#2894)
- Fix: automatically close connection pool for async Sentinel (#2900)
- Save a reference to created async tasks, to avoid tasks potentially disappearing (#2816)
- Avoid reference cycling by the garbage collector during response reading (#2932)
π§° Maintenance
- Type hint improvements (#2952)
- Replace
clear_connect_callbacks
with_deregister_connect_callback
(#2955) - Async fixes, remove del and other things (#2870)
- Add pagination, sorting and grouping examples to search json example (#2890)
- Remove process-id checks from asyncio. Asyncio and fork() does not mix. (#2911)
- Fix resource usage and cleanup Mocks in the unit tests (#2936)
- Remove mentions of tox (#2929)
- Add 7.2 to supported Redis versions (#2896)
- Fix resource warnings in unit tests (#2899)
- Fix typo in redis-stream-example.ipynb (#2918)
- Deprecate RedisGraph (#2927)
- Fix redis 7.2.0 tests (#2902)
- Fix test_scorer (search) (#2920)
Contributors
We'd like to thank all the contributors who worked on this release!
@AOrazaev, @akx, @anio, @chayim, @dvora-h, @elfkuzco, @hauntsaninja, @kristjanvalur, @meiravgri, @uglide and @yangbodong22011