This PR fixes a signature mismatch between BaseStore and its concrete implementations by making the `prefix` parameter keyword-only in `yield_keys` and `ayield_keys`. This aligns the implementations with the BaseStore interface contract, prevents Liskov Substitution Principle violations, and ensures consistent method signatures across store backends. Fixes #32637 Breaking changes None. This change only enforces the existing abstract interface and does not modify runtime behavior Testing - Verified that existing test suites pass after the signature fix. Parts of this contribution were assisted by generative AI for code navigation and drafting. All final design decisions and changes were reviewed and validated manually. --------- Co-authored-by: Khagesh-Anayasmi <khagesh.desai@anayasmi.in> Co-authored-by: Mason Daugherty <mason@langchain.dev>
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.