Vigia

将 argparse 从 2.x 升级到 3.x

根据 TypeScript 类型自动比较 argparse 2.0.1 与 3.0.2 的公开 API。签名变化表示可能存在不兼容变更,并非确定结论。

概要

已删除的导入路径0
已删除的导出1
已修改的签名18
已删除的类或接口成员1
已修改的类或接口成员45
新增弃用0
要求变化(engines、peer 依赖)0
新增导出24

已删除的导出

importexportkind之前
argparseSubParserclassclass

已修改的签名

export之前之后
argparse · Actionclassinterface
argparse · PARSERstring"A..."
argparse · OPTIONALstring"?"
argparse · SUPPRESSstring"==SUPPRESS=="
argparse · Namespaceclassinterface
argparse · REMAINDERstring"..."
argparse · ONE_OR_MOREstring"+"
argparse · ZERO_OR_MOREstring"*"
argparse · ArgumentErrorclassinterface
argparse · ArgumentGroupclassinterface
argparse · HelpFormatterclassinterface
argparse · ArgumentParserclassinterface
argparse · ArgumentTypeErrorclassinterface
argparse · RawTextHelpFormatterclassinterface
argparse · BooleanOptionalActionclassinterface
argparse · ActionConstructorOptionsnumber & { _: "ActionConstructorOptions"; }interface
argparse · RawDescriptionHelpFormatterclassinterface
argparse · ArgumentDefaultsHelpFormatterclassinterface

已删除的类或接口成员

memberimport之前
ArgumentGroup.add_argument_groupargparse(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.typestring | Function | undefinedArgumentType | undefined
ArgumentOptions.constanyunknown
ArgumentOptions.nargsstring | number | undefinedNargs | undefined
ArgumentOptions.actionstring | (new (options: ActionConstructorOptions) => Action) | undefinedstring | ActionClass | undefined
ArgumentOptions.choicesstring | string[] | undefinedstring | object | readonly unknown[] | undefined
ArgumentOptions.defaultanyunknown
SubparserOptions.actionstring | undefinedstring | ActionClass | undefined
SubparserOptions.parser_class(new () => any) | undefinedArgumentParserClass | undefined
ArgumentTypeError.constructor(message: string): ArgumentTypeError
ArgumentGroupOptions.argument_defaultanyunknown
RawTextHelpFormatter.constructor(): RawTextHelpFormatter
ArgumentParserOptions.formatter_class(new () => HelpFormatter | ArgumentDefaultsHelpFormatter | RawDescriptionHelpFormatter | RawTextHelpFormatter) | undefinedHelpFormatterFactory | undefined
ArgumentParserOptions.argument_defaultanyunknown
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) | undefinedHelpFormatterFactory | undefined
SubArgumentParserOptions.argument_defaultanyunknown
RawDescriptionHelpFormatter.constructor(): RawDescriptionHelpFormatter
ArgumentDefaultsHelpFormatter.constructor(): ArgumentDefaultsHelpFormatter

新增弃用

未发现。

要求变化(engines、peer 依赖)

未发现。

新增导出 (24)
importexportkind
argparseNargstype
argparseFileTypeinterface
argparseWritableinterface
argparseActionClassinterface
argparseArgumentTypetype
argparseFileTypeResultinterface
argparseFileTypeOptionsinterface
argparseActionsContainerinterface
argparseSubparsersActioninterface
argparseActionConstructorinterface
argparseHelpFormatterClassinterface
argparseArgumentParserClassinterface
argparseFileTypeConstructorinterface
argparseHelpFormatterFactorytype
argparseHelpFormatterOptionsinterface
argparseNamespaceConstructorinterface
argparseMutuallyExclusiveGroupinterface
argparseArgumentErrorConstructorinterface
argparseHelpFormatterConstructorinterface
argparseMetavarTypeHelpFormatterinterface
argparseArgumentParserConstructorinterface
argparseArgumentTypeErrorConstructorinterface
argparseMutuallyExclusiveGroupOptionsinterface
argparseBooleanOptionalActionConstructorinterface

常见问题

将 argparse 从 2 升级到 3 有哪些不兼容变更?

在 argparse 2.0.1 与 3.0.2 之间,Vigia 发现 1 个已删除的导出、18 个已修改的签名,以及 46 个已删除或修改的类或接口成员。

argparse 3 中弃用了哪些内容?

argparse 3.0.2 中有 0 个导出或成员新被标记为弃用。

供智能体使用

GET https://vigia.coredls.cloud/v1/packages/npm/argparse/upgrade?from=2.0.1&to=3.0.2