From 35bf67204bb85c935fbdba63c2499e504cfb42d1 Mon Sep 17 00:00:00 2001 From: Frederic Pillon Date: Tue, 2 Jul 2024 10:25:41 +0200 Subject: [PATCH] fix(arduino-cli): support 1.x version Some data format have changed. Signed-off-by: Frederic Pillon --- CI/build/arduino-cli.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/CI/build/arduino-cli.py b/CI/build/arduino-cli.py index d4ec5797bc..890ae4e1d9 100644 --- a/CI/build/arduino-cli.py +++ b/CI/build/arduino-cli.py @@ -296,6 +296,9 @@ def check_config(): quit(e.returncode) else: cli_config = json.loads(output) + # Since arduino-cli 1.x new level "config" + if "config" in cli_config.keys(): + cli_config = cli_config["config"] if cli_config is not None: if cli_config["directories"]["data"] is not None: sketches_path_list.append(Path(cli_config["directories"]["data"])) @@ -526,7 +529,11 @@ def find_board(): print(e.stdout.decode("utf-8")) quit(e.returncode) else: - fqbn_list_tmp = [board["fqbn"] for board in json.loads(output)] + boards = json.loads(output) + # Since arduino-cli 1.x new level "boards" and is a dict + if type(boards) is dict: + boards = boards["boards"] + fqbn_list_tmp = [board["fqbn"] for board in boards] if not len(fqbn_list_tmp): print(f"No boards found for {arduino_platform}") quit(1)