Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 659344 - app-emulation/docker-compose-1.21.2 requires docker-py-3.3.0
Summary: app-emulation/docker-compose-1.21.2 requires docker-py-3.3.0
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Manuel Rüger (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-06-27 10:38 UTC by hiwatari.seiji
Modified: 2018-07-12 14:51 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Backtrace (backtrace.log,1.77 KB, text/x-log)
2018-06-27 10:38 UTC, hiwatari.seiji
Details

Note You need to log in before you can comment on or make changes to this bug.
Description hiwatari.seiji 2018-06-27 10:38:19 UTC
Currently, the app-emulation/docker-compose-1.21.2 package currently depends on (ebuild) docker-py-3.2.1.

When installing and executing docker-compose with this version, however, the application crashes with the attached backtrace, telling that docker-compose needs at least version 3.3.0 of docker lib.
Comment 1 hiwatari.seiji 2018-06-27 10:38:56 UTC
Created attachment 537380 [details]
Backtrace
Comment 2 Fabiano 2018-06-29 17:29:42 UTC
In summary:

I confirm this, installing dev-python/docker-py-3.3.0 resolves the issue.

But it must be version 3.3. Portage also has dev-python/docker-py-3.4.0 available, but that doesn't work either because v3.4 needs docker-pycreds>=0.3.0 and the highest version we available on portage right now is dev-python/docker-pycreds-0.2.3.


Complete reproduction:

After upgrade from app-emulation/docker-compose-1.21.0 (not available on portage anymore) to app-emulation/docker-compose-1.21.2, docker-compose is broken and fails with the following message:

$ docker-compose --help
Traceback (most recent call last):
  File "/usr/lib/python-exec/python2.7/docker-compose", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib64/python2.7/site-packages/pkg_resources/__init__.py", line 3161, in <module>
    @_call_aside
  File "/usr/lib64/python2.7/site-packages/pkg_resources/__init__.py", line 3145, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib64/python2.7/site-packages/pkg_resources/__init__.py", line 3174, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/lib64/python2.7/site-packages/pkg_resources/__init__.py", line 668, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/usr/lib64/python2.7/site-packages/pkg_resources/__init__.py", line 681, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/usr/lib64/python2.7/site-packages/pkg_resources/__init__.py", line 870, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'docker<4.0,>=3.3.0' distribution was not found and is required by docker-compose


After upgrade from dev-python/docker-py-3.2.1 to dev-python/docker-py-3.4.0, the docker-compose is still broken, complaining about docker-pycreds, it fails with the following message:

$ docker-compose --help
Traceback (most recent call last):
  File "/usr/lib/python-exec/python2.7/docker-compose", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib64/python2.7/site-packages/pkg_resources/__init__.py", line 3161, in <module>
    @_call_aside
  File "/usr/lib64/python2.7/site-packages/pkg_resources/__init__.py", line 3145, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib64/python2.7/site-packages/pkg_resources/__init__.py", line 3174, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/lib64/python2.7/site-packages/pkg_resources/__init__.py", line 668, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/usr/lib64/python2.7/site-packages/pkg_resources/__init__.py", line 681, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/usr/lib64/python2.7/site-packages/pkg_resources/__init__.py", line 870, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'docker-pycreds>=0.3.0' distribution was not found and is required by docker


It says it requires docker-pycreds>=0.3.0, but that version is not available on portage yet.

So I downgraded docker-py to version 3.3.0 and everything is working fine now.
Comment 3 Manuel Rüger (RETIRED) gentoo-dev 2018-07-12 14:51:06 UTC
Fixed in -r1