Use rclcpp type support helpers in rosbag2_cpp#2017
Conversation
13c68a6 to
d7ee56a
Compare
- Rationale: We need to use this API in the Rosbag2 - Reference PR ros2/rosbag2#2017 in the Rosbag2 Signed-off-by: Michael Orlov <michael.orlov@apex.ai>
- Rationale: We need to use this API in the Rosbag2 - Reference PR ros2/rosbag2#2017 in the Rosbag2 Signed-off-by: Michael Orlov <michael.orlov@apex.ai>
- Rationale: We need to use this API in the Rosbag2 - Reference PR ros2/rosbag2#2017 in the Rosbag2 Signed-off-by: Michael Orlov <michael.orlov@apex.ai>
fujitatomoya
left a comment
There was a problem hiding this comment.
While adding code for bug fixes and new features is often seen as an enhancement, I believe that reducing code like this is just as important for maintainability 🚀 rosbag2 repository has already so many packages to maintain... 😅
- Rationale: We need to use this API in the Rosbag2 - Reference PR ros2/rosbag2#2017 in the Rosbag2 Signed-off-by: Michael Orlov <michael.orlov@apex.ai>
* Expose extract_type_identifier and get_typesupport_library_path API - Rationale: We need to use this API in the Rosbag2 - Reference PR ros2/rosbag2#2017 in the Rosbag2 Signed-off-by: Michael Orlov <michael.orlov@apex.ai> * Use C++ style in doxygen documentation Signed-off-by: Michael Orlov <michael.orlov@apex.ai> --------- Signed-off-by: Michael Orlov <michael.orlov@apex.ai>
* Expose extract_type_identifier and get_typesupport_library_path API - Rationale: We need to use this API in the Rosbag2 - Reference PR ros2/rosbag2#2017 in the Rosbag2 Signed-off-by: Michael Orlov <michael.orlov@apex.ai> * Use C++ style in doxygen documentation Signed-off-by: Michael Orlov <michael.orlov@apex.ai> --------- Signed-off-by: Michael Orlov <michael.orlov@apex.ai> (cherry picked from commit 448287b)
* Expose extract_type_identifier and get_typesupport_library_path API - Rationale: We need to use this API in the Rosbag2 - Reference PR ros2/rosbag2#2017 in the Rosbag2 Signed-off-by: Michael Orlov <michael.orlov@apex.ai> * Use C++ style in doxygen documentation Signed-off-by: Michael Orlov <michael.orlov@apex.ai> --------- Signed-off-by: Michael Orlov <michael.orlov@apex.ai> (cherry picked from commit 448287b) # Conflicts: # rclcpp/include/rclcpp/typesupport_helpers.hpp
…port #2858) (#2902) * Expose `typesupport_helpers` API needed for the Rosbag2 (#2858) * Expose extract_type_identifier and get_typesupport_library_path API - Rationale: We need to use this API in the Rosbag2 - Reference PR ros2/rosbag2#2017 in the Rosbag2 Signed-off-by: Michael Orlov <michael.orlov@apex.ai> * Use C++ style in doxygen documentation Signed-off-by: Michael Orlov <michael.orlov@apex.ai> --------- Signed-off-by: Michael Orlov <michael.orlov@apex.ai> (cherry picked from commit 448287b) # Conflicts: # rclcpp/include/rclcpp/typesupport_helpers.hpp * Address merge conflicts Signed-off-by: Michael Orlov <michael.orlov@apex.ai> --------- Signed-off-by: Michael Orlov <michael.orlov@apex.ai> Co-authored-by: Michael Orlov <morlovmr@gmail.com>
* Expose extract_type_identifier and get_typesupport_library_path API - Rationale: We need to use this API in the Rosbag2 - Reference PR ros2/rosbag2#2017 in the Rosbag2 * Use C++ style in doxygen documentation --------- (cherry picked from commit 448287b) Signed-off-by: Michael Orlov <michael.orlov@apex.ai> Co-authored-by: Michael Orlov <morlovmr@gmail.com>
d7ee56a to
f03de64
Compare
…port ros2#2858) (ros2#2902) * Expose `typesupport_helpers` API needed for the Rosbag2 (ros2#2858) * Expose extract_type_identifier and get_typesupport_library_path API - Rationale: We need to use this API in the Rosbag2 - Reference PR ros2/rosbag2#2017 in the Rosbag2 Signed-off-by: Michael Orlov <michael.orlov@apex.ai> * Use C++ style in doxygen documentation Signed-off-by: Michael Orlov <michael.orlov@apex.ai> --------- Signed-off-by: Michael Orlov <michael.orlov@apex.ai> (cherry picked from commit 448287b) # Conflicts: # rclcpp/include/rclcpp/typesupport_helpers.hpp * Address merge conflicts Signed-off-by: Michael Orlov <michael.orlov@apex.ai> --------- Signed-off-by: Michael Orlov <michael.orlov@apex.ai> Co-authored-by: Michael Orlov <morlovmr@gmail.com>
Signed-off-by: Michael Orlov <morlovmr@gmail.com>
f03de64 to
f2c2631
Compare
|
Pulls: #2017 |
|
@christophebedard @fujitatomoya The CI is green, this PR is ready for review. |
* QoSInitialization::from_rmw does not validate invalid history policy values, leading to silent failures (ros2#2841) (ros2#2845) (cherry picked from commit 73e9bfb) Signed-off-by: Alejandro Hernandez Cordero <ahcorde@gmail.com> Co-authored-by: Alejandro Hernández Cordero <ahcorde@gmail.com> * get_all_data_impl() does not handle null pointers properly, causing segmentation fault (backport ros2#2840) (ros2#2851) Signed-off-by: Alejandro Hernandez Cordero <ahcorde@gmail.com> Co-authored-by: Alejandro Hernández Cordero <ahcorde@gmail.com> * Added missing chrono includes (ros2#2854) (ros2#2856) (cherry picked from commit 373a63c) Signed-off-by: Alejandro Hernandez Cordero <ahcorde@gmail.com> Co-authored-by: Alejandro Hernández Cordero <ahcorde@gmail.com> * Fix for memory leaks in rclcpp::SerializedMessage (ros2#2861) (ros2#2864) (cherry picked from commit 8d44b95) Signed-off-by: Michael Orlov <morlovmr@gmail.com> Signed-off-by: Michael Orlov <michael.orlov@apex.ai> Co-authored-by: Michael Orlov <morlovmr@gmail.com> Co-authored-by: kylemarcey <marcey.kyle@gmail.com> * Replace std::default_random_engine with std::mt19937 (humble) (ros2#2847) (ros2#2867) (cherry picked from commit a0e2240) Signed-off-by: keeponoiro <keeeeeeep@gmail.com> Co-authored-by: keeponoiro <keeeeeeep@gmail.com> * Changelog Signed-off-by: Alejandro Hernandez Cordero <ahcorde@gmail.com> * 28.1.10 * fix test_publisher_with_system_default_qos. (ros2#2881) (ros2#2883) (cherry picked from commit e6577c6) Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com> Co-authored-by: Tomoya Fujita <Tomoya.Fujita@sony.com> * Shutdown deadlock fix jazzy (ros2#2887) * fix: Don't deadlock if removing shutdown callbacks in a shutdown callback Signed-off-by: Janosch Machowinski <J.Machowinski@cellumation.com> * refactor: Made fix API compatible Signed-off-by: Janosch Machowinski <J.Machowinski@cellumation.com> --------- Signed-off-by: Janosch Machowinski <J.Machowinski@cellumation.com> Co-authored-by: Janosch Machowinski <J.Machowinski@cellumation.com> * Event exec timer fix for ros2#2889 (ros2#2890) Signed-off-by: Janosch Machowinski <J.Machowinski@cellumation.com> Signed-off-by: Janosch Machowinski <jmachowinski@users.noreply.github.com> Co-authored-by: Janosch Machowinski <J.Machowinski@cellumation.com> Co-authored-by: Alejandro Hernández Cordero <ahcorde@gmail.com> * Add overload of `append_parameter_override` (ros2#2891) (ros2#2895) (cherry picked from commit fa0cf2d) Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com> Co-authored-by: Patrick Roncagliolo <ronca.pat@gmail.com> * Fujitatomoya/test append parameter override (ros2#2896) (ros2#2900) (cherry picked from commit 84c6fb1) Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com> Co-authored-by: Tomoya Fujita <Tomoya.Fujita@sony.com> * [jazzy] Expose `typesupport_helpers` API needed for the Rosbag2 (backport ros2#2858) (ros2#2902) * Expose `typesupport_helpers` API needed for the Rosbag2 (ros2#2858) * Expose extract_type_identifier and get_typesupport_library_path API - Rationale: We need to use this API in the Rosbag2 - Reference PR ros2/rosbag2#2017 in the Rosbag2 Signed-off-by: Michael Orlov <michael.orlov@apex.ai> * Use C++ style in doxygen documentation Signed-off-by: Michael Orlov <michael.orlov@apex.ai> --------- Signed-off-by: Michael Orlov <michael.orlov@apex.ai> (cherry picked from commit 448287b) # Conflicts: # rclcpp/include/rclcpp/typesupport_helpers.hpp * Address merge conflicts Signed-off-by: Michael Orlov <michael.orlov@apex.ai> --------- Signed-off-by: Michael Orlov <michael.orlov@apex.ai> Co-authored-by: Michael Orlov <morlovmr@gmail.com> * Add qos parameter for wait_for_message function (ros2#2903) (ros2#2906) (cherry picked from commit 2fcef70) Signed-off-by: Sriharsha Ghanta <ghanta1996@gmail.com> Signed-off-by: Alejandro Hernandez Cordero <ahcorde@gmail.com> Co-authored-by: Sriharsha Ghanta <ghanta_sriharsha@mymail.sutd.edu.sg> Co-authored-by: Alejandro Hernandez Cordero <ahcorde@gmail.com> * Fix `start_type_description_service` param handling (ros2#2897) (ros2#2909) * Fix `start_type_description_service` param handling * Add test * Demonstrate different exceptions depending on node options * Same exact exception and `what()` message in both cases * Uncrustify --------- (cherry picked from commit 4fb558a) Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com> Co-authored-by: Patrick Roncagliolo <ronca.pat@gmail.com> --------- Signed-off-by: Alejandro Hernandez Cordero <ahcorde@gmail.com> Signed-off-by: Michael Orlov <morlovmr@gmail.com> Signed-off-by: Michael Orlov <michael.orlov@apex.ai> Signed-off-by: keeponoiro <keeeeeeep@gmail.com> Signed-off-by: Tomoya Fujita <Tomoya.Fujita@sony.com> Signed-off-by: Janosch Machowinski <J.Machowinski@cellumation.com> Signed-off-by: Janosch Machowinski <jmachowinski@users.noreply.github.com> Signed-off-by: Patrick Roncagliolo <ronca.pat@gmail.com> Signed-off-by: Sriharsha Ghanta <ghanta1996@gmail.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Alejandro Hernández Cordero <ahcorde@gmail.com> Co-authored-by: Michael Orlov <morlovmr@gmail.com> Co-authored-by: kylemarcey <marcey.kyle@gmail.com> Co-authored-by: keeponoiro <keeeeeeep@gmail.com> Co-authored-by: Tomoya Fujita <Tomoya.Fujita@sony.com> Co-authored-by: Janosch Machowinski <jmachowinski@users.noreply.github.com> Co-authored-by: Janosch Machowinski <J.Machowinski@cellumation.com> Co-authored-by: Patrick Roncagliolo <ronca.pat@gmail.com> Co-authored-by: Sriharsha Ghanta <ghanta_sriharsha@mymail.sutd.edu.sg>
|
@ros-pull-request-builder retest this please |
|
@ros-pull-request-builder retest this please |
|
https://github.com/Mergifyio backport kilted jazzy |
✅ Backports have been createdDetails
|
Signed-off-by: Michael Orlov <morlovmr@gmail.com> (cherry picked from commit bc37cdf)
Signed-off-by: Michael Orlov <morlovmr@gmail.com> (cherry picked from commit bc37cdf) # Conflicts: # rosbag2_transport/src/rosbag2_transport/topic_filter.cpp
… (#2130) * Use rclcpp typesupport helpers in rosbag2_cpp (#2017) Signed-off-by: Michael Orlov <morlovmr@gmail.com> (cherry picked from commit bc37cdf) # Conflicts: # rosbag2_transport/src/rosbag2_transport/topic_filter.cpp * Address merge conflicts Signed-off-by: Michael Orlov <michael.orlov@apex.ai> --------- Signed-off-by: Michael Orlov <michael.orlov@apex.ai> Co-authored-by: Michael Orlov <morlovmr@gmail.com> Co-authored-by: Michael Orlov <michael.orlov@apex.ai>
Description
Historically, the type support helpers were implemented in the
rosbag2_cpp/typesupport_helpers.cpp, then the implementation of the major helper functions was added to the core rclcpp package in therclcpp/typesupport_helpers.hpp.However, the original implementation was never removed from the
rosbag2_cpppackage.This PR replaces original type support helpers in the
rosbag2_cppwith the same functions from the corerclcpppackage to avoid code duplication and divergences in the future.Additional information
typesupport_helpersAPI needed for the Rosbag2 rclcpp#2858action-ros-ci-repos-supplemental: https://raw.githubusercontent.com/ros2/ros2/rolling/ros2.repos