Documentation states that using pyenv global will set the global Python version in the ~/.pyenv/version file.
However, pyenv global uses $PYENV_ROOT rather than $HOME, so if $PYENV_ROOT is set to something other than ~/.pyenv - and, in particular, to something outside of the user's home directory, potentially available to multiple users - then setting pyenv global sets the version for all users rather than just the user who ran the command (assuming they have the appropriate permissions).
This may be desired behavior in some cases, but in those cases it means that there is no way to set a user-specific version of python beyond pyenv shell or pyenv local.
There should be some way to make a distinction between a user-global version and a pyenv-global version, when those concepts are themselves distinct.
Documentation states that using
pyenv globalwill set the global Python version in the~/.pyenv/versionfile.However,
pyenv globaluses$PYENV_ROOTrather than$HOME, so if$PYENV_ROOTis set to something other than~/.pyenv- and, in particular, to something outside of the user's home directory, potentially available to multiple users - then settingpyenv globalsets the version for all users rather than just the user who ran the command (assuming they have the appropriate permissions).This may be desired behavior in some cases, but in those cases it means that there is no way to set a user-specific version of python beyond
pyenv shellorpyenv local.There should be some way to make a distinction between a user-global version and a pyenv-global version, when those concepts are themselves distinct.