Upgrading mypy 0.580 to 0.590
Unknown0.580 → 0.590
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.
API changes
Generated by DepDelta from published Python source. Not mixed with prose notes.
- removed:
method BuildManager.module_not_found(path: str, source: str, line: int, target: str) -> None - removed:
method FindModuleCache.find_module(id: str, lib_path_arg: Iterable[str]) -> Optional[str] - removed:
method State.skipping_ancestor(id: str, path: str, ancestor_for: State) -> None - removed:
method State.skipping_module(id: str, path: str) -> None - changed:
method FindModuleCache.find_modules_recursive(module: str, lib_path: List[str]) -> List[BuildSource] → method FindModuleCache.find_modules_recursive(module: str, lib_path: Tuple[str, ...], python_executable: Optional[str]) -> List[BuildSource] - added:
function find_module_and_diagnose(manager: BuildManager, id: str, options: Options, caller_state: Optional[State]=…, caller_line: int=…, ancestor_for: Optional[State]=…, root_source: bool=…) -> Tuple[str, str] - added:
function module_not_found(manager: BuildManager, line: int, caller_state: State, target: str) -> None - added:
function skipping_ancestor(manager: BuildManager, id: str, path: str, ancestor_for: State) -> None - added:
function skipping_module(manager: BuildManager, line: int, caller_state: Optional[State], id: str, path: str) -> None - added:
method State.verify_dependencies(suppressed_only: bool=…) -> None
- added:
class InvalidSourceList(Exception) - added:
class SourceFinder - added:
constructor SourceFinder(fscache: FileSystemMetaCache) -> None - added:
function create_source_list(files: Sequence[str], options: Options, fscache: Optional[FileSystemMetaCache]=…, allow_empty_dir: bool=…) -> List[BuildSource] - added:
function keyfunc(name: str) -> Tuple[int, str] - added:
function module_join(parent: str, child: str) -> str - added:
function strip_py(arg: str) -> Optional[str] - added:
method SourceFinder.crawl_up(arg: str) -> str - added:
method SourceFinder.crawl_up_dir(dir: str) -> str - added:
method SourceFinder.expand_dir(arg: str, mod_prefix: str=…) -> List[BuildSource] - added:
method SourceFinder.get_init_file(dir: str) -> Optional[str] - added:
variable PY_EXTENSIONS
- changed:
function stale_info() -> TypeInfo → function stale_info(modules: Dict[str, MypyFile]) -> TypeInfo
- removed:
method FileSystemMetaCache.listdir(path: str) -> List[str] - removed:
method FileSystemMetaCache.stat(path: str) -> os.stat_result
- removed:
class InvalidPackageName(Exception) - removed:
function crawl_up(arg: str) -> Tuple[str, str] - removed:
function create_source_list(files: Sequence[str], options: Options) -> List[BuildSource] - removed:
function expand_dir(arg: str, mod_prefix: str=…) -> List[BuildSource] - removed:
function get_init_file(dir: str) -> Optional[str] - removed:
function keyfunc(name: str) -> Tuple[int, str] - removed:
function strip_py(arg: str) -> Optional[str] - removed:
variable PY_EXTENSIONS - added:
class PythonExecutableInferenceError(Exception) - added:
function infer_python_version_and_executable(options: Options, special_opts: argparse.Namespace) -> None - added:
function python_executable_prefix(v: str) -> List[str]
- changed:
method Options.select_options_affecting_cache() -> Mapping[str, bool] → method Options.select_options_affecting_cache() -> Mapping[str, object]
- removed:
function set_callable_name(sig: Type, fdef: FuncDef) -> Type - removed:
method SemanticAnalyzerPass2.analyze_namedtuple_classdef(defn: ClassDef) -> Optional[TypeInfo] - removed:
method SemanticAnalyzerPass2.analyze_newtype_declaration(s: AssignmentStmt) -> Tuple[Optional[str], Optional[CallExpr]] - removed:
method SemanticAnalyzerPass2.analyze_typeddict_classdef(defn: ClassDef) -> bool - removed:
method SemanticAnalyzerPass2.build_enum_call_typeinfo(name: str, items: List[str], fullname: str) -> TypeInfo - removed:
method SemanticAnalyzerPass2.build_namedtuple_typeinfo(name: str, items: List[str], types: List[Type], default_items: Dict[str, Expression]) -> TypeInfo - removed:
method SemanticAnalyzerPass2.build_newtype_typeinfo(name: str, old_type: Type, base_type: Instance) -> TypeInfo - removed:
method SemanticAnalyzerPass2.build_typeddict_typeinfo(name: str, items: List[str], types: List[Type], required_keys: Set[str]) -> TypeInfo - removed:
method SemanticAnalyzerPass2.check_enum_call(node: Expression, var_name: Optional[str]=…) -> Optional[TypeInfo] - removed:
method SemanticAnalyzerPass2.check_namedtuple(node: Expression, var_name: Optional[str]=…) -> Optional[TypeInfo] - removed:
method SemanticAnalyzerPass2.check_namedtuple_classdef(defn: ClassDef) -> Tuple[List[str], List[Type], Dict[str, Expression]] - removed:
method SemanticAnalyzerPass2.check_newtype_args(name: str, call: CallExpr, context: Context) -> Optional[Type] - removed:
method SemanticAnalyzerPass2.check_typeddict(node: Expression, var_name: Optional[str]=…) -> Optional[TypeInfo] - removed:
method SemanticAnalyzerPass2.check_typeddict_classdef(defn: ClassDef, oldfields: Optional[List[str]]=…) -> Tuple[List[str], List[Type], Set[str]] - removed:
method SemanticAnalyzerPass2.fail_enum_call_arg(message: str, context: Context) -> Tuple[List[str], List[Optional[Expression]], bool] - removed:
method SemanticAnalyzerPass2.fail_namedtuple_arg(message: str, context: Context) -> Tuple[List[str], List[Type], bool] - removed:
method SemanticAnalyzerPass2.fail_typeddict_arg(message: str, context: Context) -> Tuple[List[str], List[Type], bool, bool] - removed:
method SemanticAnalyzerPass2.is_typeddict(expr: Expression) -> bool - removed:
method SemanticAnalyzerPass2.make_argument(name: str, type: Type) -> Argument - removed:
method SemanticAnalyzerPass2.parse_enum_call_args(call: CallExpr, class_name: str) -> Tuple[List[str], List[Optional[Expression]], bool] - removed:
method SemanticAnalyzerPass2.parse_namedtuple_args(call: CallExpr, fullname: str) -> Tuple[List[str], List[Type], bool] - removed:
method SemanticAnalyzerPass2.parse_namedtuple_fields_with_types(nodes: List[Expression], context: Context) -> Tuple[List[str], List[Type], bool] - removed:
method SemanticAnalyzerPass2.parse_typeddict_args(call: CallExpr) -> Tuple[List[str], List[Type], bool, bool] - removed:
method SemanticAnalyzerPass2.parse_typeddict_fields_with_types(dict_items: List[Tuple[Expression, Expression]], context: Context) -> Tuple[List[str], List[Type], bool] - removed:
method SemanticAnalyzerPass2.process_enum_call(s: AssignmentStmt) -> None - removed:
method SemanticAnalyzerPass2.process_namedtuple_definition(s: AssignmentStmt) -> None - removed:
method SemanticAnalyzerPass2.process_newtype_declaration(s: AssignmentStmt) -> None - removed:
method SemanticAnalyzerPass2.process_typeddict_definition(s: AssignmentStmt) -> None - removed:
variable NAMEDTUPLE_PROHIBITED_NAMES - changed:
function infer_condition_value(expr: Expression, pyversion: Tuple[int, int], platform: str) -> int → function infer_condition_value(expr: Expression, options: Options) -> int - changed:
function infer_reachability_of_if_statement(s: IfStmt, pyversion: Tuple[int, int], platform: str) -> None → function infer_reachability_of_if_statement(s: IfStmt, options: Options) -> None - added:
method SemanticAnalyzerPass2.add_symbol_alias_deps(n: Optional[SymbolTableNode]) -> None - added:
method SemanticAnalyzerPass2.add_symbol_table_node(name: str, stnode: SymbolTableNode) -> None - added:
method SemanticAnalyzerPass2.schedule_patch(priority: int, patch: Callable[[], None]) -> None
- added:
class EnumCallAnalyzer - added:
constructor EnumCallAnalyzer(options: Options, api: SemanticAnalyzerInterface) -> None - added:
method EnumCallAnalyzer.build_enum_call_typeinfo(name: str, items: List[str], fullname: str) -> TypeInfo - added:
method EnumCallAnalyzer.check_enum_call(node: Expression, var_name: Optional[str], is_func_scope: bool) -> Optional[TypeInfo] - added:
method EnumCallAnalyzer.fail(msg: str, ctx: Context) -> None - added:
method EnumCallAnalyzer.fail_enum_call_arg(message: str, context: Context) -> Tuple[List[str], List[Optional[Expression]], bool] - added:
method EnumCallAnalyzer.parse_enum_call_args(call: CallExpr, class_name: str) -> Tuple[List[str], List[Optional[Expression]], bool] - added:
method EnumCallAnalyzer.process_enum_call(s: AssignmentStmt, is_func_scope: bool) -> None
- added:
class NamedTupleAnalyzer - added:
constructor NamedTupleAnalyzer(options: Options, api: SemanticAnalyzerInterface) -> None - added:
method NamedTupleAnalyzer.analyze_namedtuple_classdef(defn: ClassDef) -> Optional[TypeInfo] - added:
method NamedTupleAnalyzer.build_namedtuple_typeinfo(name: str, items: List[str], types: List[Type], default_items: Dict[str, Expression]) -> TypeInfo - added:
method NamedTupleAnalyzer.check_namedtuple(node: Expression, var_name: Optional[str], is_func_scope: bool) -> Optional[TypeInfo] - added:
method NamedTupleAnalyzer.check_namedtuple_classdef(defn: ClassDef) -> Tuple[List[str], List[Type], Dict[str, Expression]] - added:
method NamedTupleAnalyzer.fail(msg: str, ctx: Context) -> None - added:
method NamedTupleAnalyzer.fail_namedtuple_arg(message: str, context: Context) -> Tuple[List[str], List[Type], bool] - added:
method NamedTupleAnalyzer.parse_namedtuple_args(call: CallExpr, fullname: str) -> Tuple[List[str], List[Type], bool] - added:
method NamedTupleAnalyzer.parse_namedtuple_fields_with_types(nodes: List[Expression], context: Context) -> Tuple[List[str], List[Type], bool] - added:
method NamedTupleAnalyzer.process_namedtuple_definition(s: AssignmentStmt, is_func_scope: bool) -> None - added:
variable NAMEDTUPLE_PROHIBITED_NAMES
- added:
class NewTypeAnalyzer - added:
constructor NewTypeAnalyzer(options: Options, api: SemanticAnalyzerInterface, msg: MessageBuilder) -> None - added:
method NewTypeAnalyzer.analyze_newtype_declaration(s: AssignmentStmt) -> Tuple[Optional[str], Optional[CallExpr]] - added:
method NewTypeAnalyzer.build_newtype_typeinfo(name: str, old_type: Type, base_type: Instance) -> TypeInfo - added:
method NewTypeAnalyzer.check_newtype_args(name: str, call: CallExpr, context: Context) -> Optional[Type] - added:
method NewTypeAnalyzer.fail(msg: str, ctx: Context) -> None - added:
method NewTypeAnalyzer.make_argument(name: str, type: Type) -> Argument - added:
method NewTypeAnalyzer.process_newtype_declaration(s: AssignmentStmt) -> None
- changed:
class SemanticAnalyzerPass3(TraverserVisitor, SemanticAnalyzerInterface) → class SemanticAnalyzerPass3(TraverserVisitor, SemanticAnalyzerCoreInterface)
- removed:
method SemanticAnalyzerInterface.dereference_module_cross_ref(node: Optional[SymbolTableNode]) -> Optional[SymbolTableNode] - removed:
method SemanticAnalyzerInterface.fail(msg: str, ctx: Context, serious: bool=…, *, blocker: bool=…) -> None - removed:
method SemanticAnalyzerInterface.lookup_fully_qualified(name: str) -> SymbolTableNode - removed:
method SemanticAnalyzerInterface.lookup_qualified(name: str, ctx: Context, suppress_errors: bool=…) -> Optional[SymbolTableNode] - removed:
method SemanticAnalyzerInterface.note(msg: str, ctx: Context) -> None - changed:
class SemanticAnalyzerInterface → class SemanticAnalyzerInterface(SemanticAnalyzerCoreInterface) - added:
class SemanticAnalyzerCoreInterface - added:
function set_callable_name(sig: Type, fdef: FuncDef) -> Type - added:
method SemanticAnalyzerCoreInterface.dereference_module_cross_ref(node: Optional[SymbolTableNode]) -> Optional[SymbolTableNode] - added:
method SemanticAnalyzerCoreInterface.fail(msg: str, ctx: Context, serious: bool=…, *, blocker: bool=…) -> None - added:
method SemanticAnalyzerCoreInterface.lookup_fully_qualified(name: str) -> SymbolTableNode - added:
method SemanticAnalyzerCoreInterface.lookup_qualified(name: str, ctx: Context, suppress_errors: bool=…) -> Optional[SymbolTableNode] - added:
method SemanticAnalyzerCoreInterface.note(msg: str, ctx: Context) -> None - added:
method SemanticAnalyzerInterface.accept(node: Node) -> None - added:
method SemanticAnalyzerInterface.add_symbol_table_node(name: str, stnode: SymbolTableNode) -> None - added:
method SemanticAnalyzerInterface.anal_type(t: Type, *, tvar_scope: Optional[TypeVarScope]=…, allow_tuple_literal: bool=…, aliasing: bool=…, third_pass: bool=…) -> Type - added:
method SemanticAnalyzerInterface.basic_new_typeinfo(name: str, basetype_or_fallback: Instance) -> TypeInfo - added:
method SemanticAnalyzerInterface.is_typeshed_stub_file() -> bool - added:
method SemanticAnalyzerInterface.lookup(name: str, ctx: Context, suppress_errors: bool=…) -> Optional[SymbolTableNode] - added:
method SemanticAnalyzerInterface.named_type(qualified_name: str, args: Optional[List[Type]]=…) -> Instance - added:
method SemanticAnalyzerInterface.named_type_or_none(qualified_name: str, args: Optional[List[Type]]=…) -> Optional[Instance] - added:
method SemanticAnalyzerInterface.parse_bool(expr: Expression) -> Optional[bool] - added:
method SemanticAnalyzerInterface.qualified_name(n: str) -> str - added:
method SemanticAnalyzerInterface.schedule_patch(priority: int, fn: Callable[[], None]) -> None
- added:
class TypedDictAnalyzer - added:
constructor TypedDictAnalyzer(options: Options, api: SemanticAnalyzerInterface, msg: MessageBuilder) -> None - added:
method TypedDictAnalyzer.analyze_typeddict_classdef(defn: ClassDef) -> bool - added:
method TypedDictAnalyzer.build_typeddict_typeinfo(name: str, items: List[str], types: List[Type], required_keys: Set[str]) -> TypeInfo - added:
method TypedDictAnalyzer.check_typeddict(node: Expression, var_name: Optional[str], is_func_scope: bool) -> Optional[TypeInfo] - added:
method TypedDictAnalyzer.check_typeddict_classdef(defn: ClassDef, oldfields: Optional[List[str]]=…) -> Tuple[List[str], List[Type], Set[str]] - added:
method TypedDictAnalyzer.fail(msg: str, ctx: Context) -> None - added:
method TypedDictAnalyzer.fail_typeddict_arg(message: str, context: Context) -> Tuple[List[str], List[Type], bool, bool] - added:
method TypedDictAnalyzer.is_typeddict(expr: Expression) -> bool - added:
method TypedDictAnalyzer.parse_typeddict_args(call: CallExpr) -> Tuple[List[str], List[Type], bool, bool] - added:
method TypedDictAnalyzer.parse_typeddict_fields_with_types(dict_items: List[Tuple[Expression, Expression]], context: Context) -> Tuple[List[str], List[Type], bool] - added:
method TypedDictAnalyzer.process_typeddict_definition(s: AssignmentStmt, is_func_scope: bool) -> None
- removed:
function assert_equivalent_paths(path1: str, path2: str) -> None - removed:
function find_import_line(node: MypyFile, target: str) -> Optional[int] - removed:
function verify_dependencies(state: State, manager: BuildManager) -> None - changed:
function get_all_dependencies(manager: BuildManager, graph: Dict[str, State], options: Options) -> Dict[str, Set[str]] → function get_all_dependencies(manager: BuildManager, graph: Dict[str, State]) -> Dict[str, Set[str]]
- added:
function getsitepackages() - added:
variable MYPY
- removed:
function dump_dir(path: str) -> None - added:
method AnnotationPrinter.visit_type_list(t: TypeList) -> str
- changed:
constructor TypeAnalyser(api: SemanticAnalyzerInterface, tvar_scope: Optional[TypeVarScope], plugin: Plugin, options: Options, is_typeshed_stub: bool, *, aliasing: bool=…, allow_tuple_literal: bool=…, allow_unnormalized: bool=…, third_pass: bool=…, warn_bound_tvar: bool=…) -> None → constructor TypeAnalyser(api: SemanticAnalyzerCoreInterface, tvar_scope: Optional[TypeVarScope], plugin: Plugin, options: Options, is_typeshed_stub: bool, *, aliasing: bool=…, allow_tuple_literal: bool=…, allow_unnormalized: bool=…, third_pass: bool=…, warn_bound_tvar: bool=…) -> None - changed:
constructor TypeAnalyserPass3(api: SemanticAnalyzerInterface, plugin: Plugin, options: Options, is_typeshed_stub: bool, indicator: Dict[str, bool], patches: List[Tuple[int, Callable[[], None]]]) -> None → constructor TypeAnalyserPass3(api: SemanticAnalyzerCoreInterface, plugin: Plugin, options: Options, is_typeshed_stub: bool, indicator: Dict[str, bool], patches: List[Tuple[int, Callable[[], None]]]) -> None - changed:
function analyze_type_alias(node: Expression, api: SemanticAnalyzerInterface, tvar_scope: TypeVarScope, plugin: Plugin, options: Options, is_typeshed_stub: bool, allow_unnormalized: bool=…, in_dynamic_func: bool=…, global_scope: bool=…, warn_bound_tvar: bool=…) -> Optional[Tuple[Type, Set[str]]] → function analyze_type_alias(node: Expression, api: SemanticAnalyzerCoreInterface, tvar_scope: TypeVarScope, plugin: Plugin, options: Options, is_typeshed_stub: bool, allow_unnormalized: bool=…, in_dynamic_func: bool=…, global_scope: bool=…, warn_bound_tvar: bool=…) -> Optional[Tuple[Type, Set[str]]]
- changed:
constructor AnyType(type_of_any: TypeOfAny, source_any: Optional[AnyType]=…, line: int=…, column: int=…) -> None → constructor AnyType(type_of_any: TypeOfAny, source_any: Optional[AnyType]=…, missing_import_name: Optional[str]=…, line: int=…, column: int=…) -> None