diff --git a/docs/shared_bindings_matrix.py b/docs/shared_bindings_matrix.py index e89b47c871035..2dad572995386 100644 --- a/docs/shared_bindings_matrix.py +++ b/docs/shared_bindings_matrix.py @@ -170,9 +170,11 @@ def get_settings_from_makefile(port_dir, board_name): This means that the effect of all Makefile directives is taken into account, without having to re-encode the logic that sets them in this script, something that has proved error-prone + + This list must explicitly include any setting queried by tools/ci_set_matrix.py. """ contents = subprocess.run( - ["make", "-C", port_dir, "-f", "Makefile", f"BOARD={board_name}", "print-CFLAGS", "print-CIRCUITPY_BUILD_EXTENSIONS", "print-FROZEN_MPY_DIRS", "print-SRC_PATTERNS"], + ["make", "-C", port_dir, "-f", "Makefile", f"BOARD={board_name}", "print-CFLAGS", "print-CIRCUITPY_BUILD_EXTENSIONS", "print-FROZEN_MPY_DIRS", "print-SRC_PATTERNS", "print-SRC_SUPERVISOR"], encoding="utf-8", errors="replace", stdout=subprocess.PIPE, diff --git a/tools/ci_set_matrix.py b/tools/ci_set_matrix.py index e5ac80c91269c..15a6cb3ab87eb 100755 --- a/tools/ci_set_matrix.py +++ b/tools/ci_set_matrix.py @@ -189,23 +189,20 @@ def get_settings(board): # Check frozen files to see if they are in each board if file.startswith("frozen"): - if file in settings.get("FROZEN_MPY_DIRS", ""): + if file in settings["FROZEN_MPY_DIRS"]: boards_to_build.add(board) continue # Check supervisor files # This is useful for limiting workflow changes to the relevant boards if file.startswith("supervisor"): - if file in settings.get("SRC_SUPERVISOR", ""): + if file in settings["SRC_SUPERVISOR"]: boards_to_build.add(board) continue if file.startswith("supervisor/shared/web_workflow/static/"): web_workflow = settings["CIRCUITPY_WEB_WORKFLOW"] - while web_workflow.startswith("$("): - web_workflow = settings[web_workflow[2:-1]] - if web_workflow != "0": boards_to_build.add(board) continue