Bug 1475878

Summary: Dependency problems updating system, python-docker must Provides: python-docker-py
Product: [Fedora] Fedora Reporter: Robert Marcano <robert>
Component: python-dockerAssignee: Tomas Tomecek <ttomecek>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 26CC: jarod, jdulaney, mgoldman, ttomecek, twaugh, vrutkovs
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: python-docker-2.4.2-3.fc26 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-08-19 17:49:04 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1478417    

Description Robert Marcano 2017-07-27 14:17:27 UTC
Description of problem:

Dependency problems updating system where python3-docker-squash is installed

# dnf update
Last metadata expiration check: 0:06:06 ago on Thu 27 Jul 2017 10:07:40 AM -04.
Dependencies resolved.

 Problem: package python3-docker-squash-1.0.5-4.fc26.noarch requires python3-docker-py, but none of the providers can be installed
  - package python3-docker-2.4.2-1.fc26.noarch obsoletes python3-docker-py < 1:2.0 provided by python3-docker-py-1:1.10.6-3.fc26.noarch
  - cannot install the best update candidate for package python3-docker-squash-1.0.5-4.fc26.noarch
  - cannot install the best update candidate for package python3-docker-py-1:1.10.6-3.fc26.noarch
Nothing to do.
Complete!

Version-Release number of selected component (if applicable):

python3-docker-squash-1.0.5-4.fc26.noarch

Comment 1 Jarod Wilson 2017-08-01 14:08:00 UTC
This is actually a problem with the pythonX-docker packages. They're now equipped with Obsoletes: pythonX-docker-py lines, but don't have the necessary matching Provides: pythonX-docker-py = %{version}-%{release}, so that they can satisfy pythonX-docker-squash. I rebuilt pythonX-docker locally with those additions, and everything then works as expected here.

Comment 2 Jarod Wilson 2017-08-01 14:15:36 UTC
$ diff -up python-docker.spec.orig python-docker.spec
--- python-docker.spec.orig     2017-08-01 10:14:37.793854260 -0400
+++ python-docker.spec  2017-08-01 10:15:01.093784359 -0400
@@ -63,6 +63,7 @@ Requires:       python-backports-ssl_mat
 Requires:       python2-docker-pycreds

 Obsoletes: %{py2_docker_py_1} < 1:2.0
+Provides: %{py2_docker_py_1} == %{version}-%{release}

 %description -n python2-%{srcname}
 It lets you do anything the docker command does, but from within Python apps –
@@ -92,6 +93,7 @@ Requires:       python3-six >= 1.3.0
 Requires:       python3-docker-pycreds

 Obsoletes: %{py3_docker_py_1} < 1:2.0
+Provides: %{py3_docker_py_1} == %{version}-%{release}

 %description -n python3-%{srcname}
 It lets you do anything the docker command does, but from within Python apps –

Comment 3 Tomas Tomecek 2017-08-01 14:50:27 UTC
fix incoming, builds in progress

Comment 4 Fedora Update System 2017-08-01 14:54:26 UTC
python-docker-2.4.2-3.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-082ef22c86

Comment 5 Fedora Update System 2017-08-03 00:52:37 UTC
python-docker-2.4.2-3.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-082ef22c86

Comment 6 Robert Marcano 2017-08-04 13:53:15 UTC
The update breaks docker-squash:

Traceback (most recent call last):
  File "/bin/docker-squash", line 6, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 3038, in <module>
    @_call_aside
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 3022, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 3051, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 657, in _build_master
    ws.require(__requires__)
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 971, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python3.6/site-packages/pkg_resources/__init__.py", line 857, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'docker-py>=1.7.2' distribution was not found and is required by docker-squash

Comment 7 Robert Marcano 2017-08-04 13:58:24 UTC
Look like docker-squash needs and update https://github.com/goldmann/docker-squash/commit/5d706d04de176f570ff55427af3bb8dbf4af56a3

I think the update should not be pushed to stable until python3-docker-squash maintainer updates it. Will report bug.

Comment 8 Fedora Update System 2017-08-19 17:49:04 UTC
python-docker-2.4.2-3.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.