Web lists-archives.com

Re: Removing Python 2 support in OpenStack [was: Please do not drop Python 2 modules]


2018-04-25 11:11 GMT+02:00 Thomas Goirand <zigo@xxxxxxxxxx>:
- faster build time (no need to test with Python 2, so less chances of
build failure).

build is done once, customer happiness is for years (buster lifetime).

- no chance to have any Python 2 packages installed, so we're sure we're
on a full Python 3 stack (in my current setup, unfortunately some Python
2 packages are still pulled). This may go on for another 3 years if we
don't remove Python 2 now, with the added issue that it will pull
*older* version of clients if selecting Python 2 and if we still have
them in Buster (ie: case of OpenStack backports on top of Stable).

so let's fix packages to not pull Py2 if it's not needed.
- packaging and decrufting will take a long time, so we'd better start
early. Especially if we want to do it the proper way, without breaking
any reverse (build-)dependency that are outside of OpenStack.

more than one release cycle? I'm sure we can do it during Bullseye. And we will do it for non-OS Python packages too. Better is to do removing in earlier phase of development cycle.

- at some point, even upstream will move to Python 3, and Python 2 will
be the legacy old thing. Do we really want to be the only distribution
that will hit these Python 2 bugs? In such case, we'll be alone writing
these Python 2 bugfix patches. :/

that point is after Rocky, so it's doesn't matter for Buster.

- Other distros (RHEL and Ubuntu) will move to Python 3 only in the next
OpenStack development cycle, meaning we'll be alone with Python 2
support at some point.

any links where Ubuntu said they will not support Py2 for Rocky? I'm sure we will not be alone.

The other thing is, it's ready! I was able to do functional testing on
top of the Python 3 release of OpenStack Debian packages. So why should
we hold any longer?

What is ready? Py3 support, or Py2 dropping? If foremost, let's do it. Let's have good Py3-only services, let's have default Py3 clients, but support Py2 clients. It cost us nothing, it's already done this way.
The only benefit we get with keeping Python 2 support is for thirdparty
software that is still using Python 2. We don't have this in Debian at
the moment. What's the status in your company? Do you still need Python
2 for your internal use? What's the ETA for switching to Python 3?

yep, that's important benefit. Because our priority is our users.

"My" company is not important, important is our users and my company is just one of them.

Best regards
 Ondřej Nový
Email: novy@xxxxxxxxxx
PGP: 3D98 3C52 EB85 980C 46A5  6090 3573 1255 9D1E 064B