pyenv/pyenv.d/exec/pip-rehash.bash
Christian Fredrik Johnsen 6112062fdd fix: add automatic rehash after pip3.x/pip3.xx install
The tests showed that the original implementation actually never worked.
You did NOT get a rehash after doing pip3.8 install, even when the
comments in the code said so.

--> replaced `\d` with [0-9] and slapped on a `+`, such that we match
both pip3.x and `pip3.xx install`
2024-12-28 12:41:09 +01:00

19 lines
668 B
Bash

PYENV_PIP_REHASH_ROOT="${BASH_SOURCE[0]%/*}/pip-rehash"
PYENV_REHASH_COMMAND="${PYENV_COMMAND##*/}"
# Remove any version information, from e.g. "pip2" or "pip3.4".
if [[ $PYENV_REHASH_COMMAND =~ ^(pip|easy_install)[23](\.[0-9]+)?$ ]]; then
PYENV_REHASH_COMMAND="${BASH_REMATCH[1]}"
fi
# Check for ` -m pip ` in arguments
if [[ "$*" =~ [[:space:]]-m[[:space:]]pip[[:space:]] ]]; then
PYENV_REHASH_COMMAND="pip"
fi
if [ -x "${PYENV_PIP_REHASH_ROOT}/${PYENV_REHASH_COMMAND}" ]; then
PYENV_COMMAND_PATH="${PYENV_PIP_REHASH_ROOT}/${PYENV_REHASH_COMMAND##*/}"
PYENV_BIN_PATH="${PYENV_PIP_REHASH_ROOT}"
export PYENV_REHASH_REAL_COMMAND="${PYENV_COMMAND##*/}"
fi