Skip to content

Releases: RobotWebTools/rclnodejs

rclnodejs v0.11.0

13 Dec 14:43
df09ca4
Compare
Choose a tag to compare

This release has been verified with ROS 2 Eloquent Elusor by #539.

Feature Added

  • TypeScript support, #537
    • Type declaration files (*.d.ts), see types/ folder
    • dts generation script creates interfaces.d.ts, a collection of type aliases for all ROS msg and srv interfaces, including custom msg and srv files
    • Updated README with notes for working with TypeScript.
import * as rclnodejs from 'rclnodejs';
import {std_msgs} from 'rclnodejs';

async function main() {

  await rclnodejs.init();
  const node = rclnodejs.createNode('messager');
  const pub = node.createPublisher('std_msgs/msg/String', 'message');
  const timer = node.createTimer(1000, () => {
      const msg = 'hello world: ' + Date.now();
      //alternatively using type aliased messages
      // const msg: std_msgs.msg.String = {
      //  data: 'hello world (std_msg)'
      // }
    pub.publish(msg);
  });

  rclnodejs.spin(node); 
}

main();

Other

  • Removed message generation for deprecated actions

rclnodejs v0.10.3

18 Nov 04:56
Compare
Choose a tag to compare

This release is a bug fix edition and has been verified with ROS 2 Dashing Diademata Patch Release 4 by #525

Bug fix

  • Fix build in cases where AMENT_PREFIX_PATH has more than two items #521
  • Fix time.seconds and nanoseconds #531
  • Replace the deprecated methods used in the tests written in C++ #515
  • Replace the deprecated rclpy interfaces used in the unit tests #518

Others

  • Add a note explaining a possible error that can happen when using jest #514
  • Use AMENT_PREFIX_PATH as env var #508
  • Minimum node version #528

Meanwhile, many individual developers contributed their effort to the project, I'd like to thanks them all!

rclnodejs v0.10.2

16 Sep 07:13
Compare
Choose a tag to compare

This version has been verified with ROS 2 Dashing Diademata Patch Release 3 on #507.

Feature Added

  • Two functions were added to the Client class #509
    • waitForService
    • isServiceServerAvailable
  client.waitForService(1000).then(result => {
    if (!result) {
      console.log('Error: service not available');
      rclnodejs.shutdown();
      return;
    }
  });

Others

  • Use AMENT_PREFIX_PATH as env var #508 .
  • Update on-line jsdoc and CIs configuration.
  • Upgrade dependencies.

rclnodejs v0.10.1

16 Aug 03:20
Compare
Choose a tag to compare

This version has been verified with ROS 2 Dashing Diademata Patch Release 2.

Feature Added

  • Support to pass the timeout parameter when starting to spin, which may reduce the CPU overhead potentially. #472 e.g.
rclnodejs.spin(node, -1);  // Waits until something happens.
  • Support to define the default value of wstring, e.g.
wstring wstring_value_default1 "Hello world!"

Others

  • Update the CI configurations and dependencies.

rclnodejs v0.10.0

17 Jun 07:14
Compare
Choose a tag to compare

This is the very first version which starts to support - ROS 2 Dashing Diademata verified on #494, and there is still some issue which fails the AppVeyor on Windows 10 and I have submitted an issue to track it. Hopefully, all bots will pass when it gets resolved.

Feature Added

Others

  • Update README file to add Dashing information

rclnodejs v0.9.0

24 Jan 09:34
Compare
Choose a tag to compare

Feature Added

  • Add the support of node graph APIs #452

Others

  • Update the doc links in README file #449
  • Deploy Ubuntu 18.04 on Travis CI #451
  • Illustrate the relationship between rclnodejs versoins and ROS 2.0 releases #459

rclnodejs v0.8.0

04 Jan 07:43
Compare
Choose a tag to compare

Feature Added

  • Add the support of Context #442

rclnodejs v0.7.1

26 Nov 08:49
Compare
Choose a tag to compare

Bug Fix

  • Fix the build error due to the changes of rcl_wait_set_add_* #433

rclnodejs v0.7.0

16 Nov 06:11
Compare
Choose a tag to compare

Feature Added

  • Add Clock/ROSClock class support.
  • Add TimeSource class support, which enables you to attach Clocks to it and update them by receiving the topic of builtin_interfaces/msg/Time.

Improvements

let time = new Time(0, '9007199254740992'); // time.nanoseconds equals  '9007199254740992'

let duration = new Duration(0, '9007199254740992'); // duration.nanoseconds equals  '9007199254740992'

rclnodejs v0.6.1

05 Nov 05:05
Compare
Choose a tag to compare

Release Note

  • This patch release fixed a problem which caused by the new error handling API #429