From 123442f5cc1d6f1b913c723c8f90a36fa0b35069 Mon Sep 17 00:00:00 2001 From: Konrad Feldmeier Date: Fri, 2 Jun 2017 15:34:47 +0200 Subject: [PATCH] Skip interfaces in dependency deployment Interfaces compile to empty bytecode, which leads to errors in the deployment function. --- tools/create_compilation_dump.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/tools/create_compilation_dump.py b/tools/create_compilation_dump.py index 5256f9304c..95ef6a5b70 100755 --- a/tools/create_compilation_dump.py +++ b/tools/create_compilation_dump.py @@ -70,13 +70,7 @@ def deploy_all(token_groups=None): tokens[token_name] = address deployed[token_name] = address - deployed.update( - deploy_with_dependencies( - TARGETS['token'], - state - ) - ) - libraries = deployed.copy() + libraries = dict() deployed.update( deploy_with_dependencies( TARGETS['registry'], @@ -202,6 +196,13 @@ def find_dependencies(contract_file): for dependency in dependencies: if dependency not in cleaned: cleaned.append(dependency) + dependencies = cleaned + cleaned = [] + for dependency in dependencies: + with open(get_contract_path(dependency)) as handler: + if any(line.startswith('interface') for line in handler.readlines()): + continue + cleaned.append(dependency) return cleaned