@rushstack/rush-sdk 5.91.0 → 5.92.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 +18 -0
- 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 +4 -4
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js.map +0 -1
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { IPackageJson, ITerminalProvider } from '@rushstack/node-core-library';
|
|
2
|
+
import { IBuiltInPluginConfiguration } from '../pluginFramework/PluginLoader/BuiltInPluginLoader';
|
|
3
|
+
/**
|
|
4
|
+
* Options to pass to the rush "launch" functions.
|
|
5
|
+
*
|
|
6
|
+
* @public
|
|
7
|
+
*/
|
|
8
|
+
export interface ILaunchOptions {
|
|
9
|
+
/**
|
|
10
|
+
* True if the tool was invoked from within a project with a rush.json file, otherwise false. We
|
|
11
|
+
* consider a project without a rush.json to be "unmanaged" and we'll print that to the command line when
|
|
12
|
+
* the tool is executed. This is mainly used for debugging purposes.
|
|
13
|
+
*/
|
|
14
|
+
isManaged: boolean;
|
|
15
|
+
/**
|
|
16
|
+
* If true, the wrapper process already printed a warning that the version of Node.js hasn't been tested
|
|
17
|
+
* with this version of Rush, so we shouldn't print a similar error.
|
|
18
|
+
*/
|
|
19
|
+
alreadyReportedNodeTooNewError?: boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Used to specify Rush plugins that are dependencies of the "\@microsoft/rush" package.
|
|
22
|
+
*
|
|
23
|
+
* @internal
|
|
24
|
+
*/
|
|
25
|
+
builtInPluginConfigurations?: IBuiltInPluginConfiguration[];
|
|
26
|
+
/**
|
|
27
|
+
* Used to specify terminal how to write a message
|
|
28
|
+
*/
|
|
29
|
+
terminalProvider?: ITerminalProvider;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* General operations for the Rush engine.
|
|
33
|
+
*
|
|
34
|
+
* @public
|
|
35
|
+
*/
|
|
36
|
+
export declare class Rush {
|
|
37
|
+
private static __rushLibPackageJson;
|
|
38
|
+
private static __rushLibPackageFolder;
|
|
39
|
+
/**
|
|
40
|
+
* This API is used by the `@microsoft/rush` front end to launch the "rush" command-line.
|
|
41
|
+
* Third-party tools should not use this API. Instead, they should execute the "rush" binary
|
|
42
|
+
* and start a new Node.js process.
|
|
43
|
+
*
|
|
44
|
+
* @remarks
|
|
45
|
+
* Earlier versions of the rush frontend used a different API contract. In the old contract,
|
|
46
|
+
* the second argument was the `isManaged` value of the {@link ILaunchOptions} object.
|
|
47
|
+
*
|
|
48
|
+
* Even though this API isn't documented, it is still supported for legacy compatibility.
|
|
49
|
+
*/
|
|
50
|
+
static launch(launcherVersion: string, arg: ILaunchOptions): void;
|
|
51
|
+
/**
|
|
52
|
+
* This API is used by the `@microsoft/rush` front end to launch the "rushx" command-line.
|
|
53
|
+
* Third-party tools should not use this API. Instead, they should execute the "rushx" binary
|
|
54
|
+
* and start a new Node.js process.
|
|
55
|
+
*/
|
|
56
|
+
static launchRushX(launcherVersion: string, options: ILaunchOptions): void;
|
|
57
|
+
/**
|
|
58
|
+
* This API is used by the `@microsoft/rush` front end to launch the "rush-pnpm" command-line.
|
|
59
|
+
* Third-party tools should not use this API. Instead, they should execute the "rush-pnpm" binary
|
|
60
|
+
* and start a new Node.js process.
|
|
61
|
+
*/
|
|
62
|
+
static launchRushPnpm(launcherVersion: string, options: ILaunchOptions): void;
|
|
63
|
+
/**
|
|
64
|
+
* The currently executing version of the "rush-lib" library.
|
|
65
|
+
* This is the same as the Rush tool version for that release.
|
|
66
|
+
*/
|
|
67
|
+
static get version(): string;
|
|
68
|
+
/**
|
|
69
|
+
* @internal
|
|
70
|
+
*/
|
|
71
|
+
static get _rushLibPackageJson(): IPackageJson;
|
|
72
|
+
static get _rushLibPackageFolder(): string;
|
|
73
|
+
private static _ensureOwnPackageJsonIsLoaded;
|
|
74
|
+
/**
|
|
75
|
+
* Assign the `RUSH_INVOKED_FOLDER` environment variable during startup. This is only applied when
|
|
76
|
+
* Rush is invoked via the CLI, not via the `@microsoft/rush-lib` automation API.
|
|
77
|
+
*
|
|
78
|
+
* @remarks
|
|
79
|
+
* Modifying the parent process's environment is not a good design. The better design is (1) to consolidate
|
|
80
|
+
* Rush's code paths that invoke scripts, and (2) to pass down the invoked folder with each code path,
|
|
81
|
+
* so that it can finally be applied in a centralized helper like `Utilities._createEnvironmentForRushCommand()`.
|
|
82
|
+
* The natural time to do that refactoring is when we rework `Utilities.executeCommand()` to use
|
|
83
|
+
* `Executable.spawn()` or rushell.
|
|
84
|
+
*/
|
|
85
|
+
private static _assignRushInvokedFolder;
|
|
86
|
+
/**
|
|
87
|
+
* This function normalizes legacy options to the current {@link ILaunchOptions} object.
|
|
88
|
+
*/
|
|
89
|
+
private static _normalizeLaunchOptions;
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=Rush.d.ts.map
|
package/lib/api/Rush.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/Rush");
|
|
@@ -0,0 +1,595 @@
|
|
|
1
|
+
import { JsonNull, PackageNameParser } from '@rushstack/node-core-library';
|
|
2
|
+
import { RushConfigurationProject, IRushConfigurationProjectJson } from './RushConfigurationProject';
|
|
3
|
+
import { ApprovedPackagesPolicy } from './ApprovedPackagesPolicy';
|
|
4
|
+
import { EventHooks } from './EventHooks';
|
|
5
|
+
import { VersionPolicyConfiguration } from './VersionPolicyConfiguration';
|
|
6
|
+
import { CommonVersionsConfiguration } from './CommonVersionsConfiguration';
|
|
7
|
+
import { PackageManagerName, PackageManager } from './packageManager/PackageManager';
|
|
8
|
+
import { ExperimentsConfiguration } from './ExperimentsConfiguration';
|
|
9
|
+
import { RepoStateFile } from '../logic/RepoStateFile';
|
|
10
|
+
import { LookupByPath } from '../logic/LookupByPath';
|
|
11
|
+
import { RushPluginsConfiguration } from './RushPluginsConfiguration';
|
|
12
|
+
import { IPnpmOptionsJson, PnpmOptionsConfiguration } from '../logic/pnpm/PnpmOptionsConfiguration';
|
|
13
|
+
import { INpmOptionsJson, NpmOptionsConfiguration } from '../logic/npm/NpmOptionsConfiguration';
|
|
14
|
+
import { IYarnOptionsJson, YarnOptionsConfiguration } from '../logic/yarn/YarnOptionsConfiguration';
|
|
15
|
+
import { PackageManagerOptionsConfigurationBase } from '../logic/base/BasePackageManagerOptionsConfiguration';
|
|
16
|
+
/**
|
|
17
|
+
* Part of IRushConfigurationJson.
|
|
18
|
+
*/
|
|
19
|
+
export interface IApprovedPackagesPolicyJson {
|
|
20
|
+
reviewCategories?: string[];
|
|
21
|
+
ignoredNpmScopes?: string[];
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Part of IRushConfigurationJson.
|
|
25
|
+
*/
|
|
26
|
+
export interface IRushGitPolicyJson {
|
|
27
|
+
allowedEmailRegExps?: string[];
|
|
28
|
+
sampleEmail?: string;
|
|
29
|
+
versionBumpCommitMessage?: string;
|
|
30
|
+
changeLogUpdateCommitMessage?: string;
|
|
31
|
+
changefilesCommitMessage?: string;
|
|
32
|
+
tagSeparator?: string;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Part of IRushConfigurationJson.
|
|
36
|
+
* @beta
|
|
37
|
+
*/
|
|
38
|
+
export interface IEventHooksJson {
|
|
39
|
+
/**
|
|
40
|
+
* The list of scripts to run after every Rush build command finishes
|
|
41
|
+
*/
|
|
42
|
+
postRushBuild?: string[];
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Part of IRushConfigurationJson.
|
|
46
|
+
*/
|
|
47
|
+
export interface IRushRepositoryJsonBase {
|
|
48
|
+
/**
|
|
49
|
+
* The default branch name. This tells "rush change" which remote branch to compare against.
|
|
50
|
+
*/
|
|
51
|
+
defaultBranch?: string;
|
|
52
|
+
/**
|
|
53
|
+
* The default remote. This tells "rush change" which remote to compare against if the remote URL is not set
|
|
54
|
+
* or if a remote matching the provided remote URL is not found.
|
|
55
|
+
*/
|
|
56
|
+
defaultRemote?: string;
|
|
57
|
+
}
|
|
58
|
+
export interface IRushRepositoryJsonSingleUrl extends IRushRepositoryJsonBase {
|
|
59
|
+
/**
|
|
60
|
+
* The remote url of the repository. If a value is provided,
|
|
61
|
+
* \"rush change\" will use it to find the right remote to compare against.
|
|
62
|
+
*
|
|
63
|
+
* @deprecated Use "urls" instead.
|
|
64
|
+
*/
|
|
65
|
+
url?: string;
|
|
66
|
+
}
|
|
67
|
+
export interface IRushRepositoryJsonMultipleUrls extends IRushRepositoryJsonBase {
|
|
68
|
+
/**
|
|
69
|
+
* Remote url(s) of the repository. If a value is provided, \"rush change\" will
|
|
70
|
+
* use one of these to find the right remote to compare against. Specifying multiple URLs
|
|
71
|
+
* is useful if a GitHub repository is renamed or for `<projectName>.visualstudio.com` versus
|
|
72
|
+
* `dev.azure.com/<projectName>` URLs.
|
|
73
|
+
*/
|
|
74
|
+
urls?: string[];
|
|
75
|
+
}
|
|
76
|
+
export declare type IRushRepositoryJson = IRushRepositoryJsonSingleUrl | IRushRepositoryJsonMultipleUrls;
|
|
77
|
+
/**
|
|
78
|
+
* Options defining an allowed variant as part of IRushConfigurationJson.
|
|
79
|
+
*/
|
|
80
|
+
export interface IRushVariantOptionsJson {
|
|
81
|
+
variantName: string;
|
|
82
|
+
description: string;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* This represents the JSON data structure for the "rush.json" configuration file.
|
|
86
|
+
* See rush.schema.json for documentation.
|
|
87
|
+
*/
|
|
88
|
+
export interface IRushConfigurationJson {
|
|
89
|
+
$schema: string;
|
|
90
|
+
npmVersion?: string;
|
|
91
|
+
pnpmVersion?: string;
|
|
92
|
+
yarnVersion?: string;
|
|
93
|
+
rushVersion: string;
|
|
94
|
+
repository?: IRushRepositoryJson;
|
|
95
|
+
nodeSupportedVersionRange?: string;
|
|
96
|
+
nodeSupportedVersionInstructions?: string;
|
|
97
|
+
suppressNodeLtsWarning?: boolean;
|
|
98
|
+
projectFolderMinDepth?: number;
|
|
99
|
+
projectFolderMaxDepth?: number;
|
|
100
|
+
allowMostlyStandardPackageNames?: boolean;
|
|
101
|
+
approvedPackagesPolicy?: IApprovedPackagesPolicyJson;
|
|
102
|
+
gitPolicy?: IRushGitPolicyJson;
|
|
103
|
+
telemetryEnabled?: boolean;
|
|
104
|
+
allowedProjectTags?: string[];
|
|
105
|
+
projects: IRushConfigurationProjectJson[];
|
|
106
|
+
eventHooks?: IEventHooksJson;
|
|
107
|
+
hotfixChangeEnabled?: boolean;
|
|
108
|
+
npmOptions?: INpmOptionsJson;
|
|
109
|
+
pnpmOptions?: IPnpmOptionsJson;
|
|
110
|
+
yarnOptions?: IYarnOptionsJson;
|
|
111
|
+
ensureConsistentVersions?: boolean;
|
|
112
|
+
variants?: IRushVariantOptionsJson[];
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* This represents the JSON data structure for the "current-variant.json" data file.
|
|
116
|
+
*/
|
|
117
|
+
export interface ICurrentVariantJson {
|
|
118
|
+
variant: string | JsonNull;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Options for `RushConfiguration.tryFindRushJsonLocation`.
|
|
122
|
+
* @public
|
|
123
|
+
*/
|
|
124
|
+
export interface ITryFindRushJsonLocationOptions {
|
|
125
|
+
/**
|
|
126
|
+
* Whether to show verbose console messages. Defaults to false.
|
|
127
|
+
*/
|
|
128
|
+
showVerbose?: boolean;
|
|
129
|
+
/**
|
|
130
|
+
* The folder path where the search will start. Defaults tot he current working directory.
|
|
131
|
+
*/
|
|
132
|
+
startingFolder?: string;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* This represents the Rush configuration for a repository, based on the "rush.json"
|
|
136
|
+
* configuration file.
|
|
137
|
+
* @public
|
|
138
|
+
*/
|
|
139
|
+
export declare class RushConfiguration {
|
|
140
|
+
private static _jsonSchema;
|
|
141
|
+
private _variants;
|
|
142
|
+
private readonly _pathTrees;
|
|
143
|
+
private _projects;
|
|
144
|
+
private _projectsByName;
|
|
145
|
+
private _projectsByTag;
|
|
146
|
+
private _commonVersionsConfigurationsByVariant;
|
|
147
|
+
/**
|
|
148
|
+
* The name of the package manager being used to install dependencies
|
|
149
|
+
*/
|
|
150
|
+
readonly packageManager: PackageManagerName;
|
|
151
|
+
/**
|
|
152
|
+
* {@inheritdoc PackageManager}
|
|
153
|
+
*
|
|
154
|
+
* @privateremarks
|
|
155
|
+
* In the next major breaking API change, we will rename this property to "packageManager" and eliminate the
|
|
156
|
+
* old property with that name.
|
|
157
|
+
*
|
|
158
|
+
* @beta
|
|
159
|
+
*/
|
|
160
|
+
readonly packageManagerWrapper: PackageManager;
|
|
161
|
+
/**
|
|
162
|
+
* Gets the JSON data structure for the "rush.json" configuration file.
|
|
163
|
+
*
|
|
164
|
+
* @internal
|
|
165
|
+
*/
|
|
166
|
+
readonly rushConfigurationJson: IRushConfigurationJson;
|
|
167
|
+
/**
|
|
168
|
+
* The absolute path to the "rush.json" configuration file that was loaded to construct this object.
|
|
169
|
+
*/
|
|
170
|
+
readonly rushJsonFile: string;
|
|
171
|
+
/**
|
|
172
|
+
* The absolute path of the folder that contains rush.json for this project.
|
|
173
|
+
*/
|
|
174
|
+
readonly rushJsonFolder: string;
|
|
175
|
+
/**
|
|
176
|
+
* The folder that contains all change files.
|
|
177
|
+
*/
|
|
178
|
+
readonly changesFolder: string;
|
|
179
|
+
/**
|
|
180
|
+
* The fully resolved path for the "common" folder where Rush will store settings that
|
|
181
|
+
* affect all Rush projects. This is always a subfolder of the folder containing "rush.json".
|
|
182
|
+
* Example: `C:\MyRepo\common`
|
|
183
|
+
*/
|
|
184
|
+
readonly commonFolder: string;
|
|
185
|
+
/**
|
|
186
|
+
* The folder where Rush's additional config files are stored. This folder is always a
|
|
187
|
+
* subfolder called `config\rush` inside the common folder. (The `common\config` folder
|
|
188
|
+
* is reserved for configuration files used by other tools.) To avoid confusion or mistakes,
|
|
189
|
+
* Rush will report an error if this this folder contains any unrecognized files.
|
|
190
|
+
*
|
|
191
|
+
* Example: `C:\MyRepo\common\config\rush`
|
|
192
|
+
*/
|
|
193
|
+
readonly commonRushConfigFolder: string;
|
|
194
|
+
/**
|
|
195
|
+
* The folder where temporary files will be stored. This is always a subfolder called "temp"
|
|
196
|
+
* under the common folder.
|
|
197
|
+
* Example: `C:\MyRepo\common\temp`
|
|
198
|
+
*/
|
|
199
|
+
readonly commonTempFolder: string;
|
|
200
|
+
/**
|
|
201
|
+
* The folder where automation scripts are stored. This is always a subfolder called "scripts"
|
|
202
|
+
* under the common folder.
|
|
203
|
+
* Example: `C:\MyRepo\common\scripts`
|
|
204
|
+
*/
|
|
205
|
+
readonly commonScriptsFolder: string;
|
|
206
|
+
/**
|
|
207
|
+
* The local folder that will store the NPM package cache. Rush does not rely on the
|
|
208
|
+
* npm's default global cache folder, because npm's caching implementation does not
|
|
209
|
+
* reliably handle multiple processes. (For example, if a build box is running
|
|
210
|
+
* "rush install" simultaneously for two different working folders, it may fail randomly.)
|
|
211
|
+
*
|
|
212
|
+
* Example: `C:\MyRepo\common\temp\npm-cache`
|
|
213
|
+
*/
|
|
214
|
+
readonly npmCacheFolder: string;
|
|
215
|
+
/**
|
|
216
|
+
* The local folder where npm's temporary files will be written during installation.
|
|
217
|
+
* Rush does not rely on the global default folder, because it may be on a different
|
|
218
|
+
* hard disk.
|
|
219
|
+
*
|
|
220
|
+
* Example: `C:\MyRepo\common\temp\npm-tmp`
|
|
221
|
+
*/
|
|
222
|
+
readonly npmTmpFolder: string;
|
|
223
|
+
/**
|
|
224
|
+
* The local folder that will store the Yarn package cache.
|
|
225
|
+
*
|
|
226
|
+
* Example: `C:\MyRepo\common\temp\yarn-cache`
|
|
227
|
+
*/
|
|
228
|
+
readonly yarnCacheFolder: string;
|
|
229
|
+
/**
|
|
230
|
+
* The filename (without any path) of the shrinkwrap file that is used by the package manager.
|
|
231
|
+
* @remarks
|
|
232
|
+
* This property merely reports the filename; the file itself may not actually exist.
|
|
233
|
+
* Example: `npm-shrinkwrap.json` or `pnpm-lock.yaml`
|
|
234
|
+
*/
|
|
235
|
+
readonly shrinkwrapFilename: string;
|
|
236
|
+
/**
|
|
237
|
+
* The full path of the temporary shrinkwrap file that is used during "rush install".
|
|
238
|
+
* This file may get rewritten by the package manager during installation.
|
|
239
|
+
* @remarks
|
|
240
|
+
* This property merely reports the filename; the file itself may not actually exist.
|
|
241
|
+
* Example: `C:\MyRepo\common\temp\npm-shrinkwrap.json` or `C:\MyRepo\common\temp\pnpm-lock.yaml`
|
|
242
|
+
*/
|
|
243
|
+
readonly tempShrinkwrapFilename: string;
|
|
244
|
+
/**
|
|
245
|
+
* The full path of a backup copy of tempShrinkwrapFilename. This backup copy is made
|
|
246
|
+
* before installation begins, and can be compared to determine how the package manager
|
|
247
|
+
* modified tempShrinkwrapFilename.
|
|
248
|
+
* @remarks
|
|
249
|
+
* This property merely reports the filename; the file itself may not actually exist.
|
|
250
|
+
* Example: `C:\MyRepo\common\temp\npm-shrinkwrap-preinstall.json`
|
|
251
|
+
* or `C:\MyRepo\common\temp\pnpm-lock-preinstall.yaml`
|
|
252
|
+
*/
|
|
253
|
+
readonly tempShrinkwrapPreinstallFilename: string;
|
|
254
|
+
/**
|
|
255
|
+
* The filename of the variant dependency data file. By default this is
|
|
256
|
+
* called 'current-variant.json' resides in the Rush common folder.
|
|
257
|
+
* Its data structure is defined by ICurrentVariantJson.
|
|
258
|
+
*
|
|
259
|
+
* Example: `C:\MyRepo\common\temp\current-variant.json`
|
|
260
|
+
*/
|
|
261
|
+
readonly currentVariantJsonFilename: string;
|
|
262
|
+
/**
|
|
263
|
+
* The version of the locally installed NPM tool. (Example: "1.2.3")
|
|
264
|
+
*/
|
|
265
|
+
readonly packageManagerToolVersion: string;
|
|
266
|
+
/**
|
|
267
|
+
* The absolute path to the locally installed NPM tool. If "rush install" has not
|
|
268
|
+
* been run, then this file may not exist yet.
|
|
269
|
+
* Example: `C:\MyRepo\common\temp\npm-local\node_modules\.bin\npm`
|
|
270
|
+
*/
|
|
271
|
+
readonly packageManagerToolFilename: string;
|
|
272
|
+
/**
|
|
273
|
+
* The minimum allowable folder depth for the projectFolder field in the rush.json file.
|
|
274
|
+
* This setting provides a way for repository maintainers to discourage nesting of project folders
|
|
275
|
+
* that makes the directory tree more difficult to navigate. The default value is 2,
|
|
276
|
+
* which implements a standard 2-level hierarchy of `<categoryFolder>/<projectFolder>/package.json`.
|
|
277
|
+
*/
|
|
278
|
+
readonly projectFolderMinDepth: number;
|
|
279
|
+
/**
|
|
280
|
+
* The maximum allowable folder depth for the projectFolder field in the rush.json file.
|
|
281
|
+
* This setting provides a way for repository maintainers to discourage nesting of project folders
|
|
282
|
+
* that makes the directory tree more difficult to navigate. The default value is 2,
|
|
283
|
+
* which implements on a standard convention of `<categoryFolder>/<projectFolder>/package.json`.
|
|
284
|
+
*/
|
|
285
|
+
readonly projectFolderMaxDepth: number;
|
|
286
|
+
/**
|
|
287
|
+
* Today the npmjs.com registry enforces fairly strict naming rules for packages, but in the early
|
|
288
|
+
* days there was no standard and hardly any enforcement. A few large legacy projects are still using
|
|
289
|
+
* nonstandard package names, and private registries sometimes allow it. Set "allowMostlyStandardPackageNames"
|
|
290
|
+
* to true to relax Rush's enforcement of package names. This allows upper case letters and in the future may
|
|
291
|
+
* relax other rules, however we want to minimize these exceptions. Many popular tools use certain punctuation
|
|
292
|
+
* characters as delimiters, based on the assumption that they will never appear in a package name; thus if we relax
|
|
293
|
+
* the rules too much it is likely to cause very confusing malfunctions.
|
|
294
|
+
*
|
|
295
|
+
* The default value is false.
|
|
296
|
+
*/
|
|
297
|
+
readonly allowMostlyStandardPackageNames: boolean;
|
|
298
|
+
/**
|
|
299
|
+
* The "approvedPackagesPolicy" settings.
|
|
300
|
+
*/
|
|
301
|
+
readonly approvedPackagesPolicy: ApprovedPackagesPolicy;
|
|
302
|
+
/**
|
|
303
|
+
* [Part of the "gitPolicy" feature.]
|
|
304
|
+
* A list of regular expressions describing allowable email patterns for Git commits.
|
|
305
|
+
* They are case-insensitive anchored JavaScript RegExps.
|
|
306
|
+
* Example: `".*@example\.com"`
|
|
307
|
+
* This array will never be undefined.
|
|
308
|
+
*/
|
|
309
|
+
readonly gitAllowedEmailRegExps: string[];
|
|
310
|
+
/**
|
|
311
|
+
* [Part of the "gitPolicy" feature.]
|
|
312
|
+
* An example valid email address that conforms to one of the allowedEmailRegExps.
|
|
313
|
+
* Example: `"foxtrot@example\.com"`
|
|
314
|
+
* This will never be undefined, and will always be nonempty if gitAllowedEmailRegExps is used.
|
|
315
|
+
*/
|
|
316
|
+
readonly gitSampleEmail: string;
|
|
317
|
+
/**
|
|
318
|
+
* [Part of the "gitPolicy" feature.]
|
|
319
|
+
* The commit message to use when committing changes during 'rush publish'
|
|
320
|
+
*/
|
|
321
|
+
readonly gitVersionBumpCommitMessage: string | undefined;
|
|
322
|
+
/**
|
|
323
|
+
* [Part of the "gitPolicy" feature.]
|
|
324
|
+
* The commit message to use when committing change log files 'rush version'
|
|
325
|
+
*/
|
|
326
|
+
readonly gitChangeLogUpdateCommitMessage: string | undefined;
|
|
327
|
+
/**
|
|
328
|
+
* [Part of the "gitPolicy" feature.]
|
|
329
|
+
* The commit message to use when committing change log files 'rush version'
|
|
330
|
+
*/
|
|
331
|
+
readonly gitChangefilesCommitMessage: string | undefined;
|
|
332
|
+
/**
|
|
333
|
+
* [Part of the "gitPolicy" feature.]
|
|
334
|
+
* The separator between package name and version in git tag.
|
|
335
|
+
*/
|
|
336
|
+
readonly gitTagSeparator: string | undefined;
|
|
337
|
+
/**
|
|
338
|
+
* [Part of the "hotfixChange" feature.]
|
|
339
|
+
* Enables creating hotfix changes
|
|
340
|
+
*/
|
|
341
|
+
readonly hotfixChangeEnabled: boolean;
|
|
342
|
+
/**
|
|
343
|
+
* Remote URL(s) of the repository. If a value is provided, \"rush change\" will
|
|
344
|
+
* use one of these to find the right remote to compare against. Specifying multiple URLs
|
|
345
|
+
* is useful if a GitHub repository is renamed or for `<projectName>.visualstudio.com` versus
|
|
346
|
+
* `dev.azure.com/<projectName>` URLs.
|
|
347
|
+
*/
|
|
348
|
+
readonly repositoryUrls: string[];
|
|
349
|
+
/**
|
|
350
|
+
* The default branch name. This tells "rush change" which remote branch to compare against.
|
|
351
|
+
*/
|
|
352
|
+
readonly repositoryDefaultBranch: string;
|
|
353
|
+
/**
|
|
354
|
+
* The default remote. This tells "rush change" which remote to compare against if the remote URL is not set
|
|
355
|
+
* or if a remote matching the provided remote URL is not found.
|
|
356
|
+
*/
|
|
357
|
+
readonly repositoryDefaultRemote: string;
|
|
358
|
+
/**
|
|
359
|
+
* Odd-numbered major versions of Node.js are experimental. Even-numbered releases
|
|
360
|
+
* spend six months in a stabilization period before the first Long Term Support (LTS) version.
|
|
361
|
+
* For example, 8.9.0 was the first LTS version of Node.js 8. Pre-LTS versions are not recommended
|
|
362
|
+
* for production usage because they frequently have bugs. They may cause Rush itself
|
|
363
|
+
* to malfunction.
|
|
364
|
+
*
|
|
365
|
+
* Rush normally prints a warning if it detects a pre-LTS Node.js version. If you are testing
|
|
366
|
+
* pre-LTS versions in preparation for supporting the first LTS version, you can use this setting
|
|
367
|
+
* to disable Rush's warning.
|
|
368
|
+
*/
|
|
369
|
+
readonly suppressNodeLtsWarning: boolean;
|
|
370
|
+
/**
|
|
371
|
+
* If true, then consistent version specifiers for dependencies will be enforced.
|
|
372
|
+
* I.e. "rush check" is run before some commands.
|
|
373
|
+
*/
|
|
374
|
+
readonly ensureConsistentVersions: boolean;
|
|
375
|
+
/**
|
|
376
|
+
* Indicates whether telemetry collection is enabled for Rush runs.
|
|
377
|
+
* @beta
|
|
378
|
+
*/
|
|
379
|
+
readonly telemetryEnabled: boolean;
|
|
380
|
+
/**
|
|
381
|
+
* {@inheritDoc NpmOptionsConfiguration}
|
|
382
|
+
*/
|
|
383
|
+
readonly npmOptions: NpmOptionsConfiguration;
|
|
384
|
+
/**
|
|
385
|
+
* {@inheritDoc PnpmOptionsConfiguration}
|
|
386
|
+
*/
|
|
387
|
+
readonly pnpmOptions: PnpmOptionsConfiguration;
|
|
388
|
+
/**
|
|
389
|
+
* {@inheritDoc YarnOptionsConfiguration}
|
|
390
|
+
*/
|
|
391
|
+
readonly yarnOptions: YarnOptionsConfiguration;
|
|
392
|
+
/**
|
|
393
|
+
* The configuration options used by the current package manager.
|
|
394
|
+
* @remarks
|
|
395
|
+
* For package manager specific variants, reference {@link RushConfiguration.npmOptions | npmOptions},
|
|
396
|
+
* {@link RushConfiguration.pnpmOptions | pnpmOptions}, or {@link RushConfiguration.yarnOptions | yarnOptions}.
|
|
397
|
+
*/
|
|
398
|
+
readonly packageManagerOptions: PackageManagerOptionsConfigurationBase;
|
|
399
|
+
/**
|
|
400
|
+
* The rush hooks. It allows customized scripts to run at the specified point.
|
|
401
|
+
* @beta
|
|
402
|
+
*/
|
|
403
|
+
readonly eventHooks: EventHooks;
|
|
404
|
+
/**
|
|
405
|
+
* The rush hooks. It allows customized scripts to run at the specified point.
|
|
406
|
+
*/
|
|
407
|
+
readonly packageNameParser: PackageNameParser;
|
|
408
|
+
/**
|
|
409
|
+
* @beta
|
|
410
|
+
*/
|
|
411
|
+
readonly versionPolicyConfiguration: VersionPolicyConfiguration;
|
|
412
|
+
/**
|
|
413
|
+
* @beta
|
|
414
|
+
*/
|
|
415
|
+
readonly versionPolicyConfigurationFilePath: string;
|
|
416
|
+
/**
|
|
417
|
+
* This configuration object contains settings repo maintainers have specified to enable
|
|
418
|
+
* and disable experimental Rush features.
|
|
419
|
+
*
|
|
420
|
+
* @beta
|
|
421
|
+
*/
|
|
422
|
+
readonly experimentsConfiguration: ExperimentsConfiguration;
|
|
423
|
+
/**
|
|
424
|
+
* @internal
|
|
425
|
+
*/
|
|
426
|
+
readonly _rushPluginsConfiguration: RushPluginsConfiguration;
|
|
427
|
+
/**
|
|
428
|
+
* Use RushConfiguration.loadFromConfigurationFile() or Use RushConfiguration.loadFromDefaultLocation()
|
|
429
|
+
* instead.
|
|
430
|
+
*/
|
|
431
|
+
private constructor();
|
|
432
|
+
private _initializeAndValidateLocalProjects;
|
|
433
|
+
/**
|
|
434
|
+
* Loads the configuration data from an Rush.json configuration file and returns
|
|
435
|
+
* an RushConfiguration object.
|
|
436
|
+
*/
|
|
437
|
+
static loadFromConfigurationFile(rushJsonFilename: string): RushConfiguration;
|
|
438
|
+
static loadFromDefaultLocation(options?: ITryFindRushJsonLocationOptions): RushConfiguration;
|
|
439
|
+
/**
|
|
440
|
+
* Find the rush.json location and return the path, or undefined if a rush.json can't be found.
|
|
441
|
+
*
|
|
442
|
+
* @privateRemarks
|
|
443
|
+
* Keep this in sync with `findRushJsonLocation` in `rush-sdk/src/index.ts`.
|
|
444
|
+
*/
|
|
445
|
+
static tryFindRushJsonLocation(options?: ITryFindRushJsonLocationOptions): string | undefined;
|
|
446
|
+
/**
|
|
447
|
+
* This generates the unique names that are used to create temporary projects
|
|
448
|
+
* in the Rush common folder.
|
|
449
|
+
* NOTE: sortedProjectJsons is sorted by the caller.
|
|
450
|
+
*/
|
|
451
|
+
private static _generateTempNameForProject;
|
|
452
|
+
/**
|
|
453
|
+
* If someone adds a config file in the "common/rush/config" folder, it would be a bad
|
|
454
|
+
* experience for Rush to silently ignore their file simply because they misspelled the
|
|
455
|
+
* filename, or maybe it's an old format that's no longer supported. The
|
|
456
|
+
* _validateCommonRushConfigFolder() function makes sure that this folder only contains
|
|
457
|
+
* recognized config files.
|
|
458
|
+
*/
|
|
459
|
+
private static _validateCommonRushConfigFolder;
|
|
460
|
+
/**
|
|
461
|
+
* The fully resolved path for the "autoinstallers" folder.
|
|
462
|
+
* Example: `C:\MyRepo\common\autoinstallers`
|
|
463
|
+
*/
|
|
464
|
+
get commonAutoinstallersFolder(): string;
|
|
465
|
+
/**
|
|
466
|
+
* The folder where rush-plugin options json files are stored.
|
|
467
|
+
* Example: `C:\MyRepo\common\config\rush-plugins`
|
|
468
|
+
*/
|
|
469
|
+
get rushPluginOptionsFolder(): string;
|
|
470
|
+
/**
|
|
471
|
+
* The full path of the shrinkwrap file that is tracked by Git. (The "rush install"
|
|
472
|
+
* command uses a temporary copy, whose path is tempShrinkwrapFilename.)
|
|
473
|
+
* @remarks
|
|
474
|
+
* This property merely reports the filename; the file itself may not actually exist.
|
|
475
|
+
* Example: `C:\MyRepo\common\npm-shrinkwrap.json` or `C:\MyRepo\common\pnpm-lock.yaml`
|
|
476
|
+
*
|
|
477
|
+
* @deprecated Use `getCommittedShrinkwrapFilename` instead, which gets the correct common
|
|
478
|
+
* shrinkwrap file name for a given active variant.
|
|
479
|
+
*/
|
|
480
|
+
get committedShrinkwrapFilename(): string;
|
|
481
|
+
/**
|
|
482
|
+
* Returns an English phrase such as "shrinkwrap file" that can be used in logging messages
|
|
483
|
+
* to refer to the shrinkwrap file using appropriate terminology for the currently selected
|
|
484
|
+
* package manager.
|
|
485
|
+
*/
|
|
486
|
+
get shrinkwrapFilePhrase(): string;
|
|
487
|
+
/**
|
|
488
|
+
* The filename of the build dependency data file. By default this is
|
|
489
|
+
* called 'rush-link.json' resides in the Rush common folder.
|
|
490
|
+
* Its data structure is defined by IRushLinkJson.
|
|
491
|
+
*
|
|
492
|
+
* Example: `C:\MyRepo\common\temp\rush-link.json`
|
|
493
|
+
*
|
|
494
|
+
* @deprecated The "rush-link.json" file was removed in Rush 5.30.0.
|
|
495
|
+
* Use `RushConfigurationProject.localDependencyProjects` instead.
|
|
496
|
+
*/
|
|
497
|
+
get rushLinkJsonFilename(): string;
|
|
498
|
+
/**
|
|
499
|
+
* The default fully-qualified git remote branch of the repository. This helps "rush change" find the right branch to compare against.
|
|
500
|
+
*/
|
|
501
|
+
get repositoryDefaultFullyQualifiedRemoteBranch(): string;
|
|
502
|
+
get projects(): RushConfigurationProject[];
|
|
503
|
+
get projectsByName(): Map<string, RushConfigurationProject>;
|
|
504
|
+
/**
|
|
505
|
+
* Obtains the mapping from custom tags to projects.
|
|
506
|
+
* @beta
|
|
507
|
+
*/
|
|
508
|
+
get projectsByTag(): ReadonlyMap<string, ReadonlySet<RushConfigurationProject>>;
|
|
509
|
+
/**
|
|
510
|
+
* Settings from the common-versions.json config file.
|
|
511
|
+
* @remarks
|
|
512
|
+
* If the common-versions.json file is missing, this property will not be undefined.
|
|
513
|
+
* Instead it will be initialized in an empty state, and calling CommonVersionsConfiguration.save()
|
|
514
|
+
* will create the file.
|
|
515
|
+
*
|
|
516
|
+
* @deprecated Use `getCommonVersions` instead, which gets the correct common version data
|
|
517
|
+
* for a given active variant.
|
|
518
|
+
*/
|
|
519
|
+
get commonVersions(): CommonVersionsConfiguration;
|
|
520
|
+
/**
|
|
521
|
+
* Gets the currently-installed variant, if an installation has occurred.
|
|
522
|
+
* For Rush operations which do not take a --variant parameter, this method
|
|
523
|
+
* determines which variant, if any, was last specified when performing "rush install"
|
|
524
|
+
* or "rush update".
|
|
525
|
+
*/
|
|
526
|
+
get currentInstalledVariant(): string | undefined;
|
|
527
|
+
/**
|
|
528
|
+
* Gets the path to the common-versions.json config file for a specific variant.
|
|
529
|
+
* @param variant - The name of the current variant in use by the active command.
|
|
530
|
+
*/
|
|
531
|
+
getCommonVersionsFilePath(variant?: string | undefined): string;
|
|
532
|
+
/**
|
|
533
|
+
* Gets the settings from the common-versions.json config file for a specific variant.
|
|
534
|
+
* @param variant - The name of the current variant in use by the active command.
|
|
535
|
+
*/
|
|
536
|
+
getCommonVersions(variant?: string | undefined): CommonVersionsConfiguration;
|
|
537
|
+
/**
|
|
538
|
+
* Returns a map of all direct dependencies that only have a single semantic version specifier.
|
|
539
|
+
* @param variant - The name of the current variant in use by the active command.
|
|
540
|
+
*
|
|
541
|
+
* @returns A map of dependency name --\> version specifier for implicitly preferred versions.
|
|
542
|
+
*/
|
|
543
|
+
getImplicitlyPreferredVersions(variant?: string | undefined): Map<string, string>;
|
|
544
|
+
/**
|
|
545
|
+
* Gets the path to the repo-state.json file for a specific variant.
|
|
546
|
+
* @param variant - The name of the current variant in use by the active command.
|
|
547
|
+
*/
|
|
548
|
+
getRepoStateFilePath(variant?: string | undefined): string;
|
|
549
|
+
/**
|
|
550
|
+
* Gets the contents from the repo-state.json file for a specific variant.
|
|
551
|
+
* @param variant - The name of the current variant in use by the active command.
|
|
552
|
+
*/
|
|
553
|
+
getRepoState(variant?: string | undefined): RepoStateFile;
|
|
554
|
+
/**
|
|
555
|
+
* Gets the committed shrinkwrap file name for a specific variant.
|
|
556
|
+
* @param variant - The name of the current variant in use by the active command.
|
|
557
|
+
*/
|
|
558
|
+
getCommittedShrinkwrapFilename(variant?: string | undefined): string;
|
|
559
|
+
/**
|
|
560
|
+
* Gets the absolute path for "pnpmfile.js" for a specific variant.
|
|
561
|
+
* @param variant - The name of the current variant in use by the active command.
|
|
562
|
+
* @remarks
|
|
563
|
+
* The file path is returned even if PNPM is not configured as the package manager.
|
|
564
|
+
*/
|
|
565
|
+
getPnpmfilePath(variant?: string | undefined): string;
|
|
566
|
+
/**
|
|
567
|
+
* Looks up a project in the projectsByName map. If the project is not found,
|
|
568
|
+
* then undefined is returned.
|
|
569
|
+
*/
|
|
570
|
+
getProjectByName(projectName: string): RushConfigurationProject | undefined;
|
|
571
|
+
/**
|
|
572
|
+
* This is used e.g. by command-line interfaces such as "rush build --to example".
|
|
573
|
+
* If "example" is not a project name, then it also looks for a scoped name
|
|
574
|
+
* like `@something/example`. If exactly one project matches this heuristic, it
|
|
575
|
+
* is returned. Otherwise, undefined is returned.
|
|
576
|
+
*/
|
|
577
|
+
findProjectByShorthandName(shorthandProjectName: string): RushConfigurationProject | undefined;
|
|
578
|
+
/**
|
|
579
|
+
* Looks up a project by its RushConfigurationProject.tempProjectName field.
|
|
580
|
+
* @returns The found project, or undefined if no match was found.
|
|
581
|
+
*/
|
|
582
|
+
findProjectByTempName(tempProjectName: string): RushConfigurationProject | undefined;
|
|
583
|
+
/**
|
|
584
|
+
* @returns An optimized lookup engine to find a project by its path relative to the specified root.
|
|
585
|
+
* @beta
|
|
586
|
+
*/
|
|
587
|
+
getProjectLookupForRoot(rootPath: string): LookupByPath<RushConfigurationProject>;
|
|
588
|
+
/**
|
|
589
|
+
* Returns the project for which the specified path is underneath that project's folder.
|
|
590
|
+
* If the path is not under any project's folder, returns undefined.
|
|
591
|
+
*/
|
|
592
|
+
tryGetProjectForPath(currentFolderPath: string): RushConfigurationProject | undefined;
|
|
593
|
+
private _getVariantConfigFolderPath;
|
|
594
|
+
}
|
|
595
|
+
//# sourceMappingURL=RushConfiguration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require("../../lib-shim/index")._rushSdk_loadInternalModule("api/RushConfiguration");
|