Skip to content
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

Issue Resolving Dependencies with graphql-core #3846

Closed
themotu opened this issue Jul 15, 2019 · 3 comments
Closed

Issue Resolving Dependencies with graphql-core #3846

themotu opened this issue Jul 15, 2019 · 3 comments
Labels
Category: Dependency Resolution Issue relates to dependency resolution. Status: Awaiting Update ⏳ This issue requires more information before assistance can be provided. Status: Needs More Information This issue does not provide enough information to take further action.

Comments

@themotu
Copy link

themotu commented Jul 15, 2019

Pipenv believes one of my dependencies wants graphql-core<2 but that's incorrect therefore it won't install. --skip-lock does work then unable to generate a lock file.

ERROR: ERROR: Could not find a version that matches graphql-core<2,<3,>=0.5.0,>=2.1,>=2.1.0

Pipfile

[[source]]
name = "pypi"
url = "https://pypi.org/simple"
verify_ssl = true

[dev-packages]

[packages]
graphene-django = ">=2.0"
ipython = "*"
ipdb = "*"
Django = "*"
graphene = "*"
django-graphql-jwt = {git = "https://github.com/themotu/django-graphql-jwt.git", editable = true, ref = "user-by-id"}
psycopg2-binary = "*"
uwsgi = "*"
django-cors-headers = "*"
django-request-logging = "*"
WeasyPrint = "*"

pipenv lock

Locking [dev-packages] dependencies…
Locking [packages] dependencies…
⠙ Pinning VCS Packages...Branch 'user-by-id' set up to track remote branch 'user-by-id' from 'origin'.
Switched to a new branch 'user-by-id'
✘ Locking Failed! 
Switched to a new branch 'user-by-id'
Branch 'user-by-id' set up to track remote branch 'user-by-id' from 'origin'.
[pipenv.exceptions.ResolutionFailure]:       req_dir=requirements_dir
[pipenv.exceptions.ResolutionFailure]:   File "/usr/local/lib/python3.6/dist-packages/pipenv/utils.py", line 726, in resolve_deps
[pipenv.exceptions.ResolutionFailure]:       req_dir=req_dir,
[pipenv.exceptions.ResolutionFailure]:   File "/usr/local/lib/python3.6/dist-packages/pipenv/utils.py", line 480, in actually_resolve_deps
[pipenv.exceptions.ResolutionFailure]:       resolved_tree = resolver.resolve()
[pipenv.exceptions.ResolutionFailure]:   File "/usr/local/lib/python3.6/dist-packages/pipenv/utils.py", line 395, in resolve
[pipenv.exceptions.ResolutionFailure]:       raise ResolutionFailure(message=str(e))
[pipenv.exceptions.ResolutionFailure]:       pipenv.exceptions.ResolutionFailure: ERROR: ERROR: Could not find a version that matches graphql-core<2,<3,>=0.5.0,>=2.1,>=2.1.0
[pipenv.exceptions.ResolutionFailure]:       Tried: 0.4.9, 0.4.11, 0.4.12, 0.4.12.1, 0.4.13, 0.4.14, 0.4.15, 0.4.16, 0.4.17, 0.4.18, 0.5, 0.5.1, 0.5.2, 0.5.3, 1.0, 1.0.1, 1.1, 2.0, 2.0, 2.1, 2.1, 2.2, 2.2
[pipenv.exceptions.ResolutionFailure]:       Skipped pre-versions: 0.1a0, 0.1a1, 0.1a2, 0.1a3, 0.1a4, 0.4.7b0, 0.4.7b1, 0.4.7b2, 0.5b1, 0.5b2, 0.5b3, 1.0.dev20160814231515, 1.0.dev20160822075425, 1.0.dev20160823054952, 1.0.dev20160909030348, 1.0.dev20160909040033, 1.0.dev20160920065529, 1.2.dev20170724044604, 2.0.dev20170801041408, 2.0.dev20170801041408, 2.0.dev20170801051721, 2.0.dev20170801051721, 2.0.dev20171009101843, 2.0.dev20171009101843, 2.1rc0, 2.1rc0, 2.1rc1, 2.1rc1, 2.1rc2, 2.1rc2, 2.1rc3, 2.1rc3, 3.0.0a0, 3.0.0a0
[pipenv.exceptions.ResolutionFailure]: Warning: Your dependencies could not be resolved. You likely have a mismatch in your sub-dependencies.
  First try clearing your dependency cache with $ pipenv lock --clear, then try the original command again.
 Alternatively, you can use $ pipenv install --skip-lock to bypass this mechanism, then run $ pipenv graph to inspect the situation.
  Hint: try $ pipenv lock --pre if it is a pre-release dependency.
