Regression in 2020.11.15 failing to install dependencies defined in setup.py
See original GitHub issueBe sure to check the existing issues (both open and closed!), and make sure you are running the latest version of Pipenv.
Check the diagnose documentation for common issues before posting! We may close your issue if it is very similar to one of them. Please be considerate, or be on your way.
Make sure to mention your debugging experience if the documented solution failed.
Issue description
I was investigating this issue: https://github.com/pypa/pipenv/issues/4355 and noticed that my project that contains all the dependencies in setup.py and has the Pipfile simply install “.” in editable mode is no longer installing anything defined in install_requires in my setup.py. However, this behavior is not present in 2020.11.4.
My setup.py file is defining "install_requires": ["numpy"],
and my Pipfile looks like this:
[packages]
my-thing = {path = ".",editable = true}
Expected result
I expect the lock file to contain numpy and numpy to be isntalled.
Actual result
My package is installed but numpy is missing. No errors visible in any of the verbose output.
Steps to replicate
Provide the steps to replicate (which usually at least includes the commands and the Pipfile).
$ pipenv --support
Pipenv version: '2020.11.15'
Pipenv location: '/home/myuser/.pyenv/versions/3.6.8/lib/python3.6/site-packages/pipenv'
Python location: '/home/myuser/.pyenv/versions/3.6.8/bin/python3.6'
Python installations found:
3.8.5:/usr/bin/python33.8.5:/usr/bin/python3.83.8.5:/bin/python33.8.5:/bin/python3.83.7.5:/home/myuser/.pyenv/versions/3.7.5/bin/python3.7m3.7.4:/home/myuser/.pyenv/versions/3.7.4/bin/python3.7m3.6.8:/home/myuser/.local/share/virtualenvs/my-thing-sO64gR_A/bin/python33.6.8:/home/myuser/.local/share/virtualenvs/my-thing-sO64gR_A/bin/python3.63.6.8:/home/myuser/.local/share/virtualenvs/my-thing-sO64gR_A/bin/python3.6m3.6.8:/home/myuser/.pyenv/versions/3.6.8/bin/python3.6m3.6.8:/home/myuser/.pyenv/versions/3.6.8/bin/python3.63.6.8:/home/myuser/.pyenv/versions/3.6.8/bin/python33.6.8:/home/myuser/.local/share/virtualenvs/my-thing-sO64gR_A/bin/python33.6.8:/home/myuser/.local/share/virtualenvs/my-thing-sO64gR_A/bin/python3.63.6.8:/home/myuser/.local/share/virtualenvs/my-thing-sO64gR_A/bin/python3.6m3.6.8:/home/myuser/.pyenv/versions/3.6.8/bin/python3.6m2.7.18:/usr/bin/python22.7.18:/usr/bin/python2.72.7.18:/bin/python22.7.18:/bin/python2.7
PEP 508 Information:
{'implementation_name': 'cpython',
'implementation_version': '3.6.8',
'os_name': 'posix',
'platform_machine': 'x86_64',
'platform_python_implementation': 'CPython',
'platform_release': '5.4.0-52-generic',
'platform_system': 'Linux',
'platform_version': '#57-Ubuntu SMP Thu Oct 15 10:57:00 UTC 2020',
'python_full_version': '3.6.8',
'python_version': '3.6',
'sys_platform': 'linux'}
System environment variables:
SHELLLSCOLORSSESSION_MANAGERPYENV_HOOK_PATHQT_ACCESSIBILITYCOLORTERMPYENV_SHELLXDG_CONFIG_DIRSLESSXDG_MENU_PREFIXGNOME_DESKTOP_SESSION_IDPIPENV_ACTIVETERMINATOR_DBUS_PATHGNOME_SHELL_SESSION_MODESSH_AUTH_SOCKDIRENV_DIRTERMINATOR_UUIDXMODIFIERSDESKTOP_SESSIONSSH_AGENT_PIDDEVOPS_PYPI_PWPYENV_VERSIONGTK_MODULESPWDLOGNAMEXDG_SESSION_DESKTOPXDG_SESSION_TYPEGPG_AGENT_INFOXAUTHORITYGJS_DEBUG_TOPICSWINDOWPATHHOMEUSERNAMEIM_CONFIG_PHASELANGDEVOPS_BUILDS_PWLS_COLORSXDG_CURRENT_DESKTOPVIRTUAL_ENVVTE_VERSIONINVOCATION_IDTERMINATOR_DBUS_NAMEMANAGERPIDDIRENV_DIFFPYENV_DIRGJS_DEBUG_OUTPUTXDG_SESSION_CLASSTERMZSHUSERPIP_DISABLE_PIP_VERSION_CHECKDISPLAYAPP_NAMESHLVLPAGERQT_IM_MODULEPYTHONDONTWRITEBYTECODEKUBECONFIGXDG_RUNTIME_DIRPYENV_ROOTDEVOPS_PYPI_URLJOURNAL_STREAMXDG_DATA_DIRSPATHGDMSESSIONDBUS_SESSION_BUS_ADDRESSDIRENV_WATCHESDEVOPS_PYPI_UNGIO_LAUNCHED_DESKTOP_FILE_PIDGIO_LAUNCHED_DESKTOP_FILEOLDPWDPIP_SHIMS_BASE_MODULEPIP_PYTHON_PATHPYTHONFINDER_IGNORE_UNSUPPORTED
Pipenv–specific environment variables:
PIPENV_ACTIVE:1
Debug–specific environment variables:
PATH:/home/myuser/.pyenv/versions/3.6.8/bin:/home/myuser/.pyenv/libexec:/home/myuser/.pyenv/plugins/python-build/bin:/home/myuser/.pyenv/plugins/pyenv-virtualenv/bin:/home/myuser/.pyenv/plugins/pyenv-update/bin:/home/myuser/.pyenv/plugins/pyenv-installer/bin:/home/myuser/.pyenv/plugins/pyenv-doctor/bin:/home/myuser/projects/things/thing/my-thing/bin:/home/myuser/.local/share/virtualenvs/my-thing-sO64gR_A/bin:/home/myuser/.pyenv/shims:/home/myuser/.pyenv/bin:/home/myuser/.local/bin:/home/myuser/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/binSHELL:/usr/bin/zshLANG:en_US.UTF-8PWD:/home/myuser/projects/things/thing/my-thingVIRTUAL_ENV:/home/myuser/.local/share/virtualenvs/my-thing-sO64gR_A
Contents of Pipfile (‘/home/myuser/projects/things/thing/my-thing/Pipfile’):
[[source]]
name = "artifacts"
url = "$DEVOPS_PYPI_URL"
verify_ssl = true
[dev-packages]
[packages]
my-thing = {path = ".",editable = true}
[requires]
python_version = "3.6.8"
Contents of Pipfile.lock (‘/home/myuser/projects/things/thing/my-thing/Pipfile.lock’):
{
"_meta": {
"hash": {
"sha256": "2e965c720ff5205f879ac66e310611ee278a76f98b98369f07f25eba3620b70b"
},
"pipfile-spec": 6,
"requires": {
"python_version": "3.6.8"
},
"sources": [
{
"name": "artifacts",
"url": "$DEVOPS_PYPI_URL",
"verify_ssl": true
}
]
},
"default": {
"my-thing": {
"editable": true,
"path": "."
},
"install-requires": {
"hashes": [
"sha256:d6229486e085a330041d3cc6f47eeb8d2fd0c255cf81a4b899b287c306deb717"
],
"version": "==0.3.0"
}
},
"develop": {}
}
Issue Analytics
- State:
- Created 3 years ago
- Comments:11 (4 by maintainers)

Top Related StackOverflow Question
Pipenv uses a “resolve then override” method when there are editable requirements with the same name as the released one. So the release version must exist in the first place to make the resolution work.
@ms-lolo Thanks for that. I think you have already figured out the workaround. Either of the following solutions will do the trick:
setup(install_requires=install_requires)directly instead of via a dict.install_requiresfield.