Repository navigation
Resolver/lock fail #2879
Copy link
Copy link
Closed
Description
Issue description
pipenv install --two celery==3.1.25 flower==0.9.2
Locking fails looking for a suitable amqp library:
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.
Hint: try $ pipenv lock --pre if it is a pre-release dependency.
Could not find a version that matches amqp<2.0,<3.0,>=1.4.9,>=2.1.4
Tried: 0.9.1, 0.9.2, 0.9.3, 0.9.4, 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 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.2.0, 1.2.1, 1.3.0, 1.3.1, 1.3.2, 1.3.3, 1.4.0, 1.4.1, 1.4.2, 1.4.3, 1.4.3, 1.4.4, 1.4.4, 1.4.5, 1.4.5, 1.4.6, 1.4.6, 1.4.7, 1.4.8, 1.4.8, 1.4.9, 1.4.9, 2.0.0, 2.0.0, 2.0.1, 2.0.2, 2.0.2, 2.0.3, 2.0.3, 2.1.0, 2.1.0, 2.1.1, 2.1.1, 2.1.2, 2.1.2, 2.1.3, 2.1.3, 2.1.4, 2.1.4, 2.2.0, 2.2.0, 2.2.1, 2.2.1, 2.2.2, 2.2.2, 2.3.0, 2.3.0, 2.3.1, 2.3.1, 2.3.2, 2.3.2
There are incompatible versions in the resolved dependencies.
Expected result
amqp==1.4.9
anyjson==0.3.3
Babel==2.6.0
backports-abc==0.5
billiard==3.3.0.23
celery==3.1.25
flower==0.9.2
futures==3.2.0
kombu==3.0.37
pytz==2018.5
singledispatch==3.4.0.3
six==1.11.0
tornado==5.1.1
flower depends on celery>=3.1.0. celery==3.1.25 should satisfy that, but it ends up pulling requirements from a more recent version of celery which wants amqp<3.0,>=2.1.4 by way of kombu<5.0,>=4.2.0.
Actual result
$ pipenv lock --clear --verbose
Locking [dev-packages] dependencies...
Locking [packages] dependencies...
using sources: [{u'url': u'https://pypi.org/simple', u'verify_ssl': True, u'name': u'pypi'}]
Using pip: -i https://pypi.org/simple
ROUND 1
Current constraints:
celery==3.1.25 (from -r /tmp/pipenv-RRj9zz-requirements/pipenv-pSJQfk-constraints.txt (line 2))
flower==0.9.2 (from -r /tmp/pipenv-RRj9zz-requirements/pipenv-pSJQfk-constraints.txt (line 3))
Finding the best candidates:
found candidate celery==3.1.25 (constraint was ==3.1.25)
found candidate flower==0.9.2 (constraint was ==0.9.2)
Finding secondary dependencies:
flower==0.9.2 not in cache, need to check index
flower==0.9.2 requires amqp<3.0,>=2.1.4, babel>=1.0, billiard<3.6.0,>=3.5.0.2, celery>=3.1.0, flower==0.9.2, futures, kombu<5.0,>=4.2.0, pytz, tornado>=4.2.0, vine>=1.1.3
celery==3.1.25 not in cache, need to check index
celery==3.1.25 requires amqp<2.0,>=1.4.9, anyjson>=0.3.3, billiard<3.4,>=3.3.0.23, celery==3.1.25, kombu<3.1,>=3.0.37, pytz>dev
New dependencies found in this round:
adding [u'amqp', '<2.0,<3.0,>=1.4.9,>=2.1.4', '[]']
adding [u'anyjson', '>=0.3.3', '[]']
adding [u'babel', '>=1.0', '[]']
adding [u'billiard', '<3.4,<3.6.0,>=3.3.0.23,>=3.5.0.2', '[]']
adding [u'celery', '==3.1.25,>=3.1.0', '[]']
adding [u'flower', '==0.9.2', '[]']
adding [u'futures', '', '[]']
adding [u'kombu', '<3.1,<5.0,>=3.0.37,>=4.2.0', '[]']
adding [u'pytz', '>dev', '[]']
adding [u'tornado', '>=4.2.0', '[]']
adding [u'vine', '>=1.1.3', '[]']
Removed dependencies in this round:
Unsafe dependencies in this round:
------------------------------------------------------------
Result of round 1: not stable
ROUND 2
Current constraints:
amqp<2.0,<3.0,>=1.4.9,>=2.1.4
anyjson>=0.3.3
babel>=1.0
billiard<3.4,<3.6.0,>=3.3.0.23,>=3.5.0.2
celery==3.1.25,>=3.1.0 (from -r /tmp/pipenv-RRj9zz-requirements/pipenv-pSJQfk-constraints.txt (line 2))
flower==0.9.2 (from -r /tmp/pipenv-RRj9zz-requirements/pipenv-pSJQfk-constraints.txt (line 3))
futures
kombu<3.1,<5.0,>=3.0.37,>=4.2.0
pytz>dev
tornado>=4.2.0
vine>=1.1.3
Finding the best candidates:
Using pip: -i https://pypi.org/simple
ROUND 1
Current constraints:
celery==3.1.25 (from -r /tmp/pipenv-RRj9zz-requirements/pipenv-oPIyzF-constraints.txt (line 2))
flower==0.9.2 (from -r /tmp/pipenv-RRj9zz-requirements/pipenv-oPIyzF-constraints.txt (line 3))
Finding the best candidates:
found candidate celery==3.1.25 (constraint was ==3.1.25)
found candidate flower==0.9.2 (constraint was ==0.9.2)
Finding secondary dependencies:
flower==0.9.2 not in cache, need to check index
flower==0.9.2 requires amqp<3.0,>=2.1.4, babel>=1.0, billiard<3.6.0,>=3.5.0.2, celery>=3.1.0, flower==0.9.2, futures, kombu<5.0,>=4.2.0, pytz, tornado>=4.2.0, vine>=1.1.3
celery==3.1.25 not in cache, need to check index
celery==3.1.25 requires amqp<2.0,>=1.4.9, anyjson>=0.3.3, billiard<3.4,>=3.3.0.23, celery==3.1.25, kombu<3.1,>=3.0.37, pytz>dev
New dependencies found in this round:
adding [u'amqp', '<2.0,<3.0,>=1.4.9,>=2.1.4', '[]']
adding [u'anyjson', '>=0.3.3', '[]']
adding [u'babel', '>=1.0', '[]']
adding [u'billiard', '<3.4,<3.6.0,>=3.3.0.23,>=3.5.0.2', '[]']
adding [u'celery', '==3.1.25,>=3.1.0', '[]']
adding [u'flower', '==0.9.2', '[]']
adding [u'futures', '', '[]']
adding [u'kombu', '<3.1,<5.0,>=3.0.37,>=4.2.0', '[]']
adding [u'pytz', '>dev', '[]']
adding [u'tornado', '>=4.2.0', '[]']
adding [u'vine', '>=1.1.3', '[]']
Removed dependencies in this round:
Unsafe dependencies in this round:
------------------------------------------------------------
Result of round 1: not stable
ROUND 2
Current constraints:
amqp<2.0,<3.0,>=1.4.9,>=2.1.4
anyjson>=0.3.3
babel>=1.0
billiard<3.4,<3.6.0,>=3.3.0.23,>=3.5.0.2
celery==3.1.25,>=3.1.0 (from -r /tmp/pipenv-RRj9zz-requirements/pipenv-oPIyzF-constraints.txt (line 2))
flower==0.9.2 (from -r /tmp/pipenv-RRj9zz-requirements/pipenv-oPIyzF-constraints.txt (line 3))
futures
kombu<3.1,<5.0,>=3.0.37,>=4.2.0
pytz>dev
tornado>=4.2.0
vine>=1.1.3
Finding the best candidates:
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.
Hint: try $ pipenv lock --pre if it is a pre-release dependency.
Could not find a version that matches amqp<2.0,<3.0,>=1.4.9,>=2.1.4
Tried: 0.9.1, 0.9.2, 0.9.3, 0.9.4, 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 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.2.0, 1.2.1, 1.3.0, 1.3.1, 1.3.2, 1.3.3, 1.4.0, 1.4.1, 1.4.2, 1.4.3, 1.4.3, 1.4.4, 1.4.4, 1.4.5, 1.4.5, 1.4.6, 1.4.6, 1.4.7, 1.4.8, 1.4.8, 1.4.9, 1.4.9, 2.0.0, 2.0.0, 2.0.1, 2.0.2, 2.0.2, 2.0.3, 2.0.3, 2.1.0, 2.1.0, 2.1.1, 2.1.1, 2.1.2, 2.1.2, 2.1.3, 2.1.3, 2.1.4, 2.1.4, 2.2.0, 2.2.0, 2.2.1, 2.2.1, 2.2.2, 2.2.2, 2.3.0, 2.3.0, 2.3.1, 2.3.1, 2.3.2, 2.3.2
There are incompatible versions in the resolved dependencies.
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.
Hint: try $ pipenv lock --pre if it is a pre-release dependency.
Could not find a version that matches amqp<2.0,<3.0,>=1.4.9,>=2.1.4
Tried: 0.9.1, 0.9.2, 0.9.3, 0.9.4, 1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 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.2.0, 1.2.1, 1.3.0, 1.3.1, 1.3.2, 1.3.3, 1.4.0, 1.4.1, 1.4.2, 1.4.3, 1.4.3, 1.4.4, 1.4.4, 1.4.5, 1.4.5, 1.4.6, 1.4.6, 1.4.7, 1.4.8, 1.4.8, 1.4.9, 1.4.9, 2.0.0, 2.0.0, 2.0.1, 2.0.2, 2.0.2, 2.0.3, 2.0.3, 2.1.0, 2.1.0, 2.1.1, 2.1.1, 2.1.2, 2.1.2, 2.1.3, 2.1.3, 2.1.4, 2.1.4, 2.2.0, 2.2.0, 2.2.1, 2.2.1, 2.2.2, 2.2.2, 2.3.0, 2.3.0, 2.3.1, 2.3.1, 2.3.2, 2.3.2
There are incompatible versions in the resolved dependencies.
Steps to replicate
pipenv install --two celery==3.1.25 flower==0.9.2
$ pipenv --support
Pipenv version: '2018.7.1'
Pipenv location: '/usr/local/lib/python2.7/dist-packages/pipenv'
Python location: '/usr/bin/python'
Other Python installations in PATH:
-
2.7:/usr/bin/python2.7 -
2.7:/usr/bin/python2.7 -
3.5:/usr/bin/python3.5m -
3.5:/usr/bin/python3.5 -
2.7.12:/usr/bin/python -
2.7.12:/usr/bin/python2 -
3.5.2:/usr/bin/python3
PEP 508 Information:
{'implementation_name': 'cpython',
'implementation_version': '0',
'os_name': 'posix',
'platform_machine': 'x86_64',
'platform_python_implementation': 'CPython',
'platform_release': '4.4.0-1049-aws',
'platform_system': 'Linux',
'platform_version': '#58-Ubuntu SMP Fri Jan 12 23:17:09 UTC 2018',
'python_full_version': '2.7.12',
'python_version': '2.7',
'sys_platform': 'linux2'}
System environment variables:
PYTHONDONTWRITEBYTECODELESSOPENSSH_CLIENTLOGNAMEUSERPATHHOMELANGTERMSHELLSHLVLXDG_RUNTIME_DIRPIP_PYTHON_PATHXDG_SESSION_ID_SSH_CONNECTIONLESSCLOSESSH_TTYOLDPWDXDG_DATA_DIRSPWDMAILLS_COLORS
Pipenv–specific environment variables:
Debug–specific environment variables:
PATH:/home/ubuntu/bin:/home/ubuntu/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/binSHELL:/bin/bashLANG:en_US.UTF-8PWD:/home/ubuntu/tmp
Contents of Pipfile ('/home/ubuntu/tmp/Pipfile'):
[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"
[dev-packages]
[packages]
celery = "==3.1.25"
flower = "==0.9.2"
[requires]
python_version = "2.7"
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Activity
vphilippon commentedon Sep 21, 2018
@techalchemy The dependency resolve of
flower==0.9.2outputsamqp<3.0,>=2.1.4, but that doesn't seem to be a direct dependency offlower. Is this caused by the issue you mentioned where usingresolver._resolve_one(aka using the update done inpip-tools) would fix it?techalchemy commentedon Sep 21, 2018
Definitely possible, is that fixed in master here? If so, can someone confirm?
ipmb commentedon Sep 24, 2018
Still seeing the issue in 7a696ce
Add news fragments and final patch for all fixes
Add news fragments and final patch for all fixes