ERROR: ERROR: Could not find a version that matches graphql-core<2,<3,>=0.5.0,>=2.1,>=2.1.0
Tried: 0.4.9, 0.4.11, 0.4.12, 0.4.12.1, 0.4.13, 0.4.14, 0.4.15, 0.4.16, 0.4.17, 0.4.18, 0.5, 0.5.1, 0.5.2, 0.5.3, 1.0, 1.0.1, 1.1, 2.0, 2.0, 2.1, 2.1, 2.2, 2.2
Skipped pre-versions: 0.1a0, 0.1a1, 0.1a2, 0.1a3, 0.1a4, 0.4.7b0, 0.4.7b1, 0.4.7b2, 0.5b1, 0.5b2, 0.5b3, 1.0.dev20160814231515, 1.0.dev20160822075425, 1.0.dev20160823054952, 1.0.dev20160909030348, 1.0.dev20160909040033, 1.0.dev20160920065529, 1.2.dev20170724044604, 2.0.dev20170801041408, 2.0.dev20170801041408, 2.0.dev20170801051721, 2.0.dev20170801051721, 2.0.dev20171009101843, 2.0.dev20171009101843, 2.1rc0, 2.1rc0, 2.1rc1, 2.1rc1, 2.1rc2, 2.1rc2, 2.1rc3, 2.1rc3, 3.0.0a0, 3.0.0a0
There are incompatible versions in the resolved dependencies.
Branch 'user-by-id' set up to track remote branch 'user-by-id' from 'origin'.
[pipenv.exceptions.ResolutionFailure]:       req_dir=requirements_dir
[pipenv.exceptions.ResolutionFailure]:   File "/usr/local/lib/python3.6/dist-packages/pipenv/utils.py", line 726, in resolve_deps
[pipenv.exceptions.ResolutionFailure]:       req_dir=req_dir,
[pipenv.exceptions.ResolutionFailure]:   File "/usr/local/lib/python3.6/dist-packages/pipenv/utils.py", line 480, in actually_resolve_deps
[pipenv.exceptions.ResolutionFailure]:       resolved_tree = resolver.resolve()
[pipenv.exceptions.ResolutionFailure]:   File "/usr/local/lib/python3.6/dist-packages/pipenv/utils.py", line 395, in resolve
[pipenv.exceptions.ResolutionFailure]:       raise ResolutionFailure(message=str(e))
[pipenv.exceptions.ResolutionFailure]:       pipenv.exceptions.ResolutionFailure: ERROR: ERROR: Could not find a version that matches graphql-core<2,<3,>=0.5.0,>=2.1,>=2.1.0
[pipenv.exceptions.ResolutionFailure]:       Tried: 0.4.9, 0.4.11, 0.4.12, 0.4.12.1, 0.4.13, 0.4.14, 0.4.15, 0.4.16, 0.4.17, 0.4.18, 0.5, 0.5.1, 0.5.2, 0.5.3, 1.0, 1.0.1, 1.1, 2.0, 2.0, 2.1, 2.1, 2.2, 2.2
[pipenv.exceptions.ResolutionFailure]:       Skipped pre-versions: 0.1a0, 0.1a1, 0.1a2, 0.1a3, 0.1a4, 0.4.7b0, 0.4.7b1, 0.4.7b2, 0.5b1, 0.5b2, 0.5b3, 1.0.dev20160814231515, 1.0.dev20160822075425, 1.0.dev20160823054952, 1.0.dev20160909030348, 1.0.dev20160909040033, 1.0.dev20160920065529, 1.2.dev20170724044604, 2.0.dev20170801041408, 2.0.dev20170801041408, 2.0.dev20170801051721, 2.0.dev20170801051721, 2.0.dev20171009101843, 2.0.dev20171009101843, 2.1rc0, 2.1rc0, 2.1rc1, 2.1rc1, 2.1rc2, 2.1rc2, 2.1rc3, 2.1rc3, 3.0.0a0, 3.0.0a0
[pipenv.exceptions.ResolutionFailure]: Warning: Your dependencies could not be resolved. You likely have a mismatch in your sub-dependencies.
  First try clearing your dependency cache with $ pipenv lock --clear, then try the original command again.
 Alternatively, you can use $ pipenv install --skip-lock to bypass this mechanism, then run $ pipenv graph to inspect the situation.
  Hint: try $ pipenv lock --pre if it is a pre-release dependency.
