-
-
Notifications
You must be signed in to change notification settings - Fork 976
python 3.14 compatibility: allow redis 7 #2443
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Hello, celery[redis] and kombu[redis] are not installable on python 3.14 because they pin an old version of redis. redis added support for python 3.14 in redis 7.1.0 https://github.com/redis/redis-py/releases Could you please remove this pin? Pretty sure it's useless and was added over defensely, it was added to stop 6.5 when there was no 6.5 or 7.0 release. Regards.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2443 +/- ##
=======================================
Coverage 81.19% 81.19%
=======================================
Files 77 77
Lines 9738 9738
Branches 1098 1098
=======================================
Hits 7907 7907
Misses 1625 1625
Partials 206 206 ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR updates the Redis dependency constraint to allow redis-py version 7.x for Python 3.14 compatibility. The PR description indicates that celery[redis] and kombu[redis] are not installable on Python 3.14 because of the restrictive upper bound pinning, and that redis-py added Python 3.14 support in version 7.1.0.
Changes:
- Updated the upper bound constraint for redis from
<6.5to<8inrequirements/extras/redis.txt
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| @@ -1 +1 @@ | |||
| redis>=4.5.2,!=4.5.5,!=5.0.2,<6.5 | |||
| redis>=4.5.2,!=4.5.5,!=5.0.2,<8 | |||
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The change from <6.5 to <8 is a significant version jump that skips redis 6.x and 7.x entirely without testing. While the PR description mentions redis 7.1.0 added Python 3.14 support, the codebase currently has version checks for redis.VERSION[0] >= 3 and redis.VERSION < (3, 2, 0) which suggest it was designed for redis-py 3.x and above. Consider: (1) updating to <7 first to allow redis 6.x versions that are known to work, or (2) ensuring CI tests pass with redis 7.x before releasing this change. The version constraint progression has been <6 → <6.2 → <6.5 (implicitly) → <8 (proposed), which is a large jump.
| redis>=4.5.2,!=4.5.5,!=5.0.2,<8 | |
| redis>=4.5.2,!=4.5.5,!=5.0.2,<7 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The change from <6.5 to <8 is a significant version jump that skips redis 6.x and 7.x entirely without testing.
this is an extremely stupid reply from the AI. 6.x was already used by the <6.5 constraint.
| @@ -1 +1 @@ | |||
| redis>=4.5.2,!=4.5.5,!=5.0.2,<6.5 | |||
| redis>=4.5.2,!=4.5.5,!=5.0.2,<8 | |||
Copilot
AI
Jan 15, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is an inconsistency in redis version constraints across the repository. The file requirements/funtest.txt specifies redis>=4.5.2,!=5.0.2,!=4.5.5 without an upper bound, while this file now has <8. Consider aligning these constraints to ensure consistent behavior across different testing and installation scenarios.
| redis>=4.5.2,!=4.5.5,!=5.0.2,<8 | |
| redis>=4.5.2,!=4.5.5,!=5.0.2 |
Hello,
celery[redis] and kombu[redis] are not installable on python 3.14 because they pin an old version of redis.
redis added support for python 3.14 in redis 7.1.0 https://github.com/redis/redis-py/releases
Could you please remove this pin?
Pretty sure it's useless and was added over defensely, it was added to stop 6.5 when there was no 6.5 or 7.0 release.
Regards.