I have been using Ubuntu 18.04 LTS for over three years now and have been considering moving to newer LTS versions for some time. However, the thought of working software breaking or requiring changes has been the blocker to do so for me.
I work with C++11/14 (GCC 8.4.0) with ROS 1 and LCM for message passing. I have Python 2.7.17/3.6.9/3.8.0 to handle my scripting needs. Ubuntu 22.04 comes with GCC 11 by default and does not support lower GCC versions. For robotics development, it supports ROS 2 but not ROS 1 so any ROS 1 work would need to be moved to docker container based development.
I want to understand things that one must consider when upgrading Ubuntu to higher versions (18.04 to 20.04 or even 22.04 in my case) from a software development point of view (robotics pov would be a plus)?
I use Docker for software development so working on an Ubuntu 18.04 container if some software breaks after the upgrade is one option but I want to understand what is it that might break or even what might need attention after an upgrade.
Could someone share some additional information about upgrading and my options here?
EDIT: Could someone share their experiences of updating their C++/Python projects after doing a fresh install to say Ubuntu 22.04? I want to know what potential problems in software projects need to be considered when updating the OS.