# @lerna/filter-options

> Options for lerna sub-commands that need filtering

Latest version **6.4.1** (published 2023-01-12) · MIT license · 0 weekly downloads

> **Deprecated.** This package is deprecated.

## Install

```sh
npm install @lerna/filter-options
pnpm add @lerna/filter-options
yarn add @lerna/filter-options
bun add @lerna/filter-options
```

## Health

**Score 10/100 (F)** — status: deprecated.

Negative: deprecated.

## Facts

| | |
|---|---|
| Version | 6.4.1 |
| Published | 2023-01-12 |
| First published | 2018-03-07 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Node | ^14.15.0 \|\| >=16.0.0 |
| Dependencies | 4 |
| Unpacked size | 11.1 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 36046 |
| Author | Daniel Stockman |
| Maintainers | jameshenry, nrwlowner |
| Keywords | lerna, core |

## Links

- npm: https://www.npmjs.com/package/@lerna/filter-options
- Repository: https://github.com/lerna/lerna
- Homepage: https://lerna.js.org
- Issues: https://github.com/lerna/lerna/issues
- npm.io page: https://npm.io/package/@lerna/filter-options

## Dependencies (4)

- [dedent](https://npm.io/package/dedent.md) ^0.7.0
- [npmlog](https://npm.io/package/npmlog.md) ^6.0.2
- [@lerna/collect-updates](https://npm.io/package/@lerna/collect-updates.md) 6.4.1
- [@lerna/filter-packages](https://npm.io/package/@lerna/filter-packages.md) 6.4.1

## Alternatives

- [lodash.assign](https://npm.io/package/lodash.assign.md) — 2.3M weekly downloads
- [lodash.chunk](https://npm.io/package/lodash.chunk.md) — 1.8M weekly downloads
- [react-native-ios-utilities](https://npm.io/package/react-native-ios-utilities.md) — 138.5K weekly downloads
- [@technically/lodash](https://npm.io/package/@technically/lodash.md) — 50.9K weekly downloads
- [@fluid-topics/ft-icon](https://npm.io/package/@fluid-topics/ft-icon.md) — 20.6K weekly downloads

## Recent versions

- 6.4.1 (latest) — 2023-01-12
- 6.3.1-beta.8 (next) — 2022-12-27
- 6.4.0 — 2023-01-05
- 6.3.1-beta.7 — 2022-12-27
- 6.3.1-beta.6 — 2022-12-27
- 6.3.1-beta.5 — 2022-12-27
- 6.3.1-beta.4 — 2022-12-27
- 6.3.1-beta.3 — 2022-12-27
- 6.3.1-beta.2 — 2022-12-27
- 6.3.1-beta.1 — 2022-12-27
- 6.3.1-beta.0 — 2022-12-26
- 6.3.0 — 2022-12-26
- 6.2.0 — 2022-12-13
- 6.1.0 — 2022-11-29
- 6.0.3 — 2022-11-07
- … 65 more at https://npm.io/package/@lerna/filter-options/versions

## README

# `@lerna/filter-options`

> Options for lerna sub-commands that need filtering

Install [lerna](https://www.npmjs.com/package/lerna) for access to the `lerna` CLI.

## Options

### `--scope <glob>`

Include only packages with names matching the given glob.

```sh
$ lerna exec --scope my-component -- ls -la
$ lerna run --scope toolbar-* test
$ lerna run --scope package-1 --scope *-2 lint
```

**Note:** For certain globs, it may be necessary to quote the option argument to avoid premature shell expansion.

### `--ignore <glob>`

Exclude packages with names matching the given glob.

```sh
$ lerna exec --ignore package-{1,2,5}  -- ls -la
$ lerna run --ignore package-1  test
$ lerna run --ignore package-@(1|2) --ignore package-3 lint
```

More examples of filtering can be found [here](https://github.com/lerna/lerna/blob/c0a750e0f482c16dda2f922f235861283efbe94d/commands/list/__tests__/list-command.test.js#L305-L356).

### `--no-private`

Exclude private packages. They are included by default.

### `--since [ref]`

Only include packages that have been changed since the specified `ref`. If no ref is passed, it defaults to the most-recent tag.

```sh
# List the contents of packages that have changed since the latest tag
$ lerna exec --since -- ls -la

# Run the tests for all packages that have changed since `main`
$ lerna run test --since main

# List all packages that have changed since `some-branch`
$ lerna ls --since some-branch
```

_This can be particularly useful when used in CI, if you can obtain the target branch a PR will be going into, because you can use that as the `ref` to the `--since` option. This works well for PRs going into the default branch as well as feature branches._

### `--exclude-dependents`

Exclude all transitive dependents when running a command with `--since`, overriding the default "changed" algorithm.

This flag has no effect without `--since`, and will throw an error in that case.

### `--include-dependents`

Include all transitive dependents when running a command regardless of `--scope`, `--ignore`, or `--since`.

### `--include-dependencies`

Include all transitive dependencies when running a command regardless of `--scope`, `--ignore`, or `--since`.

Used in combination with any command that accepts `--scope` (`bootstrap`, `clean`, `ls`, `run`, `exec`).
Ensures that all dependencies (and dev dependencies) of any scoped packages (either through `--scope` or `--ignore`) are operated on as well.

> Note: This will override the `--scope` and `--ignore` flags.
>
> > i.e. A package matched by the `--ignore` flag will still be bootstrapped if it is depended on by another package that is being bootstrapped.

This is useful for situations where you want to "set up" a single package that relies on other packages being set up.

```sh
$ lerna bootstrap --scope my-component --include-dependencies
# my-component and all of its dependencies will be bootstrapped
```

```sh
$ lerna bootstrap --scope "package-*" --ignore "package-util-*" --include-dependencies
# all packages matching "package-util-*" will be ignored unless they are
# depended upon by a package whose name matches "package-*"
```

### `--include-merged-tags`

```sh
$ lerna exec --since --include-merged-tags -- ls -la
```

Include tags from merged branches when running a command with `--since`. This is only useful if you do a lot of publishing from feature branches, which is not generally recommended.

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