Skip to content
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

Dependency Conflict: Starlette Version Requirement Causes Conflicts with FastAPI #1505

Closed
umayado17 opened this issue Oct 27, 2024 · 0 comments · Fixed by #1506
Closed

Dependency Conflict: Starlette Version Requirement Causes Conflicts with FastAPI #1505

umayado17 opened this issue Oct 27, 2024 · 0 comments · Fixed by #1506

Comments

@umayado17
Copy link
Contributor

Describe the bug

During installation, there is a dependency conflict between Starlette versions required by core dependencies and server features. While the software functions correctly, pip displays version incompatibility warnings.

Reproduce

  1. Run pip install open-interpreter
  2. Run pip install "starlette>=0.40.0,<0.42.0" to resolve FastAPI dependency
  3. Observe that this creates a new conflict with core Starlette requirement
  4. Any attempt to resolve one conflict creates another, forming a circular dependency issue

Expected behavior

A clean installation without dependency conflicts, where both core functionality and server features can coexist without version warnings.

Screenshots

Current pyproject.toml configuration:
# Required dependencies
starlette = "^0.37.2"

# Optional [server] dependencies
fastapi = { version = "^0.111.0", optional = true }

Error message during installation:
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
fastapi 0.115.3 requires starlette<0.42.0,>=0.40.0, but you have starlette 0.37.2 which is incompatible.

Open Interpreter version

0.4.3

Python version

3.11

Operating System name and version

Windows 11

Additional context

Suggested solution to modify pyproject.toml:

# Option 1: Relax version constraint
starlette = ">=0.37.2,<0.42.0"

# Option 2: Split into base and server configurations
starlette = { version = "^0.37.2", optional = true }
starlette = { version = ">=0.40.0,<0.42.0", optional = true }

Environment:

  • Python 3.11
  • open-interpreter 0.4.3
  • Installation via pip
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants