pnpm-shrinkwrap

Read/write/prune and other utils for dealing with shrinkwrap.yaml files

MIT 49 个版本
安装
npm install pnpm-shrinkwrap
yarn add pnpm-shrinkwrap
pnpm add pnpm-shrinkwrap
bun add pnpm-shrinkwrap
README

pnpm-shrinkwrap

Read/write/prune and other utils for dealing with shrinkwrap.yaml files

Reads and writes the wanted (shrinkwrap.yaml) and current (node_modules/.shrinkwrap.yaml) shrinkwrap files of pnpm. Shrinkwrap files are the state files of the node_modules installed via pnpm. They are like the package-lock.json of npm or the yarn.lock of Yarn.

Install

npm i pnpm-shrinkwrap

API

readWanted(pkgPath, opts) => Promise<Shrinkwrap>

Alias: read

Reads the shrinkwrap.yaml file from the root of the package.

Arguments

  • pkgPath - Path - the path to the project
  • opts.ignoreIncompatible - Boolean - false by default. If true, throws an error if the shrinkwrap file format is not compatible with the current library.

readCurrent(pkgPath, opts) => Promise<Shrinkwrap>

Alias: readPrivate

Reads the shrinkwrap file from node_modules/.shrinkwrap.yaml.

existsWanted(pkgPath) => Promise<Boolean>

Returns true if a shrinkwrap.yaml exists in the root of the package.

write(pkgPath, wantedShrinkwrap, currentShrinkwrap) => Promise<void>

Writes the wanted/current shrinkwrap files. When they are empty, removes them.

writeWantedOnly(pkgPath, wantedShrinkwrap) => Promise<void>

Writes the wanted shrinkwrap file only. Sometimes it is needed just to update the wanted shrinkwrap without touching node_modules.

writeCurrentOnly(pkgPath, currentShrinkwrap) => Promise<void>

Writes the current shrinkwrap file only. Fails if there is no node_modules directory in the pkgPath.

prune(shrinkwrap, package, warn: (msg: string) => void) => Promise<Shrinkwrap>

Prunes a shrinkwrap file. Prunning means removing packages that are not referenced.

pruneWithoutPackageJson(shrinkwrap, warn: (msg: string) => void) => Promise<Shrinkwrap>

Prunes a shrinkwrap file using only the shrinkwrap object.

nameVerFromPkgSnapshot(relDepPath, pkgSnapshot): {name: string, version: string}

pkgSnapshotToResolution(relDepPath, pkgSnapshot, registry): Resolution

satisfiesPackageJson(shrinkwrap, packageJson): Boolean

Returns true if the shrinkwrap file resolves the dependencies in the package.json.

License

MIT

版本列表
8.1.6 2018-12-03
8.1.5 2018-11-25
8.1.4 2018-11-15
8.1.3 2018-11-12
8.1.2 2018-10-27
8.1.1 2018-10-24
8.1.0 2018-10-24
8.0.0-2 2018-10-19
8.0.0-1 2018-10-15
8.0.0-0 2018-10-07
8.0.0 2018-10-21
7.0.2 2018-08-22
7.0.1 2018-08-06
7.0.0 2018-07-09
6.5.1 2018-07-01
6.5.0 2018-06-23
6.4.0 2018-05-09
6.3.2 2018-04-11
6.2.4 2018-03-24
6.2.3 2018-03-22
6.1.0 2018-03-17
6.0.2 2018-03-13
6.0.1 2018-03-05
6.0.0 2018-03-03
5.4.0 2018-03-03
5.3.0 2018-02-04
5.2.0 2018-02-04
5.1.5 2018-02-03
5.1.2 2018-01-28
5.1.1 2018-01-10
5.1.0 2018-01-03
5.0.0 2017-11-10
4.0.1 2017-10-28
4.0.0 2017-10-28
3.4.0 2017-10-14
3.3.3 2017-10-07
3.3.2 2017-10-06
3.3.1 2017-10-02
3.3.0 2017-10-02
3.2.0 2017-10-01
3.1.0 2017-07-09
3.0.0 2017-07-09
2.1.1 2017-07-07
2.1.0 2017-07-07
2.0.0 2017-06-25
1.0.3 2017-06-25
1.0.2 2017-06-25
1.0.1 2017-06-23
1.0.0 2017-06-23