diff --git a/esphome/arduino8266/toolchain.py b/esphome/arduino8266/toolchain.py index 4d736c247f..d81b6b39ca 100644 --- a/esphome/arduino8266/toolchain.py +++ b/esphome/arduino8266/toolchain.py @@ -95,11 +95,11 @@ def run_compile(config: ConfigType, verbose: bool) -> int: _print_size_summary(build_dir) try: idedata = get_idedata() - except (EsphomeError, OSError, RuntimeError, ValueError) as err: + except (EsphomeError, LookupError, OSError, RuntimeError, ValueError) as err: # The firmware already built; idedata is a bonus artifact here. # Broad on purpose: a vanished compiler (OSError), a failed include - # probe (RuntimeError), or a truncated compile DB (ValueError) must - # not fail a successful build either. + # probe (RuntimeError), or a truncated/structurally odd compile DB + # (ValueError/LookupError) must not fail a successful build either. _LOGGER.warning("Could not generate idedata: %s", err) else: if idedata is None: