@rushstack/rush-sdk 5.90.0 → 5.90.2-pr3954.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +46 -11
- package/dist/rush-lib.d.ts +77 -11
- package/lib/api/ApprovedPackagesConfiguration.d.ts +74 -0
- package/lib/api/ApprovedPackagesConfiguration.js +1 -0
- package/lib/api/ApprovedPackagesPolicy.d.ts +54 -0
- package/lib/api/ApprovedPackagesPolicy.js +1 -0
- package/lib/api/BuildCacheConfiguration.d.ts +77 -0
- package/lib/api/BuildCacheConfiguration.js +1 -0
- package/lib/api/ChangeFile.d.ts +42 -0
- package/lib/api/ChangeFile.js +1 -0
- package/lib/api/ChangeManagement.d.ts +85 -0
- package/lib/api/ChangeManagement.js +1 -0
- package/lib/api/ChangeManager.d.ts +16 -0
- package/lib/api/ChangeManager.js +1 -0
- package/lib/api/Changelog.d.ts +74 -0
- package/lib/api/Changelog.js +1 -0
- package/lib/api/CommandLineConfiguration.d.ts +161 -0
- package/lib/api/CommandLineConfiguration.js +1 -0
- package/lib/api/CommandLineJson.d.ts +251 -0
- package/lib/api/CommandLineJson.js +1 -0
- package/lib/api/CommonVersionsConfiguration.d.ts +96 -0
- package/lib/api/CommonVersionsConfiguration.js +1 -0
- package/lib/api/EnvironmentConfiguration.d.ts +258 -0
- package/lib/api/EnvironmentConfiguration.js +1 -0
- package/lib/api/EventHooks.d.ts +42 -0
- package/lib/api/EventHooks.js +1 -0
- package/lib/api/ExperimentsConfiguration.d.ts +62 -0
- package/lib/api/ExperimentsConfiguration.js +1 -0
- package/lib/api/LastInstallFlag.d.ts +73 -0
- package/lib/api/LastInstallFlag.js +1 -0
- package/lib/api/LastLinkFlag.d.ts +41 -0
- package/lib/api/LastLinkFlag.js +1 -0
- package/lib/api/PackageJsonEditor.d.ts +79 -0
- package/lib/api/PackageJsonEditor.js +1 -0
- package/lib/api/PackageNameParsers.d.ts +18 -0
- package/lib/api/PackageNameParsers.js +1 -0
- package/lib/api/Rush.d.ts +91 -0
- package/lib/api/Rush.js +1 -0
- package/lib/api/RushConfiguration.d.ts +595 -0
- package/lib/api/RushConfiguration.js +1 -0
- package/lib/api/RushConfigurationProject.d.ts +217 -0
- package/lib/api/RushConfigurationProject.js +1 -0
- package/lib/api/RushGlobalFolder.d.ts +32 -0
- package/lib/api/RushGlobalFolder.js +1 -0
- package/lib/api/RushInternals.d.ts +15 -0
- package/lib/api/RushInternals.js +1 -0
- package/lib/api/RushPluginsConfiguration.d.ts +21 -0
- package/lib/api/RushPluginsConfiguration.js +1 -0
- package/lib/api/RushProjectConfiguration.d.ts +117 -0
- package/lib/api/RushProjectConfiguration.js +1 -0
- package/lib/api/RushUserConfiguration.d.ts +16 -0
- package/lib/api/RushUserConfiguration.js +1 -0
- package/lib/api/SaveCallbackPackageJsonEditor.d.ts +14 -0
- package/lib/api/SaveCallbackPackageJsonEditor.js +1 -0
- package/lib/api/Variants.d.ts +11 -0
- package/lib/api/Variants.js +1 -0
- package/lib/api/VersionPolicy.d.ts +203 -0
- package/lib/api/VersionPolicy.js +1 -0
- package/lib/api/VersionPolicyConfiguration.d.ts +75 -0
- package/lib/api/VersionPolicyConfiguration.js +1 -0
- package/lib/api/packageManager/NpmPackageManager.d.ts +9 -0
- package/lib/api/packageManager/NpmPackageManager.js +1 -0
- package/lib/api/packageManager/PackageManager.d.ts +29 -0
- package/lib/api/packageManager/PackageManager.js +1 -0
- package/lib/api/packageManager/PnpmPackageManager.d.ts +17 -0
- package/lib/api/packageManager/PnpmPackageManager.js +1 -0
- package/lib/api/packageManager/YarnPackageManager.d.ts +9 -0
- package/lib/api/packageManager/YarnPackageManager.js +1 -0
- package/lib/cli/CommandLineMigrationAdvisor.d.ts +5 -0
- package/lib/cli/CommandLineMigrationAdvisor.js +1 -0
- package/lib/cli/RushCommandLineParser.d.ts +49 -0
- package/lib/cli/RushCommandLineParser.js +1 -0
- package/lib/cli/RushPnpmCommandLine.d.ts +7 -0
- package/lib/cli/RushPnpmCommandLine.js +1 -0
- package/lib/cli/RushPnpmCommandLineParser.d.ts +26 -0
- package/lib/cli/RushPnpmCommandLineParser.js +1 -0
- package/lib/cli/RushStartupBanner.d.ts +7 -0
- package/lib/cli/RushStartupBanner.js +1 -0
- package/lib/cli/RushXCommandLine.d.ts +17 -0
- package/lib/cli/RushXCommandLine.js +1 -0
- package/lib/cli/actions/AddAction.d.ts +15 -0
- package/lib/cli/actions/AddAction.js +1 -0
- package/lib/cli/actions/BaseAddAndRemoveAction.d.ts +36 -0
- package/lib/cli/actions/BaseAddAndRemoveAction.js +1 -0
- package/lib/cli/actions/BaseInstallAction.d.ts +23 -0
- package/lib/cli/actions/BaseInstallAction.js +1 -0
- package/lib/cli/actions/BaseRushAction.d.ts +55 -0
- package/lib/cli/actions/BaseRushAction.js +1 -0
- package/lib/cli/actions/ChangeAction.d.ts +65 -0
- package/lib/cli/actions/ChangeAction.js +1 -0
- package/lib/cli/actions/CheckAction.d.ts +10 -0
- package/lib/cli/actions/CheckAction.js +1 -0
- package/lib/cli/actions/DeployAction.d.ts +12 -0
- package/lib/cli/actions/DeployAction.js +1 -0
- package/lib/cli/actions/InitAction.d.ts +16 -0
- package/lib/cli/actions/InitAction.js +1 -0
- package/lib/cli/actions/InitAutoinstallerAction.d.ts +8 -0
- package/lib/cli/actions/InitAutoinstallerAction.js +1 -0
- package/lib/cli/actions/InitDeployAction.d.ts +9 -0
- package/lib/cli/actions/InitDeployAction.js +1 -0
- package/lib/cli/actions/InstallAction.d.ts +9 -0
- package/lib/cli/actions/InstallAction.js +1 -0
- package/lib/cli/actions/LinkAction.d.ts +8 -0
- package/lib/cli/actions/LinkAction.js +1 -0
- package/lib/cli/actions/ListAction.d.ts +54 -0
- package/lib/cli/actions/ListAction.js +1 -0
- package/lib/cli/actions/PublishAction.d.ts +49 -0
- package/lib/cli/actions/PublishAction.js +1 -0
- package/lib/cli/actions/PurgeAction.d.ts +8 -0
- package/lib/cli/actions/PurgeAction.js +1 -0
- package/lib/cli/actions/RemoveAction.d.ts +13 -0
- package/lib/cli/actions/RemoveAction.js +1 -0
- package/lib/cli/actions/ScanAction.d.ts +23 -0
- package/lib/cli/actions/ScanAction.js +1 -0
- package/lib/cli/actions/SetupAction.d.ts +7 -0
- package/lib/cli/actions/SetupAction.js +1 -0
- package/lib/cli/actions/UnlinkAction.d.ts +7 -0
- package/lib/cli/actions/UnlinkAction.js +1 -0
- package/lib/cli/actions/UpdateAction.d.ts +11 -0
- package/lib/cli/actions/UpdateAction.js +1 -0
- package/lib/cli/actions/UpdateAutoinstallerAction.d.ts +8 -0
- package/lib/cli/actions/UpdateAutoinstallerAction.js +1 -0
- package/lib/cli/actions/UpdateCloudCredentialsAction.d.ts +10 -0
- package/lib/cli/actions/UpdateCloudCredentialsAction.js +1 -0
- package/lib/cli/actions/UpgradeInteractiveAction.d.ts +9 -0
- package/lib/cli/actions/UpgradeInteractiveAction.js +1 -0
- package/lib/cli/actions/VersionAction.d.ts +22 -0
- package/lib/cli/actions/VersionAction.js +1 -0
- package/lib/cli/parsing/ParseParallelism.d.ts +6 -0
- package/lib/cli/parsing/ParseParallelism.js +1 -0
- package/lib/cli/parsing/SelectionParameterSet.d.ts +51 -0
- package/lib/cli/parsing/SelectionParameterSet.js +1 -0
- package/lib/cli/scriptActions/BaseScriptAction.d.ts +28 -0
- package/lib/cli/scriptActions/BaseScriptAction.js +1 -0
- package/lib/cli/scriptActions/GlobalScriptAction.d.ts +30 -0
- package/lib/cli/scriptActions/GlobalScriptAction.js +1 -0
- package/lib/cli/scriptActions/PhasedScriptAction.d.ts +65 -0
- package/lib/cli/scriptActions/PhasedScriptAction.js +1 -0
- package/lib/index.d.ts +51 -1
- package/lib/index.js +1 -190
- package/lib/logic/Autoinstaller.d.ts +21 -0
- package/lib/logic/Autoinstaller.js +1 -0
- package/lib/logic/ChangeFiles.d.ts +33 -0
- package/lib/logic/ChangeFiles.js +1 -0
- package/lib/logic/ChangeManager.d.ts +39 -0
- package/lib/logic/ChangeManager.js +1 -0
- package/lib/logic/ChangelogGenerator.d.ts +46 -0
- package/lib/logic/ChangelogGenerator.js +1 -0
- package/lib/logic/CredentialCache.d.ts +36 -0
- package/lib/logic/CredentialCache.js +1 -0
- package/lib/logic/DependencyAnalyzer.d.ts +34 -0
- package/lib/logic/DependencyAnalyzer.js +1 -0
- package/lib/logic/DependencySpecifier.d.ts +70 -0
- package/lib/logic/DependencySpecifier.js +1 -0
- package/lib/logic/EventHooksManager.d.ts +10 -0
- package/lib/logic/EventHooksManager.js +1 -0
- package/lib/logic/Git.d.ts +103 -0
- package/lib/logic/Git.js +1 -0
- package/lib/logic/GitStatusParser.d.ts +42 -0
- package/lib/logic/GitStatusParser.js +1 -0
- package/lib/logic/JsonSchemaUrls.d.ts +8 -0
- package/lib/logic/JsonSchemaUrls.js +1 -0
- package/lib/logic/LookupByPath.d.ts +86 -0
- package/lib/logic/LookupByPath.js +1 -0
- package/lib/logic/NodeJsCompatibility.d.ts +42 -0
- package/lib/logic/NodeJsCompatibility.js +1 -0
- package/lib/logic/PackageJsonUpdaterTypes.d.ts +75 -0
- package/lib/logic/PackageJsonUpdaterTypes.js +1 -0
- package/lib/logic/PrereleaseToken.d.ts +12 -0
- package/lib/logic/PrereleaseToken.js +1 -0
- package/lib/logic/ProjectChangeAnalyzer.d.ts +81 -0
- package/lib/logic/ProjectChangeAnalyzer.js +1 -0
- package/lib/logic/ProjectCommandSet.d.ts +13 -0
- package/lib/logic/ProjectCommandSet.js +1 -0
- package/lib/logic/PublishGit.d.ts +19 -0
- package/lib/logic/PublishGit.js +1 -0
- package/lib/logic/PublishUtilities.d.ts +71 -0
- package/lib/logic/PublishUtilities.js +1 -0
- package/lib/logic/PurgeManager.d.ts +29 -0
- package/lib/logic/PurgeManager.js +1 -0
- package/lib/logic/RepoStateFile.d.ts +55 -0
- package/lib/logic/RepoStateFile.js +1 -0
- package/lib/logic/RushConstants.d.ts +219 -0
- package/lib/logic/RushConstants.js +1 -0
- package/lib/logic/Selection.d.ts +39 -0
- package/lib/logic/Selection.js +1 -0
- package/lib/logic/SetupChecks.d.ts +22 -0
- package/lib/logic/SetupChecks.js +1 -0
- package/lib/logic/ShrinkwrapFileFactory.d.ts +8 -0
- package/lib/logic/ShrinkwrapFileFactory.js +1 -0
- package/lib/logic/StandardScriptUpdater.d.ts +26 -0
- package/lib/logic/StandardScriptUpdater.js +1 -0
- package/lib/logic/Telemetry.d.ts +123 -0
- package/lib/logic/Telemetry.js +1 -0
- package/lib/logic/UnlinkManager.d.ts +24 -0
- package/lib/logic/UnlinkManager.js +1 -0
- package/lib/logic/base/BaseInstallManagerTypes.d.ts +65 -0
- package/lib/logic/base/BaseInstallManagerTypes.js +1 -0
- package/lib/logic/base/BasePackageManagerOptionsConfiguration.d.ts +50 -0
- package/lib/logic/base/BasePackageManagerOptionsConfiguration.js +1 -0
- package/lib/logic/base/BaseProjectShrinkwrapFile.d.ts +36 -0
- package/lib/logic/base/BaseProjectShrinkwrapFile.js +1 -0
- package/lib/logic/base/BaseShrinkwrapFile.d.ts +92 -0
- package/lib/logic/base/BaseShrinkwrapFile.js +1 -0
- package/lib/logic/buildCache/CacheEntryId.d.ts +28 -0
- package/lib/logic/buildCache/CacheEntryId.js +1 -0
- package/lib/logic/buildCache/FileSystemBuildCacheProvider.d.ts +40 -0
- package/lib/logic/buildCache/FileSystemBuildCacheProvider.js +1 -0
- package/lib/logic/buildCache/ICloudBuildCacheProvider.d.ts +14 -0
- package/lib/logic/buildCache/ICloudBuildCacheProvider.js +1 -0
- package/lib/logic/buildCache/ProjectBuildCache.d.ts +46 -0
- package/lib/logic/buildCache/ProjectBuildCache.js +1 -0
- package/lib/logic/buildCache/getHashesForGlobsAsync.d.ts +3 -0
- package/lib/logic/buildCache/getHashesForGlobsAsync.js +1 -0
- package/lib/logic/deploy/DeployScenarioConfiguration.d.ts +39 -0
- package/lib/logic/deploy/DeployScenarioConfiguration.js +1 -0
- package/lib/logic/installManager/InstallHelpers.d.ts +16 -0
- package/lib/logic/installManager/InstallHelpers.js +1 -0
- package/lib/logic/npm/NpmOptionsConfiguration.d.ts +21 -0
- package/lib/logic/npm/NpmOptionsConfiguration.js +1 -0
- package/lib/logic/npm/NpmShrinkwrapFile.d.ts +29 -0
- package/lib/logic/npm/NpmShrinkwrapFile.js +1 -0
- package/lib/logic/operations/AsyncOperationQueue.d.ts +47 -0
- package/lib/logic/operations/AsyncOperationQueue.js +1 -0
- package/lib/logic/operations/IOperationExecutionResult.d.ts +49 -0
- package/lib/logic/operations/IOperationExecutionResult.js +1 -0
- package/lib/logic/operations/IOperationRunner.d.ts +77 -0
- package/lib/logic/operations/IOperationRunner.js +1 -0
- package/lib/logic/operations/NullOperationRunner.d.ts +35 -0
- package/lib/logic/operations/NullOperationRunner.js +1 -0
- package/lib/logic/operations/Operation.d.ts +80 -0
- package/lib/logic/operations/Operation.js +1 -0
- package/lib/logic/operations/OperationError.d.ts +11 -0
- package/lib/logic/operations/OperationError.js +1 -0
- package/lib/logic/operations/OperationExecutionManager.d.ts +42 -0
- package/lib/logic/operations/OperationExecutionManager.js +1 -0
- package/lib/logic/operations/OperationExecutionRecord.d.ts +82 -0
- package/lib/logic/operations/OperationExecutionRecord.js +1 -0
- package/lib/logic/operations/OperationMetadataManager.d.ts +48 -0
- package/lib/logic/operations/OperationMetadataManager.js +1 -0
- package/lib/logic/operations/OperationResultSummarizerPlugin.d.ts +17 -0
- package/lib/logic/operations/OperationResultSummarizerPlugin.js +1 -0
- package/lib/logic/operations/OperationStateFile.d.ts +39 -0
- package/lib/logic/operations/OperationStateFile.js +1 -0
- package/lib/logic/operations/OperationStatus.d.ts +43 -0
- package/lib/logic/operations/OperationStatus.js +1 -0
- package/lib/logic/operations/PhasedOperationPlugin.d.ts +9 -0
- package/lib/logic/operations/PhasedOperationPlugin.js +1 -0
- package/lib/logic/operations/ProjectLogWritable.d.ts +17 -0
- package/lib/logic/operations/ProjectLogWritable.js +1 -0
- package/lib/logic/operations/ShellOperationRunner.d.ts +87 -0
- package/lib/logic/operations/ShellOperationRunner.js +1 -0
- package/lib/logic/operations/ShellOperationRunnerPlugin.d.ts +8 -0
- package/lib/logic/operations/ShellOperationRunnerPlugin.js +1 -0
- package/lib/logic/pnpm/IPnpmfile.d.ts +54 -0
- package/lib/logic/pnpm/IPnpmfile.js +1 -0
- package/lib/logic/pnpm/PnpmOptionsConfiguration.d.ts +242 -0
- package/lib/logic/pnpm/PnpmOptionsConfiguration.js +1 -0
- package/lib/logic/pnpm/PnpmProjectShrinkwrapFile.d.ts +26 -0
- package/lib/logic/pnpm/PnpmProjectShrinkwrapFile.js +1 -0
- package/lib/logic/pnpm/PnpmShrinkwrapFile.d.ts +207 -0
- package/lib/logic/pnpm/PnpmShrinkwrapFile.js +1 -0
- package/lib/logic/pnpm/PnpmYamlCommon.d.ts +8 -0
- package/lib/logic/pnpm/PnpmYamlCommon.js +1 -0
- package/lib/logic/pnpm/PnpmfileConfiguration.d.ts +28 -0
- package/lib/logic/pnpm/PnpmfileConfiguration.js +1 -0
- package/lib/logic/pnpm/PnpmfileShim.d.ts +3 -0
- package/lib/logic/pnpm/PnpmfileShim.js +1 -0
- package/lib/logic/policy/GitEmailPolicy.d.ts +6 -0
- package/lib/logic/policy/GitEmailPolicy.js +1 -0
- package/lib/logic/policy/PolicyValidator.d.ts +10 -0
- package/lib/logic/policy/PolicyValidator.js +1 -0
- package/lib/logic/policy/ShrinkwrapFilePolicy.d.ts +13 -0
- package/lib/logic/policy/ShrinkwrapFilePolicy.js +1 -0
- package/lib/logic/selectors/GitChangedProjectSelectorParser.d.ts +23 -0
- package/lib/logic/selectors/GitChangedProjectSelectorParser.js +1 -0
- package/lib/logic/selectors/ISelectorParser.d.ts +11 -0
- package/lib/logic/selectors/ISelectorParser.js +1 -0
- package/lib/logic/selectors/NamedProjectSelectorParser.d.ts +10 -0
- package/lib/logic/selectors/NamedProjectSelectorParser.js +1 -0
- package/lib/logic/selectors/TagProjectSelectorParser.d.ts +10 -0
- package/lib/logic/selectors/TagProjectSelectorParser.js +1 -0
- package/lib/logic/selectors/VersionPolicyProjectSelectorParser.d.ts +10 -0
- package/lib/logic/selectors/VersionPolicyProjectSelectorParser.js +1 -0
- package/lib/logic/setup/ArtifactoryConfiguration.d.ts +38 -0
- package/lib/logic/setup/ArtifactoryConfiguration.js +1 -0
- package/lib/logic/setup/KeyboardLoop.d.ts +27 -0
- package/lib/logic/setup/KeyboardLoop.js +1 -0
- package/lib/logic/setup/SetupPackageRegistry.d.ts +72 -0
- package/lib/logic/setup/SetupPackageRegistry.js +1 -0
- package/lib/logic/setup/TerminalInput.d.ts +22 -0
- package/lib/logic/setup/TerminalInput.js +1 -0
- package/lib/logic/versionMismatch/VersionMismatchFinder.d.ts +49 -0
- package/lib/logic/versionMismatch/VersionMismatchFinder.js +1 -0
- package/lib/logic/versionMismatch/VersionMismatchFinderCommonVersions.d.ts +16 -0
- package/lib/logic/versionMismatch/VersionMismatchFinderCommonVersions.js +1 -0
- package/lib/logic/versionMismatch/VersionMismatchFinderEntity.d.ts +20 -0
- package/lib/logic/versionMismatch/VersionMismatchFinderEntity.js +1 -0
- package/lib/logic/versionMismatch/VersionMismatchFinderProject.d.ts +16 -0
- package/lib/logic/versionMismatch/VersionMismatchFinderProject.js +1 -0
- package/lib/logic/yarn/YarnOptionsConfiguration.d.ts +37 -0
- package/lib/logic/yarn/YarnOptionsConfiguration.js +1 -0
- package/lib/logic/yarn/YarnShrinkwrapFile.d.ts +55 -0
- package/lib/logic/yarn/YarnShrinkwrapFile.js +1 -0
- package/lib/pluginFramework/IRushPlugin.d.ts +9 -0
- package/lib/pluginFramework/IRushPlugin.js +1 -0
- package/lib/pluginFramework/PhasedCommandHooks.d.ts +93 -0
- package/lib/pluginFramework/PhasedCommandHooks.js +1 -0
- package/lib/pluginFramework/PluginLoader/AutoinstallerPluginLoader.d.ts +27 -0
- package/lib/pluginFramework/PluginLoader/AutoinstallerPluginLoader.js +1 -0
- package/lib/pluginFramework/PluginLoader/BuiltInPluginLoader.d.ts +17 -0
- package/lib/pluginFramework/PluginLoader/BuiltInPluginLoader.js +1 -0
- package/lib/pluginFramework/PluginLoader/PluginLoaderBase.d.ts +47 -0
- package/lib/pluginFramework/PluginLoader/PluginLoaderBase.js +1 -0
- package/lib/pluginFramework/PluginLoader/RushSdk.d.ts +5 -0
- package/lib/pluginFramework/PluginLoader/RushSdk.js +1 -0
- package/lib/pluginFramework/PluginManager.d.ts +47 -0
- package/lib/pluginFramework/PluginManager.js +1 -0
- package/lib/pluginFramework/RushLifeCycle.d.ts +66 -0
- package/lib/pluginFramework/RushLifeCycle.js +1 -0
- package/lib/pluginFramework/RushSession.d.ts +30 -0
- package/lib/pluginFramework/RushSession.js +1 -0
- package/lib/pluginFramework/logging/Logger.d.ts +40 -0
- package/lib/pluginFramework/logging/Logger.js +1 -0
- package/lib/start-pnpm.d.ts +2 -0
- package/lib/start-pnpm.js +1 -0
- package/lib/start.d.ts +2 -0
- package/lib/start.js +1 -0
- package/lib/startx.d.ts +2 -0
- package/lib/startx.js +1 -0
- package/lib/utilities/AsyncRecycler.d.ts +38 -0
- package/lib/utilities/AsyncRecycler.js +1 -0
- package/lib/utilities/CollatedTerminalProvider.d.ts +18 -0
- package/lib/utilities/CollatedTerminalProvider.js +1 -0
- package/lib/utilities/Npm.d.ts +6 -0
- package/lib/utilities/Npm.js +1 -0
- package/lib/utilities/OverlappingPathAnalyzer.d.ts +9 -0
- package/lib/utilities/OverlappingPathAnalyzer.js +1 -0
- package/lib/utilities/PathConstants.d.ts +23 -0
- package/lib/utilities/PathConstants.js +1 -0
- package/lib/utilities/Stopwatch.d.ts +75 -0
- package/lib/utilities/Stopwatch.js +1 -0
- package/lib/utilities/TarExecutable.d.ts +32 -0
- package/lib/utilities/TarExecutable.js +1 -0
- package/lib/utilities/Utilities.d.ts +189 -0
- package/lib/utilities/Utilities.js +1 -0
- package/lib/utilities/WebClient.d.ts +49 -0
- package/lib/utilities/WebClient.js +1 -0
- package/lib/utilities/npmrcUtilities.d.ts +15 -0
- package/lib/utilities/npmrcUtilities.js +1 -0
- package/lib-shim/generate-stubs.d.ts +2 -0
- package/lib-shim/generate-stubs.d.ts.map +1 -0
- package/lib-shim/generate-stubs.js +82 -0
- package/lib-shim/generate-stubs.js.map +1 -0
- package/lib-shim/index.d.ts +5 -0
- package/lib-shim/index.d.ts.map +1 -0
- package/lib-shim/index.js +201 -0
- package/lib-shim/index.js.map +1 -0
- package/package.json +12 -12
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,29 +1,64 @@
|
|
|
1
1
|
## @rushstack/rush-sdk
|
|
2
2
|
|
|
3
|
-
This is a companion package for the Rush tool.
|
|
3
|
+
This is a companion package for the Rush tool. See the [@microsoft/rush](https://www.npmjs.com/package/@microsoft/rush) package for details.
|
|
4
4
|
|
|
5
|
-
⚠
|
|
5
|
+
⚠ **_THIS PACKAGE IS EXPERIMENTAL_** ⚠
|
|
6
6
|
|
|
7
|
-
The **@rushstack/rush-sdk** package acts as a lightweight proxy for accessing the APIs of the **@microsoft/rush-lib** engine.
|
|
7
|
+
The **@rushstack/rush-sdk** package acts as a lightweight proxy for accessing the APIs of the **@microsoft/rush-lib** engine. It is intended to support three different use cases:
|
|
8
8
|
|
|
9
|
-
1. Rush plugins should import from **@rushstack/rush-sdk** instead of **@microsoft/rush-lib**.
|
|
9
|
+
1. Rush plugins should import from **@rushstack/rush-sdk** instead of **@microsoft/rush-lib**. This gives plugins full access to Rush APIs while avoiding a redundant installation of those packages. At runtime, the APIs will be bound to the correct `rushVersion` from **rush.json**, and guaranteed to be the same **@microsoft/rush-lib** module instance as the plugin host.
|
|
10
10
|
|
|
11
|
-
2. When authoring unit tests for a Rush plugin, developers should add **@microsoft/rush-lib** to their **package.json** `devDependencies`.
|
|
12
|
-
|
|
13
|
-
3. For scripts and tools that are designed to be used in a Rush monorepo, in the future **@rushstack/rush-sdk** will automatically invoke **install-run-rush.js** and load the local installation. This ensures that tools load a compatible version of the Rush engine for the given branch. Once this is implemented, **@rushstack/rush-sdk** can replace **@microsoft/rush-lib** entirely as the official API interface, with the latter serving as the underlying implementation.
|
|
11
|
+
2. When authoring unit tests for a Rush plugin, developers should add **@microsoft/rush-lib** to their **package.json** `devDependencies`. In this context, **@rushstack/rush-sdk** will resolve to that instance for testing purposes.
|
|
14
12
|
|
|
13
|
+
3. For scripts and tools that are designed to be used in a Rush monorepo, in the future **@rushstack/rush-sdk** will automatically invoke **install-run-rush.js** and load the local installation. This ensures that tools load a compatible version of the Rush engine for the given branch. Once this is implemented, **@rushstack/rush-sdk** can replace **@microsoft/rush-lib** entirely as the official API interface, with the latter serving as the underlying implementation.
|
|
15
14
|
|
|
16
15
|
The **@rushstack/rush-sdk** API declarations are identical to the corresponding version of **@microsoft/rush-lib**.
|
|
17
16
|
|
|
18
|
-
##
|
|
17
|
+
## Importing internal APIs
|
|
18
|
+
|
|
19
|
+
Backwards compatibility is only guaranteed for the APIs marked as `@public` in the official `rush-lib.d.ts` entry point.
|
|
20
|
+
However, sometimes it is expedient for a script to import internal modules from `@microsoft/rush-lib` to access
|
|
21
|
+
unofficial APIs. This practice faces a technical challenge that `@microsoft/rush-lib` is bundled using Webpack.
|
|
22
|
+
The `@rushstack/rush-sdk` package provides stub files that import the corresponding internal module from the
|
|
23
|
+
Webpack bundle, via the `@rushstack/webpack-deep-imports-plugin` mechanism.
|
|
24
|
+
|
|
25
|
+
> **WARNING:** If the loaded `rush-lib` package has a different version from `rush-sdk`, there is
|
|
26
|
+
> no guarantee that the corresponding path will exist or have the same type signature.
|
|
27
|
+
> Access internal APIs at your own risk. If you find an internal API to be useful, we recommend
|
|
28
|
+
> that you create a GitHub issue proposing to make it public.
|
|
29
|
+
|
|
30
|
+
Example 1: Conventional import of a public API:
|
|
31
|
+
|
|
32
|
+
```ts
|
|
33
|
+
// THIS IS THE RECOMMENDED PRACTICE:
|
|
34
|
+
import { RushConfiguration } from '@rushstack/rush-sdk';
|
|
35
|
+
const config = RushConfiguration.loadFromDefaultLocation();
|
|
36
|
+
console.log(config.commonFolder);
|
|
37
|
+
```
|
|
19
38
|
|
|
20
|
-
|
|
39
|
+
Example 2: How to import an internal API:
|
|
40
|
+
|
|
41
|
+
```ts
|
|
42
|
+
// WARNING: INTERNAL APIS MAY CHANGE AT ANY TIME -- USE THIS AT YOUR OWN RISK:
|
|
43
|
+
|
|
44
|
+
// Important: Since we're calling an internal API, we need to use the unbundled .d.ts files
|
|
45
|
+
// instead of the normal .d.ts rollup
|
|
46
|
+
import { RushConfiguration } from '@rushstack/rush-sdk/lib/';
|
|
47
|
+
const config = RushConfiguration.loadFromDefaultLocation();
|
|
48
|
+
console.log(config.commonFolder);
|
|
49
|
+
|
|
50
|
+
// Load an internal module from the Webpack bundle using a path-based import of a stub file:
|
|
51
|
+
import { GitEmailPolicy } from '@rushstack/rush-sdk/lib/logic/policy/GitEmailPolicy';
|
|
52
|
+
console.log(GitEmailPolicy.getEmailExampleLines(config));
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Debugging
|
|
21
56
|
|
|
57
|
+
Verbose logging can be enabled by setting environment variable `RUSH_SDK_DEBUG=1`.
|
|
22
58
|
|
|
23
59
|
## Links
|
|
24
60
|
|
|
25
|
-
- [CHANGELOG.md](
|
|
26
|
-
https://github.com/microsoft/rushstack/blob/main/apps/rush/CHANGELOG.md) - Find
|
|
61
|
+
- [CHANGELOG.md](https://github.com/microsoft/rushstack/blob/main/apps/rush/CHANGELOG.md) - Find
|
|
27
62
|
out what's new in the latest version
|
|
28
63
|
- [API Reference](https://api.rushstack.io/pages/rush-lib/)
|
|
29
64
|
|
package/dist/rush-lib.d.ts
CHANGED
|
@@ -1095,6 +1095,23 @@ export declare interface IOperationExecutionResult {
|
|
|
1095
1095
|
readonly nonCachedDurationMs: number | undefined;
|
|
1096
1096
|
}
|
|
1097
1097
|
|
|
1098
|
+
/**
|
|
1099
|
+
* @internal
|
|
1100
|
+
*/
|
|
1101
|
+
export declare interface _IOperationMetadata {
|
|
1102
|
+
durationInSeconds: number;
|
|
1103
|
+
logPath: string;
|
|
1104
|
+
errorLogPath: string;
|
|
1105
|
+
}
|
|
1106
|
+
|
|
1107
|
+
/**
|
|
1108
|
+
* @internal
|
|
1109
|
+
*/
|
|
1110
|
+
export declare interface _IOperationMetadataManagerOptions {
|
|
1111
|
+
rushProject: RushConfigurationProject;
|
|
1112
|
+
phase: IPhase;
|
|
1113
|
+
}
|
|
1114
|
+
|
|
1098
1115
|
/**
|
|
1099
1116
|
* Options for constructing a new Operation.
|
|
1100
1117
|
* @alpha
|
|
@@ -1177,11 +1194,11 @@ export declare interface IOperationRunnerContext {
|
|
|
1177
1194
|
*/
|
|
1178
1195
|
stdioSummarizer: StdioSummarizer;
|
|
1179
1196
|
/**
|
|
1180
|
-
* Object used to
|
|
1197
|
+
* Object used to manage metadata of the operation.
|
|
1181
1198
|
*
|
|
1182
1199
|
* @internal
|
|
1183
1200
|
*/
|
|
1184
|
-
|
|
1201
|
+
_operationMetadataManager?: _OperationMetadataManager;
|
|
1185
1202
|
/**
|
|
1186
1203
|
* Object used to track elapsed time.
|
|
1187
1204
|
*/
|
|
@@ -1192,8 +1209,8 @@ export declare interface IOperationRunnerContext {
|
|
|
1192
1209
|
* @internal
|
|
1193
1210
|
*/
|
|
1194
1211
|
export declare interface _IOperationStateFileOptions {
|
|
1195
|
-
|
|
1196
|
-
|
|
1212
|
+
projectFolder: string;
|
|
1213
|
+
metadataFolder: string;
|
|
1197
1214
|
}
|
|
1198
1215
|
|
|
1199
1216
|
/**
|
|
@@ -1962,6 +1979,35 @@ export declare class Operation {
|
|
|
1962
1979
|
deleteDependency(dependency: Operation): void;
|
|
1963
1980
|
}
|
|
1964
1981
|
|
|
1982
|
+
/**
|
|
1983
|
+
* A helper class for managing the meta files of a operation.
|
|
1984
|
+
*
|
|
1985
|
+
* @internal
|
|
1986
|
+
*/
|
|
1987
|
+
export declare class _OperationMetadataManager {
|
|
1988
|
+
readonly stateFile: _OperationStateFile;
|
|
1989
|
+
private _metadataFolder;
|
|
1990
|
+
private _logPath;
|
|
1991
|
+
private _errorLogPath;
|
|
1992
|
+
private _relativeLogPath;
|
|
1993
|
+
private _relativeErrorLogPath;
|
|
1994
|
+
constructor(options: _IOperationMetadataManagerOptions);
|
|
1995
|
+
/**
|
|
1996
|
+
* Returns the relative paths of the metadata files to project folder.
|
|
1997
|
+
*
|
|
1998
|
+
* Example: `.rush/temp/operation/_phase_build/state.json`
|
|
1999
|
+
* Example: `.rush/temp/operation/_phase_build/all.log`
|
|
2000
|
+
* Example: `.rush/temp/operation/_phase_build/error.log`
|
|
2001
|
+
*/
|
|
2002
|
+
get relativeFilepaths(): string[];
|
|
2003
|
+
saveAsync({ durationInSeconds, logPath, errorLogPath }: _IOperationMetadata): Promise<void>;
|
|
2004
|
+
tryRestoreAsync({ terminal, logPath, errorLogPath }: {
|
|
2005
|
+
terminal: ITerminal;
|
|
2006
|
+
logPath: string;
|
|
2007
|
+
errorLogPath: string;
|
|
2008
|
+
}): Promise<void>;
|
|
2009
|
+
}
|
|
2010
|
+
|
|
1965
2011
|
/**
|
|
1966
2012
|
* A helper class for managing the state file of a operation.
|
|
1967
2013
|
*
|
|
@@ -1970,17 +2016,19 @@ export declare class Operation {
|
|
|
1970
2016
|
export declare class _OperationStateFile {
|
|
1971
2017
|
private _state;
|
|
1972
2018
|
/**
|
|
1973
|
-
*
|
|
2019
|
+
* The path of the state json file.
|
|
2020
|
+
*
|
|
2021
|
+
* Example: `/code/repo/my-project/.rush/temp/operation/_phase_build/state.json`
|
|
1974
2022
|
*/
|
|
1975
|
-
readonly
|
|
1976
|
-
constructor(options: _IOperationStateFileOptions);
|
|
1977
|
-
private static _getFilename;
|
|
2023
|
+
readonly filepath: string;
|
|
1978
2024
|
/**
|
|
1979
|
-
*
|
|
2025
|
+
* The relative path of the state json file to project folder
|
|
1980
2026
|
*
|
|
1981
|
-
*
|
|
2027
|
+
* Example: `.rush/temp/operation/_phase_build/state.json`
|
|
1982
2028
|
*/
|
|
1983
|
-
|
|
2029
|
+
readonly relativeFilepath: string;
|
|
2030
|
+
static filename: string;
|
|
2031
|
+
constructor(options: _IOperationStateFileOptions);
|
|
1984
2032
|
get state(): _IOperationStateJson | undefined;
|
|
1985
2033
|
writeAsync(json: _IOperationStateJson): Promise<void>;
|
|
1986
2034
|
tryRestoreAsync(): Promise<_IOperationStateJson | undefined>;
|
|
@@ -2452,6 +2500,7 @@ export declare class RepoStateFile {
|
|
|
2452
2500
|
*/
|
|
2453
2501
|
export declare class Rush {
|
|
2454
2502
|
private static __rushLibPackageJson;
|
|
2503
|
+
private static __rushLibPackageFolder;
|
|
2455
2504
|
/**
|
|
2456
2505
|
* This API is used by the `@microsoft/rush` front end to launch the "rush" command-line.
|
|
2457
2506
|
* Third-party tools should not use this API. Instead, they should execute the "rush" binary
|
|
@@ -2485,6 +2534,8 @@ export declare class Rush {
|
|
|
2485
2534
|
* @internal
|
|
2486
2535
|
*/
|
|
2487
2536
|
static get _rushLibPackageJson(): IPackageJson;
|
|
2537
|
+
static get _rushLibPackageFolder(): string;
|
|
2538
|
+
private static _ensureOwnPackageJsonIsLoaded;
|
|
2488
2539
|
/**
|
|
2489
2540
|
* Assign the `RUSH_INVOKED_FOLDER` environment variable during startup. This is only applied when
|
|
2490
2541
|
* Rush is invoked via the CLI, not via the `@microsoft/rush-lib` automation API.
|
|
@@ -3393,6 +3444,21 @@ export declare class _RushGlobalFolder {
|
|
|
3393
3444
|
constructor();
|
|
3394
3445
|
}
|
|
3395
3446
|
|
|
3447
|
+
/**
|
|
3448
|
+
* Used by rush-sdk to access internals of rush-lib.
|
|
3449
|
+
* @internal
|
|
3450
|
+
*/
|
|
3451
|
+
export declare class _RushInternals {
|
|
3452
|
+
/**
|
|
3453
|
+
* Used by rush-sdk to load an internal API specified by its module path.
|
|
3454
|
+
*
|
|
3455
|
+
* @param srcImportPath - The module path to load. For example, to refer to `src/api/ChangeFile.ts`,
|
|
3456
|
+
* the `srcImportPath` would be `"api/ChangeFile"`.
|
|
3457
|
+
* @returns the module object as would be returned by `require()`
|
|
3458
|
+
*/
|
|
3459
|
+
static loadModule(srcImportPath: string): unknown;
|
|
3460
|
+
}
|
|
3461
|
+
|
|
3396
3462
|
/**
|
|
3397
3463
|
* Hooks into the lifecycle of the Rush process invocation that plugins may tap into.
|
|
3398
3464
|
*
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Part of IApprovedPackagesJson.
|
|
3
|
+
*/
|
|
4
|
+
export interface IApprovedPackagesItemJson {
|
|
5
|
+
name: string;
|
|
6
|
+
allowedCategories: string[];
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* This represents the JSON data structure for the "browser-approved-packages.json"
|
|
10
|
+
* and "nonbrowser-approved-packages.json" configuration files. See "approved-packages.schema.json"
|
|
11
|
+
* for documentation.
|
|
12
|
+
*/
|
|
13
|
+
export interface IApprovedPackagesJson {
|
|
14
|
+
$schema?: string;
|
|
15
|
+
packages: IApprovedPackagesItemJson[];
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* An item returned by ApprovedPackagesConfiguration
|
|
19
|
+
* @public
|
|
20
|
+
*/
|
|
21
|
+
export declare class ApprovedPackagesItem {
|
|
22
|
+
/**
|
|
23
|
+
* The NPM package name
|
|
24
|
+
*/
|
|
25
|
+
packageName: string;
|
|
26
|
+
/**
|
|
27
|
+
* The project categories that are allowed to use this package.
|
|
28
|
+
*/
|
|
29
|
+
allowedCategories: Set<string>;
|
|
30
|
+
/**
|
|
31
|
+
* @internal
|
|
32
|
+
*/
|
|
33
|
+
constructor(packageName: string);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* This represents the JSON file specified via the "approvedPackagesFile" option in rush.json.
|
|
37
|
+
* @public
|
|
38
|
+
*/
|
|
39
|
+
export declare class ApprovedPackagesConfiguration {
|
|
40
|
+
private static _jsonSchema;
|
|
41
|
+
items: ApprovedPackagesItem[];
|
|
42
|
+
private _itemsByName;
|
|
43
|
+
private _loadedJson;
|
|
44
|
+
private _jsonFilename;
|
|
45
|
+
constructor(jsonFilename: string);
|
|
46
|
+
/**
|
|
47
|
+
* Clears all the settings, returning to an empty state.
|
|
48
|
+
*/
|
|
49
|
+
clear(): void;
|
|
50
|
+
getItemByName(packageName: string): ApprovedPackagesItem | undefined;
|
|
51
|
+
addOrUpdatePackage(packageName: string, reviewCategory: string): boolean;
|
|
52
|
+
/**
|
|
53
|
+
* If the file exists, calls loadFromFile().
|
|
54
|
+
*/
|
|
55
|
+
tryLoadFromFile(approvedPackagesPolicyEnabled: boolean): boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Loads the configuration data from the filename that was passed to the constructor.
|
|
58
|
+
*/
|
|
59
|
+
loadFromFile(): void;
|
|
60
|
+
/**
|
|
61
|
+
* Loads the configuration data to the filename that was passed to the constructor.
|
|
62
|
+
*/
|
|
63
|
+
saveToFile(): void;
|
|
64
|
+
/**
|
|
65
|
+
* Helper function only used by the constructor when loading the file.
|
|
66
|
+
*/
|
|
67
|
+
private _addItemJson;
|
|
68
|
+
/**
|
|
69
|
+
* Helper function that adds an already created ApprovedPackagesItem to the
|
|
70
|
+
* list and set.
|
|
71
|
+
*/
|
|
72
|
+
private _addItem;
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=ApprovedPackagesConfiguration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/ApprovedPackagesConfiguration");
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { ApprovedPackagesConfiguration } from './ApprovedPackagesConfiguration';
|
|
2
|
+
import { RushConfiguration, IRushConfigurationJson } from './RushConfiguration';
|
|
3
|
+
/**
|
|
4
|
+
* This is a helper object for RushConfiguration.
|
|
5
|
+
* It exposes the "approvedPackagesPolicy" feature from rush.json.
|
|
6
|
+
* @public
|
|
7
|
+
*/
|
|
8
|
+
export declare class ApprovedPackagesPolicy {
|
|
9
|
+
/**
|
|
10
|
+
* Whether the feature is enabled. The feature is enabled if the "approvedPackagesPolicy"
|
|
11
|
+
* field is assigned in rush.json.
|
|
12
|
+
*/
|
|
13
|
+
readonly enabled: boolean;
|
|
14
|
+
/**
|
|
15
|
+
* A list of NPM package scopes that will be excluded from review (e.g. `@types`)
|
|
16
|
+
*/
|
|
17
|
+
readonly ignoredNpmScopes: ReadonlySet<string>;
|
|
18
|
+
/**
|
|
19
|
+
* A list of category names that are valid for usage as the RushConfigurationProject.reviewCategory field.
|
|
20
|
+
* This array will never be undefined.
|
|
21
|
+
*/
|
|
22
|
+
readonly reviewCategories: ReadonlySet<string>;
|
|
23
|
+
/**
|
|
24
|
+
* Packages approved for usage in a web browser. This is the stricter of the two types, so by default
|
|
25
|
+
* all new packages are added to this file.
|
|
26
|
+
*
|
|
27
|
+
* @remarks
|
|
28
|
+
*
|
|
29
|
+
* This is part of an optional approval workflow, whose purpose is to review any new dependencies
|
|
30
|
+
* that are introduced (e.g. maybe a legal review is required, or maybe we are trying to minimize bloat).
|
|
31
|
+
* When Rush discovers a new dependency has been added to package.json, it will update the file.
|
|
32
|
+
* The intent is that the file will be stored in Git and tracked by a branch policy that notifies
|
|
33
|
+
* reviewers when a PR attempts to modify the file.
|
|
34
|
+
*
|
|
35
|
+
* Example filename: `C:\MyRepo\common\config\rush\browser-approved-packages.json`
|
|
36
|
+
*/
|
|
37
|
+
readonly browserApprovedPackages: ApprovedPackagesConfiguration;
|
|
38
|
+
/**
|
|
39
|
+
* Packages approved for usage everywhere *except* in a web browser.
|
|
40
|
+
*
|
|
41
|
+
* @remarks
|
|
42
|
+
*
|
|
43
|
+
* This is part of an optional approval workflow, whose purpose is to review any new dependencies
|
|
44
|
+
* that are introduced (e.g. maybe a legal review is required, or maybe we are trying to minimize bloat).
|
|
45
|
+
* The intent is that the file will be stored in Git and tracked by a branch policy that notifies
|
|
46
|
+
* reviewers when a PR attempts to modify the file.
|
|
47
|
+
*
|
|
48
|
+
* Example filename: `C:\MyRepo\common\config\rush\browser-approved-packages.json`
|
|
49
|
+
*/
|
|
50
|
+
readonly nonbrowserApprovedPackages: ApprovedPackagesConfiguration;
|
|
51
|
+
/** @internal */
|
|
52
|
+
constructor(rushConfiguration: RushConfiguration, rushConfigurationJson: IRushConfigurationJson);
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=ApprovedPackagesPolicy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/ApprovedPackagesPolicy");
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { JsonObject, ITerminal } from '@rushstack/node-core-library';
|
|
2
|
+
import { RushConfiguration } from './RushConfiguration';
|
|
3
|
+
import { FileSystemBuildCacheProvider } from '../logic/buildCache/FileSystemBuildCacheProvider';
|
|
4
|
+
import { ICloudBuildCacheProvider } from '../logic/buildCache/ICloudBuildCacheProvider';
|
|
5
|
+
import { GetCacheEntryIdFunction } from '../logic/buildCache/CacheEntryId';
|
|
6
|
+
import type { RushSession } from '../pluginFramework/RushSession';
|
|
7
|
+
/**
|
|
8
|
+
* Describes the file structure for the "common/config/rush/build-cache.json" config file.
|
|
9
|
+
*/
|
|
10
|
+
export interface IBaseBuildCacheJson {
|
|
11
|
+
buildCacheEnabled: boolean;
|
|
12
|
+
cacheProvider: string;
|
|
13
|
+
cacheEntryNamePattern?: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* @public
|
|
17
|
+
*/
|
|
18
|
+
export interface ILocalBuildCacheJson extends IBaseBuildCacheJson {
|
|
19
|
+
readonly cacheProvider: 'local-only';
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* @beta
|
|
23
|
+
*/
|
|
24
|
+
export interface ICloudBuildCacheJson extends IBaseBuildCacheJson {
|
|
25
|
+
readonly cacheProvider: string;
|
|
26
|
+
[otherConfigKey: string]: JsonObject;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* @beta
|
|
30
|
+
*/
|
|
31
|
+
export declare type IBuildCacheJson = ICloudBuildCacheJson | ILocalBuildCacheJson;
|
|
32
|
+
/**
|
|
33
|
+
* Use this class to load and save the "common/config/rush/build-cache.json" config file.
|
|
34
|
+
* This file provides configuration options for cached project build output.
|
|
35
|
+
* @beta
|
|
36
|
+
*/
|
|
37
|
+
export declare class BuildCacheConfiguration {
|
|
38
|
+
private static _jsonSchema;
|
|
39
|
+
/**
|
|
40
|
+
* Indicates whether the build cache feature is enabled.
|
|
41
|
+
* Typically it is enabled in the build-cache.json config file.
|
|
42
|
+
*/
|
|
43
|
+
readonly buildCacheEnabled: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Indicates whether or not writing to the cache is enabled.
|
|
46
|
+
*/
|
|
47
|
+
cacheWriteEnabled: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Method to calculate the cache entry id for a project, phase, and project state.
|
|
50
|
+
*/
|
|
51
|
+
readonly getCacheEntryId: GetCacheEntryIdFunction;
|
|
52
|
+
/**
|
|
53
|
+
* The provider for interacting with the local build cache.
|
|
54
|
+
*/
|
|
55
|
+
readonly localCacheProvider: FileSystemBuildCacheProvider;
|
|
56
|
+
/**
|
|
57
|
+
* The provider for interacting with the cloud build cache, if configured.
|
|
58
|
+
*/
|
|
59
|
+
readonly cloudCacheProvider: ICloudBuildCacheProvider | undefined;
|
|
60
|
+
private constructor();
|
|
61
|
+
/**
|
|
62
|
+
* Attempts to load the build-cache.json data from the standard file path `common/config/rush/build-cache.json`.
|
|
63
|
+
* If the file has not been created yet, then undefined is returned.
|
|
64
|
+
*/
|
|
65
|
+
static tryLoadAsync(terminal: ITerminal, rushConfiguration: RushConfiguration, rushSession: RushSession): Promise<BuildCacheConfiguration | undefined>;
|
|
66
|
+
/**
|
|
67
|
+
* Loads the build-cache.json data from the standard file path `common/config/rush/build-cache.json`.
|
|
68
|
+
* If the file has not been created yet, or if the feature is not enabled, then an error is reported.
|
|
69
|
+
*/
|
|
70
|
+
static loadAndRequireEnabledAsync(terminal: ITerminal, rushConfiguration: RushConfiguration, rushSession: RushSession): Promise<BuildCacheConfiguration>;
|
|
71
|
+
/**
|
|
72
|
+
* Gets the absolute path to the build-cache.json file in the specified rush workspace.
|
|
73
|
+
*/
|
|
74
|
+
static getBuildCacheConfigFilePath(rushConfiguration: RushConfiguration): string;
|
|
75
|
+
private static _loadAsync;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=BuildCacheConfiguration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/BuildCacheConfiguration");
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { RushConfiguration } from './RushConfiguration';
|
|
2
|
+
import { IChangeFile, IChangeInfo } from './ChangeManagement';
|
|
3
|
+
/**
|
|
4
|
+
* This class represents a single change file.
|
|
5
|
+
*/
|
|
6
|
+
export declare class ChangeFile {
|
|
7
|
+
private _changeFileData;
|
|
8
|
+
private _rushConfiguration;
|
|
9
|
+
/**
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
constructor(changeFileData: IChangeFile, rushConfiguration: RushConfiguration);
|
|
13
|
+
/**
|
|
14
|
+
* Adds a change entry into the change file
|
|
15
|
+
* @param data - change information
|
|
16
|
+
*/
|
|
17
|
+
addChange(data: IChangeInfo): void;
|
|
18
|
+
/**
|
|
19
|
+
* Gets all the change entries about the specified package from the change file.
|
|
20
|
+
* @param packageName - package name
|
|
21
|
+
*/
|
|
22
|
+
getChanges(packageName: string): IChangeInfo[];
|
|
23
|
+
/**
|
|
24
|
+
* Writes the change file to disk in sync mode.
|
|
25
|
+
* Returns the file path.
|
|
26
|
+
* @returns the path to the file that was written (based on generatePath())
|
|
27
|
+
*/
|
|
28
|
+
writeSync(): string;
|
|
29
|
+
/**
|
|
30
|
+
* Generates a file path for storing the change file to disk.
|
|
31
|
+
* Note that this value may change if called twice in a row,
|
|
32
|
+
* as it is partially based on the current date/time.
|
|
33
|
+
*/
|
|
34
|
+
generatePath(): string;
|
|
35
|
+
/**
|
|
36
|
+
* Gets the current time, formatted as YYYY-MM-DD-HH-MM
|
|
37
|
+
* Optionally will include seconds
|
|
38
|
+
*/
|
|
39
|
+
private _getTimestamp;
|
|
40
|
+
private _escapeFilename;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=ChangeFile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/ChangeFile");
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Representation for a changes file
|
|
3
|
+
*/
|
|
4
|
+
export interface IChangeFile {
|
|
5
|
+
changes: IChangeInfo[];
|
|
6
|
+
packageName: string;
|
|
7
|
+
email: string | undefined;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Represents all of the types of change requests.
|
|
11
|
+
*/
|
|
12
|
+
export declare enum ChangeType {
|
|
13
|
+
none = 0,
|
|
14
|
+
dependency = 1,
|
|
15
|
+
hotfix = 2,
|
|
16
|
+
patch = 3,
|
|
17
|
+
minor = 4,
|
|
18
|
+
major = 5
|
|
19
|
+
}
|
|
20
|
+
export interface IVersionPolicyChangeInfo {
|
|
21
|
+
/**
|
|
22
|
+
* Defines the type of change.
|
|
23
|
+
*/
|
|
24
|
+
changeType: ChangeType;
|
|
25
|
+
/**
|
|
26
|
+
* The new version for the version policy, as calculated by the findChangeRequests function.
|
|
27
|
+
*/
|
|
28
|
+
newVersion: string;
|
|
29
|
+
/**
|
|
30
|
+
* The name of the version policy.
|
|
31
|
+
*/
|
|
32
|
+
versionPolicyName: string;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Defines an IChangeInfo object.
|
|
36
|
+
*/
|
|
37
|
+
export interface IChangeInfo {
|
|
38
|
+
/**
|
|
39
|
+
* Defines the type of change. This is not expected to exist within the JSON file definition as we
|
|
40
|
+
* parse it from the "type" property.
|
|
41
|
+
*/
|
|
42
|
+
changeType?: ChangeType;
|
|
43
|
+
/**
|
|
44
|
+
* Defines the array of related changes for the given package. This is used to iterate over comments
|
|
45
|
+
* requested by the change requests.
|
|
46
|
+
*/
|
|
47
|
+
changes?: IChangeInfo[];
|
|
48
|
+
/**
|
|
49
|
+
* A user provided comment for the change.
|
|
50
|
+
*/
|
|
51
|
+
comment?: string;
|
|
52
|
+
/**
|
|
53
|
+
* An optional dictionary of custom string fields.
|
|
54
|
+
*/
|
|
55
|
+
customFields?: Record<string, string>;
|
|
56
|
+
/**
|
|
57
|
+
* The email of the user who provided the comment. Pulled from the Git log.
|
|
58
|
+
*/
|
|
59
|
+
author?: string;
|
|
60
|
+
/**
|
|
61
|
+
* The commit hash for the change.
|
|
62
|
+
*/
|
|
63
|
+
commit?: string;
|
|
64
|
+
/**
|
|
65
|
+
* The new downstream range dependency, as calculated by the findChangeRequests function.
|
|
66
|
+
*/
|
|
67
|
+
newRangeDependency?: string;
|
|
68
|
+
/**
|
|
69
|
+
* The new version for the package, as calculated by the findChangeRequests function.
|
|
70
|
+
*/
|
|
71
|
+
newVersion?: string;
|
|
72
|
+
/**
|
|
73
|
+
* The order in which the change request should be published.
|
|
74
|
+
*/
|
|
75
|
+
order?: number;
|
|
76
|
+
/**
|
|
77
|
+
* The name of the package.
|
|
78
|
+
*/
|
|
79
|
+
packageName: string;
|
|
80
|
+
/**
|
|
81
|
+
* The type of the package publishing request (patch/minor/major), as provided by the JSON file.
|
|
82
|
+
*/
|
|
83
|
+
type?: string;
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=ChangeManagement.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/ChangeManagement");
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { RushConfiguration } from './RushConfiguration';
|
|
2
|
+
/**
|
|
3
|
+
* A class that helps with programmatically interacting with Rush's change files.
|
|
4
|
+
* @public
|
|
5
|
+
*/
|
|
6
|
+
export declare class ChangeManager {
|
|
7
|
+
/**
|
|
8
|
+
* Creates a change file that has a 'none' type.
|
|
9
|
+
* @param rushConfiguration - The rush configuration we are working with
|
|
10
|
+
* @param projectName - The name of the project for which to create a change file
|
|
11
|
+
* @param emailAddress - The email address which should be associated with this change
|
|
12
|
+
* @returns the path to the file that was created, or undefined if no file was written
|
|
13
|
+
*/
|
|
14
|
+
static createEmptyChangeFiles(rushConfiguration: RushConfiguration, projectName: string, emailAddress: string): string | undefined;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=ChangeManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/ChangeManager");
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interface representing a changelog json object for a package used to represent the parsed
|
|
3
|
+
* content of CHANGELOG.json
|
|
4
|
+
*/
|
|
5
|
+
export interface IChangelog {
|
|
6
|
+
/**
|
|
7
|
+
* Name of the project
|
|
8
|
+
*/
|
|
9
|
+
name: string;
|
|
10
|
+
/**
|
|
11
|
+
* Entries within the changelog corresponding to each published version.
|
|
12
|
+
*/
|
|
13
|
+
entries: IChangeLogEntry[];
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Interface representing a single published entry in the changelog.
|
|
17
|
+
*/
|
|
18
|
+
export interface IChangeLogEntryComments {
|
|
19
|
+
/** Describes changes which cause a patch-level SemVer bump */
|
|
20
|
+
patch?: IChangeLogComment[];
|
|
21
|
+
/** Describes changes which cause a minor-level SemVer bump */
|
|
22
|
+
minor?: IChangeLogComment[];
|
|
23
|
+
/** Describes changes which cause a major-level SemVer bump */
|
|
24
|
+
major?: IChangeLogComment[];
|
|
25
|
+
/** Describes changes to the package's dependencies */
|
|
26
|
+
dependency?: IChangeLogComment[];
|
|
27
|
+
/** Describe changes that do not have version information */
|
|
28
|
+
none?: IChangeLogComment[];
|
|
29
|
+
/** Describe changes that do not have version information */
|
|
30
|
+
hotfix?: IChangeLogComment[];
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Interface representing a single published entry in the changelog.
|
|
34
|
+
*/
|
|
35
|
+
export interface IChangeLogEntry {
|
|
36
|
+
/**
|
|
37
|
+
* Published version for the entry. (Example: 1.0.0)
|
|
38
|
+
*/
|
|
39
|
+
version: string;
|
|
40
|
+
/**
|
|
41
|
+
* Git tag used to identify the published commit. (Example: b7f55611e54910327a206476b185265498c66acf)
|
|
42
|
+
*/
|
|
43
|
+
tag: string;
|
|
44
|
+
/**
|
|
45
|
+
* The UTC date when the publish was applied. (Example: Fri, 02 Dec 2016 22:27:16 GMT)
|
|
46
|
+
*/
|
|
47
|
+
date: string | undefined;
|
|
48
|
+
/**
|
|
49
|
+
* Comments for the entry, where key represents the ChangeType string (Example: major)
|
|
50
|
+
*/
|
|
51
|
+
comments: IChangeLogEntryComments;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Interface representing a single changelog comment within an entry.
|
|
55
|
+
*/
|
|
56
|
+
export interface IChangeLogComment {
|
|
57
|
+
/**
|
|
58
|
+
* The given comment. (supports markdown.)
|
|
59
|
+
*/
|
|
60
|
+
comment: string;
|
|
61
|
+
/**
|
|
62
|
+
* The author, if applicable, that created the change request.
|
|
63
|
+
*/
|
|
64
|
+
author?: string;
|
|
65
|
+
/**
|
|
66
|
+
* The commit, if applicable, including the change request.
|
|
67
|
+
*/
|
|
68
|
+
commit?: string;
|
|
69
|
+
/**
|
|
70
|
+
* An optional dictionary of custom string fields.
|
|
71
|
+
*/
|
|
72
|
+
customFields?: Record<string, string>;
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=Changelog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/Changelog");
|