From b58366c07cc79a7663de698ac1523add1d979ece Mon Sep 17 00:00:00 2001 From: Otto Winter Date: Tue, 28 May 2019 15:59:16 +0200 Subject: [PATCH] Fix platformio4 moved get_project_dir --- esphome/__main__.py | 5 ++++- esphome/platformio_api.py | 6 +++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/esphome/__main__.py b/esphome/__main__.py index 199b68a6f1..c48d49b9ac 100644 --- a/esphome/__main__.py +++ b/esphome/__main__.py @@ -127,7 +127,10 @@ def wrap_to_code(name, comp): def wrapped(conf): cg.add(cg.LineComment(u"{}:".format(name))) if comp.config_schema is not None: - cg.add(cg.LineComment(indent(yaml_util.dump(conf).decode('utf-8')))) + conf_str = yaml_util.dump(conf) + if IS_PY2: + conf_str = conf_str.decode('utf-8') + cg.add(cg.LineComment(indent(conf_str))) yield coro(conf) return wrapped diff --git a/esphome/platformio_api.py b/esphome/platformio_api.py index cafb8ebaf4..adadab4109 100644 --- a/esphome/platformio_api.py +++ b/esphome/platformio_api.py @@ -19,12 +19,16 @@ def patch_structhash(): # all issues from platformio.commands import run from platformio import util + try: + from platformio.util import get_project_dir + except ImportError: + from platformio.project.helpers import get_project_dir from os.path import join, isdir, getmtime, isfile from os import makedirs def patched_clean_build_dir(build_dir): structhash_file = join(build_dir, "structure.hash") - platformio_ini = join(util.get_project_dir(), "platformio.ini") + platformio_ini = join(get_project_dir(), "platformio.ini") # if project's config is modified if isdir(build_dir) and getmtime(platformio_ini) > getmtime(build_dir):