Re: What should we do about the "Install only newly recommended packages on upgrades" F36 change?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Miro Hrončok wrote:
> this is about the following Fedora change:
> 
> https://fedoraproject.org/wiki/Changes/ExcludeFromWeakAutodetect
> 
> In the tracking bugzilla, the relevant comment is:
> 
> https://bugzilla.redhat.com/show_bug.cgi?id=2013327#c4
> 
> If I understand this correctly, the current implementation is not doing
> what the change described and the change owner says the feature cannot be
> implemented as described.
> 
> There are several options and we should probably decide what to do before
> beta freeze. Hence opening this discussion.
> 
> The change summarizes as "We would like to change a default behavior
> dnf/PackageKit/microdnf to install only newly recommended packages on
> upgrades." however the current impementation disbales weak depndencies in
> various other scenarios, as reported by various of our packagers e.g. in
> 
> Bug 2048394 - dnf should pull weak dependencies in install transaction
> Bug 2033130 - exclude_from_weak_autodetect=true effectively renders rich
> weak dependencies useless
> Bug 2042808 - weakdeps not working on rawhide system

So, as I understand it, the core of the issue is this:
| We have a problem to detect rich dependencies correctly in autodetections
| because we do not know whether their conditions were met or not in past.

So basically, this leaves only 2 possible options (and the remainder are 
variants thereof): either assume they were met or assume they were unmet:

> The change owner proposed 4 options to move forward. I understand them as
> follows:
> 
> 1. do nothing, keep it broken
> 2. disable this behavior by default, keep it optional, but keep it broken
> 3. do not ignore already broken weak rich deps (partially reverts the
> change)
> 4. change the behavior on dynamically depending on the dnf command
> used (discouraged)

The status quo, i.e., 1., assumes they were met. Option 3. would assume they 
were unmet.

Option 2. is like 1. but disables the entire feature by default.

Option 4. would attempt to heuristically, depending on the command used, 
pick the behavior of 1. vs. either 2. or 3..

They are basically all workarounds for the real issue, which is that the 
previous state cannot be correctly determined. Like Fabio Valentini, I have 
to wonder why that cannot be done. DNF should have all the required 
information in its database, or it could query RPM which also has the 
information in its database.

E.g., foo-langpack-xx Supplements: (foo and langpacks-xx) cannot possibly 
have been already unmet if langpacks-xx was not previously installed. It 
ought to be possible for DNF to determine that automatically.

So I would currently tend towards:
* postponing the Change to F37,
* implementing option 2. for F36 (i.e., adding the option as experimental
  and disabled by default, which should not need a Change at all), AND
* looking further for a proper solution for F37, as I do not believe it
  cannot be done (and neither does Fabio).

        Kevin Kofler
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux