redis-py before 4.5.3, as used in ChatGPT and other products, leaves a connection open after canceling an async Redis command at an inopportune time (in the case of a pipeline operation), and can send response data to the client of an unrelated request in an off-by-one manner. The fixed versions for this CVE Record are 4.3.6, 4.4.3, and 4.5.3, but are believed to be incomplete. CVE-2023-28859 has been assigned the issues caused by the incomplete fixes.
Release Notes
redis/redis-py
### [`v4.3.6`](https://togithub.com/redis/redis-py/releases/tag/v4.3.6): 4.3.6
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.3.5...v4.3.6)
### 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.3.5`](https://togithub.com/redis/redis-py/releases/tag/v4.3.5): Version 4.3.5
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.3.4...v4.3.5)
### Changes
This is a maintenance release of redis-py, prior to the release of 4.4.0. This release contains both bug fixes, and features, keeping pace with the release of [redis-stack](https://redis.io/docs/stack/) capabilities.
#### π New Features
- Add support for TIMESERIES 1.8 ([#2296](https://togithub.com/redis/redis-py/issues/2296))
- Graph - add counters for removed labels and properties ([#2292](https://togithub.com/redis/redis-py/issues/2292))
- Add support for TDIGEST.QUANTILE extensions ([#2317](https://togithub.com/redis/redis-py/issues/2317))
- Add TDIGEST.TRIMMED_MEAN ([#2300](https://togithub.com/redis/redis-py/issues/2300))
- Add support for async GRAPH module ([#2273](https://togithub.com/redis/redis-py/issues/2273))
- Support TDIGEST.MERGESTORE and make compression optional on TDIGEST.CREATE ([#2319](https://togithub.com/redis/redis-py/issues/2319))
- Adding reserve as an alias for create, so that we have BF.RESERVE and CF.RESERVE accuratenly supported ([#2331](https://togithub.com/redis/redis-py/issues/2331))
#### π Bug Fixes
- Fix async connection.is_connected to return a boolean value ([#2278](https://togithub.com/redis/redis-py/issues/2278))
- Fix: workaround asyncio bug on connection reset by peer ([#2259](https://togithub.com/redis/redis-py/issues/2259))
- Fix crash: key expire while search ([#2270](https://togithub.com/redis/redis-py/issues/2270))
- Async cluster: fix concurrent pipeline ([#2280](https://togithub.com/redis/redis-py/issues/2280))
- Fix async SEARCH pipeline ([#2316](https://togithub.com/redis/redis-py/issues/2316))
- Fix KeyError in async cluster - initialize before execute multi key commands ([#2439](https://togithub.com/redis/redis-py/issues/2439))
#### π§° Maintenance
- Supply chain risk reduction: remove dependency on library named deprecated ([#2386](https://togithub.com/redis/redis-py/issues/2386))
- Search test - Ignore order of the items in the response ([#2322](https://togithub.com/redis/redis-py/issues/2322))
- Fix GRAPH.LIST & TDIGEST.QUANTILE tests ([#2335](https://togithub.com/redis/redis-py/issues/2335))
- Fix TimeSeries range aggregation (twa) tests ([#2358](https://togithub.com/redis/redis-py/issues/2358))
- Mark TOPK.COUNT as deprecated ([#2363](https://togithub.com/redis/redis-py/issues/2363))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@sileht](https://togithub.com/sileht), [@utkarshgupta137](https://togithub.com/utkarshgupta137), [@dvora-h](https://togithub.com/dvora-h), [@akx](https://togithub.com/akx), [@bodevone](https://togithub.com/bodevone), [@chayim](https://togithub.com/chayim), [@DvirDukhan](https://togithub.com/DvirDukhan)
### [`v4.3.4`](https://togithub.com/redis/redis-py/releases/tag/v4.3.4): Version 4.3.4
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.3.3...v4.3.4)
#### Changes
#### π₯ Breaking Changes
- Fix backward compatibility from 4.3.2 in Lock.acquire() ([#2254](https://togithub.com/redis/redis-py/issues/2254))
- Fix `XAUTOCLAIM` to return the full response, instead of only keys 2+ ([#2252](https://togithub.com/redis/redis-py/issues/2252))
#### π New Features
- Added dynamic_startup_nodes configuration to RedisCluster. ([#2244](https://togithub.com/redis/redis-py/issues/2244), [#2251](https://togithub.com/redis/redis-py/issues/2251))
#### π Bug Fixes
- Fix retries in async mode ([#2180](https://togithub.com/redis/redis-py/issues/2180))
- Async cluster: fix simultaneous initialize ([#2231](https://togithub.com/redis/redis-py/issues/2231))
- Uppercased commands in CommandsParser.get_keys ([#2236](https://togithub.com/redis/redis-py/issues/2236))
#### π§° Maintenance
- Late eval of the skip condition in async tests([#2248](https://togithub.com/redis/redis-py/issues/2248), [#2253](https://togithub.com/redis/redis-py/issues/2253))
- Reuse the old nodes' connections when a cluster topology refresh is being done ([#2235](https://togithub.com/redis/redis-py/issues/2235))
- Docs: add pipeline examples ([#2240](https://togithub.com/redis/redis-py/issues/2240))
- Correct retention_msecs value ([#2232](https://togithub.com/redis/redis-py/issues/2232))
- Cluster: use pipeline to execute split commands ([#2230](https://togithub.com/redis/redis-py/issues/2230))
- Docs: Add a note about client_setname and client_name difference ([#2247](https://togithub.com/redis/redis-py/issues/2247))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@Iglesys347](https://togithub.com/Iglesys347), [@barshaul](https://togithub.com/barshaul), [@dvora-h](https://togithub.com/dvora-h), [@earthgecko](https://togithub.com/earthgecko), [@elemoine](https://togithub.com/elemoine), [@falk-h](https://togithub.com/falk-h), [@kristjanvalur](https://togithub.com/kristjanvalur), [@psrok1](https://togithub.com/psrok1) and [@utkarshgupta137](https://togithub.com/utkarshgupta137)
### [`v4.3.3`](https://togithub.com/redis/redis-py/releases/tag/v4.3.3): Version 4.3.3
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.3.2...v4.3.3)
#### Changes
#### π Bug Fixes
- Fix Lock crash, and versioning 4.3.3 ([#2210](https://togithub.com/redis/redis-py/issues/2210))
#### π§° Maintenance
- Async cluster: improve docs ([#2208](https://togithub.com/redis/redis-py/issues/2208))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@dvora-h](https://togithub.com/dvora-h) and [@utkarshgupta137](https://togithub.com/utkarshgupta137)
### [`v4.3.2`](https://togithub.com/redis/redis-py/releases/tag/v4.3.2): Version 4.3.2
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.3.1...v4.3.2)
#### Changes
#### π New Features
- SHUTDOWN - add support for the new NOW, FORCE and ABORT modifiers ([#2150](https://togithub.com/redis/redis-py/issues/2150))
- Adding pipeline support for async cluster ([#2199](https://togithub.com/redis/redis-py/issues/2199))
- Support CF.MEXISTS + Clean bf/commands.py ([#2184](https://togithub.com/redis/redis-py/issues/2184))
- Extending query_params for FT.PROFILE ([#2198](https://togithub.com/redis/redis-py/issues/2198))
- Implementing ClusterPipeline Lock ([#2190](https://togithub.com/redis/redis-py/issues/2190))
#### π Bug Fixes
- Set default response_callbacks to redis.asyncio.cluster.ClusterNode ([#2201](https://togithub.com/redis/redis-py/issues/2201))
- Add default None for maxlen at xtrim command ([#2188](https://togithub.com/redis/redis-py/issues/2188))
#### π§° Maintenance
- Async cluster: add/update typing ([#2195](https://togithub.com/redis/redis-py/issues/2195))
- Changed list type to single element type ([#2203](https://togithub.com/redis/redis-py/issues/2203))
- Made sync lock consistent and added types to it ([#2137](https://togithub.com/redis/redis-py/issues/2137))
- Async cluster: optimisations ([#2205](https://togithub.com/redis/redis-py/issues/2205))
- Fix typos in README ([#2206](https://togithub.com/redis/redis-py/issues/2206))
- Fix modules links to https://redis.io/commands/ ([#2185](https://togithub.com/redis/redis-py/issues/2185))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@Avital-Fine](https://togithub.com/Avital-Fine), [@Olegt0rr](https://togithub.com/Olegt0rr), [@WisdomPill](https://togithub.com/WisdomPill), [@dvora-h](https://togithub.com/dvora-h), [@grippy](https://togithub.com/grippy), [@mfgnik](https://togithub.com/mfgnik), [@rapidia](https://togithub.com/rapidia), [@ryanrussell](https://togithub.com/ryanrussell) and [@utkarshgupta137](https://togithub.com/utkarshgupta137)
### [`v4.3.1`](https://togithub.com/redis/redis-py/releases/tag/v4.3.1): Version 4.3.1
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.3.0...v4.3.1)
#### Changes
#### π Bug Fixes
- Fix asyncio Search crash ([#2175](https://togithub.com/redis/redis-py/issues/2175))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@dvora-h](https://togithub.com/dvora-h)
### [`v4.3.0`](https://togithub.com/redis/redis-py/releases/tag/v4.3.0): Version 4.3.0
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.2.2...v4.3.0)
#### Changes
#### π₯ Breaking Changes
- Replace OSError exceptions from `can_read` with `redis.ConnectionError` ([#2140](https://togithub.com/redis/redis-py/issues/2140))
- Updated FUNCTION LOAD changes (from release 7.0 rc3 to support redis 7.0 final) ([#2139](https://togithub.com/redis/redis-py/issues/2139))
#### π New Features
- Get command keys for subcommands ([#2170](https://togithub.com/redis/redis-py/issues/2170))
- Add support for CLUSTER SHARDS ([#2151](https://togithub.com/redis/redis-py/issues/2151))
- Add support for COMMAND LIST ([#2149](https://togithub.com/redis/redis-py/issues/2149))
- Add Async RedisCluster ([#2099](https://togithub.com/redis/redis-py/issues/2099))
- ACL SETUSER - add selectors and key based permissions ([#2161](https://togithub.com/redis/redis-py/issues/2161))
- Support for redis 7 streams features ([#2157](https://togithub.com/redis/redis-py/issues/2157))
- Async Connection: Allow `PubSub.run()` without previous `subscribe()` ([#2148](https://togithub.com/redis/redis-py/issues/2148))
- Implemented LATENCY HISTOGRAM by always throwing NotImplementedError ([#2147](https://togithub.com/redis/redis-py/issues/2147))
- Add async supoort for SEARCH commands ([#2096](https://togithub.com/redis/redis-py/issues/2096))
- `Retry()`: Support negative `retries` value ([#2110](https://togithub.com/redis/redis-py/issues/2110))
- Add support for MODULE LOADEX ([#2146](https://togithub.com/redis/redis-py/issues/2146))
- INFO - add support for taking multiple section arguments ([#2145](https://togithub.com/redis/redis-py/issues/2145))
- CONFIG SET - add the ability to set multiple parameters in one call ([#2143](https://togithub.com/redis/redis-py/issues/2143))
- CONFIG GET - add the ability to pass multiple pattern parameters in one call ([#2142](https://togithub.com/redis/redis-py/issues/2142))
- Add support for COMMAND GETKEYSANDFLAGS ([#2141](https://togithub.com/redis/redis-py/issues/2141))
- Support CASESENSITIVE for TAG fields ([#2112](https://togithub.com/redis/redis-py/issues/2112))
#### π Bug Fixes
- Rename 'update_supported_erros' to 'update_supported_errors' in Retry module ([#2144](https://togithub.com/redis/redis-py/issues/2144))
- Fix execute_command() determining nodes error when no key command ([#2097](https://togithub.com/redis/redis-py/issues/2097))
- Fix incorrect return statement in auth ([#2086](https://togithub.com/redis/redis-py/issues/2086)) ([#2092](https://togithub.com/redis/redis-py/issues/2092))
#### π§° Maintenance
- Add unittest for PubSub.connect() ([#2167](https://togithub.com/redis/redis-py/issues/2167))
- Fix incorrect return annotation in asyncio.lock ([#2155](https://togithub.com/redis/redis-py/issues/2155))
- Minor cleanups in commands/cluster.py ([#2094](https://togithub.com/redis/redis-py/issues/2094))
- Update xtrim type annotation ([#2093](https://togithub.com/redis/redis-py/issues/2093))
- Async tests for redis commands, json, bloom, timeseries ([#2087](https://togithub.com/redis/redis-py/issues/2087))
- Fixed typing in getex command ([#2088](https://togithub.com/redis/redis-py/issues/2088))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@Andrew-Chen-Wang](https://togithub.com/Andrew-Chen-Wang), [@Ankhas](https://togithub.com/Ankhas), [@Avital-Fine](https://togithub.com/Avital-Fine), [@JelleZijlstra](https://togithub.com/JelleZijlstra), [@chayim](https://togithub.com/chayim), [@dvora-h](https://togithub.com/dvora-h), [@enjoy-binbin](https://togithub.com/enjoy-binbin), [@kamyabzad](https://togithub.com/kamyabzad), [@kristjanvalur](https://togithub.com/kristjanvalur), [@richli](https://togithub.com/richli), [@suxb201](https://togithub.com/suxb201) and [@utkarshgupta137](https://togithub.com/utkarshgupta137)
### [`v4.2.2`](https://togithub.com/redis/redis-py/releases/tag/v4.2.2): Version 4.2.2
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.2.1...v4.2.2)
#### Changes
#### π New Features
- Extended "CLUSTER NODES" parser to support special slot entries ([#2080](https://togithub.com/redis/redis-py/issues/2080))
- π₯ NOTE: This change is potentially breaking depending on your use of specialized slot entries. Support for bytes was added
- Add support for BIT|BYTE option available in redis 7 ([#2068](https://togithub.com/redis/redis-py/issues/2068))
#### π Bug Fixes
- Fix imports in for async ([#2079](https://togithub.com/redis/redis-py/issues/2079))
- Always clear reference to closed reader/writer ([#2077](https://togithub.com/redis/redis-py/issues/2077))
- Fix disable decode for dump command in async ([#2070](https://togithub.com/redis/redis-py/issues/2070))
#### π§° Maintenance
- Cluster commands linkdocs ([#2069](https://togithub.com/redis/redis-py/issues/2069))
- Clarify bit type in setbit/getbit documentation ([#2078](https://togithub.com/redis/redis-py/issues/2078))
- Clean up test supoort enterprise environments ([#2082](https://togithub.com/redis/redis-py/issues/2082))
- Vector similarity search example ([#2083](https://togithub.com/redis/redis-py/issues/2083))
- Fix search query with params tests ([#2076](https://togithub.com/redis/redis-py/issues/2076))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@barshaul](https://togithub.com/barshaul), [@beasteers](https://togithub.com/beasteers), [@dsoprea](https://togithub.com/dsoprea), [@dvora-h](https://togithub.com/dvora-h), [@enjoy-binbin](https://togithub.com/enjoy-binbin), [@nosammai](https://togithub.com/nosammai) and [@wwqgtxx](https://togithub.com/wwqgtxx)
### [`v4.2.1`](https://togithub.com/redis/redis-py/releases/tag/v4.2.1): Version 4.2.1
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.2.0...v4.2.1)
#### Changes
#### π New Features
- Add support for CLUSTER MYID ([#2063](https://togithub.com/redis/redis-py/issues/2063))
- Add dialect support for RediSearch queries ([#2071](https://togithub.com/redis/redis-py/issues/2071))
#### π§° Maintenance
- Fix black ([#2075](https://togithub.com/redis/redis-py/issues/2075))
- Make typing_extensions conditional to Python < 3.8 ([#2062](https://togithub.com/redis/redis-py/issues/2062))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@dvora-h](https://togithub.com/dvora-h), [@enjoy-binbin](https://togithub.com/enjoy-binbin) and [@mgorny](https://togithub.com/mgorny)
### [`v4.2.0`](https://togithub.com/redis/redis-py/releases/tag/v4.2.0): Version 4.2.0
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.1.4...v4.2.0)
#### Changes
[4.2.0-rc1 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.2.0rc1)
[4.2.0-rc2 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.2.0rc2)
[4.2.0-rc3 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.2.0rc3)
#### π New Features
- Support for Vector Fields for Vector Similarity Search ([#2041](https://togithub.com/redis/redis-py/issues/2041))
#### π Bug Fixes
- Fix cluster scan command cursors & scan_iter ([#2054](https://togithub.com/redis/redis-py/issues/2054))
#### π§° Maintenance
- Remove verbose logging from cluster initializers ([#2055](https://togithub.com/redis/redis-py/issues/2055))
- Mark tests for redis-stack ([#2052](https://togithub.com/redis/redis-py/issues/2052))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@Avital-Fine](https://togithub.com/Avital-Fine), [@dvora-h](https://togithub.com/dvora-h), [@joni-](https://togithub.com/joni-) and [@utkarshgupta137](https://togithub.com/utkarshgupta137)
### [`v4.1.4`](https://togithub.com/redis/redis-py/releases/tag/v4.1.4): Version 4.1.4
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.1.3...v4.1.4)
#### Changes
#### π New Features
- Adding ExecutionPlan support for graph ([#1993](https://togithub.com/redis/redis-py/issues/1993))
- Vector similiary search support ([#1986](https://togithub.com/redis/redis-py/issues/1986))
### [`v4.1.3`](https://togithub.com/redis/redis-py/releases/tag/v4.1.3): Version 4.1.3
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.1.2...v4.1.3)
#### π Bug Fixes
- Fix flushdb and flushall ([#1926](https://togithub.com/redis/redis-py/issues/1926))
#### π§° Maintenance
- Add redis5 and redis4 dockers ([#1871](https://togithub.com/redis/redis-py/issues/1871))
- Change json.clear test multi to be up to date with redisjson ([#1922](https://togithub.com/redis/redis-py/issues/1922))
- Fixing volume for unstable_cluster docker ([#1914](https://togithub.com/redis/redis-py/issues/1914))
- Update changes file with changes since 4.0.0-beta2 ([#1915](https://togithub.com/redis/redis-py/issues/1915))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@MeirShpilraien](https://togithub.com/MeirShpilraien), [@dvora-h](https://togithub.com/dvora-h)
### [`v4.1.2`](https://togithub.com/redis/redis-py/releases/tag/v4.1.2): Version 4.1.2
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.1.1...v4.1.2)
#### Changes
#### π New Features
- Invalid OCSP certificates should raise ConnectionError on failed validation ([#1907](https://togithub.com/redis/redis-py/issues/1907))
- Added retry mechanism on socket timeouts when connecting to the server ([#1895](https://togithub.com/redis/redis-py/issues/1895))
#### π Bug Fixes
- LMOVE, BLMOVE return incorrect responses ([#1906](https://togithub.com/redis/redis-py/issues/1906))
- Fixing AttributeError in UnixDomainSocketConnection ([#1903](https://togithub.com/redis/redis-py/issues/1903))
- Fixing TypeError in GraphCommands.explain ([#1901](https://togithub.com/redis/redis-py/issues/1901))
#### π§° Maintenance
- For tests, increasing wait time for the cluster ([#1908](https://togithub.com/redis/redis-py/issues/1908))
- Increased pubsub's wait_for_messages timeout to prevent flaky tests ([#1893](https://togithub.com/redis/redis-py/issues/1893))
- README code snippets formatted to highlight properly ([#1888](https://togithub.com/redis/redis-py/issues/1888))
- Fix link in the main page ([#1897](https://togithub.com/redis/redis-py/issues/1897))
- Documentation fixes: JSON Example, SSL Connection Examples, RTD version ([#1887](https://togithub.com/redis/redis-py/issues/1887))
- Direct link to readthedocs ([#1885](https://togithub.com/redis/redis-py/issues/1885))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@barshaul](https://togithub.com/barshaul), [@chayim](https://togithub.com/chayim), [@dvora-h](https://togithub.com/dvora-h), [@soumendrak](https://togithub.com/soumendrak) and [@varunchopra](https://togithub.com/varunchopra)
### [`v4.1.1`](https://togithub.com/redis/redis-py/releases/tag/v4.1.1): Version 4.1.1
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.1.0...v4.1.1)
#### Changes
#### π New Features
- Add retries to connections in Sentinel Pools ([#1879](https://togithub.com/redis/redis-py/issues/1879))
- OCSP Stapling Support ([#1873](https://togithub.com/redis/redis-py/issues/1873))
- Define incr/decr as aliases of incrby/decrby ([#1874](https://togithub.com/redis/redis-py/issues/1874))
- FT.CREATE - support MAXTEXTFIELDS, TEMPORARY, NOHL, NOFREQS, SKIPINITIALSCAN ([#1847](https://togithub.com/redis/redis-py/issues/1847))
#### π Bug Fixes
- Timeseries docs fix ([#1877](https://togithub.com/redis/redis-py/issues/1877))
- get_connection: catch OSError too ([#1832](https://togithub.com/redis/redis-py/issues/1832))
- Set keys var otherwise variable not created ([#1853](https://togithub.com/redis/redis-py/issues/1853))
- Clusters should optionally require full slot coverage ([#1845](https://togithub.com/redis/redis-py/issues/1845))
#### π§° Maintenance
- Triple quote docstrings in client.py PEP 257 ([#1876](https://togithub.com/redis/redis-py/issues/1876))
- syncing requirements ([#1870](https://togithub.com/redis/redis-py/issues/1870))
- Typo and typing in GraphCommands documentation ([#1855](https://togithub.com/redis/redis-py/issues/1855))
- Allowing poetry and redis-py to install together ([#1854](https://togithub.com/redis/redis-py/issues/1854))
- `setup.py`: Add project_urls for PyPI ([#1867](https://togithub.com/redis/redis-py/issues/1867))
- Support test with redis unstable docker ([#1850](https://togithub.com/redis/redis-py/issues/1850))
- Connection examples ([#1835](https://togithub.com/redis/redis-py/issues/1835))
- Documentation cleanup ([#1841](https://togithub.com/redis/redis-py/issues/1841))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@Andrew-Chen-Wang](https://togithub.com/Andrew-Chen-Wang), [@AvitalFineRedis](https://togithub.com/AvitalFineRedis), [@Enchufa2](https://togithub.com/Enchufa2), [@barshaul](https://togithub.com/barshaul), [@chayim](https://togithub.com/chayim), [@dvora-h](https://togithub.com/dvora-h), [@jdieter](https://togithub.com/jdieter), [@salty-horse](https://togithub.com/salty-horse), [@sbv-csis](https://togithub.com/sbv-csis) and [@tony](https://togithub.com/tony)
### [`v4.1.0`](https://togithub.com/redis/redis-py/releases/tag/v4.1.0): Version 4.1.0
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.0.2...v4.1.0)
#### Changes
[4.1.0-rc2 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.1.0rc2)
[4.1.0-rc1 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.1.0rc1)
#### π New Features
- OCSP stapling support ([#1820](https://togithub.com/redis/redis-py/issues/1820))
- Support for SELECT ([#1825](https://togithub.com/redis/redis-py/issues/1825))
- Support for specifying error types with retry ([#1817](https://togithub.com/redis/redis-py/issues/1817))
- Support for RESET command since Redis 6.2.0 ([#1824](https://togithub.com/redis/redis-py/issues/1824))
- Support CLIENT TRACKING ([#1612](https://togithub.com/redis/redis-py/issues/1612))
- Support WRITE in CLIENT PAUSE ([#1549](https://togithub.com/redis/redis-py/issues/1549))
- JSON set_file and set_path support ([#1818](https://togithub.com/redis/redis-py/issues/1818))
- Allow ssl_ca_path with rediss:// urls ([#1814](https://togithub.com/redis/redis-py/issues/1814))
- Support for password-encrypted SSL private keys ([#1782](https://togithub.com/redis/redis-py/issues/1782))
- Support SYNC and PSYNC ([#1741](https://togithub.com/redis/redis-py/issues/1741))
#### π Bug Fixes
- Retry on error exception and timeout fixes ([#1821](https://togithub.com/redis/redis-py/issues/1821))
- Fixing read race condition during pubsub ([#1737](https://togithub.com/redis/redis-py/issues/1737))
- Fixing exception in listen ([#1823](https://togithub.com/redis/redis-py/issues/1823))
- Fixed MovedError, and stopped iterating through startup nodes when slots are fully covered ([#1819](https://togithub.com/redis/redis-py/issues/1819))
- Socket not closing after server disconnect ([#1797](https://togithub.com/redis/redis-py/issues/1797))
- Single sourcing the package version ([#1791](https://togithub.com/redis/redis-py/issues/1791))
- Ensure redis_connect_func is set on uds connection ([#1794](https://togithub.com/redis/redis-py/issues/1794))
#### π§° Maintenance
- SRTALGO - Skip for redis versions greater than 7.0.0 ([#1831](https://togithub.com/redis/redis-py/issues/1831))
- Documentation updates ([#1822](https://togithub.com/redis/redis-py/issues/1822))
- Add CI action to install package from repository commit hash ([#1781](https://togithub.com/redis/redis-py/issues/1781)) ([#1790](https://togithub.com/redis/redis-py/issues/1790))
- Fix link in lmove docstring ([#1793](https://togithub.com/redis/redis-py/issues/1793))
- Disabling JSON.DEBUG tests ([#1787](https://togithub.com/redis/redis-py/issues/1787))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@Akuli](https://togithub.com/Akuli), [@AvitalFineRedis](https://togithub.com/AvitalFineRedis), [@alisaifee](https://togithub.com/alisaifee), [@ashwani99](https://togithub.com/ashwani99), [@barshaul](https://togithub.com/barshaul), [@chayim](https://togithub.com/chayim), [@dvora-h](https://togithub.com/dvora-h), [@pawl](https://togithub.com/pawl) and [@yanivhershkovich](https://togithub.com/yanivhershkovich)
### [`v4.0.2`](https://togithub.com/redis/redis-py/releases/tag/v4.0.2): Version 4.0.2
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.0.1...v4.0.2)
#### Changes
#### π Bug Fixes
- Restoring Sentinel commands to redis client ([#1723](https://togithub.com/redis/redis-py/issues/1723))
- Better removal of hiredis warning ([#1726](https://togithub.com/redis/redis-py/issues/1726))
#### π§° Maintenance
- Adding links to redis documents in function calls ([#1719](https://togithub.com/redis/redis-py/issues/1719))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@Carlosbogo](https://togithub.com/Carlosbogo), [@sculley](https://togithub.com/sculley) and [@wuisawesome](https://togithub.com/wuisawesome)
### [`v4.0.1`](https://togithub.com/redis/redis-py/releases/tag/v4.0.1): Version 4.0.1
[Compare Source](https://togithub.com/redis/redis-py/compare/v4.0.0...v4.0.1)
#### π Bug Fixes
- Removing command on initial connections ([#1722](https://togithub.com/redis/redis-py/issues/1722))
- Removing hiredis warning when not installed ([#1721](https://togithub.com/redis/redis-py/issues/1721))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@chayim](https://togithub.com/chayim)
### [`v4.0.0`](https://togithub.com/redis/redis-py/releases/tag/v4.0.0): Version 4.0.0
[Compare Source](https://togithub.com/redis/redis-py/compare/3.5.3...v4.0.0)
#### Changes Since 3.5.3
[4.0.0-rc2 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.0.0rc2)
[4.0.0-rc1 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.0.0rc1)
[4.0.0-beta3 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.0.0b3)
[4.0.0-beta2 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.0.0b2)
[4.0.0-beta1 βrelease notes](https://togithub.com/redis/redis-py/releases/tag/v4.0.0b1)
#### π New Features
- FT.EXPLAINCLI intentionally raising NotImplementedError ([#1705](https://togithub.com/redis/redis-py/issues/1705))
#### π Bug Fixes
- Restoring ZRANGE desc for Redis < 6.2.0 ([#1697](https://togithub.com/redis/redis-py/issues/1697))
- Response parsing occasionally fails to parse floats ([#1692](https://togithub.com/redis/redis-py/issues/1692))
- Re-enabling read-the-docs ([#1707](https://togithub.com/redis/redis-py/issues/1707))
#### π§° Maintenance
- Call HSET after FT.CREATE to avoid keyspace scan ([#1706](https://togithub.com/redis/redis-py/issues/1706))
- Unit tests fixes for compatibility ([#1703](https://togithub.com/redis/redis-py/issues/1703))
- Improve documentation about Locks ([#1701](https://togithub.com/redis/redis-py/issues/1701))
- Fixes to allow --redis-url to pass through all tests ([#1700](https://togithub.com/redis/redis-py/issues/1700))
- Fix unit tests running against Redis 4.0.0 ([#1699](https://togithub.com/redis/redis-py/issues/1699))
- Search alias test fix ([#1695](https://togithub.com/redis/redis-py/issues/1695))
- Adding RediSearch/RedisJSON tests ([#1691](https://togithub.com/redis/redis-py/issues/1691))
- Updating codecov rules ([#1689](https://togithub.com/redis/redis-py/issues/1689))
- Tests to validate custom JSON decoders ([#1681](https://togithub.com/redis/redis-py/issues/1681))
- Added breaking icon to release drafter ([#1702](https://togithub.com/redis/redis-py/issues/1702))
#### Contributors
We'd like to thank all the contributors who worked on this release!
[@AvitalFineRedis](https://togithub.com/AvitalFineRedis), [@ashtul](https://togithub.com/ashtul), [@chayim](https://togithub.com/chayim) and [@jerr0328](https://togithub.com/jerr0328)
### [`v3.5.3`](https://togithub.com/redis/redis-py/compare/3.5.2...3.5.3)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.5.2...3.5.3)
### [`v3.5.2`](https://togithub.com/redis/redis-py/compare/3.5.1...3.5.2)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.5.1...3.5.2)
### [`v3.5.1`](https://togithub.com/redis/redis-py/compare/3.5.0...3.5.1)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.5.0...3.5.1)
### [`v3.5.0`](https://togithub.com/redis/redis-py/compare/3.4.1...3.5.0)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.4.1...3.5.0)
### [`v3.4.1`](https://togithub.com/redis/redis-py/compare/3.4.0...3.4.1)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.4.0...3.4.1)
### [`v3.4.0`](https://togithub.com/redis/redis-py/compare/3.3.11...3.4.0)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.3.11...3.4.0)
### [`v3.3.11`](https://togithub.com/redis/redis-py/compare/3.3.10...3.3.11)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.3.10...3.3.11)
### [`v3.3.10`](https://togithub.com/redis/redis-py/compare/3.3.9...3.3.10)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.3.9...3.3.10)
### [`v3.3.9`](https://togithub.com/redis/redis-py/compare/3.3.8...3.3.9)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.3.8...3.3.9)
### [`v3.3.8`](https://togithub.com/redis/redis-py/compare/3.3.7...3.3.8)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.3.7...3.3.8)
### [`v3.3.7`](https://togithub.com/redis/redis-py/compare/3.3.6...3.3.7)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.3.6...3.3.7)
### [`v3.3.6`](https://togithub.com/redis/redis-py/compare/3.3.5...3.3.6)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.3.5...3.3.6)
### [`v3.3.5`](https://togithub.com/redis/redis-py/compare/3.3.4...3.3.5)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.3.4...3.3.5)
### [`v3.3.4`](https://togithub.com/redis/redis-py/compare/3.3.3...3.3.4)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.3.3...3.3.4)
### [`v3.3.3`](https://togithub.com/redis/redis-py/compare/3.3.2...3.3.3)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.3.2...3.3.3)
### [`v3.3.2`](https://togithub.com/redis/redis-py/compare/3.3.1...3.3.2)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.3.1...3.3.2)
### [`v3.3.1`](https://togithub.com/redis/redis-py/compare/3.3.0...3.3.1)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.3.0...3.3.1)
### [`v3.3.0`](https://togithub.com/redis/redis-py/compare/3.2.1...3.3.0)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.2.1...3.3.0)
### [`v3.2.1`](https://togithub.com/redis/redis-py/compare/3.2.0...3.2.1)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.2.0...3.2.1)
### [`v3.2.0`](https://togithub.com/redis/redis-py/compare/3.1.0...3.2.0)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.1.0...3.2.0)
### [`v3.1.0`](https://togithub.com/redis/redis-py/compare/3.0.1...3.1.0)
[Compare Source](https://togithub.com/redis/redis-py/compare/3.0.1...3.1.0)
### [`v3.0.0`](https://togithub.com/redis/redis-py/compare/2.10.6...3.0.0)
[Compare Source](https://togithub.com/redis/redis-py/compare/2.10.6...3.0.0)
Configuration
π Schedule: Branch creation - "" (UTC), 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 has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
==2.10.6
->==4.3.6
GitHub Vulnerability Alerts
CVE-2023-28858
redis-py before 4.5.3, as used in ChatGPT and other products, leaves a connection open after canceling an async Redis command at an inopportune time (in the case of a pipeline operation), and can send response data to the client of an unrelated request in an off-by-one manner. The fixed versions for this CVE Record are 4.3.6, 4.4.3, and 4.5.3, but are believed to be incomplete. CVE-2023-28859 has been assigned the issues caused by the incomplete fixes.
Release Notes
redis/redis-py
### [`v4.3.6`](https://togithub.com/redis/redis-py/releases/tag/v4.3.6): 4.3.6 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.3.5...v4.3.6) ### 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.3.5`](https://togithub.com/redis/redis-py/releases/tag/v4.3.5): Version 4.3.5 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.3.4...v4.3.5) ### Changes This is a maintenance release of redis-py, prior to the release of 4.4.0. This release contains both bug fixes, and features, keeping pace with the release of [redis-stack](https://redis.io/docs/stack/) capabilities. #### π New Features - Add support for TIMESERIES 1.8 ([#2296](https://togithub.com/redis/redis-py/issues/2296)) - Graph - add counters for removed labels and properties ([#2292](https://togithub.com/redis/redis-py/issues/2292)) - Add support for TDIGEST.QUANTILE extensions ([#2317](https://togithub.com/redis/redis-py/issues/2317)) - Add TDIGEST.TRIMMED_MEAN ([#2300](https://togithub.com/redis/redis-py/issues/2300)) - Add support for async GRAPH module ([#2273](https://togithub.com/redis/redis-py/issues/2273)) - Support TDIGEST.MERGESTORE and make compression optional on TDIGEST.CREATE ([#2319](https://togithub.com/redis/redis-py/issues/2319)) - Adding reserve as an alias for create, so that we have BF.RESERVE and CF.RESERVE accuratenly supported ([#2331](https://togithub.com/redis/redis-py/issues/2331)) #### π Bug Fixes - Fix async connection.is_connected to return a boolean value ([#2278](https://togithub.com/redis/redis-py/issues/2278)) - Fix: workaround asyncio bug on connection reset by peer ([#2259](https://togithub.com/redis/redis-py/issues/2259)) - Fix crash: key expire while search ([#2270](https://togithub.com/redis/redis-py/issues/2270)) - Async cluster: fix concurrent pipeline ([#2280](https://togithub.com/redis/redis-py/issues/2280)) - Fix async SEARCH pipeline ([#2316](https://togithub.com/redis/redis-py/issues/2316)) - Fix KeyError in async cluster - initialize before execute multi key commands ([#2439](https://togithub.com/redis/redis-py/issues/2439)) #### π§° Maintenance - Supply chain risk reduction: remove dependency on library named deprecated ([#2386](https://togithub.com/redis/redis-py/issues/2386)) - Search test - Ignore order of the items in the response ([#2322](https://togithub.com/redis/redis-py/issues/2322)) - Fix GRAPH.LIST & TDIGEST.QUANTILE tests ([#2335](https://togithub.com/redis/redis-py/issues/2335)) - Fix TimeSeries range aggregation (twa) tests ([#2358](https://togithub.com/redis/redis-py/issues/2358)) - Mark TOPK.COUNT as deprecated ([#2363](https://togithub.com/redis/redis-py/issues/2363)) #### Contributors We'd like to thank all the contributors who worked on this release! [@sileht](https://togithub.com/sileht), [@utkarshgupta137](https://togithub.com/utkarshgupta137), [@dvora-h](https://togithub.com/dvora-h), [@akx](https://togithub.com/akx), [@bodevone](https://togithub.com/bodevone), [@chayim](https://togithub.com/chayim), [@DvirDukhan](https://togithub.com/DvirDukhan) ### [`v4.3.4`](https://togithub.com/redis/redis-py/releases/tag/v4.3.4): Version 4.3.4 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.3.3...v4.3.4) #### Changes #### π₯ Breaking Changes - Fix backward compatibility from 4.3.2 in Lock.acquire() ([#2254](https://togithub.com/redis/redis-py/issues/2254)) - Fix `XAUTOCLAIM` to return the full response, instead of only keys 2+ ([#2252](https://togithub.com/redis/redis-py/issues/2252)) #### π New Features - Added dynamic_startup_nodes configuration to RedisCluster. ([#2244](https://togithub.com/redis/redis-py/issues/2244), [#2251](https://togithub.com/redis/redis-py/issues/2251)) #### π Bug Fixes - Fix retries in async mode ([#2180](https://togithub.com/redis/redis-py/issues/2180)) - Async cluster: fix simultaneous initialize ([#2231](https://togithub.com/redis/redis-py/issues/2231)) - Uppercased commands in CommandsParser.get_keys ([#2236](https://togithub.com/redis/redis-py/issues/2236)) #### π§° Maintenance - Late eval of the skip condition in async tests([#2248](https://togithub.com/redis/redis-py/issues/2248), [#2253](https://togithub.com/redis/redis-py/issues/2253)) - Reuse the old nodes' connections when a cluster topology refresh is being done ([#2235](https://togithub.com/redis/redis-py/issues/2235)) - Docs: add pipeline examples ([#2240](https://togithub.com/redis/redis-py/issues/2240)) - Correct retention_msecs value ([#2232](https://togithub.com/redis/redis-py/issues/2232)) - Cluster: use pipeline to execute split commands ([#2230](https://togithub.com/redis/redis-py/issues/2230)) - Docs: Add a note about client_setname and client_name difference ([#2247](https://togithub.com/redis/redis-py/issues/2247)) #### Contributors We'd like to thank all the contributors who worked on this release! [@Iglesys347](https://togithub.com/Iglesys347), [@barshaul](https://togithub.com/barshaul), [@dvora-h](https://togithub.com/dvora-h), [@earthgecko](https://togithub.com/earthgecko), [@elemoine](https://togithub.com/elemoine), [@falk-h](https://togithub.com/falk-h), [@kristjanvalur](https://togithub.com/kristjanvalur), [@psrok1](https://togithub.com/psrok1) and [@utkarshgupta137](https://togithub.com/utkarshgupta137) ### [`v4.3.3`](https://togithub.com/redis/redis-py/releases/tag/v4.3.3): Version 4.3.3 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.3.2...v4.3.3) #### Changes #### π Bug Fixes - Fix Lock crash, and versioning 4.3.3 ([#2210](https://togithub.com/redis/redis-py/issues/2210)) #### π§° Maintenance - Async cluster: improve docs ([#2208](https://togithub.com/redis/redis-py/issues/2208)) #### Contributors We'd like to thank all the contributors who worked on this release! [@dvora-h](https://togithub.com/dvora-h) and [@utkarshgupta137](https://togithub.com/utkarshgupta137) ### [`v4.3.2`](https://togithub.com/redis/redis-py/releases/tag/v4.3.2): Version 4.3.2 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.3.1...v4.3.2) #### Changes #### π New Features - SHUTDOWN - add support for the new NOW, FORCE and ABORT modifiers ([#2150](https://togithub.com/redis/redis-py/issues/2150)) - Adding pipeline support for async cluster ([#2199](https://togithub.com/redis/redis-py/issues/2199)) - Support CF.MEXISTS + Clean bf/commands.py ([#2184](https://togithub.com/redis/redis-py/issues/2184)) - Extending query_params for FT.PROFILE ([#2198](https://togithub.com/redis/redis-py/issues/2198)) - Implementing ClusterPipeline Lock ([#2190](https://togithub.com/redis/redis-py/issues/2190)) #### π Bug Fixes - Set default response_callbacks to redis.asyncio.cluster.ClusterNode ([#2201](https://togithub.com/redis/redis-py/issues/2201)) - Add default None for maxlen at xtrim command ([#2188](https://togithub.com/redis/redis-py/issues/2188)) #### π§° Maintenance - Async cluster: add/update typing ([#2195](https://togithub.com/redis/redis-py/issues/2195)) - Changed list type to single element type ([#2203](https://togithub.com/redis/redis-py/issues/2203)) - Made sync lock consistent and added types to it ([#2137](https://togithub.com/redis/redis-py/issues/2137)) - Async cluster: optimisations ([#2205](https://togithub.com/redis/redis-py/issues/2205)) - Fix typos in README ([#2206](https://togithub.com/redis/redis-py/issues/2206)) - Fix modules links to https://redis.io/commands/ ([#2185](https://togithub.com/redis/redis-py/issues/2185)) #### Contributors We'd like to thank all the contributors who worked on this release! [@Avital-Fine](https://togithub.com/Avital-Fine), [@Olegt0rr](https://togithub.com/Olegt0rr), [@WisdomPill](https://togithub.com/WisdomPill), [@dvora-h](https://togithub.com/dvora-h), [@grippy](https://togithub.com/grippy), [@mfgnik](https://togithub.com/mfgnik), [@rapidia](https://togithub.com/rapidia), [@ryanrussell](https://togithub.com/ryanrussell) and [@utkarshgupta137](https://togithub.com/utkarshgupta137) ### [`v4.3.1`](https://togithub.com/redis/redis-py/releases/tag/v4.3.1): Version 4.3.1 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.3.0...v4.3.1) #### Changes #### π Bug Fixes - Fix asyncio Search crash ([#2175](https://togithub.com/redis/redis-py/issues/2175)) #### Contributors We'd like to thank all the contributors who worked on this release! [@dvora-h](https://togithub.com/dvora-h) ### [`v4.3.0`](https://togithub.com/redis/redis-py/releases/tag/v4.3.0): Version 4.3.0 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.2.2...v4.3.0) #### Changes #### π₯ Breaking Changes - Replace OSError exceptions from `can_read` with `redis.ConnectionError` ([#2140](https://togithub.com/redis/redis-py/issues/2140)) - Updated FUNCTION LOAD changes (from release 7.0 rc3 to support redis 7.0 final) ([#2139](https://togithub.com/redis/redis-py/issues/2139)) #### π New Features - Get command keys for subcommands ([#2170](https://togithub.com/redis/redis-py/issues/2170)) - Add support for CLUSTER SHARDS ([#2151](https://togithub.com/redis/redis-py/issues/2151)) - Add support for COMMAND LIST ([#2149](https://togithub.com/redis/redis-py/issues/2149)) - Add Async RedisCluster ([#2099](https://togithub.com/redis/redis-py/issues/2099)) - ACL SETUSER - add selectors and key based permissions ([#2161](https://togithub.com/redis/redis-py/issues/2161)) - Support for redis 7 streams features ([#2157](https://togithub.com/redis/redis-py/issues/2157)) - Async Connection: Allow `PubSub.run()` without previous `subscribe()` ([#2148](https://togithub.com/redis/redis-py/issues/2148)) - Implemented LATENCY HISTOGRAM by always throwing NotImplementedError ([#2147](https://togithub.com/redis/redis-py/issues/2147)) - Add async supoort for SEARCH commands ([#2096](https://togithub.com/redis/redis-py/issues/2096)) - `Retry()`: Support negative `retries` value ([#2110](https://togithub.com/redis/redis-py/issues/2110)) - Add support for MODULE LOADEX ([#2146](https://togithub.com/redis/redis-py/issues/2146)) - INFO - add support for taking multiple section arguments ([#2145](https://togithub.com/redis/redis-py/issues/2145)) - CONFIG SET - add the ability to set multiple parameters in one call ([#2143](https://togithub.com/redis/redis-py/issues/2143)) - CONFIG GET - add the ability to pass multiple pattern parameters in one call ([#2142](https://togithub.com/redis/redis-py/issues/2142)) - Add support for COMMAND GETKEYSANDFLAGS ([#2141](https://togithub.com/redis/redis-py/issues/2141)) - Support CASESENSITIVE for TAG fields ([#2112](https://togithub.com/redis/redis-py/issues/2112)) #### π Bug Fixes - Rename 'update_supported_erros' to 'update_supported_errors' in Retry module ([#2144](https://togithub.com/redis/redis-py/issues/2144)) - Fix execute_command() determining nodes error when no key command ([#2097](https://togithub.com/redis/redis-py/issues/2097)) - Fix incorrect return statement in auth ([#2086](https://togithub.com/redis/redis-py/issues/2086)) ([#2092](https://togithub.com/redis/redis-py/issues/2092)) #### π§° Maintenance - Add unittest for PubSub.connect() ([#2167](https://togithub.com/redis/redis-py/issues/2167)) - Fix incorrect return annotation in asyncio.lock ([#2155](https://togithub.com/redis/redis-py/issues/2155)) - Minor cleanups in commands/cluster.py ([#2094](https://togithub.com/redis/redis-py/issues/2094)) - Update xtrim type annotation ([#2093](https://togithub.com/redis/redis-py/issues/2093)) - Async tests for redis commands, json, bloom, timeseries ([#2087](https://togithub.com/redis/redis-py/issues/2087)) - Fixed typing in getex command ([#2088](https://togithub.com/redis/redis-py/issues/2088)) #### Contributors We'd like to thank all the contributors who worked on this release! [@Andrew-Chen-Wang](https://togithub.com/Andrew-Chen-Wang), [@Ankhas](https://togithub.com/Ankhas), [@Avital-Fine](https://togithub.com/Avital-Fine), [@JelleZijlstra](https://togithub.com/JelleZijlstra), [@chayim](https://togithub.com/chayim), [@dvora-h](https://togithub.com/dvora-h), [@enjoy-binbin](https://togithub.com/enjoy-binbin), [@kamyabzad](https://togithub.com/kamyabzad), [@kristjanvalur](https://togithub.com/kristjanvalur), [@richli](https://togithub.com/richli), [@suxb201](https://togithub.com/suxb201) and [@utkarshgupta137](https://togithub.com/utkarshgupta137) ### [`v4.2.2`](https://togithub.com/redis/redis-py/releases/tag/v4.2.2): Version 4.2.2 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.2.1...v4.2.2) #### Changes #### π New Features - Extended "CLUSTER NODES" parser to support special slot entries ([#2080](https://togithub.com/redis/redis-py/issues/2080)) - π₯ NOTE: This change is potentially breaking depending on your use of specialized slot entries. Support for bytes was added - Add support for BIT|BYTE option available in redis 7 ([#2068](https://togithub.com/redis/redis-py/issues/2068)) #### π Bug Fixes - Fix imports in for async ([#2079](https://togithub.com/redis/redis-py/issues/2079)) - Always clear reference to closed reader/writer ([#2077](https://togithub.com/redis/redis-py/issues/2077)) - Fix disable decode for dump command in async ([#2070](https://togithub.com/redis/redis-py/issues/2070)) #### π§° Maintenance - Cluster commands linkdocs ([#2069](https://togithub.com/redis/redis-py/issues/2069)) - Clarify bit type in setbit/getbit documentation ([#2078](https://togithub.com/redis/redis-py/issues/2078)) - Clean up test supoort enterprise environments ([#2082](https://togithub.com/redis/redis-py/issues/2082)) - Vector similarity search example ([#2083](https://togithub.com/redis/redis-py/issues/2083)) - Fix search query with params tests ([#2076](https://togithub.com/redis/redis-py/issues/2076)) #### Contributors We'd like to thank all the contributors who worked on this release! [@barshaul](https://togithub.com/barshaul), [@beasteers](https://togithub.com/beasteers), [@dsoprea](https://togithub.com/dsoprea), [@dvora-h](https://togithub.com/dvora-h), [@enjoy-binbin](https://togithub.com/enjoy-binbin), [@nosammai](https://togithub.com/nosammai) and [@wwqgtxx](https://togithub.com/wwqgtxx) ### [`v4.2.1`](https://togithub.com/redis/redis-py/releases/tag/v4.2.1): Version 4.2.1 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.2.0...v4.2.1) #### Changes #### π New Features - Add support for CLUSTER MYID ([#2063](https://togithub.com/redis/redis-py/issues/2063)) - Add dialect support for RediSearch queries ([#2071](https://togithub.com/redis/redis-py/issues/2071)) #### π§° Maintenance - Fix black ([#2075](https://togithub.com/redis/redis-py/issues/2075)) - Make typing_extensions conditional to Python < 3.8 ([#2062](https://togithub.com/redis/redis-py/issues/2062)) #### Contributors We'd like to thank all the contributors who worked on this release! [@dvora-h](https://togithub.com/dvora-h), [@enjoy-binbin](https://togithub.com/enjoy-binbin) and [@mgorny](https://togithub.com/mgorny) ### [`v4.2.0`](https://togithub.com/redis/redis-py/releases/tag/v4.2.0): Version 4.2.0 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.1.4...v4.2.0) #### Changes [4.2.0-rc1 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.2.0rc1) [4.2.0-rc2 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.2.0rc2) [4.2.0-rc3 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.2.0rc3) #### π New Features - Support for Vector Fields for Vector Similarity Search ([#2041](https://togithub.com/redis/redis-py/issues/2041)) #### π Bug Fixes - Fix cluster scan command cursors & scan_iter ([#2054](https://togithub.com/redis/redis-py/issues/2054)) #### π§° Maintenance - Remove verbose logging from cluster initializers ([#2055](https://togithub.com/redis/redis-py/issues/2055)) - Mark tests for redis-stack ([#2052](https://togithub.com/redis/redis-py/issues/2052)) #### Contributors We'd like to thank all the contributors who worked on this release! [@Avital-Fine](https://togithub.com/Avital-Fine), [@dvora-h](https://togithub.com/dvora-h), [@joni-](https://togithub.com/joni-) and [@utkarshgupta137](https://togithub.com/utkarshgupta137) ### [`v4.1.4`](https://togithub.com/redis/redis-py/releases/tag/v4.1.4): Version 4.1.4 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.1.3...v4.1.4) #### Changes #### π New Features - Adding ExecutionPlan support for graph ([#1993](https://togithub.com/redis/redis-py/issues/1993)) - Vector similiary search support ([#1986](https://togithub.com/redis/redis-py/issues/1986)) ### [`v4.1.3`](https://togithub.com/redis/redis-py/releases/tag/v4.1.3): Version 4.1.3 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.1.2...v4.1.3) #### π Bug Fixes - Fix flushdb and flushall ([#1926](https://togithub.com/redis/redis-py/issues/1926)) #### π§° Maintenance - Add redis5 and redis4 dockers ([#1871](https://togithub.com/redis/redis-py/issues/1871)) - Change json.clear test multi to be up to date with redisjson ([#1922](https://togithub.com/redis/redis-py/issues/1922)) - Fixing volume for unstable_cluster docker ([#1914](https://togithub.com/redis/redis-py/issues/1914)) - Update changes file with changes since 4.0.0-beta2 ([#1915](https://togithub.com/redis/redis-py/issues/1915)) #### Contributors We'd like to thank all the contributors who worked on this release! [@MeirShpilraien](https://togithub.com/MeirShpilraien), [@dvora-h](https://togithub.com/dvora-h) ### [`v4.1.2`](https://togithub.com/redis/redis-py/releases/tag/v4.1.2): Version 4.1.2 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.1.1...v4.1.2) #### Changes #### π New Features - Invalid OCSP certificates should raise ConnectionError on failed validation ([#1907](https://togithub.com/redis/redis-py/issues/1907)) - Added retry mechanism on socket timeouts when connecting to the server ([#1895](https://togithub.com/redis/redis-py/issues/1895)) #### π Bug Fixes - LMOVE, BLMOVE return incorrect responses ([#1906](https://togithub.com/redis/redis-py/issues/1906)) - Fixing AttributeError in UnixDomainSocketConnection ([#1903](https://togithub.com/redis/redis-py/issues/1903)) - Fixing TypeError in GraphCommands.explain ([#1901](https://togithub.com/redis/redis-py/issues/1901)) #### π§° Maintenance - For tests, increasing wait time for the cluster ([#1908](https://togithub.com/redis/redis-py/issues/1908)) - Increased pubsub's wait_for_messages timeout to prevent flaky tests ([#1893](https://togithub.com/redis/redis-py/issues/1893)) - README code snippets formatted to highlight properly ([#1888](https://togithub.com/redis/redis-py/issues/1888)) - Fix link in the main page ([#1897](https://togithub.com/redis/redis-py/issues/1897)) - Documentation fixes: JSON Example, SSL Connection Examples, RTD version ([#1887](https://togithub.com/redis/redis-py/issues/1887)) - Direct link to readthedocs ([#1885](https://togithub.com/redis/redis-py/issues/1885)) #### Contributors We'd like to thank all the contributors who worked on this release! [@barshaul](https://togithub.com/barshaul), [@chayim](https://togithub.com/chayim), [@dvora-h](https://togithub.com/dvora-h), [@soumendrak](https://togithub.com/soumendrak) and [@varunchopra](https://togithub.com/varunchopra) ### [`v4.1.1`](https://togithub.com/redis/redis-py/releases/tag/v4.1.1): Version 4.1.1 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.1.0...v4.1.1) #### Changes #### π New Features - Add retries to connections in Sentinel Pools ([#1879](https://togithub.com/redis/redis-py/issues/1879)) - OCSP Stapling Support ([#1873](https://togithub.com/redis/redis-py/issues/1873)) - Define incr/decr as aliases of incrby/decrby ([#1874](https://togithub.com/redis/redis-py/issues/1874)) - FT.CREATE - support MAXTEXTFIELDS, TEMPORARY, NOHL, NOFREQS, SKIPINITIALSCAN ([#1847](https://togithub.com/redis/redis-py/issues/1847)) #### π Bug Fixes - Timeseries docs fix ([#1877](https://togithub.com/redis/redis-py/issues/1877)) - get_connection: catch OSError too ([#1832](https://togithub.com/redis/redis-py/issues/1832)) - Set keys var otherwise variable not created ([#1853](https://togithub.com/redis/redis-py/issues/1853)) - Clusters should optionally require full slot coverage ([#1845](https://togithub.com/redis/redis-py/issues/1845)) #### π§° Maintenance - Triple quote docstrings in client.py PEP 257 ([#1876](https://togithub.com/redis/redis-py/issues/1876)) - syncing requirements ([#1870](https://togithub.com/redis/redis-py/issues/1870)) - Typo and typing in GraphCommands documentation ([#1855](https://togithub.com/redis/redis-py/issues/1855)) - Allowing poetry and redis-py to install together ([#1854](https://togithub.com/redis/redis-py/issues/1854)) - `setup.py`: Add project_urls for PyPI ([#1867](https://togithub.com/redis/redis-py/issues/1867)) - Support test with redis unstable docker ([#1850](https://togithub.com/redis/redis-py/issues/1850)) - Connection examples ([#1835](https://togithub.com/redis/redis-py/issues/1835)) - Documentation cleanup ([#1841](https://togithub.com/redis/redis-py/issues/1841)) #### Contributors We'd like to thank all the contributors who worked on this release! [@Andrew-Chen-Wang](https://togithub.com/Andrew-Chen-Wang), [@AvitalFineRedis](https://togithub.com/AvitalFineRedis), [@Enchufa2](https://togithub.com/Enchufa2), [@barshaul](https://togithub.com/barshaul), [@chayim](https://togithub.com/chayim), [@dvora-h](https://togithub.com/dvora-h), [@jdieter](https://togithub.com/jdieter), [@salty-horse](https://togithub.com/salty-horse), [@sbv-csis](https://togithub.com/sbv-csis) and [@tony](https://togithub.com/tony) ### [`v4.1.0`](https://togithub.com/redis/redis-py/releases/tag/v4.1.0): Version 4.1.0 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.0.2...v4.1.0) #### Changes [4.1.0-rc2 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.1.0rc2) [4.1.0-rc1 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.1.0rc1) #### π New Features - OCSP stapling support ([#1820](https://togithub.com/redis/redis-py/issues/1820)) - Support for SELECT ([#1825](https://togithub.com/redis/redis-py/issues/1825)) - Support for specifying error types with retry ([#1817](https://togithub.com/redis/redis-py/issues/1817)) - Support for RESET command since Redis 6.2.0 ([#1824](https://togithub.com/redis/redis-py/issues/1824)) - Support CLIENT TRACKING ([#1612](https://togithub.com/redis/redis-py/issues/1612)) - Support WRITE in CLIENT PAUSE ([#1549](https://togithub.com/redis/redis-py/issues/1549)) - JSON set_file and set_path support ([#1818](https://togithub.com/redis/redis-py/issues/1818)) - Allow ssl_ca_path with rediss:// urls ([#1814](https://togithub.com/redis/redis-py/issues/1814)) - Support for password-encrypted SSL private keys ([#1782](https://togithub.com/redis/redis-py/issues/1782)) - Support SYNC and PSYNC ([#1741](https://togithub.com/redis/redis-py/issues/1741)) #### π Bug Fixes - Retry on error exception and timeout fixes ([#1821](https://togithub.com/redis/redis-py/issues/1821)) - Fixing read race condition during pubsub ([#1737](https://togithub.com/redis/redis-py/issues/1737)) - Fixing exception in listen ([#1823](https://togithub.com/redis/redis-py/issues/1823)) - Fixed MovedError, and stopped iterating through startup nodes when slots are fully covered ([#1819](https://togithub.com/redis/redis-py/issues/1819)) - Socket not closing after server disconnect ([#1797](https://togithub.com/redis/redis-py/issues/1797)) - Single sourcing the package version ([#1791](https://togithub.com/redis/redis-py/issues/1791)) - Ensure redis_connect_func is set on uds connection ([#1794](https://togithub.com/redis/redis-py/issues/1794)) #### π§° Maintenance - SRTALGO - Skip for redis versions greater than 7.0.0 ([#1831](https://togithub.com/redis/redis-py/issues/1831)) - Documentation updates ([#1822](https://togithub.com/redis/redis-py/issues/1822)) - Add CI action to install package from repository commit hash ([#1781](https://togithub.com/redis/redis-py/issues/1781)) ([#1790](https://togithub.com/redis/redis-py/issues/1790)) - Fix link in lmove docstring ([#1793](https://togithub.com/redis/redis-py/issues/1793)) - Disabling JSON.DEBUG tests ([#1787](https://togithub.com/redis/redis-py/issues/1787)) #### Contributors We'd like to thank all the contributors who worked on this release! [@Akuli](https://togithub.com/Akuli), [@AvitalFineRedis](https://togithub.com/AvitalFineRedis), [@alisaifee](https://togithub.com/alisaifee), [@ashwani99](https://togithub.com/ashwani99), [@barshaul](https://togithub.com/barshaul), [@chayim](https://togithub.com/chayim), [@dvora-h](https://togithub.com/dvora-h), [@pawl](https://togithub.com/pawl) and [@yanivhershkovich](https://togithub.com/yanivhershkovich) ### [`v4.0.2`](https://togithub.com/redis/redis-py/releases/tag/v4.0.2): Version 4.0.2 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.0.1...v4.0.2) #### Changes #### π Bug Fixes - Restoring Sentinel commands to redis client ([#1723](https://togithub.com/redis/redis-py/issues/1723)) - Better removal of hiredis warning ([#1726](https://togithub.com/redis/redis-py/issues/1726)) #### π§° Maintenance - Adding links to redis documents in function calls ([#1719](https://togithub.com/redis/redis-py/issues/1719)) #### Contributors We'd like to thank all the contributors who worked on this release! [@Carlosbogo](https://togithub.com/Carlosbogo), [@sculley](https://togithub.com/sculley) and [@wuisawesome](https://togithub.com/wuisawesome) ### [`v4.0.1`](https://togithub.com/redis/redis-py/releases/tag/v4.0.1): Version 4.0.1 [Compare Source](https://togithub.com/redis/redis-py/compare/v4.0.0...v4.0.1) #### π Bug Fixes - Removing command on initial connections ([#1722](https://togithub.com/redis/redis-py/issues/1722)) - Removing hiredis warning when not installed ([#1721](https://togithub.com/redis/redis-py/issues/1721)) #### Contributors We'd like to thank all the contributors who worked on this release! [@chayim](https://togithub.com/chayim) ### [`v4.0.0`](https://togithub.com/redis/redis-py/releases/tag/v4.0.0): Version 4.0.0 [Compare Source](https://togithub.com/redis/redis-py/compare/3.5.3...v4.0.0) #### Changes Since 3.5.3 [4.0.0-rc2 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.0.0rc2) [4.0.0-rc1 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.0.0rc1) [4.0.0-beta3 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.0.0b3) [4.0.0-beta2 release notes](https://togithub.com/redis/redis-py/releases/tag/v4.0.0b2) [4.0.0-beta1 βrelease notes](https://togithub.com/redis/redis-py/releases/tag/v4.0.0b1) #### π New Features - FT.EXPLAINCLI intentionally raising NotImplementedError ([#1705](https://togithub.com/redis/redis-py/issues/1705)) #### π Bug Fixes - Restoring ZRANGE desc for Redis < 6.2.0 ([#1697](https://togithub.com/redis/redis-py/issues/1697)) - Response parsing occasionally fails to parse floats ([#1692](https://togithub.com/redis/redis-py/issues/1692)) - Re-enabling read-the-docs ([#1707](https://togithub.com/redis/redis-py/issues/1707)) #### π§° Maintenance - Call HSET after FT.CREATE to avoid keyspace scan ([#1706](https://togithub.com/redis/redis-py/issues/1706)) - Unit tests fixes for compatibility ([#1703](https://togithub.com/redis/redis-py/issues/1703)) - Improve documentation about Locks ([#1701](https://togithub.com/redis/redis-py/issues/1701)) - Fixes to allow --redis-url to pass through all tests ([#1700](https://togithub.com/redis/redis-py/issues/1700)) - Fix unit tests running against Redis 4.0.0 ([#1699](https://togithub.com/redis/redis-py/issues/1699)) - Search alias test fix ([#1695](https://togithub.com/redis/redis-py/issues/1695)) - Adding RediSearch/RedisJSON tests ([#1691](https://togithub.com/redis/redis-py/issues/1691)) - Updating codecov rules ([#1689](https://togithub.com/redis/redis-py/issues/1689)) - Tests to validate custom JSON decoders ([#1681](https://togithub.com/redis/redis-py/issues/1681)) - Added breaking icon to release drafter ([#1702](https://togithub.com/redis/redis-py/issues/1702)) #### Contributors We'd like to thank all the contributors who worked on this release! [@AvitalFineRedis](https://togithub.com/AvitalFineRedis), [@ashtul](https://togithub.com/ashtul), [@chayim](https://togithub.com/chayim) and [@jerr0328](https://togithub.com/jerr0328) ### [`v3.5.3`](https://togithub.com/redis/redis-py/compare/3.5.2...3.5.3) [Compare Source](https://togithub.com/redis/redis-py/compare/3.5.2...3.5.3) ### [`v3.5.2`](https://togithub.com/redis/redis-py/compare/3.5.1...3.5.2) [Compare Source](https://togithub.com/redis/redis-py/compare/3.5.1...3.5.2) ### [`v3.5.1`](https://togithub.com/redis/redis-py/compare/3.5.0...3.5.1) [Compare Source](https://togithub.com/redis/redis-py/compare/3.5.0...3.5.1) ### [`v3.5.0`](https://togithub.com/redis/redis-py/compare/3.4.1...3.5.0) [Compare Source](https://togithub.com/redis/redis-py/compare/3.4.1...3.5.0) ### [`v3.4.1`](https://togithub.com/redis/redis-py/compare/3.4.0...3.4.1) [Compare Source](https://togithub.com/redis/redis-py/compare/3.4.0...3.4.1) ### [`v3.4.0`](https://togithub.com/redis/redis-py/compare/3.3.11...3.4.0) [Compare Source](https://togithub.com/redis/redis-py/compare/3.3.11...3.4.0) ### [`v3.3.11`](https://togithub.com/redis/redis-py/compare/3.3.10...3.3.11) [Compare Source](https://togithub.com/redis/redis-py/compare/3.3.10...3.3.11) ### [`v3.3.10`](https://togithub.com/redis/redis-py/compare/3.3.9...3.3.10) [Compare Source](https://togithub.com/redis/redis-py/compare/3.3.9...3.3.10) ### [`v3.3.9`](https://togithub.com/redis/redis-py/compare/3.3.8...3.3.9) [Compare Source](https://togithub.com/redis/redis-py/compare/3.3.8...3.3.9) ### [`v3.3.8`](https://togithub.com/redis/redis-py/compare/3.3.7...3.3.8) [Compare Source](https://togithub.com/redis/redis-py/compare/3.3.7...3.3.8) ### [`v3.3.7`](https://togithub.com/redis/redis-py/compare/3.3.6...3.3.7) [Compare Source](https://togithub.com/redis/redis-py/compare/3.3.6...3.3.7) ### [`v3.3.6`](https://togithub.com/redis/redis-py/compare/3.3.5...3.3.6) [Compare Source](https://togithub.com/redis/redis-py/compare/3.3.5...3.3.6) ### [`v3.3.5`](https://togithub.com/redis/redis-py/compare/3.3.4...3.3.5) [Compare Source](https://togithub.com/redis/redis-py/compare/3.3.4...3.3.5) ### [`v3.3.4`](https://togithub.com/redis/redis-py/compare/3.3.3...3.3.4) [Compare Source](https://togithub.com/redis/redis-py/compare/3.3.3...3.3.4) ### [`v3.3.3`](https://togithub.com/redis/redis-py/compare/3.3.2...3.3.3) [Compare Source](https://togithub.com/redis/redis-py/compare/3.3.2...3.3.3) ### [`v3.3.2`](https://togithub.com/redis/redis-py/compare/3.3.1...3.3.2) [Compare Source](https://togithub.com/redis/redis-py/compare/3.3.1...3.3.2) ### [`v3.3.1`](https://togithub.com/redis/redis-py/compare/3.3.0...3.3.1) [Compare Source](https://togithub.com/redis/redis-py/compare/3.3.0...3.3.1) ### [`v3.3.0`](https://togithub.com/redis/redis-py/compare/3.2.1...3.3.0) [Compare Source](https://togithub.com/redis/redis-py/compare/3.2.1...3.3.0) ### [`v3.2.1`](https://togithub.com/redis/redis-py/compare/3.2.0...3.2.1) [Compare Source](https://togithub.com/redis/redis-py/compare/3.2.0...3.2.1) ### [`v3.2.0`](https://togithub.com/redis/redis-py/compare/3.1.0...3.2.0) [Compare Source](https://togithub.com/redis/redis-py/compare/3.1.0...3.2.0) ### [`v3.1.0`](https://togithub.com/redis/redis-py/compare/3.0.1...3.1.0) [Compare Source](https://togithub.com/redis/redis-py/compare/3.0.1...3.1.0) ### [`v3.0.0`](https://togithub.com/redis/redis-py/compare/2.10.6...3.0.0) [Compare Source](https://togithub.com/redis/redis-py/compare/2.10.6...3.0.0)Configuration
π Schedule: Branch creation - "" (UTC), 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 has been generated by Mend Renovate. View repository job log here.