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.

Unexpected Error Resolving Satisfiable Dependencies with Pipenv 11

See original GitHub issue

Hi All!

When running pipenv lock on a Pipfile containing pandas==0.18.1 and pandas-datareader==0.5.0, pipenv errors out claiming that it can’t find a pandas version satisfying pandas==0.18.1,>=0.19.2, but pandas-datareader doesn’t require pandas>=0.19.2 until 0.6.0. In particular, pandas-datareader==0.5.0 has the following requirements:

INSTALL_REQUIRES = (
    ['pandas>=0.17.0', 'requests>=2.3.0', 'requests-file', 'requests-ftp']
)

I don’t see this behavior in earlier versions of pipenv. With pipenv 10.0, for example, the packages above resolve to the following reasonable-looking versions (hashes omitted for brevity):

        "certifi": {
            "version": "==2018.1.18"
        },
        "chardet": {
            "version": "==3.0.4"
        },
        "idna": {
            "version": "==2.6"
        },
        "numpy": {
            "version": "==1.14.2"
        },
        "pandas": {
            "version": "==0.18.1"
        },
        "pandas-datareader": {
            "version": "==0.5"
        },
        "python-dateutil": {
            "version": "==2.7.0"
        },
        "pytz": {
            "version": "==2018.3"
        },
        "requests": {
            "version": "==2.18.4"
        },
        "requests-file": {
            "version": "==1.4.3"
        },
        "requests-ftp": {
            "version": "==0.3.1"
        },
        "six": {
            "version": "==1.11.0"
        },
        "urllib3": {
            "version": "==1.22"
        }

System Info:

$ python -m pipenv.help

Pipenv version: '11.6.1'

Pipenv location: '/home/ssanderson/.virtualenvs/repro/local/lib/python2.7/site-packages/pipenv'

Python location: '/home/ssanderson/.virtualenvs/repro/bin/python'

Other Python installations in PATH:

  • 2.7: /home/ssanderson/.virtualenvs/repro/bin/python2.7

  • 2.7: /home/ssanderson/.virtualenvs/repro/bin/python2.7

  • 2.7: /usr/bin/python2.7

  • 3.5: /usr/bin/python3.5m

  • 3.5: /usr/bin/python3.5

  • 3.6: /usr/local/bin/python3.6m

  • 3.6: /usr/local/bin/python3.6

  • 3.6: /usr/local/bin/python3.6

  • 3.6: /usr/local/bin/python3.6

  • 2.7.12: /home/ssanderson/.virtualenvs/repro/bin/python

  • 2.7.12: /usr/bin/python

  • 2.7.12: /home/ssanderson/.virtualenvs/repro/bin/python2

  • 2.7.12: /usr/bin/python2

  • 3.5.2: /usr/bin/python3

PEP 508 Information:

{'implementation_name': 'cpython',
 'implementation_version': '0',
 'os_name': 'posix',
 'platform_machine': 'x86_64',
 'platform_python_implementation': 'CPython',
 'platform_release': '4.13.0-36-generic',
 'platform_system': 'Linux',
 'platform_version': '#40~16.04.1-Ubuntu SMP Fri Feb 16 23:25:58 UTC 2018',
 'python_full_version': '2.7.12',
 'python_version': '2.7',
 'sys_platform': 'linux2'}

System environment variables:

  • rvm_version
  • XDG_SESSION_TYPE
  • VIRTUALENVWRAPPER_SCRIPT
  • VIRTUAL_ENV
  • SHELL
  • XDG_DATA_DIRS
  • CONSUL_HTTP_ADDR
  • PROJECTS_ROOT
  • WORKON_HOME
  • XDG_RUNTIME_DIR
  • _system_type
  • XDG_SESSION_ID
  • DESKTOP_SESSION
  • _system_version
  • rvm_path
  • USER
  • XDG_VTNR
  • PYTHONUNBUFFERED
  • PS1
  • XAUTHORITY
  • LANGUAGE
  • SHLVL
  • QT_QPA_PLATFORMTHEME
  • WINDOWID
  • EDITOR
  • TMUX_PLUGIN_MANAGER_PATH
  • XDG_SESSION_DESKTOP
  • EVENT_NOEPOLL
  • TMUX
  • GDMSESSION
  • XDG_SEAT_PATH
  • PIP_PYTHON_PATH
  • _
  • _system_name
  • XDG_GREETER_DATA_DIR
  • PKG_CONFIG_PATH
  • HOME
  • DISPLAY
  • LANG
  • VIRTUALENVWRAPPER_PYTHON
  • _system_arch
  • rvm_prefix
  • VTE_VERSION
  • VIRTUALENVWRAPPER_HOOK_DIR
  • LOGNAME
  • TMUX_PANE
  • GDM_LANG
  • XDG_SEAT
  • PATH
  • SSH_AGENT_PID
  • TERM
  • VIRTUALENVWRAPPER_WORKON_CD
  • XDG_SESSION_PATH
  • rvm_bin_path
  • SSH_AUTH_SOCK
  • VIRTUALENVWRAPPER_PROJECT_FILENAME
  • OLDPWD
  • PWD

