@rushstack/rush-sdk 5.135.0-pr4927.0 → 5.135.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.
Files changed (31) hide show
  1. package/dist/rush-lib.d.ts +23 -98
  2. package/lib/api/CommonVersionsConfiguration.d.ts +1 -1
  3. package/lib/api/EnvironmentConfiguration.d.ts +0 -7
  4. package/lib/api/RushConfiguration.d.ts +13 -49
  5. package/lib/api/Subspace.d.ts +7 -30
  6. package/lib/cli/actions/AddAction.d.ts +1 -2
  7. package/lib/cli/actions/BaseAddAndRemoveAction.d.ts +1 -1
  8. package/lib/cli/actions/BaseInstallAction.d.ts +1 -2
  9. package/lib/cli/actions/CheckAction.d.ts +0 -1
  10. package/lib/cli/actions/RemoveAction.d.ts +3 -3
  11. package/lib/cli/actions/UpgradeInteractiveAction.d.ts +0 -1
  12. package/lib/logic/DependencyAnalyzer.d.ts +2 -2
  13. package/lib/logic/PackageJsonUpdaterTypes.d.ts +0 -4
  14. package/lib/logic/RepoStateFile.d.ts +1 -1
  15. package/lib/logic/RushConstants.d.ts +0 -6
  16. package/lib/logic/base/BaseInstallManagerTypes.d.ts +0 -4
  17. package/lib/logic/base/BaseShrinkwrapFile.d.ts +1 -2
  18. package/lib/logic/npm/NpmShrinkwrapFile.d.ts +1 -1
  19. package/lib/logic/pnpm/PnpmShrinkwrapFile.d.ts +1 -1
  20. package/lib/logic/pnpm/PnpmfileConfiguration.d.ts +2 -2
  21. package/lib/logic/pnpm/SubspacePnpmfileConfiguration.d.ts +2 -2
  22. package/lib/logic/policy/PolicyValidator.d.ts +1 -1
  23. package/lib/logic/policy/ShrinkwrapFilePolicy.d.ts +1 -1
  24. package/lib/logic/versionMismatch/VersionMismatchFinder.d.ts +2 -2
  25. package/lib/pluginFramework/RushLifeCycle.d.ts +2 -2
  26. package/lib/utilities/Utilities.d.ts +1 -1
  27. package/lib-shim/index.js +10 -35
  28. package/lib-shim/index.js.map +1 -1
  29. package/package.json +5 -5
  30. package/lib/api/Variants.d.ts +0 -8
  31. package/lib/api/Variants.js +0 -1
@@ -17,7 +17,6 @@ import { IPackageJson } from '@rushstack/node-core-library';
17
17
  import { IPrefixMatch } from '@rushstack/lookup-by-path';
18
18
  import { ITerminal } from '@rushstack/terminal';
19
19
  import { ITerminalProvider } from '@rushstack/terminal';
20
- import { JsonNull } from '@rushstack/node-core-library';
21
20
  import { JsonObject } from '@rushstack/node-core-library';
22
21
  import { LookupByPath } from '@rushstack/lookup-by-path';
23
22
  import { PackageNameParser } from '@rushstack/node-core-library';
