https://github.com/m90/npm-install-linked
Install dependencies of linked packages when using npm 7
https://github.com/m90/npm-install-linked
Last synced: 2 months ago
JSON representation
Install dependencies of linked packages when using npm 7
- Host: GitHub
- URL: https://github.com/m90/npm-install-linked
- Owner: m90
- License: mpl-2.0
- Created: 2021-09-18T16:36:10.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-10-04T13:23:52.000Z (over 2 years ago)
- Last Synced: 2025-03-16T01:29:10.606Z (3 months ago)
- Language: JavaScript
- Size: 123 KB
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGES.md
- License: LICENSE
Awesome Lists containing this project
README
# npm-install-linked
Install dependencies of linked packages when using npm 7## What is this good for?
npm 7 [stopped installing transient dependencies][issue] for local dependencies referenced through the `file:` scheme.
For many projects using pre-workspaces monorepos, this prevents migrating to npm 7 as they rely on the behavior of npm 6.
This tool is a band-aid to emulate the previous behavior while still being able to use npm 7.[issue]: https://github.com/npm/cli/issues/2339
## Usage
Install the package as a dev dependency:
```
npm i npm-install-linked -D
```and put it in your `package.json`s `postinstall` script:
```json
{
"scripts": {
"postinstall": "npm-install-linked"
}
}
```## Options
Three options can be passed to the CLI tool:
### `--use-lockfile`, `-L`
When given, `npm ci` will be run in the context of the transient dependency in case a `package-lock.json` is found.
If no lockfile is found, `npm i` will be used instead.### `--force`, `-F`
By default, the command will check for the npm version in use and will do nothing if npm is at version 6 or lower.
Pass `--force` to override this behavior and forcefully install dependencies in all versions of npm.### `--walk`, `-W`
By default, the command will only install dependencies for packages referenced usin the `file:` scheme one level deep.
When passing `--walk` the tool will also install dependencies for such packages referenced by your dependencies.