mirror of
https://github.com/pyenv/pyenv-virtualenv.git
synced 2026-09-10 07:16:18 -04:00
Uninstall all virtualenvs inside envs on the uninstallation of the parent version
This commit is contained in:
parent
2d73d058bd
commit
b9951fa69c
|
|
@ -4,6 +4,7 @@ resolve_link() {
|
|||
|
||||
if [ -n "${DEFINITION}" ]; then
|
||||
if [[ "${DEFINITION}" != "${DEFINITION%/envs/*}" ]]; then
|
||||
# Uninstall virtualenv by long name
|
||||
exec pyenv-virtualenv-delete ${FORCE+-f} "${DEFINITION}"
|
||||
exit 128
|
||||
else
|
||||
|
|
@ -13,9 +14,17 @@ if [ -n "${DEFINITION}" ]; then
|
|||
REAL_PREFIX="$(resolve_link "${PREFIX}" 2>/dev/null || true)"
|
||||
REAL_DEFINITION="${REAL_PREFIX#${PYENV_ROOT}/versions/}"
|
||||
if [[ "${REAL_DEFINITION}" != "${REAL_DEFINITION%/envs/*}" ]]; then
|
||||
# Uninstall virtualenv by short name
|
||||
exec pyenv-virtualenv-delete ${FORCE+-f} "${REAL_DEFINITION}"
|
||||
exit 128
|
||||
fi
|
||||
else
|
||||
# Uninstall all virtualenvs inside `envs` directory too
|
||||
shopt -s nullglob
|
||||
for virtualenv in "${PREFIX}/envs/"*; do
|
||||
pyenv-virtualenv-delete ${FORCE+-f} "${DEFINITION}/envs/${virtualenv##*/}"
|
||||
done
|
||||
shopt -u nullglob
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
|
|
|||
Loading…
Reference in a new issue