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

RobotWebTools / rclnodejs / 27193208698
91%

Build:
DEFAULT BRANCH: develop
Ran 09 Jun 2026 08:35AM UTC
Jobs 1
Files 65
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

09 Jun 2026 08:17AM UTC coverage: 91.22% (+5.7%) from 85.523%
27193208698

push

github

web-flow
Phase 2: convert lib/, index.js and tests to native ES modules (#1530)

**Overview:** 189 files changed, +957 / −1162. Converts `lib/`, `index.js`, `bin/`, `rosocket/` and the full test suite to native ES modules; keeps build/codegen tooling as `.cjs`; updates CI to ROS 2 Lyrical (Ubuntu 26.04); and fixes a native-addon debug-build compile error.

### Core ESM conversion
- **`index.js`** — converted to ESM entrypoint (`import`/`export`), module wiring reworked.
- **`lib/**`** — all library modules converted from `require`/`module.exports` to `import`/`export` (node, client, service, publisher, subscription, action/*, clock*, parameter*, logging*, runtime/*, serialization, time*, timer, qos*, utils, validator, native_loader, etc.).
- **`bin/rclnodejs-web.js`**, **`rosocket/index.js`**, **`rosocket/cli.js`** — converted to ESM.

### ESM/CJS boundary fixes (from Copilot review)
- **`lib/native_loader.js`** — load the CommonJS `bindings` helper via `createRequire`'s `require('bindings')` instead of `import bindings from 'bindings'`, preserving CJS caller context for addon resolution.
- **`lib/type_description_service.js`** — corrected sibling import from `'../lib/parameter.js'` to `'./parameter.js'`.

### CommonJS files kept as `.cjs`
- **`rosidl_gen/*.cjs`** (deallocator, idl_generator, index, primitive_types, templates/message-template), **`rostsd_gen/index.cjs`**, **`scripts/ros_distro.cjs`**, **`scripts/run_test.cjs`** — build/codegen tooling stays CJS (loads ESM helpers via supported `require(esm)` / `.default`).
- **`third_party/ref-napi/`** — `lib/ref.js` and `package.json` tweaks for module resolution.

### Tooling / config
- **`package.json`** — `"type": "module"` and script adjustments.
- **`eslint.config.mjs`** — ESM lint rules.
- **`.c8rc.json`** added, **`.nycrc.yml`** removed — switch coverage from nyc to c8.

### CI
- **`.github/workflows/linux-x64-asan-test.yml`**, **`.github/workflows/linux-x64-build-and-test.yml`** — migrated from ROS 2 ... (continued)

2044 of 2402 branches covered (85.1%)

Branch coverage included in aggregate %.

369 of 370 new or added lines in 65 files covered. (99.73%)

942 existing lines in 47 files now uncovered.

16688 of 18133 relevant lines covered (92.03%)

228.85 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
75.86
-0.14% lib/native_loader.js

Coverage Regressions

Lines Coverage ∆ File
155
90.97
4.14% lib/node.js
109
82.79
6.89% lib/parameter.js
86
80.73
0.0% lib/action/client.js
55
76.73
15.13% lib/qos_overriding_options.js
50
89.59
1.48% lib/event_handler.js
44
76.39
-5.58% lib/runtime/dispatcher.js
42
85.13
2.23% lib/time.js
32
85.32
1.51% lib/clock.js
32
84.27
7.25% lib/runtime/transports/http.js
31
90.53
1.11% lib/action/server.js
29
93.76
9.55% lib/lifecycle.js
29
75.86
-0.14% lib/native_loader.js
28
91.34
3.24% lib/parameter_event_handler.js
23
91.28
9.43% lib/message_validation.js
19
85.88
-2.59% lib/duration.js
19
90.25
1.53% lib/interface_loader.js
16
88.89
1.95% lib/runtime/cli-config.js
14
91.64
5.39% lib/context.js
13
94.19
1.69% lib/client.js
13
84.24
6.61% lib/runtime/transports/ws.js
10
92.84
12.01% lib/utils.js
8
89.03
5.36% lib/runtime/index.js
6
89.58
12.31% lib/action/deferred.js
6
93.65
8.05% lib/parameter_client.js
6
85.51
12.17% lib/serialization.js
5
93.55
12.78% lib/action/client_goal_handle.js
5
96.29
5.59% lib/parameter_watcher.js
5
98.05
5.75% lib/qos.js
5
96.6
2.66% lib/rate.js
5
96.72
3.39% lib/time_source.js
4
94.76
5.87% lib/action/server_goal_handle.js
4
94.48
7.24% lib/service.js
4
93.58
5.89% lib/validator.js
4
91.2
3.97% lib/wait_for_message.js
3
95.76
4.46% lib/action/uuid.js
3
97.01
11.57% lib/logging.js
3
97.15
6.72% lib/parameter_service.js
3
97.26
9.33% lib/publisher.js
2
90.38
23.72% lib/prebuilds.js
2
94.03
44.03% lib/runtime/connection.js
2
91.11
57.78% lib/runtime/transport_adapter.js
2
96.35
6.61% lib/subscription.js
2
95.41
3.98% lib/type_description_service.js
1
97.12
6.64% lib/entity.js
1
98.58
3.26% lib/message_serialization.js
1
99.07
3.51% lib/node_options.js
1
98.38
3.51% lib/timer.js
Jobs
ID Job ID Ran Files Coverage
1 27193208698.1 09 Jun 2026 08:35AM UTC 65
91.22
GitHub Action Run
Source Files on build 27193208698
  • Tree
  • List 65
  • Changed 64
  • Source Changed 64
  • Coverage Changed 64
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #27193208698
  • 43c2b3a8 on github
  • Prev Build on develop (#27064096872)
  • Next Build on develop (#27249695817)
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