pipenv update --outdated
lists nothing even though updates exist.
$ python -m pipenv.help output
Pipenv version: '11.10.1'
Pipenv location: '/home/florian/.local/venvs/pipenv/lib/python3.5/site-packages/pipenv'
Python location: '/home/florian/.local/venvs/pipenv/bin/python'
Other Python installations in PATH
:
2.5
: /usr/local/bin/python2.5
2.5
: /usr/local/bin/python2.5
2.7
: /usr/bin/python2.7
2.7
: /usr/bin/python2.7
3.5
: /usr/bin/python3.5m
3.5
: /usr/bin/python3.5
3.6
: /usr/bin/python3.6m
3.6
: /usr/bin/python3.6
2.7.15
: /usr/bin/python
2.7.15
: /usr/bin/python2
3.6.5
: /usr/bin/python3
PEP 508 Information:
{'implementation_name': 'cpython',
'implementation_version': '3.5.4',
'os_name': 'posix',
'platform_machine': 'x86_64',
'platform_python_implementation': 'CPython',
'platform_release': '4.15.0-3-amd64',
'platform_system': 'Linux',
'platform_version': '#1 SMP Debian 4.15.17-1 (2018-04-19)',
'python_full_version': '3.5.4',
'python_version': '3.5',
'sys_platform': 'linux'}
System environment variables:
XDG_VTNR
LC_MONETARY
GDMSESSION
EDITOR
XDG_SESSION_ID
VTE_VERSION
GIO_LAUNCHED_DESKTOP_FILE_PID
COLORTERM
GTK_MODULES
GIO_LAUNCHED_DESKTOP_FILE
XDG_SESSION_TYPE
LC_CTYPE
XDG_DATA_DIRS
GJS_DEBUG_OUTPUT
USER
PAGER
PROJECT_HOME
SSH_AUTH_SOCK
SHELL
LC_TIME
TERMINATOR_DBUS_PATH
XDG_SESSION_COOKIE
XDG_CURRENT_DESKTOP
XDG_SESSION_DESKTOP
LANG
WINDOWPATH
OLDPWD
XDG_SEAT
SSH_AGENT_PID
PYTHONDONTWRITEBYTECODE
_
QT_ACCESSIBILITY
DISPLAY
DBUS_SESSION_BUS_ADDRESS
TERMINATOR_UUID
GJS_DEBUG_TOPICS
LSCOLORS
PEX_INHERIT_PATH
LESS
XDG_MENU_PREFIX
LC_MEASUREMENT
S_COLORS
ZSH
ANSIBLE_NOCOWS
LC_PAPER
LS_COLORS
DESKTOP_SESSION
SESSION_MANAGER
PWD
LOGNAME
QT_SELECT
TERMINATOR_DBUS_NAME
HOME
XDG_RUNTIME_DIR
XAUTHORITY
LC_NUMERIC
ELECTRON_TRASH
GDM_LANG
SHLVL
GPG_AGENT_INFO
PIP_PYTHON_PATH
USERNAME
GNOME_DESKTOP_SESSION_ID
TERM
PATH
Pipenv鈥搒pecific environment variables:
Debug鈥搒pecific environment variables:
PATH
: /home/florian/.yarn/bin:/usr/local/heroku/bin:/home/florian/.local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
SHELL
: /usr/bin/zsh
EDITOR
: vim
LANG
: en_US.utf8
PWD
: /home/florian/.local/venvs/pipenv
I'd expect Django to be an update given the following pipfile and lock file:
[[source]]
name = "pypi"
verify_ssl = true
url = "https://pypi.org/simple"
[packages]
django = "*"
[dev-packages]
[requires]
python_version = "3.6"
{
"_meta": {
"hash": {
"sha256": "68309cd71a258c30a39567fce09a09ad5c4ff0bdc85b6fba22b47598c985c883"
},
"pipfile-spec": 6,
"requires": {
"python_version": "3.6"
},
"sources": [
{
"name": "pypi",
"url": "https://pypi.org/simple",
"verify_ssl": true
}
]
},
"default": {
"django": {
"hashes": [
"sha256:0120b3b60760fb0617848b58aaa9702c0bf963320ed472f0879c5c55ab75b64a",
"sha256:b6f3b864944276b4fd1d099952112696558f78b77b39188ac92b6c5e80152c30"
],
"index": "pypi",
"version": "==1.11"
},
"pytz": {
"hashes": [
"sha256:65ae0c8101309c45772196b21b74c46b2e5d11b6275c45d251b150d5da334555",
"sha256:c06425302f2cf668f1bba7a0a03f3c1d34d4ebeef2c72003da308b3947c7f749"
],
"version": "==2018.4"
}
},
"develop": {}
}
pipenv update --outdated
does nothing; pipenv run pip list -o
lists Django as outdated:
Package Version Latest Type
------- ------- ------ -----
Django 1.11 2.0.4 wheel
Thanks for reporting, I am preparing a PR to fix it.
I'm having this issue as well.
I'm on "macOS 10.13.6", and "pipenv, version 2018.7.1".
When I activate my pipenv, I can see "Python 3.6.6" and "pip 18.0"
When I run pipenv update --outdated
, it loads for a long time and then gives no output.
Have you ever considered the possibility it outputs nothing because there鈥檚 nothing outdated??
Oh. In 10 years of Python development I don't think I had one day in my life where a requirements.txt would have been 100% up to date, and the Pipfile that I have at the moment has 100+ dependencies, so no, I actually did not consider that possibility and you are a patient genious for even thinking about this possibility, thank you :)
However, I now learned that pretty much all versions in my Pipfile are pinned like this: appnope = "==0.1.0"
And someone just told me that if I pin a version, then --outdated will basically ignore if there are new versions upstream.
So I replaced one of my packages with = "*"
in the Pipfile and ran --outdated
again and now the command does indeed show me some output.
I think I still don't fully understand how a typical workflow (local development and deployment) with Pipenv is supposed to work. I need to read the docs again and play around with it. I must say that the way --outdated works at the moment is very confusing. I would expect that it just tells me "hey, you have A in your venv, you have B in your pipfile, you have C in your lockfile and there is D available on Pypi".
Run pipenv graph
and find the top level dependencies. Leave only those in your pipfile. Unpin the ones you don鈥檛 need pinned. Then you should get newer versions of most packages