Clarify update rules for component interfaces #3668
Replies: 3 comments 8 replies
-
One way is to forbid the incompatible change and create a new interface instead, and keep the old interface for a period of time.
|
Beta Was this translation helpful? Give feedback.
-
If you have any requests and use cases regarding interface updates, please post them in this thread. |
Beta Was this translation helpful? Give feedback.
-
@isamu-takagi thanks for working on this and opening up this discussion!
Can you elaborate this further?
Adding a new field to an existing message would change its signature. But there might be some ABI compatibility issues because of the changed signatures for pre-compiled/distributed old/new messages. I've lived issue when trying to backport something in the ros2 messages. Edit: I've just seen your remarks on this:
Maybe we should also add a column for ABI compatibility too. |
Beta Was this translation helpful? Give feedback.
-
Overview
To scale Autoware development, we need to provide a stable interface. However, for development reasons, it may be necessary to change the interface. In order to minimize the impact of updating the interface, I would like to consider the interface update procedure, compatibility and migration.
Goals
Related links
What is interface update
Here we define the following as an interface update. The "Compatibility" column indicates compatibility for source code. Note that it is not compatibility for ROSBAG etc. because the binary representation of ROSIDL is different
Beta Was this translation helpful? Give feedback.
All reactions