Skip to content

Instantly share code, notes, and snippets.

@Carreau
Created February 10, 2021 23:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Carreau/9bea1682d339cec801b08d7d3fc3af0e to your computer and use it in GitHub Desktop.
Save Carreau/9bea1682d339cec801b08d7d3fc3af0e to your computer and use it in GitHub Desktop.
jedi crash
~/dev/papyri[master ✗] $ python jd.py
Traceback (most recent call last):
File "jd.py", line 10, in <module>
i.infer(4, 0)
File "/Users/bussonniermatthias/dev/jedi/jedi/api/helpers.py", line 488, in wrapper
return func(self, line, column, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/api/__init__.py", line 244, in infer
values = helpers.infer(self._inference_state, context, leaf)
File "/Users/bussonniermatthias/dev/jedi/jedi/api/helpers.py", line 167, in infer
return inference_state.infer(context, leaf)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/__init__.py", line 160, in infer
return infer_expr_stmt(context, def_, name)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 376, in infer_expr_stmt
return _infer_expr_stmt(context, stmt, seek_name)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 409, in _infer_expr_stmt
value_set = context.infer_node(rhs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 222, in infer_node
return infer_node(self, node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 156, in infer_node
return _infer_node_if_inferred(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 169, in _infer_node_if_inferred
return _infer_node_cached(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/cache.py", line 44, in wrapper
rv = function(obj, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 174, in _infer_node_cached
return _infer_node(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 208, in _infer_node
value_set = infer_trailer(context, value_set, trailer)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 264, in infer_trailer
return atom_values.get_item(
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 495, in get_item
return ValueSet.from_sets(_getitem(c, *args, **kwargs) for c in self._set)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 426, in from_sets
for set_ in sets:
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 495, in <genexpr>
return ValueSet.from_sets(_getitem(c, *args, **kwargs) for c in self._set)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 400, in _getitem
result |= value.py__getitem__(
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/value/instance.py", line 151, in py__getitem__
return ValueSet.from_sets(name.infer().execute(args) for name in names)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 426, in from_sets
for set_ in sets:
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/value/instance.py", line 151, in <genexpr>
return ValueSet.from_sets(name.infer().execute(args) for name in names)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 483, in execute
return ValueSet.from_sets(c.inference_state.execute(c, arguments) for c in self._set)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 426, in from_sets
for set_ in sets:
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 483, in <genexpr>
return ValueSet.from_sets(c.inference_state.execute(c, arguments) for c in self._set)
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/__init__.py", line 21, in wrapper
return built_functions[public_name](*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/stdlib.py", line 125, in wrapper
return call()
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/stdlib.py", line 107, in call
return callback(value, arguments=arguments)
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/pytest.py", line 27, in wrapper
return callback(value, arguments)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/__init__.py", line 119, in execute
value_set = value.py__call__(arguments=arguments)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/value/instance.py", line 461, in py__call__
return function_execution.infer()
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/value/function.py", line 350, in infer
return self.get_return_values()
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/cache.py", line 44, in wrapper
rv = function(obj, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/recursion.py", line 87, in wrapper
result = func(self, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/value/function.py", line 232, in get_return_values
check = flow_analysis.reachability_check(self, funcdef, r)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/flow_analysis.py", line 85, in reachability_check
return _break_check(context, value_scope, first_flow_scope, node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/flow_analysis.py", line 100, in _break_check
reachable = _check_if(context, flow_node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/flow_analysis.py", line 120, in _check_if
types = context.infer_node(node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 222, in infer_node
return infer_node(self, node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 156, in infer_node
return _infer_node_if_inferred(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 169, in _infer_node_if_inferred
return _infer_node_cached(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/cache.py", line 44, in wrapper
rv = function(obj, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 174, in _infer_node_cached
return _infer_node(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 254, in _infer_node
return infer_or_test(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 460, in infer_or_test
types = context.infer_node(next(iterator))
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 222, in infer_node
return infer_node(self, node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 156, in infer_node
return _infer_node_if_inferred(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 169, in _infer_node_if_inferred
return _infer_node_cached(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/cache.py", line 44, in wrapper
rv = function(obj, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 174, in _infer_node_cached
return _infer_node(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 254, in _infer_node
return infer_or_test(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 460, in infer_or_test
types = context.infer_node(next(iterator))
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 222, in infer_node
return infer_node(self, node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 156, in infer_node
return _infer_node_if_inferred(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 169, in _infer_node_if_inferred
return _infer_node_cached(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/cache.py", line 44, in wrapper
rv = function(obj, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 174, in _infer_node_cached
return _infer_node(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 184, in _infer_node
return infer_atom(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 304, in infer_atom
return context.py__getattribute__(atom, position=position)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 75, in py__getattribute__
values = ValueSet.from_sets(name.infer() for name in names)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 426, in from_sets
for set_ in sets:
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 75, in <genexpr>
values = ValueSet.from_sets(name.infer() for name in names)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/names.py", line 281, in infer
return tree_name_to_values(
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/__init__.py", line 21, in wrapper
return built_functions[public_name](*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/stdlib.py", line 867, in wrapper
return func(inference_state, context, tree_name)
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/django.py", line 177, in wrapper
result = func(inference_state, context, tree_name)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 738, in tree_name_to_values
types = infer_expr_stmt(context, node, tree_name)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 376, in infer_expr_stmt
return _infer_expr_stmt(context, stmt, seek_name)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 413, in _infer_expr_stmt
value_set = check_tuple_assignments(n, value_set)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 839, in check_tuple_assignments
value_set = lazy_value.infer()
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/lazy_value.py", line 48, in infer
return self.context.infer_node(self.data)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 222, in infer_node
return infer_node(self, node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 156, in infer_node
return _infer_node_if_inferred(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 169, in _infer_node_if_inferred
return _infer_node_cached(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/cache.py", line 44, in wrapper
rv = function(obj, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 174, in _infer_node_cached
return _infer_node(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 184, in _infer_node
return infer_atom(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 304, in infer_atom
return context.py__getattribute__(atom, position=position)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 43, in py__getattribute__
names = self.goto(name_or_str, position)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 32, in goto
names = finder.filter_name(filters, name_or_str)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/finder.py", line 36, in filter_name
names = filter.get(string_name)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/filters.py", line 109, in get
return self._convert_names(self._filter(
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/filters.py", line 145, in _filter
return list(self._check_flows(names))
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/filters.py", line 156, in _check_flows
check = flow_analysis.reachability_check(
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/flow_analysis.py", line 85, in reachability_check
return _break_check(context, value_scope, first_flow_scope, node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/flow_analysis.py", line 100, in _break_check
reachable = _check_if(context, flow_node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/flow_analysis.py", line 120, in _check_if
types = context.infer_node(node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 222, in infer_node
return infer_node(self, node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 156, in infer_node
return _infer_node_if_inferred(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 169, in _infer_node_if_inferred
return _infer_node_cached(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/cache.py", line 44, in wrapper
rv = function(obj, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 174, in _infer_node_cached
return _infer_node(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 217, in _infer_node
value_set = context.infer_node(element.children[-1])
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 222, in infer_node
return infer_node(self, node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 156, in infer_node
return _infer_node_if_inferred(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 169, in _infer_node_if_inferred
return _infer_node_cached(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/cache.py", line 44, in wrapper
rv = function(obj, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 174, in _infer_node_cached
return _infer_node(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 208, in _infer_node
value_set = infer_trailer(context, value_set, trailer)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 278, in infer_trailer
return atom_values.execute(args)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 483, in execute
return ValueSet.from_sets(c.inference_state.execute(c, arguments) for c in self._set)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 426, in from_sets
for set_ in sets:
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 483, in <genexpr>
return ValueSet.from_sets(c.inference_state.execute(c, arguments) for c in self._set)
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/__init__.py", line 21, in wrapper
return built_functions[public_name](*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/stdlib.py", line 133, in wrapper
return func(value, arguments=arguments, callback=call)
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/stdlib.py", line 158, in wrapper
args = tuple(iterate_argument_clinic(
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/arguments.py", line 94, in iterate_argument_clinic
value_set = NO_VALUES if argument is None else argument.infer()
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/lazy_value.py", line 48, in infer
return self.context.infer_node(self.data)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 222, in infer_node
return infer_node(self, node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 156, in infer_node
return _infer_node_if_inferred(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 169, in _infer_node_if_inferred
return _infer_node_cached(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/cache.py", line 44, in wrapper
rv = function(obj, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 174, in _infer_node_cached
return _infer_node(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 184, in _infer_node
return infer_atom(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 304, in infer_atom
return context.py__getattribute__(atom, position=position)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 75, in py__getattribute__
values = ValueSet.from_sets(name.infer() for name in names)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 426, in from_sets
for set_ in sets:
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 75, in <genexpr>
values = ValueSet.from_sets(name.infer() for name in names)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/names.py", line 281, in infer
return tree_name_to_values(
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/__init__.py", line 21, in wrapper
return built_functions[public_name](*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/stdlib.py", line 867, in wrapper
return func(inference_state, context, tree_name)
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/django.py", line 177, in wrapper
result = func(inference_state, context, tree_name)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 738, in tree_name_to_values
types = infer_expr_stmt(context, node, tree_name)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 376, in infer_expr_stmt
return _infer_expr_stmt(context, stmt, seek_name)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 413, in _infer_expr_stmt
value_set = check_tuple_assignments(n, value_set)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 839, in check_tuple_assignments
value_set = lazy_value.infer()
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/lazy_value.py", line 61, in infer
return ValueSet.from_sets(l.infer() for l in self.data)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 426, in from_sets
for set_ in sets:
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/lazy_value.py", line 61, in <genexpr>
return ValueSet.from_sets(l.infer() for l in self.data)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/lazy_value.py", line 48, in infer
return self.context.infer_node(self.data)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 222, in infer_node
return infer_node(self, node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 156, in infer_node
return _infer_node_if_inferred(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 169, in _infer_node_if_inferred
return _infer_node_cached(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/cache.py", line 44, in wrapper
rv = function(obj, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 174, in _infer_node_cached
return _infer_node(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 184, in _infer_node
return infer_atom(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 304, in infer_atom
return context.py__getattribute__(atom, position=position)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 75, in py__getattribute__
values = ValueSet.from_sets(name.infer() for name in names)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 426, in from_sets
for set_ in sets:
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 75, in <genexpr>
values = ValueSet.from_sets(name.infer() for name in names)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/names.py", line 281, in infer
return tree_name_to_values(
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/__init__.py", line 21, in wrapper
return built_functions[public_name](*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/stdlib.py", line 867, in wrapper
return func(inference_state, context, tree_name)
File "/Users/bussonniermatthias/dev/jedi/jedi/plugins/django.py", line 177, in wrapper
result = func(inference_state, context, tree_name)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 738, in tree_name_to_values
types = infer_expr_stmt(context, node, tree_name)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 376, in infer_expr_stmt
return _infer_expr_stmt(context, stmt, seek_name)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 413, in _infer_expr_stmt
value_set = check_tuple_assignments(n, value_set)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 839, in check_tuple_assignments
value_set = lazy_value.infer()
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/lazy_value.py", line 48, in infer
return self.context.infer_node(self.data)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 222, in infer_node
return infer_node(self, node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 156, in infer_node
return _infer_node_if_inferred(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 169, in _infer_node_if_inferred
return _infer_node_cached(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/cache.py", line 44, in wrapper
rv = function(obj, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 174, in _infer_node_cached
return _infer_node(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 208, in _infer_node
value_set = infer_trailer(context, value_set, trailer)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 264, in infer_trailer
return atom_values.get_item(
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 495, in get_item
return ValueSet.from_sets(_getitem(c, *args, **kwargs) for c in self._set)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 426, in from_sets
for set_ in sets:
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 495, in <genexpr>
return ValueSet.from_sets(_getitem(c, *args, **kwargs) for c in self._set)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/base_value.py", line 389, in _getitem
result |= value.py__simple_getitem__(index)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/value/iterable.py", line 345, in py__simple_getitem__
return self._defining_context.infer_node(node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/context.py", line 222, in infer_node
return infer_node(self, node)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 156, in infer_node
return _infer_node_if_inferred(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 169, in _infer_node_if_inferred
return _infer_node_cached(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/cache.py", line 44, in wrapper
rv = function(obj, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 174, in _infer_node_cached
return _infer_node(context, element)
File "/Users/bussonniermatthias/dev/jedi/jedi/debug.py", line 81, in wrapper
return func(*args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 82, in wrapper
return func(context, *args, **kwargs)
File "/Users/bussonniermatthias/dev/jedi/jedi/inference/syntax_tree.py", line 229, in _infer_node
raise AssertionError("unhandled operator %s in %s " % (repr(element.value), origin))
AssertionError: unhandled operator ':' in PythonNode(subscriptlist, [<Operator: :>, <Operator: ,>, PythonNode(subscript, [<Operator: :>, PythonNode(factor, [<Operator: ->, <Number: 1>])])])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment