Skipping installed packages on install
command breaks venv isolation
#4299
Labels
Type: Duplicate
This issue is a duplicate of an already-existing issue.
Type: Regression
This issue is a regression of a previous behavior.
Issue description
The new release 2020.5.28 introduced a regression in virtual env isolation. #3057 made pipenv to skip to install all reachable packages on
pipenv install
call. The problem surfaces when Pipenv is installed in one virtual env and used from a different (active) one.Related to: sclorg/s2i-python-container#382
Expected result
Pipenv ensures that in currently active virtual environment all the packages prescribed by a Pipfile gets installed.
Actual result
Pipenv ensures that all packages prescribed by a Pipfile are either installed into the targed virtualevn or reachable to the current Pipenv runtime.
Steps to replicate
Create two virtual envs, one for Pipenv and another one for the "app"
Install Pipenv into the
pipenv_venv
Install packages into the
app_venv
using the Pipenv frompipenv_venv
See packages that are present in each of the environments
As you can see the
chardet
package got installed into the targetapp_venv
virtual env, however thecertifi
andsix
packages are missing. This is due to Pipenv being able to locate those packages inpipenv_venv
during thepipenv install
call.Note: Named install of the packages using
pipenv install <NAME>
has a different result since the optimisation is not used:`pipenv --support` (executed in the Pipenv's `pipenv_venv` virtual env)
Pipenv version:
'2020.5.28'
Pipenv location:
'/home/tcoufal/pipenv_venv/lib/python3.8/site-packages/pipenv'
Python location:
'/home/tcoufal/pipenv_venv/bin/python3.8'
Python installations found:
3.8.3
:/home/tcoufal/app_venv/bin/python3
3.8.3
:/home/tcoufal/app_venv/bin/python3.8
3.8.3
:/home/tcoufal/app_venv/bin/python3
3.8.3
:/home/tcoufal/app_venv/bin/python3.8
3.8.3
:/bin/python3
3.8.3
:/bin/python3.8
3.8.3
:/usr/bin/python3
3.8.3
:/usr/bin/python3.8
3.6.10
:/home/tcoufal/.pyenv/versions/3.6.10/bin/python3.6m
2.7.18
:/bin/python2
2.7.18
:/bin/python2.7
2.7.18
:/usr/bin/python2
2.7.18
:/usr/bin/python2.7
PEP 508 Information:
System environment variables:
COLORFGBG
COLORTERM
DBUS_SESSION_BUS_ADDRESS
DESKTOP_SESSION
DISPLAY
GTK_IM_MODULE
GTK_MODULES
HOME
KDED_STARTED_BY_KDEINIT
KDE_FULL_SESSION
KDE_SESSION_UID
KDE_SESSION_VERSION
KONSOLE_DBUS_SERVICE
KONSOLE_DBUS_SESSION
KONSOLE_DBUS_WINDOW
KONSOLE_VERSION
LANG
LANGUAGE
LC_COLLATE
LC_MEASUREMENT
LC_MONETARY
LC_NUMERIC
LC_TIME
LOGNAME
MAIL
MOZ_PLUGIN_PATH
OLDPWD
PAM_KWALLET5_LOGIN
PATH
PROFILEHOME
PWD
QT_AUTO_SCREEN_SCALE_FACTOR
SESSION_MANAGER
SHELL
SHELL_SESSION_ID
SHLVL
SSH_ASKPASS
SSH_AUTH_SOCK
TERM
USER
WINDOWID
XAUTHORITY
XCURSOR_SIZE
XCURSOR_THEME
XDG_CURRENT_DESKTOP
XDG_RUNTIME_DIR
XDG_SEAT
XDG_SEAT_PATH
XDG_SESSION_CLASS
XDG_SESSION_DESKTOP
XDG_SESSION_ID
XDG_SESSION_PATH
XDG_SESSION_TYPE
XDG_VTNR
_
LS_COLORS
NVM_DIR
NVM_SOURCE
NVM_CD_FLAGS
NVM_RC_VERSION
PYENV_ROOT
PYENV_SHELL
GOPATH
VISUAL
EDITOR
SUDO_PROMPT
PAGER
LESS
LSCOLORS
SPACESHIP_VERSION
SPACESHIP_ROOT
VIRTUAL_ENV
PIP_DISABLE_PIP_VERSION_CHECK
PYTHONDONTWRITEBYTECODE
PIP_SHIMS_BASE_MODULE
PIP_PYTHON_PATH
PYTHONFINDER_IGNORE_UNSUPPORTED
Pipenv–specific environment variables:
Debug–specific environment variables:
PATH
:/home/tcoufal/app_venv/bin:/home/tcoufal/.go/bin:/home/tcoufal/.poetry/bin:/home/tcoufal/.pyenv/shims:/home/tcoufal/.pyenv/bin:/home/tcoufal/.local/bin:/home/tcoufal/.npm-global/bin:/bin:/usr/bin:/usr/local/bin:/usr/local/sbin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
SHELL
:/bin/zsh
EDITOR
:vim
LANG
:en_US.UTF-8
PWD
:/home/tcoufal
VIRTUAL_ENV
:/home/tcoufal/app_venv
Contents of
Pipfile
('/home/tcoufal/Pipfile'):Contents of
Pipfile.lock
('/home/tcoufal/Pipfile.lock'):The text was updated successfully, but these errors were encountered: