Description of problem: I need to avoid installing a particular package version on Fedora 31. To do that, I run dnf install -y 'python3-astroid <> 2.3.3-2.gitace7b29.fc31' and it correctly picks up the older version from the repository. However, when I run the same command on Fedora rawhide where python3-astroid-2.3.3-2.gitace7b29.fc31 is not available but python3-astroid-2.3.3-2.gitace7b29.fc32 is, it does not get installed. When testing with dnf install 'python3-astroid = 2.3.3-2.gitace7b29.fc31' it is correctly not found on rawhide and dnf install 'python3-astroid = 2.3.3-2.gitace7b29.fc32' finds it. But <> does not seem to do the right thing. Version-Release number of selected component (if applicable): dnf-4.2.17-1.fc32.noarch How reproducible: Deterministic. Steps to Reproduce: 1. On Fedora rawhide, run dnf install -y 'python3-astroid <> 2.3.3-2.gitace7b29.fc31' Actual results: Last metadata expiration check: 0:20:50 ago on Mon Jan 6 12:33:20 2020. No match for argument: python3-astroid <> 2.3.3-2.gitace7b29.fc31 Error: Unable to find a match: python3-astroid <> 2.3.3-2.gitace7b29.fc31 Expected results: Last metadata expiration check: 0:21:38 ago on Mon Jan 6 12:33:20 2020. Dependencies resolved. ================================================================================ Package Arch Version Repo Size ================================================================================ Installing: python3-astroid noarch 2.3.3-2.gitace7b29.fc32 rawhide 296 k Installing dependencies: python3-lazy-object-proxy x86_64 1.4.3-1.fc32 rawhide 35 k python3-wrapt x86_64 1.11.2-4.fc32 rawhide 53 k [...] Installed: python3-astroid-2.3.3-2.gitace7b29.fc32.noarch python3-lazy-object-proxy-1.4.3-1.fc32.x86_64 python3-wrapt-1.11.2-4.fc32.x86_64 Complete! Additional info:
Please could you use 'python3-astroid -x python3-astroid-2.3.3-2.gitace7b29.fc31'? I believe that supposed behaviour for argument `python3-astroid <> 2.3.3-2.gitace7b29.fc31` is `No much for argument` because operator `<>` is not supported. Please could you accept workaround with `-x` as a solution for the bug?
If <> is not supported, how come it seems to do the right thing on Fedora 31 for package which exists in the repository: # dnf install 'python3-astroid <> 2.3.3-2.gitace7b29.fc31' Fedora Modular 31 - x86_64 - Updates 2.7 MB/s | 3.8 MB 00:01 Fedora 31 - x86_64 - Updates 14 MB/s | 16 MB 00:01 Fedora 31 - x86_64 27 MB/s | 71 MB 00:02 Last metadata expiration check: 0:00:01 ago on Tue Jan 7 12:09:10 2020. Dependencies resolved. ================================================================================ Package Arch Version Repo Size ================================================================================ Installing: python3-astroid noarch 2.2.5-4.git28fc86f.fc31 fedora 292 k [...]
I confirm that dnf install python3-astroid -x python3-astroid-2.3.3-2.gitace7b29.fc31 works as expected -- on Fedora 31 it installs (the older version) python3-astroid-2.2.5-4.git28fc86f.fc31 and on Fedora rawhide it installs python3-astroid-2.3.3-2.gitace7b29.fc32. Thank you.
I created PR https://github.com/rpm-software-management/libdnf/pull/881 that makes parsing of reldep mode strict. The result is that argument python3-astroid <> 2.3.3-2.gitace7b29.fc31 will never return any result.
This bug appears to have been reported against 'rawhide' during the Fedora 32 development cycle. Changing version to 32.
FEDORA-2020-68aa5586ed has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2020-68aa5586ed
FEDORA-2020-68aa5586ed has been pushed to the Fedora 32 testing repository. In short time you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-68aa5586ed` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-68aa5586ed See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.
FEDORA-2020-68aa5586ed has been pushed to the Fedora 32 stable repository. If problem still persists, please make note of it in this bug report.