Ondrej Novy:
> Hi,
>
> čt 9. 7. 2020 v 15:27 odesílatel Matthias Klose <d...@debian.org> napsal:
>
>> Describing here a solution which is implemented for Ubuntu focal (20.04
>> LTS). A
>> new source package what-is-python (-perl-dont-hurt-me) ships binary
>> packages
>> python-is-python2, python-dev-is-python2, python-is-python3 and
>> python-dev-is-python3. The python-is-python2 package provides the python
>> package, such that packages that still depend on python are not removed on
>> a
>> distro upgrade. On new installs, python-is-python3 is not installed by
>> default,
>> but the user gets a hint from command-not-found to install the package if
>> he
>> tries to run python. Package dependencies on the new four binary packages
>> have
>> to be disallowed in the Python policy. Note that such a package including
>> the
>> Provides should only be uploaded once all dependencies on the unversioned
>> python
>> packages are gone.
>>
>
> I like this solution in Ubuntu and I have:
> onovy@jupiter:~$ dpkg -l | grep python-is-python3
> ii python-is-python3 3.8.2-4
> all symlinks /usr/bin/python to python3
>
> What I think is good idea:
> * keep "python" command pointing to python2.7 if I'm upgrading
> buster->bullseye with python2.7 installed. We are going to keep python2.7
> interpreter for bullseye, so don't break old "python" command for
> third-parties apps/scripts/etc. (install python-is-python2 during
> buster->bullseye upgrade)
> * allow users to choose if they want python=python3 (apt install
> python-is-python3)
> * (maybe?) python=python3 in new installs, because why not? (install
> python-is-python3 by default in clean install)
>
I like this overall plan as laid out by Matthias. And the above points
seem good, except I think it is a bad idea to keep 'python' pointing to
python2.7 on upgrade. Python 2.7 is no longer maintained, and as
Matthias said, it should only be used as a Build-Depends for very
specific cases. I think users should either be prompted with a
question, or should have to manually install python-is-python2. We want
to help users leave Python 2.x behind, not pretend its still OK to use it.
.hc