From 5eb70255501bca7cb96f55841506e4586edf269f Mon Sep 17 00:00:00 2001 From: Chuck <33324927+ChuckBuilds@users.noreply.github.com> Date: Mon, 5 Oct 2026 10:58:15 -0400 Subject: [PATCH] chore(scripts): BasePlugin.request_on_demand / end_on_demand ship in core 3.8.1 (core #768) API_FIRST_VERSION gains the two on-demand methods core #768 added, first shipped in v3.8.1, and the table test's tracked tags run through 3.8.1 so the rows are verified against core's tags (3.8.0 lacks them, 3.8.1 has them). MODULE_FIRST_VERSION is already current: every 3.8.1 module is listed as "3.8.1" and src.malloc_tuning (core #774, after the tag) stays None. Co-Authored-By: Claude Opus 5.5 --- scripts/check_core_api_signatures.py | 9 ++++++--- scripts/test_check_core_api_signatures.py | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/scripts/check_core_api_signatures.py b/scripts/check_core_api_signatures.py index d82db8b6..3a9481ab 100644 --- a/scripts/check_core_api_signatures.py +++ b/scripts/check_core_api_signatures.py @@ -58,9 +58,8 @@ ``None`` with it. While any ``None`` entry exists, the test (with LEDMATRIX_CORE) insists HEAD reports ``UNTAGGED_SATISFIED_BY`` and no tag does. -Every entry below first shipped in v3.4.0 (tagged at core 9e3f184d), so none -is ``None`` today. ``UNTAGGED_SATISFIED_BY`` is only consulted by a ``None`` -row: before adding one, set it to the version core main reports once main is +No entry below is ``None`` today: each names the tag that first ships it. +``UNTAGGED_SATISFIED_BY`` is only consulted by a ``None`` row: before adding one, set it to the version core main reports once main is bumped past the latest tag. Limits: an API not in the table is assumed old enough (add a row when core @@ -110,6 +109,10 @@ class ApiChange(NamedTuple): "3.4.0", "core #523"), ApiChange("set_pixels_per_frame", None, None, "src/common/scroll_helper.py", "3.4.0", "core scroll_helper"), + ApiChange("request_on_demand", None, None, "src/plugin_system/base_plugin.py", + "3.8.1", "core #768"), + ApiChange("end_on_demand", None, None, "src/plugin_system/base_plugin.py", + "3.8.1", "core #768"), ) #: Floor that satisfies a ``None`` (untagged) entry; none exist today. See diff --git a/scripts/test_check_core_api_signatures.py b/scripts/test_check_core_api_signatures.py index 4f17f460..eacc943d 100644 --- a/scripts/test_check_core_api_signatures.py +++ b/scripts/test_check_core_api_signatures.py @@ -202,7 +202,7 @@ def method(body, indent=" "): print("\ntable vs core") core = os.environ.get("LEDMATRIX_CORE", "") -TAGS = ["3.0.0", "3.1.0", "3.2.0", "3.3.0", "3.3.1", "3.4.0"] +TAGS = ["3.0.0", "3.1.0", "3.2.0", "3.3.0", "3.3.1", "3.4.0", "3.5.0", "3.6.0", "3.6.1", "3.6.2", "3.7.0", "3.8.0", "3.8.1"] def show(ref, path):