ERROR: ERROR: Could not find a version that matches graphql-core<2,<3,>=0.5.0,>=2.1,>=2.1.0
Tried: 0.4.9, 0.4.11, 0.4.12, 0.4.12.1, 0.4.13, 0.4.14, 0.4.15, 0.4.16, 0.4.17, 0.4.18, 0.5, 0.5.1, 0.5.2, 0.5.3, 1.0, 1.0.1, 1.1, 2.0, 2.0, 2.1, 2.1, 2.2, 2.2
Skipped pre-versions: 0.1a0, 0.1a1, 0.1a2, 0.1a3, 0.1a4, 0.4.7b0, 0.4.7b1, 0.4.7b2, 0.5b1, 0.5b2, 0.5b3, 1.0.dev20160814231515, 1.0.dev20160822075425, 1.0.dev20160823054952, 1.0.dev20160909030348, 1.0.dev20160909040033, 1.0.dev20160920065529, 1.2.dev20170724044604, 2.0.dev20170801041408, 2.0.dev20170801041408, 2.0.dev20170801051721, 2.0.dev20170801051721, 2.0.dev20171009101843, 2.0.dev20171009101843, 2.1rc0, 2.1rc0, 2.1rc1, 2.1rc1, 2.1rc2, 2.1rc2, 2.1rc3, 2.1rc3, 3.0.0a0, 3.0.0a0
There are incompatible versions in the resolved dependencies.

skip lock will yield this pipenv graph

django-cors-headers==3.0.2
  - Django [required: >=1.11, installed: 2.2.3]
    - pytz [required: Any, installed: 2019.1]
    - sqlparse [required: Any, installed: 0.3.0]
django-graphql-jwt==0.2.1
  - Django [required: >=1.11, installed: 2.2.3]
    - pytz [required: Any, installed: 2019.1]
    - sqlparse [required: Any, installed: 0.3.0]
  - graphene-django [required: >=2.0.0, installed: 2.4.0]
    - Django [required: >=1.11, installed: 2.2.3]
      - pytz [required: Any, installed: 2019.1]
      - sqlparse [required: Any, installed: 0.3.0]
    - graphene [required: >=2.1.3,<3, installed: 2.1.6]
      - aniso8601 [required: >=3,<=6, installed: 6.0.0]
      - graphql-core [required: >=2.1,<3, installed: 2.2]
        - promise [required: >=2.1, installed: 2.2.1]
          - six [required: Any, installed: 1.12.0]
        - rx [required: >=1.6.0, installed: 1.6.1]
        - six [required: >=1.10.0, installed: 1.12.0]
      - graphql-relay [required: >=0.4.5,<1, installed: 0.4.5]
        - graphql-core [required: >=0.5.0, installed: 2.2]
          - promise [required: >=2.1, installed: 2.2.1]
            - six [required: Any, installed: 1.12.0]
          - rx [required: >=1.6.0, installed: 1.6.1]
          - six [required: >=1.10.0, installed: 1.12.0]
        - promise [required: >=0.4.0, installed: 2.2.1]
          - six [required: Any, installed: 1.12.0]
        - six [required: >=1.10.0, installed: 1.12.0]
      - six [required: >=1.10.0,<2, installed: 1.12.0]
    - graphql-core [required: >=2.1.0,<3, installed: 2.2]
      - promise [required: >=2.1, installed: 2.2.1]
        - six [required: Any, installed: 1.12.0]
      - rx [required: >=1.6.0, installed: 1.6.1]
      - six [required: >=1.10.0, installed: 1.12.0]
    - promise [required: >=2.1, installed: 2.2.1]
      - six [required: Any, installed: 1.12.0]
    - singledispatch [required: >=3.4.0.3, installed: 3.4.0.3]
      - six [required: Any, installed: 1.12.0]
    - six [required: >=1.10.0, installed: 1.12.0]
  - graphql-core [required: >=2.1, installed: 2.2]
    - promise [required: >=2.1, installed: 2.2.1]
      - six [required: Any, installed: 1.12.0]
    - rx [required: >=1.6.0, installed: 1.6.1]
    - six [required: >=1.10.0, installed: 1.12.0]
  - PyJWT [required: >=1.5.0, installed: 1.7.1]
