Bug 1667135

Summary: python2-boto3 missing dependency
Product: [Fedora] Fedora EPEL Reporter: Charalampos Stratakis <cstratak>
Component: python-boto3Assignee: Charalampos Stratakis <cstratak>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: epel7CC: bperkins, cstratak, me
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1646424 Environment:
Last Closed: 2020-07-04 09:35:04 UTC Type: ---
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: 1646424    
Bug Blocks:    

Description Charalampos Stratakis 2019-01-17 14:40:01 UTC
+++ This bug was initially created as a clone of Bug #1646424 +++

python2-boto3 has dependencies issues. It requires version of rpm, which is missing:

---> Package python2-boto3.noarch 0:1.4.6-1.el7 will be installed
--> Processing Dependency: python2-s3transfer >= 0.1.10 for package: python2-boto3-1.4.6-1.el7.noarch
Package python2-s3transfer is obsoleted by python-s3transfer, but obsoleting package does not provide for requirements
--> Finished Dependency Resolution
Error: Package: python2-boto3-1.4.6-1.el7.noarch (epel)
           Requires: python2-s3transfer >= 0.1.10
           Available: python2-s3transfer-0.1.10-1.el7.noarch (epel)
               python2-s3transfer = 0.1.10-1.el7

--- Additional comment from Danila Vershinin on 2019-01-07 13:07:05 CET ---

We are affected by this too.

--- Additional comment from Tim on 2019-01-11 10:02:07 CET ---

I bet this bug affects many people.
Any progress on this?

--- Additional comment from Danila Vershinin on 2019-01-11 10:08:18 CET ---

For anyone affected but wanting to quickly bypass issue, using "yum install --setopt=obsoletes=0 ..." like here https://www.getpagespeed.com/troubleshooting/quick-fix-for-installing-python2-certbot-dns-route53-python2-boto3-in-centos-7 works.

But that's just a temporary fix for "yum install", the "yum update" is still going to have dependency issue.

--- Additional comment from Ashley on 2019-01-15 23:27:29 CET ---

the problem is still there on our patched latest CentOS7 VMs;

Resolving Dependencies
--> Running transaction check
---> Package python-s3transfer.noarch 0:0.1.13-1.el7.0.1 will be obsoleting
---> Package python2-s3transfer.noarch 0:0.1.10-1.el7 will be obsoleted
--> Processing Dependency: python2-s3transfer >= 0.1.10 for package: python2-boto3-1.4.6-1.el7.noarch
--> Finished Dependency Resolution
Error: Package: python2-boto3-1.4.6-1.el7.noarch (@epel)
           Requires: python2-s3transfer >= 0.1.10
           Removing: python2-s3transfer-0.1.10-1.el7.noarch (@epel)
               python2-s3transfer = 0.1.10-1.el7
           Obsoleted By: python-s3transfer-0.1.13-1.el7.0.1.noarch (updates)
              ~python-s3transfer = 0.1.13-1.el7.0.1

Please advise as the only thing we can do right now is to;
yum update -y --skip-broken
yum install --setopt=obsoletes=0 certbot-dns-route53

--- Additional comment from Charalampos Stratakis on 2019-01-16 21:04:08 CET ---

It seems there was a bug fixed for 7.5, which unfortunately though created this issue, see bug 1576985

The breakdown is this:

python2-boto3 has an explicit requirement on python2-s3transfer, not python-s3transfer.

The epel7 package of s3transfer creates a binary rpm called python2-s3transfer, which also provides the virtual name python-s3transfer.

The rhel7 package of s3transfer creates a binary rpm called python-s3transfer, which obsoletes EPEL's python2-s3transfer, but it doesn't provide the python2-s3transfer name, that python2-boto3 explicitly depends on, thus the transaction is failing.

Will need to do some testing, possibly through a COPR repo to verify the transaction issue.

--- Additional comment from Charalampos Stratakis on 2019-01-16 21:05:04 CET ---

Adding needinfo on the maintainer to chime in.

--- Additional comment from Charalampos Stratakis on 2019-01-17 15:37:41 CET ---

I'll clone this bug in order to provide a workaround for boto3, to basically require python-s3transfer instead of python2-s3transfer. That should fix the dependency issue for now.

Comment 1 Fedora Update System 2019-01-30 14:27:59 UTC
python-boto3-1.4.6-2.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2019-23ae070b4c

Comment 2 Fedora Update System 2019-01-31 03:38:08 UTC
python-boto3-1.4.6-2.el7 has been pushed to the Fedora EPEL 7 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-EPEL-2019-23ae070b4c

Comment 3 Fabio Alessandro Locati 2020-07-04 09:35:04 UTC
boto3 is not part of EPEL anymore