Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
[ROS2 QoS meta-ticket] Dealine, Liveliness, and Lifespan #680
As a ROS 2 developer, I want to have some guarantees on the delivery of my messages and notification of when my system fails to meet those policies. These new QoS settings provide additional methods of specifying the profile for the messages in your system. Additionally they provide a feedback mechanism to know when your specified deadline and liveliness have been violated.
The new QoS features are implemented and available using the rclcpp and rclpy client libraries with either rmw_fastrtps, rmw_connext, or rmw_opensplice.
Phase 1 - April 8th (interface freeze)
Phase 2 - May 16th (feature freeze)
I find it pretty difficult to track which pr's are meant to be reviewed together and to be merged together. For instance, have a look at the issues for this feature on waffle.io:
None of them are connected (see the connects to feature: https://help.waffle.io/faq/waffle-workflow/use-waffles-connect-keyword-to-connect-prs-to-issues).
Here's an example of that:
Also, many of the issues/pr's are in progress and some are in review (as denoted by the labels on the issues/pr's). This issue isn't in progress or in review, I just moved it to in progress so it shows up next to it's peers.
Waffle will be going away soon, but it's still how we organize these for now, and hopefully in the future our new solution will work in a similar fashion.
Aside from the tool specifics, it would be nice to have pr's that should be reviewed and merged together be grouped somehow. I see in some places but not others a
Sorry for the organization difficulties. Outside of rclpy, I think that most of these are pretty tightly coupled at the moment. Here is my initial breakdown of what is coupled and I'll work with the people who opened each PR to get them marked with the proper "Connects to *" syntax.
Make parameters optional
New QoS Features and Events in rcl layer
Assert Liveliness Functions
Event Callbacks available
Unfortunately our team cannot change the tags on the PRs ourselves, but I'll make sure that we are active about making a comment stating when a tag should be added/changed.
The latest update on this is that all of the PRs for the features have been merged. The one feature that was not able to be done in time is Liveliness support for rmw_fastrtps. Liveliness support is currently planned for Fast-RTPS release 1.8.1 and we look at enabling support for it in rmw_fastrtps at that point.
The only outstanding PRs are for the demo and system_test packages, which we hope to get merged in after feature freeze.
@dirk-thomas Both the PRs are in a place where they're ready for follow up reviews. I assumed they would be lower priority for the next couple of days since they aren't blocking feature freeze, but as soon as OSRF has bandwidth to review them again we can get them merged.