Vigia

ترقية execa من 9.x إلى 10.x

مقارنة الواجهة العامة لـ execa بين 9.6.1 و10.2.1، محسوبة تلقائيًا من أنواع TypeScript. التوقيع المعدّل تغيير محتمل غير متوافق، وليس أمرًا مؤكدًا.

الملخص

مسارات الاستيراد المحذوفة0
الصادرات المحذوفة2
التوقيعات المعدّلة8
أعضاء الأصناف أو الواجهات المحذوفة0
أعضاء الأصناف أو الواجهات المعدّلة10
موقوفة حديثًا0
تغييرات المتطلبات (engines واعتماديات peer)1
صادرات جديدة0

الصادرات المحذوفة

importexportkindقبل
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>

التوقيعات المعدّلة

exportقبلبعد
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 · 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…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 · 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…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…

أعضاء الأصناف أو الواجهات المحذوفة

لم يُكتشف شيء.

أعضاء الأصناف أو الواجهات المعدّلة

memberقبلبعد
ExecaError.allResultAllProperty<OptionsType["all"], OptionsType>ResultAll<OptionsType>
ExecaError.stdioMapResultStdio<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.stderrResultStdioProperty<"2", "2", IgnoresResultOutput<"2", OptionsType>, OptionsType>ResultStdio<"2", "2", "2", OptionsType>
ExecaError.stdoutResultStdioProperty<"1", "1", IgnoresResultOutput<"1", OptionsType>, OptionsType>ResultStdio<"1", "1", "1", OptionsType>
ExecaError.ipcOutputResultIpcAsync<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.pipedFromResult<Options>[](Result<Options> | ExecaError<Options>)[]
ExecaSyncError.allResultAllProperty<OptionsType["all"], OptionsType>ResultAll<OptionsType>
ExecaSyncError.stdioMapResultStdio<StdioOptionNormalized<OptionsType["stdio"]>, OptionsType>[...MapResultStdio<StdioOptionNormalized<OptionsType["stdio"]>, OptionsType>]
ExecaSyncError.stderrResultStdioProperty<"2", "2", IgnoresResultOutput<"2", OptionsType>, OptionsType>ResultStdio<"2", "2", "2", OptionsType>
ExecaSyncError.stdoutResultStdioProperty<"1", "1", IgnoresResultOutput<"1", OptionsType>, OptionsType>ResultStdio<"1", "1", "1", OptionsType>

موقوفة حديثًا

لم يُكتشف شيء.

تغييرات المتطلبات (engines واعتماديات peer)

قبلبعد
engines.node^18.19.0 || >=20.5.0>=22

زوّد وكيل الذكاء الاصطناعي بهذه البيانات

Vigia خادم MCP مجاني: يتحقق وكيل البرمجة لديك من الإصدارات والتغييرات غير المتوافقة والثغرات قبل أن يكتب الشيفرة. بلا تسجيل ولا مفتاح API.

claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp

أضِف إلى Cursorأضِف إلى VS Code★ نجمة على GitHub

أي عميل MCP آخر
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }

مهارة للوكلاء (SKILL.md): تخبر الوكيل متى يستخدم Vigia · GitHub Action لطلبات السحب

الأسئلة الشائعة

ما التغييرات غير المتوافقة عند ترقية execa من 9 إلى 10؟

بين execa 9.6.1 و10.2.1 وجد Vigia عدد 2 من الصادرات المحذوفة، و8 من التوقيعات المعدّلة، و10 من أعضاء الأصناف أو الواجهات المحذوفة أو المعدّلة.

ما الذي أصبح موقوفًا في execa 10؟

عُلِّم 0 من الصادرات أو الأعضاء حديثًا على أنها موقوفة في execa 10.2.1.

للوكلاء

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