I thought I had tested this before, but apparently if you have a major.minor version already installed and then try to install a newer patch version of that same major.minor version on windows only the most recently installed version (or maybe the highest version?) will work. For example, if you have already run Install-Python 3.7.2 and then you run Install-Python 3.7.3 the python executable in your 3.7.2 installation directory will be removed and only python 3.7.3 will work. This isn't a huge deal, but it does mean that the way this module thinks about managing python installations should probably change.
Specifically, instead of asking users to specify the major.minor.patch version when installing python and creating virtual environments they should only be asked to specify a major.minor version. Under the new paradigm Install-Python will install the latest patch version of the specified major.minor version and New-PythonVirtualEnvironment will use whatever patch version is installed for the specified major.minor version. Then the patch version can then be updated as new versions are released and the virtual environments will effectively be updated as well, since they just contain symbolic links. (I still need to test this to be sure.)
I thought I had tested this before, but apparently if you have a major.minor version already installed and then try to install a newer patch version of that same major.minor version on windows only the most recently installed version (or maybe the highest version?) will work. For example, if you have already run
Install-Python 3.7.2and then you runInstall-Python 3.7.3the python executable in your 3.7.2 installation directory will be removed and only python 3.7.3 will work. This isn't a huge deal, but it does mean that the way this module thinks about managing python installations should probably change.Specifically, instead of asking users to specify the
major.minor.patchversion when installing python and creating virtual environments they should only be asked to specify amajor.minorversion. Under the new paradigmInstall-Pythonwill install the latest patch version of the specifiedmajor.minorversion andNew-PythonVirtualEnvironmentwill use whatever patch version is installed for the specifiedmajor.minorversion. Then the patch version can then be updated as new versions are released and the virtual environments will effectively be updated as well, since they just contain symbolic links. (I still need to test this to be sure.)