• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

dangernoodle-io / breadboard / 28768977599
100%

Build:
DEFAULT BRANCH: main
Ran 06 Jul 2026 05:03AM UTC
Jobs 1
Files 76
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

06 Jul 2026 05:01AM UTC coverage: 100.0%. Remained the same
28768977599

push

github

web-flow
feat: bbtool scaffold command + per-board capability manifest, replacing native_scaffold (#756)

Derives each component's {includes, sources, depends} from its own
CMakeLists.txt (REQUIRES/PRIV_REQUIRES) and the components/+platform/
directory convention instead of hand-maintaining a component-map, driven by
a per-board [capability.*]/[board.*] manifest in bbtool.toml. scripts/bbtool/cmake_parse.py
lifts the REQUIRES parser out of commands/docs.py (now shared); boards.py
resolves capabilities/components and the transitive build graph; the new
scaffold command runs as a PlatformIO pre-hook (scripts/bbtool_pio.py,
custom_bb_board), replacing scripts/native_scaffold.py's COMPONENT_MAP.

- fixes 8 components with a portable impl filed only under platform/espidf/
  (bb_log, bb_nv, bb_ota_boot, bb_ota_hooks, bb_ota_pull, bb_ota_push,
  bb_telemetry, bb_fan_routes) via colocated `# bbtool-scaffold-hint:`
  comments in their own CMakeLists.txt, closing the derivation gap against
  the legacy hand-authored map.
- bbtool.toml gains [capability.core] (native's full component set) +
  [board.native] so breadboard dogfoods its own scaffold.
- platformio.ini [env:native] now uses the scaffold pre-hook instead of
  pre:scripts/native_scaffold.py.
- cmake_parse._resolve_vars fails loud (ConditionalSetError) instead of
  silently picking the textually-last branch when a REQUIRES/PRIV_REQUIRES
  `${VAR}` resolves to a variable set() inside an if()/elseif()/else() block;
  swept every real component CMakeLists.txt clean against this check.
- README.md's downstream host-test wiring section rewritten for the new
  scaffold/capability-manifest flow, replacing the deleted
  native_scaffold.py/COMPONENT_MAP instructions.
- widened the pio_main idempotency test to also assert -I include flags and
  SRC_FILTER entries dedup on a repeated pre-hook run.

Golden-parity validated against the deleted COMPONENT_MAP (56/106 legacy
closures matched byte-for-byte; the rest differ only ... (continued)

3311 of 3311 branches covered (100.0%)

Branch coverage included in aggregate %.

5179 of 5179 relevant lines covered (100.0%)

10266.58 hits per line

Jobs
ID Job ID Ran Files Coverage
1 28768977599.1 06 Jul 2026 05:03AM UTC 76
100.0
GitHub Action Run
Source Files on build 28768977599
  • Tree
  • List 76
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #28768977599
  • b9d45d28 on github
  • Prev Build on main (#28767862999)
  • Next Build on main (#28810291452)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc