Pipenv: Неожиданная ошибка при устранении удовлетворительных зависимостей с помощью Pipenv 11

Созданный на 13 мар. 2018  ·  50Комментарии  ·  Источник: pypa/pipenv

Всем привет!

При запуске pipenv lock в файле Pipfile, содержащем pandas==0.18.1 и pandas-datareader==0.5.0 , возникает ошибка pipenv , утверждающая, что он не может найти версию pandas, удовлетворяющую pandas==0.18.1,>=0.19.2 , но pandas-datareader не требует pandas>=0.19.2 до 0.6.0 . В частности, к pandas-datareader==0.5.0 предъявляются следующие требования:

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

Я не вижу такого поведения в более ранних версиях pipenv. С pipenv 10.0, например, указанные выше пакеты разрешаются до следующих разумно выглядящих версий (хэши опущены для краткости):

        "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"
        }


Системная информация:

$ python -m pipenv.help

Версия Pipenv: '11.6.1'

Расположение Pipenv: '/home/ssanderson/.virtualenvs/repro/local/lib/python2.7/site-packages/pipenv'

Расположение Python: '/home/ssanderson/.virtualenvs/repro/bin/python'

Другие установки Python в 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 Информация:

{'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'}

Переменные системного окружения:

  • 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:

Переменные среды, специфичные для отладки:

  • 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

Содержимое 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"



Ожидаемый результат

Я ожидал, что указанный выше Pipfile разрешит что-то вроде набора зависимостей, которые успешно обнаруживает pipenv 10.

Фактический результат

pipenv, похоже, думает, что pandas-datareader всегда требует pandas> = 0,19, что в конечном итоге приводит к сбою разрешения зависимости.

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

