[Distutils] restart-in-venv (was: PEX at Twitter (re: PEX - Twitter's multi-platform executable archive format for Python))

Paul Moore p.f.moore at gmail.com
Tue Feb 4 16:53:42 CET 2014


On 4 February 2014 14:33, Vinay Sajip <vinay_sajip at yahoo.co.uk> wrote:
> You've just restated "scary dark corners" in a different way which
> sounds like there's more to it technically. But there' s still no hard
> data on the table!

But I specifically stated that the hard data has been *lost* and the
only remaining evidence is how pip works. I'm not presenting that as a
good thing, just as "how life is". There's at least one article
somewhere on the internet discussing "why you shouldn't rewrite" in
these terms - I think it might have been Joel on Software or maybe
Coding Horror - but I can't find it right now.

> Surely, with all the convolutions that these distros go through, can one
> still assume that pip-the-program-that-they-all-run assumes control via
> some notional main program, which is passed some arguments? If
> we can't assume this, please tell me why not. If we can, then it would
> be like this:

On at least one system (OSX?) there's some arrangement where the
system Python is not actually the executable, but redirects through a
shell script in some manner. I know this has caused bug reports in the
past, but I do not have details, nor do I intend to go looking and see
if it's applicable here.

*If* you were suggesting that pip implement "re-exec in venv" the way
you suggest (and I understand that you aren't, even if you are saying
it should be simple to do so) then the onus is on you to confirm that
doing so will not cause regressions or bugs in this and similar known
risk areas. Otherwise, the assessment of the suggestion will remain
"interesting, but insufficient benefit to justify the risk".

Anyway, never mind. I agree the technique is interesting, and we have
no demonstrated bugs in it. But I don't imagine anyone will take the
risk on a widely-used project like pip any time in the near future.

Paul


More information about the Distutils-SIG mailing list