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

Debugging dependency conflicts is difficult #29347

Open
1 task done
efriis opened this issue Jan 21, 2025 · 0 comments
Open
1 task done

Debugging dependency conflicts is difficult #29347

efriis opened this issue Jan 21, 2025 · 0 comments
Assignees

Comments

@efriis
Copy link
Member

efriis commented Jan 21, 2025

Privileged issue

  • I am a LangChain maintainer, or was asked directly by a LangChain maintainer to create an issue here.

Issue Content

LangChain's variety of python packages sometimes lead to conflicts with each other if you install "latest" versions at different times, or if you intentionally install old versions of some packages but not others.

We would like to make this easier to debug.

We have a sense of a few common conflicting cases that are all resolvable by running pip install -U langchain-core langchain-anthropic ... to upgrade the whole set of langchain packages, and we'd love to hear about conflicts that could be happening externally.

If you see dependency resolver issues with {pip, poetry, uv, etc.} please

  1. write the command you were running (e.g. pip install ...)
  2. paste resolution errors of them
  3. paste the output of pip freeze

Example comment

I ran

pip install langchain
pip install langchain-core==0.2.0

and I got

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.
langchain-text-splitters 0.3.5 requires langchain-core<0.4.0,>=0.3.29, but you have langchain-core 0.2.0 which is incompatible.
langchain 0.3.15 requires langchain-core<0.4.0,>=0.3.31, but you have langchain-core 0.2.0 which is incompatible.

pip freeze output:

aiohappyeyeballs==2.4.4
aiohttp==3.11.11
aiosignal==1.3.2
annotated-types==0.7.0
anyio==4.8.0
attrs==24.3.0
certifi==2024.12.14
charset-normalizer==3.4.1
frozenlist==1.5.0
greenlet==3.1.1
h11==0.14.0
httpcore==1.0.7
httpx==0.28.1
idna==3.10
jsonpatch==1.33
jsonpointer==3.0.0
langchain==0.3.15
langchain-core==0.2.0
langchain-text-splitters==0.3.5
langsmith==0.1.147
multidict==6.1.0
numpy==2.2.2
orjson==3.10.15
packaging==23.2
propcache==0.2.1
pydantic==2.10.5
pydantic_core==2.27.2
PyYAML==6.0.2
requests==2.32.3
requests-toolbelt==1.0.0
sniffio==1.3.1
SQLAlchemy==2.0.37
tenacity==8.5.0
typing_extensions==4.12.2
urllib3==2.3.0
yarl==1.18.3
@efriis efriis self-assigned this Jan 21, 2025
@efriis efriis pinned this issue Jan 21, 2025
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

No branches or pull requests

1 participant