Conversation
Needed for: <member_of_group condition="$ROS_VERSION == 2">
nuclearsandwich
left a comment
There was a problem hiding this comment.
This environment variable is exported as part of the ros_environment package. If a package needs that environment variable at build or runtime it should set the appropriate dependencies in its package.xml on ros_environment.
|
Ah, that was the missing bit, thanks :). |
@jspricke I think that there's probably more work required to resolve any dependency issues. Group membership and dependencies are completely unimplemented in bloom and ros_buildfarm. Core ROS 2 packages handle this by manually "exploding" the known group members in packages with group dependencies in the source package.xml so the group dependencies are only used as auxiliary dependencies in colcon workspaces and explicit dependencies are present for the build farm. Here's an example: https://github.com/ros2/rmw_implementation/blob/0bb811c54eb0138aa20ecbb4494ad0947d834243/rmw_implementation/package.xml#L20-L28 So if there's a dependency resolution failure, depending on ros_environment at build time won't help because bloom will already have resolved the package dependencies. Conditions are supported in bloom but member_of_group and group_depend keys are completely ignored. There are facts and circumstances why this is the case but they're not relevant or easy to change. Fleshing out groups is a project that will likely start before Humble is released but won't be complete enough to be be supported in Humble. Is there an upstream issue or PR for this build failure that I can contribute to? |
There is none, can you open one here? https://github.com/PlotJuggler/plotjuggler_msgs |
Needed for:
<member_of_group condition="$ROS_VERSION == 2">
I hope this fixes:
https://build.ros2.org/view/Rbin_uF64/job/Rbin_uF64__plotjuggler_msgs__ubuntu_focal_amd64__binary/73/consoleFull