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
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 newlicense-management
Docker images- Add
LM_PYTHON_VERSION
with default value3
in the vendored template to apply this change only to12.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