Предоставьте шаги для репликации (которые обычно включают как минимум команды и 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
Dependency Resolution Type Discussion

Самый полезный комментарий

Мне удалось воссоздать эту проблему с помощью `pipenv-resolver pandas-datareader == 0.5.0 pandas == 0.18.1", используя:

$ pipenv --version
pipenv, version 11.6.1

Я считаю, что источник конфликта зависимостей находится в pipenv.patched.notpip.index.PackageFinder.find_requirement со значением ignore_compatiblity=True . (Что недавно было изменено этим патчем, https://github.com/pypa/pipenv/commit/4e906e4bc0df095ed3d61d4d283af02c76ec76d2#diff-6793f5b689d9956dc9b6c175038b718dR491)

Когда ignore_compatibility - это True , а спецификация для pandas-datareader - pandas-datareader==0.5.0 , спецификация игнорируется и рассматриваются все доступные кандидаты, перечисленные в PyPI. Затем значение best_candidate в методе find_requirements устанавливается равным 0.6.0 вместо 0.5.0 , что добавляет ограничение pandas>=0.19.2 . Правильное ограничение pandas для pandas-datareader==0.5.0 - pandas>=0.17.0 .

Вот таблица ожидаемых ограничений для pandas-datareader со ссылками на setup.py проекта:

| версия pandas-datareader | сдержанные панды | setup.py ссылка |
| ------------------------------------- | ----------- --------------- | ------------------- |
| 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 |

Следующий патч, который устанавливает значение по умолчанию find_requirements на False , позволяет успешно вызвать pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1 . (Также необходимо очистить кэш-память перед повторным запуском команды.)

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

Я еще не уверен, что изменение этого значения по умолчанию нарушит любые другие варианты использования или вызовет регрессию на https://github.com/pypa/pipenv/issues/1667 , проблема, которая упоминается в патче, добавившем ignore_compatibility флаг.

Все 50 Комментарий

Мне удалось воссоздать эту проблему с помощью `pipenv-resolver pandas-datareader == 0.5.0 pandas == 0.18.1", используя:

$ pipenv --version
pipenv, version 11.6.1

Я считаю, что источник конфликта зависимостей находится в pipenv.patched.notpip.index.PackageFinder.find_requirement со значением ignore_compatiblity=True . (Что недавно было изменено этим патчем, https://github.com/pypa/pipenv/commit/4e906e4bc0df095ed3d61d4d283af02c76ec76d2#diff-6793f5b689d9956dc9b6c175038b718dR491)

Когда ignore_compatibility - это True , а спецификация для pandas-datareader - pandas-datareader==0.5.0 , спецификация игнорируется и рассматриваются все доступные кандидаты, перечисленные в PyPI. Затем значение best_candidate в методе find_requirements устанавливается равным 0.6.0 вместо 0.5.0 , что добавляет ограничение pandas>=0.19.2 . Правильное ограничение pandas для pandas-datareader==0.5.0 - pandas>=0.17.0 .

Вот таблица ожидаемых ограничений для pandas-datareader со ссылками на setup.py проекта:

| версия pandas-datareader | сдержанные панды | setup.py ссылка |
| ------------------------------------- | ----------- --------------- | ------------------- |
| 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 |

Следующий патч, который устанавливает значение по умолчанию find_requirements на False , позволяет успешно вызвать pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1 . (Также необходимо очистить кэш-память перед повторным запуском команды.)

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

Я еще не уверен, что изменение этого значения по умолчанию нарушит любые другие варианты использования или вызовет регрессию на https://github.com/pypa/pipenv/issues/1667 , проблема, которая упоминается в патче, добавившем ignore_compatibility флаг.

Спасибо, что отследили это. Я знаю, что были другие проблемы с оператором == и похоже, что это связано

Это - это наша текущая проблема. Это отличный способ воспроизвести это. Спасибо.

Закрытие других вопросов для этого.

подождите, у меня $ pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1 отлично работает.

pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1                         1071ms  Tue Mar 13 09:45:07 2018
RESULTS:
[{"name": "numpy", "version": "1.14.2", "hashes": ["sha256:facc6f925c3099ac01a1f03758100772560a0b020fb9d70f210404be08006bcb", "sha256:6be6b0ca705321c178c9858e5ad5611af664bbdfae1df1541f938a840a103888", "sha256:d0928076d9bd8a98de44e79b1abe50c1456e7abbb40af7ef58092086f1a6c729", "sha256:0fd65cbbfdbf76bbf80c445d923b3accefea0fe2c2082049e0ce947c81fe1d3f", "sha256:0739146eaf4985962f07c62f7133aca89f3a600faac891ce6c7f3a1e2afe5272", "sha256:0f6a5ed0cd7ab1da11f5c07a8ecada73fc55a70ef7bb6311a4109891341d7277", "sha256:a958bf9d4834c72dee4f91a0476e7837b8a2966dc6fcfc42c421405f98d0da51", "sha256:675e0f23967ce71067d12b6944add505d5f0a251f819cfb44bdf8ee7072c090d", "sha256:528ce59ded2008f9e8543e0146acb3a98a9890da00adf8904b1e18c82099418b", "sha256:f2b1378b63bdb581d5d7af2ec0373c8d40d651941d283a2afd7fc71184b3f570", "sha256:768e777cc1ffdbf97c507f65975c8686ebafe0f3dc8925d02ac117acc4669ce9", "sha256:99051e03b445117b26028623f1a487112ddf61a09a27e2d25e6bc07d37d94f25", "sha256:07e21f14490324cc1160db101e9b6c1233c33985af4cb1d301dd02650fea1d7f", "sha256:e6120d63b50e2248219f53302af7ec6fa2a42ed1f37e9cda2c76dbaca65036a7", "sha256:a7157c9ac6bddd2908c35ef099e4b643bc0e0ebb4d653deb54891d29258dd329", "sha256:8c18ee4dddd5c6a811930c0a7c7947bf16387da3b394725f6063f1366311187d", "sha256:56e392b7c738bd70e6f46cf48c8194d3d1dd4c5a59fae4b30c58bb6ef86e5233", "sha256:d858423f5ed444d494b15c4cc90a206e1b8c31354c781ac7584da0d21c09c1c3", "sha256:bb370120de6d26004358611441e07acda26840e41dfedc259d7f8cc613f96495", "sha256:7f76d406c6b998d6410198dcb82688dcdaec7d846aa87e263ccf52efdcfeba30", "sha256:a1413d06abfa942ca0553bf3bccaff5fdb36d55b84f2248e36228db871147dab", "sha256:20cac3123d791e4bf8482a580d98d6b5969ba348b9d5364df791ba3a666b660d", "sha256:719d914f564f35cce4dc103808f8297c807c9f0297ac183ed81ae8b5650e698e"]}, {"name": "pytz", "version": "2018.3", "hashes": ["sha256:410bcd1d6409026fbaa65d9ed33bf6dd8b1e94a499e32168acfc7b332e4095c0", "sha256:887ab5e5b32e4d0c86efddd3d055c1f363cbaa583beb8da5e22d2fa2f64d51ef", "sha256:5bd55c744e6feaa4d599a6cbd8228b4f8f9ba96de2c38d56f08e534b3c9edf0d", "sha256:ba18e6a243b3625513d85239b3e49055a2f0318466e0b8a92b8fb8ca7ccdf55f", "sha256:3a47ff71597f821cd84a162e71593004286e5be07a340fd462f0d33a760782b5", "sha256:07edfc3d4d2705a20a6e99d97f0c4b61c800b8232dc1c04d87e8554f130148dd", "sha256:ed6509d9af298b7995d69a440e2822288f2eca1681b8cce37673dbb10091e5fe", "sha256:f93ddcdd6342f94cea379c73cddb5724e0d6d0a1c91c9bdef364dc0368ba4fda", "sha256:61242a9abc626379574a166dc0e96a66cd7c3b27fc10868003fa210be4bff1c9"]}, {"name": "pandas-datareader", "version": "0.5.0", "hashes": ["sha256:a4461918f710b3c4b080a9e6b70efd5872d7580478fe331ee4c45ed3f7e35a56", "sha256:7523ca480c258cf4335869ba72e201807f2f3a8f4395efad5508a269efff18c9"]}, {"name": "requests-file", "version": "1.4.3", "hashes": ["sha256:75c175eed739270aec3c5279ffd74e6527dada275c5c0d76b5817e9c86bb7dea", "sha256:8f04aa6201bacda0567e7ac7f677f1499b0fc76b22140c54bc06edf1ba92e2fa"]}, {"name": "certifi", "version": "2018.1.18", "hashes": ["sha256:14131608ad2fd56836d33a71ee60fa1c82bc9d2c8d98b7bdbc631fe1b3cd1296", "sha256:edbc3f203427eef571f79a7692bb160a2b0f7ccaa31953e99bd17e307cf63f7d"]}, {"name": "idna", "version": "2.6", "hashes": ["sha256:2c6a5de3089009e3da7c5dde64a141dbc8551d5b7f6cf4ed7c2568d0cc520a8f", "sha256:8c7309c718f94b3a625cb648ace320157ad16ff131ae0af362c9f21b80ef6ec4"]}, {"name": "requests-ftp", "version": "0.3.1", "hashes": ["sha256:7504ceb5cba8a5c0135ed738596820a78c5f2be92d79b29f96ba99b183d8057a"]}, {"name": "python-dateutil", "version": "2.7.0", "hashes": ["sha256:07009062406cffd554a9b4135cd2ff167c9bf6b7aac61fe946c93e69fad1bbd8", "sha256:8f95bb7e6edbb2456a51a1fb58c8dca942024b4f5844cae62c90aa88afe6e300"]}, {"name": "chardet", "version": "3.0.4", "hashes": ["sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691", "sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae"]}, {"name": "requests", "version": "2.18.4", "hashes": ["sha256:6a1b267aa90cac58ac3a765d067950e7dbbf75b1da07e895d1f594193a40a38b", "sha256:9c443e7324ba5b85070c4a818ade28bfabedf16ea10206da1132edaa6dda237e"]}, {"name": "urllib3", "version": "1.22", "hashes": ["sha256:06330f386d6e4b195fbfc736b297f58c5a892e4440e54d294d7004e3a9bbea1b", "sha256:cc44da8e1145637334317feebd728bd869a35285b93cbb4cca2577da7e62db4f"]}, {"name": "pandas", "version": "0.18.1", "hashes": ["sha256:2aeebd55027eb1fcb5020ec141696be47fff65fb86c276e46bae42f04b3bfeaf", "sha256:9b1a7834e10c5a2afacaae8ba10054dc2ee5ae81eeaecf44d9eaa4d726962817", "sha256:6f31b4510da92f8beec17fe9ecb3f386984a4b35e1d1dee062b3463f63e70bbc", "sha256:c39dbc38bc031f099bcfa408a93c801f0141ee49a7d4e0df09cdf9dcf01f27e6", "sha256:fccbc771a23d51b366182c136cd735cf1642744270fee964f5b1fe9103d66239", "sha256:563720b6302a4e2b513471c16bd7e89db2ae44d3f6b0745896b9c289f3c6b2fb", "sha256:a0af231d6bf20d3f94a4d694bb3cd26c1b330aa4ed124ea99eff49a583ed10ff", "sha256:de8661d3a71bac8b5100c2a85fdb1b55c9b41534aba7a9671d1130d43ab2de59", "sha256:c850d8c41b5417ba361967d3e2b6119c681b9f0bd5eb77f4c013c46dbf0ebe95", "sha256:aa50475fafbc689dead2e9a4e98b96fc43f1190f6661d1daf560f8c05ac26496", "sha256:80bf0d32432fe588a0e94ff6b216aa5c61ddba2348ca904bda240218f9cbe122", "sha256:42c933501341263194926d00c1039d314039f6fbe763e13d983918d273a0ad68", "sha256:6621db235422aa48d7513a7f332a7bfc6e9a54b0283bac145cccec7c4c0ccd7d", "sha256:931d25b391eb01c52239a41e2b1c29c8337a6789852ecc0d4ce39ce2491424e6", "sha256:d2e483692c7915916dffd1b83256ea9761b4224c8d45646ceddf48b977ee77b2", "sha256:b7a6ce196452bf9a020074b68c184b174c12a22c285603ceebb09c645cf001d1", "sha256:9984b284ab6d7672c720ea960f4d19b9dd0bea061c2ccd641b0c20d34ce03f7a"]}, {"name": "six", "version": "1.11.0", "hashes": ["sha256:832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb", "sha256:70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9"]}]

@ehebert, этот патч позволяет нам которые не будут работать в вашей системе, но все равно

Я могу подтвердить, что вызов pipenv-resolver не выполняется для меня. Я знаю, что мы с @ehebert оба

Вполне возможно. Поэкспериментирую на linux.

У меня такая же проблема с django-pyodbc-azure==1.11.11.0 не нравится django==1.11.11 , и я ищу совпадения django<2.1,==1.11.11,>=2.0.3 которые соответствуют требованиям django-pyodbc-azure==2.x.x.x которые недоступны для меня:

Error:  An error occurred while installing django-pyodbc-azure==2.0!
  Could not find a version that satisfies the requirement django-pyodbc-azure==2.0 (from versions: 1.0.1, 1.0.2, 1.0.3, 1.0.5, 1.0.6, 1.0.7, 1.0.8, 1.0.9, 1.0.10, 1.0.11, 1.0.12, 1.0.13, 1.0.14, 1.1.0, 1.1.1, 1.1.2, 1.1.3, 1.1.4, 1.1.5, 1.1.6, 1.1.7, 1.1.8, 1.2.0, 1.2.1, 1.2.2, 1.2.3, 1.2.4, 1.2.5, 1.2.6, 1.2.7, 1.2.8, 1.2.9, 1.2.10, 1.2.11, 1.2.12, 1.8.0.0, 1.8.1.0, 1.8.3.0, 1.8.6.0, 1.8.7.0, 1.8.7.1,
1.8.7.2, 1.8.9.0, 1.8.10.0, 1.8.13.0, 1.8.14.0, 1.8.14.1, 1.8.17.0, 1.9.0.0, 1.9.0.1, 1.9.1.0, 1.9.2.0, 1.9.3.0, 1.9.6.0, 1.9.9.0, 1.9.9.1, 1.9.12.0, 1.10.0.0, 1.10.0.1, 1.10.4.0, 1.11.0.0, 1.11.9.0, 1.11.11.0)
No matching distribution found for django-pyodbc-azure==2.0

Я использую Ubuntu (ну, bash на ubuntu на windows)

воспроизведено на убунту.

Я беру это обратно - не могу воспроизвести на ubuntu.

pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1 действительно не работает на ubuntu.

@kennethreitz @ssanderson какая версия? 16.04?

хозяин, очевидно

@kennethreitz из ubuntu Я имею в виду, что был ряд проблем, связанных с ubuntu 16.04, который является выпуском LTS

ах да я использую 17.10

pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1 больше не подводят меня.

Я беру это обратно - нужно пройти - ясно.

Выпущена версия 11.6.5, которая отменяет ignore_compatibility.

Спасибо за быстрое исправление!

Для меня это все еще проблема с pipenv 11.7.1:

pt@PT-LAP:/mnt/c/dev/git/test$ pipenv --version
pipenv, version 11.7.1
pt@PT-LAP:/mnt/c/dev/git/test$ pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1 --clear
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

Я пропустил шаг?

Это также похоже на проблему с pipenv 11.7.1 и Ubuntu 16.04.

$ pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1 --clear
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
...

Повторное применение патча к patched/notpip/index.py с https://github.com/pypa/pipenv/issues/1693#issuecomment -372541000 позволяет добиться успешного разрешения в моей настройке разработки.

$ python -m pipenv.help вывод
Версия Pipenv: '11.7.1'

Расположение Pipenv: '/home/ehebert/.local/lib/python3.5/site-packages/pipenv'

Расположение Python: '/usr/bin/python3'

Другие установки Python в PATH :

  • 2.7 : /usr/bin/python2.7
  • 2.7 : /usr/bin/python2.7
  • 3.4 : /usr/bin/python3.4m
  • 3.4 : /usr/bin/python3.4
  • 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.12 : /usr/bin/python

  • 2.7.12 : /usr/bin/python2
  • 3.5.2 : /usr/bin/python3

PEP 508 Информация:

{'implementation_name': 'cpython',
 'implementation_version': '3.5.2',
 'os_name': 'posix',
 'platform_machine': 'x86_64',
 'platform_python_implementation': 'CPython',
 'platform_release': '4.4.0-1050-aws',
 'platform_system': 'Linux',
 'platform_version': '#59-Ubuntu SMP Tue Jan 30 19:57:10 UTC 2018',
 'python_full_version': '3.5.2',
 'python_version': '3.5',
 'sys_platform': 'linux'}

Переменные системного окружения:

  • EDITOR
  • SHELL
  • _system_version
  • SSH_TTY
  • VAULT_TOKEN
  • rvm_version
  • _system_arch
  • LAPACK
  • USER
  • VAULT_ADDR
  • TERMCAP
  • SSH_CLIENT
  • MAIL
  • PYTHONUNBUFFERED
  • PWD
  • PATH
  • LIBRARY_PATH
  • COLUMNS
  • HOME
  • XDG_RUNTIME_DIR
  • IRBRC
  • MANWIDTH
  • GEM_HOME
  • TERM
  • XDG_DATA_DIRS
  • RUBY_VERSION
  • LINES
  • _system_type
  • SSH_AUTH_SOCK
  • BUP_DIR
  • PS1
  • PIP_PYTHON_PATH
  • GCOV
  • _
  • ATLAS
  • _system_name
  • XDG_SESSION_ID
  • INSIDE_EMACS
  • BLAS
  • MY_RUBY_HOME
  • SSH_CONNECTION
  • CC
  • rvm_bin_path
  • SHLVL
  • DISPLAY
  • LD_LIBRARY_PATH
  • CXX
  • EMACS
  • rvm_path
  • LANG
  • GEM_PATH
  • rvm_prefix
  • GOPATH
  • LOGNAME
  • TERMINFO

Переменные среды, специфичные для Pipenv:

Переменные среды, специфичные для отладки:

  • PATH : /mnt/rvm/bin:/mnt/rvm/gems/ruby-2.4.2/bin:/mnt/rvm/gems/ruby-2.4.2@global/bin:/mnt/rvm/rubies/ruby-2.4.2/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/ehebert/bi n:/home/ehebert/.local/bin:/mnt/go/bin:/home/ehebert/kniferoll/bin:/home/ehebert/.local/bin:/mnt/rvm/bin
  • SHELL : /bin/bash
  • EDITOR : emacsclient -nw
  • LANG : en_US.UTF-8
  • PWD : /home/ehebert

Предлагаемый патч был внесен в 11.7.2.

На самом деле, возможно, я заговорил слишком рано.

Да, ignore_compatibility=False

Извините, возможно, я неправильно слежу. Я не вижу изменений, чтобы сделать find_requirements аргументом ключевого слова ignore_compatibility=False на главном сервере ,

ах, неправильное место! Спасибо.

Изменяя это локально:

Could not find a version that matches pandas==0.18.1,>=0.19.2
Tried: 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.1, 0.14.1, 0.15.0, 0.15.0, 0.15.1, 0.15.1, 0.15.2, 0.15.2, 0.16.0, 0.16.0, 0.16.1, 0.16.1, 0.16.2, 0.16.2, 0.17.0, 0.17.0, 0.17.1, 0.17.1, 0.18.0, 0.18.1, 0.18.1, 0.19.0rc1, 0.19.0rc1, 0.19.0, 0.19.0, 0.19.1, 0.19.1, 0.19.2, 0.19.2, 0.20.0rc1, 0.20.0rc1, 0.20.0, 0.20.1, 0.20.1, 0.20.2, 0.20.2, 0.20.3, 0.20.3, 0.20.3, 0.21.0rc1, 0.21.0rc1, 0.21.0, 0.21.0, 0.21.1, 0.21.1, 0.22.0, 0.22.0

Pandas-datareader требует> 0.19.2.

это несовместимые зависимости.

Pandas-datareader требует> 0.19.2.

pandas-datareader==0.5.0 требует pandas>=0.17.0 , https://github.com/pydata/pandas-datareader/blob/331e3895c51326e87e69325e1a14f1e350cb832e/setup.py#L28

Я собираюсь подтвердить, загрузив tar-файл для pandas-datareader 0.5.0 из PyPI.

согласно нашему преобразователю: pandas-datareader==0.5.0 requires lxml, pandas>=0.19.2, requests-file, requests-ftp, requests>=2.3.0, wrap

(из PyPI sdist)

Так что странно.

колесо тоже {"requires": ["pandas (>=0.17.0)", "requests (>=2.3.0)", "requests-file", "requests-ftp"]

Та же проблема с $ pipenv-resolver django-pyodbc-azure==1.11.11.0 Django==1.11.11

Он разрешает зависимости от django-pyodbc-azure==2.0.3.0 а не django-pyodbc-azure==1.11.11.0

Моя проверка sdist и wheel соответствует вашим выводам pandas>=0.17.0 для pandas-datareader==0.5.0 .

Я считаю, что требования из pandas-datareader==0.6.0 используются вместо (или вместе) pandas-datareader==0.5.0 .

В какой-то момент во время прохождения я считаю, что обнаружил, что кеш зависимостей pipenv содержит как спецификацию pandas>=0.19.2 и pandas>=0.17.0 связанную с ключом ireq для pandas-datareader==0.5.0 , но не смогли воссоздать это состояние.

это может быть ошибка с нашим использованием json api

Я думаю, что в разрешении зависимостей есть что-то недетерминированное.

С этим локальным редактированием ignore_compatibility=False вызовы $ pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1 --clear случайным образом пройдут или не пройдут.

хмммм

запустите --verbose и проверьте результаты (цените вашу помощь)

Вообще нет проблем. (Еще раз спасибо за проект!)

С начала неудачного запуска:

Using pip: -i https://pypi.python.org/simple

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

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

Finding secondary dependencies:
  pandas==0.18.1 not in cache, need to check index
  pandas==0.18.1            requires numpy>=1.7.0, python-dateutil>=2, pytz>=2011k
  pandas-datareader==0.5.0 not in cache, need to check index
  pandas-datareader==0.5.0  requires lxml, pandas>=0.17.0, pandas>=0.19.2, requests-file, requests-file, requests-ftp, requests-ftp, requests>=2.3.0, requests>=2.3.0, wrapt

С начала успешного запуска: (РЕДАКТИРОВАТЬ: эта строка изначально была опечаткой «конец неудачного запуска», я сделал напротив неправильного слова в предложении.)

Using pip: -i https://pypi.python.org/simple

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

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

Finding secondary dependencies:
  pandas==0.18.1 not in cache, need to check index
  pandas==0.18.1            requires numpy>=1.7.0, python-dateutil>=2, pytz>=2011k
  pandas-datareader==0.5.0 not in cache, need to check index
  pandas-datareader==0.5.0  requires pandas>=0.17.0, requests-file, requests-ftp, requests>=2.3.0

В неудачном запуске есть две записи pandas для pandas-datareader .

Прилагается полный вывод вызовов pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1 --clear --verbose , которые оба использовали патч в https://github.com/pypa/pipenv/issues/1693#issuecomment -372541000. Насколько мне известно, ничего не изменилось между двумя вызовами.

разрешение-сбой-1.txt
разрешение-хорошо-3.txt

Неудача:

pandas-datareader == 0.5.0 не в кеше, нужно проверить индекс
pandas-datareader == 0.5.0 требует lxml, pandas> = 0.17.0, pandas> = 0.19.2, файл-запроса, файл-запроса, запросы-ftp, запросы-ftp, запросы> = 2.3.0, запросы> = 2.3.0, завернутый

Хороший:

pandas-datareader == 0.5.0 требует pandas> = 0.17.0, запросы-файл, запросы-ftp, запросы> = 2.3.0

Несоответствие.

-
Кеннет Райтц

14 марта 2018 г. в 8:45 Эдди Хеберт [email protected] написал:

Вообще нет проблем. (Еще раз спасибо за проект!)

С начала неудачного запуска:

Использование pip: -i https://pypi.python.org/simple

                      ROUND 1

Текущие ограничения:
панды == 0.18.1
панды-datareader == 0.5.0

Поиск лучших кандидатов:
найдены кандидаты pandas == 0.18.1 (ограничение было == 0.18.1)
найден кандидат pandas-datareader == 0.5.0 (ограничение было == 0.5.0)

Поиск вторичных зависимостей:
pandas == 0.18.1 не в кеше, нужно проверить индекс
pandas == 0.18.1 требует numpy> = 1.7.0, python-dateutil> = 2, pytz> = 2011k
pandas-datareader == 0.5.0 не в кеше, нужно проверить индекс
pandas-datareader == 0.5.0 требует lxml, pandas> = 0.17.0, pandas> = 0.19.2, файл-запроса, файл-запроса, запросы-ftp, запросы-ftp, запросы> = 2.3.0, запросы> = 2.3.0, завернутый
С конца неудачного прогона:

Использование pip: -i https://pypi.python.org/simple

                      ROUND 1

Текущие ограничения:
панды == 0.18.1
панды-datareader == 0.5.0

Поиск лучших кандидатов:
найдены кандидаты pandas == 0.18.1 (ограничение было == 0.18.1)
найден кандидат pandas-datareader == 0.5.0 (ограничение было == 0.5.0)

Поиск вторичных зависимостей:
pandas == 0.18.1 не в кеше, нужно проверить индекс
pandas == 0.18.1 требует numpy> = 1.7.0, python-dateutil> = 2, pytz> = 2011k
pandas-datareader == 0.5.0 не в кеше, нужно проверить индекс
pandas-datareader == 0.5.0 требует pandas> = 0.17.0, запросы-файл, запросы-ftp, запросы> = 2.3.0
Неудачный запуск имеет две записи pandas для pandas-datareader.

Прилагается полный вывод вызовов pipenv-resolver pandas-datareader == 0.5.0 pandas == 0.18.1 --clear --verbose, которые оба использовали патч в # 1693 (комментарий) https: // github. com / pypa / pipenv / issues / 1693 # issuecomment-372541000 . Насколько мне известно, ничего не изменилось между двумя вызовами.

разрешить-сбой-1.txt https://github.com/pypa/pipenv/files/1811070/resolve-fail-1.txt
resolve-good-3.txt https://github.com/pypa/pipenv/files/1811071/resolve-good-3.txt
-
Вы получаете это, потому что изменили состояние открытия / закрытия.
Ответьте на это электронное письмо напрямую, просмотрите его на GitHub https://github.com/pypa/pipenv/issues/1693#issuecomment-373008012 или отключите поток https://github.com/notifications/unsubscribe-auth/AAHUVaa45WKIDWv5S27H31dzFoJpZteQu .

В версии pipenv 11.8.0 , pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1 --clear надежно приводит к ожидаемым зависимостям. (Я протестировал ~ 20 последовательных вызовов.) Спасибо!

По-прежнему не работает на 11.8.0 для пары ftfy==4.4.3 и wordfreq==1.4.1 .
Как ни странно, pipenv-resolver ftfy==4.4.3 wordfreq==1.4.1 --clear работает, но pipenv lock --clear с обоими на них в Pipfile заканчивается на
`` ''
Блокировка зависимостей [dev-packages]…
Блокировка зависимостей [пакетов]…

Предупреждение: ваши зависимости не могут быть разрешены. Вероятно, у вас есть несоответствие в ваших зависимостях.
Вы можете использовать $ pipenv install --skip-lock, чтобы обойти этот механизм, а затем запустить $ pipenv graph, чтобы проверить ситуацию.
Не удалось найти версию, соответствующую ftfy == 4.4.3,> = 5
Пробовал: 1.0, 2.0, 2.0.1, 2.0.2, 3.0, 3.0.1, 3.0.2, 3.0.3, 3.0.4, 3.0.5, 3.1.0, 3.1.1, 3.1.2, 3.1. 3, 3.2.0, 3.3.0, 3.4.0, 4.0.0, 4.1.0, 4.1.1, 4.2.0, 4.3.1, 4.4, 4.4.1, 4.4.2, 4.4.3, 5.0, 5.0.1, 5.0.2, 5.1, 5.1.1, 5.2.0, 5.3.0

`` ''
(wordfreq == 1.4.1 должен требовать ftfy> = 4, а не 5)

@glowskir, мы находимся на 11.8.1, и эта проблема решена, я не могу воспроизвести вашу ошибку.

@glowskir У меня была аналогичная проблема, pipenv lock --clear у меня не сработало, затем я сделал pipenv-resolver ... --clear который сработал, а после этого pipenv lock --clear снова

Хотел бы я быть более полезным, но я не дошел до сути, почему это не удалось в первый раз - я бы предложил просто быть на 100% уверенным, что кеш был очищен.

Помоги мне, пожалуйста!
Я не могу решить эту ошибку.
ОШИБКА: не удалось найти версию, удовлетворяющую требованию b1 (из -r Requi
rements.txt (строка 59)) (из версий: нет)
ОШИБКА: для b1 не найдено подходящего распределения (из -r requirements.txt (строка 59)
)

Была ли эта страница полезной?
0 / 5 - 0 рейтинги