Pipenv–specific environment variables:

Debug–specific environment variables:

  • PATH: /home/ssanderson/.virtualenvs/repro/bin:/home/ssanderson/.cargo/bin:/usr/local/heroku/bin:/home/ssanderson/bin:/home/ssanderson/.local/bin:/usr/local/bin:/usr/local/sbin:/home/ssanderson/.cargo/bin:/usr/local/heroku/bin:/home/ssanderson/bin:/home/ssanderson/.local/bin:/usr/local/bin:/usr/local/sbin:/home/ssanderson/bin:/home/ssanderson/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/ssanderson/.rvm/bin
  • SHELL: /bin/bash
  • EDITOR: emacs -nw
  • LANG: en_US.UTF-8
  • PWD: /home/ssanderson/quantopian/repro
  • VIRTUAL_ENV: /home/ssanderson/.virtualenvs/repro

Contents of Pipfile (‘/home/ssanderson/quantopian/repro/Pipfile’):

[[source]]

url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"


[requires]

python_version = "2.7"

[packages]

pandas-datareader = "==0.5"
pandas = "==0.18.1"



Expected result

I expected the Pipfile listed above to resolve to something like the set of dependencies that pipenv 10 finds successfully.

Actual result

pipenv appears to think that pandas-datareader always requires pandas>=0.19, which eventually causes a dependency resolution failure.

(repro) [~/quantopian/repro]$ pipenv lock --clear --verbose

Provide the steps to replicate (which usually at least includes the commands and the Pipfile).
Courtesy Notice: Pipenv found itself running within a virtual environment, so it will automatically use that environment, instead of creating its own for any project.
Locking [dev-packages] dependencies…
Using pip: -i https://pypi.python.org/simple

                          ROUND 1
Current constraints:

Finding the best candidates:

Finding secondary dependencies:
------------------------------------------------------------
Result of round 1: stable, done

Locking [packages] dependencies…
Using pip: -i https://pypi.python.org/simple

                          ROUND 1
Current constraints:
  pandas==0.18.1
  pandas-datareader==0.5

Finding the best candidates:
  found candidate pandas==0.18.1 (constraint was ==0.18.1)
  found candidate pandas-datareader==0.5 (constraint was ==0.5)

Finding secondary dependencies:
  pandas==0.18.1            requires numpy>=1.7.0, python-dateutil, pytz>=2011k
  pandas-datareader==0.5    requires lxml, pandas>=0.19.2, requests-file, requests-ftp, requests>=2.3.0, wrapt

New dependencies found in this round:
  adding [u'lxml', '', '[]']
  adding [u'numpy', '>=1.7.0', '[]']
  adding [u'pandas', '>=0.19.2', '[]']
  adding [u'python-dateutil', '', '[]']
  adding [u'pytz', '>=2011k', '[]']
  adding [u'requests', '>=2.3.0', '[]']
  adding [u'requests-file', '', '[]']
  adding [u'requests-ftp', '', '[]']
  adding [u'wrapt', '', '[]']
Removed dependencies in this round:
Unsafe dependencies in this round:
------------------------------------------------------------
Result of round 1: not stable

                          ROUND 2
Current constraints:
  lxml
  numpy>=1.7.0
  pandas==0.18.1,>=0.19.2
  pandas-datareader==0.5
  python-dateutil
  pytz>=2011k
  requests>=2.3.0
  requests-file
  requests-ftp
  wrapt

Finding the best candidates:
  found candidate lxml==4.1.1 (constraint was <any>)
  found candidate numpy==1.14.2 (constraint was >=1.7.0)
Using pip: -i https://pypi.python.org/simple

                          ROUND 1
Current constraints:
  pandas==0.18.1
  pandas-datareader==0.5

Finding the best candidates:
  found candidate pandas==0.18.1 (constraint was ==0.18.1)
  found candidate pandas-datareader==0.5 (constraint was ==0.5)

Finding secondary dependencies:
  pandas==0.18.1            requires numpy>=1.7.0, python-dateutil, pytz>=2011k
  pandas-datareader==0.5    requires lxml, pandas>=0.19.2, requests-file, requests-ftp, requests>=2.3.0, wrapt

New dependencies found in this round:
  adding [u'lxml', '', '[]']
  adding [u'numpy', '>=1.7.0', '[]']
  adding [u'pandas', '>=0.19.2', '[]']
  adding [u'python-dateutil', '', '[]']
  adding [u'pytz', '>=2011k', '[]']
  adding [u'requests', '>=2.3.0', '[]']
  adding [u'requests-file', '', '[]']
  adding [u'requests-ftp', '', '[]']
  adding [u'wrapt', '', '[]']
Removed dependencies in this round:
Unsafe dependencies in this round:
------------------------------------------------------------
Result of round 1: not stable

                          ROUND 2
Current constraints:
  lxml
  numpy>=1.7.0
  pandas==0.18.1,>=0.19.2
  pandas-datareader==0.5
  python-dateutil
  pytz>=2011k
  requests>=2.3.0
  requests-file
  requests-ftp
  wrapt

Finding the best candidates:
  found candidate lxml==4.1.1 (constraint was <any>)
  found candidate numpy==1.14.2 (constraint was >=1.7.0)

Warning: Your dependencies could not be resolved. You likely have a mismatch in your sub-dependencies.
  You can use $ pipenv install --skip-lock to bypass this mechanism, then run $ pipenv graph to inspect the situation.
Could not find a version that matches pandas==0.18.1,>=0.19.2
Tried: 0.3.0.beta.win32, 0.3.0.beta2.win32, 0.3.0.win-amd64, 0.3.0.win32, 0.4.0.win-amd64, 0.4.0.win32, 0.4.1.win-amd64, 0.4.1.win32, 0.4.2.win-amd64, 0.4.2.win32, 0.4.3.win-amd64, 0.4.3.win32, 0.5.0.win-amd64, 0.5.0.win32, 0.6.0.win-amd64, 0.6.0.win32, 0.6.1.win-amd64, 0.6.1.win32, 0.7.0rc1.win-amd64, 0.7.0rc1.win32, 0.7.0.win-amd64, 0.7.0.win32, 0.7.1.win-amd64, 0.7.1.win32, 0.7.2.win-amd64, 0.7.2.win32, 0.7.3.win-amd64, 0.7.3.win32, 0.8.0rc2.win-amd64, 0.8.0rc2.win32, 0.8.0.win-amd64, 0.8.0.win32, 0.8.1.win-amd64, 0.8.1.win32, 0.9.0.win-amd64, 0.9.0.win32, 0.9.1.win-amd64, 0.9.1.win32, 0.10.0.win-amd64, 0.10.0.win32, 0.10.1.win-amd64, 0.10.1.win32, 0.11.0.win-amd64, 0.11.0.win32, 0.12.0.win-amd64, 0.12.0.win32, 0.13.0.win-amd64, 0.13.0.win32, 0.13.1.win-amd64, 0.13.1.win32, 0.14.0.win-amd64, 0.14.0.win32, 0.14.1.win-amd64, 0.14.1.win32, 0.15.0.win-amd64, 0.15.0.win32, 0.15.1.win-amd64, 0.15.1.win32, 0.15.2.win-amd64, 0.15.2.win32, 0.1, 0.2b0, 0.2b1, 0.2, 0.3.0b0, 0.3.0b2, 0.3.0, 0.4.0, 0.4.1, 0.4.2, 0.4.3, 0.5.0, 0.6.0, 0.6.1, 0.7.0rc1, 0.7.0rc1, 0.7.0, 0.7.0, 0.7.1, 0.7.1, 0.7.2, 0.7.2, 0.7.3, 0.7.3, 0.8.0rc1, 0.8.0rc1, 0.8.0rc2, 0.8.0rc2, 0.8.0, 0.8.0, 0.8.1, 0.8.1, 0.9.0, 0.9.0, 0.9.1, 0.9.1, 0.10.0, 0.10.0, 0.10.1, 0.10.1, 0.11.0, 0.11.0, 0.12.0, 0.12.0, 0.13.0, 0.13.1, 0.13.1, 0.14.0, 0.14.0, 0.14.0, 0.14.0, 0.14.0, 0.14.1, 0.14.1, 0.14.1, 0.14.1, 0.14.1, 0.14.1, 0.15.0, 0.15.0, 0.15.0, 0.15.0, 0.15.0, 0.15.0, 0.15.1, 0.15.1, 0.15.1, 0.15.1, 0.15.1, 0.15.1, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.18.0, 0.18.0, 0.18.0, 0.18.0, 0.18.0, 0.18.0, 0.18.0, 0.18.0, 0.18.0, 0.18.0, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0, 0.20.0, 0.20.0, 0.20.0, 0.20.0, 0.20.0, 0.20.0, 0.20.0, 0.20.0, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0
Warning: Your dependencies could not be resolved. You likely have a mismatch in your sub-dependencies.
  You can use $ pipenv install --skip-lock to bypass this mechanism, then run $ pipenv graph to inspect the situation.
Could not find a version that matches pandas==0.18.1,>=0.19.2
Tried: 0.3.0.beta.win32, 0.3.0.beta2.win32, 0.3.0.win-amd64, 0.3.0.win32, 0.4.0.win-amd64, 0.4.0.win32, 0.4.1.win-amd64, 0.4.1.win32, 0.4.2.win-amd64, 0.4.2.win32, 0.4.3.win-amd64, 0.4.3.win32, 0.5.0.win-amd64, 0.5.0.win32, 0.6.0.win-amd64, 0.6.0.win32, 0.6.1.win-amd64, 0.6.1.win32, 0.7.0rc1.win-amd64, 0.7.0rc1.win32, 0.7.0.win-amd64, 0.7.0.win32, 0.7.1.win-amd64, 0.7.1.win32, 0.7.2.win-amd64, 0.7.2.win32, 0.7.3.win-amd64, 0.7.3.win32, 0.8.0rc2.win-amd64, 0.8.0rc2.win32, 0.8.0.win-amd64, 0.8.0.win32, 0.8.1.win-amd64, 0.8.1.win32, 0.9.0.win-amd64, 0.9.0.win32, 0.9.1.win-amd64, 0.9.1.win32, 0.10.0.win-amd64, 0.10.0.win32, 0.10.1.win-amd64, 0.10.1.win32, 0.11.0.win-amd64, 0.11.0.win32, 0.12.0.win-amd64, 0.12.0.win32, 0.13.0.win-amd64, 0.13.0.win32, 0.13.1.win-amd64, 0.13.1.win32, 0.14.0.win-amd64, 0.14.0.win32, 0.14.1.win-amd64, 0.14.1.win32, 0.15.0.win-amd64, 0.15.0.win32, 0.15.1.win-amd64, 0.15.1.win32, 0.15.2.win-amd64, 0.15.2.win32, 0.1, 0.2b0, 0.2b1, 0.2, 0.3.0b0, 0.3.0b2, 0.3.0, 0.4.0, 0.4.1, 0.4.2, 0.4.3, 0.5.0, 0.6.0, 0.6.1, 0.7.0rc1, 0.7.0rc1, 0.7.0, 0.7.0, 0.7.1, 0.7.1, 0.7.2, 0.7.2, 0.7.3, 0.7.3, 0.8.0rc1, 0.8.0rc1, 0.8.0rc2, 0.8.0rc2, 0.8.0, 0.8.0, 0.8.1, 0.8.1, 0.9.0, 0.9.0, 0.9.1, 0.9.1, 0.10.0, 0.10.0, 0.10.1, 0.10.1, 0.11.0, 0.11.0, 0.12.0, 0.12.0, 0.13.0, 0.13.1, 0.13.1, 0.14.0, 0.14.0, 0.14.0, 0.14.0, 0.14.0, 0.14.1, 0.14.1, 0.14.1, 0.14.1, 0.14.1, 0.14.1, 0.15.0, 0.15.0, 0.15.0, 0.15.0, 0.15.0, 0.15.0, 0.15.1, 0.15.1, 0.15.1, 0.15.1, 0.15.1, 0.15.1, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.15.2, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.0, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.1, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.16.2, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.0, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.17.1, 0.18.0, 0.18.0, 0.18.0, 0.18.0, 0.18.0, 0.18.0, 0.18.0, 0.18.0, 0.18.0, 0.18.0, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.18.1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0rc1, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.0, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.1, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.19.2, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0rc1, 0.20.0, 0.20.0, 0.20.0, 0.20.0, 0.20.0, 0.20.0, 0.20.0, 0.20.0, 0.20.0, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.1, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.2, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.20.3, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0rc1, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.0, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.21.1, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0, 0.22.0q

