Adds [PEP 702](https://peps.python.org/pep-0702/) `__deprecated__` attribute support to the `@deprecated` decorator, enabling IDE and type checker integration for deprecation warnings. --- PEP 702 introduced the `__deprecated__` attribute convention, which type checkers (Pyright, mypy) and IDEs (VS Code with Pylance, PyCharm) can use to surface deprecations directly in the editor. This PR sets `__deprecated__` on all objects decorated with `@deprecated`. With this change, developers using supported IDEs will see: - **Strikethrough text** on deprecated symbols - **Hover messages** showing the deprecation reason and suggested alternative - **Diagnostic warnings** during type checking (e.g., `pyright`, `mypy`) ### References - [PEP 702 – Marking deprecations using the type system](https://peps.python.org/pep-0702/) - [`typing.deprecated` specification](https://typing.python.org/en/latest/spec/directives.html#deprecated)
Packages
Important
This repository is structured as a monorepo, with various packages located in this libs/ directory. Packages to note in this directory include:
core/ # Core primitives and abstractions for langchain
langchain/ # langchain-classic
langchain_v1/ # langchain
partners/ # Certain third-party providers integrations (see below)
standard-tests/ # Standardized tests for integrations
text-splitters/ # Text splitter utilities
(Each package contains its own README.md file with specific details about that package.)
Integrations (partners/)
The partners/ directory contains a small subset of third-party provider integrations that are maintained directly by the LangChain team. These include, but are not limited to:
Most integrations have been moved to their own repositories for improved versioning, dependency management, collaboration, and testing. This includes packages from popular providers such as Google and AWS. Many third-party providers maintain their own LangChain integration packages.
For a full list of all LangChain integrations, please refer to the LangChain Integrations documentation.