Всем привет!
При запуске 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
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
Мне удалось воссоздать эту проблему с помощью `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. Насколько мне известно, ничего не изменилось между двумя вызовами.
Неудача:
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)
)
Самый полезный комментарий
Мне удалось воссоздать эту проблему с помощью `pipenv-resolver pandas-datareader == 0.5.0 pandas == 0.18.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
. (Также необходимо очистить кэш-память перед повторным запуском команды.)Я еще не уверен, что изменение этого значения по умолчанию нарушит любые другие варианты использования или вызовет регрессию на https://github.com/pypa/pipenv/issues/1667 , проблема, которая упоминается в патче, добавившем
ignore_compatibility
флаг.