perf(pyenv): initialize shell integration once without rehash
Login shells source the fragment twice to restore shim precedence after the system profile. Reapplying PATH does not require repeating shell integration or rebuilding shims.
This commit is contained in:
1 parent
82c6a57c3a
commit
d5afd25bbe
2 files changed
+24
-2
No files matched your search
+4
-2
@@ -3,6 +3,8 @@ export PYENV_ROOT="${PYENV_ROOT:-$HOME/.pyenv}"
|
||||
[[ -d "$PYENV_ROOT/bin" ]] && path=("$PYENV_ROOT/bin" ${path:#$PYENV_ROOT/bin})
|
||||
[[ -d "$PYENV_ROOT/shims" ]] && path=("$PYENV_ROOT/shims" ${path:#$PYENV_ROOT/shims})
|
||||
export PATH
|
||||
if [[ -o interactive ]] && command -v pyenv &> /dev/null; then
|
||||
eval "$(pyenv init - zsh)"
|
||||
# Login profiles can reapply PATH without repeating shell integration.
|
||||
# Run `pyenv rehash` after installing entry points through `python -m pip`.
|
||||
if [[ -o interactive ]] && (( ! $+functions[pyenv] )) && command -v pyenv &> /dev/null; then
|
||||
eval "$(pyenv init - --no-rehash zsh)"
|
||||
fi
|
||||
Reference in new issue
Block a user