Releases: cyberuni/find-installed-packages
Release list
find-installed-packages@4.0.1
Patch Changes
- 9f54c4f: Include the
LICENSEfile in the published package. Previously the package declared"license": "MIT"but shipped no license text because the rootLICENSEfile was never copied into the package directory. - 25d73e8: Upgrade
@changesets/clito v3, the version matched to thechangesets/action@v2
pinned by the shared release workflow.
find-installed-packages@4.0.0
Major Changes
-
dc80869: ESM only, Node >= 20.19, and take lockfile names from
package-manager-detector.BREAKING CHANGES:
- The package is now ESM only. The CJS build is gone, so
require('find-installed-packages')no longer resolves on Node versions without
require(esm). Useimport, or stay on 3.x. engines.nodeis now>=20.19, up from>=14.
The cache stamp now takes its lockfile names from
package-manager-detector
instead of a list maintained here. That list was missingnub.lock,
aube-lock.yamlandaube-workspace.yaml, so under those package managers the
stamp fell back topackage.jsonand top-levelnode_modulesalone — an install
that changed a transitive package without touching either would not invalidate the
cache. New package managers now arrive with a dependency bump.Yarn PnP's
.pnp.cjsand.pnp.data.jsonare still watched separately, as they
change with the installed tree but are not lockfiles. - The package is now ESM only. The CJS build is gone, so
find-installed-packages@3.2.0
Minor Changes
-
b6b687a: Find packages by resolving the dependency graph instead of scanning
node_modules.Packages are now located by walking the declared dependency graph from
cwdand
asking the host runtime's module resolver where each one lives. This fixes layouts
the folder scan could not handle:- Workspaces (npm, yarn, bun, pnpm) — the tree is hoisted to the repo root, so
scanning from a workspace package found nothing at all. - Yarn Plug'n'Play — there is no
node_modulesto scan. - pnpm and
bun --linker=isolated— previously these worked only by stumbling
into undocumented store internals, and over-reported the whole virtual store.
When
cwdhas no readablepackage.json, or one that declares no dependencies,
the previousnode_modulesscan is still used as a fallback.Two behaviour notes:
- Only declared dependencies are reported now. A package sitting in
node_moduleswithout being listed in anyone'sdependencies,devDependencies
(root only),peerDependencies, oroptionalDependenciesused to be returned as
a side effect of how the folders were walked, and no longer is. - Under Yarn PnP this must run inside the PnP-enabled process, which is the normal
case for a library loaded by your app.
Also fixes the cache stamp: it is now derived from the lockfile,
package.json, and
top-levelnode_modulesinstead of thectimeof every installed package, so the
cache can skip the walk entirely rather than only the manifest reads. Lockfiles are
looked up fromcwdupwards so workspaces are handled. - Workspaces (npm, yarn, bun, pnpm) — the tree is hoisted to the repo root, so
find-installed-packages@3.1.2
Patch Changes
-
1bad1eb: Point
repository,homepageandbugsatcyberuni/find-installed-packages.repositoryis read when generating provenance attestations, so it has to be correct
at publish time — not merely correct in the repo.
find-installed-packages@3.1.1
Patch Changes
- 8c1e930: Restore missing readme file.