LangChain 0.3 removed the document loaders and the Python interpreter tool that had been duplicated in @langchain/community since the packages split, 39 subpaths in all, each still published there under the same name. It also collapsed langchain/memory/index into langchain/memory, and removed five self-query translator entrypoints plus the NotionDB loader, which the migration notes point at integration packages rather than at a subpath this entry can name.

What changed

Before and after

A loader import built against 0.2.20:

import { PDFLoader } from 'langchain/document_loaders/fs/pdf';
import { CSVLoader } from 'langchain/document_loaders/fs/csv';

After npx emendant fix, only the package in front of the subpath changes:

import { PDFLoader } from '@langchain/community/document_loaders/fs/pdf';
import { CSVLoader } from '@langchain/community/document_loaders/fs/csv';

The same rewrite handles langchain/memory/index to langchain/memory: one specifier, no package added. There is no after for the self-query translators or the NotionDB loader. The entry carries no fix, so langchain/retrievers/self_query/pinecone keeps failing to resolve until you find its integration package by hand.

Migration guidance and its limits

Apply the two deterministic patches: the community entrypoint rewrite and the memory/index collapse. Neither installs @langchain/community for you. Add it to your manifest before running the fix, or the rewritten imports fail to resolve in its place.

Emendant does not fix the self-query translators or the NotionDB loader. No patch is offered because the entry carries none: the five translators moved into per-store integration packages this map cannot pin one subpath for, and the NotionDB loader has no documented replacement at all. A scan reports these as findings for you to resolve by hand.

No change in this release is assisted, so no model provider is needed for anything a clean scan finds here. A clean scan proves your imports still resolve. It does not prove the migrated code loads the same documents the old entrypoints did, since @langchain/community 0.3.0 is a different package resolving its own dependencies.

What Emendant detects, fixes and verifies

3 changes in langchain 0.3.0. 2 patched by a transform, 0 patched only with a model provider you name, 1 report only. Every patch is proved in a copy of your repository before it is offered, and its header names the checks that passed. This table is generated from the feed entry, so it cannot claim more than the entry does.

ChangeSeverityDetectsFixVerified by
The deprecated community entrypoints were removed
langchain-npm-0.3.0-community-entrypoints-removed
Breaking
  • any import of langchain/document_loaders/fs/chatgpt
  • any import of langchain/document_loaders/fs/csv
  • any import of langchain/document_loaders/fs/docx
  • any import of langchain/document_loaders/fs/epub
  • any import of langchain/document_loaders/fs/notion
  • any import of langchain/document_loaders/fs/obsidian
  • any import of langchain/document_loaders/fs/openai_whisper_audio
  • any import of langchain/document_loaders/fs/pdf
  • any import of langchain/document_loaders/fs/pptx
  • any import of langchain/document_loaders/fs/srt
  • any import of langchain/document_loaders/fs/unstructured
  • any import of langchain/document_loaders/web/apify_dataset
  • any import of langchain/document_loaders/web/assemblyai
  • any import of langchain/document_loaders/web/azure_blob_storage_container
  • any import of langchain/document_loaders/web/azure_blob_storage_file
  • any import of langchain/document_loaders/web/browserbase
  • any import of langchain/document_loaders/web/cheerio
  • any import of langchain/document_loaders/web/college_confidential
  • any import of langchain/document_loaders/web/confluence
  • any import of langchain/document_loaders/web/couchbase
  • any import of langchain/document_loaders/web/figma
  • any import of langchain/document_loaders/web/firecrawl
  • any import of langchain/document_loaders/web/gitbook
  • any import of langchain/document_loaders/web/github
  • any import of langchain/document_loaders/web/hn
  • any import of langchain/document_loaders/web/imsdb
  • any import of langchain/document_loaders/web/notionapi
  • any import of langchain/document_loaders/web/pdf
  • any import of langchain/document_loaders/web/playwright
  • any import of langchain/document_loaders/web/puppeteer
  • any import of langchain/document_loaders/web/recursive_url
  • any import of langchain/document_loaders/web/s3
  • any import of langchain/document_loaders/web/searchapi
  • any import of langchain/document_loaders/web/serpapi
  • any import of langchain/document_loaders/web/sitemap
  • any import of langchain/document_loaders/web/sonix_audio
  • any import of langchain/document_loaders/web/sort_xyz_blockchain
  • any import of langchain/document_loaders/web/youtube
  • any import of langchain/experimental/tools/pyinterpreter
Patch, written by the replace-module-path transformYour typecheck and tests
langchain/memory/index collapsed into langchain/memory
langchain-npm-0.3.0-memory-index-collapsed
Breaking
  • any import of langchain/memory/index
Patch, written by the replace-module-path transformYour typecheck and tests
The self-query translator entrypoints left for the integration packages
langchain-npm-0.3.0-self-query-entrypoints-removed
Breaking
  • any import of langchain/document_loaders/web/notiondb
  • any import of langchain/retrievers/self_query/chroma
  • any import of langchain/retrievers/self_query/pinecone
  • any import of langchain/retrievers/self_query/supabase
  • any import of langchain/retrievers/self_query/vectara
  • any import of langchain/retrievers/self_query/weaviate
Report onlyNot applicable

emendant explain <change-id> prints any row's entry, guidance and sources at the terminal.

Coverage

Snapshot
2026-08-28.1, sequence 11, signed 28 August 2026
Minimum CLI
emendant@0.1.0
Feed entry
feed/npm/langchain/0.3.0.json

emendant feed status shows the snapshot your machine holds, and emendant feed update fetches the latest.

Primary sources

Every claim above was checked against these, each pinned to the release rather than to a default branch.

Scan your repository

Runs locally, reads your lockfile and source, sends nothing anywhere.

npx emendant scan

Then npx emendant fix writes the patches the table says exist. The getting started guide covers the flags and the patch grades.