Change8

Migrating to Redis Python v8.0.0b1

Version v8.0.0b1 introduces 2 breaking changes. This guide details how to update your code.

Released: 4/8/2026

2
Breaking Changes
1
Migration Steps
9
Affected Symbols

⚠️ Check Your Code

If you use any of these symbols, you need to read this guide:

redis.asyncio.cluster.ClusterPubSubKeyspaceNotificationsClusterKeyspaceNotificationsAsyncKeyspaceNotificationsAsyncClusterKeyspaceNotificationsKeyspaceChannelKeyeventChannelcore.pyregister_script

Breaking Changes

Issue #1

Type hints for core commands, VectorSet commands, and module commands now use @overload to provide distinct return types for sync and async clients. Code relying on the old union return types (e.g., Union[Awaitable[Any], Any]) in type annotations may need updates for static analysis tools.

Issue #2

The introduction of Keyspace Notifications in cluster mode implies that subscriptions are automatically handled across primary nodes, which might affect custom logic relying on manual subscription management across nodes.

Migration Steps

  1. 1
    If using static type checkers (like mypy), review code that consumes return types from core, VectorSet, or module commands, as the return type is now strictly typed for sync or async contexts instead of a union.

Release Summary

This release introduces full asyncio Cluster PubSub support and comprehensive Redis Keyspace Notification APIs for both sync and async clients. It also resolves static analysis issues by strictly typing sync/async command return values using overloads.

Need More Details?

View the full release notes and all changes for Redis Python v8.0.0b1.

View Full Changelog