https://github.com/npm/npm-install-checks
contains checks that npm runs during the installation
https://github.com/npm/npm-install-checks
npm-cli
Last synced: about 1 year ago
JSON representation
contains checks that npm runs during the installation
- Host: GitHub
- URL: https://github.com/npm/npm-install-checks
- Owner: npm
- License: other
- Created: 2014-01-11T11:39:16.000Z (over 12 years ago)
- Default Branch: main
- Last Pushed: 2025-04-09T14:29:26.000Z (about 1 year ago)
- Last Synced: 2025-05-14T00:17:42.514Z (about 1 year ago)
- Topics: npm-cli
- Language: JavaScript
- Homepage:
- Size: 252 KB
- Stars: 27
- Watchers: 22
- Forks: 15
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
README
# npm-install-checks
Check the engines and platform fields in package.json
## API
Both functions will throw an error if the check fails, or return
`undefined` if everything is ok.
Errors have a `required` and `current` fields.
### .checkEngine(pkg, npmVer, nodeVer, force = false)
Check if a package's `engines.node` and `engines.npm` match the running system.
`force` argument will override the node version check, but not the npm
version check, as this typically would indicate that the current version of
npm is unable to install the package properly for some reason.
Error code: 'EBADENGINE'
### .checkPlatform(pkg, force, environment)
Check if a package's `os`, `cpu` and `libc` match the running system.
`force` argument skips all checks.
`environment` overrides the execution environment which comes from `process.platform` `process.arch` and current `libc` environment by default. `environment.os` `environment.cpu` and `environment.libc` are available.
Error code: 'EBADPLATFORM'
### .checkDevEngines(wanted, current, opts)
Check if a package's `devEngines` property matches the current system environment.
Returns an array of `Error` objects, some of which may be warnings, this can be checked with `.isError` and `.isWarn`. Errors correspond to an error for a given "engine" failure, reasons for each engine "dependency" failure can be found within `.errors`.