Over at Amazon we have started doing ROS1 to ROS2 migrations and decided to automate some of the repetitive tasks in a set of tools. We’ve open sourced the tools so everyone can leverage them, the code can be found at https://github.com/awslabs/ros2-migration-tools. The package also contains some documentation on the general process of migrating a package and what changes need to be made. This is just a beginning and there’s a lot of room for improvement. We’d love to have anyone interested in the migration effort contribute to make these tools as useful as possible as well as provide us feedback.
- Can we migrate all the things with this tool?
- Is it required only Python 3?
The tooling is generic enough so that it should be helpful for migrating any ROS package, but it won’t do 100% of the work. I’d recommend trying it out on the talker example from the migration guide (https://github.com/ros2/ros2/wiki/Migration-Guide) to get a sense of the current state. We’re also happy to take pull requests for new features.
Yes, ROS2 is targeting Python 3 (http://design.ros2.org/articles/changes.html#c-standard) so it seemed reasonable that the migration tooling would also target Python 3.