◐ Shell
reader mode source ↗
Skip to content

feat: Bump redis-py version cap from <5 to <8#6339

Merged
ntkathole merged 2 commits into
feast-dev:masterfrom
neolunar7:bump-redis-py-version-cap
May 1, 2026
Merged

feat: Bump redis-py version cap from <5 to <8#6339
ntkathole merged 2 commits into
feast-dev:masterfrom
neolunar7:bump-redis-py-version-cap

Conversation

@neolunar7

@neolunar7 neolunar7 commented Apr 27, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Bumps redis dependency from >=4.2.2,<5 to >=4.2.2,<8
  • Bumps hiredis dependency from >=2.0.0,<3 to >=2.0.0,<4

Motivation

The current redis<5 pin prevents downstream servers that depend on Feast from using redis-py 5+. Since redis-py is now at version 7.4.0, this is an increasingly painful constraint for users who need newer redis-py features or have other dependencies requiring redis-py 5+.

Compatibility Analysis

Feast uses only one file that imports redis (sdk/python/feast/infra/online_stores/redis.py). The APIs used are all stable across v4 through v7:

  • Redis, RedisCluster, Sentinel client classes
  • redis.asyncio module (Redis, RedisCluster, Sentinel)
  • pipeline(), hset(), hmget(), hgetall(), scan_iter(), delete(), hdel(), expire()

All imports and method signatures are unchanged from redis-py 4.x to 7.x.

The hiredis cap is bumped from <3 to <4 because redis-py 5+ requires hiredis>=3.0 when the hiredis extra is used.

Test plan

  • Verified all redis imports work with redis-py 7.4.0
  • Verified all redis API methods used by Feast exist and are compatible
  • All 19 redis unit tests pass with redis-py 7.4.0 (1 test errored due to unrelated missing dask dep in test fixture)

Open in Devin Review

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hide comment

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 2 additional findings.

Open in Devin Review

@ntkathole

Copy link
Copy Markdown
Member

@neolunar7 can you also run make lock-python-dependencies-all to update requirements and make sure this bump doesn't break anything?

@neolunar7 neolunar7 requested a review from a team as a code owner April 29, 2026 11:34
The redis-py dependency was pinned to <5, which prevented downstream
servers using Feast from upgrading to redis-py 5+. The redis-py APIs
used by Feast (Redis, RedisCluster, Sentinel, pipeline, hset, hmget,
hgetall, scan_iter, delete, hdel, expire) are fully compatible across
v4 through v7. Also bumps hiredis cap from <3 to <4 since redis-py 5+
requires hiredis>=3.0 when the hiredis extra is used.

Signed-off-by: neolunar7 <piljae@rapportlabs.kr>
Signed-off-by: neolunar7 <neolunar7@gmail.com>
@neolunar7 neolunar7 force-pushed the bump-redis-py-version-cap branch from efbb4ac to 1b4e643 Compare May 1, 2026 06:56
@neolunar7

Copy link
Copy Markdown
Contributor Author

@ntkathole I've added the relevant files too, thanks :)

@ntkathole

Copy link
Copy Markdown
Member

@neolunar7 looks like pixi.lock file also need to update

Signed-off-by: neolunar7 <neolunar7@gmail.com>
@neolunar7 neolunar7 force-pushed the bump-redis-py-version-cap branch from 1b4e643 to b336ae5 Compare May 1, 2026 07:29
Hide details View details @ntkathole ntkathole merged commit 9538180 into feast-dev:master May 1, 2026
25 of 26 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants