feast icon indicating copy to clipboard operation
feast copied to clipboard

Unsolvable dependency conflict between uvicorn and uvicorn-worker

Open EmilienM opened this issue 2 months ago • 0 comments

Describe the bug

When installing feast>=0.54.0, the package resolver fails due to an unsolvable dependency conflict.

  • feast requires uvicorn[standard]<=0.34.0.
  • feast also requires uvicorn-worker.
  • Recent versions of uvicorn-worker (e.g., 0.4.0) require uvicorn>=0.36.0.

This creates a situation where no valid version of uvicorn can be found, causing the installation to fail.

To Reproduce

  1. Create a requirements.txt file with the following content:
    feast==0.54.0
    
  2. Attempt to install the dependencies using pip or uv:
    pip install -r requirements.txt
    
  3. The installation will fail with a dependency resolution error.

Expected behavior

The installation should complete successfully by finding a compatible set of packages.

Actual behavior

The package installation fails with a resolution error similar to this:

ERROR: Could not produce a pip compatible constraints file.

[...]

* No single version of uvicorn meets all requirements
  uvicorn[standard]<=0.34.0,>=0.30.6 matches ['0.34.0']
    feast==0.54.0
  uvicorn>=0.36.0 matches ['0.37.0']
    uvicorn-worker==0.4.0

System Information

  • Feast Version: 0.54.0
  • Python Version: 3.12
  • OS: RHEL 9.6

Proposed Solution / Workaround

A temporary workaround is to manually constrain the version of uvicorn-worker:

uvicorn-worker<=0.3.0

I think the long-term fix would be for Feast to remove any upper version caps.

EmilienM avatar Oct 17 '25 12:10 EmilienM