@rushstack/rush-sdk 5.116.0 → 5.117.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.
@@ -660,13 +660,6 @@ export declare const EnvironmentVariableNames: {
660
660
  * or `0` to disallow them. (See the comments in the command-line.json file for more information).
661
661
  */
662
662
  readonly RUSH_ALLOW_WARNINGS_IN_SUCCESSFUL_BUILD: "RUSH_ALLOW_WARNINGS_IN_SUCCESSFUL_BUILD";
663
- /**
664
- * This variable selects a specific installation variant for Rush to use when installing
665
- * and linking package dependencies.
666
- * For more information, see the command-line help for the `--variant` parameter
667
- * and this article: https://rushjs.io/pages/advanced/installation_variants/
668
- */
669
- readonly RUSH_VARIANT: "RUSH_VARIANT";
670
663
  /**
671
664
  * Specifies the maximum number of concurrent processes to launch during a build.
672
665
  * For more information, see the command-line help for the `--parallelism` parameter for "rush build".
@@ -2006,7 +1999,7 @@ declare interface IRushConfigurationJson {
2006
1999
  pnpmOptions?: _IPnpmOptionsJson;
2007
2000
  yarnOptions?: _IYarnOptionsJson;
2008
2001
  ensureConsistentVersions?: boolean;
2009
- variants?: IRushVariantOptionsJson[];
2002
+ variants?: unknown;
2010
2003
  }
2011
2004
 
2012
2005
  /**
@@ -2159,14 +2152,6 @@ export declare interface IRushSessionOptions {
2159
2152
  getIsDebugMode: () => boolean;
2160
2153
  }
2161
2154
 
2162
- /**
2163
- * Options defining an allowed variant as part of IRushConfigurationJson.
2164
- */
2165
- declare interface IRushVariantOptionsJson {
2166
- variantName: string;
2167
- description: string;
2168
- }
2169
-
2170
2155
  /**
2171
2156
  * Represents a readonly view of a `Stopwatch`.
2172
2157
  * @beta
@@ -3239,7 +3224,6 @@ export declare class RepoStateFile {
3239
3224
  * If the file has not been created yet, then an empty object is returned.
3240
3225
  *
3241
3226
  * @param jsonFilename - The path to the repo-state.json file.
3242
- * @param variant - The variant currently being used by Rush.
3243
3227
  */
3244
3228
  static loadFromFile(jsonFilename: string): RepoStateFile;
3245
3229
  /**
@@ -3328,12 +3312,10 @@ export declare class Rush {
3328
3312
  */
3329
3313
  export declare class RushConfiguration {
3330
3314
  private static _jsonSchema;
3331
- private _variants;
3332
3315
  private readonly _pathTrees;
3333
3316
  private _projects;
3334
3317
  private _projectsByName;
3335
3318
  private _projectsByTag;
3336
- private _commonVersionsConfigurationsByVariant;
3337
3319
  private readonly _subspacesByName;
3338
3320
  private readonly _subspaces;
3339
3321
  /**
@@ -3435,13 +3417,12 @@ export declare class RushConfiguration {
3435
3417
  */
3436
3418
  readonly subspacesFeatureEnabled: boolean;
3437
3419
  /**
3438
- * The filename of the variant dependency data file. By default this is
3439
- * called 'current-variant.json' resides in the Rush common folder.
3440
- * Its data structure is defined by ICurrentVariantJson.
3420
+ * If true, the `variants` field is present in rush.json.
3441
3421
  *
3442
- * Example: `C:\MyRepo\common\temp\current-variant.json`
3422
+ * @internal
3423
+ * @deprecated - Remove when the field is removed from the rush.json schema.
3443
3424
  */
3444
- readonly currentVariantJsonFilename: string;
3425
+ readonly _hasVariantsField: boolean;
3445
3426
  /**
3446
3427
  * The version of the locally package manager tool. (Example: "1.2.3")
3447
3428
  */
@@ -3743,17 +3724,9 @@ export declare class RushConfiguration {
3743
3724
  * Instead it will be initialized in an empty state, and calling CommonVersionsConfiguration.save()
3744
3725
  * will create the file.
3745
3726
  *
3746
- * @deprecated Use `getCommonVersions` instead, which gets the correct common version data
3747
- * for a given active variant.
3727
+ * @deprecated Use `getCommonVersions` instead, which gets the correct common version data.
3748
3728
  */
3749
3729
  get commonVersions(): CommonVersionsConfiguration;
3750
- /**
3751
- * Gets the currently-installed variant, if an installation has occurred.
3752
- * For Rush operations which do not take a --variant parameter, this method
3753
- * determines which variant, if any, was last specified when performing "rush install"
3754
- * or "rush update".
3755
- */
3756
- get currentInstalledVariant(): string | undefined;
3757
3730
  /**
3758
3731
  * @deprecated Use {@link Subspace.getCommonVersionsFilePath} instead
3759
3732
  */
@@ -3764,11 +3737,10 @@ export declare class RushConfiguration {
3764
3737
  getCommonVersions(subspace?: Subspace): CommonVersionsConfiguration;
3765
3738
  /**
3766
3739
  * Returns a map of all direct dependencies that only have a single semantic version specifier.
3767
- * @param variant - The name of the current variant in use by the active command.
3768
3740
  *
3769
3741
  * @returns A map of dependency name --\> version specifier for implicitly preferred versions.
3770
3742
  */
3771
- getImplicitlyPreferredVersions(variant?: string | undefined): Map<string, string>;
3743
+ getImplicitlyPreferredVersions(): Map<string, string>;
3772
3744
  /**
3773
3745
  * @deprecated Use {@link Subspace.getRepoStateFilePath} instead
3774
3746
  */
@@ -4015,6 +3987,10 @@ export declare class RushConfigurationProject {
4015
3987
  * the Rush config files; instead, they should rely on the official APIs from rush-lib.
4016
3988
  */
4017
3989
  export declare class RushConstants {
3990
+ /**
3991
+ * The filename ("rush.json") for the root-level configuration file.
3992
+ */
3993
+ static readonly rushJsonFilename: 'rush.json';
4018
3994
  /**
4019
3995
  * The filename ("browser-approved-packages.json") for an optional policy configuration file
4020
3996
  * that stores a list of NPM packages that have been approved for usage by Rush projects.
@@ -4022,11 +3998,11 @@ export declare class RushConstants {
4022
3998
  * (e.g. whose approval criteria mostly focuses on licensing and code size), and one for everywhere else
4023
3999
  * (e.g. tooling projects whose approval criteria mostly focuses on avoiding node_modules sprawl).
4024
4000
  */
4025
- static readonly browserApprovedPackagesFilename: string;
4001
+ static readonly browserApprovedPackagesFilename: 'browser-approved-packages.json';
4026
4002
  /**
4027
4003
  * The folder name ("changes") where change files will be stored.
4028
4004
  */
4029
- static readonly changeFilesFolderName: string;
4005
+ static readonly changeFilesFolderName: 'changes';
4030
4006
  /**
4031
4007
  * The filename ("nonbrowser-approved-packages.json") for an optional policy configuration file
4032
4008
  * that stores a list of NPM packages that have been approved for usage by Rush projects.
@@ -4034,76 +4010,70 @@ export declare class RushConstants {
4034
4010
  * (e.g. whose approval criteria mostly focuses on licensing and code size), and one for everywhere else
4035
4011
  * (e.g. tooling projects whose approval criteria mostly focuses on avoiding node_modules sprawl).
4036
4012
  */
4037
- static readonly nonbrowserApprovedPackagesFilename: string;
4013
+ static readonly nonbrowserApprovedPackagesFilename: 'nonbrowser-approved-packages.json';
4038
4014
  /**
4039
4015
  * The folder name ("common") where Rush's common data will be stored.
4040
4016
  */
4041
- static readonly commonFolderName: string;
4017
+ static readonly commonFolderName: 'common';
4042
4018
  /**
4043
4019
  * The NPM scope ("\@rush-temp") that is used for Rush's temporary projects.
4044
4020
  */
4045
- static readonly rushTempNpmScope: string;
4021
+ static readonly rushTempNpmScope: '@rush-temp';
4046
4022
  /**
4047
4023
  * The folder name ("temp") under the common folder, or under the .rush folder in each project's directory where
4048
4024
  * temporary files will be stored.
4049
4025
  * Example: `C:\MyRepo\common\temp`
4050
4026
  */
4051
- static readonly rushTempFolderName: string;
4027
+ static readonly rushTempFolderName: 'temp';
4052
4028
  /**
4053
4029
  * The folder name ("projects") where temporary projects will be stored.
4054
4030
  * Example: `C:\MyRepo\common\temp\projects`
4055
4031
  */
4056
- static readonly rushTempProjectsFolderName: string;
4057
- /**
4058
- * The folder name ("variants") under which named variant configurations for
4059
- * alternate dependency sets may be found.
4060
- * Example: `C:\MyRepo\common\config\rush\variants`
4061
- */
4062
- static readonly rushVariantsFolderName: string;
4032
+ static readonly rushTempProjectsFolderName: 'projects';
4063
4033
  /**
4064
4034
  * The filename ("npm-shrinkwrap.json") used to store an installation plan for the NPM package manger.
4065
4035
  */
4066
- static readonly npmShrinkwrapFilename: string;
4036
+ static readonly npmShrinkwrapFilename: 'npm-shrinkwrap.json';
4067
4037
  /**
4068
4038
  * Number of installation attempts
4069
4039
  */
4070
- static readonly defaultMaxInstallAttempts: number;
4040
+ static readonly defaultMaxInstallAttempts: 1;
4071
4041
  /**
4072
4042
  * The filename ("pnpm-lock.yaml") used to store an installation plan for the PNPM package manger
4073
4043
  * (PNPM version 3.x and later).
4074
4044
  */
4075
- static readonly pnpmV3ShrinkwrapFilename: string;
4045
+ static readonly pnpmV3ShrinkwrapFilename: 'pnpm-lock.yaml';
4076
4046
  /**
4077
4047
  * The filename ("pnpmfile.js") used to add custom configuration to PNPM (PNPM version 1.x and later).
4078
4048
  */
4079
- static readonly pnpmfileV1Filename: string;
4049
+ static readonly pnpmfileV1Filename: 'pnpmfile.js';
4080
4050
  /**
4081
4051
  * The filename (".pnpmfile.cjs") used to add custom configuration to PNPM (PNPM version 6.x and later).
4082
4052
  */
4083
- static readonly pnpmfileV6Filename: string;
4053
+ static readonly pnpmfileV6Filename: '.pnpmfile.cjs';
4084
4054
  /**
4085
4055
  * The filename ("global-pnpmfile.cjs") used to add custom configuration to subspaces
4086
4056
  */
4087
- static readonly pnpmfileGlobalFilename: string;
4057
+ static readonly pnpmfileGlobalFilename: 'global-pnpmfile.cjs';
4088
4058
  /**
4089
4059
  * The folder name used to store patch files for pnpm
4090
4060
  * Example: `C:\MyRepo\common\config\pnpm-patches`
4091
4061
  * Example: `C:\MyRepo\common\temp\patches`
4092
4062
  */
4093
- static readonly pnpmPatchesFolderName: string;
4063
+ static readonly pnpmPatchesFolderName: 'patches';
4094
4064
  /**
4095
4065
  * The folder name under `/common/temp` used to store checked-in patches.
4096
4066
  * Example: `C:\MyRepo\common\pnpm-patches`
4097
4067
  */
4098
- static readonly pnpmPatchesCommonFolderName: string;
4068
+ static readonly pnpmPatchesCommonFolderName: `pnpm-patches`;
4099
4069
  /**
4100
4070
  * The filename ("shrinkwrap.yaml") used to store state for pnpm
4101
4071
  */
4102
- static readonly yarnShrinkwrapFilename: string;
4072
+ static readonly yarnShrinkwrapFilename: 'yarn.lock';
4103
4073
  /**
4104
4074
  * The folder name ("node_modules") where NPM installs its packages.
4105
4075
  */
4106
- static readonly nodeModulesFolderName: string;
4076
+ static readonly nodeModulesFolderName: 'node_modules';
4107
4077
  /**
4108
4078
  * The filename ("pinned-versions.json") for an old configuration file that
4109
4079
  * that is no longer supported.
@@ -4111,98 +4081,98 @@ export declare class RushConstants {
4111
4081
  * @deprecated This feature has been superseded by the "preferredVersions" setting
4112
4082
  * in common-versions.json
4113
4083
  */
4114
- static readonly pinnedVersionsFilename: string;
4084
+ static readonly pinnedVersionsFilename: 'pinned-versions.json';
4115
4085
  /**
4116
4086
  * The filename ("common-versions.json") for an optional configuration file
4117
4087
  * that stores dependency version information that affects all projects in the repo.
4118
4088
  * This configuration file should go in the "common/config/rush" folder.
4119
4089
  */
4120
- static readonly commonVersionsFilename: string;
4090
+ static readonly commonVersionsFilename: 'common-versions.json';
4121
4091
  /**
4122
4092
  * The filename ("repo-state.json") for a file used by Rush to
4123
4093
  * store the state of various features as they stand in the repo.
4124
4094
  */
4125
- static readonly repoStateFilename: string;
4095
+ static readonly repoStateFilename: 'repo-state.json';
4126
4096
  /**
4127
4097
  * The filename ("custom-tips.json") for the file used by Rush to
4128
4098
  * print user-customized messages.
4129
4099
  * This configuration file should go in the "common/config/rush" folder.
4130
4100
  */
4131
- static readonly customTipsFilename: string;
4101
+ static readonly customTipsFilename: 'custom-tips.json';
4132
4102
  /**
4133
4103
  * The name of the per-project folder where project-specific Rush files are stored. For example,
4134
4104
  * the package-deps files, which are used by commands to determine if a particular project needs to be rebuilt.
4135
4105
  */
4136
- static readonly projectRushFolderName: string;
4106
+ static readonly projectRushFolderName: '.rush';
4137
4107
  /**
4138
4108
  * Custom command line configuration file, which is used by rush for implementing
4139
4109
  * custom command and options.
4140
4110
  */
4141
- static readonly commandLineFilename: string;
4142
- static readonly versionPoliciesFilename: string;
4111
+ static readonly commandLineFilename: 'command-line.json';
4112
+ static readonly versionPoliciesFilename: 'version-policies.json';
4143
4113
  /**
4144
4114
  * Experiments configuration file.
4145
4115
  */
4146
- static readonly experimentsFilename: string;
4116
+ static readonly experimentsFilename: 'experiments.json';
4147
4117
  /**
4148
4118
  * Pnpm configuration file
4149
4119
  */
4150
- static readonly pnpmConfigFilename: string;
4120
+ static readonly pnpmConfigFilename: 'pnpm-config.json';
4151
4121
  /**
4152
4122
  * Rush plugins configuration file name.
4153
4123
  */
4154
- static readonly rushPluginsConfigFilename: string;
4124
+ static readonly rushPluginsConfigFilename: 'rush-plugins.json';
4155
4125
  /**
4156
4126
  * Rush plugin manifest file name.
4157
4127
  */
4158
- static readonly rushPluginManifestFilename: string;
4128
+ static readonly rushPluginManifestFilename: 'rush-plugin-manifest.json';
4159
4129
  /**
4160
4130
  * The artifactory.json configuration file name.
4161
4131
  */
4162
- static readonly artifactoryFilename: string;
4132
+ static readonly artifactoryFilename: 'artifactory.json';
4163
4133
  /**
4164
4134
  * The subspaces.json configuration file name
4165
4135
  */
4166
- static readonly subspacesConfigFilename: string;
4136
+ static readonly subspacesConfigFilename: 'subspaces.json';
4167
4137
  /**
4168
4138
  * The name of the default subspace if one isn't specified but subspaces is enabled.
4169
4139
  */
4170
- static readonly defaultSubspaceName: string;
4140
+ static readonly defaultSubspaceName: 'default';
4171
4141
  /**
4172
4142
  * Build cache configuration file.
4173
4143
  */
4174
- static readonly buildCacheFilename: string;
4144
+ static readonly buildCacheFilename: 'build-cache.json';
4175
4145
  /**
4176
4146
  * Build cache version number, incremented when the logic to create cache entries changes.
4177
4147
  * Changing this ensures that cache entries generated by an old version will no longer register as a cache hit.
4178
4148
  */
4179
- static readonly buildCacheVersion: number;
4149
+ static readonly buildCacheVersion: 1;
4180
4150
  /**
4181
4151
  * Cobuild configuration file.
4182
4152
  */
4183
- static readonly cobuildFilename: string;
4153
+ static readonly cobuildFilename: 'cobuild.json';
4184
4154
  /**
4185
4155
  * Per-project configuration filename.
4186
4156
  */
4187
- static readonly rushProjectConfigFilename: string;
4157
+ static readonly rushProjectConfigFilename: 'rush-project.json';
4188
4158
  /**
4189
4159
  * The URL ("http://rushjs.io") for the Rush web site.
4190
4160
  */
4191
- static readonly rushWebSiteUrl: string;
4161
+ static readonly rushWebSiteUrl: 'https://rushjs.io';
4192
4162
  /**
4193
4163
  * The name of the NPM package for the Rush tool ("\@microsoft/rush").
4194
4164
  */
4195
- static readonly rushPackageName: string;
4165
+ static readonly rushPackageName: '@microsoft/rush';
4196
4166
  /**
4197
4167
  * The folder name ("rush-recycler") where Rush moves large folder trees
4198
4168
  * before asynchronously deleting them.
4199
4169
  */
4200
- static readonly rushRecyclerFolderName: string;
4170
+ static readonly rushRecyclerFolderName: 'rush-recycler';
4201
4171
  /**
4202
4172
  * The name of the file to drop in project-folder/.rush/temp/ containing a listing of the project's direct
4203
4173
  * and indirect dependencies. This is used to detect if a project's dependencies have changed since the last build.
4204
4174
  */
4205
- static readonly projectShrinkwrapFilename: string;
4175
+ static readonly projectShrinkwrapFilename: 'shrinkwrap-deps.json';
4206
4176
  /**
4207
4177
  * The value of the "commandKind" property for a bulk command in command-line.json
4208
4178
  */
@@ -4218,26 +4188,26 @@ export declare class RushConstants {
4218
4188
  /**
4219
4189
  * The name of the incremental build command.
4220
4190
  */
4221
- static readonly buildCommandName: string;
4191
+ static readonly buildCommandName: 'build';
4222
4192
  /**
4223
4193
  * The name of the non-incremental build command.
4224
4194
  */
4225
- static readonly rebuildCommandName: string;
4226
- static readonly updateCloudCredentialsCommandName: string;
4195
+ static readonly rebuildCommandName: 'rebuild';
4196
+ static readonly updateCloudCredentialsCommandName: 'update-cloud-credentials';
4227
4197
  /**
4228
4198
  * When a hash generated that contains multiple input segments, this character may be used
4229
4199
  * to separate them to avoid issues like
4230
4200
  * crypto.createHash('sha1').update('a').update('bc').digest('hex') === crypto.createHash('sha1').update('ab').update('c').digest('hex')
4231
4201
  */
4232
- static readonly hashDelimiter: string;
4202
+ static readonly hashDelimiter: '|';
4233
4203
  /**
4234
4204
  * The name of the per-user Rush configuration data folder.
4235
4205
  */
4236
- static readonly rushUserConfigurationFolderName: string;
4206
+ static readonly rushUserConfigurationFolderName: '.rush-user';
4237
4207
  /**
4238
4208
  * The name of the project `rush-logs` folder.
4239
4209
  */
4240
- static readonly rushLogsFolderName: string;
4210
+ static readonly rushLogsFolderName: 'rush-logs';
4241
4211
  /**
4242
4212
  * The expected prefix for phase names in "common/config/rush/command-line.json"
4243
4213
  */
@@ -4247,7 +4217,7 @@ export declare class RushConstants {
4247
4217
  * how long to wait after the last encountered file system event before execution. If another
4248
4218
  * file system event occurs in this interval, the timeout will reset.
4249
4219
  */
4250
- static readonly defaultWatchDebounceMs: number;
4220
+ static readonly defaultWatchDebounceMs: 1000;
4251
4221
  /**
4252
4222
  * The name of the parameter that can be used to bypass policies.
4253
4223
  */
@@ -4255,11 +4225,11 @@ export declare class RushConstants {
4255
4225
  /**
4256
4226
  * Merge Queue ignore configuration file.
4257
4227
  */
4258
- static readonly mergeQueueIgnoreFileName: string;
4228
+ static readonly mergeQueueIgnoreFileName: '.mergequeueignore';
4259
4229
  /**
4260
4230
  * The filename ("project-impact-graph.yaml") for the project impact graph file.
4261
4231
  */
4262
- static readonly projectImpactGraphFilename: string;
4232
+ static readonly projectImpactGraphFilename: 'project-impact-graph.yaml';
4263
4233
  }
4264
4234
 
4265
4235
  /**
@@ -4504,27 +4474,23 @@ export declare class Subspace {
4504
4474
  */
4505
4475
  getCommonVersionsFilePath(): string;
4506
4476
  /**
4507
- * Gets the settings from the common-versions.json config file for a specific variant.
4508
- * @param variant - The name of the current variant in use by the active command.
4477
+ * Gets the settings from the common-versions.json config file.
4509
4478
  * @beta
4510
4479
  */
4511
4480
  getCommonVersions(): CommonVersionsConfiguration;
4512
4481
  /**
4513
- * Gets the path to the repo-state.json file for a specific variant.
4514
- * @param variant - The name of the current variant in use by the active command.
4482
+ * Gets the path to the repo-state.json file.
4515
4483
  * @beta
4516
4484
  */
4517
4485
  getRepoStateFilePath(): string;
4518
4486
  /**
4519
- * Gets the contents from the repo-state.json file for a specific variant.
4487
+ * Gets the contents from the repo-state.json file.
4520
4488
  * @param subspaceName - The name of the subspace in use by the active command.
4521
- * @param variant - The name of the current variant in use by the active command.
4522
4489
  * @beta
4523
4490
  */
4524
4491
  getRepoState(): RepoStateFile;
4525
4492
  /**
4526
- * Gets the committed shrinkwrap file name for a specific variant.
4527
- * @param variant - The name of the current variant in use by the active command.
4493
+ * Gets the committed shrinkwrap file name.
4528
4494
  * @beta
4529
4495
  */
4530
4496
  getCommittedShrinkwrapFilename(): string;
@@ -5,7 +5,7 @@
5
5
  "toolPackages": [
6
6
  {
7
7
  "packageName": "@microsoft/api-extractor",
8
- "packageVersion": "7.40.6"
8
+ "packageVersion": "7.41.0"
9
9
  }
10
10
  ]
11
11
  }
@@ -36,13 +36,6 @@ export declare const EnvironmentVariableNames: {
36
36
  * or `0` to disallow them. (See the comments in the command-line.json file for more information).
37
37
  */
38
38
  readonly RUSH_ALLOW_WARNINGS_IN_SUCCESSFUL_BUILD: "RUSH_ALLOW_WARNINGS_IN_SUCCESSFUL_BUILD";
39
- /**
40
- * This variable selects a specific installation variant for Rush to use when installing
41
- * and linking package dependencies.
42
- * For more information, see the command-line help for the `--variant` parameter
43
- * and this article: https://rushjs.io/pages/advanced/installation_variants/
44
- */
45
- readonly RUSH_VARIANT: "RUSH_VARIANT";
46
39
  /**
47
40
  * Specifies the maximum number of concurrent processes to launch during a build.
48
41
  * For more information, see the command-line help for the `--parallelism` parameter for "rush build".
@@ -1,4 +1,4 @@
1
- import { type JsonNull, type PackageNameParser } from '@rushstack/node-core-library';
1
+ import { type PackageNameParser } from '@rushstack/node-core-library';
2
2
  import { RushConfigurationProject, type IRushConfigurationProjectJson } from './RushConfigurationProject';
3
3
  import { ApprovedPackagesPolicy } from './ApprovedPackagesPolicy';
4
4
  import { EventHooks } from './EventHooks';
@@ -77,13 +77,6 @@ export interface IRushRepositoryJsonMultipleUrls extends IRushRepositoryJsonBase
77
77
  urls?: string[];
78
78
  }
79
79
  export type IRushRepositoryJson = IRushRepositoryJsonSingleUrl | IRushRepositoryJsonMultipleUrls;
80
- /**
81
- * Options defining an allowed variant as part of IRushConfigurationJson.
82
- */
83
- export interface IRushVariantOptionsJson {
84
- variantName: string;
85
- description: string;
86
- }
87
80
  /**
88
81
  * This represents the JSON data structure for the "rush.json" configuration file.
89
82
  * See rush.schema.json for documentation.
@@ -112,13 +105,7 @@ export interface IRushConfigurationJson {
112
105
  pnpmOptions?: IPnpmOptionsJson;
113
106
  yarnOptions?: IYarnOptionsJson;
114
107
  ensureConsistentVersions?: boolean;
115
- variants?: IRushVariantOptionsJson[];
116
- }
117
- /**
118
- * This represents the JSON data structure for the "current-variant.json" data file.
119
- */
120
- export interface ICurrentVariantJson {
121
- variant: string | JsonNull;
108
+ variants?: unknown;
122
109
  }
123
110
  /**
124
111
  * The filter parameters to search from all projects
@@ -150,12 +137,10 @@ export interface ITryFindRushJsonLocationOptions {
150
137
  */
151
138
  export declare class RushConfiguration {
152
139
  private static _jsonSchema;
153
- private _variants;
154
140
  private readonly _pathTrees;
155
141
  private _projects;
156
142
  private _projectsByName;
157
143
  private _projectsByTag;
158
- private _commonVersionsConfigurationsByVariant;
159
144
  private readonly _subspacesByName;
160
145
  private readonly _subspaces;
161
146
  /**
@@ -257,13 +242,12 @@ export declare class RushConfiguration {
257
242
  */
258
243
  readonly subspacesFeatureEnabled: boolean;
259
244
  /**
260
- * The filename of the variant dependency data file. By default this is
261
- * called 'current-variant.json' resides in the Rush common folder.
262
- * Its data structure is defined by ICurrentVariantJson.
245
+ * If true, the `variants` field is present in rush.json.
263
246
  *
264
- * Example: `C:\MyRepo\common\temp\current-variant.json`
247
+ * @internal
248
+ * @deprecated - Remove when the field is removed from the rush.json schema.
265
249
  */
266
- readonly currentVariantJsonFilename: string;
250
+ readonly _hasVariantsField: boolean;
267
251
  /**
268
252
  * The version of the locally package manager tool. (Example: "1.2.3")
269
253
  */
@@ -565,17 +549,9 @@ export declare class RushConfiguration {
565
549
  * Instead it will be initialized in an empty state, and calling CommonVersionsConfiguration.save()
566
550
  * will create the file.
567
551
  *
568
- * @deprecated Use `getCommonVersions` instead, which gets the correct common version data
569
- * for a given active variant.
552
+ * @deprecated Use `getCommonVersions` instead, which gets the correct common version data.
570
553
  */
571
554
  get commonVersions(): CommonVersionsConfiguration;
572
- /**
573
- * Gets the currently-installed variant, if an installation has occurred.
574
- * For Rush operations which do not take a --variant parameter, this method
575
- * determines which variant, if any, was last specified when performing "rush install"
576
- * or "rush update".
577
- */
578
- get currentInstalledVariant(): string | undefined;
579
555
  /**
580
556
  * @deprecated Use {@link Subspace.getCommonVersionsFilePath} instead
581
557
  */
@@ -586,11 +562,10 @@ export declare class RushConfiguration {
586
562
  getCommonVersions(subspace?: Subspace): CommonVersionsConfiguration;
587
563
  /**
588
564
  * Returns a map of all direct dependencies that only have a single semantic version specifier.
589
- * @param variant - The name of the current variant in use by the active command.
590
565
  *
591
566
  * @returns A map of dependency name --\> version specifier for implicitly preferred versions.
592
567
  */
593
- getImplicitlyPreferredVersions(variant?: string | undefined): Map<string, string>;
568
+ getImplicitlyPreferredVersions(): Map<string, string>;
594
569
  /**
595
570
  * @deprecated Use {@link Subspace.getRepoStateFilePath} instead
596
571
  */
@@ -74,27 +74,23 @@ export declare class Subspace {
74
74
  */
75
75
  getCommonVersionsFilePath(): string;
76
76
  /**
77
- * Gets the settings from the common-versions.json config file for a specific variant.
78
- * @param variant - The name of the current variant in use by the active command.
77
+ * Gets the settings from the common-versions.json config file.
79
78
  * @beta
80
79
  */
81
80
  getCommonVersions(): CommonVersionsConfiguration;
82
81
  /**
83
- * Gets the path to the repo-state.json file for a specific variant.
84
- * @param variant - The name of the current variant in use by the active command.
82
+ * Gets the path to the repo-state.json file.
85
83
  * @beta
86
84
  */
87
85
  getRepoStateFilePath(): string;
88
86
  /**
89
- * Gets the contents from the repo-state.json file for a specific variant.
87
+ * Gets the contents from the repo-state.json file.
90
88
  * @param subspaceName - The name of the subspace in use by the active command.
91
- * @param variant - The name of the current variant in use by the active command.
92
89
  * @beta
93
90
  */
94
91
  getRepoState(): RepoStateFile;
95
92
  /**
96
- * Gets the committed shrinkwrap file name for a specific variant.
97
- * @param variant - The name of the current variant in use by the active command.
93
+ * Gets the committed shrinkwrap file name.
98
94
  * @beta
99
95
  */
100
96
  getCommittedShrinkwrapFilename(): string;
@@ -9,7 +9,6 @@ import type { Subspace } from '../../api/Subspace';
9
9
  */
10
10
  export declare abstract class BaseInstallAction extends BaseRushAction {
11
11
  protected readonly _terminal: ITerminal;
12
- protected readonly _variant: CommandLineStringParameter;
13
12
  protected readonly _purgeParameter: CommandLineFlagParameter;
14
13
  protected readonly _bypassPolicyParameter: CommandLineFlagParameter;
15
14
  protected readonly _noLinkParameter: CommandLineFlagParameter;
@@ -2,7 +2,6 @@ import type { RushCommandLineParser } from '../RushCommandLineParser';
2
2
  import { BaseRushAction } from './BaseRushAction';
3
3
  export declare class CheckAction extends BaseRushAction {
4
4
  private readonly _terminal;
5
- private readonly _variant;
6
5
  private readonly _jsonFlag;
7
6
  private readonly _verboseFlag;
8
7
  constructor(parser: RushCommandLineParser);
@@ -7,7 +7,7 @@ export interface IDependencyAnalysis {
7
7
  commonVersionsConfiguration: CommonVersionsConfiguration;
8
8
  /**
9
9
  * A map of all direct dependencies that only have a single semantic version specifier,
10
- * unless the variant has the {@link CommonVersionsConfiguration.implicitlyPreferredVersions} option
10
+ * unless the {@link CommonVersionsConfiguration.implicitlyPreferredVersions} option
11
11
  * set to `false`.
12
12
  */
13
13
  implicitlyPreferredVersionByPackageName: Map<string, string>;
@@ -19,12 +19,12 @@ export interface IDependencyAnalysis {
19
19
  export declare class DependencyAnalyzer {
20
20
  private static _dependencyAnalyzerByRushConfiguration;
21
21
  private _rushConfiguration;
22
- private _analysisByVariant;
22
+ private _analysis;
23
23
  private constructor();
24
24
  static forRushConfiguration(rushConfiguration: RushConfiguration): DependencyAnalyzer;
25
- getAnalysis(variant?: string): IDependencyAnalysis;
25
+ getAnalysis(): IDependencyAnalysis;
26
26
  /**
27
- * Generates the {@link IDependencyAnalysis} for a variant.
27
+ * Generates the {@link IDependencyAnalysis}.
28
28
  *
29
29
  * @remarks
30
30
  * The result of this function is not cached.
@@ -45,10 +45,6 @@ export interface IPackageJsonUpdaterRushBaseUpdateOptions {
45
45
  * actionName
46
46
  */
47
47
  actionName: string;
48
- /**
49
- * The variant to consider when performing installations and validating shrinkwrap updates.
50
- */
51
- variant?: string | undefined;
52
48
  }
53
49
  /**
54
50
  * Configuration options for adding or updating a dependency in a single project
@@ -34,7 +34,6 @@ export declare class RepoStateFile {
34
34
  * If the file has not been created yet, then an empty object is returned.
35
35
  *
36
36
  * @param jsonFilename - The path to the repo-state.json file.
37
- * @param variant - The variant currently being used by Rush.
38
37
  */
39
38
  static loadFromFile(jsonFilename: string): RepoStateFile;
40
39
  /**
@@ -9,6 +9,10 @@
9
9
  * the Rush config files; instead, they should rely on the official APIs from rush-lib.
10
10
  */
11
11
  export declare class RushConstants {
12
+ /**
13
+ * The filename ("rush.json") for the root-level configuration file.
14
+ */
15
+ static readonly rushJsonFilename: 'rush.json';
12
16
  /**
13
17
  * The filename ("browser-approved-packages.json") for an optional policy configuration file
14
18
  * that stores a list of NPM packages that have been approved for usage by Rush projects.
@@ -16,11 +20,11 @@ export declare class RushConstants {
16
20
  * (e.g. whose approval criteria mostly focuses on licensing and code size), and one for everywhere else
17
21
  * (e.g. tooling projects whose approval criteria mostly focuses on avoiding node_modules sprawl).
18
22
  */
19
- static readonly browserApprovedPackagesFilename: string;
23
+ static readonly browserApprovedPackagesFilename: 'browser-approved-packages.json';
20
24
  /**
21
25
  * The folder name ("changes") where change files will be stored.
22
26
  */
23
- static readonly changeFilesFolderName: string;
27
+ static readonly changeFilesFolderName: 'changes';
24
28
  /**
25
29
  * The filename ("nonbrowser-approved-packages.json") for an optional policy configuration file
26
30
  * that stores a list of NPM packages that have been approved for usage by Rush projects.
@@ -28,76 +32,70 @@ export declare class RushConstants {
28
32
  * (e.g. whose approval criteria mostly focuses on licensing and code size), and one for everywhere else
29
33
  * (e.g. tooling projects whose approval criteria mostly focuses on avoiding node_modules sprawl).
30
34
  */
31
- static readonly nonbrowserApprovedPackagesFilename: string;
35
+ static readonly nonbrowserApprovedPackagesFilename: 'nonbrowser-approved-packages.json';
32
36
  /**
33
37
  * The folder name ("common") where Rush's common data will be stored.
34
38
  */
35
- static readonly commonFolderName: string;
39
+ static readonly commonFolderName: 'common';
36
40
  /**
37
41
  * The NPM scope ("\@rush-temp") that is used for Rush's temporary projects.
38
42
  */
39
- static readonly rushTempNpmScope: string;
43
+ static readonly rushTempNpmScope: '@rush-temp';
40
44
  /**
41
45
  * The folder name ("temp") under the common folder, or under the .rush folder in each project's directory where
42
46
  * temporary files will be stored.
43
47
  * Example: `C:\MyRepo\common\temp`
44
48
  */
45
- static readonly rushTempFolderName: string;
49
+ static readonly rushTempFolderName: 'temp';
46
50
  /**
47
51
  * The folder name ("projects") where temporary projects will be stored.
48
52
  * Example: `C:\MyRepo\common\temp\projects`
49
53
  */
50
- static readonly rushTempProjectsFolderName: string;
51
- /**
52
- * The folder name ("variants") under which named variant configurations for
53
- * alternate dependency sets may be found.
54
- * Example: `C:\MyRepo\common\config\rush\variants`
55
- */
56
- static readonly rushVariantsFolderName: string;
54
+ static readonly rushTempProjectsFolderName: 'projects';
57
55
  /**
58
56
  * The filename ("npm-shrinkwrap.json") used to store an installation plan for the NPM package manger.
59
57
  */
60
- static readonly npmShrinkwrapFilename: string;
58
+ static readonly npmShrinkwrapFilename: 'npm-shrinkwrap.json';
61
59
  /**
62
60
  * Number of installation attempts
63
61
  */
64
- static readonly defaultMaxInstallAttempts: number;
62
+ static readonly defaultMaxInstallAttempts: 1;
65
63
  /**
66
64
  * The filename ("pnpm-lock.yaml") used to store an installation plan for the PNPM package manger
67
65
  * (PNPM version 3.x and later).
68
66
  */
69
- static readonly pnpmV3ShrinkwrapFilename: string;
67
+ static readonly pnpmV3ShrinkwrapFilename: 'pnpm-lock.yaml';
70
68
  /**
71
69
  * The filename ("pnpmfile.js") used to add custom configuration to PNPM (PNPM version 1.x and later).
72
70
  */
73
- static readonly pnpmfileV1Filename: string;
71
+ static readonly pnpmfileV1Filename: 'pnpmfile.js';
74
72
  /**
75
73
  * The filename (".pnpmfile.cjs") used to add custom configuration to PNPM (PNPM version 6.x and later).
76
74
  */
77
- static readonly pnpmfileV6Filename: string;
75
+ static readonly pnpmfileV6Filename: '.pnpmfile.cjs';
78
76
  /**
79
77
  * The filename ("global-pnpmfile.cjs") used to add custom configuration to subspaces
80
78
  */
81
- static readonly pnpmfileGlobalFilename: string;
79
+ static readonly pnpmfileGlobalFilename: 'global-pnpmfile.cjs';
82
80
  /**
83
81
  * The folder name used to store patch files for pnpm
84
82
  * Example: `C:\MyRepo\common\config\pnpm-patches`
85
83
  * Example: `C:\MyRepo\common\temp\patches`
86
84
  */
87
- static readonly pnpmPatchesFolderName: string;
85
+ static readonly pnpmPatchesFolderName: 'patches';
88
86
  /**
89
87
  * The folder name under `/common/temp` used to store checked-in patches.
90
88
  * Example: `C:\MyRepo\common\pnpm-patches`
91
89
  */
92
- static readonly pnpmPatchesCommonFolderName: string;
90
+ static readonly pnpmPatchesCommonFolderName: `pnpm-patches`;
93
91
  /**
94
92
  * The filename ("shrinkwrap.yaml") used to store state for pnpm
95
93
  */
96
- static readonly yarnShrinkwrapFilename: string;
94
+ static readonly yarnShrinkwrapFilename: 'yarn.lock';
97
95
  /**
98
96
  * The folder name ("node_modules") where NPM installs its packages.
99
97
  */
100
- static readonly nodeModulesFolderName: string;
98
+ static readonly nodeModulesFolderName: 'node_modules';
101
99
  /**
102
100
  * The filename ("pinned-versions.json") for an old configuration file that
103
101
  * that is no longer supported.
@@ -105,98 +103,98 @@ export declare class RushConstants {
105
103
  * @deprecated This feature has been superseded by the "preferredVersions" setting
106
104
  * in common-versions.json
107
105
  */
108
- static readonly pinnedVersionsFilename: string;
106
+ static readonly pinnedVersionsFilename: 'pinned-versions.json';
109
107
  /**
110
108
  * The filename ("common-versions.json") for an optional configuration file
111
109
  * that stores dependency version information that affects all projects in the repo.
112
110
  * This configuration file should go in the "common/config/rush" folder.
113
111
  */
114
- static readonly commonVersionsFilename: string;
112
+ static readonly commonVersionsFilename: 'common-versions.json';
115
113
  /**
116
114
  * The filename ("repo-state.json") for a file used by Rush to
117
115
  * store the state of various features as they stand in the repo.
118
116
  */
119
- static readonly repoStateFilename: string;
117
+ static readonly repoStateFilename: 'repo-state.json';
120
118
  /**
121
119
  * The filename ("custom-tips.json") for the file used by Rush to
122
120
  * print user-customized messages.
123
121
  * This configuration file should go in the "common/config/rush" folder.
124
122
  */
125
- static readonly customTipsFilename: string;
123
+ static readonly customTipsFilename: 'custom-tips.json';
126
124
  /**
127
125
  * The name of the per-project folder where project-specific Rush files are stored. For example,
128
126
  * the package-deps files, which are used by commands to determine if a particular project needs to be rebuilt.
129
127
  */
130
- static readonly projectRushFolderName: string;
128
+ static readonly projectRushFolderName: '.rush';
131
129
  /**
132
130
  * Custom command line configuration file, which is used by rush for implementing
133
131
  * custom command and options.
134
132
  */
135
- static readonly commandLineFilename: string;
136
- static readonly versionPoliciesFilename: string;
133
+ static readonly commandLineFilename: 'command-line.json';
134
+ static readonly versionPoliciesFilename: 'version-policies.json';
137
135
  /**
138
136
  * Experiments configuration file.
139
137
  */
140
- static readonly experimentsFilename: string;
138
+ static readonly experimentsFilename: 'experiments.json';
141
139
  /**
142
140
  * Pnpm configuration file
143
141
  */
144
- static readonly pnpmConfigFilename: string;
142
+ static readonly pnpmConfigFilename: 'pnpm-config.json';
145
143
  /**
146
144
  * Rush plugins configuration file name.
147
145
  */
148
- static readonly rushPluginsConfigFilename: string;
146
+ static readonly rushPluginsConfigFilename: 'rush-plugins.json';
149
147
  /**
150
148
  * Rush plugin manifest file name.
151
149
  */
152
- static readonly rushPluginManifestFilename: string;
150
+ static readonly rushPluginManifestFilename: 'rush-plugin-manifest.json';
153
151
  /**
154
152
  * The artifactory.json configuration file name.
155
153
  */
156
- static readonly artifactoryFilename: string;
154
+ static readonly artifactoryFilename: 'artifactory.json';
157
155
  /**
158
156
  * The subspaces.json configuration file name
159
157
  */
160
- static readonly subspacesConfigFilename: string;
158
+ static readonly subspacesConfigFilename: 'subspaces.json';
161
159
  /**
162
160
  * The name of the default subspace if one isn't specified but subspaces is enabled.
163
161
  */
164
- static readonly defaultSubspaceName: string;
162
+ static readonly defaultSubspaceName: 'default';
165
163
  /**
166
164
  * Build cache configuration file.
167
165
  */
168
- static readonly buildCacheFilename: string;
166
+ static readonly buildCacheFilename: 'build-cache.json';
169
167
  /**
170
168
  * Build cache version number, incremented when the logic to create cache entries changes.
171
169
  * Changing this ensures that cache entries generated by an old version will no longer register as a cache hit.
172
170
  */
173
- static readonly buildCacheVersion: number;
171
+ static readonly buildCacheVersion: 1;
174
172
  /**
175
173
  * Cobuild configuration file.
176
174
  */
177
- static readonly cobuildFilename: string;
175
+ static readonly cobuildFilename: 'cobuild.json';
178
176
  /**
179
177
  * Per-project configuration filename.
180
178
  */
181
- static readonly rushProjectConfigFilename: string;
179
+ static readonly rushProjectConfigFilename: 'rush-project.json';
182
180
  /**
183
181
  * The URL ("http://rushjs.io") for the Rush web site.
184
182
  */
185
- static readonly rushWebSiteUrl: string;
183
+ static readonly rushWebSiteUrl: 'https://rushjs.io';
186
184
  /**
187
185
  * The name of the NPM package for the Rush tool ("\@microsoft/rush").
188
186
  */
189
- static readonly rushPackageName: string;
187
+ static readonly rushPackageName: '@microsoft/rush';
190
188
  /**
191
189
  * The folder name ("rush-recycler") where Rush moves large folder trees
192
190
  * before asynchronously deleting them.
193
191
  */
194
- static readonly rushRecyclerFolderName: string;
192
+ static readonly rushRecyclerFolderName: 'rush-recycler';
195
193
  /**
196
194
  * The name of the file to drop in project-folder/.rush/temp/ containing a listing of the project's direct
197
195
  * and indirect dependencies. This is used to detect if a project's dependencies have changed since the last build.
198
196
  */
199
- static readonly projectShrinkwrapFilename: string;
197
+ static readonly projectShrinkwrapFilename: 'shrinkwrap-deps.json';
200
198
  /**
201
199
  * The value of the "commandKind" property for a bulk command in command-line.json
202
200
  */
@@ -212,26 +210,26 @@ export declare class RushConstants {
212
210
  /**
213
211
  * The name of the incremental build command.
214
212
  */
215
- static readonly buildCommandName: string;
213
+ static readonly buildCommandName: 'build';
216
214
  /**
217
215
  * The name of the non-incremental build command.
218
216
  */
219
- static readonly rebuildCommandName: string;
220
- static readonly updateCloudCredentialsCommandName: string;
217
+ static readonly rebuildCommandName: 'rebuild';
218
+ static readonly updateCloudCredentialsCommandName: 'update-cloud-credentials';
221
219
  /**
222
220
  * When a hash generated that contains multiple input segments, this character may be used
223
221
  * to separate them to avoid issues like
224
222
  * crypto.createHash('sha1').update('a').update('bc').digest('hex') === crypto.createHash('sha1').update('ab').update('c').digest('hex')
225
223
  */
226
- static readonly hashDelimiter: string;
224
+ static readonly hashDelimiter: '|';
227
225
  /**
228
226
  * The name of the per-user Rush configuration data folder.
229
227
  */
230
- static readonly rushUserConfigurationFolderName: string;
228
+ static readonly rushUserConfigurationFolderName: '.rush-user';
231
229
  /**
232
230
  * The name of the project `rush-logs` folder.
233
231
  */
234
- static readonly rushLogsFolderName: string;
232
+ static readonly rushLogsFolderName: 'rush-logs';
235
233
  /**
236
234
  * The expected prefix for phase names in "common/config/rush/command-line.json"
237
235
  */
@@ -241,7 +239,7 @@ export declare class RushConstants {
241
239
  * how long to wait after the last encountered file system event before execution. If another
242
240
  * file system event occurs in this interval, the timeout will reset.
243
241
  */
244
- static readonly defaultWatchDebounceMs: number;
242
+ static readonly defaultWatchDebounceMs: 1000;
245
243
  /**
246
244
  * The name of the parameter that can be used to bypass policies.
247
245
  */
@@ -249,10 +247,10 @@ export declare class RushConstants {
249
247
  /**
250
248
  * Merge Queue ignore configuration file.
251
249
  */
252
- static readonly mergeQueueIgnoreFileName: string;
250
+ static readonly mergeQueueIgnoreFileName: '.mergequeueignore';
253
251
  /**
254
252
  * The filename ("project-impact-graph.yaml") for the project impact graph file.
255
253
  */
256
- static readonly projectImpactGraphFilename: string;
254
+ static readonly projectImpactGraphFilename: 'project-impact-graph.yaml';
257
255
  }
258
256
  //# sourceMappingURL=RushConstants.d.ts.map
@@ -58,10 +58,6 @@ export interface IInstallManagerOptions {
58
58
  * If specified when using PNPM, the logs will be in /common/temp/pnpm.log
59
59
  */
60
60
  collectLogFile: boolean;
61
- /**
62
- * The variant to consider when performing installations and validating shrinkwrap updates.
63
- */
64
- variant?: string | undefined;
65
61
  /**
66
62
  * Retry the install the specified number of times
67
63
  */
@@ -78,11 +78,10 @@ export declare abstract class BaseShrinkwrapFile {
78
78
  * a given package.json. Returns true if any dependencies are not aligned with the shrinkwrap.
79
79
  *
80
80
  * @param project - the Rush project that is being validated against the shrinkwrap
81
- * @param variant - the variant that is being validated
82
81
  *
83
82
  * @virtual
84
83
  */
85
- abstract isWorkspaceProjectModifiedAsync(project: RushConfigurationProject, subspace: Subspace, variant?: string): Promise<boolean>;
84
+ abstract isWorkspaceProjectModifiedAsync(project: RushConfigurationProject, subspace: Subspace): Promise<boolean>;
86
85
  /** @virtual */
87
86
  protected abstract serialize(): string;
88
87
  protected _getTempProjectNames(dependencies: {
@@ -25,6 +25,6 @@ export declare class NpmShrinkwrapFile extends BaseShrinkwrapFile {
25
25
  /** @override */
26
26
  getProjectShrinkwrap(project: RushConfigurationProject): BaseProjectShrinkwrapFile<NpmShrinkwrapFile> | undefined;
27
27
  /** @override */
28
- isWorkspaceProjectModifiedAsync(project: RushConfigurationProject, subspace: Subspace, variant?: string): Promise<boolean>;
28
+ isWorkspaceProjectModifiedAsync(project: RushConfigurationProject, subspace: Subspace): Promise<boolean>;
29
29
  }
30
30
  //# sourceMappingURL=NpmShrinkwrapFile.d.ts.map
@@ -219,7 +219,7 @@ export declare class PnpmShrinkwrapFile extends BaseShrinkwrapFile {
219
219
  getImporter(importerKey: string): IPnpmShrinkwrapImporterYaml | undefined;
220
220
  getIntegrityForImporter(importerKey: string): Map<string, string> | undefined;
221
221
  /** @override */
222
- isWorkspaceProjectModifiedAsync(project: RushConfigurationProject, subspace: Subspace, variant?: string): Promise<boolean>;
222
+ isWorkspaceProjectModifiedAsync(project: RushConfigurationProject, subspace: Subspace): Promise<boolean>;
223
223
  private _getIntegrityForPackage;
224
224
  private _addIntegrities;
225
225
  /**
@@ -1,15 +1,6 @@
1
1
  import { type IPackageJson } from '@rushstack/node-core-library';
2
2
  import type { RushConfiguration } from '../../api/RushConfiguration';
3
3
  import type { Subspace } from '../../api/Subspace';
4
- /**
5
- * Options used when generating the pnpmfile shim settings file.
6
- */
7
- export interface IPnpmfileShimOptions {
8
- /**
9
- * The variant that the client pnpmfile will be sourced from.
10
- */
11
- variant?: string;
12
- }
13
4
  /**
14
5
  * Loads PNPM's pnpmfile.js configuration, and invokes it to preprocess package.json files,
15
6
  * optionally utilizing a pnpmfile shim to inject preferred versions.
@@ -17,8 +8,8 @@ export interface IPnpmfileShimOptions {
17
8
  export declare class PnpmfileConfiguration {
18
9
  private _context;
19
10
  private constructor();
20
- static initializeAsync(rushConfiguration: RushConfiguration, subspace: Subspace, pnpmfileShimOptions?: IPnpmfileShimOptions): Promise<PnpmfileConfiguration>;
21
- static writeCommonTempPnpmfileShimAsync(rushConfiguration: RushConfiguration, targetDir: string, subspace: Subspace, options?: IPnpmfileShimOptions): Promise<void>;
11
+ static initializeAsync(rushConfiguration: RushConfiguration, subspace: Subspace): Promise<PnpmfileConfiguration>;
12
+ static writeCommonTempPnpmfileShimAsync(rushConfiguration: RushConfiguration, targetDir: string, subspace: Subspace): Promise<void>;
22
13
  private static _getPnpmfileShimSettingsAsync;
23
14
  /**
24
15
  * Transform a package.json file using the pnpmfile.js hook.
@@ -4,7 +4,6 @@ export interface IPolicyValidatorOptions {
4
4
  bypassPolicyAllowed?: boolean;
5
5
  bypassPolicy?: boolean;
6
6
  allowShrinkwrapUpdates?: boolean;
7
- shrinkwrapVariant?: string;
8
7
  }
9
8
  export declare function validatePolicyAsync(rushConfiguration: RushConfiguration, subspace: Subspace, options: IPolicyValidatorOptions): Promise<void>;
10
9
  //# sourceMappingURL=PolicyValidator.d.ts.map
@@ -3,7 +3,6 @@ import type { RushConfiguration } from '../../api/RushConfiguration';
3
3
  import type { VersionMismatchFinderEntity } from './VersionMismatchFinderEntity';
4
4
  import type { Subspace } from '../../api/Subspace';
5
5
  export interface IVersionMismatchFinderOptions {
6
- variant?: string | undefined;
7
6
  subspace?: Subspace;
8
7
  }
9
8
  export interface IVersionMismatchFinderRushCheckOptions extends IVersionMismatchFinderOptions {
@@ -51,6 +51,6 @@ export declare class YarnShrinkwrapFile extends BaseShrinkwrapFile {
51
51
  /** @override */
52
52
  getProjectShrinkwrap(project: RushConfigurationProject): BaseProjectShrinkwrapFile<YarnShrinkwrapFile> | undefined;
53
53
  /** @override */
54
- isWorkspaceProjectModifiedAsync(project: RushConfigurationProject, subspace: Subspace, variant?: string): Promise<boolean>;
54
+ isWorkspaceProjectModifiedAsync(project: RushConfigurationProject, subspace: Subspace): Promise<boolean>;
55
55
  }
56
56
  //# sourceMappingURL=YarnShrinkwrapFile.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rushstack/rush-sdk",
3
- "version": "5.116.0",
3
+ "version": "5.117.0",
4
4
  "description": "An API for interacting with the Rush engine",
5
5
  "repository": {
6
6
  "type": "git",
@@ -26,16 +26,16 @@
26
26
  "@types/node-fetch": "2.6.2",
27
27
  "tapable": "2.2.1",
28
28
  "@rushstack/node-core-library": "4.0.2",
29
- "@rushstack/terminal": "0.9.0"
29
+ "@rushstack/terminal": "0.10.0"
30
30
  },
31
31
  "devDependencies": {
32
32
  "@types/semver": "7.5.0",
33
33
  "@types/webpack-env": "1.18.0",
34
- "@rushstack/heft": "0.65.4",
34
+ "@rushstack/heft": "0.65.5",
35
35
  "local-node-rig": "1.0.0",
36
- "@rushstack/stream-collator": "4.1.31",
37
- "@microsoft/rush-lib": "5.116.0",
38
- "@rushstack/ts-command-line": "4.17.3"
36
+ "@microsoft/rush-lib": "5.117.0",
37
+ "@rushstack/stream-collator": "4.1.32",
38
+ "@rushstack/ts-command-line": "4.17.4"
39
39
  },
40
40
  "scripts": {
41
41
  "build": "heft build --clean",
@@ -1,11 +0,0 @@
1
- import type { ICommandLineStringDefinition } from '@rushstack/ts-command-line';
2
- /**
3
- * Namespace for utilities relating to the Variants feature.
4
- */
5
- export declare class Variants {
6
- /**
7
- * Provides the parameter configuration for '--variant'.
8
- */
9
- static readonly VARIANT_PARAMETER: ICommandLineStringDefinition;
10
- }
11
- //# sourceMappingURL=Variants.d.ts.map
@@ -1 +0,0 @@
1
- module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/Variants");