Transition License Management to Python 3 by default instead of Python 2

Problem to solve

Python 2 is deprecated and going to be dropped:

DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.

To adjust to this, we've added an option to choose which version of python to use.

So the next step is to transition to using Python 3 by default instead of Python 2. Though this will be a breaking change in the License Management tool and we need to follow a specific process outlined here: https://about.gitlab.com/handbook/product/#introducing-a-breaking-change-in-a-minor-release

Intended users

Persona: Software developer

Proposal

  • start the communication in %12.0
  • roll out the change to python 3 by default effectively in %12.2
    • update GitLab documentation
    • update project README
    • change default value and publish new license-management Docker images
    • Add LM_PYTHON_VERSION with default value 3 in the vendored template to apply this change only to 12.2 and later.

TODO convert guideline: https://about.gitlab.com/handbook/product/#introducing-a-breaking-change-in-a-minor-release into tasks in this issue

Documentation

After rolling out the change the documentation should be updated to explain how to switch back to python 2 using the option.

What does success look like, and how can we measure that?

Python users are fully aware of the upcoming change and have enough time to adapt to it. Number of support request about broken feature using python 2

What is the type of buyer?

GitLab Ultimate

Links / references

Edited Aug 17, 2019 by Olivier Gonzalez
Assignee Loading
Time tracking Loading