-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The project dir name should include the Python version #58
Comments
I would suggest using something like wheel tags in the directory name to identify which virtual environment is usable with which Python interpreter, instead of just the Python version. For example on Windows you could have Python 3.8 in both 32 and 64 bits and the virtual environment are not necessarily compatible with both. |
What about a hash of the |
It's a good idea to have more information to detect incompatibilities. But I don't think that "wheel tags" is the best approach here, because those are thought to select some stuff that is fixed in our case (like the platform). Maybe the best approach would be to mimic what Python is doing with the Suggestion to work with:
What do you think? |
The timestamp has the benefit of providing the information about which directory is more recent than the other, the hash will be too obscure. Are you afraid of having different . |
I would rather try to avoid having two "installations" for two copies of the same |
I was not suggesting to use wheel tags as is, but rather "something like wheel tags". I am not too confident about this topic, I really do not know enough about this to give definitive advice, but if I understood correctly then a good (practical and technical rather than conceptual) suggestion could be to look at what is done in "PEP 711 – PyBI: a standard format for distributing Python Binaries" with their "wheel tags"-like specification for file names. |
Ah, I see now. It's a very good idea! So, let's re-collect rules. The directory name will be a dash-separated join of:
|
I am wondering about this... If I "install" |
This, I do not know. I have no knowledge of what is a good choice for the hash in this use case. |
Yes, that is what actually happens. The "project name" is retrieved from the metadata, not from the file itself, which is more prone to change that one my think (nobody will do |
Currently, if you run the
.pyz
with Python X, it will create all directories and install everything. If you run the same.pyz
with Python Y, it will reuse that installation, but is wrong, as the virtualenv and dependencies installation may depend on the Python version to work properly).So, the project dir name should be composed by the project name and
.pyz
timestamp (as today) plus the Python version.This way, in the situation aforementioned, the unpacker would just create a new directory with a clean install and everything would just work.
The text was updated successfully, but these errors were encountered: