ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Ros and Python 2.7 deprecation

asked 2019-01-27 03:09:56 -0500

Avinash_S24 gravatar image

I saw that Python 2.7 is going to be deprecated by January 1st 2020. But ROS is using Python 2.7 and Kinetic kame is supported till 2021 while melodic will be till 2023. How's is this going to work when Python 2.7 is going to be deprecated?

edit retag flag offensive close merge delete


It's still astounding to me that more than a decade after python3's release, and less than a year before python2 is officially no longer supported, ROS still doesn't have a python3 version. Some packages I rely on (particularly for reinforcement learning) only support modern python (python3).

ClimbsRocks gravatar image ClimbsRocks  ( 2019-01-29 12:31:08 -0500 )edit

Lots of things are already bilingual. Users on Gentoo and Arch have been running with Python 3 for a few years now.

"ROS [..] doesn't have [..]" is a rather ambiguous thing to say, as a distribution is a set of pkgs. Migrating all of that is essentially impossible.

Have you tried, and have ..

gvdhoorn gravatar image gvdhoorn  ( 2019-01-29 12:44:55 -0500 )edit

.. run into any specific problems?

Edit: just realised:

ROS still doesn't have a python3 version

that's not actually true: although you probably were referring to "ROS 1", ROS 2 (a version of ROS) is completely Python 3 (3.5.x to 3.7.x).

gvdhoorn gravatar image gvdhoorn  ( 2019-01-29 12:45:06 -0500 )edit

We are on the verge of completing the development of a product that is based on ROS with Python 2 and now I'm seeing this news of Python 2's deprecation. I came across ROS 2 which uses Python 3 but it doesn't seem to have some pacakges such as rosserial.

Avinash_S24 gravatar image Avinash_S24  ( 2019-01-29 12:58:36 -0500 )edit

1 Answer

Sort by » oldest newest most voted

answered 2019-10-29 11:53:18 -0500

kyrofa gravatar image

The Ubuntu Robotics team recently wrote a blog post addressing exactly this. To quote:

If you’re using Ubuntu Xenial (16.04) or Bionic (18.04), please know that Python 2 from the Ubuntu repositories will continue to be supported for the lifetime of the Ubuntu release, regardless of Python 2’s upstream support status. [...] In other words, as long as you’re running Kinetic or Melodic against its recommended Ubuntu release targets, you should be golden.

edit flag offensive delete link more

Question Tools



Asked: 2019-01-27 03:09:56 -0500

Seen: 1,889 times

Last updated: Oct 29 '19