diff --git a/platformio.ini b/platformio.ini index 2cbf3a0..c3fdbd8 100644 --- a/platformio.ini +++ b/platformio.ini @@ -280,9 +280,18 @@ lib_ignore = ; The GUI toolkit, this board only: the mono boards keep their page stack and ; never build it. lv_conf.h lives in src/ui/lvgl and reaches the library via ; LV_CONF_INCLUDE_SIMPLE plus the include path. +; +; Pinned to the 9.5 line (~, not ^) on all three LVGL boards. The fonts in +; src/ui/lvgl/fonts are lv_font_conv output written against 9.5's lv_font_t, +; and 9.6.0 (2026-09-16) changed that struct (it gained cap_height and +; x_height): every font file then fails with "designator order for field +; '_lv_font_t::dsc' does not match declaration order". A caret range let any +; fresh resolve — CI included — take 9.6.0 and +; break these builds with nothing in the repository changed. Moving to 9.6 is +; regenerating the fonts and lifting this pin together. lib_deps = ${env.lib_deps} - lvgl/lvgl @ ^9.5.0 + lvgl/lvgl @ ~9.5.0 build_flags = ${env.build_flags} ${esp32s3_psram.build_flags} @@ -403,9 +412,10 @@ board_build.partitions = partitions/ota_16mb.csv ; Unlike that board this one *has* a slot, so only the OLED driver goes. lib_ignore = Adafruit SSD1306 +; LVGL is pinned to the 9.5 line for the fonts' sake: see [env:heltec-v4]. lib_deps = ${env.lib_deps} - lvgl/lvgl @ ^9.5.0 + lvgl/lvgl @ ~9.5.0 build_flags = ${env.build_flags} ${esp32s3_psram.build_flags} @@ -469,7 +479,8 @@ lib_deps = Crypto=https://github.com/attermann/Crypto.git microStore=https://github.com/dobrevit/microStore.git#retimesh/combined hideakitai/MsgPack @ ^0.4.2 - lvgl/lvgl @ ^9.5.0 + ; LVGL pinned to 9.5 for the fonts' sake: see [env:heltec-v4] + lvgl/lvgl @ ~9.5.0 build_flags = ${env.build_flags} ${esp32s3_psram.build_flags}