Home > @microsoft/rush-lib > PnpmOptionsConfiguration
PnpmOptionsConfiguration class
Options that are only used when the PNPM package manager is selected. Use this class to load "common/config/rush/pnpm-config.json" file, or, load json from "pnpmOptions" field in "rush.json" for legacy support.
Signature:
export declare class PnpmOptionsConfiguration extends PackageManagerOptionsConfigurationBase
Extends: PackageManagerOptionsConfigurationBase
Remarks
It is valid to define these options in rush.json even if the PNPM package manager is not being used.
Properties
Property | Modifiers | Type | Description |
---|---|---|---|
globalAllowedDeprecatedVersions | readonly | Record<string, string> | undefined | The PNPM documentation: https://pnpm.io/package\_json\#pnpmalloweddeprecatedversions If you are working to eliminate a deprecated version, it's better to specify |
globalNeverBuiltDependencies | readonly | string[] | undefined | The PNPM documentation: https://pnpm.io/package\_json\#pnpmneverbuiltdependencies |
globalOverrides | readonly | Record<string, string> | undefined | The "globalOverrides" setting provides a simple mechanism for overriding version selections for all dependencies of all projects in the monorepo workspace. The settings are copied into the Order of precedence: PNPM documentation: https://pnpm.io/package\_json\#pnpmoverrides |
globalPackageExtensions | readonly | Record<string, IPnpmPackageExtension> | undefined | The Order of precedence: PNPM documentation: https://pnpm.io/package\_json\#pnpmpackageextensions |
globalPatchedDependencies | readonly | Record<string, string> | undefined | (GENERATED BY RUSH-PNPM PATCH-COMMIT) When modifying this property, make sure you know what you are doing. The PNPM documentation: https://pnpm.io/package\_json\#pnpmpatcheddependencies |
globalPeerDependencyRules | readonly | IPnpmPeerDependencyRules | undefined | The Order of precedence: |
jsonFilename | readonly | string | undefined | |
pnpmStore | readonly | PnpmStoreOptions | The method used to resolve the store used by PNPM. |
pnpmStorePath | readonly | string | The path for PNPM to use as the store directory. Will be overridden by environment variable RUSH_PNPM_STORE_PATH |
preventManualShrinkwrapChanges | readonly | boolean | If true, then rush install will report an error if manual modifications were made to the PNPM shrinkwrap file without running rush update afterwards. |
strictPeerDependencies | readonly | boolean | If true, then Rush will add the "--strict-peer-dependencies" option when invoking PNPM. |
unsupportedPackageJsonSettings | readonly | unknown | undefined | (USE AT YOUR OWN RISK) This is a free-form property bag that will be copied into the USAGE OF THIS SETTING IS NOT SUPPORTED BY THE RUSH MAINTAINERS AND MAY CAUSE RUSH TO MALFUNCTION. If you encounter a missing PNPM setting that you believe should be supported, please create a GitHub issue or PR. Note that Rush does not aim to support every possible PNPM setting, but rather to promote a battle-tested installation strategy that is known to provide a good experience for large teams with lots of projects. |
useWorkspaces | readonly | boolean | If true, then Rush will use the workspaces feature to install and link packages when invoking PNPM. |
Methods
Method | Modifiers | Description |
---|---|---|
updateGlobalPatchedDependencies(patchedDependencies) | Updates patchedDependencies field of the PNPM options in the common/config/rush/pnpm-config.json file. |