Skip to content

Releases: RobotWebTools/rclnodejs

rclnodejs v0.18.0

08 Jan 07:01

Choose a tag to compare

Feature

  • Propose making Node extendable (i.e, create Node subclasses) #753 e.g.
class MyNode extends Node {
  constructor(
    nodeName,
    namespace = '',
    context = Context.defaultContext(),
    options = NodeOptions.defaultOptions
  ) {
    super(nodeName, namespace, context, options);
    this.init();
  }

Bug Fix

  • Find ros packages from ament index #747
  • benchmark code does not build on foxy #739
  • High CPU load if there are no registered handles #752

Others

  • [AppVeyor] Update to Visual Studio 2019 #755
  • Adding configuration for prettier #738
  • Mitigate docker hub rate limiting #766
  • remove test.js #748
  • Improve RclHandle ptr free() strategy #728
  • Remove the redundant test-rate.js #762

rclnodejs v0.17.0

27 Nov 03:29

Choose a tag to compare

Feature

  • ROS2 Lifecycle Node (managed node) #722
  async init() {
    await rclnodejs.init();

    this._count = COUNTD_DOWN;
    this._node = rclnodejs.createLifecycleNode(NODE_NAME);
    this._node.registerOnConfigure((prevState)=>this.onConfigure(prevState));
    this._node.registerOnActivate((prevState)=>this.onActivate(prevState));
    this._node.registerOnDeactivate((prevState)=>this.onDeactivate(prevState));
    this._node.registerOnShutdown((prevState)=>this.onShutdown(prevState));
    this._StateInterface = rclnodejs.createMessage('lifecycle_msgs/msg/State').constructor;

    rclnodejs.spin(this._node);
  }

Bug Fix

  • Problem with space in path #711
  • Shuts down all contexts on sigint; remove g_sigint_gc #720
  • Fix action support to interface_loader.loadInterfaceByPath() #730
  • Fix some compilation warnings generated by: node-gyp rebuild (#734)
  • Removed unused vars #741

Others

  • Improve the docs & shutdown behavior when the node process is terminated #721
  • Cleanup Message Generation #726
  • Clean up some tests #725
  • Simplify rclnodejs/index.js #737

rclnodejs v0.16.0

09 Oct 05:31

Choose a tag to compare

Feature

  • Improve typing support for services #708
  • Support to publish/subscribe serialized messages #646
  • Update typings to support pub-sub of serialized messages #706

Bug Fix

  • Segfault during generate_messages script #699

Others

  • Add TypeScript syntax highlighting to README #701
  • Upgrade the macOS to 10.15.5 on CircleCI #702

rclnodejs v0.15.3

27 Aug 09:07

Choose a tag to compare

Bug Fix

  • Error in TimeSource subscription to /clock topic #696
  • Upgrade ref-napi to 3.0.0

rclnodejs v0.15.2

07 Aug 04:01

Choose a tag to compare

Note: v0.15.2 is a hotfix version and verified by 04b1493. (2020-8-7)

Bug Fix

  • Add missing type declarations for action server/client destroy methods #690
  • Improve tsd generation resilency. #691
  • fix: electron (#685)
  • Correct the description of sendGoal function #692

rclnodejs v0.15.1

30 Jul 05:39

Choose a tag to compare

Note: v0.15.1 is a hotfix version, which fixed an urgent memory leak problem in rclnodejs and is verified by 17b9c66. (2020-7-30)

Bug Fix

  • memory leaks in RclHandle and ref-napi #674

rclnodejs v0.15.0

21 Jul 09:19

Choose a tag to compare

Note: v0.15.0 has been tested against ROS 2 Foxy Fitzroy Patch Release 1 by 3071fea (2020-7-21)

Feature

Bug Fix

  • Use Read-write locks to protect the data shared between threads #662
  • Gen 'number[] | typed-array' union in tsd files #658 #665
  • fix compatibility for eloquent #666
  • Align with the basic types which can be typed-arrays #670
  • Fix compiling error when using Node.js v10.12.0 #678
  • Fix double-free when using typed array #679
  • fix use-after-free in subscription callbacks #680

rclnodejs v0.14.1

10 Jun 08:24

Choose a tag to compare

Note: v0.14.1 has been tested against ROS 2 Foxy Fitzroy by 142b970 (2020-6-10)

Bug Fix

  • Rename rosidl_generator_c to rosidl_runtime_c #650
  • Call rcl_logging_configure/rcl_logging_fini when init/shutdown #652

rclnodejs v0.14.0

09 May 03:19

Choose a tag to compare

Note: v0.14.0 has been tested against ROS 2 Eloquent Elusor - Patch Release 1 by #653 (2020-5-8)

Features Added

  • Add actions support to rclnodejs #630
    Actions gets supported, see detailed implementation steps here and the related examples
  • use_sim_time parameter support #599
  • Adds test for --log-level cmdline arg usage #608
  • Adds Time#toMsg() #620

Bug Fix

  • Fix all build warnings when building with Node.js v12 #618
  • Fix test failures with dtslint v3.4 #622
  • Disable common compiler warnings #623
  • Removes compiler format string literal warning #627
  • Use libuv utilities to retrive symbols #633
  • Remove spdlog as dependency #641
  • Remove invalid import #645
  • Remove extraneous surrounding namespace from DEFAULT_OPTIONS #642

Misc

  • Use clang-format (by Google style) to format C++ code #636
  • Format the codebase by npm run format 711072d
  • Remove jsdoc from npm package #639
  • Update dependency 99ba8b4
  • Reduce the unpacked package size from 4.71MB to 701kB

rclnodejs v0.13.0

12 Mar 07:20

Choose a tag to compare

Note: V0.13.0 has been tested against ROS 2 Eloquent Elusor - Patch Release 1 (2020-03-12)

Features Added

  • Introducing ros2 parameters and name remapping #576
  • Add Rate for #564
  • Added Node#now() with test #598
  • Add getLogger to Node object #591
  • Add getClock to Node object #592)

Bug Fix

  • Time fromMsg() fix #601
  • eslint improvements #603
  • Fix possible error when generating typescript definitions #600
  • Fix compile errors with node v12 #582
  • Replace ref libraries with v12 compatible alternates #578
  • Fix v8 deprecation warnings #567

Misc

  • Allow installing with Node v12 and update README #597
  • Fix format script on Windows and include subfolders #586
  • Use linters by lint-staged #583
  • Upgrade uuid to 7.0.2