-
Notifications
You must be signed in to change notification settings - Fork 409
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix the keep_last warning when using system defaults. #2082
Conversation
If the user creates SystemDefaultsQoS setting, they are explicitly asking for SystemDefaults. In that case, we should *not* warn, and just let the underlying RMW choose what it wants. Implement that here by passing a boolean parameter through that decides when we should print out the warning, and then skip printing that warning when SystemDefaultsQoS is created. Signed-off-by: Chris Lalancette <clalancette@openrobotics.org>
Note that this should fix ros2/rmw#341 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Since this change went in I see my nav2_util build failing with:
Not sure why the type conversion unsigned long -> size_t isn't working there? When I change it to something like this there is no problem.
What is C++ doing here? This is Ubuntu 22.04 / ros2_rolling. Does libbondcpp need recompiling? Does the Ubuntu package for it need updating? Not sure the C++ details there. |
Almost certainly the problem is that you have a mixed workspace. That is, you have rclcpp in your overlay, and bondcpp in your underlay ( Either you need to build everything from source here (including bondcpp), or you need to wait until we do an rclcpp release with this change in it (which will rebuild |
If the user creates SystemDefaultsQoS setting, they are explicitly asking for SystemDefaults. In that case, we should not warn, and just let the underlying RMW choose what it wants. Implement that here by passing a boolean parameter through that decides when we should print out the warning, and then skip printing that warning when SystemDefaultsQoS is created.
Signed-off-by: Chris Lalancette clalancette@openrobotics.org