ros2 / domain_bridge

Bridge communication across different ROS 2 domains.
Apache License 2.0
52 stars 11 forks source link

Foxy Support #59

Open edgarcamilocamacho opened 2 years ago

edgarcamilocamacho commented 2 years ago

Hello. Should the package work on ROS2 Foxy? When I try to manually build it I get some CMake related errors, and I don't see any foxy related branch.

jacobperron commented 2 years ago

This package was initially developed with ROS Galactic in mind, and I'm not sure if it ever successfully built for Foxy.

I'm not sure I have the time to investigate support for Foxy, but if someone would like to try I suggest starting from the galactic branch and trying to adapt it to work with Foxy.

aprotyas commented 2 years ago

I looked into this. The CMake issue doesn't exist in the galactic branch - it was about rosidl_get_typesupport_target.

I believe this package can't be supported for Foxy without a lot of work, because domain_bridge::DomainBridgeImpl requires rclcpp::GenericPublisher/rclcpp::GenericSubscription, and I'm fairly certain that https://github.com/ros2/rclcpp/pull/1452 can't be backported to Foxy.

https://github.com/ros2/domain_bridge/blob/9798535724b299eb2dde7ad0f93ca3d68f746f1c/src/domain_bridge/domain_bridge.cpp#L33-L34

jacobperron commented 2 years ago

@aprotyas If we go back into the commit history of the domain_bridge, you'll find that we used to have a copy of rclcpp::GenericPublisher and rclcpp::GenericSubscription in this repository (since it predates their addition in rclcpp). So, if someone wanted to try, they could add copies of those classes back to this repo for Foxy support.

Tag 0.3.0 has it's own generic pub/sub classes: https://github.com/ros2/domain_bridge/tree/0.3.0/src/domain_bridge

aprotyas commented 2 years ago

So, if someone wanted to try, they could add copies of those classes back to this repo for Foxy support.

That makes sense!

I would've started myself, but I'm not sure if this is how the workflow would look like - can you push a foxy branch to this repo against which I can then open a draft PR? I'll be pushing some changes to the aprotyas/add_foxy_support branch for now regardless.