[Python-Dev] Status of PEP 397 (original) (raw)

[Python-Dev] Status of PEP 397 - Python launcher for Windows

martin at v.loewis.de martin at v.loewis.de
Sun Feb 19 09:41:32 CET 2012


The launcher was slightly controversial when the pep was initially written 12 months ago.

So what were the objections?

Assuming you are proposing some future action for CPython, I'm opposed to the notion that the implementation of the launcher is the specification. The specification needs to be in the PEP. It may leave room, in which case the remaining details need to be specified in the documentation. I'm really not sure what you are trying to say here.

Let me try again: I dislike the phrase "written in C, which defines the detailed implementation". That means that in order to find out what the launcher does, you have to read its source code. I also dislike the phrase "but instead to offer guidelines the launcher should adhere to"; the PEP should not just be guidelines, but a clear, prescriptive specification.

I admit that I had difficulties to find the places in the PEP where it specifies things, as opposed to explaining things. It seems that all of the sections

OTOH, "Process Launching" has 4 paragraphs of discussion, then two sentences of specification, then 1,5 sentences of discussion. I wish it was easier to find out what the PEP actually says.

That the PEP should remove all references to an implementation specification, or that the PEP simply should be withdrawn?

Having references to the implementation is fine; saying that you have to read the code to understand what it does, and that the code takes precedence over the PEP is not.

If it comes with the Python distribution, how get multiple copies of the launcher coordinated? This may not be specified as well as it could, but: "Future versions of the launcher should remain backwards compatible with older versions, so later versions of Python can install an updated version of the launcher without impacting how the previously installed version of the launcher is used."

That's not really my concern. I didn't originally find the place where it said that the launcher goes into the Windows directory. Now that I see it: how do you prevent deinstallation of py.exe when some version of Python is uninstalled, but other versions remain?

Regards, Martin



More information about the Python-Dev mailing list