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

RobotWebTools / rclnodejs / 41764787681
91%

Build:
DEFAULT BRANCH: develop
Ran 04 Nov 2026 03:10AM UTC
Jobs 1
Files 67
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

04 Nov 2026 03:04AM UTC coverage: 91.177% (+0.01%) from 91.164%
41764787681

push

github

web-flow
Harden ready-batch dispatch and process-exit cleanup (#1666)

## Summary

Prevent callbacks from accessing stopped or destroyed ROS entities, and release native resources when callbacks throw or the process exits.

## Changes

- Track ready batches with `_dispatchGeneration`; increment it in `stop()`, `stopSpinning()`, and `destroy()` so an immediate restart cannot resume an invalidated batch.
- Check `event.isDestroyed()` before `takeData()` and recheck action entities between successive ready events.
- Run `Type.destroyRawROS()`, `GoalInfoArray.freeArray()`, and `Entity._gcHandles()` in `finally` blocks.
- Stop the batch at the first synchronous callback error, preserving the original thrown value. Document Node.js uncaught exception handling for `spin()` and direct propagation for `spinOnce()`.
- Register `process.once('exit', () => rcl.shutdownAll())` to shut down default and custom contexts before native teardown.
- Call `rcl_context_fini()` for initialized contexts even when an earlier `rcl_shutdown()` has already invalidated them.
- Test stale-batch rejection after stop/restart, destroyed event handlers, callback-error cleanup, and context shutdown on natural exit, `process.exit(7)`, and an unhandled callback error.
- Print child exit code, signal, sanitizer settings, stdout, and stderr when the unhandled-callback regression fails.

Fix: #1667

2359 of 2764 branches covered (85.35%)

Branch coverage included in aggregate %.

258 of 259 new or added lines in 2 files covered. (99.61%)

18124 of 19701 relevant lines covered (92.0%)

272.58 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
90.26
0.04% lib/node.js
Jobs
ID Job ID Ran Files Coverage
1 41764787681.1 04 Nov 2026 03:10AM UTC 67
91.18
GitHub Action Run
Source Files on build 41764787681
  • Tree
  • List 67
  • Changed 5
  • Source Changed 2
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #41764787681
  • 8f2816d4 on github
  • Prev Build on develop (#41581662668)
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