@rushstack/rush-sdk 5.78.1 → 5.79.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/rush-lib.d.ts +145 -4
- package/package.json +2 -2
package/dist/rush-lib.d.ts
CHANGED
|
@@ -1241,11 +1241,11 @@ export declare interface IPhasedCommand extends IRushCommand {
|
|
|
1241
1241
|
*/
|
|
1242
1242
|
export declare interface _IPnpmOptionsJson extends IPackageManagerOptionsJsonBase {
|
|
1243
1243
|
/**
|
|
1244
|
-
*
|
|
1244
|
+
* {@inheritDoc PnpmOptionsConfiguration.pnpmStore}
|
|
1245
1245
|
*/
|
|
1246
1246
|
pnpmStore?: PnpmStoreOptions;
|
|
1247
1247
|
/**
|
|
1248
|
-
*
|
|
1248
|
+
* {@inheritDoc PnpmOptionsConfiguration.strictPeerDependencies}
|
|
1249
1249
|
*/
|
|
1250
1250
|
strictPeerDependencies?: boolean;
|
|
1251
1251
|
/**
|
|
@@ -1256,6 +1256,52 @@ export declare interface _IPnpmOptionsJson extends IPackageManagerOptionsJsonBas
|
|
|
1256
1256
|
* {@inheritDoc PnpmOptionsConfiguration.useWorkspaces}
|
|
1257
1257
|
*/
|
|
1258
1258
|
useWorkspaces?: boolean;
|
|
1259
|
+
/**
|
|
1260
|
+
* {@inheritDoc PnpmOptionsConfiguration.globalOverrides}
|
|
1261
|
+
*/
|
|
1262
|
+
globalOverrides?: Record<string, string>;
|
|
1263
|
+
/**
|
|
1264
|
+
* {@inheritDoc PnpmOptionsConfiguration.globalPeerDependencyRules}
|
|
1265
|
+
*/
|
|
1266
|
+
globalPeerDependencyRules?: IPnpmPeerDependencyRules;
|
|
1267
|
+
/**
|
|
1268
|
+
* {@inheritDoc PnpmOptionsConfiguration.globalPackageExtensions}
|
|
1269
|
+
*/
|
|
1270
|
+
globalPackageExtensions?: Record<string, IPnpmPackageExtension>;
|
|
1271
|
+
/**
|
|
1272
|
+
* {@inheritDoc PnpmOptionsConfiguration.globalNeverBuiltDependencies}
|
|
1273
|
+
*/
|
|
1274
|
+
globalNeverBuiltDependencies?: string[];
|
|
1275
|
+
/**
|
|
1276
|
+
* {@inheritDoc PnpmOptionsConfiguration.globalAllowedDeprecatedVersions}
|
|
1277
|
+
*/
|
|
1278
|
+
globalAllowedDeprecatedVersions?: Record<string, string>;
|
|
1279
|
+
/**
|
|
1280
|
+
* {@inheritDoc PnpmOptionsConfiguration.unsupportedPackageJsonSettings}
|
|
1281
|
+
*/
|
|
1282
|
+
unsupportedPackageJsonSettings?: unknown;
|
|
1283
|
+
}
|
|
1284
|
+
|
|
1285
|
+
declare interface IPnpmPackageExtension {
|
|
1286
|
+
dependencies?: Record<string, string>;
|
|
1287
|
+
optionalDependencies?: Record<string, string>;
|
|
1288
|
+
peerDependencies?: Record<string, string>;
|
|
1289
|
+
peerDependenciesMeta?: IPnpmPeerDependenciesMeta;
|
|
1290
|
+
}
|
|
1291
|
+
|
|
1292
|
+
declare interface IPnpmPeerDependenciesMeta {
|
|
1293
|
+
[packageName: string]: {
|
|
1294
|
+
optional?: boolean;
|
|
1295
|
+
};
|
|
1296
|
+
}
|
|
1297
|
+
|
|
1298
|
+
/**
|
|
1299
|
+
* @beta
|
|
1300
|
+
*/
|
|
1301
|
+
declare interface IPnpmPeerDependencyRules {
|
|
1302
|
+
ignoreMissing?: string[];
|
|
1303
|
+
allowAny?: string[];
|
|
1304
|
+
allowedVersions?: Record<string, string>;
|
|
1259
1305
|
}
|
|
1260
1306
|
|
|
1261
1307
|
declare interface IRawRepoState {
|
|
@@ -1350,6 +1396,7 @@ declare interface IRushGitPolicyJson {
|
|
|
1350
1396
|
sampleEmail?: string;
|
|
1351
1397
|
versionBumpCommitMessage?: string;
|
|
1352
1398
|
changeLogUpdateCommitMessage?: string;
|
|
1399
|
+
changefilesCommitMessage?: string;
|
|
1353
1400
|
tagSeparator?: string;
|
|
1354
1401
|
}
|
|
1355
1402
|
|
|
@@ -2042,6 +2089,8 @@ export declare class PhasedCommandHooks {
|
|
|
2042
2089
|
|
|
2043
2090
|
/**
|
|
2044
2091
|
* Options that are only used when the PNPM package manager is selected.
|
|
2092
|
+
* Use this class to load "common/config/rush/pnpm-config.json" file,
|
|
2093
|
+
* or, load json from "pnpmOptions" field in "rush.json" for legacy support.
|
|
2045
2094
|
*
|
|
2046
2095
|
* @remarks
|
|
2047
2096
|
* It is valid to define these options in rush.json even if the PNPM package manager
|
|
@@ -2050,6 +2099,7 @@ export declare class PhasedCommandHooks {
|
|
|
2050
2099
|
* @public
|
|
2051
2100
|
*/
|
|
2052
2101
|
export declare class PnpmOptionsConfiguration extends PackageManagerOptionsConfigurationBase {
|
|
2102
|
+
private static _jsonSchema;
|
|
2053
2103
|
/**
|
|
2054
2104
|
* The method used to resolve the store used by PNPM.
|
|
2055
2105
|
*
|
|
@@ -2099,11 +2149,92 @@ export declare class PnpmOptionsConfiguration extends PackageManagerOptionsConfi
|
|
|
2099
2149
|
* If true, then Rush will use the workspaces feature to install and link packages when invoking PNPM.
|
|
2100
2150
|
*
|
|
2101
2151
|
* @remarks
|
|
2102
|
-
* The default value is
|
|
2152
|
+
* The default value is true. (For now.)
|
|
2103
2153
|
*/
|
|
2104
2154
|
readonly useWorkspaces: boolean;
|
|
2155
|
+
/**
|
|
2156
|
+
* The "globalOverrides" setting provides a simple mechanism for overriding version selections
|
|
2157
|
+
* for all dependencies of all projects in the monorepo workspace. The settings are copied
|
|
2158
|
+
* into the `pnpm.overrides` field of the `common/temp/package.json` file that is generated
|
|
2159
|
+
* by Rush during installation.
|
|
2160
|
+
*
|
|
2161
|
+
* Order of precedence: `.pnpmfile.cjs` has the highest precedence, followed by
|
|
2162
|
+
* `unsupportedPackageJsonSettings`, `globalPeerDependencyRules`, `globalPackageExtensions`,
|
|
2163
|
+
* and `globalOverrides` has lowest precedence.
|
|
2164
|
+
*
|
|
2165
|
+
* PNPM documentation: https://pnpm.io/package_json#pnpmoverrides
|
|
2166
|
+
*/
|
|
2167
|
+
readonly globalOverrides: Record<string, string> | undefined;
|
|
2168
|
+
/**
|
|
2169
|
+
* The `globalPeerDependencyRules` setting provides various settings for suppressing validation errors
|
|
2170
|
+
* that are reported during installation with `strictPeerDependencies=true`. The settings are copied
|
|
2171
|
+
* into the `pnpm.peerDependencyRules` field of the `common/temp/package.json` file that is generated
|
|
2172
|
+
* by Rush during installation.
|
|
2173
|
+
*
|
|
2174
|
+
* Order of precedence: `.pnpmfile.cjs` has the highest precedence, followed by
|
|
2175
|
+
* `unsupportedPackageJsonSettings`, `globalPeerDependencyRules`, `globalPackageExtensions`,
|
|
2176
|
+
* and `globalOverrides` has lowest precedence.
|
|
2177
|
+
*
|
|
2178
|
+
* https://pnpm.io/package_json#pnpmpeerdependencyrules
|
|
2179
|
+
*/
|
|
2180
|
+
readonly globalPeerDependencyRules: IPnpmPeerDependencyRules | undefined;
|
|
2181
|
+
/**
|
|
2182
|
+
* The `globalPackageExtension` setting provides a way to patch arbitrary package.json fields
|
|
2183
|
+
* for any PNPM dependency of the monorepo. The settings are copied into the `pnpm.packageExtensions`
|
|
2184
|
+
* field of the `common/temp/package.json` file that is generated by Rush during installation.
|
|
2185
|
+
* The `globalPackageExtension` setting has similar capabilities as `.pnpmfile.cjs` but without
|
|
2186
|
+
* the downsides of an executable script (nondeterminism, unreliable caching, performance concerns).
|
|
2187
|
+
*
|
|
2188
|
+
* Order of precedence: `.pnpmfile.cjs` has the highest precedence, followed by
|
|
2189
|
+
* `unsupportedPackageJsonSettings`, `globalPeerDependencyRules`, `globalPackageExtensions`,
|
|
2190
|
+
* and `globalOverrides` has lowest precedence.
|
|
2191
|
+
*
|
|
2192
|
+
* PNPM documentation: https://pnpm.io/package_json#pnpmpackageextensions
|
|
2193
|
+
*/
|
|
2194
|
+
readonly globalPackageExtensions: Record<string, IPnpmPackageExtension> | undefined;
|
|
2195
|
+
/**
|
|
2196
|
+
* The `globalNeverBuiltDependencies` setting suppresses the `preinstall`, `install`, and `postinstall`
|
|
2197
|
+
* lifecycle events for the specified NPM dependencies. This is useful for scripts with poor practices
|
|
2198
|
+
* such as downloading large binaries without retries or attempting to invoke OS tools such as
|
|
2199
|
+
* a C++ compiler. (PNPM's terminology refers to these lifecycle events as "building" a package;
|
|
2200
|
+
* it has nothing to do with build system operations such as `rush build` or `rushx build`.)
|
|
2201
|
+
* The settings are copied into the `pnpm.neverBuiltDependencies` field of the `common/temp/package.json`
|
|
2202
|
+
* file that is generated by Rush during installation.
|
|
2203
|
+
*
|
|
2204
|
+
* PNPM documentation: https://pnpm.io/package_json#pnpmneverbuiltdependencies
|
|
2205
|
+
*/
|
|
2206
|
+
readonly globalNeverBuiltDependencies: string[] | undefined;
|
|
2207
|
+
/**
|
|
2208
|
+
* The `globalAllowedDeprecatedVersions` setting suppresses installation warnings for package
|
|
2209
|
+
* versions that the NPM registry reports as being deprecated. This is useful if the
|
|
2210
|
+
* deprecated package is an indirect dependency of an external package that has not released a fix.
|
|
2211
|
+
* The settings are copied into the `pnpm.allowedDeprecatedVersions` field of the `common/temp/package.json`
|
|
2212
|
+
* file that is generated by Rush during installation.
|
|
2213
|
+
*
|
|
2214
|
+
* PNPM documentation: https://pnpm.io/package_json#pnpmalloweddeprecatedversions
|
|
2215
|
+
*
|
|
2216
|
+
* If you are working to eliminate a deprecated version, it's better to specify `allowedDeprecatedVersions`
|
|
2217
|
+
* in the package.json file for individual Rush projects.
|
|
2218
|
+
*/
|
|
2219
|
+
readonly globalAllowedDeprecatedVersions: Record<string, string> | undefined;
|
|
2220
|
+
/**
|
|
2221
|
+
* (USE AT YOUR OWN RISK) This is a free-form property bag that will be copied into
|
|
2222
|
+
* the `common/temp/package.json` file that is generated by Rush during installation.
|
|
2223
|
+
* This provides a way to experiment with new PNPM features. These settings will override
|
|
2224
|
+
* any other Rush configuration associated with a given JSON field except for `.pnpmfile.cjs`.
|
|
2225
|
+
*
|
|
2226
|
+
* USAGE OF THIS SETTING IS NOT SUPPORTED BY THE RUSH MAINTAINERS AND MAY CAUSE RUSH
|
|
2227
|
+
* TO MALFUNCTION. If you encounter a missing PNPM setting that you believe should
|
|
2228
|
+
* be supported, please create a GitHub issue or PR. Note that Rush does not aim to
|
|
2229
|
+
* support every possible PNPM setting, but rather to promote a battle-tested installation
|
|
2230
|
+
* strategy that is known to provide a good experience for large teams with lots of projects.
|
|
2231
|
+
*/
|
|
2232
|
+
readonly unsupportedPackageJsonSettings: unknown | undefined;
|
|
2233
|
+
private constructor();
|
|
2234
|
+
/** @internal */
|
|
2235
|
+
static loadFromJsonFileOrThrow(jsonFilename: string, commonTempFolder: string): PnpmOptionsConfiguration;
|
|
2105
2236
|
/** @internal */
|
|
2106
|
-
|
|
2237
|
+
static loadFromJsonObject(json: _IPnpmOptionsJson, commonTempFolder: string): PnpmOptionsConfiguration;
|
|
2107
2238
|
}
|
|
2108
2239
|
|
|
2109
2240
|
/**
|
|
@@ -2310,6 +2441,7 @@ export declare class RushConfiguration {
|
|
|
2310
2441
|
private _gitSampleEmail;
|
|
2311
2442
|
private _gitVersionBumpCommitMessage;
|
|
2312
2443
|
private _gitChangeLogUpdateCommitMessage;
|
|
2444
|
+
private _gitChangefilesCommitMessage;
|
|
2313
2445
|
private _gitTagSeparator;
|
|
2314
2446
|
private _hotfixChangeEnabled;
|
|
2315
2447
|
private _repositoryUrls;
|
|
@@ -2582,6 +2714,11 @@ export declare class RushConfiguration {
|
|
|
2582
2714
|
* The commit message to use when committing change log files 'rush version'
|
|
2583
2715
|
*/
|
|
2584
2716
|
get gitChangeLogUpdateCommitMessage(): string | undefined;
|
|
2717
|
+
/**
|
|
2718
|
+
* [Part of the "gitPolicy" feature.]
|
|
2719
|
+
* The commit message to use when committing change log files 'rush version'
|
|
2720
|
+
*/
|
|
2721
|
+
get gitChangefilesCommitMessage(): string | undefined;
|
|
2585
2722
|
/**
|
|
2586
2723
|
* [Part of the "gitPolicy" feature.]
|
|
2587
2724
|
* The separator between package name and version in git tag.
|
|
@@ -3086,6 +3223,10 @@ export declare class RushConstants {
|
|
|
3086
3223
|
* Experiments configuration file.
|
|
3087
3224
|
*/
|
|
3088
3225
|
static readonly experimentsFilename: string;
|
|
3226
|
+
/**
|
|
3227
|
+
* Pnpm configuration file
|
|
3228
|
+
*/
|
|
3229
|
+
static readonly pnpmConfigFilename: string;
|
|
3089
3230
|
/**
|
|
3090
3231
|
* Rush plugins configuration file name.
|
|
3091
3232
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rushstack/rush-sdk",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.79.0",
|
|
4
4
|
"description": "An API for interacting with the Rush engine",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"tapable": "2.2.1"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
|
20
|
-
"@microsoft/rush-lib": "5.
|
|
20
|
+
"@microsoft/rush-lib": "5.79.0",
|
|
21
21
|
"@rushstack/eslint-config": "3.0.1",
|
|
22
22
|
"@rushstack/heft": "0.47.10",
|
|
23
23
|
"@rushstack/heft-node-rig": "1.10.12",
|