Description of problem: Somtime, it is necessary to upgrade just subset of packages due to various reasons(as a workaround ...) But upgrade of dnf from f30 to rawhide does not work. And recommended `--allowerasing` is not safe for automated process. Version-Release number of selected component (if applicable): sh$ rpm -q dnf dnf-4.2.2-1.fc30.noarch How reproducible: Deterministic Steps to Reproduce: # test from fedora:30 container podman run -ti --rm fedora:30 bash 1. dnf install -y yum fedora-repos-rawhide 2. rm -rf /var/cache/dnf/* 3. dnf --disablerepo=* --enablerepo=rawhide update dnf Actual results: [root@8e9b5801e1c6 /]# dnf --disablerepo=* --enablerepo=rawhide update dnf Last metadata expiration check: 0:06:15 ago on Mon 06 Jan 2020 11:31:32 AM UTC. Dependencies resolved. Problem: package python3-hawkey-0.39.1-1.fc32.x86_64 requires libdnf(x86-64) = 0.39.1-1.fc32, but none of the providers can be installed - package libdnf-0.39.1-1.fc32.x86_64 requires librpm.so.9()(64bit), but none of the providers can be installed - package libdnf-0.39.1-1.fc32.x86_64 requires librpmio.so.9()(64bit), but none of the providers can be installed - package python3-dnf-4.2.17-1.fc32.noarch requires python3-hawkey >= 0.39.1, but none of the providers can be installed - cannot install both rpm-libs-4.15.1-1.fc32.x86_64 and rpm-libs-4.14.2.1-4.fc30.1.x86_64 - package dnf-4.2.17-1.fc32.noarch requires python3-dnf = 4.2.17-1.fc32, but none of the providers can be installed - package python2-rpm-4.14.2.1-4.fc30.1.x86_64 requires librpm.so.8()(64bit), but none of the providers can be installed - package python2-rpm-4.14.2.1-4.fc30.1.x86_64 requires librpmio.so.8()(64bit), but none of the providers can be installed - package python2-rpm-4.14.2.1-4.fc30.1.x86_64 requires rpm-libs(x86-64) = 4.14.2.1-4.fc30.1, but none of the providers can be installed - cannot install the best update candidate for package dnf-4.2.2-1.fc30.noarch - problem with installed package python2-rpm-4.14.2.1-4.fc30.1.x86_64 ================================================================================ Package Architecture Version Repository Size ================================================================================ Skipping packages with conflicts: (add '--best --allowerasing' to command line to force their upgrade): rpm-libs x86_64 4.15.1-1.fc32 rawhide 300 k Skipping packages with broken dependencies: dnf noarch 4.2.17-1.fc32 rawhide 404 k libdnf x86_64 0.39.1-1.fc32 rawhide 631 k python3-dnf noarch 4.2.17-1.fc32 rawhide 402 k python3-hawkey x86_64 0.39.1-1.fc32 rawhide 100 k Transaction Summary ================================================================================ Skip 5 Packages Nothing to do. Complete! Expected results: Packages are upgraded without any issue. Additional info: I am not sure whether issue is in dependency solving on f30 or in package dependencies in rawhide. Therefore BZ is assigned to rawhide. Upgrade to f31 works without any issue (dnf --releasever=31 update dnf)
I believe that the problem is with python2-rpm-4.14.2.1-4.fc30.1.x86_64. Python2 packages are not available in Fedora 32, therefore you cannot upgrade python2-rpm, rpm and librpm into version that is required by libdnf. To resolve it just run the command 'dnf --disablerepo=* --enablerepo=rawhide update dnf' with --allowerrasing or remove python2-rpm. I would like to ask RPM team to fix the upgrade path for systems with python2-rpm (obsoletes could help).
(In reply to Jaroslav Mracek from comment #1) > I believe that the problem is with python2-rpm-4.14.2.1-4.fc30.1.x86_64. > Python2 packages are not available in Fedora 32, therefore you cannot > upgrade python2-rpm, rpm and librpm into version that is required by libdnf. > To resolve it just run the command 'dnf --disablerepo=* --enablerepo=rawhide > update dnf' with --allowerrasing or remove python2-rpm. > > I would like to ask RPM team to fix the upgrade path for systems with > python2-rpm (obsoletes could help). Then it looks like a duplicate of BZ1775113 (which I filed and forgot about it :-)
> Then it looks like a duplicate of BZ1775113 (which I filed and forgot about it :-) Heh, know the feeling :) *** This bug has been marked as a duplicate of bug 1775113 ***
hmm, test case from description still does not work. Even thought rpm was fixed in rawhide (BZ1775113) and testcase from description of BZ1775113 pass on f31. Reopening and moving back to dnf for investigation. [root@host ~]# podman run -ti --rm fedora:30 bash [root@012a8fa6799d /]# dnf install -d1 -e1 --setopt=install_weak_deps=True -y yum fedora-repos-rawhide Last metadata expiration check: 0:00:19 ago on Mon 13 Jan 2020 12:18:33 PM UTC. Dependencies resolved. ================================================================================ Package Arch Version Repository Size ================================================================================ Installing: fedora-repos-rawhide noarch 30-2 updates 8.7 k yum noarch 3.4.3-522.fc30 updates 1.2 M Upgrading: fedora-gpg-keys noarch 30-2 updates 104 k fedora-repos noarch 30-2 updates 9.5 k Installing dependencies: python-unversioned-command noarch 2.7.17-1.fc30 updates 11 k python2 x86_64 2.7.17-1.fc30 updates 45 k python2-libs x86_64 2.7.17-1.fc30 updates 6.4 M python2-pyxattr x86_64 0.6.1-1.fc30 updates 32 k python2-urlgrabber noarch 4.0.0-3.fc30 updates 102 k python3-urlgrabber noarch 4.0.0-3.fc30 updates 105 k cpio x86_64 2.12-10.fc30 fedora 247 k gdbm x86_64 1:1.18-4.fc30 fedora 116 k pyliblzma x86_64 0.5.3-25.fc30 fedora 52 k python2-gpg x86_64 1.12.0-1.fc30 fedora 227 k python2-iniparse noarch 0.4-33.fc30 fedora 42 k python2-pycurl x86_64 7.43.0.2-6.fc30 fedora 218 k python2-rpm x86_64 4.14.2.1-4.fc30.1 fedora 72 k python2-six noarch 1.12.0-1.fc30 fedora 35 k python3-pycurl x86_64 7.43.0.2-6.fc30 fedora 218 k python3-six noarch 1.12.0-1.fc30 fedora 35 k yum-metadata-parser x86_64 1.1.4-22.fc29 fedora 41 k Installing weak dependencies: python2-pip noarch 19.0.3-6.fc30 updates-testing 1.9 M python2-setuptools noarch 40.8.0-2.fc30 updates 642 k libxcrypt-compat x86_64 4.4.4-2.fc30 fedora 43 k Transaction Summary ================================================================================ Install 22 Packages Upgrade 2 Packages Total download size: 12 M Downloading Packages: -------------------------------------------------------------------------------- Total 14 MB/s | 12 MB 00:00 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Upgraded: fedora-gpg-keys-30-2.noarch fedora-repos-30-2.noarch Installed: fedora-repos-rawhide-30-2.noarch yum-3.4.3-522.fc30.noarch python2-pip-19.0.3-6.fc30.noarch python2-setuptools-40.8.0-2.fc30.noarch libxcrypt-compat-4.4.4-2.fc30.x86_64 python-unversioned-command-2.7.17-1.fc30.noarch python2-2.7.17-1.fc30.x86_64 python2-libs-2.7.17-1.fc30.x86_64 python2-pyxattr-0.6.1-1.fc30.x86_64 python2-urlgrabber-4.0.0-3.fc30.noarch python3-urlgrabber-4.0.0-3.fc30.noarch cpio-2.12-10.fc30.x86_64 gdbm-1:1.18-4.fc30.x86_64 pyliblzma-0.5.3-25.fc30.x86_64 python2-gpg-1.12.0-1.fc30.x86_64 python2-iniparse-0.4-33.fc30.noarch python2-pycurl-7.43.0.2-6.fc30.x86_64 python2-rpm-4.14.2.1-4.fc30.1.x86_64 python2-six-1.12.0-1.fc30.noarch python3-pycurl-7.43.0.2-6.fc30.x86_64 python3-six-1.12.0-1.fc30.noarch yum-metadata-parser-1.1.4-22.fc29.x86_64 Complete! [root@012a8fa6799d /]# dnf --disablerepo=* --enablerepo=rawhide --setopt=install_weak_deps=False --nogpgcheck update dnf Fedora - Rawhide - Developmental packages for t 19 MB/s | 69 MB 00:03 Last metadata expiration check: 0:00:17 ago on Mon 13 Jan 2020 12:19:44 PM UTC. Dependencies resolved. Problem: cannot install both python3-libs-3.8.1-1.fc32.x86_64 and python3-libs-3.7.2-8.fc30.x86_64 - package python3-3.7.2-8.fc30.x86_64 requires python3-libs(x86-64) = 3.7.2-8.fc30, but none of the providers can be installed - package python3-hawkey-0.39.1-1.fc32.x86_64 requires libpython3.8.so.1.0()(64bit), but none of the providers can be installed - package python3-pip-19.0.3-1.fc30.noarch requires python(abi) = 3.7, but none of the providers can be installed - package python3-dnf-4.2.17-1.fc32.noarch requires python3-hawkey >= 0.39.1, but none of the providers can be installed - problem with installed package python3-pip-19.0.3-1.fc30.noarch - package dnf-4.2.17-1.fc32.noarch requires python3-dnf = 4.2.17-1.fc32, but none of the providers can be installed - package python3-pip-19.3.1-1.fc32.noarch conflicts with python-pip < 19.3.1-1.fc32 provided by python2-pip-19.0.3-6.fc30.noarch - cannot install the best update candidate for package dnf-4.2.2-1.fc30.noarch - problem with installed package python2-pip-19.0.3-6.fc30.noarch ================================================================================ Package Architecture Version Repository Size ================================================================================ Skipping packages with conflicts: (add '--best --allowerasing' to command line to force their upgrade): python3-libs x86_64 3.8.1-1.fc32 rawhide 7.8 M python3-pip noarch 19.3.1-1.fc32 rawhide 1.7 M Skipping packages with broken dependencies: dnf noarch 4.2.17-1.fc32 rawhide 404 k python3-dnf noarch 4.2.17-1.fc32 rawhide 402 k python3-hawkey x86_64 0.39.1-1.fc32 rawhide 100 k Transaction Summary ================================================================================ Skip 5 Packages Nothing to do. Complete!
Ok, in this case the problem is in python2-pip-19.0.3-6.fc30.noarch. Again there is no upgrade path. Changing the component.
There is no python2-pip component in Fedora. Changing to fedora-obsolete-packages to obsolete the package.
This bug appears to have been reported against 'rawhide' during the Fedora 32 development cycle. Changing version to 32.