docker-compose not working after update: docker dependency version is not compatible

Hi everyone!
After my last “zypper dist-upgrade”, docker-compose is working no more.
He requires docker version > 3.6.0 but the latest python3-docker version is 3.5.1.

This is the complete output:

> docker-compose up
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 581, in _build_master
    ws.require(__requires__)
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 898, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 789, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (docker 3.5.1 (/usr/lib/python3.6/site-packages), Requirement.parse('docker<4.0,>=3.6.0'), {'docker-compose'})


During handling of the above exception, another exception occurred:


Traceback (most recent call last):
  File "/usr/bin/docker-compose", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 3126, in <module>
    @_call_aside
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 3110, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 3139, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 583, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 596, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 784, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'docker<4.0,>=3.6.0' distribution was not found and is required by docker-compose

Here the list of installed docker packages, you can see that python3-docker version is 3.5.1 and python3-docker-compose version is 1.23.2.


> zypper search -s -i docker
Caricamento dati del repository in corso...
Lettura dei pacchetti installati in corso...

S  | Nome                   | Tipo      | Versione                           | Arch.  | Repository              
---+------------------------+-----------+------------------------------------+--------+------------------------
i+ | docker                 | pacchetto | 18.09.0_ce-2.1                     | x86_64 | openSUSE:Tumbleweed     
i+ | docker                 | pacchetto | 18.09.0_ce-2.1                     | x86_64 | openSUSE-Tumbleweed-Oss
i+ | docker-bash-completion | pacchetto | 18.09.0_ce-2.1                     | noarch | openSUSE:Tumbleweed     
i+ | docker-bash-completion | pacchetto | 18.09.0_ce-2.1                     | noarch | openSUSE-Tumbleweed-Oss
i+ | docker-libnetwork      | pacchetto | 0.7.0.1+gitr2704_6da50d197830-2.1  | x86_64 | openSUSE:Tumbleweed     
i+ | docker-libnetwork      | pacchetto | 0.7.0.1+gitr2704_6da50d197830-2.1  | x86_64 | openSUSE-Tumbleweed-Oss
i+ | docker-runc            | pacchetto | 1.0.0rc5+gitr3562_69663f0bd4b6-3.1 | x86_64 | openSUSE:Tumbleweed     
i+ | docker-runc            | pacchetto | 1.0.0rc5+gitr3562_69663f0bd4b6-3.1 | x86_64 | openSUSE-Tumbleweed-Oss
i+ | python3-docker         | pacchetto | 3.5.1-2.1                          | noarch | openSUSE:Tumbleweed     
i+ | python3-docker         | pacchetto | 3.5.1-2.1                          | noarch | openSUSE-Tumbleweed-Oss
i+ | python3-docker-compose | pacchetto | 1.23.2-1.1                         | noarch | openSUSE:Tumbleweed     
i+ | python3-docker-compose | pacchetto | 1.23.2-1.1                         | noarch | openSUSE-Tumbleweed-Oss
i+ | python3-docker-pycreds | pacchetto | 0.3.0-2.1                          | noarch | openSUSE:Tumbleweed     
i+ | python3-docker-pycreds | pacchetto | 0.3.0-2.1                          | noarch | openSUSE-Tumbleweed-Oss
i+ | python3-dockerpty      | pacchetto | 0.4.1-4.1                          | noarch | openSUSE:Tumbleweed     
i+ | python3-dockerpty      | pacchetto | 0.4.1-4.1                          | noarch | openSUSE-Tumbleweed-Oss

Python3 version is 3.6.5.

How this can be solved?
Thank you for any help.

Open bug report on openSUSE. Package composer specifies “Requires: python-docker >= 2.5.1”, so either one or other is incorrect.

The same problem occurs with me, too. Have you already found a workaround?

Cheers
Björn

Report a bug, indeed.

A workaround would be to install tumbleweed-cli and use that to return to a previous tumbleweed snapshot
run


tumbleweed --help

to see all it’s options. Then wait until the bug is fixed.

Thanks for the answer. I could have looked before for a bug report. In any case, there is a bug report and an additional workaround is documented in it.