uranusjr / snafu

Work with Python distributions on Windows how it’s supposed to work.
https://snafu.readthedocs.io
ISC License
25 stars 1 forks source link

Make use of the launcher’s configs #1

Open uranusjr opened 6 years ago

uranusjr commented 6 years ago

Currently non-version-specific shims resolve versions with the ActivePythonVersions registry value, which can be manipulated with snafu use. The Py launcher, however, has its own config file (and environs). It can be confusing to users why py -3 and python3 can launch different versions.

Proposed solution to incorporate the launcher’s settings.

snafu use <versions ...> would still write to the ActivePythonVersions registry, but would warn the user if there are overriding settings in either py.ini or environs. snafu use with no arguments show the value of ActivePythonVersions, but also displays warnings for overriding values.

snafu link only considers ActivePythonVersions. If the user overwrites the version for a certain script, that’s fine; if this results in the user not getting a script because its Python is not specified in ActivePythonVersions, the situation should be pretty easily debuggable.

uranusjr commented 6 years ago

Pretty difficult to get right, and arguably equally confusing. py.ini is not enough for our purposes, but there really isn’t a good way to sync multiple storages.