# lerna-script-tasks-dependencies

> tasks for lerna-script that adds dependency management support

Latest version **1.4.0** (published 2021-04-11) · ISC license · 0 weekly downloads

## Install

```sh
npm install lerna-script-tasks-dependencies
pnpm add lerna-script-tasks-dependencies
yarn add lerna-script-tasks-dependencies
bun add lerna-script-tasks-dependencies
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.4.0 |
| Published | 2021-04-11 |
| First published | 2017-09-03 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 5 |
| Unpacked size | 30.3 KB |
| Known vulnerabilities | 0 (+7 in 2 direct dependencies) |
| Install scripts | no |
| GitHub stars | 163 |
| Author | Vilius Lukosius |
| Maintainers | viliusl, hugebdu, hugebdu2 |

## Links

- npm: https://www.npmjs.com/package/lerna-script-tasks-dependencies
- Repository: https://github.com/wix/lerna-script
- Homepage: https://github.com/wix/lerna-script/tree/master/tasks/dependencies
- Issues: https://github.com/wix/lerna-script/issues
- npm.io page: https://npm.io/package/lerna-script-tasks-dependencies

## Dependencies (5)

- [ramda](https://npm.io/package/ramda.md) 0.27.0
- [lodash](https://npm.io/package/lodash.md) 4.17.15
- [semver](https://npm.io/package/semver.md) 7.3.2
- [inquirer](https://npm.io/package/inquirer.md) ^7.0.0
- [deep-keys](https://npm.io/package/deep-keys.md) 0.5.0

## Recent versions

- 1.4.0 (latest) — 2021-04-11
- 1.3.3 — 2020-11-01
- 1.3.2 — 2020-05-24
- 1.3.1 — 2020-05-24
- 1.3.0 — 2020-05-14
- 1.2.1 — 2020-04-30
- 1.2.0 — 2020-02-18
- 1.1.2 — 2020-01-21
- 1.1.1 — 2019-09-16
- 1.1.0 — 2019-09-16
- 1.0.1-alpha.0 — 2019-08-29
- 1.0.0-0 — 2019-08-29
- 0.10.0 — 2019-08-28
- 0.9.6 — 2019-02-25
- 0.9.5 — 2018-12-12
- … 29 more at https://npm.io/package/lerna-script-tasks-dependencies/versions

## README

# lerna-script-tasks-dependencies

[lerna-script](../..) tasks for managing dependency versions across lerna repo.

## install

```bash
npm install --save-dev lerna-script-tasks-dependencies
```

## Usage

TBD

```js
const {extraneous, unmanaged, sync, latest} = require('lerna-script-tasks-dependencies');

module.exports['deps:sync'] = sync();
module.exports['deps:extraneous'] = extraneous();
module.exports['deps:unmanaged'] = unmanaged();
module.exports['deps:latest'] = latest();
```

## API

### sync({[packages]})(log): Promise

Task that syncs dependency versions (dependencies, devDependencies, peerDependencies) with those defined in `lerna.json` as `managed*Dependencies`.

Parameters:

- packages - custom package list, or defaults as defined by `lerna.json`
- log - `npmlog` instance passed-in by `lerna-script`;

Say you have `lerna.json` in root of your project like:

```json
{
  "managedDependencies": {
    "lodash": "~1.0.0"
  }
}
```

upon invocation of this task for all submodules that have `lodash` defined in `dependencies` or `devDependencies` version of `lodash` will be updated to `~1.0.0`.

### unmanaged({[packages]})(log): Promise

List dependencies, that are present in modules `dependencies`, `devDependencies`, `peerDependencies`, but not defined in `lerna.json` as `managed*Dependencies`.

Parameters:

- packages - custom package list, or defaults as defined by `lerna.json`
- log - `npmlog` instance passed-in by `lerna-script`;

### extraneous({[packages]})(log): Promise

List dependencies, that are present in `lerna.json` as `managed*Dependencies`, but not defined in modules `dependencies`, `devDependencies`, `peerDependencies`.

Parameters:

- packages - custom package list, or defaults as defined by `lerna.json`
- log - `npmlog` instance passed-in by `lerna-script`;

### latest({[addRange, silent]})(log): Promise

List dependencies, that are present in `lerna.json` as `managed*Dependencies` and needs updating based on latest version published in npmjs.org.
The `lerna.json` can contain the following `autoSelect` rules which will automatically mark the relevant packages as _selected_

```json
{
  "managedDependencies": {
    "lodash": "~1.0.0",
    "dontUpdateMe": "3.0.5"
  },
  "autoselect": {
    "versionDiff": ["minor", "patch"],
    "exclude": ["dontUpdateMe"]
  }
}
```

In the above example, if a `minor` or a `patch` update is found for one of the packages, they will be selected by default unless the package name is `dontUpdateMe`

Parameters:

- addRange - when updating version in `lerna.json` to add range operator ('~', '^', ...). By default it sets fixed version.
- silent - does not prompt with the list of dependencies and automatically updates auto-selected packages versions in the `lerna.json` file
- log - `npmlog` instance passed-in by `lerna-script`;

---
_Source: https://npm.io/package/lerna-script-tasks-dependencies · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
