RobotWebTools / rclnodejs

Node.js version of ROS 2.0 client
https://docs.ros.org/en/humble/Concepts/Basic/About-Client-Libraries.html?highlight=rclnodejs#community-maintained
Apache License 2.0
311 stars 70 forks source link

message generation fails on Rolling due to unsupported *.idl files in ros2bag pkg #890

Closed wayneparrott closed 1 year ago

wayneparrott commented 1 year ago

The Rolling distro for windows includes the rosbag2_storage_mcap_testdata pkg. In this package there is a the ComplexMsgDependsOnIdl.msg which includes BasicIdl.idl. The rclnodejs message generator only parses .msg and .srv files at this time. Thus the message generator fails with an error. Note that message generation is part of the npm install process for rclnodejs. Thus rclnodejs 0.21.4 can not be used with the Rolling distro on Windows at this time.

wayneparrott commented 1 year ago

A quick solution is to introduce a mechanism for filtering packages and messages that should not be generated. The run_test.js script uses a blocklist.json file to filter test files by OS. I propose we introduce a similar feature for specifying packages and messages to be filtered from the message generation process. Thoughts?

example filter spec:

interface MsgGenFilter {
  pkg: Regexp;
  os?: Regexp;
  message?: Regexp;
}

Thoughts?

minggangw commented 1 year ago

Related issue #764