FS#65335 - [python-cliff] Python Dependency Conflict with python-cmd2

Attached to Project: Community Packages
Opened by Jonas Kaiser (Landaro) - Friday, 31 January 2020, 10:36 GMT
Last edited by freswa (frederik) - Tuesday, 07 April 2020, 17:31 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Felix Yan (felixonmars)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:

python-openstackclient depends on python-cliff, which in turn depends on python-cmd2. The versions of these packages which are currently being installed do not play nice together:

Any invocation of openstack client fails to properly load any of its connector plugins. Running the comamnds in debug mode reveals the version mismatch:

output in normal mode:
$ openstack help

...
Commands:
Could not load EntryPoint.parse('access_token_create = openstackclient.identity.v3.token:CreateAccessToken')
Could not load EntryPoint.parse('address_scope_create = openstackclient.network.v2.address_scope:CreateAddressScope')
...
[plus several dozen similar failures]


output in debug mode

$ openstack --debug help

...
Commands:
Could not load EntryPoint.parse('access_token_create = openstackclient.identity.v3.token:CreateAccessToken')
Traceback (most recent call last):
File "/usr/lib/python3.8/site-packages/cliff/help.py", line 43, in __call__
factory = ep.load()
File "/usr/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2442, in load
self.require(*args, **kwargs)
File "/usr/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2465, in require
items = working_set.resolve(reqs, env, installer, extras=self.extras)
File "/usr/lib/python3.8/site-packages/pkg_resources/__init__.py", line 791, in resolve
raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (cmd2 0.9.25 (/usr/lib/python3.8/site-packages), Requirement.parse('cmd2!=0.8.3,<0.9.0,>=0.8.0'), {'cliff'})
Could not load EntryPoint.parse('address_scope_create = openstackclient.network.v2.address_scope:CreateAddressScope')
Traceback (most recent call last):
File "/usr/lib/python3.8/site-packages/cliff/help.py", line 43, in __call__
factory = ep.load()
File "/usr/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2442, in load
self.require(*args, **kwargs)
File "/usr/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2465, in require
items = working_set.resolve(reqs, env, installer, extras=self.extras)
File "/usr/lib/python3.8/site-packages/pkg_resources/__init__.py", line 791, in resolve
raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (cmd2 0.9.25 (/usr/lib/python3.8/site-packages), Requirement.parse('cmd2!=0.8.3,<0.9.0,>=0.8.0'), {'cliff'})
...
[plus several dozen similar failures]

Additional info:
* package version(s): python-openstackclient (4.0.0-2), python-cliff (2.18.0-1), python-cmd2 (0.9.25-1)
* config and/or log files etc.
* link to upstream bug report, if any

Steps to reproduce:
* install latest openstack client
* run `openstack --debug help` to see the veresion mismatch

This task depends upon

Closed by  freswa (frederik)
Tuesday, 07 April 2020, 17:31 GMT
Reason for closing:  Fixed
Comment by Chih-Hsuan Yen (yan12125) - Saturday, 01 February 2020, 02:47 GMT
cmd2<0.9.0 is specified due to https://bugs.launchpad.net/python-cliff/+bug/1810213, which is still not fixed yet.
Comment by Felix Yan (felixonmars) - Thursday, 12 March 2020, 00:26 GMT
Please try python-cliff 3.0.0-2.
Comment by Jonas Kaiser (Landaro) - Tuesday, 07 April 2020, 13:42 GMT
Looks like the problematic behaviour is gone. Thank you ... ticket can be closed I think ...

Loading...