Skip to content

[Install issue]: uv can't add chromadb==v1.0.3 when fastapi==0.115.12 is already a dependency #4243

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

Open
AbelCS opened this issue Apr 9, 2025 · 4 comments
Assignees
Labels
installation trouble trouble building or installing chroma

Comments

@AbelCS
Copy link

AbelCS commented Apr 9, 2025

What happened?

I've just started a new FastAPI project with uv and added fastaapi[standard], this added fastapi==0.155.12.

When I'm trying to uv add chromadb==v1.0.3 I get this:

  × No solution found when resolving dependencies for split (python_full_version >= '3.13'):
  ╰─▶ Because chromadb==1.0.3 depends on fastapi==0.115.9 and only fastapi[standard]<=0.115.12 is available, we can conclude that chromadb==1.0.3 and fastapi[standard]>=0.115.12
      are incompatible.
      And because your project depends on chromadb==1.0.3 and fastapi[standard]>=0.115.12, we can conclude that your project's requirements are unsatisfiable.
  help: If you want to add the package regardless of the failed resolution, provide the `--frozen` flag to skip locking and syncing.

I think this could be solved replacing

fastapi==0.115.9

with

fastapi>=0.115.9 or maybe fastapi~=0.155.9

I'm new to Python, so the solution I'm proposing might not be viable for some reason I'm not aware of.

If this could solve the problem I can fill a PR, if not, and you can give me any solution/workaround I would really appreciate it.

Thanks!

Versions

Chroma v1.0.3
FastAPI v0.155.12
Python 3.12.9
uv 0.6.13
MacOS 15.4

Relevant log output

@AbelCS AbelCS added the installation trouble trouble building or installing chroma label Apr 9, 2025
@vladiliescu
Copy link

vladiliescu commented Apr 10, 2025

It's really weird (to say the least) to gain a pinned dependency to fastapi, when all we're using is a local embedding database.

Maybe this should be made optional in an extras package, since it's in no way related to the core functionality?

@jairad26
Copy link
Contributor

yea sorry about that you can find more context on why here
#3872
will fix

@jeffchuber
Copy link
Contributor

@jairad26 when we remove the python from the codebase will this go away?

@jairad26
Copy link
Contributor

yep, once we remove all fastapi dependencies (existing python implementation + their tests)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
installation trouble trouble building or installing chroma
Projects
None yet
Development

No branches or pull requests

4 participants