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

dangernoodle-io / breadboard / 29883762080
96%

Build:
DEFAULT BRANCH: main
Ran 22 Jul 2026 01:42AM UTC
Jobs 1
Files 190
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

22 Jul 2026 01:40AM UTC coverage: 96.362%. Remained the same
29883762080

push

github

web-flow
feat: validate component CMakeLists and platformio.ini paths resolve (B1-1134) (#987)

Adds lint rule component-path-unresolved: every filesystem path a
component's CMakeLists.txt (idf_component_register's SRCS/SRC_DIRS/
INCLUDE_DIRS/PRIV_INCLUDE_DIRS, target_include_directories, include) or
an example's platformio.ini (-I build_flags, +<...> build_src_filter)
references must actually resolve on disk. Motivated by two silent failure
modes: (1) moving a component into a components/<group>/<name>/ layout
changes the meaning of its relative ${CMAKE_CURRENT_LIST_DIR}/../../
paths, and nothing catches a stale one until a build fails; (2)
PlatformIO's build_src_filter +<...> glob entries do NOT error when a
pattern matches zero files -- the source silently drops out and only
surfaces as an undefined-reference at link time, far from the cause.

Reuses cmake_parse.py's existing REQUIRES/PRIV_REQUIRES parser machinery
(new parse_paths()/parse_embed_assets()/parse_target_include_directories()/
parse_include_calls()/single_opaque_property_vars() next to
parse_requires(), sharing the call-block/token-walk helpers -- the block
finder now takes a SET of command names rather than one hardcoded name, so
covering another command is data, not a new code path) and
discovery.build_index (depth-agnostic component enumeration) rather than
hand-rolling a second parser or directory walk.

Command coverage swept deliberately, not just the one instance that
prompted it (review B1-1134): every path-bearing CMake command actually
used in components/**/CMakeLists.txt is covered or its exclusion is
documented in the rule's own docstring --
target_include_directories/include (bb_display_ili9341,
bb_display_st77xx, bb_prov_default_form) are now checked;
target_link_libraries (linker flags only, never a path in this tree) and
idf_build_set_property (a flag setter, not a path) are excluded with
reasons; idf_component_get_property/idf_build_get_property-derived vars
(e.g. bb_diag's ${e... (continued)

7458 of 8054 branches covered (92.6%)

Branch coverage included in aggregate %.

12619 of 12781 relevant lines covered (98.73%)

1211.8 hits per line

Jobs
ID Job ID Ran Files Coverage
1 29883762080.1 22 Jul 2026 01:42AM UTC 190
96.36
GitHub Action Run
Source Files on build 29883762080
  • Tree
  • List 190
  • 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 #29883762080
  • 33f89810 on github
  • Prev Build on main (#29883273570)
  • Next Build on main (#29885158165)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc