You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Running mypy on a file named io.py that uses the built-in open() function causes and internal error to occur.
Traceback
utils/io.py:2: error: INTERNAL ERROR -- Please try using mypy master on Github:
https://mypy.readthedocs.io/en/stable/common_issues.html#using-a-development-mypy-build
Please report a bug at https://github.com/python/mypy/issues
version: 0.910
Traceback (most recent call last):
File "/Users/martinkristiansen/.pyenv/versions/tmp-delete/bin/mypy", line 8, in <module>
sys.exit(console_entry())
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/__main__.py", line 11, in console_entry
main(None, sys.stdout, sys.stderr)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/main.py", line 87, in main
res, messages, blockers = run_build(sources, options, fscache, t0, stdout, stderr)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/main.py", line 165, in run_build
res = build.build(sources, options, None, flush_errors, fscache, stdout, stderr)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/build.py", line 179, in build
result = _build(
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/build.py", line 254, in _build
graph = dispatch(sources, manager, stdout)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/build.py", line 2697, in dispatch
process_graph(graph, manager)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/build.py", line 3021, in process_graph
process_stale_scc(graph, scc, manager)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/build.py", line 3119, in process_stale_scc
graph[id].type_check_first_pass()
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/build.py", line 2165, in type_check_first_pass
self.type_checker().check_first_pass()
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checker.py", line 294, in check_first_pass
self.accept(d)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checker.py", line 401, in accept
stmt.accept(self)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/nodes.py", line 687, in accept
return visitor.visit_func_def(self)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checker.py", line 726, in visit_func_def
self._visit_func_def(defn)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checker.py", line 730, in _visit_func_def
self.check_func_item(defn, name=defn.name)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checker.py", line 792, in check_func_item
self.check_func_def(defn, typ, name)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checker.py", line 975, in check_func_def
self.accept(item.body)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checker.py", line 401, in accept
stmt.accept(self)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/nodes.py", line 1015, in accept
return visitor.visit_block(self)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checker.py", line 1975, in visit_block
self.accept(s)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checker.py", line 401, in accept
stmt.accept(self)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/nodes.py", line 1268, in accept
return visitor.visit_with_stmt(self)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checker.py", line 3638, in visit_with_stmt
exit_ret_type = self.check_with_item(expr, target, s.unanalyzed_type is None)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checker.py", line 3693, in check_with_item
ctx = echk.accept(expr)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checkexpr.py", line 3911, in accept
typ = node.accept(self)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/nodes.py", line 1558, in accept
return visitor.visit_call_expr(self)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checkexpr.py", line 271, in visit_call_expr
return self.visit_call_expr_inner(e, allow_none_return=allow_none_return)
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checkexpr.py", line 353, in visit_call_expr_inner
ret_type = self.check_call_expr_with_callee_type(callee_type, e, fullname,
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checkexpr.py", line 858, in check_call_expr_with_callee_type
return self.check_call(callee_type, e.args, e.arg_kinds, e,
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checkexpr.py", line 921, in check_call
return self.check_overload_call(callee, args, arg_kinds, arg_names, callable_name,
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checkexpr.py", line 1578, in check_overload_call
inferred_result = self.infer_overload_return_type(plausible_targets, args, arg_types,
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checkexpr.py", line 1721, in infer_overload_return_type
ret_type, infer_type = self.check_call(
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checkexpr.py", line 917, in check_call
return self.check_callable_call(callee, args, arg_kinds, context, arg_names,
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checkexpr.py", line 1029, in check_callable_call
new_ret_type = self.apply_function_plugin(
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/checkexpr.py", line 729, in apply_function_plugin
return callback(
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/plugins/default.py", line 126, in open_callback
return _analyze_open_signature(
File "/Users/martinkristiansen/.pyenv/versions/3.8.8/envs/tmp-delete/lib/python3.8/site-packages/mypy/plugins/default.py", line 168, in _analyze_open_signature
assert isinstance(default_return_type, Instance) # type: ignore
AssertionError:
utils/io.py:2: : note: use --pdb to drop into pdb
Just to be clear, the original issue was observed in a repo where the io.py file was placed in a sub-namespace so there was no issue with namespace collisions.
Crash Report
Running mypy on a file named
io.py
that uses the built-inopen()
function causes and internal error to occur.Traceback
To Reproduce
Minimal working (crashing) example:
Save above to a file named
io.py
and run mypy on the file.If the file is named something else, the error goes away.
Your Environment
mypy.ini
(and other config files): NoneMinimal pyenv virtual environment used:
The text was updated successfully, but these errors were encountered: