Skip to content

rclnodejs Alpha 2 release

Pre-release
Pre-release
Compare
Choose a tag to compare
@minggangw minggangw released this 01 Dec 03:55
· 514 commits to develop since this release

Release Note

Features

All RCL features are present in rclnodejs except memory allocator (which should not be handled in JavaScript)

  • Publish/Subscribe
  • Clients and Services
  • Timers
  • ROS IDL code generation
  • Validation utilities
  • RMW QoS

New Features Since Last Release:

  • The generator can update the JavaScript code from .msg files on the basis of the version.
  • Implemented 5 methods in Node interfaces: destroyPublisher/destroySubscription/destroyClient/destroyService/destroyTimer.
  • Add a new approach to require a specific message type, e.g.
const String = rclnodejs.require('std_msgs/msg/String'); 

or

let String = rclnodejs.require({package: 'std_msgs', type: 'msg', message: 'String'});
  • Support to pass a plain JavaScript object to construct the ROS message, which make it so convenient either to write code or dubug, e.g.
    // Publish a JointState of sensor_msgs package.
    publisher.publish({
      header: {
        stamp: {
          sec: 123456,
          nanosec: 789,
        },
        frame_id: 'main frame',
      },
      name: ['Tom', 'Jerry'],
      position: [1, 2],
      velocity: [2, 3],
      effort: [4, 5, 6],
    });

npmjs.com

This project is also released on npmjs.com

npm install rclnodejs

Others:

  • Add more unit tests to enhance the robustness.
  • Leverage the coveralls.io to count up the coverage of unit test.
  • Target the Node.js version on LTS Carbon.