[Python-Dev] Another update for PEP 394 -- The "python" Command on Unix-Like Systems

Petr Viktorin encukou at gmail.com
Wed Feb 13 11:18:15 EST 2019

On 2/13/19 4:46 PM, Antoine Pitrou wrote:
> On Wed, 13 Feb 2019 16:24:48 +0100
> Petr Viktorin <encukou at gmail.com> wrote:
>> PEP 394 says:
>>   > This recommendation will be periodically reviewed over the next few
>>   > years, and updated when the core development team judges it
>>   > appropriate. As a point of reference, regular maintenance releases
>>   > for the Python 2.7 series will continue until at least 2020.
>> I think it's time for another review.
>> I'm especially worried about the implication of these:
>> - If the `python` command is installed, it should invoke the same
>>     version of Python as the `python2` command
>> - scripts that are deliberately written to be source compatible
>>     with both Python 2.x and 3.x [...] may continue to use `python` on
>>     their shebang line.
>> So, to support scripts that adhere to the recommendation, Python 2
>> needs to be installed :(
> I think PEP 394 should acknowledge that there are now years of
> established usage of `python` as Python 3 for many conda users.

The intention is that Conda environments are treated the same as venv 
environments, i.e.:

When a virtual environment (created by the PEP 405 venv package or a 
similar tool) is active, the python command should refer to the virtual 
environment's interpreter. In other words, activating a virtual 
environment counts as deliberate user action to change the default 
python interpreter.

Do you think conda should be listed explicitly along with venv?

More information about the Python-Dev mailing list