ros-perception / vision_msgs

Algorithm-agnostic computer vision message types for ROS.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Incompatibility between messages for different ROS distros

silasalves opened this issue · comments

I noticed that some messages (in my case, Detection2D) is different on ROS Melodic and Noetic:

Melodic Noetic
std_msgs/Header header
vision_msgs/ObjectHypothesisWithPose[] results
vision_msgs/BoundingBox2D bbox
sensor_msgs/Image source_img


std_msgs/Header header
vision_msgs/ObjectHypothesisWithPose[] results
vision_msgs/BoundingBox2D bbox
sensor_msgs/Image source_img
bool is_tracking
string tracking_id

Is there a reason for omitting is_tracking and tracking_id on Melodic? I installed the package using APT, but I could also clone this repo in my workspace in case I need the tracking messages in the future.

is_tracking and tracking_id were added after melodic was released, and we have a general rule in the ROS community to not change message definitions after a distro release, because this causes md5 compatibility issues (the message has to be rebuilt everywhere). Therefore, the fields were added in noetic but not earlier versions.

Please note that the tracking fields are going away or being renamed in newer versions of this package (#50)

Thanks a lot for the heads-up!