You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
No-op incremental build omits the Flash:/RAM: percentage lines, so size-parsing tooling sees no report #1277
On fbuild 2.5.15, a build where nothing changed prints no Flash: / RAM: percentage lines — presumably because the linker didn't re-run. Reasonable behaviour on its own, but it makes those lines unreliable as a size source for tooling, since the common case once a debounce settles is a no-op build.
The Flash: / RAM: lines are gone; the summary line and the Memory: line remain.
Impact
Design Studio for FastLED shows a live controller-capacity meter driven by a compile-only build while the user edits a graph. Parsing Flash:/RAM: meant a settled no-op build silently produced no reading at all, so we fall back to reading fbuild's own .fbuild/build/<env>/release/.firmware_size_cache.json — which works, but couples us to an internal file.
Possible resolutions, in preference order
Reprint the cached size report on a no-op build. The numbers are known — the summary line already carries them.
Document Memory: + build succeeded (...) as the stable pair. Both are printed on every build, and together they give used bytes and the limit, which is everything needed for a percentage:
Memory: 31.50KB Flash, 2.00KB RAM <- limits
build succeeded in 0.3s (flash: 16580 bytes, ram: 1862 bytes) <- used
If that pairing is intended to be stable, we'd happily parse those instead and drop the cache-file dependency entirely.
A --size-report / machine-readable flag, if one is planned — fbuild symbols --json already covers the per-symbol case nicely, but it needs an ELF and is heavier than a headline figure.
Option 2 costs nothing if those lines are already contractual; a one-line note in the docs would be enough for us to switch.
Activity
@
@
@
fix(helper): read capacity sizes from fbuild's output, not its cache …