Normalize Dependencies
Normalize dependency fields and optionally pin versions in workspace package.json files.
Summary
The normalize-dependencies recipe handles all dependency-related fields in each workspace's package.json. It normalizes dependencies, devDependencies, peerDependencies, optionalDependencies, bundleDependencies (merging from the deprecated bundledDependencies form), and overrides. When version pinning settings are enabled, it strips range prefixes (e.g., ^, ~) from dependency versions.
Settings
Settings are configured per workspace in nova.config.json under the recipes key:
| Setting | Type | Description |
|---|---|---|
pinDependencyVersions | boolean | Strip range prefixes from dependencies versions |
pinDevDependencyVersions | boolean | Strip range prefixes from devDependencies versions |
Usage
- nova (installed)
- npx (no install)
nova recipe package-json normalize-dependencies [options]
npx --yes @cbnventures/nova@latest recipe package-json normalize-dependencies [options]
Options
| Flag | Description |
|---|---|
-d, --dry-run | Preview changes without modifying files. |
-r, --replace-file | Overwrite the original file instead of creating a backup. |