-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Description
/kind bug
What steps did you take and what happened:
When trying to install Feast (v0.50.0) alongside KServe (v0.15.2) in the same Python environment, the installation fails due to incompatible uvicorn[standard] version requirements between the two packages.
- Feast v0.50.0 requires
uvicorn[standard]==0.34.0(pinned to a specific version) - KServe v0.15.2 requires
uvicorn[standard]>=0.30.6,<0.31.0(restricted version range)
These requirements are mutually exclusive, leading to dependency resolution errors.
This blocks workflows in environments (e.g., RHOAI) that require both Feast and KServe together.
What did you expect to happen:
Feast and KServe should be installable together without dependency conflicts, allowing both packages to function correctly in the same Python environment.
What's the InferenceService yaml:
N/A — This issue is related to Python package dependencies and not a specific InferenceService manifest.
Anything else you would like to add:
Root Cause:
- Feast pins
uvicorn[standard]==0.34.0 - KServe restricts to
>=0.30.6,<0.31.0 - This version mismatch prevents co-installation
Impact:
- Users cannot install Feast and KServe in the same environment
- Blocks development/deployment workflows that require both packages
Proposed Solution:
Update KServe’s uvicorn[standard] version range to be compatible with newer uvicorn versions.
Error Details:
uv sync× No solution found when resolving dependencies for split (python_full_version == '3.12.'):
╰─▶ Because feast==0.50.0 depends on uvicorn[standard]==0.34.0
and kserve==0.15.2 depends on uvicorn[standard]>=0.30.6,<0.31.0,
we can conclude that kserve==0.15.2 and feast[spark]==0.50.0 are incompatible.
And because your project depends on feast[spark]==0.50.0 and kserve==0.15.2,
we can conclude that your project's requirements are unsatisfiable.
Environment:
- KServe Version: 0.15.2