Re: Fedora 32 System-Wide Change proposal: Modules in Non-Modular Buildroot

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

 



On Tue, Oct 15, 2019 at 11:22 AM Matthew Miller
<mattdm@xxxxxxxxxxxxxxxxx> wrote:
>
> On Tue, Oct 15, 2019 at 12:36:15PM +0200, Miro Hrončok wrote:
> > >As package maintainers we all make technical decisions which have
> > >significant impact on our users every day - whether that's in the choice
> > >of defaults, choice of build flags, or whatever.  Honestly delivering as
> > >modules-vs-non-modules is a completely trivial issue compared to most of
> > >the stuff I spend time on.  If "yum install X" still works most people
> > >just don't care about the RPM/dnf/repo mechanics behind that.
> >
> > Except it works only half way. The installation works. Later,
> > dependencies are broken. Upgrades are broken. "yum remove X" does
> > not undo the action completely.
> >
> > The main issue is: user just enabled a module without doing it
> > explicitly. The user needs to know how to handle modules in order to
> > recover.
>
> I never expect "yum remove X" to be the inverse of "yum install X". DNF's
> magical leaf tracking makes it a bit more so, but not exactly. So, I don't
> think we should make that a very high priority concern (although if we can
> improve it, so much the better).
>
> Upgrades need to work, though. And they need to work regardless of whether
> we ban default modules or not. So, given that, I'm not _really_ seeing big
> differences in practice for the user beteen these two proposals, and the one
> (no default streams) negates one of the whole intended advantages of the
> entire thing.
>
> What am I missing?
>

Upgrades can never work without changing fundamental properties of modules.

There are two traits of modules that break everything:
* Module activation is introduces a hard lock of content source
* There is no concept of module transitions

In the RHEL world, these two qualities are not great, but they are
serviceable (RHEL 9 is going to hurt!). In the Fedora world, they make
having default modules essentially untenable. It could even be argued
that non-default modules are not serviceable either.

There is no way in modularity to say that a module is being replaced
with another. There's also no way to say that a module is going away
and transition accordingly. Moreover, since modules have a strong
dependency on an abstract property that is defined as a consequence of
the system content (the "platform" module), it is not possible to have
orphan modules that are still binary compatible as you upgrade.
Finally, modularization and foregoing non-modular versions of content
has an implicit commitment that you *never* demodularize because there
is no module transition capabilities in the modularity technology.

These flaws boil down to Fedora Modularity being a failure because the
technology does not account for the needs of Fedora as a distribution,
as a project, or as a community.


-- 
真実はいつも一つ!/ Always, there's only one truth!
_______________________________________________
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




[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