On 3 February 2016 at 17:04, Steve Dower steve.dower@python.org wrote:
Rest of the email is spelling out how to create the scenario above, since I assume people won't believe it :)
- Take Python 3.4.1, install it (Just for Me), zip up the stdlib into
python34.zip and copy the binaries and zip to a "portable" folder
Update to Python 3.4.2 on the main machine
Run "-m test test_grammar" with your portable 3.4.1.
Boom! SyntaxError in test_grammar.py because you picked up the 3.4.2
stdlib (the error comes from https://hg.python.org/cpython/rev/4ad33d82193d)
Sigh. There's nothing so small that it isn't a compatibility break :-)
But of course this process violates the rule "set PYTHONHOME or have a Lib/os.py *file* alongside python.exe". Like you say the rules are subtle enough that people will make mistakes :-(
Thanks for the explanation. Paul