by-chromacontributorsenhancementgood first issue
Description
Chroma has several places where we manage python dependencies / requirements
At the top level of the project:
pyproject.toml: https://github.com/chroma-core/chroma/blob/main/pyproject.tomlrequirements.txt: https://github.com/chroma-core/chroma/blob/main/requirements.txtrequirements_dev.txt: https://github.com/chroma-core/chroma/blob/main/requirements_dev.txt
For the thin python client:
pyproject.toml: https://github.com/chroma-core/chroma/blob/main/clients/python/pyproject.tomlrequirements.txt: https://github.com/chroma-core/chroma/blob/main/clients/python/requirements.txtrequirements_dev.txt: https://github.com/chroma-core/chroma/blob/main/clients/python/requirements_dev.txt
A similar situation exists for the TypeScript client.
It's easy to miss adjusting these, for example when we need to pin or update a dependency as in https://github.com/chroma-core/chroma/pull/2360
We should unify these as much as possible, and add lint rules when they absolutely must be redundant.