将 argparse 从 2.x 升级到 3.x
根据 TypeScript 类型自动比较 argparse 2.0.1 与 3.0.4 的公开 API。签名变化表示可能存在不兼容变更,并非确定结论。
概要
| 已删除的导入路径 | 0 |
|---|---|
| 已删除的导出 | 1 |
| 已修改的签名 | 18 |
| 已删除的类或接口成员 | 1 |
| 已修改的类或接口成员 | 45 |
| 新增弃用 | 0 |
| 要求变化(engines、peer 依赖) | 0 |
| 新增导出 | 24 |
已删除的导出
| import | export | kind | 之前 |
|---|---|---|---|
argparse | SubParser | class | class |
已修改的签名
| export | 之前 | 之后 |
|---|---|---|
argparse · Action | class | interface |
argparse · PARSER | string | "A..." |
argparse · OPTIONAL | string | "?" |
argparse · SUPPRESS | string | "==SUPPRESS==" |
argparse · Namespace | class | interface |
argparse · REMAINDER | string | "..." |
argparse · ONE_OR_MORE | string | "+" |
argparse · ZERO_OR_MORE | string | "*" |
argparse · ArgumentError | class | interface |
argparse · ArgumentGroup | class | interface |
argparse · HelpFormatter | class | interface |
argparse · ArgumentParser | class | interface |
argparse · ArgumentTypeError | class | interface |
argparse · RawTextHelpFormatter | class | interface |
argparse · BooleanOptionalAction | class | interface |
argparse · ActionConstructorOptions | number & { _: "ActionConstructorOptions"; } | interface |
argparse · RawDescriptionHelpFormatter | class | interface |
argparse · ArgumentDefaultsHelpFormatter | class | interface |
已删除的类或接口成员
| member | import | 之前 |
|---|---|---|
ArgumentGroup.add_argument_group | argparse | (options?: ArgumentGroupOptions | undefined): ArgumentGroup |
已修改的类或接口成员
| member | 之前 | 之后 |
|---|---|---|
Action.call | (parser: ArgumentParser, namespace: Namespace, values: string | string[], optionString: string | null): void | (parser: ArgumentParser, namespace: Namespace, values: unknown, option_string?: string | undefined): void |
Action.constructor | (options: ActionConstructorOptions): Action | |
Namespace.constructor | (options: object): Namespace | |
ArgumentError.constructor | (argument: Action, message: string): ArgumentError | |
ArgumentGroup.constructor | (): ArgumentGroup | |
ArgumentGroup.get_default | (dest: string): any | (dest: string): unknown |
ArgumentGroup.add_argument | (arg: string, options?: ArgumentOptions | undefined): void | (arg1: string, arg2: string, options?: ArgumentOptions | undefined): void | (name: string, ...names: string[]): Action | (name: string, ...namesAndOptions: [...string[], ArgumentOptions]): Action |
ArgumentGroup.set_defaults | (options?: {} | undefined): void | (options: object): void |
ArgumentGroup.add_mutually_exclusive_group | (options?: { required: boolean; } | undefined): ArgumentGroup | (options?: MutuallyExclusiveGroupOptions | undefined): MutuallyExclusiveGroup |
HelpFormatter.constructor | (): HelpFormatter | |
ArgumentParser.exit | (status: number, message: string): void | (status?: number | undefined, message?: string | undefined): void |
ArgumentParser.error | (err: string | Error): void | (message: string): void |
ArgumentParser.parse_args | (args?: string[] | undefined, ns?: object | Namespace | undefined): any | <T extends object = Namespace>(args?: string[] | undefined, namespace?: T | undefined): T |
ArgumentParser.print_help | (): void | (file?: Writable | undefined): void |
ArgumentParser.constructor | (options?: ArgumentParserOptions | undefined): ArgumentParser | |
ArgumentParser.get_default | (dest: string): any | (dest: string): unknown |
ArgumentParser.print_usage | (): void | (file?: Writable | undefined): void |
ArgumentParser.add_argument | (arg: string, options?: ArgumentOptions | undefined): void | (arg1: string, arg2: string, options?: ArgumentOptions | undefined): void | (name: string, ...names: string[]): Action | (name: string, ...namesAndOptions: [...string[], ArgumentOptions]): Action |
ArgumentParser.set_defaults | (options?: {} | undefined): void | (options: object): void |
ArgumentParser.add_subparsers | (options?: SubparserOptions | undefined): SubParser | (options?: SubparserOptions | undefined): SubparsersAction |
ArgumentParser.parse_known_args | (args?: string[] | undefined, ns?: object | Namespace | undefined): any[] | <T extends object = Namespace>(args?: string[] | undefined, namespace?: T | undefined): [T, string[]] |
ArgumentParser.add_argument_group | (options?: ArgumentGroupOptions | undefined): ArgumentGroup | (options?: ArgumentGroupOptions | undefined): ArgumentGroup | (title?: string | undefined, description?: string | undefined): ArgumentGroup |
ArgumentParser.parse_intermixed_args | (args?: string[] | undefined, ns?: object | Namespace | undefined): any | <T extends object = Namespace>(args?: string[] | undefined, namespace?: T | undefined): T |
ArgumentParser.convert_arg_line_to_args | (argLine: string): string[] | (arg_line: string): string[] |
ArgumentParser.parse_known_intermixed_args | (args?: string[] | undefined, ns?: object | Namespace | undefined): any[] | <T extends object = Namespace>(args?: string[] | undefined, namespace?: T | undefined): [T, string[]] |
ArgumentParser.add_mutually_exclusive_group | (options?: { required: boolean; } | undefined): ArgumentGroup | (options?: MutuallyExclusiveGroupOptions | undefined): MutuallyExclusiveGroup |
ArgumentOptions.type | string | Function | undefined | ArgumentType | undefined |
ArgumentOptions.const | any | unknown |
ArgumentOptions.nargs | string | number | undefined | Nargs | undefined |
ArgumentOptions.action | string | (new (options: ActionConstructorOptions) => Action) | undefined | string | ActionClass | undefined |
ArgumentOptions.choices | string | string[] | undefined | string | object | readonly unknown[] | undefined |
ArgumentOptions.default | any | unknown |
SubparserOptions.action | string | undefined | string | ActionClass | undefined |
SubparserOptions.parser_class | (new () => any) | undefined | ArgumentParserClass | undefined |
ArgumentTypeError.constructor | (message: string): ArgumentTypeError | |
ArgumentGroupOptions.argument_default | any | unknown |
RawTextHelpFormatter.constructor | (): RawTextHelpFormatter | |
ArgumentParserOptions.formatter_class | (new () => HelpFormatter | ArgumentDefaultsHelpFormatter | RawDescriptionHelpFormatter | RawTextHelpFormatter) | undefined | HelpFormatterFactory | undefined |
ArgumentParserOptions.argument_default | any | unknown |
BooleanOptionalAction.call | (parser: ArgumentParser, namespace: Namespace, values: string | string[], optionString: string | null): void | (parser: ArgumentParser, namespace: Namespace, values: unknown, option_string?: string | undefined): void |
BooleanOptionalAction.constructor | (options: ActionConstructorOptions): BooleanOptionalAction | |
SubArgumentParserOptions.formatter_class | (new () => HelpFormatter | ArgumentDefaultsHelpFormatter | RawDescriptionHelpFormatter | RawTextHelpFormatter) | undefined | HelpFormatterFactory | undefined |
SubArgumentParserOptions.argument_default | any | unknown |
RawDescriptionHelpFormatter.constructor | (): RawDescriptionHelpFormatter | |
ArgumentDefaultsHelpFormatter.constructor | (): ArgumentDefaultsHelpFormatter | |
新增弃用
未发现。
要求变化(engines、peer 依赖)
未发现。
新增导出 (24)
| import | export | kind |
|---|---|---|
argparse | Nargs | type |
argparse | FileType | interface |
argparse | Writable | interface |
argparse | ActionClass | interface |
argparse | ArgumentType | type |
argparse | FileTypeResult | interface |
argparse | FileTypeOptions | interface |
argparse | ActionsContainer | interface |
argparse | SubparsersAction | interface |
argparse | ActionConstructor | interface |
argparse | HelpFormatterClass | interface |
argparse | ArgumentParserClass | interface |
argparse | FileTypeConstructor | interface |
argparse | HelpFormatterFactory | type |
argparse | HelpFormatterOptions | interface |
argparse | NamespaceConstructor | interface |
argparse | MutuallyExclusiveGroup | interface |
argparse | ArgumentErrorConstructor | interface |
argparse | HelpFormatterConstructor | interface |
argparse | MetavarTypeHelpFormatter | interface |
argparse | ArgumentParserConstructor | interface |
argparse | ArgumentTypeErrorConstructor | interface |
argparse | MutuallyExclusiveGroupOptions | interface |
argparse | BooleanOptionalActionConstructor | interface |
把这些数据交给你的 AI 智能体
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" } } }常见问题
将 argparse 从 2 升级到 3 有哪些不兼容变更?
在 argparse 2.0.1 与 3.0.4 之间,Vigia 发现 1 个已删除的导出、18 个已修改的签名,以及 46 个已删除或修改的类或接口成员。
argparse 3 中弃用了哪些内容?
argparse 3.0.4 中有 0 个导出或成员新被标记为弃用。
供智能体使用
GET https://vigia.coredls.cloud/v1/packages/npm/argparse/upgrade?from=2.0.1&to=3.0.4