question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

pipenv update --outdated lists nothing

See original GitHub issue

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–specific environment variables:

Debug–specific 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

Expected result

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": {}
}
Actual result

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

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:5 (3 by maintainers)

github_iconTop GitHub Comments

1reaction
techalchemycommented, Jul 27, 2018

Run pipenv graph and find the top level dependencies. Leave only those in your pipfile. Unpin the ones you don’t need pinned. Then you should get newer versions of most packages

1reaction
mbrochhcommented, Jul 27, 2018

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”.

Read more comments on GitHub >

github_iconTop Results From Across the Web

python - How to install / update package with pipenv without ...
Running pipenv install/uninstall/update with --keep-outdated will prevent pipenv from updating unrelated locked packages.
Read more >
pipenv Documentation - Read the Docs
Find out what's changed upstream: $ pipenv update --outdated. • Upgrade packages, two options: a. Want to upgrade everything? Just do $ pipenv...
Read more >
pipenv · PyPI
Pipenv : Python Development Workflow for Humans. image CI image. Pipenv is a tool that aims to bring the best of all packaging...
Read more >
Frequently Encountered Pipenv Problems - Read the Docs
Pipenv is constantly being improved by volunteers, but is still a very young project with ... Here are some common questions people have...
Read more >
How to Update All Python Packages - ActiveState
This is because pip and pipenv do not resolve dependencies, unlike the ActiveState Platform. To ensure your environment doesn't break on upgrade ......
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found