redis/redis-py (redis)
### [`v4.6.0`](https://togithub.com/redis/redis-py/releases/tag/v4.6.0): 4.6.0
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.5.5...v4.6.0)
### Changes
#### ๐งช Experimental Features
- Support `JSON.MERGE` command ([#2761](https://togithub.com/redis/redis-py/issues/2761))
- Support `JSON.MSET` command ([#2766](https://togithub.com/redis/redis-py/issues/2766))
#### ๐ New Features
- Extract abstract async connection class ([#2734](https://togithub.com/redis/redis-py/issues/2734))
- Add support for `WAITAOF` ([#2760](https://togithub.com/redis/redis-py/issues/2760))
- Introduce OutOfMemoryError exception for Redis write command rejections due to OOM errors ([#2778](https://togithub.com/redis/redis-py/issues/2778))
- Add `WITHSCORE` argument to `ZRANK` ([#2758](https://togithub.com/redis/redis-py/issues/2758))
#### ๐ Bug Fixes
- Fix dead weakref in sentinel connection causing ReferenceError ([#2767](https://togithub.com/redis/redis-py/issues/2767)) ([#2771](https://togithub.com/redis/redis-py/issues/2771))
- Fix Key Error in parse_xinfo_stream ([#2788](https://togithub.com/redis/redis-py/issues/2788))
- Remove unnecessary \__del\_\_ handlers ([#2755](https://togithub.com/redis/redis-py/issues/2755))
- Added support for missing argument to SentinelManagedConnection.read_response() ([#2756](https://togithub.com/redis/redis-py/issues/2756))
#### ๐งฐ Maintenance
- Fix type hint for retry_on_error in async cluster ([#2804](https://togithub.com/redis/redis-py/issues/2804))
- Clean up documents and fix some redirects ([#2801](https://togithub.com/redis/redis-py/issues/2801))
- Add unit tests for the `connect` method of all Redis connection classes ([#2631](https://togithub.com/redis/redis-py/issues/2631))
- Docstring formatting fix ([#2796](https://togithub.com/redis/redis-py/issues/2796))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@Smit-Parmar](https://togithub.com/Smit-Parmar), [@TheKevJames](https://togithub.com/TheKevJames), [@aciddust](https://togithub.com/aciddust), [@bmacphee](https://togithub.com/bmacphee), [@bodevone](https://togithub.com/bodevone), [@dvora-h](https://togithub.com/dvora-h), [@kristjanvalur](https://togithub.com/kristjanvalur), [@shacharPash](https://togithub.com/shacharPash), [@shahar-lev](https://togithub.com/shahar-lev), [@vmihailenco](https://togithub.com/vmihailenco) and [@woutdenolf](https://togithub.com/woutdenolf)
### [`v4.5.5`](https://togithub.com/redis/redis-py/releases/tag/v4.5.5): 4.5.5
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.5.4...v4.5.5)
### Changes
#### ๐ New Features
- Add support for `CLIENT NO-TOUCH` ([#2745](https://togithub.com/redis/redis-py/issues/2745))
- Add support for `CLUSTER MYSHARDID` ([#2704](https://togithub.com/redis/redis-py/issues/2704))
- Add "address_remap" feature to RedisCluster ([#2726](https://togithub.com/redis/redis-py/issues/2726))
- Add `WITHSCORES` argument to `ZREVRANK` command ([#2725](https://togithub.com/redis/redis-py/issues/2725))
- Improve error output for master discovery ([#2720](https://togithub.com/redis/redis-py/issues/2720))
#### ๐ Bug Fixes
- Fix `XADD`: allow non negative maxlen ([#2739](https://togithub.com/redis/redis-py/issues/2739))
- Fix create single connection client from url ([#2752](https://togithub.com/redis/redis-py/issues/2752))
- Optionally disable disconnects in read_response ([#2695](https://togithub.com/redis/redis-py/issues/2695))
- Fix `SLOWLOG GET` return value ([#2732](https://togithub.com/redis/redis-py/issues/2732))
- Fix potential race condition during disconnection ([#2719](https://togithub.com/redis/redis-py/issues/2719))
- Return response in case of KeyError ([#2628](https://togithub.com/redis/redis-py/issues/2628))
- Fix incorrect usage of once flag in async Sentinel ([#2718](https://togithub.com/redis/redis-py/issues/2718))
- Fix memory leak caused by hiredis in asyncio case ([#2694](https://togithub.com/redis/redis-py/issues/2694))
- Really do not use asyncio's timeout lib before 3.11.2 ([#2699](https://togithub.com/redis/redis-py/issues/2699))
#### ๐งฐ Maintenance
- Clean PytestUnraisableExceptionWarning from asycio client ([#2731](https://togithub.com/redis/redis-py/issues/2731))
- Add RedisCluster.remap_host_port, Update tests for CWE 404 ([#2706](https://togithub.com/redis/redis-py/issues/2706))
- Updated AWS Elasticache IAM connection example ([#2702](https://togithub.com/redis/redis-py/issues/2702))
- Update CONTRIBUTING guidelines ([#2736](https://togithub.com/redis/redis-py/issues/2736))
- Fix `ClusterCommandProtocol` type ([#2729](https://togithub.com/redis/redis-py/issues/2729))
- Fix `TOPK` list example. ([#2724](https://togithub.com/redis/redis-py/issues/2724))
- Improving vector similarity search example ([#2661](https://togithub.com/redis/redis-py/issues/2661))
- Update example of Redisearch creating index ([#2703](https://togithub.com/redis/redis-py/issues/2703))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@AYMENJD](https://togithub.com/AYMENJD), [@Anthchirp](https://togithub.com/Anthchirp), [@Avasam](https://togithub.com/Avasam), [@NickG123](https://togithub.com/NickG123), [@SoulPancake](https://togithub.com/SoulPancake), [@aciddust](https://togithub.com/aciddust), [@chayim](https://togithub.com/chayim), [@cristianmatache](https://togithub.com/cristianmatache), [@dvora-h](https://togithub.com/dvora-h), [@felipou](https://togithub.com/felipou), [@kristjanvalur](https://togithub.com/kristjanvalur), [@mirekdlugosz](https://togithub.com/mirekdlugosz), [@mzdehbashi-github](https://togithub.com/mzdehbashi-github), [@oranav](https://togithub.com/oranav), [@scoopex](https://togithub.com/scoopex), [@shacharPash](https://togithub.com/shacharPash) and [@tylerhutcherson](https://togithub.com/tylerhutcherson)
### [`v4.5.4`](https://togithub.com/redis/redis-py/releases/tag/v4.5.4): 4.5.4
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.5.3...v4.5.4)
### Changes
Upgrade urgency: SECURITY, contains fixes to security issues.
- (CVE-2023-28859) - Cancelling an async future does not, properly trigger, leading to a potential data leak in specific cases.
- (CVE-2023-28858) - Cancelling an async future does not, properly trigger, leading to a potential data leak in specific cases.
#### ๐ Bug Fixes
- Fixing cancelled async futures ([#2666](https://togithub.com/redis/redis-py/issues/2666))
- Fix: do not use asyncio's timeout lib before 3.11.2 ([#2659](https://togithub.com/redis/redis-py/issues/2659))
- Fix UDS in v4.5.2: UnixDomainSocketConnection missing constructor argument ([#2630](https://togithub.com/redis/redis-py/issues/2630))
#### ๐งฐ Maintenance
- Minor fixes for [#2666](https://togithub.com/redis/redis-py/issues/2666) and enhanced async test ([#2673](https://togithub.com/redis/redis-py/issues/2673))
- Fix issue 2660: PytestUnraisableExceptionWarning from asycio client ([#2669](https://togithub.com/redis/redis-py/issues/2669))
- Removing accidentally checked in files ([#2642](https://togithub.com/redis/redis-py/issues/2642))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@bellini666](https://togithub.com/bellini666), [@chayim](https://togithub.com/chayim), [@dvora-h](https://togithub.com/dvora-h), [@shacharPash](https://togithub.com/shacharPash) and [@woutdenolf](https://togithub.com/woutdenolf)
### [`v4.5.3`](https://togithub.com/redis/redis-py/releases/tag/v4.5.3): 4.5.3
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.5.2...v4.5.3)
### Changes
Update urgency: HIGH: There is a critical bug that may affect a subset of users. Upgrade!
#### ๐ Bug Fixes
- [CWE-404](https://cwe.mitre.org/data/definitions/404.html) AsyncIO Race Condition Fix ([#2624](https://togithub.com/redis/redis-py/issues/2624), [#2579](https://togithub.com/redis/redis-py/issues/2579))
### [`v4.5.2`](https://togithub.com/redis/redis-py/releases/tag/v4.5.2): 4.5.2
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.5.1...v4.5.2)
### Changes
#### ๐ New Features
- Introduce AbstractConnection so that UnixDomainSocketConnection can call super().**init** ([#2588](https://togithub.com/redis/redis-py/issues/2588))
- Added queue_class to REDIS_ALLOWED_KEYS ([#2577](https://togithub.com/redis/redis-py/issues/2577))
- Made search document subscriptable ([#2615](https://togithub.com/redis/redis-py/issues/2615))
- Sped up the protocol parsing ([#2596](https://togithub.com/redis/redis-py/issues/2596))
#### ๐ Bug Fixes
- Fix behaviour of async PythonParser to match RedisParser as for issue [#2349](https://togithub.com/redis/redis-py/issues/2349) ([#2582](https://togithub.com/redis/redis-py/issues/2582))
- Replace async_timeout by asyncio.timeout ([#2602](https://togithub.com/redis/redis-py/issues/2602))
- Update json().arrindex() default values ([#2611](https://togithub.com/redis/redis-py/issues/2611))
#### ๐งฐ Maintenance
- Coverage for pypy-3.9 ([#2608](https://togithub.com/redis/redis-py/issues/2608))
- Developer Experience: Adding redis version compatibility details to the README ([#2621](https://togithub.com/redis/redis-py/issues/2621))
- Remove redundant assignment to RedisCluster.nodes_manager. ([#2620](https://togithub.com/redis/redis-py/issues/2620))
- Developer Experience: \[types] update return type of smismember to list\[int] ([#2617](https://togithub.com/redis/redis-py/issues/2617))
- Developer Experience: \[docs] ConnectionPool SSL example ([#2605](https://togithub.com/redis/redis-py/issues/2605))
- Developer Experience: Fixed CredentialsProvider examples ([#2587](https://togithub.com/redis/redis-py/issues/2587))
- Developer Experience: Update README to make pip install copy-pastable on zsh ([#2584](https://togithub.com/redis/redis-py/issues/2584))
- Developer Experience: Fix for `lpop` and `rpop` return typing ([#2590](https://togithub.com/redis/redis-py/issues/2590))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@CrimsonGlory](https://togithub.com/CrimsonGlory), [@Galtozzy](https://togithub.com/Galtozzy), [@aksinha334](https://togithub.com/aksinha334), [@barshaul](https://togithub.com/barshaul), [@chayim](https://togithub.com/chayim), [@davemcphee](https://togithub.com/davemcphee), [@dvora-h](https://togithub.com/dvora-h), [@kristjanvalur](https://togithub.com/kristjanvalur), [@ryin1](https://togithub.com/ryin1), [@sileht](https://togithub.com/sileht), [@thebarbershop](https://togithub.com/thebarbershop), [@uglide](https://togithub.com/uglide), [@woutdenolf](https://togithub.com/woutdenolf) and [@zakaf](https://togithub.com/zakaf)
Configuration
๐ Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
๐ฆ Automerge: Disabled by config. Please merge this manually once you are satisfied.
โป Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
๐ Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
4.5.1
->4.6.0
Release Notes
redis/redis-py (redis)
### [`v4.6.0`](https://togithub.com/redis/redis-py/releases/tag/v4.6.0): 4.6.0 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.5.5...v4.6.0) ### Changes #### ๐งช Experimental Features - Support `JSON.MERGE` command ([#2761](https://togithub.com/redis/redis-py/issues/2761)) - Support `JSON.MSET` command ([#2766](https://togithub.com/redis/redis-py/issues/2766)) #### ๐ New Features - Extract abstract async connection class ([#2734](https://togithub.com/redis/redis-py/issues/2734)) - Add support for `WAITAOF` ([#2760](https://togithub.com/redis/redis-py/issues/2760)) - Introduce OutOfMemoryError exception for Redis write command rejections due to OOM errors ([#2778](https://togithub.com/redis/redis-py/issues/2778)) - Add `WITHSCORE` argument to `ZRANK` ([#2758](https://togithub.com/redis/redis-py/issues/2758)) #### ๐ Bug Fixes - Fix dead weakref in sentinel connection causing ReferenceError ([#2767](https://togithub.com/redis/redis-py/issues/2767)) ([#2771](https://togithub.com/redis/redis-py/issues/2771)) - Fix Key Error in parse_xinfo_stream ([#2788](https://togithub.com/redis/redis-py/issues/2788)) - Remove unnecessary \__del\_\_ handlers ([#2755](https://togithub.com/redis/redis-py/issues/2755)) - Added support for missing argument to SentinelManagedConnection.read_response() ([#2756](https://togithub.com/redis/redis-py/issues/2756)) #### ๐งฐ Maintenance - Fix type hint for retry_on_error in async cluster ([#2804](https://togithub.com/redis/redis-py/issues/2804)) - Clean up documents and fix some redirects ([#2801](https://togithub.com/redis/redis-py/issues/2801)) - Add unit tests for the `connect` method of all Redis connection classes ([#2631](https://togithub.com/redis/redis-py/issues/2631)) - Docstring formatting fix ([#2796](https://togithub.com/redis/redis-py/issues/2796)) #### Contributors We'd like to thank all the contributors who worked on this release! [@Smit-Parmar](https://togithub.com/Smit-Parmar), [@TheKevJames](https://togithub.com/TheKevJames), [@aciddust](https://togithub.com/aciddust), [@bmacphee](https://togithub.com/bmacphee), [@bodevone](https://togithub.com/bodevone), [@dvora-h](https://togithub.com/dvora-h), [@kristjanvalur](https://togithub.com/kristjanvalur), [@shacharPash](https://togithub.com/shacharPash), [@shahar-lev](https://togithub.com/shahar-lev), [@vmihailenco](https://togithub.com/vmihailenco) and [@woutdenolf](https://togithub.com/woutdenolf) ### [`v4.5.5`](https://togithub.com/redis/redis-py/releases/tag/v4.5.5): 4.5.5 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.5.4...v4.5.5) ### Changes #### ๐ New Features - Add support for `CLIENT NO-TOUCH` ([#2745](https://togithub.com/redis/redis-py/issues/2745)) - Add support for `CLUSTER MYSHARDID` ([#2704](https://togithub.com/redis/redis-py/issues/2704)) - Add "address_remap" feature to RedisCluster ([#2726](https://togithub.com/redis/redis-py/issues/2726)) - Add `WITHSCORES` argument to `ZREVRANK` command ([#2725](https://togithub.com/redis/redis-py/issues/2725)) - Improve error output for master discovery ([#2720](https://togithub.com/redis/redis-py/issues/2720)) #### ๐ Bug Fixes - Fix `XADD`: allow non negative maxlen ([#2739](https://togithub.com/redis/redis-py/issues/2739)) - Fix create single connection client from url ([#2752](https://togithub.com/redis/redis-py/issues/2752)) - Optionally disable disconnects in read_response ([#2695](https://togithub.com/redis/redis-py/issues/2695)) - Fix `SLOWLOG GET` return value ([#2732](https://togithub.com/redis/redis-py/issues/2732)) - Fix potential race condition during disconnection ([#2719](https://togithub.com/redis/redis-py/issues/2719)) - Return response in case of KeyError ([#2628](https://togithub.com/redis/redis-py/issues/2628)) - Fix incorrect usage of once flag in async Sentinel ([#2718](https://togithub.com/redis/redis-py/issues/2718)) - Fix memory leak caused by hiredis in asyncio case ([#2694](https://togithub.com/redis/redis-py/issues/2694)) - Really do not use asyncio's timeout lib before 3.11.2 ([#2699](https://togithub.com/redis/redis-py/issues/2699)) #### ๐งฐ Maintenance - Clean PytestUnraisableExceptionWarning from asycio client ([#2731](https://togithub.com/redis/redis-py/issues/2731)) - Add RedisCluster.remap_host_port, Update tests for CWE 404 ([#2706](https://togithub.com/redis/redis-py/issues/2706)) - Updated AWS Elasticache IAM connection example ([#2702](https://togithub.com/redis/redis-py/issues/2702)) - Update CONTRIBUTING guidelines ([#2736](https://togithub.com/redis/redis-py/issues/2736)) - Fix `ClusterCommandProtocol` type ([#2729](https://togithub.com/redis/redis-py/issues/2729)) - Fix `TOPK` list example. ([#2724](https://togithub.com/redis/redis-py/issues/2724)) - Improving vector similarity search example ([#2661](https://togithub.com/redis/redis-py/issues/2661)) - Update example of Redisearch creating index ([#2703](https://togithub.com/redis/redis-py/issues/2703)) #### Contributors We'd like to thank all the contributors who worked on this release! [@AYMENJD](https://togithub.com/AYMENJD), [@Anthchirp](https://togithub.com/Anthchirp), [@Avasam](https://togithub.com/Avasam), [@NickG123](https://togithub.com/NickG123), [@SoulPancake](https://togithub.com/SoulPancake), [@aciddust](https://togithub.com/aciddust), [@chayim](https://togithub.com/chayim), [@cristianmatache](https://togithub.com/cristianmatache), [@dvora-h](https://togithub.com/dvora-h), [@felipou](https://togithub.com/felipou), [@kristjanvalur](https://togithub.com/kristjanvalur), [@mirekdlugosz](https://togithub.com/mirekdlugosz), [@mzdehbashi-github](https://togithub.com/mzdehbashi-github), [@oranav](https://togithub.com/oranav), [@scoopex](https://togithub.com/scoopex), [@shacharPash](https://togithub.com/shacharPash) and [@tylerhutcherson](https://togithub.com/tylerhutcherson) ### [`v4.5.4`](https://togithub.com/redis/redis-py/releases/tag/v4.5.4): 4.5.4 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.5.3...v4.5.4) ### Changes Upgrade urgency: SECURITY, contains fixes to security issues. - (CVE-2023-28859) - Cancelling an async future does not, properly trigger, leading to a potential data leak in specific cases. - (CVE-2023-28858) - Cancelling an async future does not, properly trigger, leading to a potential data leak in specific cases. #### ๐ Bug Fixes - Fixing cancelled async futures ([#2666](https://togithub.com/redis/redis-py/issues/2666)) - Fix: do not use asyncio's timeout lib before 3.11.2 ([#2659](https://togithub.com/redis/redis-py/issues/2659)) - Fix UDS in v4.5.2: UnixDomainSocketConnection missing constructor argument ([#2630](https://togithub.com/redis/redis-py/issues/2630)) #### ๐งฐ Maintenance - Minor fixes for [#2666](https://togithub.com/redis/redis-py/issues/2666) and enhanced async test ([#2673](https://togithub.com/redis/redis-py/issues/2673)) - Fix issue 2660: PytestUnraisableExceptionWarning from asycio client ([#2669](https://togithub.com/redis/redis-py/issues/2669)) - Removing accidentally checked in files ([#2642](https://togithub.com/redis/redis-py/issues/2642)) #### Contributors We'd like to thank all the contributors who worked on this release! [@bellini666](https://togithub.com/bellini666), [@chayim](https://togithub.com/chayim), [@dvora-h](https://togithub.com/dvora-h), [@shacharPash](https://togithub.com/shacharPash) and [@woutdenolf](https://togithub.com/woutdenolf) ### [`v4.5.3`](https://togithub.com/redis/redis-py/releases/tag/v4.5.3): 4.5.3 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.5.2...v4.5.3) ### Changes Update urgency: HIGH: There is a critical bug that may affect a subset of users. Upgrade! #### ๐ Bug Fixes - [CWE-404](https://cwe.mitre.org/data/definitions/404.html) AsyncIO Race Condition Fix ([#2624](https://togithub.com/redis/redis-py/issues/2624), [#2579](https://togithub.com/redis/redis-py/issues/2579)) ### [`v4.5.2`](https://togithub.com/redis/redis-py/releases/tag/v4.5.2): 4.5.2 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.5.1...v4.5.2) ### Changes #### ๐ New Features - Introduce AbstractConnection so that UnixDomainSocketConnection can call super().**init** ([#2588](https://togithub.com/redis/redis-py/issues/2588)) - Added queue_class to REDIS_ALLOWED_KEYS ([#2577](https://togithub.com/redis/redis-py/issues/2577)) - Made search document subscriptable ([#2615](https://togithub.com/redis/redis-py/issues/2615)) - Sped up the protocol parsing ([#2596](https://togithub.com/redis/redis-py/issues/2596)) #### ๐ Bug Fixes - Fix behaviour of async PythonParser to match RedisParser as for issue [#2349](https://togithub.com/redis/redis-py/issues/2349) ([#2582](https://togithub.com/redis/redis-py/issues/2582)) - Replace async_timeout by asyncio.timeout ([#2602](https://togithub.com/redis/redis-py/issues/2602)) - Update json().arrindex() default values ([#2611](https://togithub.com/redis/redis-py/issues/2611)) #### ๐งฐ Maintenance - Coverage for pypy-3.9 ([#2608](https://togithub.com/redis/redis-py/issues/2608)) - Developer Experience: Adding redis version compatibility details to the README ([#2621](https://togithub.com/redis/redis-py/issues/2621)) - Remove redundant assignment to RedisCluster.nodes_manager. ([#2620](https://togithub.com/redis/redis-py/issues/2620)) - Developer Experience: \[types] update return type of smismember to list\[int] ([#2617](https://togithub.com/redis/redis-py/issues/2617)) - Developer Experience: \[docs] ConnectionPool SSL example ([#2605](https://togithub.com/redis/redis-py/issues/2605)) - Developer Experience: Fixed CredentialsProvider examples ([#2587](https://togithub.com/redis/redis-py/issues/2587)) - Developer Experience: Update README to make pip install copy-pastable on zsh ([#2584](https://togithub.com/redis/redis-py/issues/2584)) - Developer Experience: Fix for `lpop` and `rpop` return typing ([#2590](https://togithub.com/redis/redis-py/issues/2590)) #### Contributors We'd like to thank all the contributors who worked on this release! [@CrimsonGlory](https://togithub.com/CrimsonGlory), [@Galtozzy](https://togithub.com/Galtozzy), [@aksinha334](https://togithub.com/aksinha334), [@barshaul](https://togithub.com/barshaul), [@chayim](https://togithub.com/chayim), [@davemcphee](https://togithub.com/davemcphee), [@dvora-h](https://togithub.com/dvora-h), [@kristjanvalur](https://togithub.com/kristjanvalur), [@ryin1](https://togithub.com/ryin1), [@sileht](https://togithub.com/sileht), [@thebarbershop](https://togithub.com/thebarbershop), [@uglide](https://togithub.com/uglide), [@woutdenolf](https://togithub.com/woutdenolf) and [@zakaf](https://togithub.com/zakaf)Configuration
๐ Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
๐ฆ Automerge: Disabled by config. Please merge this manually once you are satisfied.
โป Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
๐ Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.