-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unexpected Error Resolving Satisfiable Dependencies with Pipenv 11 #1693
Comments
I was able to recreate this issue with `pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1", using:
I believe the source of the dependency conflict is in When Here is a table of the expected constraints for
The following patch, which sets the default value of
I am not yet sure if changing that default value will break any other use cases, or cause a regression on #1667, the issue which is mentioned in the patch that added the |
Thanks for tracking this down. I know there were other issues with the |
This — this is the current issue we have. This is a great issue reproducing it. Thank you. |
Closing other issues for this one. |
wait, |
|
@ehebert that patch is in place to enable us to grab results that won't work on your system, but will end up in the lockfile anyway (with markers). (e.g. manylinux wheels on a mac) |
I can confirm that |
Quite possible. I'll experiment on linux. |
I'm getting this same issue with
I'm using Ubuntu (well, bash on ubuntu on windows) |
reproduced on ubuntu. |
I take that back — cannot reproduce on ubuntu. |
|
@kennethreitz @ssanderson what version? 16.04? |
master, obviously |
@kennethreitz of ubuntu I mean, there have been a number of issues related to ubuntu 16.04 which is the LTS release |
ah yes i'm using 17.10 |
|
I take that back — needed to pass --clear. |
11.6.5 released, which reverts ignore_compatibility. |
Fix pypa#1696 Fix pypa#1687 Reference pypa#1693 Signed-off-by: Gaetan Semet <[email protected]>
Actually, perhaps I spoke too soon. |
Yes, |
Apologies, I might not be following correctly. I am not seeing the change to make pipenv/pipenv/patched/notpip/index.py Line 491 in f33e557
|
ah, wrong spot! thank you. |
Changing that locally:
|
Pandas-datareader requires >0.19.2. |
these are incompatible dependencies. |
I'm going to confirm by downloading the tarfile for pandas-datareader 0.5.0 from PyPI. |
Fix pypa#1696 Fix pypa#1687 Reference pypa#1693 Signed-off-by: Gaetan Semet <[email protected]>
according to our resolver: |
(from PyPI sdist) |
So that's strange. |
the wheel also |
Same issue with The dependencies it resolves are from |
My checking of the sdist and wheel match your findings of I believe that the requirements from At one point while stepping through I believe I had found the pipenv dependency cache to contain both a spec of |
this might be an error with our json api usage |
I think there is something non-deterministic with the dependency resolution. With that local edit of |
hmmmm |
run --verbose and inspect the results (appreciate your assistance) |
No prob at all. (Thanks again for the project!) From the beginning of a failed run:
From the beginning of a successful run: (EDIT: This line was originally a typo of "end of failed run", I had made opposite the wrong word in the sentence.)
The failed run has two entries Attached are the full output of the invocations of |
Fail:
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
Good:
pandas-datareader==0.5.0 requires pandas>=0.17.0, requests-file, requests-ftp, requests>=2.3.0
Discrepancy.
…--
Kenneth Reitz
On Mar 14, 2018, at 8:45 AM, Eddie Hebert ***@***.***> wrote:
No prob at all. (Thanks again for the project!)
From the beginning of a failed run:
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
From the end of a failed run:
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
The failed run has two entries pandas for pandas-datareader.
Attached are the full output of the invocations of pipenv-resolver pandas-datareader==0.5.0 pandas==0.18.1 --clear --verbose, which both used the patch in #1693 (comment) <#1693 (comment)>. Nothing, that I am aware of, was altered between the two invocations.
resolve-fail-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>
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub <#1693 (comment)>, or mute the thread <https://github.com/notifications/unsubscribe-auth/AAHUVaa45WKIDWv5S27H31dzF_bhQuTWks5teREDgaJpZM4SoA0v>.
|
With pipenv version |
Still does not work on
(wordfreq==1.4.1 should demand ftfy >=4 not 5) |
@glowskir we are on 11.8.1 and this problem is resolved, I can't reproduce your error. |
@glowskir I had a similar issue, Wish I could be more helpful but I didn't get to the bottom of why it failed the first time- I'd suggest just being 100% sure the cache has been cleared. |
Fix pypa#1696 Fix pypa#1687 Reference pypa#1693 Signed-off-by: Gaetan Semet <[email protected]>
help me please! |
Hi All!
When running
pipenv lock
on a Pipfile containingpandas==0.18.1
andpandas-datareader==0.5.0
,pipenv
errors out claiming that it can't find a pandas version satisfyingpandas==0.18.1,>=0.19.2
, but pandas-datareader doesn't requirepandas>=0.19.2
until0.6.0
. In particular,pandas-datareader==0.5.0
has the following requirements: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):
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:
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'):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
The text was updated successfully, but these errors were encountered: