Vigia

Upgrading execa from 9.x to 10.x

Comparison of the public API of execa 9.6.1 and 10.0.1, computed automatically from their TypeScript types. A changed signature is a candidate for a breaking change, not a certainty.

Summary

Removed import paths0
Removed exports2
Changed signatures5
Removed class or interface members0
Changed class or interface members0
Newly deprecated0
Requirement changes (engines, peer dependencies)1
New exports0

Removed exports

importexportkindBefore
execaexecaCommandvariable<NewOptionsType extends Options = {}>(options: NewOptionsType): ExecaCommandMethod<{} & NewOptionsType> | (templateString_0: TemplateStringsArray, templateString_1?: string | undefined): ResultPromise<{}> | <NewOptionsType extends Options = {}>(command: string, options?: NewOptionsType | undefined): ResultPromise<{} & NewOptionsType>
execaexecaCommandSyncvariable<NewOptionsType extends SyncOptions = {}>(options: NewOptionsType): ExecaCommandSyncMethod<{} & NewOptionsType> | (templateString_0: TemplateStringsArray, templateString_1?: string | undefined): SyncResult<{}> | <NewOptionsType extends SyncOptions = {}>(command: string, options?: NewOptionsType | undefined): SyncResult<{} & NewOptionsType>

Changed signatures

exportBeforeAfter
execa · $<NewOptionsType extends CommonOptions = {}>(options: NewOptionsType): ExecaScriptMethod<{} & NewOptionsType> | (templateString_0: TemplateStringsArray, ...templateString: TemplateExpression[]): ResultPromise<{}> | <NewOptionsType extends Options = {}>(file: string | URL, arguments?: readonly string[] | undefined, options?: NewOptionsType | undefined): ResultPromise<StricterOptions<{} & NewOptionsType, Options>> | <NewOptionsType extends Options = {}>(file: string | URL, options?: NewOptionsType | undefined): ResultPromise<StricterOptions<{} & NewOptionsType, Options>><NewOptionsType extends Options = {}>(options: NewOptionsType): ExecaScriptMethod<{} & NewOptionsType> | (templateString_0: TemplateStringsArray, ...templateString: TemplateExpression[]): ResultPromise<{}> | <NewOptionsType extends Options = {}>(file: string | URL, arguments?: readonly string[] | undefined, options?: NewOptionsType | undefined): ResultPromise<StricterOptions<{} & NewOptionsType, Options>> | <NewOptionsType extends Options = {}>(file: string | URL, options?: NewOptionsType | undefined): ResultPromise<StricterOptions<{} & NewOptionsType, Options>>
execa · Options{ readonly preferLocal?: boolean | undefined; readonly localDir?: string | URL | undefined; readonly node?: boolean | undefined; readonly nodeOptions?: readonly string[] | undefined; readonly nodePath?: string | URL | undefined; readonly shell?: string | boolean | URL | undefined; readonly cwd?: string | URL | undefined; readonly env?: Readonly<Partial<Record<string, string>>> | undefined; readonly extendEnv?: boolean | undefined; readonly input?: any; readonly inputFile?: string | URL | undefined; readonly stdin?: any; readonly stdout?: any; readonly stderr?: any; readonly stdio?: StdioOption…TextOptions<false> | BinaryOptions<false>
execa · SubprocessOmit<ChildProcess, "pipe" | "stdout" | "stderr" | "all" | typeof asyncIterator | "pid" | "stdin" | "stdio" | "kill" | "iterable" | "readable" | "writable" | "duplex" | keyof IpcMethods<HasIpcOption<OptionsType["ipc"], "ipcInput" extends keyof OptionsType ? OptionsType[keyof OptionsType & "ipcInput"] : undefined, "gracefulCancel" extends keyof OptionsType ? OptionsType[keyof OptionsType & "gracefulCancel"] : undefined>, OptionsType["serialization"]>> & { pid?: number | undefined; stdin: any; stdout: any; stderr: any; all: AllStream<AllIgnored<OptionsType["all"], OptionsType>>; stdio: Subprocess…IpcMethods<HasIpcOption<OptionsType["ipc"], "ipcInput" extends keyof OptionsType ? OptionsType[keyof OptionsType & "ipcInput"] : undefined, "gracefulCancel" extends keyof OptionsType ? OptionsType[keyof OptionsType & "gracefulCancel"] : undefined>, OptionsType["serialization"]> & PipableSubprocess & SubprocessResultMethods<OptionsType> & { pid?: number | undefined; stdin: any; stdout: any; stderr: any; stdio: SubprocessStdioArray<OptionsType>; kill(signal?: string | number | symbol | undefined, error?: Error | undefined): boolean; kill(error?: Error | undefined): boolean; writable(writableOpti…
execa · SyncOptions{ readonly preferLocal?: boolean | undefined; readonly localDir?: string | URL | undefined; readonly node?: boolean | undefined; readonly nodeOptions?: readonly string[] | undefined; readonly nodePath?: string | URL | undefined; readonly shell?: string | boolean | URL | undefined; readonly cwd?: string | URL | undefined; readonly env?: Readonly<Partial<Record<string, string>>> | undefined; readonly extendEnv?: boolean | undefined; readonly input?: any; readonly inputFile?: string | URL | undefined; readonly stdin?: any; readonly stdout?: any; readonly stderr?: any; readonly stdio?: StdioOption…TextOptions<true> | BinaryOptions<true>
execa · ResultPromiseOmit<ChildProcess, "pipe" | "stdout" | "stderr" | "all" | typeof asyncIterator | "pid" | "stdin" | "stdio" | "kill" | "iterable" | "readable" | "writable" | "duplex" | keyof IpcMethods<HasIpcOption<OptionsType["ipc"], "ipcInput" extends keyof OptionsType ? OptionsType[keyof OptionsType & "ipcInput"] : undefined, "gracefulCancel" extends keyof OptionsType ? OptionsType[keyof OptionsType & "gracefulCancel"] : undefined>, OptionsType["serialization"]>> & { pid?: number | undefined; stdin: any; stdout: any; stderr: any; all: AllStream<AllIgnored<OptionsType["all"], OptionsType>>; stdio: Subprocess…IpcMethods<HasIpcOption<OptionsType["ipc"], "ipcInput" extends keyof OptionsType ? OptionsType[keyof OptionsType & "ipcInput"] : undefined, "gracefulCancel" extends keyof OptionsType ? OptionsType[keyof OptionsType & "gracefulCancel"] : undefined>, OptionsType["serialization"]> & PipableSubprocess & SubprocessResultMethods<OptionsType> & { pid?: number | undefined; stdin: any; stdout: any; stderr: any; stdio: SubprocessStdioArray<OptionsType>; kill(signal?: string | number | symbol | undefined, error?: Error | undefined): boolean; kill(error?: Error | undefined): boolean; writable(writableOpti…

Removed class or interface members

None detected.

Changed class or interface members

None detected.

Newly deprecated

None detected.

Requirement changes (engines, peer dependencies)

BeforeAfter
engines.node^18.19.0 || >=20.5.0>=22

Frequently asked questions

What are the breaking changes when upgrading execa from 9 to 10?

Between execa 9.6.1 and 10.0.1, Vigia found 2 removed exports, 5 changed signatures and 0 removed or changed class or interface members.

What became deprecated in execa 10?

0 exports or members are newly marked as deprecated in execa 10.0.1.

For agents

GET https://vigia.coredls.cloud/v1/packages/npm/execa/upgrade?from=9.6.1&to=10.0.1