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

dangernoodle-io / breadboard / 25073845293
100%

Build:
DEFAULT BRANCH: main
Ran 28 Apr 2026 07:42PM UTC
Jobs 1
Files 7
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

28 Apr 2026 07:41PM UTC coverage: 100.0%. Remained the same
25073845293

push

github

web-flow
feat(bb_registry): add handler-lifecycle registry; migrate ota_pull, ota_push, log_routes, info (#123)

New bb_registry component holds (name, init_fn) entries that opt-in components self-register at link time via the BB_REGISTRY_REGISTER(name, fn) macro. The app calls bb_registry_init(server) once after bb_http_server_start; the registry walks every entry in registration order and invokes its init.

Migrated four components — bb_ota_pull, bb_ota_push, bb_log_routes (two entries: stream + status routes), bb_info — and removed their public _register_handler / _register_routes symbols. The smoke esp32-wroom-32 main shrinks from 4 register calls to one bb_registry_init.

Why a new component, not folded into bb_http: bb_http already owns a route descriptor registry for OpenAPI metadata; this is a handler-lifecycle registry, different purpose. Co-locating would conflate the two and force every registry user to REQUIRES bb_http even without HTTP routes.

Linker quirk worth knowing: PlatformIO's espidf builder strips ESP-IDF's WHOLE_ARCHIVE flag, so constructor-only translation units get garbage-collected by --gc-sections. The cmake/bb_registry.cmake helper bb_registry_force_register() injects a -u <symbol> link option per registry entry to force-keep the .o. Verified on hardware: registry init reports 5 entries, all four migrated routes respond correctly.

Folding bb_log_routes back into bb_log core is Phase 2.1 (paired with Kconfig) — it can't safely happen until Kconfig can conditionally drop the routes source + bb_http dep, otherwise headless bb_log consumers regress.

272 of 272 branches covered (100.0%)

Branch coverage included in aggregate %.

431 of 431 relevant lines covered (100.0%)

147.89 hits per line

Jobs
ID Job ID Ran Files Coverage
1 25073845293.1 28 Apr 2026 07:42PM UTC 7
100.0
GitHub Action Run
Source Files on build 25073845293
  • Tree
  • List 7
  • 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 #25073845293
  • b7211f55 on github
  • Prev Build on main (#25064433554)
  • Next Build on main (#25075291670)
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