Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@rushstack/rush-sdk

Package Overview
Dependencies
Maintainers
4
Versions
330
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@rushstack/rush-sdk - npm Package Compare versions

Comparing version
5.173.0
to
5.174.0
+7
-0
lib-dts/api/ExperimentsConfiguration.d.ts

@@ -112,2 +112,9 @@ /**

omitAppleDoubleFilesFromBuildCache?: boolean;
/**
* If true, `rush change --verify` will perform additional validation of change files. Specifically,
* it will report errors if change files reference projects that do not exist in the Rush configuration,
* or if change files target a project that belongs to a lockstepped version policy but is not the
* policy's main project.
*/
strictChangefileValidation?: boolean;
}

@@ -114,0 +121,0 @@ /**

+7
-7

@@ -57,5 +57,5 @@ import type { ITerminal } from '@rushstack/terminal';

*
* - `"major"` — includes only the major version (e.g. `18`)
* - `"minor"` — includes the major and minor version (e.g. `18.17`)
* - `"patch"` — includes the full version (e.g. `18.17.1`)
* - `"major"` - includes only the major version (e.g. `18`)
* - `"minor"` - includes the major and minor version (e.g. `18.17`)
* - `"patch"` - includes the full version (e.g. `18.17.1`)
*

@@ -108,6 +108,6 @@ * @alpha

* Allowed values:
* - `true` — alias for `"patch"`, includes the full version (e.g. `18.17.1`)
* - `"major"` — includes only the major version (e.g. `18`)
* - `"minor"` — includes the major and minor version (e.g. `18.17`)
* - `"patch"` — includes the full version (e.g. `18.17.1`)
* - `true` - alias for `"patch"`, includes the full version (e.g. `18.17.1`)
* - `"major"` - includes only the major version (e.g. `18`)
* - `"minor"` - includes the major and minor version (e.g. `18.17`)
* - `"patch"` - includes the full version (e.g. `18.17.1`)
*/

@@ -114,0 +114,0 @@ dependsOnNodeVersion?: boolean | NodeVersionGranularity;

@@ -6,2 +6,3 @@ import { BaseRushAction } from './BaseRushAction';

private readonly _verifyParameter;
private readonly _verifyAllParameter;
private readonly _noFetchParameter;

@@ -23,5 +24,10 @@ private readonly _targetBranchParameter;

private _getChangedProjectNamesAsync;
private _validateChangeFileAsync;
private _getChangeFilesAsync;
private _validateAllChangeFilesAsync;
/**
* Compares the current rush.json project list against the target branch to find
* projects that were removed.
*/
private _getDeletedProjectNamesAsync;
private _getChangeFilesSinceBaseBranchAsync;
/**
* The main loop which prompts the user for information on changed projects.

@@ -28,0 +34,0 @@ */

@@ -15,3 +15,3 @@ /// <reference types="node" preserve="true" />

export { type IYarnOptionsJson as _IYarnOptionsJson, YarnOptionsConfiguration } from './logic/yarn/YarnOptionsConfiguration';
export { type IPnpmOptionsJson as _IPnpmOptionsJson, type PnpmStoreLocation, type IPnpmLockfilePolicies, type IPnpmPackageExtension, type IPnpmPeerDependencyRules, type IPnpmPeerDependenciesMeta, type PnpmStoreOptions, PnpmOptionsConfiguration, type PnpmResolutionMode } from './logic/pnpm/PnpmOptionsConfiguration';
export { type IPnpmOptionsJson as _IPnpmOptionsJson, type PnpmStoreLocation, type IPnpmLockfilePolicies, type IPnpmPackageExtension, type IPnpmPeerDependencyRules, type IPnpmPeerDependenciesMeta, type PnpmStoreOptions, PnpmOptionsConfiguration, type PnpmResolutionMode, type PnpmTrustPolicy } from './logic/pnpm/PnpmOptionsConfiguration';
export { BuildCacheConfiguration } from './api/BuildCacheConfiguration';

@@ -18,0 +18,0 @@ export { CobuildConfiguration, type ICobuildJson } from './api/CobuildConfiguration';

@@ -0,3 +1,14 @@

import type { ITerminal } from '@rushstack/terminal';
import type { IChangelog } from '../api/Changelog';
import type { RushConfiguration } from '../api/RushConfiguration';
export interface IValidateOptions {
terminal: ITerminal;
filesToValidate: Iterable<string>;
changedProjectNames: Iterable<string>;
/**
* Optional set of project names that were removed from rush.json.
* When provided, produces a more specific error message for these projects.
*/
deletedProjectNames?: ReadonlySet<string>;
}
/**

@@ -12,13 +23,14 @@ * This class represents the collection of change files existing in the repo and provides operations

private _files;
private _changesPath;
constructor(changesPath: string);
private readonly _rushConfiguration;
private readonly _changesPath;
constructor(rushConfiguration: RushConfiguration);
/**
* Validate if the newly added change files match the changed packages.
*/
static validate(newChangeFilePaths: string[], changedPackages: string[], rushConfiguration: RushConfiguration): void;
static getChangeComments(newChangeFilePaths: string[]): Map<string, string[]>;
validateAsync(options: IValidateOptions): Promise<void>;
static getChangeComments(terminal: ITerminal, newChangeFilePaths: string[]): Map<string, string[]>;
/**
* Get the array of absolute paths of change files.
*/
getFilesAsync(): Promise<string[]>;
getAllChangeFilesAsync(): Promise<string[]>;
/**

@@ -31,5 +43,5 @@ * Get the path of changes folder.

*/
deleteAllAsync(shouldDelete: boolean, updatedChangelogs?: IChangelog[]): Promise<number>;
deleteAllAsync(terminal: ITerminal, shouldDelete: boolean, updatedChangelogs?: IChangelog[]): Promise<number>;
private _deleteFilesAsync;
}
//# sourceMappingURL=ChangeFiles.d.ts.map
import type { IPackageJson } from '@rushstack/node-core-library';
import type { ITerminal } from '@rushstack/terminal';
import type { IChangeInfo } from '../api/ChangeManagement';

@@ -22,7 +23,6 @@ import type { RushConfiguration } from '../api/RushConfiguration';

* Load changes from change files
* @param changesPath - location of change files
* @param prereleaseToken - prerelease token
* @param includeCommitDetails - whether commit details need to be included in changes
*/
loadAsync(changesPath: string, prereleaseToken?: PrereleaseToken, includeCommitDetails?: boolean): Promise<void>;
loadAsync(prereleaseToken?: PrereleaseToken, includeCommitDetails?: boolean): Promise<void>;
hasChanges(): boolean;

@@ -38,4 +38,4 @@ get packageChanges(): IChangeInfo[];

apply(shouldCommit: boolean): Map<string, IPackageJson> | undefined;
updateChangelogAsync(shouldCommit: boolean): Promise<void>;
updateChangelogAsync(terminal: ITerminal, shouldCommit: boolean): Promise<void>;
}
//# sourceMappingURL=ChangeManager.d.ts.map

@@ -22,2 +22,11 @@ import { type IPackageManagerOptionsJsonBase, PackageManagerOptionsConfigurationBase } from '../base/BasePackageManagerOptionsConfiguration';

/**
* Possible values for the `trustPolicy` setting in Rush's pnpm-config.json file.
* @remarks
* These values correspond to PNPM's `trust-policy` setting, which is documented here:
* {@link https://pnpm.io/settings#trustpolicy}
*
* @public
*/
export type PnpmTrustPolicy = 'no-downgrade' | 'off';
/**
* Possible values for the `pnpmLockfilePolicies` setting in Rush's pnpm-config.json file.

@@ -127,4 +136,8 @@ * @public

/**
* {@inheritDoc PnpmOptionsConfiguration.minimumReleaseAge}
* {@inheritDoc PnpmOptionsConfiguration.minimumReleaseAgeMinutes}
*/
minimumReleaseAgeMinutes?: number;
/**
* @deprecated Use `minimumReleaseAgeMinutes` instead.
*/
minimumReleaseAge?: number;

@@ -136,2 +149,14 @@ /**

/**
* {@inheritDoc PnpmOptionsConfiguration.trustPolicy}
*/
trustPolicy?: PnpmTrustPolicy;
/**
* {@inheritDoc PnpmOptionsConfiguration.trustPolicyExclude}
*/
trustPolicyExclude?: string[];
/**
* {@inheritDoc PnpmOptionsConfiguration.trustPolicyIgnoreAfterMinutes}
*/
trustPolicyIgnoreAfterMinutes?: number;
/**
* {@inheritDoc PnpmOptionsConfiguration.alwaysInjectDependenciesFromOtherSubspaces}

@@ -263,6 +288,10 @@ */

*/
readonly minimumReleaseAge: number | undefined;
readonly minimumReleaseAgeMinutes: number | undefined;
/**
* @deprecated Use {@link PnpmOptionsConfiguration.minimumReleaseAgeMinutes} instead.
*/
get minimumReleaseAge(): number | undefined;
/**
* List of package names or patterns that are excluded from the minimumReleaseAge check.
* These packages will always install the newest version immediately, even if minimumReleaseAge is set.
* These packages will always install the newest version immediately, even if minimumReleaseAgeMinutes is set.
*

@@ -278,2 +307,35 @@ * @remarks

/**
* The trust policy controls whether pnpm should block installation of package versions where the
* trust level has decreased (e.g., a package previously published with provenance is now published
* without it). Setting this to `"no-downgrade"` enables the protection.
*
* @remarks
* (SUPPORTED ONLY IN PNPM 10.21.0 AND NEWER)
*
* PNPM documentation: https://pnpm.io/settings#trustpolicy
*/
readonly trustPolicy: PnpmTrustPolicy | undefined;
/**
* List of package names or patterns that are excluded from the trust policy check.
* These packages will be allowed to install even if their trust level has decreased.
*
* @remarks
* (SUPPORTED ONLY IN PNPM 10.22.0 AND NEWER)
*
* PNPM documentation: https://pnpm.io/settings#trustpolicyexclude
*
* Example: ["webpack", "react", "\@myorg/*"]
*/
readonly trustPolicyExclude: string[] | undefined;
/**
* The number of minutes after which pnpm will ignore trust level downgrades. Packages published
* longer ago than this threshold will not be blocked even if their trust level has decreased.
*
* @remarks
* (SUPPORTED ONLY IN PNPM 10.27.0 AND NEWER)
*
* PNPM documentation: https://pnpm.io/settings#trustpolicyignoreafter
*/
readonly trustPolicyIgnoreAfterMinutes: number | undefined;
/**
* If true, then `rush update` add injected install options for all cross-subspace

@@ -280,0 +342,0 @@ * workspace dependencies, to avoid subspace doppelganger issue.

@@ -69,2 +69,7 @@ import type { LookupByPath } from '@rushstack/lookup-by-path';

private _getIgnoreMatcherForProjectAsync;
/**
* Detects changes to pnpm catalog entries in a subspace's pnpm-config.json and marks
* affected projects as changed.
*/
private _detectCatalogChangesAsync;
}

@@ -71,0 +76,0 @@ /**

import { type IPackageJson } from '@rushstack/node-core-library';
import type { ITerminal } from '@rushstack/terminal';
import { type BumpType } from '../api/VersionPolicy';

@@ -33,3 +34,3 @@ import { ChangeFile } from '../api/ChangeFile';

*/
bumpAsync(lockStepVersionPolicyName?: string, bumpType?: BumpType, identifier?: string, shouldCommit?: boolean): Promise<void>;
bumpAsync(terminal: ITerminal, lockStepVersionPolicyName?: string, bumpType?: BumpType, identifier?: string, shouldCommit?: boolean): Promise<void>;
private _ensure;

@@ -36,0 +37,0 @@ private _getManuallyVersionedProjects;

{
"name": "@rushstack/rush-sdk",
"version": "5.173.0",
"version": "5.174.0",
"description": "An API for interacting with the Rush engine",

@@ -42,7 +42,7 @@ "repository": {

"tapable": "2.2.1",
"@rushstack/node-core-library": "5.22.0",
"@rushstack/credential-cache": "0.2.12",
"@rushstack/package-deps-hash": "4.7.12",
"@rushstack/terminal": "0.22.5",
"@rushstack/lookup-by-path": "0.10.1",
"@rushstack/terminal": "0.22.5"
"@rushstack/node-core-library": "5.22.0",
"@rushstack/package-deps-hash": "4.7.12"
},

@@ -55,8 +55,8 @@ "devDependencies": {

"@rushstack/heft": "1.2.12",
"@microsoft/rush-lib": "5.174.0",
"@rushstack/heft-webpack5-plugin": "1.3.13",
"@microsoft/rush-lib": "5.173.0",
"local-node-rig": "1.0.0",
"@rushstack/ts-command-line": "5.3.5",
"@rushstack/stream-collator": "4.2.12",
"@rushstack/webpack-preserve-dynamic-require-plugin": "0.12.13",
"local-node-rig": "1.0.0",
"@rushstack/ts-command-line": "5.3.5"
"@rushstack/webpack-preserve-dynamic-require-plugin": "0.12.13"
},

@@ -63,0 +63,0 @@ "sideEffects": false,

Sorry, the diff of this file is too big to display