Ecosystems
npm
- Versions:
package-lock.json(v1-v3),npm-shrinkwrap.json,pnpm-lock.yaml(v5-v9, including peer suffixes),bun.lock,yarn.lock(v1 and Berry). With no lockfile,package.jsonplus what is innode_modules. Workspace roots above the current directory count. - Sources:
node_modules/<name>here or in a parent directory, and pnpm'snode_modules/.pnpm/<name>@<version>store, so the exact version is found even when another is hoisted. Yarn Plug'n'Play projects work withoutnode_modules: the package's zip in.yarn/cache(or the global Berry cache,$YARN_CACHE_FOLDER) is read once and its docs and declarations are unpacked into the lockdocs cache. - Docs: README, CHANGELOG, HISTORY, MIGRATION and UPGRADING files,
docs/folders, other root-level Markdown. - API:
.d.ts,.d.mtsand.d.cts(deduplicated) with JSDoc: functions, classes and members, interfaces and members, type aliases, enums, constants, namespaces andexport { a as b }re-exports, whichapifollows to the target. When a package ships no declarations,@types/<name>is used; failing that, JSDoc-documented JavaScript.
PyPI
- Versions:
uv.lock,poetry.lock,pdm.lock,Pipfile.lock, pinnedrequirements*.txt. With none, the packages installed in the project's virtualenv (direct dependencies frompyproject.toml). - Sources:
.venv,venv,envin the project or its parents,$VIRTUAL_ENV,$CONDA_PREFIX, then the system interpreter's site-packages. Files come from the wheel'sRECORD, so only that distribution's files are read. - Docs: the README embedded in the wheel's
METADATA, module docstrings. - API: classes, functions and methods with their full signatures (decorators, defaults, annotations) and docstrings, from
.pyand.pyi(stubs when there is no source). Private names are skipped,__init__and__call__are kept.
crates.io
- Versions:
Cargo.lock. Direct dependencies are the ones your workspace members list. - Sources:
$CARGO_HOME/registry/src/*/<name>-<version>(whatcargo fetchor any build downloads), orvendor/. Git dependencies (source = "git+..."inCargo.lock) are found in$CARGO_HOME/git/checkouts, matched by crate name and version, including crates inside a checked-out workspace. - Docs: README and CHANGELOG, crate and module docs (
//!), which for many crates are the real guide. - API: public functions, methods of inherent impls, structs, enums, traits and their methods, type aliases, constants, public modules and exported
macro_rules!, with///docs. Items inside configuration macros (cfg_rt! { ... }) are parsed too.#[doc(hidden)]is respected.
Go
- Versions:
go.mod(requireblocks,// indirect, same-modulereplaceversions). - Sources:
$GOMODCACHE,$GOPATH/pkg/modor~/go/pkg/mod(with Go's case escaping), orvendor/. - Docs: README, package doc comments.
- API: exported functions, methods (
Context.JSON), types, interface methods, constants and variables with doc comments.internal/,testdata/and_test.goare skipped.
Legacy copies
Some packages bundle the previous major for migration: zod/v3 inside zod 4, pydantic/v1 inside pydantic 2. Paths with a vN segment below the package's major version rank below the current API, so answers default to the version you use.