@@ -344,7 +343,7 @@ export declare class CommonVersionsConfiguration {
344
343
  * Loads the common-versions.json data from the specified file path.
345
344
  * If the file has not been created yet, then an empty object is returned.
346
345
  */
347
- static loadFromFile(jsonFilePath: string, rushConfiguration?: RushConfiguration): CommonVersionsConfiguration;
346
+ static loadFromFile(jsonFilename: string, rushConfiguration?: RushConfiguration): CommonVersionsConfiguration;
348
347
  private static _deserializeTable;
349
348
  private static _serializeTable;
350
349
  /**
@@ -684,13 +683,6 @@ export declare const EnvironmentVariableNames: {
684
683
  * or `0` to disallow them. (See the comments in the command-line.json file for more information).
685
684
  */
686
685
  readonly RUSH_ALLOW_WARNINGS_IN_SUCCESSFUL_BUILD: "RUSH_ALLOW_WARNINGS_IN_SUCCESSFUL_BUILD";
687
- /**
688
- * This variable selects a specific installation variant for Rush to use when installing
689
- * and linking package dependencies.
690
- * For more information, see the command-line help for the `--variant` parameter
691
- * and this article: https://rushjs.io/pages/advanced/installation_variants/
692
- */
693
- readonly RUSH_VARIANT: "RUSH_VARIANT";
694
686
  /**
695
687
  * Specifies the maximum number of concurrent processes to launch during a build.
696
688
  * For more information, see the command-line help for the `--parallelism` parameter for "rush build".
@@ -1244,13 +1236,6 @@ export declare interface ICredentialCacheOptions {
1244
1236
  supportEditing: boolean;
1245
1237
  }
1246
1238
 
1247
- /**
1248
- * This represents the JSON data structure for the "current-variant.json" data file.
1249
- */
1250
- declare interface ICurrentVariantJson {
1251
- variant: string | JsonNull;
1252
- }
1253
-
1254
1239
  /**
1255
1240
  * Metadata for a custom tip.
1256
1241
  *
@@ -2229,7 +2214,7 @@ declare interface IRushConfigurationJson {
2229
2214
  pnpmOptions?: _IPnpmOptionsJson;
2230
2215
  yarnOptions?: _IYarnOptionsJson;
2231
2216
  ensureConsistentVersions?: boolean;
2232
- variants?: IRushVariantOptionsJson[];
2217
+ variants?: unknown;
2233
2218
  }
2234
2219
 
2235
2220
  /**
@@ -2407,14 +2392,6 @@ export declare interface IRushSessionOptions {
2407
2392
  getIsDebugMode: () => boolean;
2408
2393
  }
2409
2394
 
2410
- /**
2411
- * Options defining an allowed variant as part of IRushConfigurationJson.
2412
- */
2413
- declare interface IRushVariantOptionsJson {
2414
- variantName: string;
2415
- description: string;
2416
- }
2417
-
2418
2395
  /**
2419
2396
  * Represents a readonly view of a `Stopwatch`.
2420
2397
  * @beta
@@ -3386,7 +3363,7 @@ export declare class RepoStateFile {
3386
3363
  *
3387
3364
  * @returns true if the file was modified, otherwise false.
3388
3365
  */
3389
- refreshState(rushConfiguration: RushConfiguration, subspace: Subspace | undefined, variant?: string): boolean;
3366
+ refreshState(rushConfiguration: RushConfiguration, subspace: Subspace | undefined): boolean;
3390
3367
  /**
3391
3368
  * Writes the "repo-state.json" file to disk, using the filename that was passed to loadFromFile().
3392
3369
  */
@@ -3472,10 +3449,6 @@ export declare class RushCommandLine {
3472
3449
  export declare class RushConfiguration {
3473
3450
  private static _jsonSchema;
3474
3451
  private readonly _pathTrees;
3475
- /**
3476
- * @internal
3477
- */
3478
- _currentVariantJsonLoadingPromise: Promise<ICurrentVariantJson | undefined> | undefined;
3479
3452
  private _projects;
3480
3453
  private _projectsByName;
3481
3454
  private _projectsByTag;
@@ -3580,13 +3553,12 @@ export declare class RushConfiguration {
3580
3553
  */
3581
3554
  readonly subspacesFeatureEnabled: boolean;
3582
3555
  /**
3583
- * The filename of the variant dependency data file. By default this is
3584
- * called 'current-variant.json' resides in the Rush common folder.
3585
- * Its data structure is defined by ICurrentVariantJson.
3556
+ * If true, the `variants` field is present in rush.json.
3586
3557
  *
3587
- * Example: `C:\MyRepo\common\temp\current-variant.json`
3558
+ * @internal
3559
+ * @deprecated - Remove when the field is removed from the rush.json schema.
3588
3560
  */
3589
- readonly currentVariantJsonFilePath: string;
3561
+ readonly _hasVariantsField: boolean;
3590
3562
  /**
3591
3563
  * The version of the locally package manager tool. (Example: "1.2.3")
3592
3564
  */
@@ -3772,12 +3744,6 @@ export declare class RushConfiguration {
3772
3744
  * @internal
3773
3745
  */
3774
3746
  readonly _rushPluginsConfiguration: RushPluginsConfiguration;
3775
- /**
3776
- * The variants specified in the rush.json configuration file.
3777
- *
3778
- * @beta
3779
- */
3780
- readonly variants: ReadonlySet<string>;
3781
3747
  /**
3782
3748
  * Use RushConfiguration.loadFromConfigurationFile() or Use RushConfiguration.loadFromDefaultLocation()
3783
3749
  * instead.
@@ -3904,34 +3870,23 @@ export declare class RushConfiguration {
3904
3870
  * Instead it will be initialized in an empty state, and calling CommonVersionsConfiguration.save()
3905
3871
  * will create the file.
3906
3872
  *
3907
- * @deprecated Use `getCommonVersions` instead, which gets the correct common version data
3908
- * for a given active variant.
3873
+ * @deprecated Use `getCommonVersions` instead, which gets the correct common version data.
3909
3874
  */
3910
3875
  get commonVersions(): CommonVersionsConfiguration;
3911
- /**
3912
- * Gets the currently-installed variant, if an installation has occurred.
3913
- * For Rush operations which do not take a --variant parameter, this method
3914
- * determines which variant, if any, was last specified when performing "rush install"
3915
- * or "rush update".
3916
- */
3917
- getCurrentlyInstalledVariantAsync(): Promise<string | undefined>;
3918
3876
  /**
3919
3877
  * @deprecated Use {@link Subspace.getCommonVersionsFilePath} instead
3920
3878
  */
3921
- getCommonVersionsFilePath(subspace?: Subspace, variant?: string): string;
3879
+ getCommonVersionsFilePath(subspace?: Subspace): string;
3922
3880
  /**
3923
3881
  * @deprecated Use {@link Subspace.getCommonVersions} instead
3924
3882
  */
3925
- getCommonVersions(subspace?: Subspace, variant?: string): CommonVersionsConfiguration;
3883
+ getCommonVersions(subspace?: Subspace): CommonVersionsConfiguration;
3926
3884
  /**
3927
3885
  * Returns a map of all direct dependencies that only have a single semantic version specifier.
3928
3886
  *
3929
- * @param subspace - The subspace to use
3930
- * @param variant - The name of the current variant in use by the active command.
3931
- *
3932
3887
  * @returns A map of dependency name --\> version specifier for implicitly preferred versions.
3933
3888
  */
3934
- getImplicitlyPreferredVersions(subspace?: Subspace, variant?: string): Map<string, string>;
3889
+ getImplicitlyPreferredVersions(subspace?: Subspace): Map<string, string>;
3935
3890
  /**
3936
3891
  * @deprecated Use {@link Subspace.getRepoStateFilePath} instead
3937
3892
  */
@@ -3941,11 +3896,11 @@ export declare class RushConfiguration {
3941
3896
  */
3942
3897
  getRepoState(subspace?: Subspace): RepoStateFile;
3943
3898
  /**
3944
- * @deprecated Use {@link Subspace.getCommittedShrinkwrapFilePath} instead
3899
+ * @deprecated Use {@link Subspace.getCommittedShrinkwrapFilename} instead
3945
3900
  */
3946
- getCommittedShrinkwrapFilename(subspace?: Subspace, variant?: string): string;
3901
+ getCommittedShrinkwrapFilename(subspace?: Subspace): string;
3947
3902
  /**
3948
- * @deprecated Use {@link Subspace.getPnpmfilePath} instead
3903
+ * @deprecated Use {@link Subspace.getRepoStateFilePath} instead
3949
3904
  */
3950
3905
  getPnpmfilePath(subspace?: Subspace): string;
3951
3906
  /**
@@ -3975,7 +3930,6 @@ export declare class RushConfiguration {
3975
3930
  * If the path is not under any project's folder, returns undefined.
3976
3931
  */
3977
3932
  tryGetProjectForPath(currentFolderPath: string): RushConfigurationProject | undefined;
3978
- private _loadCurrentVariantJsonAsync;
3979
3933
  }
3980
3934
 
3981
3935
  /**
@@ -4211,12 +4165,6 @@ export declare class RushConstants {
4211
4165
  * The NPM scope ("\@rush-temp") that is used for Rush's temporary projects.
4212
4166
  */
4213
4167
  static readonly rushTempNpmScope: '@rush-temp';
4214
- /**
4215
- * The folder name ("variants") under which named variant configurations for
4216
- * alternate dependency sets may be found.
4217
- * Example: `C:\MyRepo\common\config\rush\variants`
4218
- */
4219
- static readonly rushVariantsFolderName: 'variants';
4220
4168
  /**
4221
4169
  * The folder name ("temp") under the common folder, or under the .rush folder in each project's directory where
4222
4170
  * temporary files will be stored.
@@ -4522,11 +4470,11 @@ export declare class RushLifecycleHooks {
4522
4470
  /**
4523
4471
  * The hook to run between preparing the common/temp folder and invoking the package manager during "rush install" or "rush update".
4524
4472
  */
4525
- readonly beforeInstall: AsyncSeriesHook<[IGlobalCommand, Subspace, string | undefined]>;
4473
+ readonly beforeInstall: AsyncSeriesHook<[IGlobalCommand, Subspace]>;
4526
4474
  /**
4527
4475
  * The hook to run after a successful install.
4528
4476
  */
4529
- readonly afterInstall: AsyncSeriesHook<[IRushCommand, Subspace, string | undefined]>;
4477
+ readonly afterInstall: AsyncSeriesHook<[IRushCommand, Subspace]>;
4530
4478
  /**
4531
4479
  * A hook to allow plugins to hook custom logic to process telemetry data.
4532
4480
  */
@@ -4665,20 +4613,6 @@ export declare class Subspace {
4665
4613
  */
4666
4614
  getPnpmOptions(): PnpmOptionsConfiguration | undefined;
4667
4615
  private _ensureDetail;
4668
- /**
4669
- * Returns the full path of the folder containing this subspace's variant-dependent configuration files
4670
- * such as `pnpm-lock.yaml`.
4671
- *
4672
- * Example: `common/config/subspaces/my-subspace` or `common/config/subspaces/my-subspace/variants/my-variant`
4673
- * @beta
4674
- *
4675
- * @remarks
4676
- * The following files may be variant-dependent:
4677
- * - Lockfiles: (i.e. - `pnpm-lock.yaml`, `npm-shrinkwrap.json`, `yarn.lock`, etc)
4678
- * - 'common-versions.json'
4679
- * - 'pnpmfile.js'/'.pnpmfile.cjs'
4680
- */
4681
- getVariantDependentSubspaceConfigFolderPath(variant: string | undefined): string;
4682
4616
  /**
4683
4617
  * Returns the full path of the folder containing this subspace's configuration files such as `pnpm-lock.yaml`.
4684
4618
  *
@@ -4713,10 +4647,6 @@ export declare class Subspace {
4713
4647
  * @beta
4714
4648
  */
4715
4649
  getTempShrinkwrapFilename(): string;
4716
- /**
4717
- * @deprecated - Use {@link Subspace.getTempShrinkwrapPreinstallFilePath} instead.
4718
- */
4719
- getTempShrinkwrapPreinstallFilename(subspaceName?: string | undefined): string;
4720
4650
  /**
4721
4651
  * The full path of a backup copy of tempShrinkwrapFilename. This backup copy is made
4722
4652
  * before installation begins, and can be compared to determine how the package manager
@@ -4727,14 +4657,14 @@ export declare class Subspace {
4727
4657
  * or `C:\MyRepo\common\temp\pnpm-lock-preinstall.yaml`
4728
4658
  * @beta
4729
4659
  */
4730
- getTempShrinkwrapPreinstallFilePath(): string;
4660
+ getTempShrinkwrapPreinstallFilename(subspaceName?: string | undefined): string;
4731
4661
  /**
4732
4662
  * Gets the path to the common-versions.json config file for this subspace.
4733
4663
  *
4734
4664
  * Example: `C:\MyRepo\common\subspaces\my-subspace\common-versions.json`
4735
4665
  * @beta
4736
4666
  */
4737
- getCommonVersionsFilePath(variant?: string): string;
4667
+ getCommonVersionsFilePath(): string;
4738
4668
  /**
4739
4669
  * Gets the path to the pnpm-config.json config file for this subspace.
4740
4670
  *
@@ -4746,13 +4676,13 @@ export declare class Subspace {
4746
4676
  * Gets the settings from the common-versions.json config file.
4747
4677
  * @beta
4748
4678
  */
4749
- getCommonVersions(variant?: string): CommonVersionsConfiguration;
4679
+ getCommonVersions(): CommonVersionsConfiguration;
4750
4680
  /**
4751
4681
  * Gets the ensureConsistentVersions property from the common-versions.json config file,
4752
4682
  * or from the rush.json file if it isn't defined in common-versions.json
4753
4683
  * @beta
4754
4684
  */
4755
- shouldEnsureConsistentVersions(variant?: string): boolean;
4685
+ get shouldEnsureConsistentVersions(): boolean;
4756
4686
  /**
4757
4687
  * Gets the path to the repo-state.json file.
4758
4688
  * @beta
@@ -4765,15 +4695,10 @@ export declare class Subspace {
4765
4695
  */
4766
4696
  getRepoState(): RepoStateFile;
4767
4697
  /**
4768
- * @deprecated - Use {@link Subspace.getCommittedShrinkwrapFilePath} instead.
4769
- */
4770
- getCommittedShrinkwrapFilename(): string;
4771
- /**
4772
- * Gets the committed shrinkwrap file name for a specific variant.
4773
- * @param variant - The name of the current variant in use by the active command.
4698
+ * Gets the committed shrinkwrap file name.
4774
4699
  * @beta
4775
4700
  */
4776
- getCommittedShrinkwrapFilePath(variant?: string): string;
4701
+ getCommittedShrinkwrapFilename(): string;
4777
4702
  /**
4778
4703
  * Gets the absolute path for "pnpmfile.js" for a specific subspace.
4779
4704
  * @param subspace - The name of the current subspace in use by the active command.
@@ -4793,7 +4718,7 @@ export declare class Subspace {
4793
4718
  * Returns hash value of injected dependencies in related package.json.
4794
4719
  * @beta
4795
4720
  */
4796
- getPackageJsonInjectedDependenciesHash(variant?: string): string | undefined;
4721
+ getPackageJsonInjectedDependenciesHash(): string | undefined;
4797
4722
  }
4798
4723
 
4799
4724
  /**
@@ -80,7 +80,7 @@ export declare class CommonVersionsConfiguration {
80
80
  * Loads the common-versions.json data from the specified file path.
81
81
  * If the file has not been created yet, then an empty object is returned.
82
82
  */
83
- static loadFromFile(jsonFilePath: string, rushConfiguration?: RushConfiguration): CommonVersionsConfiguration;
83
+ static loadFromFile(jsonFilename: string, rushConfiguration?: RushConfiguration): CommonVersionsConfiguration;
84
84
  private static _deserializeTable;
85
85
  private static _serializeTable;
86
86
  /**
@@ -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 PackageNameParser, type JsonNull } from '@rushstack/node-core-library';
1
+ import { type PackageNameParser } from '@rushstack/node-core-library';
2
2
  import { LookupByPath } from '@rushstack/lookup-by-path';
3
3
  import { RushConfigurationProject, type IRushConfigurationProjectJson } from './RushConfigurationProject';
4
4
  import { ApprovedPackagesPolicy } from './ApprovedPackagesPolicy';
@@ -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.
@@ -113,13 +106,7 @@ export interface IRushConfigurationJson {
113
106
  pnpmOptions?: IPnpmOptionsJson;
114
107
  yarnOptions?: IYarnOptionsJson;
115
108
  ensureConsistentVersions?: boolean;
116
- variants?: IRushVariantOptionsJson[];
117
- }
118
- /**
119
- * This represents the JSON data structure for the "current-variant.json" data file.
120
- */
121
- export interface ICurrentVariantJson {
122
- variant: string | JsonNull;
109
+ variants?: unknown;
123
110
  }
124
111
  /**
125
112
  * The filter parameters to search from all projects
@@ -152,10 +139,6 @@ export interface ITryFindRushJsonLocationOptions {
152
139
  export declare class RushConfiguration {
153
140
  private static _jsonSchema;
154
141
  private readonly _pathTrees;
155
- /**
156
- * @internal
157
- */
158
- _currentVariantJsonLoadingPromise: Promise<ICurrentVariantJson | undefined> | undefined;
159
142
  private _projects;
160
143
  private _projectsByName;
161
144
  private _projectsByTag;
@@ -260,13 +243,12 @@ export declare class RushConfiguration {
260
243
  */
261
244
  readonly subspacesFeatureEnabled: boolean;
262
245
  /**
263
- * The filename of the variant dependency data file. By default this is
264
- * called 'current-variant.json' resides in the Rush common folder.
265
- * Its data structure is defined by ICurrentVariantJson.
246
+ * If true, the `variants` field is present in rush.json.
266
247
  *
267
- * Example: `C:\MyRepo\common\temp\current-variant.json`
248
+ * @internal
249
+ * @deprecated - Remove when the field is removed from the rush.json schema.
268
250
  */
269
- readonly currentVariantJsonFilePath: string;
251
+ readonly _hasVariantsField: boolean;
270
252
  /**
271
253
  * The version of the locally package manager tool. (Example: "1.2.3")
272
254
  */
@@ -452,12 +434,6 @@ export declare class RushConfiguration {
452
434
  * @internal
453
435
  */
454
436
  readonly _rushPluginsConfiguration: RushPluginsConfiguration;
455
- /**
456
- * The variants specified in the rush.json configuration file.
457
- *
458
- * @beta
459
- */
460
- readonly variants: ReadonlySet<string>;
461
437
  /**
462
438
  * Use RushConfiguration.loadFromConfigurationFile() or Use RushConfiguration.loadFromDefaultLocation()
463
439
  * instead.
@@ -584,34 +560,23 @@ export declare class RushConfiguration {
584
560
  * Instead it will be initialized in an empty state, and calling CommonVersionsConfiguration.save()
585
561
  * will create the file.
586
562
  *
587
- * @deprecated Use `getCommonVersions` instead, which gets the correct common version data
588
- * for a given active variant.
563
+ * @deprecated Use `getCommonVersions` instead, which gets the correct common version data.
589
564
  */
590
565
  get commonVersions(): CommonVersionsConfiguration;
591
- /**
592
- * Gets the currently-installed variant, if an installation has occurred.
593
- * For Rush operations which do not take a --variant parameter, this method
594
- * determines which variant, if any, was last specified when performing "rush install"
595
- * or "rush update".
596
- */
597
- getCurrentlyInstalledVariantAsync(): Promise<string | undefined>;
598
566
  /**
599
567
  * @deprecated Use {@link Subspace.getCommonVersionsFilePath} instead
600
568
  */
601
- getCommonVersionsFilePath(subspace?: Subspace, variant?: string): string;
569
+ getCommonVersionsFilePath(subspace?: Subspace): string;
602
570
  /**
603
571
  * @deprecated Use {@link Subspace.getCommonVersions} instead
604
572
  */
605
- getCommonVersions(subspace?: Subspace, variant?: string): CommonVersionsConfiguration;
573
+ getCommonVersions(subspace?: Subspace): CommonVersionsConfiguration;
606
574
  /**
607
575
  * Returns a map of all direct dependencies that only have a single semantic version specifier.
608
576
  *
609
- * @param subspace - The subspace to use
610
- * @param variant - The name of the current variant in use by the active command.
611
- *
612
577
  * @returns A map of dependency name --\> version specifier for implicitly preferred versions.
613
578
  */
614
- getImplicitlyPreferredVersions(subspace?: Subspace, variant?: string): Map<string, string>;
579
+ getImplicitlyPreferredVersions(subspace?: Subspace): Map<string, string>;
615
580
  /**
616
581
  * @deprecated Use {@link Subspace.getRepoStateFilePath} instead
617
582
  */
@@ -621,11 +586,11 @@ export declare class RushConfiguration {
621
586
  */
622
587
  getRepoState(subspace?: Subspace): RepoStateFile;
623
588
  /**
624
- * @deprecated Use {@link Subspace.getCommittedShrinkwrapFilePath} instead
589
+ * @deprecated Use {@link Subspace.getCommittedShrinkwrapFilename} instead
625
590
  */
626
- getCommittedShrinkwrapFilename(subspace?: Subspace, variant?: string): string;
591
+ getCommittedShrinkwrapFilename(subspace?: Subspace): string;
627
592
  /**
628
- * @deprecated Use {@link Subspace.getPnpmfilePath} instead
593
+ * @deprecated Use {@link Subspace.getRepoStateFilePath} instead
629
594
  */
630
595
  getPnpmfilePath(subspace?: Subspace): string;
631
596
  /**
@@ -655,6 +620,5 @@ export declare class RushConfiguration {
655
620
  * If the path is not under any project's folder, returns undefined.
656
621
  */
657
622
  tryGetProjectForPath(currentFolderPath: string): RushConfigurationProject | undefined;
658
- private _loadCurrentVariantJsonAsync;
659
623
  }
660
624
  //# sourceMappingURL=RushConfiguration.d.ts.map
@@ -37,20 +37,6 @@ export declare class Subspace {
37
37
  */
38
38
  getPnpmOptions(): PnpmOptionsConfiguration | undefined;
39
39
  private _ensureDetail;
40
- /**
41
- * Returns the full path of the folder containing this subspace's variant-dependent configuration files
42
- * such as `pnpm-lock.yaml`.
43
- *
44
- * Example: `common/config/subspaces/my-subspace` or `common/config/subspaces/my-subspace/variants/my-variant`
45
- * @beta
46
- *
47
- * @remarks
48
- * The following files may be variant-dependent:
49
- * - Lockfiles: (i.e. - `pnpm-lock.yaml`, `npm-shrinkwrap.json`, `yarn.lock`, etc)
50
- * - 'common-versions.json'
51
- * - 'pnpmfile.js'/'.pnpmfile.cjs'
52
- */
53
- getVariantDependentSubspaceConfigFolderPath(variant: string | undefined): string;
54
40
  /**
55
41
  * Returns the full path of the folder containing this subspace's configuration files such as `pnpm-lock.yaml`.
56
42
  *
@@ -85,10 +71,6 @@ export declare class Subspace {
85
71
  * @beta
86
72
  */
87
73
  getTempShrinkwrapFilename(): string;
88
- /**
89
- * @deprecated - Use {@link Subspace.getTempShrinkwrapPreinstallFilePath} instead.
90
- */
91
- getTempShrinkwrapPreinstallFilename(subspaceName?: string | undefined): string;
92
74
  /**
93
75
  * The full path of a backup copy of tempShrinkwrapFilename. This backup copy is made
94
76
  * before installation begins, and can be compared to determine how the package manager
@@ -99,14 +81,14 @@ export declare class Subspace {
99
81
  * or `C:\MyRepo\common\temp\pnpm-lock-preinstall.yaml`
100
82
  * @beta
101
83
  */
102
- getTempShrinkwrapPreinstallFilePath(): string;
84
+ getTempShrinkwrapPreinstallFilename(subspaceName?: string | undefined): string;
103
85
  /**
104
86
  * Gets the path to the common-versions.json config file for this subspace.
105
87
  *
106
88
  * Example: `C:\MyRepo\common\subspaces\my-subspace\common-versions.json`
107
89
  * @beta
108
90
  */
109
- getCommonVersionsFilePath(variant?: string): string;
91
+ getCommonVersionsFilePath(): string;
110
92
  /**
111
93
  * Gets the path to the pnpm-config.json config file for this subspace.
112
94
  *
@@ -118,13 +100,13 @@ export declare class Subspace {
118
100
  * Gets the settings from the common-versions.json config file.
119
101
  * @beta
120
102
  */
121
- getCommonVersions(variant?: string): CommonVersionsConfiguration;
103
+ getCommonVersions(): CommonVersionsConfiguration;
122
104
  /**
123
105
  * Gets the ensureConsistentVersions property from the common-versions.json config file,
124
106
  * or from the rush.json file if it isn't defined in common-versions.json
125
107
  * @beta
126
108
  */
127
- shouldEnsureConsistentVersions(variant?: string): boolean;
109
+ get shouldEnsureConsistentVersions(): boolean;
128
110
  /**
129
111
  * Gets the path to the repo-state.json file.
130
112
  * @beta
@@ -137,15 +119,10 @@ export declare class Subspace {
137
119
  */
138
120
  getRepoState(): RepoStateFile;
139
121
  /**
140
- * @deprecated - Use {@link Subspace.getCommittedShrinkwrapFilePath} instead.
141
- */
142
- getCommittedShrinkwrapFilename(): string;
143
- /**
144
- * Gets the committed shrinkwrap file name for a specific variant.
145
- * @param variant - The name of the current variant in use by the active command.
122
+ * Gets the committed shrinkwrap file name.
146
123
  * @beta
147
124
  */
148
- getCommittedShrinkwrapFilePath(variant?: string): string;
125
+ getCommittedShrinkwrapFilename(): string;
149
126
  /**
150
127
  * Gets the absolute path for "pnpmfile.js" for a specific subspace.
151
128
  * @param subspace - The name of the current subspace in use by the active command.
@@ -165,6 +142,6 @@ export declare class Subspace {
165
142
  * Returns hash value of injected dependencies in related package.json.
166
143
  * @beta
167
144
  */
168
- getPackageJsonInjectedDependenciesHash(variant?: string): string | undefined;
145
+ getPackageJsonInjectedDependenciesHash(): string | undefined;
169
146
  }
170
147
  //# sourceMappingURL=Subspace.d.ts.map
@@ -10,8 +10,7 @@ export declare class AddAction extends BaseAddAndRemoveAction {
10
10
  private readonly _devDependencyFlag;
11
11
  private readonly _peerDependencyFlag;
12
12
  private readonly _makeConsistentFlag;
13
- private readonly _variantParameter;
14
13
  constructor(parser: RushCommandLineParser);
15
- getUpdateOptionsAsync(): Promise<IPackageJsonUpdaterRushAddOptions>;
14
+ getUpdateOptions(): IPackageJsonUpdaterRushAddOptions;
16
15
  }
17
16
  //# sourceMappingURL=AddAction.d.ts.map
@@ -29,7 +29,7 @@ export declare abstract class BaseAddAndRemoveAction extends BaseRushAction {
29
29
  protected abstract readonly _packageNameList: CommandLineStringListParameter;
30
30
  protected get specifiedPackageNameList(): readonly string[];
31
31
  constructor(options: IBaseRushActionOptions);
32
- protected abstract getUpdateOptionsAsync(): Promise<IPackageJsonUpdaterRushBaseUpdateOptions>;
32
+ protected abstract getUpdateOptions(): IPackageJsonUpdaterRushBaseUpdateOptions;
33
33
  protected getProjects(): RushConfigurationProject[];
34
34
  runAsync(): Promise<void>;
35
35
  }
@@ -1,4 +1,4 @@
1
- import type { CommandLineFlagParameter, CommandLineIntegerParameter, CommandLineStringParameter, IRequiredCommandLineIntegerParameter } from '@rushstack/ts-command-line';
1
+ import type { CommandLineFlagParameter, CommandLineIntegerParameter, IRequiredCommandLineIntegerParameter } from '@rushstack/ts-command-line';
2
2
  import { type ITerminal } from '@rushstack/terminal';
3
3
  import { BaseRushAction, type IBaseRushActionOptions } from './BaseRushAction';
4
4
  import type { IInstallManagerOptions } from '../../logic/base/BaseInstallManagerTypes';
@@ -8,7 +8,6 @@ import { type SelectionParameterSet } from '../parsing/SelectionParameterSet';
8
8
  */
9
9
  export declare abstract class BaseInstallAction extends BaseRushAction {
10
10
  protected readonly _terminal: ITerminal;
11
- protected readonly _variantParameter: CommandLineStringParameter;
12
11
  protected readonly _purgeParameter: CommandLineFlagParameter;
13
12
  protected readonly _bypassPolicyParameter: CommandLineFlagParameter;
14
13
  protected readonly _noLinkParameter: CommandLineFlagParameter;
@@ -5,7 +5,6 @@ export declare class CheckAction extends BaseRushAction {
5
5
  private readonly _jsonFlag;
6
6
  private readonly _verboseFlag;
7
7
  private readonly _subspaceParameter;
8
- private readonly _variantParameter;
9
8
  constructor(parser: RushCommandLineParser);
10
9
  protected runAsync(): Promise<void>;
11
10
  }
@@ -5,9 +5,9 @@ import type { IPackageJsonUpdaterRushRemoveOptions } from '../../logic/PackageJs
5
5
  export declare class RemoveAction extends BaseAddAndRemoveAction {
6
6
  protected readonly _allFlag: CommandLineFlagParameter;
7
7
  protected readonly _packageNameList: CommandLineStringListParameter;
8
- private readonly _variantParameter;
9
- private readonly _terminal;
8
+ private _terminalProvider;
9
+ private _terminal;
10
10
  constructor(parser: RushCommandLineParser);
11
- getUpdateOptionsAsync(): Promise<IPackageJsonUpdaterRushRemoveOptions>;
11
+ getUpdateOptions(): IPackageJsonUpdaterRushRemoveOptions;
12
12
  }
13
13
  //# sourceMappingURL=RemoveAction.d.ts.map
@@ -3,7 +3,6 @@ import { BaseRushAction } from './BaseRushAction';
3
3
  export declare class UpgradeInteractiveAction extends BaseRushAction {
4
4
  private _makeConsistentFlag;
5
5
  private _skipUpdateFlag;
6
- private readonly _variantParameter;
7
6
  constructor(parser: RushCommandLineParser);
8
7
  runAsync(): Promise<void>;
9
8
  }
@@ -20,10 +20,10 @@ export interface IDependencyAnalysis {
20
20
  export declare class DependencyAnalyzer {
21
21
  private static _dependencyAnalyzerByRushConfiguration;
22
22
  private _rushConfiguration;
23
- private _analysisByVariantBySubspace;
23
+ private _analysisBySubspace;
24
24
  private constructor();
25
25
  static forRushConfiguration(rushConfiguration: RushConfiguration): DependencyAnalyzer;
26
- getAnalysis(subspace: Subspace | undefined, variant: string | undefined, addAction: boolean): IDependencyAnalysis;
26
+ getAnalysis(subspace?: Subspace, addAction?: boolean): IDependencyAnalysis;
27
27
  /**
28
28
  * Generates the {@link IDependencyAnalysis}.
29
29
  *
@@ -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 | undefined;
52
48
  }
53
49
  /**
54
50
  * Configuration options for adding or updating a dependency in a single project
@@ -51,7 +51,7 @@ export declare class RepoStateFile {
51
51
  *
52
52
  * @returns true if the file was modified, otherwise false.
53
53
  */
54
- refreshState(rushConfiguration: RushConfiguration, subspace: Subspace | undefined, variant?: string): boolean;
54
+ refreshState(rushConfiguration: RushConfiguration, subspace: Subspace | undefined): boolean;
55
55
  /**
56
56
  * Writes the "repo-state.json" file to disk, using the filename that was passed to loadFromFile().
57
57
  */
@@ -41,12 +41,6 @@ export declare class RushConstants {
41
41
  * The NPM scope ("\@rush-temp") that is used for Rush's temporary projects.
42
42
  */
43
43
  static readonly rushTempNpmScope: '@rush-temp';
44
- /**
45
- * The folder name ("variants") under which named variant configurations for
46
- * alternate dependency sets may be found.
47
- * Example: `C:\MyRepo\common\config\rush\variants`
48
- */
49
- static readonly rushVariantsFolderName: 'variants';
50
44
  /**
51
45
  * The folder name ("temp") under the common folder, or under the .rush folder in each project's directory where
52
46
  * temporary files will be stored.