@rushstack/rush-sdk
Advanced tools
Comparing version 5.114.3 to 5.115.0
@@ -78,2 +78,8 @@ /** | ||
generateProjectImpactGraphDuringRushUpdate?: boolean; | ||
/** | ||
* If true, when running in watch mode, Rush will check for phase scripts named `_phase:<name>:ipc` and run them instead | ||
* of `_phase:<name>` if they exist. The created child process will be provided with an IPC channel and expected to persist | ||
* across invocations. | ||
*/ | ||
useIPCScriptsInWatchMode?: boolean; | ||
} | ||
@@ -80,0 +86,0 @@ /** |
@@ -53,2 +53,3 @@ import { PhasedCommandHooks } from '../../pluginFramework/PhasedCommandHooks'; | ||
private readonly _installParameter; | ||
private readonly _noIPCParameter; | ||
constructor(options: IPhasedScriptActionOptions); | ||
@@ -55,0 +56,0 @@ runAsync(): Promise<void>; |
@@ -1,2 +0,2 @@ | ||
import type { StdioSummarizer } from '@rushstack/terminal'; | ||
import type { ITerminal, ITerminalProvider } from '@rushstack/terminal'; | ||
import type { CollatedWriter } from '@rushstack/stream-collator'; | ||
@@ -25,6 +25,2 @@ import type { OperationStatus } from './OperationStatus'; | ||
/** | ||
* Object used to report a summary at the end of the Rush invocation. | ||
*/ | ||
stdioSummarizer: StdioSummarizer; | ||
/** | ||
* Object used to manage metadata of the operation. | ||
@@ -52,8 +48,10 @@ * | ||
/** | ||
* Normally the incremental build logic will rebuild changed projects as well as | ||
* any projects that directly or indirectly depend on a changed project. | ||
* If true, then the incremental build logic will only rebuild changed projects and | ||
* ignore dependent projects. | ||
* Invokes the specified callback with a terminal that is associated with this operation. | ||
* | ||
* Will write to a log file corresponding to the phase and project, and clean it up upon completion. | ||
*/ | ||
readonly changedProjectsOnly: boolean; | ||
runWithTerminalAsync<T>(callback: (terminal: ITerminal, terminalProvider: ITerminalProvider) => Promise<T>, options: { | ||
createLogFile: boolean; | ||
logFileSuffix?: string; | ||
}): Promise<T>; | ||
} | ||
@@ -60,0 +58,0 @@ /** |
@@ -1,3 +0,3 @@ | ||
import { StdioSummarizer } from '@rushstack/terminal'; | ||
import type { CollatedWriter, StreamCollator } from '@rushstack/stream-collator'; | ||
import { type ITerminal, type ITerminalProvider, StdioSummarizer } from '@rushstack/terminal'; | ||
import { type CollatedWriter, type StreamCollator } from '@rushstack/stream-collator'; | ||
import { OperationStatus } from './OperationStatus'; | ||
@@ -15,3 +15,2 @@ import type { IOperationRunner, IOperationRunnerContext } from './IOperationRunner'; | ||
quietMode: boolean; | ||
changedProjectsOnly: boolean; | ||
} | ||
@@ -87,3 +86,2 @@ /** | ||
get quietMode(): boolean; | ||
get changedProjectsOnly(): boolean; | ||
get collatedWriter(): CollatedWriter; | ||
@@ -100,2 +98,9 @@ get nonCachedDurationMs(): number | undefined; | ||
set status(newStatus: OperationStatus); | ||
/** | ||
* {@inheritdoc IOperationRunnerContext.runWithTerminalAsync} | ||
*/ | ||
runWithTerminalAsync<T>(callback: (terminal: ITerminal, terminalProvider: ITerminalProvider) => Promise<T>, options: { | ||
createLogFile: boolean; | ||
logFileSuffix: string; | ||
}): Promise<T>; | ||
executeAsync({ onStart, onResult }: { | ||
@@ -102,0 +107,0 @@ onStart: (record: OperationExecutionRecord) => Promise<OperationStatus | undefined>; |
@@ -5,3 +5,2 @@ import { TerminalWritable, type ITerminalChunk } from '@rushstack/terminal'; | ||
export declare class ProjectLogWritable extends TerminalWritable { | ||
private readonly _project; | ||
private readonly _terminal; | ||
@@ -8,0 +7,0 @@ readonly logPath: string; |
@@ -1,7 +0,6 @@ | ||
import { OperationStatus } from './OperationStatus'; | ||
import type { IOperationRunner, IOperationRunnerContext } from './IOperationRunner'; | ||
import type { IPhase } from '../../api/CommandLineConfiguration'; | ||
import type { RushConfiguration } from '../../api/RushConfiguration'; | ||
import type { RushConfigurationProject } from '../../api/RushConfigurationProject'; | ||
import type { ProjectChangeAnalyzer } from '../ProjectChangeAnalyzer'; | ||
import type { IPhase } from '../../api/CommandLineConfiguration'; | ||
import type { IOperationRunner, IOperationRunnerContext } from './IOperationRunner'; | ||
import { OperationStatus } from './OperationStatus'; | ||
export interface IOperationRunnerOptions { | ||
@@ -11,9 +10,4 @@ rushProject: RushConfigurationProject; | ||
commandToRun: string; | ||
projectChangeAnalyzer: ProjectChangeAnalyzer; | ||
displayName: string; | ||
phase: IPhase; | ||
/** | ||
* The set of phases being executed in the current command, for validation of rush-project.json | ||
*/ | ||
selectedPhases: Iterable<IPhase>; | ||
} | ||
@@ -32,3 +26,2 @@ /** | ||
private readonly _commandToRun; | ||
private readonly _logFilenameIdentifier; | ||
private readonly _rushProject; | ||
@@ -35,0 +28,0 @@ private readonly _rushConfiguration; |
@@ -0,2 +1,5 @@ | ||
import type { IPhase } from '../../api/CommandLineConfiguration'; | ||
import type { RushConfigurationProject } from '../../api/RushConfigurationProject'; | ||
import type { IPhasedCommandPlugin, PhasedCommandHooks } from '../../pluginFramework/PhasedCommandHooks'; | ||
export declare const PLUGIN_NAME: 'ShellOperationRunnerPlugin'; | ||
/** | ||
@@ -8,2 +11,9 @@ * Core phased command plugin that provides the functionality for executing an operation via shell command. | ||
} | ||
/** | ||
* Memoizer for custom parameter values by phase | ||
* @returns A function that returns the custom parameter values for a given phase | ||
*/ | ||
export declare function getCustomParameterValuesByPhase(): (phase: IPhase) => ReadonlyArray<string>; | ||
export declare function formatCommand(rawCommand: string, customParameterValues: ReadonlyArray<string>): string; | ||
export declare function getDisplayName(phase: IPhase, project: RushConfigurationProject): string; | ||
//# sourceMappingURL=ShellOperationRunnerPlugin.d.ts.map |
@@ -1,2 +0,2 @@ | ||
import { AsyncSeriesBailHook, AsyncSeriesHook, AsyncSeriesWaterfallHook, SyncHook } from 'tapable'; | ||
import { AsyncParallelHook, AsyncSeriesBailHook, AsyncSeriesHook, AsyncSeriesWaterfallHook, SyncHook } from 'tapable'; | ||
import type { CommandLineParameter } from '@rushstack/ts-command-line'; | ||
@@ -86,2 +86,8 @@ import type { BuildCacheConfiguration } from '../api/BuildCacheConfiguration'; | ||
readonly rushConfiguration: RushConfiguration; | ||
/** | ||
* Marks an operation's result as invalid, potentially triggering a new build. Only applicable in watch mode. | ||
* @param operation - The operation to invalidate | ||
* @param reason - The reason for invalidating the operation | ||
*/ | ||
readonly invalidateOperation?: ((operation: Operation, reason: string) => void) | undefined; | ||
} | ||
@@ -130,2 +136,6 @@ /** | ||
/** | ||
* Hook invoked to shutdown long-lived work in plugins. | ||
*/ | ||
readonly shutdownAsync: AsyncParallelHook<void>; | ||
/** | ||
* Hook invoked after a run has finished and the command is watching for changes. | ||
@@ -132,0 +142,0 @@ * May be used to display additional relevant data to the user. |
@@ -62,2 +62,6 @@ /// <reference types="node" /> | ||
ipc?: boolean; | ||
/** | ||
* If true, wire up SubprocessTerminator to the child process. | ||
*/ | ||
connectSubprocessTerminator?: boolean; | ||
} | ||
@@ -64,0 +68,0 @@ export interface IEnvironmentPathOptions { |
{ | ||
"name": "@rushstack/rush-sdk", | ||
"version": "5.114.3", | ||
"version": "5.115.0", | ||
"description": "An API for interacting with the Rush engine", | ||
@@ -28,4 +28,4 @@ "repository": { | ||
"tapable": "2.2.1", | ||
"@rushstack/terminal": "0.9.0", | ||
"@rushstack/node-core-library": "4.0.2" | ||
"@rushstack/node-core-library": "4.0.2", | ||
"@rushstack/terminal": "0.9.0" | ||
}, | ||
@@ -35,7 +35,7 @@ "devDependencies": { | ||
"@types/webpack-env": "1.18.0", | ||
"@microsoft/rush-lib": "5.114.3", | ||
"local-node-rig": "1.0.0", | ||
"@rushstack/heft": "0.65.3", | ||
"@rushstack/stream-collator": "4.1.30", | ||
"@rushstack/ts-command-line": "4.17.3" | ||
"@microsoft/rush-lib": "5.115.0", | ||
"@rushstack/heft": "0.65.4", | ||
"@rushstack/ts-command-line": "4.17.3", | ||
"@rushstack/stream-collator": "4.1.31", | ||
"local-node-rig": "1.0.0" | ||
}, | ||
@@ -42,0 +42,0 @@ "scripts": { |
Sorry, the diff of this file is too big to display
669642
14775