-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Noetic EOL Post #54
base: main
Are you sure you want to change the base?
Noetic EOL Post #54
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm, several minor comments.
Merge suggestions form @fujitatomoya Co-authored-by: Tomoya Fujita <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm with one suggestion/typo fix
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you Kat! 🚀 I have some high level feedback
Assuming the audience is familiar with ROS 1, and is unfamiliar that ROS 1 is going EOL
Assuming the goal of the page is to teach the audience what they need to do about it
I'd recommend the outline:
- ROS 1 is going EoL (already have this)
- What does EoL mean? (already have this)
- What do I need to do? (new section higher level than ROS 2)
- Recommended: Migrate to ROS 2
- Include in this section how ROS 2 has real users, and resources for migrating, and where to get help
- Other migration options (already have this)
- Build ROS 1 from source
- Include in this section how ROS-O has patches to build on newer Ubuntu versions
- Pay Canonical for ROS ESM
- Build ROS 1 from source
- Recommended: Migrate to ROS 2
content/blog/noetic-eol/index.md
Outdated
If your ROS 1 system is tightly coupled, has a number of un-ported dependencies, or is reasonably complex, you may want to take advantage of the [ROS 1 to ROS 2 Bridge](https://github.com/ros2/ros1_bridge). | ||
The ROS 1 to ROS 2 Bridge performs automated translation between major ROS versions and should allow you to migrate your project one package at a time. | ||
Due to the operating system constraints for the curent active ROS releases (Noetic / Ubuntu 20.04, Humble / 22.04) the only way to use the ROS Bridge is to use ROS 2 Humble Hawksbill compiled from source on Ubuntu 20.04, [which has limited Tier 3 support](https://www.ros.org/reps/rep-2000.html#humble-hawksbill-may-2022-may-2027). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would recommend we add a page on bridging to the ROS 1 -> ROS 2 migration guide instead of writing it here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That could be a tough one.
The suggestion would be to have a page, that only exists in the Humble docs branch, on how to compile Humble on 20.04 with the bridge. I could do that pretty quickly if I had some crib notes or a history dump. Would someone have something like that? Are there any gotchas?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a guide I'm wanting to write, but to unblock this PR I'm good with leaving this section in for now. I will make a PR to replace it with a link when I land the bridging doc.
The suggestion would be to have a page, that only exists in the Humble docs branch, on how to compile Humble on 20.04 with the bridge. I could do that pretty quickly if I had some crib notes or a history dump. Would someone have something like that? Are there any gotchas?
I'm thinking making it not ROS distro specific. In my mind it looks like:
- Pick the ROS 2 distro you want to use
- Here's how to compile Noetic and the bridge on newer ubuntu distros
- If something doesn't work, here's how to grab a patch from ROS O
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This would be for Humble and Jazzy in particular?
I don't have an objection but we probably want a black box warning stating that this is only recommended in the case of migration. Feel free to tag me for a review.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note that ROS-O can be easily installed from binaries next to all active ROS2 releases.
I suggest to replace the sentence with something along the following line:
Due to the operating system constraints for the current active ROS releases (Noetic = Ubuntu 20.04, ROS2 >= Ubuntu 22.04) we suggest installing ROS-One next to ROS2 on a decent Ubuntu distro (instead of building ROS2 from source on Ubuntu 20.04).
Co-authored-by: Tully Foote <[email protected]>
Co-authored-by: Shane Loretz <[email protected]>
Co-authored-by: Shane Loretz <[email protected]>
Co-authored-by: Shane Loretz <[email protected]>
@sloretz I did a second pass, I tried to address some of your feedback. I don't think we want to necessarily push all of this information down into the official migration guides, but I am trying to steer people in that direction. Take a look. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I generally approve. But there were a lot of typos, which I suggest to fix.
Co-authored-by: Robert Haschke <[email protected]>
Co-authored-by: Robert Haschke <[email protected]>
Co-authored-by: Robert Haschke <[email protected]>
Co-authored-by: Robert Haschke <[email protected]>
Co-authored-by: Robert Haschke <[email protected]>
Co-authored-by: Robert Haschke <[email protected]>
Co-authored-by: Robert Haschke <[email protected]>
Thanks for suggestions @rhaschke. Emacs in Markdown mode is a poor substitution for Google Doc's automatic correction tools. |
Co-authored-by: Robert Haschke <[email protected]>
Co-authored-by: Robert Haschke <[email protected]>
Co-authored-by: Robert Haschke <[email protected]>
Co-authored-by: Robert Haschke <[email protected]>
Co-authored-by: Robert Haschke <[email protected]>
Co-authored-by: Robert Haschke <[email protected]>
Co-authored-by: Robert Haschke <[email protected]>
Co-authored-by: Robert Haschke <[email protected]>
Please hold off merging this until I have the other two PRs lined up. The RViz one is near done and I still need to put together the one for |
Co-authored-by: Chris Lalancette <[email protected]>
Co-authored-by: Chris Lalancette <[email protected]>
Co-authored-by: Chris Lalancette <[email protected]>
Co-authored-by: Chris Lalancette <[email protected]>
Co-authored-by: Chris Lalancette <[email protected]>
Co-authored-by: Chris Lalancette <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Two of my previous comments were not considered yet.
While there have been a few changes, the way you build and run your ROS application should feel familiar. All of our new tools are self-documenting, and you can learn a lot by simply passing them the `--help` option. | ||
|
||
* The [ROS command line interface (CLI)](https://docs.ros.org/en/rolling/Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Services/Understanding-ROS2-Services.html) syntax has changed slightly in ROS 2. All your favorite commands are still there, but the syntax has been modernized. | ||
* ROS 2 uses [Colcon](https://colcon.readthedocs.io/en/released/user/quick-start.html), rather than `catkin build` or `catkin make`, as the build tool. The names have changed, but most of your favorite functionality is still there. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
catkin_make
does have an underscore! You didn't use those ROS1 tools for a while, did you? 😉
* ROS 2 uses [Colcon](https://colcon.readthedocs.io/en/released/user/quick-start.html), rather than `catkin build` or `catkin make`, as the build tool. The names have changed, but most of your favorite functionality is still there. | |
* ROS 2 uses [Colcon](https://colcon.readthedocs.io/en/released/user/quick-start.html), rather than `catkin build` or `catkin_make`, as the build tool. The names have changed, but most of your favorite functionality is still there. |
|
||
If your ROS 1 system is tightly coupled, has a number of un-ported dependencies, or is reasonably complex, you may want to take advantage of the [ROS 1 to ROS 2 Bridge](https://github.com/ros2/ros1_bridge). | ||
The ROS 1 to ROS 2 Bridge performs automated translation between major ROS versions and should allow you to migrate your project one package at a time. | ||
The ROS 1 to ROS 2 Bridge was intended to only support ROS 2 distros prior to and including ROS 2 Foxy, and due to operating system constraints it is no longer fully supported by the current ROS 2 releases. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think you should link information about the current limitations. What is not supported anymore?
What exactly is meant with "a little bit of work" in the next sentence?
This information is crucial to people deciding on a migration process.
The intent with this post is to have a single landing page for current ROS 1 users that we can link to from notifications in ROSCore and in RViz.
See this pull request for more context.