execa upgraden van 9.x naar 10.x
Vergelijking van de publieke API van execa 9.6.1 en 10.2.1, automatisch berekend uit hun TypeScript-types. Een gewijzigde signatuur is een mogelijke brekende wijziging, geen zekerheid.
Samenvatting
| Verwijderde importpaden | 0 |
|---|---|
| Verwijderde exports | 2 |
| Gewijzigde signaturen | 8 |
| Verwijderde leden van klassen of interfaces | 0 |
| Gewijzigde leden van klassen of interfaces | 10 |
| Nieuw als verouderd gemarkeerd | 0 |
| Gewijzigde vereisten (engines, peer-afhankelijkheden) | 1 |
| Nieuwe exports | 0 |
Verwijderde exports
| import | export | kind | Voor |
|---|---|---|---|
execa | execaCommand | variable | <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> |
execa | execaCommandSync | variable | <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> |
Gewijzigde signaturen
| export | Voor | Na |
|---|---|---|
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<MergeOptions<{}, NewOptionsType, CommonOptions>> | (templateString_0: TemplateStringsArray, ...templateString: TemplateExpression[]): Omit<ResultPromise<{}>, "stdin" | "stdio"> & { stdin: any; stdio: any[]; } | <NewOptionsType extends Options = {}>(file: string | URL, arguments?: readonly string[] | undefined, options?: NewOptionsType | undefined): ScriptSubprocess<MergeOptions<{}, NewOptionsType, CommonOptions>> | <NewOptionsType extends Options = {}>(file: string | URL, options?: NewOptionsType | undefined): Sc… |
execa · execa | <NewOptionsType extends Options = {}>(options: NewOptionsType): ExecaMethod<{} & NewOptionsType> | (templateString_0: TemplateStringsArray, ...templateString: TemplateExpression[]): ResultPromise<{}> | <NewOptionsType extends Options = {}>(file: string | URL, arguments?: readonly string[] | undefined, options?: NewOptionsType | undefined): ResultPromise<{} & NewOptionsType> | <NewOptionsType extends Options = {}>(file: string | URL, options?: NewOptionsType | undefined): ResultPromise<{} & NewOptionsType> | <NewOptionsType extends Options = {}>(options: NewOptionsType): ExecaMethod<MergeOptions<{}, NewOptionsType, Options>> | (templateString_0: TemplateStringsArray, ...templateString: TemplateExpression[]): ResultPromise<{}> | <NewOptionsType extends Options = {}>(file: string | URL, arguments?: readonly string[] | undefined, options?: NewOptionsType | undefined): ResultPromise<MergeOptions<{}, NewOptionsType, Options>> | <NewOptionsType extends Options = {}>(file: string | URL, options?: NewOptionsType | undefined): ResultPromise<MergeOptions<{}, 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 · execaNode | <NewOptionsType extends Options = {}>(options: NewOptionsType): ExecaNodeMethod<{} & NewOptionsType> | (templateString_0: TemplateStringsArray, ...templateString: TemplateExpression[]): ResultPromise<{}> | <NewOptionsType extends Options = {}>(scriptPath: string | URL, arguments?: readonly string[] | undefined, options?: NewOptionsType | undefined): ResultPromise<{} & NewOptionsType> | <NewOptionsType extends Options = {}>(scriptPath: string | URL, options?: NewOptionsType | undefined): ResultPromise<{} & NewOptionsType> | <NewOptionsType extends Options = {}>(options: NewOptionsType): ExecaNodeMethod<MergeOptions<{}, NewOptionsType, Options>> | (templateString_0: TemplateStringsArray, ...templateString: TemplateExpression[]): ResultPromise<{ readonly node: true; }> | <NewOptionsType extends Options = {}>(scriptPath: string | URL, arguments?: readonly string[] | undefined, options?: NewOptionsType | undefined): ResultPromise<NodeOptions<MergeOptions<{}, NewOptionsType, Options>>> | <NewOptionsType extends Options = {}>(scriptPath: string | URL, options?: NewOptionsType | undefined): ResultPromise<NodeOptions<Mer… |
execa · execaSync | <NewOptionsType extends SyncOptions = {}>(options: NewOptionsType): ExecaSyncMethod<{} & NewOptionsType> | (templateString_0: TemplateStringsArray, ...templateString: TemplateExpression[]): SyncResult<{}> | <NewOptionsType extends SyncOptions = {}>(file: string | URL, arguments?: readonly string[] | undefined, options?: NewOptionsType | undefined): SyncResult<{} & NewOptionsType> | <NewOptionsType extends SyncOptions = {}>(file: string | URL, options?: NewOptionsType | undefined): SyncResult<{} & NewOptionsType> | <NewOptionsType extends SyncOptions = {}>(options: NewOptionsType): ExecaSyncMethod<MergeOptions<{}, NewOptionsType, SyncOptions>> | (templateString_0: TemplateStringsArray, ...templateString: TemplateExpression[]): SyncResult<{}> | <NewOptionsType extends SyncOptions = {}>(file: string | URL, arguments?: readonly string[] | undefined, options?: NewOptionsType | undefined): SyncResult<MergeOptions<{}, NewOptionsType, SyncOptions>> | <NewOptionsType extends SyncOptions = {}>(file: string | URL, options?: NewOptionsType | undefined): SyncResult<MergeOptions<{}, NewOptionsType, SyncOptions>> |
execa · Subprocess | Omit<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… | SubprocessIpcMethods<OptionsType> & PipableSubprocess & SubprocessResultMethods<OptionsType> & { pid?: number | undefined; stdin: SubprocessStdioStream<"0", OptionsType>; stdout: SubprocessStdioStream<"1", OptionsType>; stderr: SubprocessStdioStream<"2", OptionsType>; stdio: [...{ -readonly [FdNumber in keyof StdioOptionNormalized<OptionsType["stdio"]>]: SubprocessStdioStream<FdNumber extends string ? FdNumber : string, OptionsType>; }, ...HasIpcOption<OptionsType["ipc"], "node" extends keyof OptionsType ? OptionsType[keyof OptionsType & "node"] : undefined, "ipcInput" extends keyof OptionsTyp… |
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 · ResultPromise | Omit<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… | SubprocessIpcMethods<OptionsType> & PipableSubprocess & SubprocessResultMethods<OptionsType> & { pid?: number | undefined; stdin: SubprocessStdioStream<"0", OptionsType>; stdout: SubprocessStdioStream<"1", OptionsType>; stderr: SubprocessStdioStream<"2", OptionsType>; stdio: [...{ -readonly [FdNumber in keyof StdioOptionNormalized<OptionsType["stdio"]>]: SubprocessStdioStream<FdNumber extends string ? FdNumber : string, OptionsType>; }, ...HasIpcOption<OptionsType["ipc"], "node" extends keyof OptionsType ? OptionsType[keyof OptionsType & "node"] : undefined, "ipcInput" extends keyof OptionsTyp… |
Verwijderde leden van klassen of interfaces
Niets gevonden.
Gewijzigde leden van klassen of interfaces
| member | Voor | Na |
|---|---|---|
ExecaError.all | ResultAllProperty<OptionsType["all"], OptionsType> | ResultAll<OptionsType> |
ExecaError.stdio | MapResultStdio<StdioOptionNormalized<OptionsType["stdio"]>, OptionsType> | [...MapResultStdio<StdioOptionNormalized<OptionsType["stdio"]>, OptionsType>, ...OptionsType extends unknown ? HasIpcOption<StricterOptions<OptionsType, Options>["ipc"], "node" extends keyof StricterOptions<OptionsType, Options> ? StricterOptions<OptionsType, Options>["node"] : undefined, "ipcInput"… |
ExecaError.stderr | ResultStdioProperty<"2", "2", IgnoresResultOutput<"2", OptionsType>, OptionsType> | ResultStdio<"2", "2", "2", OptionsType> |
ExecaError.stdout | ResultStdioProperty<"1", "1", IgnoresResultOutput<"1", OptionsType>, OptionsType> | ResultStdio<"1", "1", "1", OptionsType> |
ExecaError.ipcOutput | ResultIpcAsync<FdSpecificOption<OptionsType["buffer"], "ipc">, HasIpcOption<StricterOptions<OptionsType, Options>["ipc"], "ipcInput" extends keyof StricterOptions<OptionsType, Options> ? StricterOptions<OptionsType, Options>["ipcInput"] : undefined, "gracefulCancel" extends keyof StricterOptions<Opt… | OptionsType extends unknown ? ResultIpcAsync<FdSpecificOption<OptionsType["buffer"], "ipc">, HasIpcOption<StricterOptions<OptionsType, Options>["ipc"], "node" extends keyof StricterOptions<OptionsType, Options> ? StricterOptions<OptionsType, Options>["node"] : undefined, "ipcInput" extends keyof Str… |
ExecaError.pipedFrom | Result<Options>[] | (Result<Options> | ExecaError<Options>)[] |
ExecaSyncError.all | ResultAllProperty<OptionsType["all"], OptionsType> | ResultAll<OptionsType> |
ExecaSyncError.stdio | MapResultStdio<StdioOptionNormalized<OptionsType["stdio"]>, OptionsType> | [...MapResultStdio<StdioOptionNormalized<OptionsType["stdio"]>, OptionsType>] |
ExecaSyncError.stderr | ResultStdioProperty<"2", "2", IgnoresResultOutput<"2", OptionsType>, OptionsType> | ResultStdio<"2", "2", "2", OptionsType> |
ExecaSyncError.stdout | ResultStdioProperty<"1", "1", IgnoresResultOutput<"1", OptionsType>, OptionsType> | ResultStdio<"1", "1", "1", OptionsType> |
Nieuw als verouderd gemarkeerd
Niets gevonden.
Gewijzigde vereisten (engines, peer-afhankelijkheden)
| Voor | Na | |
|---|---|---|
engines.node | ^18.19.0 || >=20.5.0 | >=22 |
Geef je AI-agent deze feiten
Vigia is een gratis MCP-server: je coding-agent controleert versies, breaking changes en kwetsbaarheden voordat hij code schrijft. Geen account, geen API-sleutel.
claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp
Toevoegen aan CursorToevoegen aan VS Code★ Ster op GitHub
Elke andere MCP-client
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }Agent-skill (SKILL.md): vertelt de agent wanneer hij Vigia moet gebruiken · GitHub Action voor pull requests
Veelgestelde vragen
Wat zijn de brekende wijzigingen bij het upgraden van execa van 9 naar 10?
Tussen execa 9.6.1 en 10.2.1 vond Vigia 2 verwijderde exports, 8 gewijzigde signaturen en 10 verwijderde of gewijzigde leden van klassen of interfaces.
Wat is verouderd in execa 10?
0 exports of leden zijn in execa 10.2.1 nieuw als verouderd gemarkeerd.
Voor agents
GET https://vigia.coredls.cloud/v1/packages/npm/execa/upgrade?from=9.6.1&to=10.2.1