diff --git a/AUTHORS.txt b/AUTHORS.txt index 34cd212b..c2c97b47 100644 --- a/AUTHORS.txt +++ b/AUTHORS.txt @@ -13,7 +13,8 @@ Aldo Stracquadanio (@Astrac) Jean-Louis Fuchs (@ganwell) tek (@tek) Yasha Borevich (@jjay) -Aaron Griffin +Aaron Griffin andviro (@andviro) Mike Gilbert (@floppym) Aaron Meurer (@asmeurer) +Lubos Trilety diff --git a/jedi/evaluate.py b/jedi/evaluate.py index 388a8e0a..cc597cc8 100644 --- a/jedi/evaluate.py +++ b/jedi/evaluate.py @@ -376,6 +376,9 @@ def find_name(scope, name_str, position=None, search_global=False, result.append(par) else: + # TODO multi-level import non-breakable + if isinstance(par, pr.Import) and len(par.namespace) > 1: + no_break_scope = True result.append(par) return result, no_break_scope diff --git a/test/completion/imports.py b/test/completion/imports.py index 19bebecb..83f7d5e9 100644 --- a/test/completion/imports.py +++ b/test/completion/imports.py @@ -56,6 +56,17 @@ def scope_nested(): #? set import_tree.random.a +def scope_nested2(): + """Multiple modules should be indexable, if imported""" + import import_tree.mod1 + import import_tree.pkg + #? ['mod1'] + import_tree.mod1 + #? ['pkg'] + import_tree.pkg + #? [] + import_tree.rename1 + # ----------------- # std lib modules # -----------------