From 568227a6b8ca03eb4dc5c329b03c45b0d2bd7589 Mon Sep 17 00:00:00 2001 From: Thomas Kluyver Date: Sat, 23 May 2020 19:43:21 +0100 Subject: [PATCH] Check if assignment target is a name when finding version Closes gh-343 --- flit_core/flit_core/common.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/flit_core/flit_core/common.py b/flit_core/flit_core/common.py index 828b26b8..32c2a0da 100644 --- a/flit_core/flit_core/common.py +++ b/flit_core/flit_core/common.py @@ -128,10 +128,13 @@ def get_docstring_and_version_via_ast(target): for child in node.body: # Only use the version from the given module if it's a simple # string assignment to __version__ - is_version_str = (isinstance(child, ast.Assign) and - len(child.targets) == 1 and - child.targets[0].id == "__version__" and - isinstance(child.value, ast.Str)) + is_version_str = ( + isinstance(child, ast.Assign) + and len(child.targets) == 1 + and isinstance(child.targets[0], ast.Name) + and child.targets[0].id == "__version__" + and isinstance(child.value, ast.Str) + ) if is_version_str: version = child.value.s break