End of Life (EOL) for distribution

Hello guys,
can somebody explain me in real situations what it mean for me and my robots if ends Noetic version (etc.) in 2025 ?

Hi @PieterT-CODES ,

Let me explain from my understanding…

So if any version, let say Noetic, goes EOL, it means that :

  1. The ROS developers (not the users but the people who develop ROS) will stop providing support, packages, updates and upgrades for that version.
  2. The ROS developers would have moved to a newer version and would have started working on that version to solve any features that were lacking in the earlier version.
  3. ROS programmers and users must start migrating to the newer version to avoid inconsistency in programs because there might be dependency clashes between the old and newer versions, therefore hindering compatibility.
  4. After EOL of a version, you cannot find support packages for that version anymore - chances are those packages will be archived and not be available for download.

When it comes to robots which run an older version - they can still keep running the older version as long as no new versions are mixed with the old version programs. If there must be an update to a robot from an old to a new version then there must be complete update and not a small “patch” for any fixes.

Hope that helped you.

– Girish

1 Like

Thanks for your explanation @girishkumar.kannan,
I have also questions to point 3. and 4. :
If We have some working automated solution on ROS1 with some packages for that version, why we need start migrating after EOL?

If comes year 2025 our solution stops working? is my understanding right ?

Hi @PieterT-CODES ,

No, your solution will not stop working until you add any updates to the existing version. If you try to install any package for the old version after the version has reached EOL, you will have compatibility issues mainly because of changed dependencies and library updates.

So, if you have an old version working in a robot, it will continue to work as long as you do not make any changes to the version inside the robot after the version that is running in the robot has reached EOL.

I hope I made some sense. I know the above sentence is quite wordy. Let me know if it is still unclear.


1 Like

Ok, I am clear about it now, but one more thing. If I have working solution I dont see a reason for install any new packages. Can you provide some real world example where new packages is needed for old ros version ?

Hi @PieterT-CODES ,

This would be a very rare example but can be explained with a hypothetical scenario. Let us assume that you work in a company which has a separate department that also makes new ROS packages for the robot your company is building.
In this case, the new package will be an update for a version that is running in the robot. So again, assuming your company knows about the library dependencies of the robot, the new package may contain new bugfixes or new algorithms or any update.
This package can be (safely) installed on the robot since chances of dependency clashes and any deprecations will be close to nothing.

On the other hand any public packages available shortly after the version has reached EOL can also be installed. But in case you want to install a package, say 1 or 2 years after the EOL of a version, then that would be problematic.

Updating / migrating from ROS1 to ROS2 would be quite challenging, but migrating versions internally “might” be easy, for example, Melodic → Noetic or Foxy → Galactic.

But to answer your question directly, there will not be any new (public) packages created for a version after the version has reached EOL, so new packages will not be available for download for old versions.

  • All these are from my understanding. They may not be 100% true, but I believe that would be the case.


This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.