Issue Analytics

  • State:closed
  • Created 6 years ago
  • Reactions:1
  • Comments:50 (34 by maintainers)

github_iconTop GitHub Comments

2reactions
ehebertcommented, Mar 13, 2018

I was able to recreate this issue with `pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1", using:

$ pipenv --version
pipenv, version 11.6.1

I believe the source of the dependency conflict is in pipenv.patched.notpip.index.PackageFinder.find_requirement, with the value of ignore_compatiblity=True. (Which was recently changed with this patch, https://github.com/pypa/pipenv/commit/4e906e4bc0df095ed3d61d4d283af02c76ec76d2#diff-6793f5b689d9956dc9b6c175038b718dR491)

When ignore_compatibility is True, and the spec for pandas-datareader is pandas-datareader==0.5.0, the spec is ignored, and all available candidates that are listed on PyPI are considered. The best_candidate value in the find_requirements method is then set to 0.6.0, instead of 0.5.0, which adds a constraint of pandas>=0.19.2. The correct pandas constraint for pandas-datareader==0.5.0 is pandas>=0.17.0.

Here is a table of the expected constraints for pandas-datareader with links to the project’s setup.py:

pandas-datareader version pandas contsraint setup.py link
0.5.0 >=0.17.0 https://github.com/pydata/pandas-datareader/blob/331e3895c51326e87e69325e1a14f1e350cb832e/setup.py#L28
0.6.0 >=0.19.0 https://github.com/pydata/pandas-datareader/blob/0debb023ba90ec57b6dd134a2003cb07aeea66a4/setup.py#L17

The following patch, which sets the default value of find_requirements to False, allows a successful invocation of the pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1. (Clearing the depcache before re-running the command is also required.)

modified   pipenv/patched/notpip/index.py
@@ -488,7 +488,7 @@ class PackageFinder(object):
             dependency_versions
         )
 
-    def find_requirement(self, req, upgrade, ignore_compatibility=True):
+    def find_requirement(self, req, upgrade, ignore_compatibility=False):
         """Try to find a Link matching req
 
         Expects req, an InstallRequirement and upgrade, a boolean

I am not yet sure if changing that default value will break any other use cases, or cause a regression on https://github.com/pypa/pipenv/issues/1667, the issue which is mentioned in the patch that added the ignore_compatibility flag.

0reactions
ko-htetcommented, Jul 10, 2020

help me please! I can’t solve this error. ERROR: Could not find a version that satisfies the requirement b1 (from -r requi rements.txt (line 59)) (from versions: none) ERROR: No matching distribution found for b1 (from -r requirements.txt (line 59) )

Read more comments on GitHub >

github_iconTop Results From Across the Web

How to resolve Python package dependencies with pipenv?
You likely have a mismatch in your sub-dependencies. First try clearing your dependency cache with $ pipenv lock --clear, then try the original...
Read more >
pipenv Documentation
Dependencies of wheels provided in a Pipfile will not be captured by $ pipenv lock. • There are some known issues with using...
Read more >
pipenv Documentation
The problems that Pipenv seeks to solve are multi-faceted: • You no longer need to use pip and virtualenv separately. They work together....
Read more >
Common Pipenv Errors and How to Solve Them
Here, you'll learn how to troubleshoot Pipenv installation and locking issues. ... who uses this Pipfile will encounter locking and dependency errors.
Read more >
Pipenv: promises a lot, delivers very little
Pipenv is a Python packaging tool that does one thing reasonably well — application dependency management. However, it is also plagued by ...
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