Skip to content

Upgrading mypy 0.521 to 0.530

Unknown0.521 → 0.530

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.

  • 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.
Still reading release notes

DepDelta is still reading the release notes in this range. This updates as they come in.

Moves typed-ast 1.0.4 → 1.1.2. Your build may pick other versions.

Generated by DepDelta from published Python source. Not mixed with prose notes.

  • changed: function apply_generic_arguments(callable: CallableType, types: List[Type], msg: MessageBuilder, context: Context) -> CallableType → function apply_generic_arguments(callable: CallableType, orig_types: Sequence[Optional[Type]], msg: MessageBuilder, context: Context) -> CallableType
  • changed: method ConditionalTypeBinder.assign_type(expr: Expression, type: Type, declared_type: Type, restrict_any: bool=…) -> None → method ConditionalTypeBinder.assign_type(expr: Expression, type: Type, declared_type: Optional[Type], restrict_any: bool=…) -> None
  • changed: constructor State(id: Optional[str], path: Optional[str], source: Optional[str], manager: BuildManager, caller_state: State=…, caller_line: int=…, ancestor_for: State=…, root_source: bool=…) -> None → constructor State(id: Optional[str], path: Optional[str], source: Optional[str], manager: BuildManager, caller_state: Optional[State]=…, caller_line: int=…, ancestor_for: Optional[State]=…, root_source: bool=…) -> None
  • changed: function build(sources: List[BuildSource], options: Options, alt_lib_path: str=…, bin_dir: str=…) -> BuildResult → function build(sources: List[BuildSource], options: Options, alt_lib_path: Optional[str]=…, bin_dir: Optional[str]=…) -> BuildResult
  • changed: function find_module(id: str, lib_path_arg: Iterable[str]) -> str → function find_module(id: str, lib_path_arg: Iterable[str]) -> Optional[str]
  • changed: function validate_meta(meta: Optional[CacheMeta], id: str, path: str, manager: BuildManager) -> Optional[CacheMeta] → function validate_meta(meta: Optional[CacheMeta], id: str, path: Optional[str], ignore_all: bool, manager: BuildManager) -> Optional[CacheMeta]
  • 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, 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) -> str
  • added: class FreshState(State)
  • added: field FreshState.meta
  • changed: function is_node_static(node: Node) -> Optional[bool] → function is_node_static(node: Optional[Node]) -> Optional[bool]
  • changed: function partition_by_callable(type: Optional[Type]) -> Tuple[List[Type], List[Type]] → function partition_by_callable(type: Type) -> Tuple[List[Type], List[Type]]
  • changed: method TypeChecker.accept_loop(body: Statement, else_body: Statement=…, *, exit_condition: Expression=…) -> None → method TypeChecker.accept_loop(body: Statement, else_body: Optional[Statement]=…, *, exit_condition: Optional[Expression]=…) -> None
  • changed: method TypeChecker.check_async_with_item(expr: Expression, target: Expression, infer_lvalue_type: bool) -> None → method TypeChecker.check_async_with_item(expr: Expression, target: Optional[Expression], infer_lvalue_type: bool) -> None
  • changed: method TypeChecker.check_compatibility_classvar_super(node: Var, base: TypeInfo, base_node: Node) -> bool → method TypeChecker.check_compatibility_classvar_super(node: Var, base: TypeInfo, base_node: Optional[Node]) -> bool
  • changed: method TypeChecker.check_func_def(defn: FuncItem, typ: CallableType, name: str) -> None → method TypeChecker.check_func_def(defn: FuncItem, typ: CallableType, name: Optional[str]) -> None
  • changed: method TypeChecker.check_func_item(defn: FuncItem, type_override: CallableType=…, name: str=…) -> None → method TypeChecker.check_func_item(defn: FuncItem, type_override: Optional[CallableType]=…, name: Optional[str]=…) -> None
  • changed: method TypeChecker.check_getattr_method(typ: CallableType, context: Context) -> None → method TypeChecker.check_getattr_method(typ: CallableType, context: Context, name: str) -> None
  • changed: method TypeChecker.check_method_or_accessor_override_for_base(defn: FuncBase, base: TypeInfo) -> None → method TypeChecker.check_method_or_accessor_override_for_base(defn: Union[FuncBase, Decorator], base: TypeInfo) -> None
  • changed: method TypeChecker.check_method_override(defn: FuncBase) -> None → method TypeChecker.check_method_override(defn: Union[FuncBase, Decorator]) -> None
  • changed: method TypeChecker.check_method_override_for_base_with_name(defn: FuncBase, name: str, base: TypeInfo) -> None → method TypeChecker.check_method_override_for_base_with_name(defn: Union[FuncBase, Decorator], name: str, base: TypeInfo) -> None
  • changed: method TypeChecker.check_multi_assignment(lvalues: List[Lvalue], rvalue: Expression, context: Context, infer_lvalue_type: bool=…, msg: str=…) -> None → method TypeChecker.check_multi_assignment(lvalues: List[Lvalue], rvalue: Expression, context: Context, infer_lvalue_type: bool=…, msg: Optional[str]=…) -> None
  • changed: method TypeChecker.check_second_pass(todo: List[DeferredNode]=…) -> bool → method TypeChecker.check_second_pass(todo: Optional[List[DeferredNode]]=…) -> bool
  • changed: method TypeChecker.check_simple_assignment(lvalue_type: Type, rvalue: Expression, context: Context, msg: str=…, lvalue_name: str=…, rvalue_name: str=…) -> Type → method TypeChecker.check_simple_assignment(lvalue_type: Optional[Type], rvalue: Expression, context: Context, msg: str=…, lvalue_name: str=…, rvalue_name: str=…) -> Type
  • changed: method TypeChecker.check_subtype(subtype: Type, supertype: Type, context: Context, msg: str=…, subtype_label: str=…, supertype_label: str=…) -> bool → method TypeChecker.check_subtype(subtype: Type, supertype: Type, context: Context, msg: str=…, subtype_label: Optional[str]=…, supertype_label: Optional[str]=…) -> bool
  • changed: method TypeChecker.check_with_item(expr: Expression, target: Expression, infer_lvalue_type: bool) -> None → method TypeChecker.check_with_item(expr: Expression, target: Optional[Expression], infer_lvalue_type: bool) -> None
  • changed: method TypeChecker.note(msg: str, context: Context) -> None → method TypeChecker.note(msg: str, context: Context, offset: int=…) -> None
  • changed: method TypeChecker.temp_node(t: Type, context: Context=…) -> TempNode → method TypeChecker.temp_node(t: Type, context: Optional[Context]=…) -> TempNode
  • added: field TypeChecker.inferred_attribute_types
  • added: field TypeChecker.partial_reported
  • added: function is_static(func: Union[FuncBase, Decorator]) -> bool
  • added: function is_typed_callable(c: Optional[Type]) -> bool
  • added: function is_untyped_decorator(typ: Optional[Type]) -> bool
  • added: method TypeChecker.check_for_missing_annotations(fdef: FuncItem) -> None
  • added: method TypeChecker.check_for_untyped_decorator(func: FuncDef, dec_type: Type, dec_expr: Expression) -> None
  • added: method TypeChecker.check_protocol_variance(defn: ClassDef) -> None
  • added: method TypeChecker.enter_attribute_inference_context() -> Iterator[None]
  • changed: function has_erased_component(t: Type) -> bool → function has_erased_component(t: Optional[Type]) -> bool
  • changed: function map_actuals_to_formals(caller_kinds: List[int], caller_names: List[str], callee_kinds: List[int], callee_names: List[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: List[Optional[str]], caller_arg_type: Callable[[int], Type]) -> List[List[int]]
  • changed: method ExpressionChecker.accept(node: Expression, type_context: Type=…, allow_none_return: bool=…, always_allow_any: bool=…) -> Type → method ExpressionChecker.accept(node: Expression, type_context: Optional[Type]=…, allow_none_return: bool=…, always_allow_any: bool=…) -> Type
  • changed: method ExpressionChecker.apply_generic_arguments(callable: CallableType, types: List[Type], context: Context) -> CallableType → method ExpressionChecker.apply_generic_arguments(callable: CallableType, types: Sequence[Optional[Type]], context: Context) -> CallableType
  • changed: method ExpressionChecker.apply_inferred_arguments(callee_type: CallableType, inferred_args: List[Type], context: Context) -> CallableType → method ExpressionChecker.apply_inferred_arguments(callee_type: CallableType, inferred_args: Sequence[Optional[Type]], context: Context) -> CallableType
  • changed: method ExpressionChecker.check_argument_count(callee: CallableType, actual_types: List[Type], actual_kinds: List[int], actual_names: List[str], formal_to_actual: List[List[int]], context: Context, messages: Optional[MessageBuilder]) -> bool → method ExpressionChecker.check_argument_count(callee: CallableType, actual_types: List[Type], actual_kinds: List[int], actual_names: Optional[Sequence[Optional[str]]], formal_to_actual: List[List[int]], context: Optional[Context], messages: Optional[MessageBuilder]) -> bool
  • changed: method ExpressionChecker.check_argument_types(arg_types: List[Type], arg_kinds: List[int], callee: CallableType, formal_to_actual: List[List[int]], context: Context, messages: MessageBuilder=…, check_arg: ArgChecker=…) -> None → method ExpressionChecker.check_argument_types(arg_types: List[Type], arg_kinds: List[int], callee: CallableType, formal_to_actual: List[List[int]], context: Context, messages: Optional[MessageBuilder]=…, check_arg: Optional[ArgChecker]=…) -> None
  • changed: method ExpressionChecker.check_call(callee: Type, args: List[Expression], arg_kinds: List[int], context: Context, arg_names: List[str]=…, callable_node: Expression=…, arg_messages: MessageBuilder=…, callable_name: Optional[str]=…, object_type: Optional[Type]=…) -> Tuple[Type, Type] → method ExpressionChecker.check_call(callee: Type, args: List[Expression], arg_kinds: List[int], context: Context, arg_names: Optional[Sequence[Optional[str]]]=…, callable_node: Optional[Expression]=…, arg_messages: Optional[MessageBuilder]=…, callable_name: Optional[str]=…, object_type: Optional[Type]=…) -> Tuple[Type, Type]
  • changed: method ExpressionChecker.check_typeddict_call(callee: TypedDictType, arg_kinds: List[int], arg_names: List[str], args: List[Expression], context: Context) -> Type → method ExpressionChecker.check_typeddict_call(callee: TypedDictType, arg_kinds: List[int], arg_names: Sequence[Optional[str]], args: List[Expression], context: Context) -> Type
  • changed: method ExpressionChecker.erased_signature_similarity(arg_types: List[Type], arg_kinds: List[int], arg_names: List[str], callee: CallableType, context: Context) -> int → method ExpressionChecker.erased_signature_similarity(arg_types: List[Type], arg_kinds: List[int], arg_names: Optional[Sequence[Optional[str]]], callee: CallableType, context: Context) -> int
  • changed: method ExpressionChecker.find_typeddict_context(context: Type) -> Optional[TypedDictType] → method ExpressionChecker.find_typeddict_context(context: Optional[Type]) -> Optional[TypedDictType]
  • changed: method ExpressionChecker.infer_function_type_arguments_pass2(callee_type: CallableType, args: List[Expression], arg_kinds: List[int], formal_to_actual: List[List[int]], inferred_args: List[Type], context: Context) -> Tuple[CallableType, List[Type]] → method ExpressionChecker.infer_function_type_arguments_pass2(callee_type: CallableType, args: List[Expression], arg_kinds: List[int], formal_to_actual: List[List[int]], old_inferred_args: Sequence[Optional[Type]], context: Context) -> Tuple[CallableType, List[Optional[Type]]]
  • changed: method ExpressionChecker.match_signature_types(arg_types: List[Type], arg_kinds: List[int], arg_names: List[str], callee: CallableType, context: Context) -> bool → method ExpressionChecker.match_signature_types(arg_types: List[Type], arg_kinds: List[int], arg_names: Optional[Sequence[Optional[str]]], callee: CallableType, context: Context) -> bool
  • changed: method ExpressionChecker.overload_call_target(arg_types: List[Type], arg_kinds: List[int], arg_names: List[str], overload: Overloaded, context: Context, messages: MessageBuilder=…) -> Type → method ExpressionChecker.overload_call_target(arg_types: List[Type], arg_kinds: List[int], arg_names: Optional[Sequence[Optional[str]]], overload: Overloaded, context: Context, messages: Optional[MessageBuilder]=…) -> Type
  • added: function all_same_types(types: Iterable[Type]) -> bool
  • added: function any_arg_causes_overload_ambiguity(items: List[CallableType], arg_types: List[Type], arg_kinds: List[int], arg_names: Optional[Sequence[Optional[str]]]) -> bool
  • added: function map_formals_to_actuals(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]]
  • added: method ExpressionChecker.check_protocol_issubclass(e: CallExpr) -> None
  • added: method ExpressionChecker.check_runtime_protocol_test(e: CallExpr) -> None
  • added: method ExpressionChecker.check_super_arguments(e: SuperExpr) -> None
  • changed: function analyze_member_access(name: str, typ: Type, node: Context, is_lvalue: bool, is_super: bool, is_operator: bool, builtin_type: Callable[[str], Instance], not_ready_callback: Callable[[str, Context], None], msg: MessageBuilder, *, original_type: Type, chk: mypy.checker.TypeChecker, override_info: TypeInfo=…) -> Type → function analyze_member_access(name: str, typ: Type, node: Context, is_lvalue: bool, is_super: bool, is_operator: bool, builtin_type: Callable[[str], Instance], not_ready_callback: Callable[[str, Context], None], msg: MessageBuilder, *, original_type: Type, chk: mypy.checker.TypeChecker, override_info: Optional[TypeInfo]=…) -> Type
  • changed: function bind_self(method: F, original_type: Type=…, is_classmethod: bool=…) -> F → function bind_self(method: F, original_type: Optional[Type]=…, is_classmethod: bool=…) -> F
  • changed: method StringFormatterChecker.accept(expr: Expression, context: Type=…) -> Type → method StringFormatterChecker.accept(expr: Expression, context: Optional[Type]=…) -> Type
  • changed: function infer_constraints_for_callable(callee: CallableType, arg_types: List[Optional[Type]], arg_kinds: List[int], formal_to_actual: List[List[int]]) -> List[Constraint] → function infer_constraints_for_callable(callee: CallableType, arg_types: Sequence[Optional[Type]], arg_kinds: List[int], formal_to_actual: List[List[int]]) -> List[Constraint]
  • changed: method ConstraintBuilderVisitor.infer_against_any(types: Iterable[Type]) -> List[Constraint] → method ConstraintBuilderVisitor.infer_against_any(types: Iterable[Type], any_type: AnyType) -> List[Constraint]
  • added: method ConstraintBuilderVisitor.infer_constraints_from_protocol_members(res: List[Constraint], instance: Instance, template: Instance, subtype: Type, protocol: Instance) -> None
  • added: variable PYTHON3_VERSION_MIN
  • changed: constructor ErrorInfo(import_ctx: List[Tuple[str, int]], file: str, module: Optional[str], typ: Optional[str], function_or_member: Optional[str], line: int, column: int, severity: str, message: str, blocker: bool, only_once: bool, origin: Tuple[str, int]=…, target: str=…) -> None → constructor ErrorInfo(import_ctx: List[Tuple[str, int]], file: str, module: Optional[str], typ: Optional[str], function_or_member: Optional[str], line: int, column: int, severity: str, message: str, blocker: bool, only_once: bool, origin: Optional[Tuple[str, int]]=…, target: Optional[str]=…) -> None
  • changed: function report_internal_error(err: Exception, file: str, line: int, errors: Errors, options: Options) -> None → function report_internal_error(err: Exception, file: Optional[str], line: int, errors: Errors, options: Options) -> None
  • changed: method Errors.report(line: int, column: int, message: str, blocker: bool=…, severity: str=…, file: str=…, only_once: bool=…, origin_line: int=…) -> None → method Errors.report(line: int, column: int, message: str, blocker: bool=…, severity: str=…, file: Optional[str]=…, only_once: bool=…, origin_line: Optional[int]=…, offset: int=…) -> None
  • changed: method Errors.set_file(file: str, module: Optional[str], ignored_lines: Set[int]=…) -> None → method Errors.set_file(file: str, module: Optional[str], ignored_lines: Optional[Set[int]]=…) -> None
  • added: variable allowed_duplicates
  • removed: method ASTConverter.visit_NoneType(n: Any) -> Optional[Node]
  • removed: method TypeConverter.visit_NoneType(n: Any) -> Type
  • changed: constructor TypeConverter(errors: Errors, line: int=…) -> None → constructor TypeConverter(errors: Optional[Errors], line: int=…) -> None
  • changed: function find(f: Callable[[V], bool], seq: Sequence[V]) -> V → function find(f: Callable[[V], bool], seq: Sequence[V]) -> Optional[V]
  • changed: function parse(source: Union[str, bytes], fnam: str=…, errors: Errors=…, options: Options=…) -> MypyFile → function parse(source: Union[str, bytes], fnam: str, errors: Optional[Errors]=…, options: Options=…) -> MypyFile
  • changed: method ASTConverter.as_block(stmts: List[ast3.stmt], lineno: int) -> Block → method ASTConverter.as_block(stmts: List[ast3.stmt], lineno: int) -> Optional[Block]
  • changed: method ASTConverter.set_type_optional(type: Type, initializer: Expression) -> None → method ASTConverter.set_type_optional(type: Optional[Type], initializer: Optional[Expression]) -> None
  • changed: method TypeConverter.parent() -> ast3.AST → method TypeConverter.parent() -> Optional[ast3.AST]
  • changed: method TypeConverter.translate_argument_list(l: Sequence[ast3.AST]) -> TypeList → method TypeConverter.translate_argument_list(l: Sequence[ast3.expr]) -> TypeList
  • changed: method TypeConverter.translate_expr_list(l: Sequence[ast3.AST]) -> List[Type] → method TypeConverter.translate_expr_list(l: Sequence[ast3.expr]) -> List[Type]
  • changed: method TypeConverter.visit(node: ast3.AST) -> Type → method TypeConverter.visit(node: ast3.expr) -> Type | (node: Optional[ast3.AST]) -> Optional[Type]
  • added: method ASTConverter.as_required_block(stmts: List[ast3.stmt], lineno: int) -> Block
  • added: method ASTConverter.visit(node: Optional[ast3.AST]) -> Any
  • removed: method ASTConverter.visit_NoneType(n: Any) -> Optional[Node]
  • changed: function find(f: Callable[[V], bool], seq: Sequence[V]) -> V → function find(f: Callable[[V], bool], seq: Sequence[V]) -> Optional[V]
  • changed: function parse(source: Union[str, bytes], fnam: str=…, errors: Errors=…, options: Options=…) -> MypyFile → function parse(source: Union[str, bytes], fnam: str, errors: Optional[Errors]=…, options: Options=…) -> MypyFile
  • changed: method ASTConverter.as_block(stmts: List[ast27.stmt], lineno: int) -> Block → method ASTConverter.as_block(stmts: List[ast27.stmt], lineno: int) -> Optional[Block]
  • changed: method ASTConverter.set_type_optional(type: Type, initializer: Expression) -> None → method ASTConverter.set_type_optional(type: Optional[Type], initializer: Optional[Expression]) -> None
  • added: method ASTConverter.as_required_block(stmts: List[ast27.stmt], lineno: int) -> Block
  • added: method ASTConverter.visit(node: Optional[ast27.AST]) -> Any
  • added: method TypeIndirectionVisitor.visit_forwardref_type(t: types.ForwardRef) -> Set[str]
  • changed: function infer_function_type_arguments(callee_type: CallableType, arg_types: List[Optional[Type]], arg_kinds: List[int], formal_to_actual: List[List[int]], strict: bool=…) -> List[Optional[Type]] → function infer_function_type_arguments(callee_type: CallableType, arg_types: Sequence[Optional[Type]], arg_kinds: List[int], formal_to_actual: List[List[int]], strict: bool=…) -> List[Optional[Type]]
  • added: function literal(e: Expression) -> int
  • added: function literal_hash(e: Expression) -> Optional[Key]
  • added: function subkeys(key: Key) -> Iterable[Key]
  • added: variable Key
  • changed: constructor AugmentedHelpFormatter(prog: Optional[str]) -> None → constructor AugmentedHelpFormatter(prog: str) -> None
  • changed: function main(script_path: Optional[str], args: List[str]=…) -> None → function main(script_path: Optional[str], args: Optional[List[str]]=…) -> None
  • changed: function type_check_only(sources: List[BuildSource], bin_dir: str, options: Options) -> BuildResult → function type_check_only(sources: List[BuildSource], bin_dir: Optional[str], options: Options) -> BuildResult
  • removed: method MessageBuilder.format_simple(typ: Type, verbosity: int=…) -> str
  • removed: variable RETURN_ANY
  • changed: method MessageBuilder.does_not_return_value(callee_type: Type, context: Context) -> None → method MessageBuilder.does_not_return_value(callee_type: Optional[Type], context: Context) -> None
  • changed: method MessageBuilder.fail(msg: str, context: Context, file: str=…, origin: Context=…) -> None → method MessageBuilder.fail(msg: str, context: Optional[Context], file: Optional[str]=…, origin: Optional[Context]=…) -> None
  • changed: method MessageBuilder.format_distinctly(type1: Type, type2: Type) -> Tuple[str, str] → method MessageBuilder.format_distinctly(type1: Type, type2: Type, bare: bool=…) -> Tuple[str, str]
  • changed: method MessageBuilder.incompatible_typevar_value(callee: CallableType, index: int, type: Type, context: Context) -> None → method MessageBuilder.incompatible_typevar_value(callee: CallableType, typ: Type, typevar_name: str, context: Context) -> None
  • changed: method MessageBuilder.note(msg: str, context: Context, file: str=…, origin: Context=…) -> None → method MessageBuilder.note(msg: str, context: Context, file: Optional[str]=…, origin: Optional[Context]=…, offset: int=…) -> None
  • changed: method MessageBuilder.report(msg: str, context: Context, severity: str, file: str=…, origin: Context=…) -> None → method MessageBuilder.report(msg: str, context: Optional[Context], severity: str, file: Optional[str]=…, origin: Optional[Context]=…, offset: int=…) -> None
  • changed: method MessageBuilder.too_few_arguments(callee: CallableType, context: Context, argument_names: List[str]) -> None → method MessageBuilder.too_few_arguments(callee: CallableType, context: Context, argument_names: Optional[Sequence[Optional[str]]]) -> None
  • changed: method MessageBuilder.warn(msg: str, context: Context, file: str=…, origin: Context=…) -> None → method MessageBuilder.warn(msg: str, context: Context, file: Optional[str]=…, origin: Optional[Context]=…) -> None
  • added: function append_invariance_notes(notes: List[str], arg_type: Instance, expected_type: Instance) -> List[str]
  • added: function get_bad_protocol_flags(left: Instance, right: Instance) -> List[Tuple[str, Set[int], Set[int]]]
  • added: function get_conflict_protocol_types(left: Instance, right: Instance) -> List[Tuple[str, Type, Type]]
  • added: function get_missing_protocol_members(left: Instance, right: Instance) -> List[str]
  • added: function variance_string(variance: int) -> str
  • added: method MessageBuilder.bad_proto_variance(actual: int, tvar_name: str, expected: int, context: Context) -> None
  • added: method MessageBuilder.concrete_only_assign(typ: Type, context: Context) -> None
  • added: method MessageBuilder.concrete_only_call(typ: Type, context: Context) -> None
  • added: method MessageBuilder.first_argument_for_super_must_be_type(actual: Type, context: Context) -> None
  • added: method MessageBuilder.format_bare(typ: Type, verbosity: int=…) -> str
  • added: method MessageBuilder.incorrectly_returning_any(typ: Type, context: Context) -> None
  • added: method MessageBuilder.note_call(subtype: Type, call: Type, context: Context) -> None
  • added: method MessageBuilder.pretty_callable(tp: CallableType) -> str
  • added: method MessageBuilder.pretty_overload(tp: Overloaded, context: Context, offset: int, max_items: int) -> None
  • added: method MessageBuilder.print_more(conflicts: Sequence[Any], context: Context, offset: int, max_items: int) -> None
  • added: method MessageBuilder.quote_type_string(type_string: str) -> str
  • added: method MessageBuilder.report_non_method_protocol(tp: TypeInfo, members: List[str], context: Context) -> None
  • added: method MessageBuilder.report_protocol_problems(subtype: Union[Instance, TupleType, TypedDictType], supertype: Instance, context: Context) -> None
  • added: method MessageBuilder.typed_function_untyped_decorator(func_name: str, context: Context) -> None
  • added: variable INCOMPATIBLE_TYPEVAR_VALUE
  • added: variable UNSUPPORTED_ARGUMENT_2_FOR_SUPER
  • added: class AssertionFailure(Exception)
  • added: class ListSuite(Suite)
  • added: class SkipTestCaseException(Exception)
  • added: class Suite
  • added: class TestCase
  • added: constructor AssertionFailure(s: Optional[str]=…) -> None
  • added: constructor ListSuite(suites: List[Suite]) -> None
  • added: constructor Suite() -> None
  • added: constructor TestCase(name: str, suite: Optional[Suite]=…, func: Optional[Callable[[], None]]=…) -> None
  • added: function add_suites_from_module(suites: List[Suite], mod_name: str) -> None
  • added: function assert_equal(a: object, b: object, fmt: str=…) -> None
  • added: function assert_false(b: bool, msg: Optional[str]=…) -> None
  • added: function assert_not_equal(a: object, b: object, fmt: str=…) -> None
  • added: function assert_raises(typ: type, *rest: Any) -> None
  • added: function assert_true(b: bool, msg: Optional[str]=…) -> None
  • added: function assert_type(typ: type, value: object) -> None
  • added: function clean_traceback(tb: List[str]) -> List[str]
  • added: function fail() -> None
  • added: function good_repr(obj: object) -> str
  • added: function handle_failure(name: str, exc_type: type, exc_value: BaseException, exc_traceback: TracebackType) -> None
  • added: function main(args: Optional[List[str]]=…) -> None
  • added: function match_pattern(s: str, p: str) -> bool
  • added: function run_single_test(name: str, test: Any) -> Tuple[bool, bool]
  • added: function run_test_recursive(test: Any, num_total: int, num_fail: int, num_skip: int, prefix: str, depth: int) -> Tuple[int, int, int]
  • added: function typename(t: type) -> str
  • added: method Suite.add_test(test: Union[TestCase, Tuple[str, Callable[[], None]], Tuple[str, Suite]]) -> None
  • added: method Suite.cases() -> List[Any]
  • added: method Suite.init() -> None
  • added: method Suite.set_up() -> None
  • added: method Suite.skip() -> None
  • added: method Suite.tear_down() -> None
  • added: method TestCase.run() -> None
  • added: method TestCase.set_up() -> None
  • added: method TestCase.tear_down() -> None
  • added: variable is_quiet
  • added: variable is_verbose
  • added: variable patterns
  • added: variable times
  • removed: field BytesExpr.literal
  • removed: field ComplexExpr.literal
  • removed: field Expression.literal
  • removed: field Expression.literal_hash
  • removed: field FloatExpr.literal
  • removed: field IntExpr.literal
  • removed: field NameExpr.literal
  • removed: field StrExpr.literal
  • removed: field UnicodeExpr.literal
  • removed: variable Key
  • changed: constructor AssertStmt(expr: Expression, msg: Expression=…) -> None → constructor AssertStmt(expr: Expression, msg: Optional[Expression]=…) -> None
  • changed: constructor AssignmentStmt(lvalues: List[Lvalue], rvalue: Expression, type: mypy.types.Type=…, new_syntax: bool=…) -> None → constructor AssignmentStmt(lvalues: List[Lvalue], rvalue: Expression, type: Optional[mypy.types.Type]=…, new_syntax: bool=…) -> None
  • changed: constructor CallExpr(callee: Expression, args: List[Expression], arg_kinds: List[int], arg_names: List[Optional[str]]=…, analyzed: Expression=…) -> None → constructor CallExpr(callee: Expression, args: List[Expression], arg_kinds: List[int], arg_names: List[Optional[str]], analyzed: Optional[Expression]=…) -> None
  • changed: constructor ClassDef(name: str, defs: Block, type_vars: List[mypy.types.TypeVarDef]=…, base_type_exprs: List[Expression]=…, metaclass: str=…, keywords: List[Tuple[str, Expression]]=…) -> None → constructor ClassDef(name: str, defs: Block, type_vars: Optional[List[mypy.types.TypeVarDef]]=…, base_type_exprs: Optional[List[Expression]]=…, metaclass: Optional[Expression]=…, keywords: Optional[List[Tuple[str, Expression]]]=…) -> None
  • changed: constructor ForStmt(index: Lvalue, expr: Expression, body: Block, else_body: Optional[Block], index_type: mypy.types.Type=…) -> None → constructor ForStmt(index: Lvalue, expr: Expression, body: Block, else_body: Optional[Block], index_type: Optional[mypy.types.Type]=…) -> None
  • changed: constructor FuncDef(name: str, arguments: List[Argument], body: Block, typ: mypy.types.FunctionLike=…) -> None → constructor FuncDef(name: str, arguments: List[Argument], body: Block, typ: Optional[mypy.types.FunctionLike]=…) -> None
  • changed: constructor FuncItem(arguments: List[Argument], body: Block, typ: mypy.types.FunctionLike=…) -> None → constructor FuncItem(arguments: List[Argument], body: Block, typ: Optional[mypy.types.FunctionLike]=…) -> None
  • changed: constructor MypyFile(defs: List[Statement], imports: List[ImportBase], is_bom: bool=…, ignored_lines: Set[int]=…) -> None → constructor MypyFile(defs: List[Statement], imports: List[ImportBase], is_bom: bool=…, ignored_lines: Optional[Set[int]]=…) -> None
  • changed: constructor PrintStmt(args: List[Expression], newline: bool, target: Expression=…) -> None → constructor PrintStmt(args: List[Expression], newline: bool, target: Optional[Expression]=…) -> None
  • changed: constructor SuperExpr(name: str) -> None → constructor SuperExpr(name: str, call: CallExpr) -> None
  • changed: constructor SymbolTableNode(kind: int, node: Optional[SymbolNode], mod_id: str=…, typ: mypy.types.Type=…, module_public: bool=…, normalized: bool=…, alias_tvars: Optional[List[str]]=…, implicit: bool=…) -> None → constructor SymbolTableNode(kind: int, node: Optional[SymbolNode], mod_id: Optional[str]=…, typ: Optional[mypy.types.Type]=…, module_public: bool=…, normalized: bool=…, alias_tvars: Optional[List[str]]=…, implicit: bool=…, module_hidden: bool=…) -> None
  • changed: constructor TempNode(typ: mypy.types.Type) -> None → constructor TempNode(typ: mypy.types.Type, no_rhs: bool=…) -> None
  • changed: constructor TypeAliasExpr(type: mypy.types.Type, tvars: List[str], fallback: mypy.types.Type=…, in_runtime: bool=…) -> None → constructor TypeAliasExpr(type: mypy.types.Type, tvars: List[str], fallback: mypy.types.Type, in_runtime: bool=…) -> None
  • changed: constructor Var(name: str, type: mypy.types.Type=…) -> None → constructor Var(name: str, type: Optional[mypy.types.Type]=…) -> None
  • changed: constructor WithStmt(expr: List[Expression], target: List[Optional[Lvalue]], body: Block, target_type: mypy.types.Type=…) -> None → constructor WithStmt(expr: List[Expression], target: List[Optional[Lvalue]], body: Block, target_type: Optional[mypy.types.Type]=…) -> None
  • changed: method Argument.set_line(target: Union[Context, int], column: int=…) -> None → method Argument.set_line(target: Union[Context, int], column: Optional[int]=…) -> None
  • changed: method Context.set_line(target: Union[Context, int], column: int=…) -> None → method Context.set_line(target: Union[Context, int], column: Optional[int]=…) -> None
  • changed: method FuncItem.set_line(target: Union[Context, int], column: int=…) -> None → method FuncItem.set_line(target: Union[Context, int], column: Optional[int]=…) -> None
  • changed: method TypeInfo.dump(str_conv: mypy.strconv.StrConv=…, type_str_conv: mypy.types.TypeStrVisitor=…) -> str → method TypeInfo.dump(str_conv: Optional[mypy.strconv.StrConv]=…, type_str_conv: Optional[mypy.types.TypeStrVisitor]=…) -> str
  • added: field SuperExpr.call
  • added: field SymbolTableNode.module_hidden
  • added: field TempNode.no_rhs
  • added: field TypeInfo.assuming
  • added: field TypeInfo.assuming_proper
  • added: field TypeInfo.inferring
  • added: field TypeInfo.is_protocol
  • added: field TypeInfo.protocol_members
  • added: field TypeInfo.replaced
  • added: field TypeInfo.runtime_protocol
  • added: field Var.is_abstract_var
  • added: method TypeInfo.is_cached_subtype_check(left: mypy.types.Instance, right: mypy.types.Instance, proper_subtype: bool=…) -> bool
  • added: method TypeInfo.record_subtype_cache_entry(left: mypy.types.Instance, right: mypy.types.Instance, proper_subtype: bool=…) -> None
  • added: property Decorator.info -> TypeInfo
  • added: variable type_of_any_name_map
  • removed: function returns_any_if_called(expr: Expression) -> bool
  • removed: method SemanticAnalyzer.check_with_metaclass(defn: ClassDef) -> Tuple[List[Expression], Optional[str]]
  • changed: class FirstPass(NodeVisitor) → class FirstPass(NodeVisitor[None])
  • changed: class SemanticAnalyzer(NodeVisitor) → class SemanticAnalyzer(NodeVisitor[None])
  • changed: constructor ThirdPass(modules: Dict[str, MypyFile], errors: Errors) -> None → constructor ThirdPass(modules: Dict[str, MypyFile], errors: Errors, sem: SemanticAnalyzer) -> None
  • changed: method SemanticAnalyzer.add_module_symbol(id: str, as_id: str, module_public: bool, context: Context) -> None → method SemanticAnalyzer.add_module_symbol(id: str, as_id: str, module_public: bool, context: Context, module_hidden: bool=…) -> None
  • changed: method SemanticAnalyzer.anal_type(t: Type, *, tvar_scope: Optional[TypeVarScope]=…, allow_tuple_literal: bool=…, aliasing: bool=…) -> Type → method SemanticAnalyzer.anal_type(t: Type, *, tvar_scope: Optional[TypeVarScope]=…, allow_tuple_literal: bool=…, aliasing: bool=…, third_pass: bool=…) -> Type
  • changed: method SemanticAnalyzer.analyze_try_stmt(s: TryStmt, visitor: NodeVisitor, add_global: bool=…) -> None → method SemanticAnalyzer.analyze_try_stmt(s: TryStmt, visitor: NodeVisitor[None], add_global: bool=…) -> None
  • changed: method SemanticAnalyzer.lookup(name: str, ctx: Context) -> SymbolTableNode → method SemanticAnalyzer.lookup(name: str, ctx: Context, suppress_errors: bool=…) -> Optional[SymbolTableNode]
  • changed: method SemanticAnalyzer.lookup_qualified(name: str, ctx: Context) -> SymbolTableNode → method SemanticAnalyzer.lookup_qualified(name: str, ctx: Context, suppress_errors: bool=…) -> Optional[SymbolTableNode]
  • changed: method SemanticAnalyzer.type_analyzer(*, tvar_scope: Optional[TypeVarScope]=…, allow_tuple_literal: bool=…, aliasing: bool=…) -> TypeAnalyser → method SemanticAnalyzer.type_analyzer(*, tvar_scope: Optional[TypeVarScope]=…, allow_tuple_literal: bool=…, aliasing: bool=…, third_pass: bool=…) -> TypeAnalyser
  • changed: method ThirdPass.analyze(type: Optional[Type]) -> None → method ThirdPass.analyze(type: Optional[Type], node: Union[Node, SymbolTableNode], warn: bool=…) -> None
  • changed: method ThirdPass.visit_file(file_node: MypyFile, fnam: str, options: Options) -> None → method ThirdPass.visit_file(file_node: MypyFile, fnam: str, options: Options, patches: List[Callable[[], None]]) -> None
  • added: class ForwardReferenceResolver(TypeTranslator)
  • added: constructor ForwardReferenceResolver(fail: Callable[[str, Context], None], start: Union[Node, SymbolTableNode], warn: bool) -> None
  • added: function add_protocol_members(typ: TypeInfo) -> None
  • added: function calculate_return_type(expr: Expression) -> Optional[Type]
  • added: method ForwardReferenceResolver.check_recursion(t: Type) -> bool
  • added: method ForwardReferenceResolver.visit_callable_type(t: CallableType) -> Type
  • added: method ForwardReferenceResolver.visit_forwardref_type(t: ForwardRef) -> Type
  • added: method ForwardReferenceResolver.visit_instance(t: Instance, from_fallback: bool=…) -> Type
  • added: method ForwardReferenceResolver.visit_overloaded(t: Overloaded) -> Type
  • added: method ForwardReferenceResolver.visit_tuple_type(t: TupleType) -> Type
  • added: method ForwardReferenceResolver.visit_type_type(t: TypeType) -> Type
  • added: method ForwardReferenceResolver.visit_type_var(t: TypeVarType) -> Type
  • added: method ForwardReferenceResolver.visit_typeddict_type(t: TypedDictType) -> Type
  • added: method ForwardReferenceResolver.visit_union_type(t: UnionType) -> Type
  • added: method SemanticAnalyzer.detect_protocol_base(defn: ClassDef) -> bool
  • added: method SemanticAnalyzer.update_metaclass(defn: ClassDef) -> None
  • added: method ThirdPass.analyze_types(types: List[Type], node: Node) -> None
  • added: method ThirdPass.make_type_analyzer(indicator: Dict[str, bool]) -> TypeAnalyserPass3
  • added: method ThirdPass.perform_transform(node: Union[Node, SymbolTableNode], transform: Callable[[Type], Type]) -> None
  • added: method ThirdPass.transform_types_in_lvalue(lvalue: Lvalue, transform: Callable[[Type], Type]) -> None
  • added: method ThirdPass.visit_for_stmt(s: ForStmt) -> None
  • added: method ThirdPass.visit_with_stmt(s: WithStmt) -> None
  • added: class IdenticalTypeVisitor(TypeVisitor[bool])
  • added: constructor IdenticalTypeVisitor(right: Type) -> None
  • added: function compare_symbol_tables(name_prefix: str, table1: SymbolTable, table2: SymbolTable) -> Set[str]
  • added: function get_prefix(id: str) -> str
  • added: function is_identical_type(t: Type, s: Type) -> bool
  • added: function is_identical_types(a: List[TT], b: List[TT]) -> bool
  • added: function is_same_mro(mro1: List[TypeInfo], mro2: List[TypeInfo]) -> bool
  • added: function is_similar_node_shallow(n: SymbolTableNode, m: SymbolTableNode) -> bool
  • added: method IdenticalTypeVisitor.visit_any(left: AnyType) -> bool
  • added: method IdenticalTypeVisitor.visit_callable_type(left: CallableType) -> bool
  • added: method IdenticalTypeVisitor.visit_deleted_type(left: DeletedType) -> bool
  • added: method IdenticalTypeVisitor.visit_erased_type(left: ErasedType) -> bool
  • added: method IdenticalTypeVisitor.visit_instance(left: Instance) -> bool
  • added: method IdenticalTypeVisitor.visit_none_type(left: NoneTyp) -> bool
  • added: method IdenticalTypeVisitor.visit_overloaded(left: Overloaded) -> bool
  • added: method IdenticalTypeVisitor.visit_partial_type(left: PartialType) -> bool
  • added: method IdenticalTypeVisitor.visit_tuple_type(left: TupleType) -> bool
  • added: method IdenticalTypeVisitor.visit_type_type(left: TypeType) -> bool
  • added: method IdenticalTypeVisitor.visit_type_var(left: TypeVarType) -> bool
  • added: method IdenticalTypeVisitor.visit_typeddict_type(left: TypedDictType) -> bool
  • added: method IdenticalTypeVisitor.visit_unbound_type(left: UnboundType) -> bool
  • added: method IdenticalTypeVisitor.visit_uninhabited_type(t: UninhabitedType) -> bool
  • added: method IdenticalTypeVisitor.visit_union_type(left: UnionType) -> bool
  • added: variable TT
  • added: class NodeReplaceVisitor(TraverserVisitor)
  • added: class TypeReplaceVisitor(TypeVisitor[None])
  • added: constructor NodeReplaceVisitor(replacements: Dict[SymbolNode, SymbolNode]) -> None
  • added: constructor TypeReplaceVisitor(replacements: Dict[SymbolNode, SymbolNode]) -> None
  • added: function get_prefix(fullname: str) -> str
  • added: function merge_asts(old: MypyFile, old_symbols: SymbolTable, new: MypyFile, new_symbols: SymbolTable) -> None
  • added: function replace_nodes_in_ast(node: SymbolNode, replacements: Dict[SymbolNode, SymbolNode]) -> SymbolNode
  • added: function replace_nodes_in_symbol_table(symbols: SymbolTable, replacements: Dict[SymbolNode, SymbolNode]) -> None
  • added: function replacement_map_from_symbol_table(old: SymbolTable, new: SymbolTable, prefix: str) -> Dict[SymbolNode, SymbolNode]
  • added: method NodeReplaceVisitor.fixup(node: SN) -> SN
  • added: method NodeReplaceVisitor.fixup_type(typ: Type) -> None
  • added: method NodeReplaceVisitor.replace_statements(nodes: List[Statement]) -> List[Statement]
  • added: method NodeReplaceVisitor.visit_assignment_stmt(node: AssignmentStmt) -> None
  • added: method NodeReplaceVisitor.visit_block(node: Block) -> None
  • added: method NodeReplaceVisitor.visit_class_def(node: ClassDef) -> None
  • added: method NodeReplaceVisitor.visit_func_def(node: FuncDef) -> None
  • added: method NodeReplaceVisitor.visit_member_expr(node: MemberExpr) -> None
  • added: method NodeReplaceVisitor.visit_mypy_file(node: MypyFile) -> None
  • added: method NodeReplaceVisitor.visit_name_expr(node: NameExpr) -> None
  • added: method NodeReplaceVisitor.visit_ref_expr(node: RefExpr) -> None
  • added: method TypeReplaceVisitor.fixup(node: SN) -> SN
  • added: method TypeReplaceVisitor.visit_any(typ: AnyType) -> None
  • added: method TypeReplaceVisitor.visit_callable_type(typ: CallableType) -> None
  • added: method TypeReplaceVisitor.visit_deleted_type(typ: DeletedType) -> None
  • added: method TypeReplaceVisitor.visit_instance(typ: Instance) -> None
  • added: method TypeReplaceVisitor.visit_none_type(typ: NoneTyp) -> None
  • added: method TypeReplaceVisitor.visit_overloaded(t: Overloaded) -> None
  • added: method TypeReplaceVisitor.visit_partial_type(typ: PartialType) -> None
  • added: method TypeReplaceVisitor.visit_tuple_type(typ: TupleType) -> None
  • added: method TypeReplaceVisitor.visit_type_type(typ: TypeType) -> None
  • added: method TypeReplaceVisitor.visit_type_var(typ: TypeVarType) -> None
  • added: method TypeReplaceVisitor.visit_typeddict_type(typ: TypedDictType) -> None
  • added: method TypeReplaceVisitor.visit_unbound_type(typ: UnboundType) -> None
  • added: method TypeReplaceVisitor.visit_uninhabited_type(typ: UninhabitedType) -> None
  • added: method TypeReplaceVisitor.visit_union_type(typ: UnionType) -> None
  • added: variable SN
  • added: class NodeStripVisitor(TraverserVisitor)
  • added: constructor NodeStripVisitor() -> None
  • added: function is_self_member_ref(memberexpr: MemberExpr) -> bool
  • added: function nothing() -> Iterator[None]
  • added: function strip_target(node: Union[MypyFile, FuncItem]) -> None
  • added: method NodeStripVisitor.enter_class(info: TypeInfo) -> Iterator[None]
  • added: method NodeStripVisitor.is_duplicate_attribute_def(node: MemberExpr) -> bool
  • added: method NodeStripVisitor.strip_class_body(node: ClassDef) -> None
  • added: method NodeStripVisitor.strip_ref_expr(node: RefExpr) -> None
  • added: method NodeStripVisitor.strip_target(node: Union[MypyFile, FuncItem]) -> None
  • added: method NodeStripVisitor.strip_top_level(file_node: MypyFile) -> None
  • added: method NodeStripVisitor.visit_assignment_stmt(node: AssignmentStmt) -> None
  • added: method NodeStripVisitor.visit_func_def(node: FuncDef) -> None
  • added: method NodeStripVisitor.visit_member_expr(node: MemberExpr) -> None
  • added: method NodeStripVisitor.visit_name_expr(node: NameExpr) -> None
  • added: class DependencyVisitor(TraverserVisitor)
  • added: class TypeDependenciesVisitor(TypeVisitor[List[str]])
  • added: constructor DependencyVisitor(prefix: str, type_map: Dict[Expression, Type]) -> None
  • added: constructor TypeDependenciesVisitor() -> None
  • added: function get_dependencies(prefix: str, node: Node, type_map: Dict[Expression, Type]) -> Dict[str, Set[str]]
  • added: function get_dependencies_of_target(prefix: str, node: Node, type_map: Dict[Expression, Type]) -> Dict[str, Set[str]]
  • added: function get_type_dependencies(typ: Type) -> List[str]
  • added: function non_trivial_bases(info: TypeInfo) -> List[TypeInfo]
  • added: method DependencyVisitor.add_dependency(trigger: str, target: Optional[str]=…) -> None
  • added: method DependencyVisitor.current() -> str
  • added: method DependencyVisitor.pop() -> None
  • added: method DependencyVisitor.push(component: str) -> str
  • added: method DependencyVisitor.visit_assignment_stmt(o: AssignmentStmt) -> None
  • added: method DependencyVisitor.visit_call_expr(e: CallExpr) -> None
  • added: method DependencyVisitor.visit_class_def(o: ClassDef) -> None
  • added: method DependencyVisitor.visit_func_def(o: FuncDef) -> None
  • added: method DependencyVisitor.visit_import(o: Import) -> None
  • added: method DependencyVisitor.visit_import_from(o: ImportFrom) -> None
  • added: method DependencyVisitor.visit_member_expr(e: MemberExpr) -> None
  • added: method DependencyVisitor.visit_mypy_file(o: MypyFile) -> None
  • added: method DependencyVisitor.visit_name_expr(o: NameExpr) -> None
  • added: method TypeDependenciesVisitor.visit_any(typ: AnyType) -> List[str]
  • added: method TypeDependenciesVisitor.visit_callable_type(typ: CallableType) -> List[str]
  • added: method TypeDependenciesVisitor.visit_deleted_type(typ: DeletedType) -> List[str]
  • added: method TypeDependenciesVisitor.visit_forwardref_type(typ: ForwardRef) -> List[str]
  • added: method TypeDependenciesVisitor.visit_instance(typ: Instance) -> List[str]
  • added: method TypeDependenciesVisitor.visit_none_type(typ: NoneTyp) -> List[str]
  • added: method TypeDependenciesVisitor.visit_partial_type(typ: PartialType) -> List[str]
  • added: method TypeDependenciesVisitor.visit_tuple_type(typ: TupleType) -> List[str]
  • added: method TypeDependenciesVisitor.visit_type_type(typ: TypeType) -> List[str]
  • added: method TypeDependenciesVisitor.visit_type_var(typ: TypeVarType) -> List[str]
  • added: method TypeDependenciesVisitor.visit_typeddict_type(typ: TypedDictType) -> List[str]
  • added: method TypeDependenciesVisitor.visit_unbound_type(typ: UnboundType) -> List[str]
  • added: method TypeDependenciesVisitor.visit_uninhabited_type(typ: UninhabitedType) -> List[str]
  • added: method TypeDependenciesVisitor.visit_union_type(typ: UnionType) -> List[str]
  • added: class SubexpressionFinder(TraverserVisitor)
  • added: constructor SubexpressionFinder() -> None
  • added: field SubexpressionFinder.visit__promote_expr
  • added: field SubexpressionFinder.visit_bytes_expr
  • added: field SubexpressionFinder.visit_complex_expr
  • added: field SubexpressionFinder.visit_ellipsis
  • added: field SubexpressionFinder.visit_float_expr
  • added: field SubexpressionFinder.visit_int_expr
  • added: field SubexpressionFinder.visit_name_expr
  • added: field SubexpressionFinder.visit_namedtuple_expr
  • added: field SubexpressionFinder.visit_newtype_expr
  • added: field SubexpressionFinder.visit_str_expr
  • added: field SubexpressionFinder.visit_super_expr
  • added: field SubexpressionFinder.visit_type_alias_expr
  • added: field SubexpressionFinder.visit_type_var_expr
  • added: field SubexpressionFinder.visit_typeddict_expr
  • added: field SubexpressionFinder.visit_unicode_expr
  • added: function get_subexpressions(node: Node) -> List[Expression]
  • added: method SubexpressionFinder.add(e: Expression) -> None
  • added: method SubexpressionFinder.visit_await_expr(e: AwaitExpr) -> None
  • added: method SubexpressionFinder.visit_backquote_expr(e: BackquoteExpr) -> None
  • added: method SubexpressionFinder.visit_call_expr(e: CallExpr) -> None
  • added: method SubexpressionFinder.visit_cast_expr(e: CastExpr) -> None
  • added: method SubexpressionFinder.visit_comparison_expr(e: ComparisonExpr) -> None
  • added: method SubexpressionFinder.visit_conditional_expr(e: ConditionalExpr) -> None
  • added: method SubexpressionFinder.visit_dict_expr(e: DictExpr) -> None
  • added: method SubexpressionFinder.visit_dictionary_comprehension(e: DictionaryComprehension) -> None
  • added: method SubexpressionFinder.visit_generator_expr(e: GeneratorExpr) -> None
  • added: method SubexpressionFinder.visit_index_expr(e: IndexExpr) -> None
  • added: method SubexpressionFinder.visit_lambda_expr(e: LambdaExpr) -> None
  • added: method SubexpressionFinder.visit_list_comprehension(e: ListComprehension) -> None
  • added: method SubexpressionFinder.visit_list_expr(e: ListExpr) -> None
  • added: method SubexpressionFinder.visit_member_expr(e: MemberExpr) -> None
  • added: method SubexpressionFinder.visit_op_expr(e: OpExpr) -> None
  • added: method SubexpressionFinder.visit_reveal_type_expr(e: RevealTypeExpr) -> None
  • added: method SubexpressionFinder.visit_set_comprehension(e: SetComprehension) -> None
  • added: method SubexpressionFinder.visit_set_expr(e: SetExpr) -> None
  • added: method SubexpressionFinder.visit_slice_expr(e: SliceExpr) -> None
  • added: method SubexpressionFinder.visit_star_expr(e: StarExpr) -> None
  • added: method SubexpressionFinder.visit_tuple_expr(e: TupleExpr) -> None
  • added: method SubexpressionFinder.visit_type_application(e: TypeApplication) -> None
  • added: method SubexpressionFinder.visit_unary_expr(e: UnaryExpr) -> None
  • added: method SubexpressionFinder.visit_yield_expr(e: YieldExpr) -> None
  • added: method SubexpressionFinder.visit_yield_from_expr(e: YieldFromExpr) -> None
  • added: function module_prefix(modules: Iterable[str], target: str) -> str
  • added: function split_target(modules: Iterable[str], target: str) -> Tuple[str, str]
  • added: function make_trigger(name: str) -> str
  • added: class FineGrainedBuildManager
  • added: constructor FineGrainedBuildManager(manager: BuildManager, graph: Dict[str, State]) -> None
  • added: function build_incremental_step(manager: BuildManager, changed_modules: List[str]) -> Tuple[Dict[str, MypyFile], Dict[str, Dict[Expression, Type]]]
  • added: function calculate_active_triggers(manager: BuildManager, old_modules: Dict[str, MypyFile], new_modules: Dict[str, MypyFile]) -> Set[str]
  • added: function find_targets_recursive(triggers: Set[str], deps: Dict[str, Set[str]], modules: Dict[str, MypyFile], up_to_date_modules: Set[str]) -> Dict[str, Set[DeferredNode]]
  • added: function get_all_dependencies(manager: BuildManager, graph: Dict[str, State]) -> Dict[str, Set[str]]
  • added: function get_enclosing_namespace_types(nodes: List[DeferredNode]) -> Dict[NamespaceNode, Dict[str, Type]]
  • added: function get_triggered_namespace_items(old_types_map: Dict[NamespaceNode, Dict[str, Type]]) -> Set[str]
  • added: function lookup_target(modules: Dict[str, MypyFile], target: str) -> List[DeferredNode]
  • added: function propagate_changes_using_dependencies(manager: BuildManager, graph: Dict[str, State], deps: Dict[str, Set[str]], triggered: Set[str], up_to_date_modules: Set[str], targets_with_errors: Set[str], modules: Iterable[str]) -> None
  • added: function replace_modules_with_new_variants(manager: BuildManager, graph: Dict[str, State], old_modules: Dict[str, MypyFile], new_modules: Dict[str, MypyFile], new_type_maps: Dict[str, Dict[Expression, Type]]) -> None
  • added: function reprocess_nodes(manager: BuildManager, graph: Dict[str, State], module_id: str, nodeset: Set[DeferredNode], deps: Dict[str, Set[str]]) -> Set[str]
  • added: function update_dependencies(new_modules: Dict[str, MypyFile], deps: Dict[str, Set[str]], graph: Dict[str, State]) -> None
  • added: function update_deps(module_id: str, nodes: List[DeferredNode], graph: Dict[str, State], deps: Dict[str, Set[str]]) -> None
  • added: method FineGrainedBuildManager.update(changed_modules: List[str]) -> List[str]
  • added: variable DEBUG
  • added: variable NamespaceNode
  • changed: function argument_elide_name(name: Union[str, Tuple, None]) -> bool → function argument_elide_name(name: Optional[str]) -> bool
  • changed: constructor StatisticsVisitor(inferred: bool, filename: str, typemap: Dict[Expression, Type]=…, all_nodes: bool=…) -> None → constructor StatisticsVisitor(inferred: bool, filename: str, typemap: Optional[Dict[Expression, Type]]=…, all_nodes: bool=…, visit_untyped_defs: bool=…) -> None
  • changed: function dump_type_stats(tree: MypyFile, path: str, inferred: bool=…, typemap: Dict[Expression, Type]=…) -> None → function dump_type_stats(tree: MypyFile, path: str, inferred: bool=…, typemap: Optional[Dict[Expression, Type]]=…) -> None
  • changed: method StrConv.pretty_name(name: str, kind: int, fullname: str, is_def: bool, target_node: mypy.nodes.Node=…) -> str → method StrConv.pretty_name(name: str, kind: Optional[int], fullname: Optional[str], is_def: bool, target_node: Optional[mypy.nodes.Node]=…) -> str
  • removed: function find_classes(node: MypyFile) -> Set[str]
  • removed: method StubGenerator.import_and_export_names(module_id: str, relative: int, names: Iterable[str]) -> None
  • changed: function generate_stub(path: str, output_dir: str, _all_: Optional[List[str]]=…, target: str=…, add_header: bool=…, module: str=…, pyversion: Tuple[int, int]=…, include_private: bool=…) -> None → function generate_stub(path: str, output_dir: str, _all_: Optional[List[str]]=…, target: Optional[str]=…, add_header: bool=…, module: Optional[str]=…, pyversion: Tuple[int, int]=…, include_private: bool=…) -> None
  • changed: method StubGenerator.get_init(lvalue: str, rvalue: Expression) -> Optional[str] → method StubGenerator.get_init(lvalue: str, rvalue: Expression, annotation: Optional[Type]=…) -> Optional[str]
  • added: class AliasPrinter(NodeVisitor[str])
  • added: class AnnotationPrinter(TypeStrVisitor)
  • added: class ImportTracker
  • added: constructor AliasPrinter(stubgen: StubGenerator) -> None
  • added: constructor AnnotationPrinter(stubgen: StubGenerator) -> None
  • added: constructor ImportTracker() -> None
  • added: method AliasPrinter.visit_call_expr(node: CallExpr) -> str
  • added: method AliasPrinter.visit_ellipsis(node: EllipsisExpr) -> str
  • added: method AliasPrinter.visit_index_expr(node: IndexExpr) -> str
  • added: method AliasPrinter.visit_list_expr(node: ListExpr) -> str
  • added: method AliasPrinter.visit_name_expr(node: NameExpr) -> str
  • added: method AliasPrinter.visit_str_expr(node: StrExpr) -> str
  • added: method AliasPrinter.visit_tuple_expr(node: TupleExpr) -> str
  • added: method AnnotationPrinter.visit_none_type(t: NoneTyp) -> str
  • added: method AnnotationPrinter.visit_unbound_type(t: UnboundType) -> str
  • added: method ImportTracker.add_import(module: str, alias: Optional[str]=…) -> None
  • added: method ImportTracker.add_import_from(module: str, names: List[Tuple[str, Optional[str]]]) -> None
  • added: method ImportTracker.import_lines() -> List[str]
  • added: method ImportTracker.reexport(name: str) -> None
  • added: method ImportTracker.require_name(name: str) -> None
  • added: method StubGenerator.is_type_expression(expr: Expression, top_level: bool=…) -> bool
  • added: method StubGenerator.print_annotation(t: Type) -> str
  • added: method StubGenerator.process_typealias(lvalue: NameExpr, rvalue: Expression) -> None
  • changed: function generate_c_function_stub(module: ModuleType, name: str, obj: object, output: List[str], self_var: str=…, sigs: Dict[str, str]=…, class_name: str=…, class_sigs: Dict[str, str]=…) -> None → function generate_c_function_stub(module: ModuleType, name: str, obj: object, output: List[str], self_var: Optional[str]=…, sigs: Dict[str, str]=…, class_name: Optional[str]=…, class_sigs: Dict[str, str]=…) -> None
  • changed: constructor SubtypeVisitor(right: Type, type_parameter_checker: TypeParameterChecker, *, ignore_pos_arg_names: bool=…) -> None → constructor SubtypeVisitor(right: Type, type_parameter_checker: TypeParameterChecker, *, ignore_pos_arg_names: bool=…, ignore_declared_variance: bool=…) -> None
  • changed: function is_more_precise(t: Type, s: Type) -> bool → function is_more_precise(left: Type, right: Type) -> bool
  • changed: function is_subtype(left: Type, right: Type, type_parameter_checker: TypeParameterChecker=…, *, ignore_pos_arg_names: bool=…) -> bool → function is_subtype(left: Type, right: Type, type_parameter_checker: TypeParameterChecker=…, *, ignore_pos_arg_names: bool=…, ignore_declared_variance: bool=…) -> bool
  • added: function find_member(name: str, itype: Instance, subtype: Type) -> Optional[Type]
  • added: function find_node_type(node: Union[Var, FuncBase], itype: Instance, subtype: Type) -> Type
  • added: function get_member_flags(name: str, info: TypeInfo) -> Set[int]
  • added: function is_protocol_implementation(left: Instance, right: Instance, proper_subtype: bool=…) -> bool
  • added: function non_method_protocol_members(tp: TypeInfo) -> List[str]
  • added: function pop_on_exit(stack: List[Tuple[Instance, Instance]], left: Instance, right: Instance) -> Iterator[None]
  • added: variable IS_CLASSVAR
  • added: variable IS_CLASS_OR_STATIC
  • added: variable IS_SETTABLE
  • changed: constructor TypeAnalyser(lookup_func: Callable[[str, Context], SymbolTableNode], lookup_fqn_func: Callable[[str], SymbolTableNode], tvar_scope: TypeVarScope, fail_func: Callable[[str, Context], None], plugin: Plugin, options: Options, is_typeshed_stub: bool, *, aliasing: bool=…, allow_tuple_literal: bool=…, allow_unnormalized: bool=…) -> None → 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…
  • changed: constructor TypeAnalyserPass3(fail_func: Callable[[str, Context], None], options: Options, is_typeshed_stub: bool) -> None → 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
  • 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], plugin: Plugin, options: Options, is_typeshed_stub: bool, allow_unnormalized: bool=…) -> Optional[Type] → 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=…) -…
  • changed: method TypeAnalyser.named_type(fully_qualified_name: str, args: List[Type]=…, line: int=…, column: int=…) -> Instance → method TypeAnalyser.named_type(fully_qualified_name: str, args: Optional[List[Type]]=…, line: int=…, column: int=…) -> Instance
  • changed: method TypeAnalyserPass3.check_type_var_values(type: TypeInfo, actuals: List[Type], valids: List[Type], arg_number: int, context: Context) -> None → method TypeAnalyserPass3.check_type_var_values(type: TypeInfo, actuals: List[Type], arg_name: str, valids: List[Type], arg_number: int, context: Context) -> None
  • added: class CollectAllInnerTypesQuery(TypeQuery[List[Type]])
  • added: constructor CollectAllInnerTypesQuery() -> None
  • added: field TypeAnalyser.global_scope
  • added: field TypeAnalyser.in_dynamic_func
  • added: function collect_all_inner_types(t: Type) -> List[Type]
  • added: method CollectAllInnerTypesQuery.query_types(types: Iterable[Type]) -> List[Type]
  • added: method TypeAnalyser.visit_forwardref_type(t: ForwardRef) -> Type
  • added: method TypeAnalyserPass3.anal_type(tp: UnboundType) -> Type
  • added: method TypeAnalyserPass3.update_type(tp: Type) -> Type
  • added: method TypeAnalyserPass3.visit_forwardref_type(t: ForwardRef) -> None
  • added: static method CollectAllInnerTypesQuery.combine_lists_strategy(it: Iterable[List[Type]]) -> List[Type]
  • changed: method TypeFixture.make_type_info(name: str, module_name: str=…, is_abstract: bool=…, mro: List[TypeInfo]=…, bases: List[Instance]=…, typevars: List[str]=…, variances: List[int]=…) -> TypeInfo → 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 AnyType(implicit: bool=…, from_unimported_type: bool=…, explicit: bool=…, from_omitted_generics: bool=…, special_form: bool=…, line: int=…, column: int=…) -> None → constructor AnyType(type_of_any: TypeOfAny.TypeOfAny, source_any: Optional[AnyType]=…, line: int=…, column: int=…) -> None
  • changed: constructor CallableType(arg_types: List[Type], arg_kinds: List[int], arg_names: List[Optional[str]], ret_type: Type, fallback: Instance, name: str=…, definition: SymbolNode=…, variables: 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_args: List[Optional[Type]]=…)… → 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…
  • changed: constructor DeletedType(source: str=…, line: int=…, column: int=…) -> None → constructor DeletedType(source: Optional[str]=…, line: int=…, column: int=…) -> None
  • changed: constructor TypeStrVisitor(id_mapper: IdMapper=…) -> None → constructor TypeStrVisitor(id_mapper: Optional[IdMapper]=…) -> None
  • changed: constructor UnboundType(name: str, args: List[Type]=…, line: int=…, column: int=…, optional: bool=…, empty_tuple_index: bool=…) -> None → constructor UnboundType(name: str, args: Optional[List[Type]]=…, line: int=…, column: int=…, optional: bool=…, empty_tuple_index: bool=…) -> None
  • changed: function callable_type(fdef: mypy.nodes.FuncItem, fallback: Instance, ret_type: Type=…) -> CallableType → function callable_type(fdef: mypy.nodes.FuncItem, fallback: Instance, ret_type: Optional[Type]=…) -> CallableType
  • changed: method AnyType.copy_modified(implicit: bool=…, from_unimported_type: bool=…, explicit: bool=…, from_omitted_generics: bool=…, special_form: bool=…) -> AnyType → method AnyType.copy_modified(type_of_any: TypeOfAny.TypeOfAny=…, original_any: Optional[AnyType]=…) -> AnyType
  • changed: method TupleType.copy_modified(*, fallback: Instance=…, items: List[Type]=…) -> TupleType → method TupleType.copy_modified(*, fallback: Optional[Instance]=…, items: Optional[List[Type]]=…) -> TupleType
  • changed: method TupleType.slice(begin: int, stride: int, end: int) -> TupleType → method TupleType.slice(begin: Optional[int], stride: Optional[int], end: Optional[int]) -> TupleType
  • changed: method TypedDictType.copy_modified(*, fallback: Instance=…, item_types: List[Type]=…, required_keys: Set[str]=…) -> TypedDictType → method TypedDictType.copy_modified(*, fallback: Optional[Instance]=…, item_types: Optional[List[Type]]=…, required_keys: Optional[Set[str]]=…) -> TypedDictType
  • added: class ForwardRef(Type)
  • added: class TypeOfAny
  • added: constructor ForwardRef(link: Type) -> None
  • added: field ForwardRef.link
  • added: field TypeOfAny.MYPY
  • added: field TypeOfAny.TypeOfAny
  • added: field TypeOfAny.explicit
  • added: field TypeOfAny.from_another_any
  • added: field TypeOfAny.from_error
  • added: field TypeOfAny.from_omitted_generics
  • added: field TypeOfAny.from_unimported_type
  • added: field TypeOfAny.special_form
  • added: field TypeOfAny.unannotated
  • added: method ForwardRef.accept(visitor: TypeVisitor[T]) -> T
  • added: method ForwardRef.serialize()
  • added: method TypeOfAny.TypeOfAny() -> str
  • added: method TypeQuery.visit_forwardref_type(t: ForwardRef) -> T
  • added: method TypeStrVisitor.visit_forwardref_type(t: ForwardRef) -> str
  • added: method TypeTranslator.visit_forwardref_type(t: ForwardRef) -> Type
  • added: method TypeVisitor.visit_forwardref_type(t: ForwardRef) -> T
  • changed: constructor LazySubprocess(name: str, args: List[str], *, cwd: str=…, env: Dict[str, str]=…, passthrough: Optional[int]=…) -> None → constructor LazySubprocess(name: str, args: List[str], *, cwd: Optional[str]=…, env: Optional[Dict[str, str]]=…, passthrough: Optional[int]=…) -> None