oro apply

Applies the current project's requested dependencies to node_modules/, adding, removing, and updating dependencies as needed. This command is intended to be an idempotent way to make sure your node_modules is in the right state to execute, based on your declared dependencies.

This command is automatically executed by a number of Orogene subcommands. To force a full reapplication of node_modules, consider using the oro reapply command.

Usage:

oro apply [OPTIONS]

[aliases: a, ap, app]

Options

-h, --help

Print help (see a summary with '-h')

-V, --version

Print version

Apply Options

--no-apply

Prevent all apply operations from executing

--prefer-copy

When extracting packages, prefer to copy files files instead of linking them.

This option has no effect if hard linking fails (for example, if the cache is on a different drive), or if the project is on a filesystem that supports Copy-on-Write (zfs, btrfs, APFS (macOS), etc).

--lockfile-only

Whether to skip restoring packages into node_modules and just resolve the tree and write the lockfile

--locked

Make the resolver error if the newly-resolved tree would defer from an existing lockfile

[aliases: frozen]

--no-scripts

Skip running install scripts

--default-tag <DEFAULT_TAG>

Default dist-tag to use when resolving package versions

[default: latest]

--concurrency <CONCURRENCY>

Controls number of concurrent operations during various apply steps (resolution fetches, extractions, etc).

Tuning this might help reduce memory usage (if lowered), or improve performance (if increased).

[default: 50]

--script-concurrency <SCRIPT_CONCURRENCY>

Controls number of concurrent script executions while running run_script.

This option is separate from concurrency because executing concurrent scripts is a much heavier operation.

[default: 6]

--no-lockfile

Disable writing the lockfile after operations complete.

Note that lockfiles are only written after all operations complete successfully.

--hoisted

Use the hoisted installation mode, where all dependencies and their transitive dependencies are installed as high up in the node_modules tree as possible.

This can potentially mean that packages have access to dependencies they did not specify in their package.json, but it might be useful for compatibility.

By default, dependencies are installed in "isolated" mode, using a symlink/junction structure to simulate a dependency tree.

Global Options

--root <ROOT>

Path to the project to operate on.

By default, Orogene will look up from the current working directory until it finds a directory with a package.json file or a node_modules/ directory.

[default: .]

--registry <REGISTRY>

Registry used for unscoped packages

[default: https://registry.npmjs.org]

--scoped-registry <SCOPED_REGISTRIES>

Registry to use for a specific @scope, using --scoped-registry @scope=https://foo.com format.

Can be provided multiple times to specify multiple scoped registries.

--auth <AUTH>

Credentials to apply to registries when they're accessed. You can provide credentials for multiple registries at a time, and different credential fields for a registry.

The syntax is --auth {my.registry.com}token=deadbeef --auth {my.registry.com}username=myuser.

Valid auth fields are: token, username, password, and legacy-auth.

--cache <CACHE>

Location of disk cache.

Default location varies by platform.

--config <CONFIG>

File to read configuration values from.

When specified, global configuration loading is disabled and configuration values will only be read from this location.

--loglevel <LOGLEVEL>

Log output level/directive.

Supports plain loglevels (off, error, warn, info, debug, trace) as well as more advanced directives in the format target[span{field=value}]=level.

[default: info]

-q, --quiet

Disable all output

--json

Format output as JSON

--no-progress

Disable the progress bars

--no-emoji

Disable printing emoji.

By default, this will show emoji when outputting to a TTY that supports unicode.

--no-first-time

Skip first-time setup

--no-telemetry

Disable telemetry.

Telemetry for Orogene is opt-in, anonymous, and is used to help the team improve the product. It is usually configured on first run, but you can use this flag to force-disable it either in an individual CLI call, or in a project-local oro.kdl.

--sentry-dsn <SENTRY_DSN>

Sentry DSN (access token) where telemetry will be sent (if enabled)

--proxy

Use proxy to delegate the network.

Proxy is opt-in, it uses for outgoing http/https request. If enabled, should set proxy-url too.

--proxy-url <PROXY_URL>

A proxy to use for outgoing http requests

--no-proxy-domain <NO_PROXY_DOMAIN>

Use commas to separate multiple entries, e.g. .host1.com,.host2.com.

Can also be configured through the NO_PROXY environment variable, like NO_PROXY=.host1.com.

--retries <RETRIES>

How many times to retry failed network operations

[default: 2]