pnpm -r, --recursive

Aliases: m, multi, recursive, <command> -r

Executa um comando em cada projeto de um workspace, quando usado com os seguintes comandos:

  • install
  • list
  • outdated
  • publish
  • pack
  • rebuild
  • remove
  • unlink
  • update
  • why

Executa um comando em cada projeto de um workspace, excluindo o projeto raiz, quando usado com os seguintes comandos:

  • exec
  • run
  • test
  • add

If you want the root project be included even when running scripts, set the includeWorkspaceRoot setting to true.

Exemplos de uso:

pnpm -r publish

By default, recursive run, exec, and test execute projects in topological order: dependencies run before their dependents. Use --no-sort to disable graph ordering, or --parallel to start tasks without waiting for dependencies.

Opções#

  • Default: false
  • Type: true, false, deep

Link locally available packages in workspaces of a monorepo into node_modules instead of re-downloading them from the registry. This emulates functionality similar to yarn workspaces.

Quando definido como deep, os pacotes locais também podem ser vinculados a subdependências.

Be advised that it is encouraged instead to use pnpm-workspace.yaml for this setting, to enforce the same behaviour in all environments. Esta opção existe apenas para que você possa substituí-la, se necessário.

--workspace-concurrency#

  • Default: the smaller of 4 and the number of available CPU cores
  • Type: Number

Define o número máximo de tarefas a serem executadas simultaneamente. For unlimited concurrency use Infinity.

In a container with a CPU quota, such as a Kubernetes CPU limit, the quota is the number of available CPU cores when it is smaller than the number of CPUs the container may run on. A fractional quota is rounded down, to at least 1.

You can set the workspace-concurrency as <= 0 and it will use the number of available CPU cores as: max(1, (number of available CPU cores) - abs(workspace-concurrency))

--[no-]bail#

  • Default: true
  • Type: Boolean

Caso seja true, para quando uma tarefa gera um erro.

With --no-bail, tasks that depend on a failed task are skipped and independent tasks keep running. This config does not affect the exit code: if any task fails, the command exits with a non-zero code. See --no-bail.

Exemplo (executar testes em todos os pacotes, continuar se os testes falharem em um deles):

pnpm -r --no-bail test

--[no-]sort#

  • Default: true
  • Type: Boolean

When true, commands follow the workspace dependency graph. Recursive run also applies relationships from the tasks setting. Pass --no-sort to remove graph ordering. This also makes tasks, --reverse, and --resume-from inapplicable.

Exemplo:

pnpm -r --no-sort test

--reverse#

  • Default: false
  • Type: boolean

When true, dependency edges are reversed. For recursive run, this reverses the resolved task graph, including relationships declared with dependsOn.

pnpm -r --reverse run clean

--filter <package_selector>#

Read more about filtering.