django-request-logging==0.7.0
  - Django [required: Any, installed: 2.2.3]
    - pytz [required: Any, installed: 2019.1]
    - sqlparse [required: Any, installed: 0.3.0]
ipdb==0.12
  - ipython [required: >=5.1.0, installed: 7.6.1]
    - backcall [required: Any, installed: 0.1.0]
    - decorator [required: Any, installed: 4.4.0]
    - jedi [required: >=0.10, installed: 0.14.0]
      - parso [required: >=0.3.0, installed: 0.5.0]
    - pexpect [required: Any, installed: 4.7.0]
      - ptyprocess [required: >=0.5, installed: 0.6.0]
    - pickleshare [required: Any, installed: 0.7.5]
    - prompt-toolkit [required: >=2.0.0,<2.1.0, installed: 2.0.9]
      - six [required: >=1.9.0, installed: 1.12.0]
      - wcwidth [required: Any, installed: 0.1.7]
    - pygments [required: Any, installed: 2.4.2]
    - setuptools [required: >=18.5, installed: 41.0.1]
    - traitlets [required: >=4.2, installed: 4.3.2]
      - decorator [required: Any, installed: 4.4.0]
      - ipython-genutils [required: Any, installed: 0.2.0]
      - six [required: Any, installed: 1.12.0]
  - setuptools [required: Any, installed: 41.0.1]
psycopg2-binary==2.8.3
uWSGI==2.0.18
WeasyPrint==48
  - cairocffi [required: >=0.9.0, installed: 1.0.2]
    - cffi [required: >=1.1.0, installed: 1.12.3]
      - pycparser [required: Any, installed: 2.19]
    - setuptools [required: >=39.2.0, installed: 41.0.1]
  - CairoSVG [required: >=2.4.0, installed: 2.4.0]
    - cairocffi [required: Any, installed: 1.0.2]
      - cffi [required: >=1.1.0, installed: 1.12.3]
        - pycparser [required: Any, installed: 2.19]
      - setuptools [required: >=39.2.0, installed: 41.0.1]
    - cssselect2 [required: Any, installed: 0.2.1]
      - tinycss2 [required: Any, installed: 1.0.2]
        - setuptools [required: >=39.2.0, installed: 41.0.1]
        - webencodings [required: >=0.4, installed: 0.5.1]
    - defusedxml [required: Any, installed: 0.6.0]
    - pillow [required: Any, installed: 6.1.0]
    - tinycss2 [required: Any, installed: 1.0.2]
      - setuptools [required: >=39.2.0, installed: 41.0.1]
      - webencodings [required: >=0.4, installed: 0.5.1]
  - cffi [required: >=0.6, installed: 1.12.3]
    - pycparser [required: Any, installed: 2.19]
  - cssselect2 [required: >=0.1, installed: 0.2.1]
    - tinycss2 [required: Any, installed: 1.0.2]
      - setuptools [required: >=39.2.0, installed: 41.0.1]
      - webencodings [required: >=0.4, installed: 0.5.1]
  - html5lib [required: >=0.999999999, installed: 1.0.1]
    - six [required: >=1.9, installed: 1.12.0]
    - webencodings [required: Any, installed: 0.5.1]
  - Pyphen [required: >=0.8, installed: 0.9.5]
  - setuptools [required: >=39.2.0, installed: 41.0.1]
  - tinycss2 [required: >=1.0.0, installed: 1.0.2]
    - setuptools [required: >=39.2.0, installed: 41.0.1]
    - webencodings [required: >=0.4, installed: 0.5.1]

