Skip to content

Conversation

@SuperJappie08
Copy link

Description

Original author: @CursedRock17
Original reviewers: @fujitatomoya @audrow @ivanpauno @wjwwood

Continuation of #1140.
Implemented most feedback.

Fixes #1019

Is this user-facing behavior change?

Yes, Lifecycle transition events are now filled.
This comes with a small change in function signatures to support timestamping.

Did you use Generative AI?

No.

Additional Information

I would also recommend merging ros2/rcl_interfaces#185 to limit the amount of breaking changes.

I noticed that the node_handle field of rcl_lifecycle_com_interface_t is never filled or used as far as I can see.

@SuperJappie08 SuperJappie08 changed the title Rolling lifecycle transition event Populate Transitions in Transition Events (continuation) Oct 15, 2025
SuperJappie08 added a commit to SuperJappie08/rclcpp that referenced this pull request Oct 15, 2025
SuperJappie08 added a commit to SuperJappie08/rclpy that referenced this pull request Oct 15, 2025
SuperJappie08 added a commit to SuperJappie08/rclc that referenced this pull request Oct 15, 2025
@fujitatomoya
Copy link
Collaborator

Pulls: ros2/rcl_interfaces#185, #1269, ros2/rclcpp#2967, ros2/rclpy#1528
Gist: https://gist.githubusercontent.com/fujitatomoya/43f97e6f8303a55ef1fdd1c645c51dd1/raw/feab0bba51e7c64b9f07536c61c03781c6dcd1e2/ros2.repos
BUILD args: --packages-above-and-dependencies lifecycle_msgs rcl_lifecycle rclcpp_lifecycle rclpy
TEST args: --packages-above lifecycle_msgs rcl_lifecycle rclcpp_lifecycle rclpy
ROS Distro: rolling
Job: ci_launcher
ci_launcher ran: https://ci.ros2.org/job/ci_launcher/17335

  • Linux Build Status
  • Linux-aarch64 Build Status
  • Linux-rhel Build Status
  • Windows Build Status

@SuperJappie08
Copy link
Author

@fujitatomoya, this patch did not yet include compatibility with ros2/rcl_interfaces#185, but I have it (just not part of the PR yet)

I will fix it now

@SuperJappie08
Copy link
Author

SuperJappie08 commented Nov 4, 2025

@fujitatomoya friendly ping, could you rerun the tests?

@fujitatomoya
Copy link
Collaborator

Pulls: ros2/rcl_interfaces#185, #1269, ros2/rclcpp#2967, ros2/rclpy#1528
Gist: https://gist.githubusercontent.com/fujitatomoya/7419b9893cf173e26ca59097d1d673aa/raw/feab0bba51e7c64b9f07536c61c03781c6dcd1e2/ros2.repos
BUILD args: --packages-above-and-dependencies lifecycle_msgs rcl_lifecycle rclcpp_lifecycle rclpy
TEST args: --packages-above lifecycle_msgs rcl_lifecycle rclcpp_lifecycle rclpy
ROS Distro: rolling
Job: ci_launcher
ci_launcher ran: https://ci.ros2.org/job/ci_launcher/17401

  • Linux Build Status
  • Linux-aarch64 Build Status
  • Linux-rhel Build Status
  • Windows Build Status

SuperJappie08 added a commit to SuperJappie08/launch_ros that referenced this pull request Nov 5, 2025
SuperJappie08 added a commit to SuperJappie08/launch_ros that referenced this pull request Nov 5, 2025
Signed-off-by: SuperJappie08 <[email protected]>
@SuperJappie08
Copy link
Author

SuperJappie08 commented Nov 6, 2025

@fujitatomoya, I added the explicit conversions, as required by CMake.

Two things to note:
rcl_lifecycle has stricter compile flags than rcl, is that intended?

-Wformat=2 -Wconversion -Wshadow -Wsign-conversion

Instead of adding the second conversion, it might make sense to update the id field of rcl_lifecycle_transition_s match the type of id field in the message, as I cannot instantly think of a reason to make those differ.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

transition events don't populate transition id, label, or timestamp

4 participants