[ros-users] [Discourse.ros.org] [Next Generation ROS] Syncronized callbacks in ROS2

William Woodall ros.discourse at gmail.com
Thu Jan 4 01:54:50 UTC 2018

I'm actually a big proponent of the idea to backport ament to ROS 1 (and maybe even some ament features to catkin), because I think it lets people take a step toward ROS 2 without jumping in with both feet while simultaneously gaining some benefits (assumption is ament is better than catkin, which I do believe). Also, it lets developers more easily support ROS 1 and ROS 2 at the same time (same branch). This is especially attractive for packages which are mostly ROS agnostic, e.g. `class_loader` or the new `rviz_rendering` package.

I don't want to hijack the thread, but just to expand on what @dirk-thomas said, I collected a list of things that would need to be addressed a while back:

- support building packages with the `build_type` of `ament_cmake` (`catkin_make_isolated` and `catkin_tools`)
  - make the `setup.*sh` files (which are installed to the install folder's root) source both catkin and ament setup files and environment hooks (currently only handles catkin stuff)
  - address conflicts which may occur when `ament_cmake` uses Python3, but the ROS 1 packages and the build tool in ROS 1 (`catkin_make_isolated` or `catkin_tools`) uses Python2
- release all packages in the `ament/ament_cmake`, `ament/ament_lint`, and possibly `ament/ament_index` repositories
- deal with `ROS_PACKAGE_PATH` versus `ament_index`
  - for details about `ament_index` see: https://github.com/ament/ament_cmake/blob/master/ament_cmake_core/doc/resource_index.md
  - not sure what needs to be done here, maybe just add ament packages to the `RPP`
  - otherwise support would be needed in `roslib`, `rospack`, and `pluginlib` (maybe other places) for the `ament_index` too or some other solution
- consolidate `ros-infrastructure/catkin_pkg` and `ament/ament_package`
  - not strictly needed, but would prevent us from having two implementations of `package.xml` parsing
- deal with any issue that arise and update documentation so people are aware of the changes

[Visit Topic](https://discourse.ros.org/t/syncronized-callbacks-in-ros2/2015/17) or reply to this email to respond.

More information about the ros-users mailing list