pip freeze

aniso8601==6.0.0
backcall==0.1.0
cairocffi==1.0.2
CairoSVG==2.4.0
cffi==1.12.3
cssselect2==0.2.1
decorator==4.4.0
defusedxml==0.6.0
Django==2.2.3
django-cors-headers==3.0.2
-e git+https://github.com/themotu/django-graphql-jwt.git@b0d410237593226ca3d94b09ddbbb4e52751e42e#egg=django_graphql_jwt
django-request-logging==0.7.0
graphene==2.1.6
graphene-django==2.4.0
graphql-core==2.2
graphql-relay==0.4.5
html5lib==1.0.1
ipdb==0.12
ipython==7.6.1
ipython-genutils==0.2.0
jedi==0.14.0
parso==0.5.0
pexpect==4.7.0
pickleshare==0.7.5
Pillow==6.1.0
pkg-resources==0.0.0
promise==2.2.1
prompt-toolkit==2.0.9
psycopg2-binary==2.8.3
ptyprocess==0.6.0
pycparser==2.19
Pygments==2.4.2
PyJWT==1.7.1
Pyphen==0.9.5
pytz==2019.1
Rx==1.6.1
singledispatch==3.4.0.3
six==1.12.0
sqlparse==0.3.0
tinycss2==1.0.2
traitlets==4.3.2
uWSGI==2.0.18
wcwidth==0.1.7
WeasyPrint==48
webencodings==0.5.1
$ pipenv --support

Pipenv version: '2018.11.26'

Pipenv location: '/usr/local/lib/python3.6/dist-packages/pipenv'

Python location: '/usr/bin/python3'

Python installations found:

  • 3.6.8: /home/user/.local/share/virtualenvs/django-65omsLpQ/bin/python3.6
  • 3.6.8: /usr/bin/python3.6
  • 3.6.8: /usr/bin/python3.6m
  • 2.7.15: /usr/bin/python2.7

PEP 508 Information:

{'implementation_name': 'cpython',
 'implementation_version': '3.6.8',
 'os_name': 'posix',
 'platform_machine': 'x86_64',
 'platform_python_implementation': 'CPython',
 'platform_release': '4.17.6-041706-generic',
 'platform_system': 'Linux',
 'platform_version': '#201807111639 SMP Wed Jul 11 16:41:51 UTC 2018',
 'python_full_version': '3.6.8',
 'python_version': '3.6',
 'sys_platform': 'linux'}

