Subject: Re: [bug#71672] [PATCH] python: Prefer python3 over python

From: Karl Berry <[email-masked]>
Date: Thu, 20 Jun 2024 15:28:33 -0600

Collin, Zack - 

    > Shouldn't AM_PATH_PYTHON check for the python3 command before python?

    Yes it should.

That seems like a huge change to make. I understand the reasoning, given
the world of Python, but the goal of "don't break existing projects"
argues against it.

    Note that PEP 394 is dangerously incorrect on one point: a system
    where /usr/bin/python and/or the bare 'python' command invoke
    Python3 is a misconfigured system

Nevertheless, that is the reality on Red Hat(-derived) 9 systems.
I don't know about any others.

    a huge volume of Python 2-only scripts out there in the wild 

Right.

    assuming people who use AM_PATH_PYTHON with current versions of
    Automake *want* the Python 3 interpreter, for the most part

That feels like an awfully big assumption to me. Ever since its inception,
Automake has looked for "python" first. We will surely be breaking many
existing projects if we change that default -- all the ones that are
still using Python 2, for starters.

Python created this insoluble problem. As far as I can see, we can't fix
it. People will just have to set PYTHON if they need to a force a
version different from the system, seems to me.

I can imagine preferring "python3" to "python" in the future, but this
seems like too big of a change to make at the very end (I hope) of the
pretest cycle. I think it would be better to make it well in advance of
the next release and try to garner feedback on the inevitable problems
that will result. --thanks, karl.