On a CentOS Stream 9 machine with python3-botocore-1.25.10 and python3-boto3-1.22.10 installed from epel. The dnf update python3-botocore command results in error: Problem: package python3-boto3-1.22.10-1.el9.noarch from @System requires (python3.9dist(botocore) < 1.26 with python3.9dist(botocore) >= 1.25.10), but none of the providers can be installed - cannot install both python3-botocore-1.31.38-1.el9.noarch from appstream and python3-botocore-1.25.10-1.el9.noarch from @System - cannot install both python3-botocore-1.25.10-1.el9.noarch from epel and python3-botocore-1.31.38-1.el9.noarch from appstream - cannot install the best update candidate for package python3-botocore-1.25.10-1.el9.noarch - cannot install the best update candidate for package python3-boto3-1.22.10-1.el9.noarch Seems that python3-botocore-1.31.38 is available in AppStream and causes the issue.
python3-botocore was indeed added to CentOS 9 and is currently at version 1.31.62-1.el9 (see bug 2236795). When the same change is released with RHEL 9.4, the EPEL python3-botocore package will be retired. I believe the solution is for the python3-boto3 package to be updated to work with the new python3-botocore. This will likely need to be done in an epel9-next branch to not disturb the RHEL+EPEL installations of this. It currently has a ranged dependency on python3-botocore that is causing the above error. root@c9-container:~# dnf -q repoquery --requires python3-boto3 | grep botocore (python3.9dist(botocore) < 1.26 with python3.9dist(botocore) >= 1.25.10)
From a quick investigation, it looks like these steps need to be taken by a maintainer of this package: 1. request an epel9-next branch 2. fast-forward merge that branch to the 1.28.62 commit from rawhide [0], which is compatible with the version of python3-botocore in CentOS 9 [1] 3. do an epel9-next build and bodhi update 4. when RHEL 9.4 is released, fast-forward merge the epel9 branch to match the epel9-next branch 5. do an epel9 build and bodhi update 6. untag the previous epel9-next build If needed, I can help with all of the above steps except for the first one. [0] https://src.fedoraproject.org/rpms/python-boto3/c/4199748bcc5f17f775fcdfba7bcacc2bef254f94?branch=rawhide [1] https://github.com/boto/boto3/blob/1.28.62/setup.cfg#L6
If a maintainer can request the epel9-next branch, I can assist with the build and update as a proven packager.
Branch requested. Thank you!
After creating a build for this, I realized that it will also require an update to python-s3transfer. root@c9-container:~# dnf install https://kojipkgs.fedoraproject.org//work/tasks/2700/110072700/python3-boto3-1.28.62-1.el9.next.noarch.rpm Last metadata expiration check: 0:12:38 ago on Fri Dec 8 21:02:05 2023. python3-boto3-1.28.62-1.el9.next.noarch.rpm 405 kB/s | 164 kB 00:00 Error: Problem: conflicting requests - nothing provides (python3.9dist(s3transfer) < 0.8 with python3.9dist(s3transfer) >= 0.7) needed by python3-boto3-1.28.62-1.el9.next.noarch from @commandline (try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages) Gwyn, would you mind requesting an epel9-next branch for that package as well?
Requested.
FEDORA-EPEL-NEXT-2023-f687651475 has been submitted as an update to Fedora EPEL 9 Next. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-NEXT-2023-f687651475
FEDORA-EPEL-NEXT-2023-f687651475 has been pushed to the Fedora EPEL 9 Next testing repository. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-NEXT-2023-f687651475 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
FEDORA-EPEL-NEXT-2023-f687651475 has been pushed to the Fedora EPEL 9 Next stable repository. If problem still persists, please make note of it in this bug report.