Upgrading mypy 0.540 to 0.550
Unknown0.540 → 0.550
Fetching 1 release from GitHub…0 / 1
UnknownUpgrade verdict
DepDelta is still reading the notes for this range, so breaking changes can't be ruled out yet.
In plain terms
- DepDelta is still reading the release notes in this range, so it can't rule out breaking changes yet.
- This page updates as the notes come in.
Must act Still reading release notes
DepDelta is still reading the release notes in this range. This updates as they come in.
Adds psutil <5.5.0,>=5.4.0.
Installs 2 packages in all (was 1).
API changes
Generated by DepDelta from published Python source. Not mixed with prose notes.
- changed:
constructor BuildManager(data_dir: str, lib_path: List[str], ignore_prefix: str, source_set: BuildSourceSet, reports: Reports, options: Options, version_id: str, plugin: Plugin, errors: Errors) -> None → constructor BuildManager(data_dir: str, lib_path: List[str], ignore_prefix: str, source_set: BuildSourceSet, reports: Reports, options: Options, version_id: str, plugin: Plugin, errors: Errors, saved_cache: Optional[SavedCache]=…) -> None - changed:
function build(sources: List[BuildSource], options: Options, alt_lib_path: Optional[str]=…, bin_dir: Optional[str]=…) -> BuildResult → function build(sources: List[BuildSource], options: Options, alt_lib_path: Optional[str]=…, bin_dir: Optional[str]=…, saved_cache: Optional[SavedCache]=…) -> BuildResult - changed:
function process_fresh_scc(graph: Graph, scc: List[str]) -> None → function process_fresh_scc(graph: Graph, scc: List[str], manager: BuildManager) -> None - changed:
function write_cache(id: str, path: str, tree: MypyFile, dependencies: List[str], suppressed: List[str], child_modules: List[str], dep_prios: List[int], old_interface_hash: str, source_hash: str, ignore_all: bool, manager: BuildManager) -> str → function write_cache(id: str, path: str, tree: MypyFile, dependencies: List[str], suppressed: List[str], child_modules: List[str], dep_prios: List[int], old_interface_hash: str, source_hash: str, ignore_all: bool, manager: BuildManager) -> Tuple[str, Optional[CacheMeta]] - added:
field State.is_from_saved_cache - added:
function cache_meta_from_dict(meta: Dict[str, Any], data_json: str) -> CacheMeta - added:
function preserve_cache(graph: Graph) -> SavedCache - added:
method BuildManager.add_stats(**kwds: Any) -> None - added:
method BuildManager.stats_summary() -> Mapping[str, object] - added:
variable SavedCache
- changed:
method TypeChecker.find_isinstance_check(n: Expression) -> Tuple[Optional[Dict[Expression, Type]], Optional[Dict[Expression, Type]]] → method TypeChecker.find_isinstance_check(n: Expression) -> Tuple[TypeMap, TypeMap] - changed:
method TypeChecker.push_type_map(type_map: Optional[Dict[Expression, Type]]) -> None → method TypeChecker.push_type_map(type_map: TypeMap) -> None
- changed:
function map_actuals_to_formals(caller_kinds: List[int], caller_names: Optional[Sequence[Optional[str]]], callee_kinds: List[int], callee_names: List[Optional[str]], caller_arg_type: Callable[[int], Type]) -> List[List[int]] → function map_actuals_to_formals(caller_kinds: List[int], caller_names: Optional[Sequence[Optional[str]]], callee_kinds: List[int], callee_names: Sequence[Optional[str]], caller_arg_type: Callable[[int], Type]) -> List[List[int]]
- added:
class GcLogger - added:
class Server - added:
constructor Server(flags: List[str]) -> None - added:
field Server.last_manager - added:
field Server.last_sources - added:
function action(subparser: argparse.ArgumentParser) -> Callable[[ActionFunction], None] - added:
function check_output(response: Dict[str, Any], quiet: bool) -> None - added:
function check_status(data: Dict[str, Any]) -> Tuple[int, str] - added:
function daemonize(func: Callable[[], None], log_file: Optional[str]=…) -> int - added:
function do_check(args: argparse.Namespace) -> None - added:
function do_daemon(args: argparse.Namespace) -> None - added:
function do_hang(args: argparse.Namespace) -> None - added:
function do_help(args: argparse.Namespace) -> None - added:
function do_kill(args: argparse.Namespace) -> None - added:
function do_recheck(args: argparse.Namespace) -> None - added:
function do_restart(args: argparse.Namespace) -> None - added:
function do_start(args: argparse.Namespace) -> None - added:
function do_status(args: argparse.Namespace) -> None - added:
function do_stop(args: argparse.Namespace) -> None - added:
function get_meminfo() -> Mapping[str, float] - added:
function get_status() -> Tuple[int, str] - added:
function main() -> None - added:
function read_status() -> Dict[str, object] - added:
function receive(sock: socket.socket) -> Any - added:
function request(command: str, **kwds: object) -> Dict[str, Any] - added:
function show_stats(response: Mapping[str, object]) -> None - added:
function wait_for_server(timeout: float=…) -> None - added:
method GcLogger.gc_callback(phase: str, info: Mapping[str, int]) -> None - added:
method GcLogger.get_stats() -> Dict[str, float] - added:
method Server.check(sources: List[mypy.build.BuildSource], alt_lib_path: Optional[str]=…) -> Dict[str, Any] - added:
method Server.cmd_check(files: Sequence[str]) -> Dict[str, object] - added:
method Server.cmd_hang() -> Dict[str, object] - added:
method Server.cmd_recheck() -> Dict[str, object] - added:
method Server.cmd_status() -> Dict[str, object] - added:
method Server.cmd_stop() -> Dict[str, object] - added:
method Server.create_listening_socket() -> socket.socket - added:
method Server.run_command(command: str, data: Mapping[str, object]) -> Dict[str, object] - added:
method Server.serve() -> None - added:
variable ActionFunction - added:
variable MiB - added:
variable SOCKET_NAME - added:
variable STATUS_FILE - added:
variable check_parser - added:
variable daemon_parser - added:
variable hang_parser - added:
variable help_parser - added:
variable kill_parser - added:
variable parser - added:
variable recheck_parser - added:
variable restart_parser - added:
variable start_parser - added:
variable status_parser - added:
variable stop_parser - added:
variable subparsers
- removed:
function disallow_any_argument_type(raw_options: str) -> List[str] - removed:
variable disallow_any_options - added:
function create_source_list(files: Sequence[str], options: Options) -> List[BuildSource] - added:
function stat_proxy(path: str) -> os.stat_result - added:
variable orig_stat
- changed:
function callable_name(type: CallableType) -> str → function callable_name(type: FunctionLike) -> Optional[str] - added:
function for_function(callee: CallableType) -> str
- removed:
field ExecStmt.variables1 - removed:
field ExecStmt.variables2 - changed:
constructor ExecStmt(expr: Expression, variables1: Optional[Expression], variables2: Optional[Expression]) -> None → constructor ExecStmt(expr: Expression, globals: Optional[Expression], locals: Optional[Expression]) -> None - changed:
constructor NewTypeExpr(name: str, old_type: mypy.types.Type, line: int) -> None → constructor NewTypeExpr(name: str, old_type: Optional[mypy.types.Type], line: int) -> None - changed:
function check_arg_names(names: List[Optional[str]], nodes: List[T], fail: Callable[[str, T], None], description: str=…) -> None → function check_arg_names(names: Sequence[Optional[str]], nodes: List[T], fail: Callable[[str, T], None], description: str=…) -> None - added:
field ExecStmt.globals - added:
field ExecStmt.locals - added:
field ForStmt.inferred_item_type - added:
variable unary_op_methods
- removed:
class OldHtmlReporter(AbstractReporter) - removed:
method OldHtmlReporter.on_file(tree: MypyFile, type_map: Dict[Expression, Type], options: Options) -> None - removed:
method OldHtmlReporter.on_finish() -> None
- changed:
function find_duplicate(list: List[T]) -> T → function find_duplicate(list: List[T]) -> Optional[T] - changed:
method SemanticAnalyzerPass2.analyze_unbound_tvar(t: Type) -> Tuple[str, TypeVarExpr] → method SemanticAnalyzerPass2.analyze_unbound_tvar(t: Type) -> Optional[Tuple[str, TypeVarExpr]] - changed:
method SemanticAnalyzerPass2.check_enum_call(node: Expression, var_name: str=…) -> Optional[TypeInfo] → method SemanticAnalyzerPass2.check_enum_call(node: Expression, var_name: Optional[str]=…) -> Optional[TypeInfo] - changed:
method SemanticAnalyzerPass2.check_lvalue_validity(node: Union[Expression, SymbolNode], ctx: Context) -> None → method SemanticAnalyzerPass2.check_lvalue_validity(node: Union[Expression, SymbolNode, None], ctx: Context) -> None - changed:
method SemanticAnalyzerPass2.check_namedtuple(node: Expression, var_name: str=…) -> Optional[TypeInfo] → method SemanticAnalyzerPass2.check_namedtuple(node: Expression, var_name: Optional[str]=…) -> Optional[TypeInfo] - changed:
method SemanticAnalyzerPass2.check_typeddict(node: Expression, var_name: str=…) -> Optional[TypeInfo] → method SemanticAnalyzerPass2.check_typeddict(node: Expression, var_name: Optional[str]=…) -> Optional[TypeInfo] - changed:
method SemanticAnalyzerPass2.check_typeddict_classdef(defn: ClassDef, oldfields: List[str]=…) -> Tuple[List[str], List[Type], Set[str]] → method SemanticAnalyzerPass2.check_typeddict_classdef(defn: ClassDef, oldfields: Optional[List[str]]=…) -> Tuple[List[str], List[Type], Set[str]] - changed:
method SemanticAnalyzerPass2.named_type(qualified_name: str, args: List[Type]=…) -> Instance → method SemanticAnalyzerPass2.named_type(qualified_name: str, args: Optional[List[Type]]=…) -> Instance - changed:
method SemanticAnalyzerPass2.named_type_or_none(qualified_name: str, args: List[Type]=…) -> Instance → method SemanticAnalyzerPass2.named_type_or_none(qualified_name: str, args: Optional[List[Type]]=…) -> Optional[Instance] - changed:
method SemanticAnalyzerPass2.normalize_type_alias(node: SymbolTableNode, ctx: Context) -> SymbolTableNode → method SemanticAnalyzerPass2.normalize_type_alias(node: SymbolTableNode, ctx: Context) -> Optional[SymbolTableNode] - changed:
method SemanticAnalyzerPass2.parse_typeddict_args(call: CallExpr, fullname: str) -> Tuple[List[str], List[Type], bool, bool] → method SemanticAnalyzerPass2.parse_typeddict_args(call: CallExpr) -> Tuple[List[str], List[Type], bool, bool] - changed:
method SemanticAnalyzerPass2.prepare_method_signature(func: FuncDef) -> None → method SemanticAnalyzerPass2.prepare_method_signature(func: FuncDef, info: TypeInfo) -> None - changed:
method SemanticAnalyzerPass2.set_original_def(previous: Node, new: FuncDef) -> bool → method SemanticAnalyzerPass2.set_original_def(previous: Optional[Node], new: FuncDef) -> bool - changed:
method SemanticAnalyzerPass2.visit_block_maybe(b: Block) -> None → method SemanticAnalyzerPass2.visit_block_maybe(b: Optional[Block]) -> None
- changed:
method SemanticAnalyzerPass3.builtin_type(name: str, args: List[Type]=…) -> Instance → method SemanticAnalyzerPass3.builtin_type(name: str, args: Optional[List[Type]]=…) -> Instance - added:
method SemanticAnalyzerPass3.analyze_info(info: TypeInfo) -> None - added:
method SemanticAnalyzerPass3.visit_overloaded_func_def(fdef: OverloadedFuncDef) -> None
- removed:
class TypeDependenciesVisitor(TypeVisitor[List[str]]) - removed:
constructor TypeDependenciesVisitor() -> None - removed:
function get_type_dependencies(typ: Type) -> List[str] - removed:
method DependencyVisitor.current() -> str - removed:
method DependencyVisitor.pop() -> None - removed:
method DependencyVisitor.push(component: str) -> str - removed:
method TypeDependenciesVisitor.visit_any(typ: AnyType) -> List[str] - removed:
method TypeDependenciesVisitor.visit_callable_type(typ: CallableType) -> List[str] - removed:
method TypeDependenciesVisitor.visit_deleted_type(typ: DeletedType) -> List[str] - removed:
method TypeDependenciesVisitor.visit_forwardref_type(typ: ForwardRef) -> List[str] - removed:
method TypeDependenciesVisitor.visit_instance(typ: Instance) -> List[str] - removed:
method TypeDependenciesVisitor.visit_none_type(typ: NoneTyp) -> List[str] - removed:
method TypeDependenciesVisitor.visit_partial_type(typ: PartialType) -> List[str] - removed:
method TypeDependenciesVisitor.visit_tuple_type(typ: TupleType) -> List[str] - removed:
method TypeDependenciesVisitor.visit_type_type(typ: TypeType) -> List[str] - removed:
method TypeDependenciesVisitor.visit_type_var(typ: TypeVarType) -> List[str] - removed:
method TypeDependenciesVisitor.visit_typeddict_type(typ: TypedDictType) -> List[str] - removed:
method TypeDependenciesVisitor.visit_unbound_type(typ: UnboundType) -> List[str] - removed:
method TypeDependenciesVisitor.visit_uninhabited_type(typ: UninhabitedType) -> List[str] - removed:
method TypeDependenciesVisitor.visit_union_type(typ: UnionType) -> List[str] - changed:
constructor DependencyVisitor(prefix: str, type_map: Dict[Expression, Type]) -> None → constructor DependencyVisitor(type_map: Dict[Expression, Type], python_version: Tuple[int, int]) -> None - changed:
function get_dependencies(prefix: str, node: Node, type_map: Dict[Expression, Type]) -> Dict[str, Set[str]] → function get_dependencies(target: MypyFile, type_map: Dict[Expression, Type], python_version: Tuple[int, int]) -> Dict[str, Set[str]] - changed:
function get_dependencies_of_target(prefix: str, node: Node, type_map: Dict[Expression, Type]) -> Dict[str, Set[str]] → function get_dependencies_of_target(module_id: str, target: Node, type_map: Dict[Expression, Type], python_version: Tuple[int, int]) -> Dict[str, Set[str]] - added:
class TypeTriggersVisitor(TypeVisitor[List[str]]) - added:
constructor TypeTriggersVisitor() -> None - added:
function dump_all_dependencies(modules: Dict[str, MypyFile], type_map: Dict[Expression, Type], python_version: Tuple[int, int]) -> None - added:
function get_type_triggers(typ: Type) -> List[str] - added:
method DependencyVisitor.add_attribute_dependency(typ: Type, name: str) -> None - added:
method DependencyVisitor.add_attribute_dependency_for_expr(e: Expression, name: str) -> None - added:
method DependencyVisitor.add_iter_dependency(node: Expression) -> None - added:
method DependencyVisitor.add_operator_method_dependency(e: Expression, method: str) -> None - added:
method DependencyVisitor.add_operator_method_dependency_for_type(typ: Type, method: str) -> None - added:
method DependencyVisitor.add_type_dependencies(typ: Type, target: Optional[str]=…) -> None - added:
method DependencyVisitor.attribute_triggers(typ: Type, name: str) -> List[str] - added:
method DependencyVisitor.current_full_target() -> str - added:
method DependencyVisitor.current_scope() -> Optional[Node] - added:
method DependencyVisitor.current_target() -> str - added:
method DependencyVisitor.enter_class_scope(info: TypeInfo) -> str - added:
method DependencyVisitor.enter_file_scope(prefix: str) -> None - added:
method DependencyVisitor.enter_function_scope(fdef: FuncDef) -> str - added:
method DependencyVisitor.get_non_partial_lvalue_type(lvalue: RefExpr) -> Type - added:
method DependencyVisitor.leave_scope() -> None - added:
method DependencyVisitor.process_binary_op(op: str, left: Expression, right: Expression) -> None - added:
method DependencyVisitor.process_lvalue(lvalue: Expression) -> None - added:
method DependencyVisitor.visit_block(o: Block) -> None - added:
method DependencyVisitor.visit_cast_expr(e: CastExpr) -> None - added:
method DependencyVisitor.visit_comparison_expr(e: ComparisonExpr) -> None - added:
method DependencyVisitor.visit_decorator(o: Decorator) -> None - added:
method DependencyVisitor.visit_del_stmt(o: DelStmt) -> None - added:
method DependencyVisitor.visit_dictionary_comprehension(e: DictionaryComprehension) -> None - added:
method DependencyVisitor.visit_for_stmt(o: ForStmt) -> None - added:
method DependencyVisitor.visit_generator_expr(e: GeneratorExpr) -> None - added:
method DependencyVisitor.visit_index_expr(e: IndexExpr) -> None - added:
method DependencyVisitor.visit_op_expr(e: OpExpr) -> None - added:
method DependencyVisitor.visit_operator_assignment_stmt(o: OperatorAssignmentStmt) -> None - added:
method DependencyVisitor.visit_print_stmt(o: PrintStmt) -> None - added:
method DependencyVisitor.visit_star_expr(e: StarExpr) -> None - added:
method DependencyVisitor.visit_type_application(e: TypeApplication) -> None - added:
method DependencyVisitor.visit_unary_expr(e: UnaryExpr) -> None - added:
method DependencyVisitor.visit_with_stmt(o: WithStmt) -> None - added:
method DependencyVisitor.visit_yield_from_expr(e: YieldFromExpr) -> None - added:
method TypeTriggersVisitor.visit_any(typ: AnyType) -> List[str] - added:
method TypeTriggersVisitor.visit_callable_type(typ: CallableType) -> List[str] - added:
method TypeTriggersVisitor.visit_deleted_type(typ: DeletedType) -> List[str] - added:
method TypeTriggersVisitor.visit_forwardref_type(typ: ForwardRef) -> List[str] - added:
method TypeTriggersVisitor.visit_instance(typ: Instance) -> List[str] - added:
method TypeTriggersVisitor.visit_none_type(typ: NoneTyp) -> List[str] - added:
method TypeTriggersVisitor.visit_overloaded(typ: Overloaded) -> List[str] - added:
method TypeTriggersVisitor.visit_partial_type(typ: PartialType) -> List[str] - added:
method TypeTriggersVisitor.visit_tuple_type(typ: TupleType) -> List[str] - added:
method TypeTriggersVisitor.visit_type_type(typ: TypeType) -> List[str] - added:
method TypeTriggersVisitor.visit_type_var(typ: TypeVarType) -> List[str] - added:
method TypeTriggersVisitor.visit_typeddict_type(typ: TypedDictType) -> List[str] - added:
method TypeTriggersVisitor.visit_unbound_type(typ: UnboundType) -> List[str] - added:
method TypeTriggersVisitor.visit_uninhabited_type(typ: UninhabitedType) -> List[str] - added:
method TypeTriggersVisitor.visit_union_type(typ: UnionType) -> List[str]
- changed:
function get_all_dependencies(manager: BuildManager, graph: Dict[str, State]) -> Dict[str, Set[str]] → function get_all_dependencies(manager: BuildManager, graph: Dict[str, State], options: Options) -> Dict[str, Set[str]] - changed:
function update_dependencies(new_modules: Dict[str, MypyFile], deps: Dict[str, Set[str]], graph: Dict[str, State]) -> None → function update_dependencies(new_modules: Dict[str, MypyFile], deps: Dict[str, Set[str]], graph: Dict[str, State], options: Options) -> None - changed:
function update_deps(module_id: str, nodes: List[DeferredNode], graph: Dict[str, State], deps: Dict[str, Set[str]]) -> None → function update_deps(module_id: str, nodes: List[DeferredNode], graph: Dict[str, State], deps: Dict[str, Set[str]], options: Options) -> None
- removed:
function generate_html_index(output_dir: str) -> None - removed:
function generate_html_report(tree: MypyFile, path: str, type_map: Dict[Expression, Type], output_dir: str) -> None - removed:
variable html_files
- changed:
function usage() -> None → function usage(exit_nonzero: bool=…) -> None
- changed:
constructor TypeAnalyser(lookup_func: Callable[[str, Context], SymbolTableNode], lookup_fqn_func: Callable[[str], SymbolTableNode], tvar_scope: Optional[TypeVarScope], fail_func: Callable[[str, Context], None], note_func: Callable[[str, Context], None], plugin: Plugin, options: Options, is_typeshed_stub: bool, *, aliasing: bool=…, allow_tuple_literal: bool=…, allow_unnormalized: bool=…, third_pas… → constructor TypeAnalyser(lookup_func: Callable[[str, Context], Optional[SymbolTableNode]], lookup_fqn_func: Callable[[str], SymbolTableNode], tvar_scope: Optional[TypeVarScope], fail_func: Callable[[str, Context], None], note_func: Callable[[str, Context], None], plugin: Plugin, options: Options, is_typeshed_stub: bool, *, aliasing: bool=…, allow_tuple_literal: bool=…, allow_unnormalized: bool=…,… - changed:
constructor TypeAnalyserPass3(lookup_func: Callable[[str, Context], SymbolTableNode], lookup_fqn_func: Callable[[str], SymbolTableNode], fail_func: Callable[[str, Context], None], note_func: Callable[[str, Context], None], plugin: Plugin, options: Options, is_typeshed_stub: bool, indicator: Dict[str, bool]) -> None → constructor TypeAnalyserPass3(lookup_func: Callable[[str, Context], Optional[SymbolTableNode]], lookup_fqn_func: Callable[[str], SymbolTableNode], fail_func: Callable[[str, Context], None], note_func: Callable[[str, Context], None], plugin: Plugin, options: Options, is_typeshed_stub: bool, indicator: Dict[str, bool]) -> None - changed:
constructor TypeVariableQuery(lookup: Callable[[str, Context], SymbolTableNode], scope: TypeVarScope, *, include_callables: bool=…, include_bound_tvars: bool=…) -> None → constructor TypeVariableQuery(lookup: Callable[[str, Context], Optional[SymbolTableNode]], scope: TypeVarScope, *, include_callables: bool=…, include_bound_tvars: bool=…) -> None - changed:
function analyze_type_alias(node: Expression, lookup_func: Callable[[str, Context], SymbolTableNode], lookup_fqn_func: Callable[[str], SymbolTableNode], tvar_scope: TypeVarScope, fail_func: Callable[[str, Context], None], note_func: Callable[[str, Context], None], plugin: Plugin, options: Options, is_typeshed_stub: bool, allow_unnormalized: bool=…, in_dynamic_func: bool=…, global_scope: bool=…, w… → function analyze_type_alias(node: Expression, lookup_func: Callable[[str, Context], Optional[SymbolTableNode]], lookup_fqn_func: Callable[[str], SymbolTableNode], tvar_scope: TypeVarScope, fail_func: Callable[[str, Context], None], note_func: Callable[[str, Context], None], plugin: Plugin, options: Options, is_typeshed_stub: bool, allow_unnormalized: bool=…, in_dynamic_func: bool=…, global_scope:… - added:
method TypeAnalyserPass3.visit_overloaded(t: Overloaded) -> None
- removed:
class InterfaceTypeFixture(TypeFixture) - removed:
class TypeFixture - removed:
constructor InterfaceTypeFixture() -> None - removed:
constructor TypeFixture(variance: int=…) -> None - removed:
method TypeFixture.callable(*a: Type) -> CallableType - removed:
method TypeFixture.callable_default(min_args: int, *a: Type) -> CallableType - removed:
method TypeFixture.callable_type(*a: Type) -> CallableType - removed:
method TypeFixture.callable_var_arg(min_args: int, *a: Type) -> CallableType - removed:
method TypeFixture.make_type_info(name: str, module_name: Optional[str]=…, is_abstract: bool=…, mro: Optional[List[TypeInfo]]=…, bases: Optional[List[Instance]]=…, typevars: Optional[List[str]]=…, variances: Optional[List[int]]=…) -> TypeInfo
- changed:
constructor CallableType(arg_types: List[Type], arg_kinds: List[int], arg_names: List[Optional[str]], ret_type: Type, fallback: Instance, name: Optional[str]=…, definition: Optional[SymbolNode]=…, variables: Optional[List[TypeVarDef]]=…, line: int=…, column: int=…, is_ellipsis_args: bool=…, implicit: bool=…, is_classmethod_class: bool=…, special_sig: Optional[str]=…, from_type_type: bool=…, bound… → constructor CallableType(arg_types: List[Type], arg_kinds: List[int], arg_names: Sequence[Optional[str]], ret_type: Type, fallback: Instance, name: Optional[str]=…, definition: Optional[SymbolNode]=…, variables: Optional[List[TypeVarDef]]=…, line: int=…, column: int=…, is_ellipsis_args: bool=…, implicit: bool=…, is_classmethod_class: bool=…, special_sig: Optional[str]=…, from_type_type: bool=…, b… - changed:
constructor TypeVarDef(name: str, id: Union[TypeVarId, int], values: List[Type], upper_bound: Type, variance: int=…, line: int=…, column: int=…) -> None → constructor TypeVarDef(name: str, fullname: str, id: Union[TypeVarId, int], values: List[Type], upper_bound: Type, variance: int=…, line: int=…, column: int=…) -> None - added:
field TypeVarDef.fullname - added:
field TypeVarType.fullname - added:
field UninhabitedType.ambiguous