Closed ChadBailey closed 4 years ago
It seems indeed we don't support embeddable zip files, or to be more precise virtualenv does not which we use underneath. So the issue should really be under https://github.com/pypa/virtualenv. For now you should use the executable installer that will register pythons into the windows registry and we'll find it by supporting PEP-514 https://www.python.org/dev/peps/pep-0514/
GitHubVirtual Python Environment builder. Contribute to pypa/virtualenv development by creating an account on GitHub.
Python.orgThe official home of the Python Programming Language
I suspected that, was even the very first part of my post, but didn't know for sure. I couldn't find such a bug when looking. Thanks for the clarification
I'll close this for now as it's a virtualenv request than tox.
In Windows, tox does not work with windows x86 embeddable zip file. See Python Releases for Windows. For both examples, I will use Python 3.7.5 - Oct. 15, 2019 to demonstrate - but it is worth noting I have tried with versions 3.5, 3.6, 3.7, and 3.8.
Example of expected/working output
Download Windows x86-64 executable installer and install to
C:\Python\
Configuration
tox command output
Reproduce
Download Windows x86-64 embeddable zip file & extract the zip file to
C:\python3.7
. Delete .tox folder for clean working environment.Configuration
tox command output
Further validation
Open
C:\python3.7\python.exe
in the file and importsite
to validate the embeddable zip is working as expectedFinal Thoughts
Forgive my ignorance here, I feel like I may be missing something obvious... Installing multiple versions of python doesn't seem to be very straight forward to me... if this isn't the intended way to install/test using multiple versions of Python in windows then what is? I've looked over the docs but I don't see anything in there addressing this seemingly obvious concern (this applies irrespective of OS).
If I'm going to have my developers begin using tox before every PR, I'd like them test on all versions that the CICD pipeline is going to test so that they don't submit a PR that works on their machine but fails the quality gate