Async Redis clients now support server-pushed maintenance notifications, matching the sync client. New commands include LMOVEM/BLMOVEM for lists, SDIFFCARD/SUNIONCARD for sets, MAXCOUNT/MAXSIZE for XREAD/XREADGROUP, and multiple Timeseries and Search additions. Bug fixes address Sentinel pool capacity loss, RESP3 hiredis connection detection, and geo lat/lon swap.
redis-py
npx @buildinternet/releases get redis-pyFixed pubsub's listen method to be blocking, async cluster node connections no longer leak on write errors, and hiredis readiness checks now work with high file descriptors. Also fixed RESP3 FT.SEARCH parsing with bytes-typed keys, RedisCluster-backed MultiDBClient, Unix socket notifications, and pooled connection release on cancelled Pipeline.reset().
Fixed a bug where explicit None values were not preserved for client metadata config. PyJWT dependency updated to address vulnerabilities.
Fixed a bug where explicit None values for client metadata config were not being preserved. Also updated PyJWT dependency and addressed dependency vulnerabilities.
Fixed a bug where explicit None values for client metadata config were not being preserved. Dependency vulnerabilities have been addressed and PyJWT updated.
redis-py now uses RESP3 on the wire by default while preserving legacy RESP2-compatible Python response shapes for existing applications. Set legacy_responses=False to migrate to unified responses or protocol=2 to force RESP2. Full asyncio Cluster PubSub support is now available with shard-channel capabilities, keyspace notifications are supported across sync and async modes for standalone and cluster deployments, and Redis Arrays data type is now supported with new AR* command helpers.
Changes
Unified command response types across RESP2 and RESP3 protocols
In this release, the command response types across RESP2 and RESP3 protocols are unified, ensuring that the same command returns the same Python type and structure regardless of which protocol…
Changes
Async Cluster PubSub & Keyspace Notifications
This release introduces full asyncio Cluster PubSub support, bringing shard-channel capabilities (SSUBSCRIBE, SUNSUBSCRIBE, SPUBLISH) to the async RedisCluster client. The new ClusterPubSub class in…
Changes
🐛 Bug Fixes
- Fix AttributeError in cluster metrics recording when connection is None or ClusterNode object instance is used to extract the connection info (#3999)
- Fixing security concern in repr methods for ConnectionPools - passwords might leak in…
Changes
OpenTelemetry Native Metrics Support for asynchronous clients Added comprehensive OpenTelemetry metrics support for asynchronous clients following the [OpenTelemetry Database Client Semantic…
Changes
🐛 Bug Fixes
- Handle connection attributes conditionally for metrics and set connection data on exceptions in cluster error handling (#3964)
⚠️ Deprecations
- Removed batch_size and consumer_name attributes from OTel metrics (#3978)
🧰…
Changes
Redis 8.6 Support Added support for Redis 8.6, including new commands and features for streams idempotent production and HOTKEYS.
Smart Client Handoff (Maintenance Notifications) for Cluster note: Pending a Redis Enterprise version release
This…
Changes
🧪 Experimental Features
- Added initial health check policies, refactored add_database method (#3906)
🧰 Maintenance
- Disabled SCH in MultiDBClient underlying clients by default (#3938)
- Added logging for MultiDBClients (#3865 #3896)
We'd…
Changes
🚀 New Features
- Adding MSETEX command support. (#3823)
- Adding CLAIM option to XREADGROUP command + unit tests (#3825)
- Apply routing and response aggregation policies in OSS Cluster mode (#3834)
🧪 Experimental Features
- Adding support for CAS/CAD…
Changes
This release adds small fixes related to documentation.
🧰 Maintenance
- Add 'multi_database' section to documentation index (313d93f)
- Revised multi-database client documentation(78df745)
- Adding info about Multi-database client in README.md…
Changes
One of the main features introduced in this release is a new type of client MultiDBClient. The purpose of this client is a communication with multiple databases that are eventually consistent (Active-Active setup) and handling failures by failover across…
Changes
Main feature introduced in this beta release is a new type of client MultiDBClient. The purpose of this client is a communication with multiple databases that are eventually consistent (Active-Active setup) and handling failures by failover across databases.…
Changes
🚀 New Features
- Adding ssl_verify_flags_config argument for ssl connection configuration (#3772)
- Adding 'auto' option to MaintNotificationsConfig.enabled (#3779)
🔥 Breaking changes
- (Breaking compared to previous beta release) Renaming of classes…
Changes
🚀 New Features
- Support for maintenance push notifications handling during server upgrade or maintenance procedures. (#3756)
- Adding WITHATTRIBS option to vector set's vsim command. (#3746)
🔥 Breaking changes
- Adding abstract method declaration for…
Changes
🚀 New Features
- Added epsilon property to the vsim command (#3723)
🧰 Maintenance
- Updating the latest Redis image for github pipeline testing (#3726)
We'd like to thank all the contributors who worked on this release! @htemelski-redis…
