@rushstack/rush-sdk 5.123.1 → 5.124.1

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.
@@ -911,7 +911,7 @@ export declare class FileSystemBuildCacheProvider {
911
911
  * A base class for flag file.
912
912
  * @internal
913
913
  */
914
- export declare class _FlagFile<T extends object = JsonObject> {
914
+ export declare class _FlagFile {
915
915
  /**
916
916
  * Flag file path
917
917
  */
@@ -919,13 +919,13 @@ export declare class _FlagFile<T extends object = JsonObject> {
919
919
  /**
920
920
  * Content of the flag
921
921
  */
922
- protected _state: T | {};
922
+ private _state;
923
923
  /**
924
924
  * Creates a new flag file
925
925
  * @param folderPath - the folder that this flag is managing
926
926
  * @param state - optional, the state that should be managed or compared
927
927
  */
928
- constructor(folderPath: string, flagName: string, initialState?: T);
928
+ constructor(folderPath: string, flagName: string, initialState?: JsonObject);
929
929
  /**
930
930
  * Returns true if the file exists and the contents match the current state.
931
931
  */
@@ -1995,6 +1995,10 @@ export declare interface _IPnpmOptionsJson extends IPackageManagerOptionsJsonBas
1995
1995
  * {@inheritDoc PnpmOptionsConfiguration.autoInstallPeers}
1996
1996
  */
1997
1997
  autoInstallPeers?: boolean;
1998
+ /**
1999
+ * {@inheritDoc PnpmOptionsConfiguration.alwaysInjectDependenciesFromOtherSubspaces}
2000
+ */
2001
+ alwaysInjectDependenciesFromOtherSubspaces?: boolean;
1998
2002
  /**
1999
2003
  * {@inheritDoc PnpmOptionsConfiguration.alwaysFullInstall}
2000
2004
  */
@@ -3112,6 +3116,17 @@ export declare class PnpmOptionsConfiguration extends PackageManagerOptionsConfi
3112
3116
  * The default value is same as PNPM default value. (In PNPM 8.x, this value is true)
3113
3117
  */
3114
3118
  readonly autoInstallPeers: boolean | undefined;
3119
+ /**
3120
+ * If true, then `rush update` add injected install options for all cross-subspace
3121
+ * workspace dependencies, to avoid subspace doppelganger issue.
3122
+ *
3123
+ * Here, the injected install refers to PNPM's PNPM's "injected dependencies"
3124
+ * feature. Learn more: https://pnpm.io/package_json#dependenciesmeta
3125
+ *
3126
+ * @remarks
3127
+ * The default value is false.
3128
+ */
3129
+ readonly alwaysInjectDependenciesFromOtherSubspaces: boolean | undefined;
3115
3130
  /**
3116
3131
  * The "globalOverrides" setting provides a simple mechanism for overriding version selections
3117
3132
  * for all dependencies of all projects in the monorepo workspace. The settings are copied
@@ -5,7 +5,7 @@
5
5
  "toolPackages": [
6
6
  {
7
7
  "packageName": "@microsoft/api-extractor",
8
- "packageVersion": "7.43.2"
8
+ "packageVersion": "7.43.3"
9
9
  }
10
10
  ]
11
11
  }
@@ -3,7 +3,7 @@ import { type JsonObject } from '@rushstack/node-core-library';
3
3
  * A base class for flag file.
4
4
  * @internal
5
5
  */
6
- export declare class FlagFile<T extends object = JsonObject> {
6
+ export declare class FlagFile {
7
7
  /**
8
8
  * Flag file path
9
9
  */
@@ -11,13 +11,13 @@ export declare class FlagFile<T extends object = JsonObject> {
11
11
  /**
12
12
  * Content of the flag
13
13
  */
14
- protected _state: T | {};
14
+ private _state;
15
15
  /**
16
16
  * Creates a new flag file
17
17
  * @param folderPath - the folder that this flag is managing
18
18
  * @param state - optional, the state that should be managed or compared
19
19
  */
20
- constructor(folderPath: string, flagName: string, initialState?: T);
20
+ constructor(folderPath: string, flagName: string, initialState?: JsonObject);
21
21
  /**
22
22
  * Returns true if the file exists and the contents match the current state.
23
23
  */
@@ -48,6 +48,10 @@ export interface ILastInstallFlagJson {
48
48
  * It is undefined when full install
49
49
  */
50
50
  selectedProjectNames?: string[];
51
+ /**
52
+ * pnpm-sync-lib version
53
+ */
54
+ pnpmSync?: string;
51
55
  }
52
56
  interface ILockfileValidityCheckOptions {
53
57
  statePropertiesToIgnore?: (keyof ILastInstallFlagJson)[];
@@ -9,7 +9,7 @@ import type { OperationExecutionRecord } from './OperationExecutionRecord';
9
9
  */
10
10
  export declare const UNASSIGNED_OPERATION: 'UNASSIGNED_OPERATION';
11
11
  export type IOperationIteratorResult = OperationExecutionRecord | {
12
- weight: 0;
12
+ weight: 1;
13
13
  status: typeof UNASSIGNED_OPERATION;
14
14
  };
15
15
  /**
@@ -71,7 +71,6 @@ export declare class OperationExecutionRecord implements IOperationRunnerContext
71
71
  readonly stopwatch: Stopwatch;
72
72
  readonly stdioSummarizer: StdioSummarizer;
73
73
  readonly runner: IOperationRunner;
74
- readonly weight: number;
75
74
  readonly associatedPhase: IPhase | undefined;
76
75
  readonly associatedProject: RushConfigurationProject | undefined;
77
76
  readonly _operationMetadataManager: OperationMetadataManager | undefined;
@@ -80,6 +79,7 @@ export declare class OperationExecutionRecord implements IOperationRunnerContext
80
79
  private _status;
81
80
  constructor(operation: Operation, context: IOperationExecutionRecordContext);
82
81
  get name(): string;
82
+ get weight(): number;
83
83
  get debugMode(): boolean;
84
84
  get quietMode(): boolean;
85
85
  get collatedWriter(): CollatedWriter;
@@ -113,6 +113,10 @@ export interface IPnpmOptionsJson extends IPackageManagerOptionsJsonBase {
113
113
  * {@inheritDoc PnpmOptionsConfiguration.autoInstallPeers}
114
114
  */
115
115
  autoInstallPeers?: boolean;
116
+ /**
117
+ * {@inheritDoc PnpmOptionsConfiguration.alwaysInjectDependenciesFromOtherSubspaces}
118
+ */
119
+ alwaysInjectDependenciesFromOtherSubspaces?: boolean;
116
120
  /**
117
121
  * {@inheritDoc PnpmOptionsConfiguration.alwaysFullInstall}
118
122
  */
@@ -221,6 +225,17 @@ export declare class PnpmOptionsConfiguration extends PackageManagerOptionsConfi
221
225
  * The default value is same as PNPM default value. (In PNPM 8.x, this value is true)
222
226
  */
223
227
  readonly autoInstallPeers: boolean | undefined;
228
+ /**
229
+ * If true, then `rush update` add injected install options for all cross-subspace
230
+ * workspace dependencies, to avoid subspace doppelganger issue.
231
+ *
232
+ * Here, the injected install refers to PNPM's PNPM's "injected dependencies"
233
+ * feature. Learn more: https://pnpm.io/package_json#dependenciesmeta
234
+ *
235
+ * @remarks
236
+ * The default value is false.
237
+ */
238
+ readonly alwaysInjectDependenciesFromOtherSubspaces: boolean | undefined;
224
239
  /**
225
240
  * The "globalOverrides" setting provides a simple mechanism for overriding version selections
226
241
  * for all dependencies of all projects in the monorepo workspace. The settings are copied
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rushstack/rush-sdk",
3
- "version": "5.123.1",
3
+ "version": "5.124.1",
4
4
  "description": "An API for interacting with the Rush engine",
5
5
  "repository": {
6
6
  "type": "git",
@@ -25,17 +25,17 @@
25
25
  "dependencies": {
26
26
  "@types/node-fetch": "2.6.2",
27
27
  "tapable": "2.2.1",
28
- "@rushstack/node-core-library": "4.2.0",
29
- "@rushstack/terminal": "0.10.2"
28
+ "@rushstack/node-core-library": "4.2.1",
29
+ "@rushstack/terminal": "0.10.3"
30
30
  },
31
31
  "devDependencies": {
32
32
  "@types/semver": "7.5.0",
33
33
  "@types/webpack-env": "1.18.0",
34
- "@microsoft/rush-lib": "5.123.1",
34
+ "@rushstack/heft": "0.66.6",
35
+ "@microsoft/rush-lib": "5.124.1",
35
36
  "local-node-rig": "1.0.0",
36
- "@rushstack/ts-command-line": "4.19.3",
37
- "@rushstack/stream-collator": "4.1.42",
38
- "@rushstack/heft": "0.66.4"
37
+ "@rushstack/ts-command-line": "4.19.5",
38
+ "@rushstack/stream-collator": "4.1.44"
39
39
  },
40
40
  "scripts": {
41
41
  "build": "heft build --clean",