Description of problem: This happened while prepraing a a Fedora 27 installation for an upgrade to Fedora 29. dnf with 'distro-sync' command reported the following: Problem 2: problem with installed package pywebkitgtk-1.1.8-13.fc26.x86_64 - package pywebkitgtk-1.1.8-13.fc26.x86_64 requires libjavascriptcoregtk-1.0.so.0()(64bit), but none of the providers can be installed - gnucash-2.6.21-1.fc27.x86_64 does not belong to a distupgrade repository Fair enought even if 'gnucash' occurence is somewhat mysterious. OK, lets try 'dnf remove pywebkitgtk'. That has the following, unexpected, effect: Dependencies resolved. ============================================================================================================================================== Package Arch Version Repository Size ============================================================================================================================================== Removing: pywebkitgtk x86_64 1.1.8-13.fc26 @fedora 233 k Removing dependent packages: gnucash x86_64 2.6.21-1.fc27 @updates 95 M gwenhywfar-gui-gtk2 x86_64 4.15.3-9.fc27 @updates 100 k perl-DateTime x86_64 2:1.45-1.fc27 @updates 360 k perl-DateTime-Locale noarch 1.17-1.fc27 @updates 15 M perl-DateTime-TimeZone noarch 2.21-1.fc27 @updates 6.5 M perl-DateTime-TimeZone-SystemV noarch 0.010-2.fc27 @fedora 29 k perl-DateTime-TimeZone-Tzfile noarch 0.011-2.fc27 @fedora 25 k perl-Devel-LexAlias x86_64 0.05-15.fc27 @fedora 11 k perl-Eval-Closure noarch 0.14-4.fc27 @fedora 33 k perl-Exception-Class noarch 1.43-2.fc27 @fedora 88 k perl-Finance-Quote noarch 1.47-1.fc27 @updates 658 k perl-HTML-TableExtract noarch 2.13-6.fc27 @fedora 70 k perl-Package-Stash noarch 0.37-8.fc27 @fedora 54 k perl-Params-Classify x86_64 0.015-1.fc27 @fedora 48 k perl-Params-ValidationCompiler noarch 0.26-1.fc27 @updates 77 k perl-Role-Tiny noarch 2.000005-5.fc27 @fedora 39 k perl-Specio noarch 0.40-1.fc27 @fedora 334 k perl-namespace-autoclean noarch 0.28-9.fc27 @fedora 41 k perl-namespace-clean noarch 0.27-4.fc27 @fedora 39 k xmlsec1-gnutls x86_64 1.2.23-4.fc27 @fedora 107 k Removing unused dependencies: aqbanking x86_64 5.6.12-5.fc27 @fedora 18 M gnucash-docs noarch 2.6.20-1.fc27 @updates 90 M goffice08 x86_64 0.8.17-18.fc27 @fedora 5.3 M gwenhywfar x86_64 4.15.3-9.fc27 @updates 1.4 M ktoblzcheck x86_64 1.44-9.fc27 @fedora 678 k libofx x86_64 0.9.10-5.fc27 @updates 618 k perl-B-Hooks-EndOfScope noarch 0.21-5.fc27 @fedora 60 k perl-CGI noarch 4.37-1.fc27 @updates 538 k perl-Class-Data-Inheritable noarch 0.08-25.fc27 @fedora 6.5 k perl-Class-Method-Modifiers noarch 2.12-7.fc27 @fedora 100 k perl-Class-Singleton noarch 1.5-8.fc27 @fedora 28 k perl-Date-ISO8601 noarch 0.005-1.fc27 @fedora 25 k perl-Devel-CallChecker x86_64 0.008-2.fc27 @fedora 27 k perl-Devel-Caller x86_64 2.06-14.fc27 @fedora 22 k perl-Devel-StackTrace noarch 1:2.03-1.fc27 @updates 47 k perl-Dist-CheckConflicts noarch 0.11-10.fc27 @fedora 32 k perl-DynaLoader-Functions noarch 0.003-1.fc27 @fedora 20 k perl-HTML-Element-Extended noarch 1.18-12.fc27 @fedora 69 k perl-JSON noarch 2.94-2.fc27 @fedora 244 k perl-LWP-Protocol-https noarch 6.07-3.fc27 @fedora 12 k perl-Module-Implementation noarch 0.09-14.fc27 @fedora 25 k perl-Package-Stash-XS x86_64 0.28-16.fc27 @fedora 56 k perl-PadWalker x86_64 2.2-7.fc27 @fedora 36 k perl-Ref-Util noarch 0.203-3.fc27 @fedora 32 k perl-Ref-Util-XS x86_64 0.116-5.fc27 @fedora 41 k perl-Sub-Exporter-Progressive noarch 0.001013-4.fc27 @fedora 28 k perl-Sub-Identify x86_64 0.14-4.fc27 @fedora 28 k perl-Variable-Magic x86_64 0.61-4.fc27 @fedora 119 k perltidy noarch 20170521-3.fc27 @fedora 1.5 M xmlsec1-gcrypt x86_64 1.2.23-4.fc27 @fedora 148 k That is surely unexpected as none of packages in question depends on 'pywebkitgtk'. In particular 'rpm -e pywebkitgtk' does not attempt to remove any other package and after execution of this command 'dnf repoquery --unsatisfied' does not have anything to report. Moreover 'dnf distro-sync ...' does not have any issues with 'gnucash' anymore and proceeds to update it to gnucash-3.3-1.fc29 How reproducible: Happens consistently on all installations (i686 and x86_64) where pywebkitgtk happens to be present. Expected results: No spurious "dependencies" resulting in unwanted attempts of package removal. Additional info: "Problem 1:" as reported by dnf was "package ghostscript-devel-9.22-6.fc27.x86_64 requires ...". Indeed, ghostscript-9.25-1.fc29 dropped ghostscript-devel without supplying relevant Provides/Obsoletes but this is not a dnf issue. By the nature of the problem dnf used during relevant updates was dnf-2.7.5-2.fc27, and libsolv-0.6.35-1.fc27, and I do not know how to attempt to reproduce the issue after upgrades but maybe somebody will know what happens here.
On a system updated to F29, i.e. dnf-4.0.4-2.fc29 and libsolv-0.7.1-1.fc29, and after 'rpm -i --nodeps pywebkitgtk-1.1.8-13.fc26.x86_64.rpm' (which is the last available version of this package) running 'dnf remove pywebkitgtk' does _not_ trigger an avalanche of attempted removals as in the original report.
The bunch of removed packages are dependencies of gnucash (which package is also about to be removed), not pywebkitgtk. There probably are some packaging problems with pywebkitgtk - on my fully updated Fedora 29 I'm not able to even install it: [root@f29]# dnf install pywebkitgtk Error: Problem: conflicting requests - nothing provides libjavascriptcoregtk-1.0.so.0()(64bit) needed by pywebkitgtk-1.1.8-13.fc26.x86_64 - nothing provides libwebkitgtk-1.0.so.0()(64bit) needed by pywebkitgtk-1.1.8-13.fc26.x86_64 I'm reassigning this bug to libwebkitgtk.
(In reply to Marek Blaha from comment #2) > The bunch of removed packages are dependencies of gnucash (which package is > also about to be removed), not pywebkitgtk That is the first problem. There is no good reason for gnucash to be removed in the first place. In an absence of pywebkitgtk 'dnf distro-sync ...' updates gnucash to gnucash-3.3-1.fc29 without any fuss. . > There probably are some packaging problems with pywebkitgtk - on my fully > updated Fedora 29 I'm not able to even install it: This is not surprising either. That is why when I was trying to see if a similar mess-up happens in F29, in comment #1, I was installing that with 'rpm -i --nodeps pywebkitgtk-1.1.8-13.fc26.x86_64.rpm' as libjavascriptcoregtk-1.0.so.0()(64bit) is not available in F29 while it was in F27. On F29 webkit2gtk3-js provides libjavascriptcoregtk-4.0.so.18()(64bit) and pywebkitgtk packages were NOT updated above F26. > I'm reassigning this bug to libwebkitgtk. It looks to me somewhat premature. Try on F29 installation 'dnf remove gnucash'. This attempt to remove, among other things, perl-Date-ISO8601 perl-DateTime perl-DateTime-Locale perl-DateTime-TimeZone perl-DateTime-TimeZone-SystemV perl-DateTime-TimeZone-Tzfile Are suggesting that these are dependent on gnucash? dnf does not seem to agree with you. After 'rpm -e gnucash' a check with 'dnf repoquery --unsatisfied' does not lodge any complaints. BTW - a list of packages slated for a removal in F29 after 'dnf remove gnucash' is _substantially_ shorter that the one quoted in the original report while these "missing" packages are still present in my installation.
The problem is in pywebkitgtk. You can either remove it from system, or run 'dnf distro-sync --allowerasing' (which will allow solver to remove packages when solving problem). pywebkitgtk is not installable on F29 because of unmet dependencies libjavascriptcoregtk-1.0.so.0 and libwebkitgtk-1.0.so.0. This should be repaired in the first. Regarding gnucash dependencies. These packages are not dependent on gnucash. They are dependencies of gnucash: $ dnf repoquery --requires gnucash . . perl(Finance::Quote) . . $ dnf repoquery --requires perl-Finance-Quote . . perl(DateTime) . . $ dnf repoquery --requires perl-DateTime . . perl(DateTime::Locale) >= 1.06 perl(DateTime::TimeZone) >= 2.02 . . And so on. When you run 'dnf remove gnucash', these packages are removed as they were installed as dependencies and no other package on system requires them. (See https://dnf.readthedocs.io/en/latest/command_ref.html#remove-command and clean_requirements_on_remove option description here: https://dnf.readthedocs.io/en/latest/conf_ref.html)
This message is a reminder that Fedora 29 is nearing its end of life. Fedora will stop maintaining and issuing updates for Fedora 29 on 2019-11-26. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as EOL if it remains open with a Fedora 'version' of '29'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version. Thank you for reporting this issue and we are sorry that we were not able to fix it before Fedora 29 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora, you are encouraged change the 'version' to a later Fedora version prior this bug is closed as described in the policy above. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete.
Fedora 29 changed to end-of-life (EOL) status on 2019-11-26. Fedora 29 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora please feel free to reopen this bug against that version. If you are unable to reopen this bug, please file a new report against the current release. If you experience problems, please add a comment to this bug. Thank you for reporting this bug and we are sorry it could not be fixed.