System environment variables:

  • XDG_SEAT_PATH
  • XDG_CONFIG_DIRS
  • LC_TELEPHONE
  • LANG
  • DISPLAY
  • SHLVL
  • LOGNAME
  • LANGUAGE
  • MANDATORY_PATH
  • COMPIZ_CONFIG_PROFILE
  • XDG_VTNR
  • LC_NAME
  • SESSION_MANAGER
  • XAUTHORITY
  • LC_ADDRESS
  • QT_QPA_PLATFORMTHEME
  • XDG_GREETER_DATA_DIR
  • COLORTERM
  • XDG_SESSION_ID
  • PWD
  • DESKTOP_SESSION
  • DEFAULTS_PATH
  • XDG_SESSION_DESKTOP
  • GDMSESSION
  • LC_IDENTIFICATION
  • PAPERSIZE
  • LC_MEASUREMENT
  • LC_NUMERIC
  • LC_MONETARY
  • LC_PAPER
  • DBUS_SESSION_BUS_ADDRESS
  • QT_SCALE_FACTOR
  • UBUNTU_MENUPROXY
  • GTK_OVERLAY_SCROLLING
  • XDG_DATA_DIRS
  • MATE_DESKTOP_SESSION_ID
  • VTE_VERSION
  • QT_ACCESSIBILITY
  • GDM_LANG
  • MOZ_USE_XINPUT2
  • XDG_SESSION_TYPE
  • LC_TIME
  • WINDOWID
  • SSH_AGENT_PID
  • GTK_MODULES
  • XDG_CURRENT_DESKTOP
  • SSH_AUTH_SOCK
  • PATH
  • SHELL
  • QT_AUTO_SCREEN_SCALE_FACTOR
  • HOME
  • XDG_SEAT
  • XDG_RUNTIME_DIR
  • XDG_SESSION_PATH
  • GPG_AGENT_INFO
  • USER
  • INSIDE_CAJA_PYTHON
  • TERM
  • OLDPWD
  • ZSH
  • ANDROID_HOME
  • PAGER
  • LESS
  • LC_CTYPE
  • LSCOLORS
  • LS_COLORS
  • VDPAU_DRIVER
  • _
  • PIP_DISABLE_PIP_VERSION_CHECK
  • PYTHONDONTWRITEBYTECODE
  • PIP_PYTHON_PATH
  • PIPENV_ACTIVE
  • VIRTUAL_ENV
  • PS1
  • PIP_SHIMS_BASE_MODULE
  • PYTHONFINDER_IGNORE_UNSUPPORTED

Pipenv–specific environment variables:

  • PIPENV_ACTIVE: 1

Debug–specific environment variables:

  • PATH: /home/user/.local/share/virtualenvs/django-65omsLpQ/bin:/home/user/bin/go/bin:/home/user/go/bin:/home/user/bin:/home/user/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
  • SHELL: /usr/bin/zsh
  • LANG: en_US.UTF-8
  • PWD: /home/user/work/
  • VIRTUAL_ENV: /home/user/.local/share/virtualenvs/django-65omsLpQ

Contents of Pipfile ('/home/user/work/Pipfile'):

[[source]]
name = "pypi"
url = "https://pypi.org/simple"
verify_ssl = true

[dev-packages]

[packages]
graphene-django = ">=2.0"
ipython = "*"
ipdb = "*"
Django = "*"
graphene = "*"
django-graphql-jwt = {git = "https://github.com/themotu/django-graphql-jwt.git", editable = true, ref = "user-by-id"}
psycopg2-binary = "*"
uwsgi = "*"
django-cors-headers = "*"
django-request-logging = "*"
WeasyPrint = "*"

#2663 related

@frostming
Copy link
Contributor

frostming commented Jul 15, 2019

You can run pipenv lock --clear -v to find out which package claims for that constraint.

@frostming frostming added Category: Dependency Resolution Issue relates to dependency resolution. Status: Awaiting Update ⏳ This issue requires more information before assistance can be provided. Status: Needs More Information This issue does not provide enough information to take further action. and removed triage labels Jul 15, 2019
@frostming
Copy link
Contributor

No new updates, close this now, feel free to reopen when you get more information about the bug.

@wcass77
Copy link

wcass77 commented Oct 7, 2019

If anyone is wondering, I had a similar issue with graphql-core when installing Dagster. I followed the advice of running pipenv lock --clear -v. I was able to resolve the conflict manually. In my case, with allow pre-release set to true (which I needed), it was pulling in graphene 3 alpha, which requires graphql-core >=3. Dagster requires graphql core <3. Setting graphene <3 as an explicit constraint fixed it for me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Category: Dependency Resolution Issue relates to dependency resolution. Status: Awaiting Update ⏳ This issue requires more information before assistance can be provided. Status: Needs More Information This issue does not provide enough information to take further action.
Projects
None yet
Development

No branches or pull requests

3 participants