From 5b1618331f1eb6f181f2d17fc8c962e52bcec8e1 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Wed, 3 Jun 2026 21:47:52 -0500 Subject: [PATCH] DO NOT MERGE: prove memory-impact no-common-platform fix in CI Chained on top of the memory-impact fix to exercise it in real CI. Changed components and their base-test platforms: - const: variant-only test (test-display.esp32-s3-idf.yaml, no base test). --base-only cannot build it, so the fix must exclude it; it only injects an esp32-s3-idf platform hint. - shelly_dimmer: base test esp8266-ard (real C++). - daikin: base test esp8266-ard (real C++), the working third component. Without the fix, the esp32-s3-idf hint (and const's variant counted as a supported platform) selects esp32-s3-idf, which none of the three can build under --base-only, yielding 0 builds and a failed memory extraction. With the fix, const is excluded, the unbuildable hint is ignored in favor of the common esp8266-ard platform, and shelly_dimmer + daikin generate memory impact. --- esphome/components/daikin/daikin.cpp | 2 + .../shelly_dimmer/shelly_dimmer.cpp | 2 + tests/components/const/common.yaml | 37 +++++++++++++++++++ .../const/test-display.esp32-s3-idf.yaml | 7 ++++ 4 files changed, 48 insertions(+) create mode 100644 tests/components/const/common.yaml create mode 100644 tests/components/const/test-display.esp32-s3-idf.yaml diff --git a/esphome/components/daikin/daikin.cpp b/esphome/components/daikin/daikin.cpp index d45586ba2d..d3cad0f0a1 100644 --- a/esphome/components/daikin/daikin.cpp +++ b/esphome/components/daikin/daikin.cpp @@ -1,3 +1,5 @@ +// DNM: do not merge. Trivial touch to mark daikin changed; this is the working +// esp8266-ard component that should generate memory impact (see PR #16788). #include "daikin.h" #include "esphome/components/remote_base/remote_base.h" diff --git a/esphome/components/shelly_dimmer/shelly_dimmer.cpp b/esphome/components/shelly_dimmer/shelly_dimmer.cpp index b0f43f0ffc..3d8c299706 100644 --- a/esphome/components/shelly_dimmer/shelly_dimmer.cpp +++ b/esphome/components/shelly_dimmer/shelly_dimmer.cpp @@ -1,3 +1,5 @@ +// DNM: do not merge. Trivial touch to mark shelly_dimmer changed so the +// memory-impact CI job exercises the no-common-platform fix (see PR #16788). #include "esphome/core/defines.h" #include "esphome/core/helpers.h" diff --git a/tests/components/const/common.yaml b/tests/components/const/common.yaml new file mode 100644 index 0000000000..109db65b63 --- /dev/null +++ b/tests/components/const/common.yaml @@ -0,0 +1,37 @@ +display: + - platform: qspi_dbi + model: RM690B0 + data_rate: 80MHz + spi_mode: mode0 + dimensions: + width: 450 + height: 600 + offset_width: 16 + color_order: rgb + invert_colors: false + brightness: 255 + cs_pin: 11 + reset_pin: 13 + enable_pin: 9 + + - platform: qspi_dbi + model: CUSTOM + id: main_lcd + draw_from_origin: true + dimensions: + height: 240 + width: 536 + transform: + mirror_x: true + swap_xy: true + color_order: rgb + brightness: 255 + cs_pin: 6 + reset_pin: 17 + enable_pin: 38 + init_sequence: + - [0x3A, 0x66] + - [0x11] + - delay 120ms + - [0x29] + - delay 20ms diff --git a/tests/components/const/test-display.esp32-s3-idf.yaml b/tests/components/const/test-display.esp32-s3-idf.yaml new file mode 100644 index 0000000000..48560b7b5c --- /dev/null +++ b/tests/components/const/test-display.esp32-s3-idf.yaml @@ -0,0 +1,7 @@ +# DNM proof: this is a VARIANT test (test-display.*) with no base test.*.yaml. +# The memory-impact build runs --base-only, so const has nothing buildable and +# must be excluded; it only contributes an esp32-s3-idf platform hint. +packages: + qspi: !include ../../test_build_components/common/qspi/esp32-s3-idf.yaml + +<<: !include common.yaml