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 12:52 PM Josh Boyer <jwboyer@xxxxxxxxxxxxxxxxx> wrote:
>
> On Tue, Oct 15, 2019 at 12:27 PM Neal Gompa <ngompa13@xxxxxxxxx> wrote:
> >
> > On Tue, Oct 15, 2019 at 12:13 PM Adam Williamson
> > <adamwill@xxxxxxxxxxxxxxxxx> wrote:
> > >
> > > On Tue, 2019-10-15 at 11:35 -0400, Neal Gompa wrote:
> > > > 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.
> > >
> > > I think this is actually a very cogent summary of the major problems
> > > we're dealing with in modularity right now, but it's *also* needlessly
> > > negative.
> > >
> > > Inventing new stuff is hard. You rarely get it right the first time.
> > > Speaking personally here I think it was a big mistake to do this second
> > > version of Modularity as fast as we did and drop it into RHEL 8 before
> > > it had been in Fedora for two minutes, that was an unforced error; but
> > > even if we hadn't done that, I'm not surprised the second cut at
> > > Modularity isn't perfect. The second cut at RPM wasn't perfect either,
> > > that's why we're on 4.x not 2.x. :)
> > >
> > > What's happening right now is the process of us trying something out
> > > and finding out where the problems are. That's what happens when you
> > > invent new stuff, it's harder than just carrying on doing the old
> > > stuff.
> > >
> > > So: I'm on board with most of what you say here, but there's no need to
> > > say it means Modularity is "a failure". It means right now it's not
> > > entirely baked and we're realizing the concept needs extending and
> > > perhaps reworking a bit, just like we realized with the *first* cut at
> > > Modularity which we abandoned between a Beta release and a Final
> > > release. This is causing us to have to deal with some icky problems,
> > > but again, that's not *new*. We had to deal with some fairly icky
> > > problems when systemd showed up. We had to deal with some fairly icky
> > > problems when grub2 showed up. It's a process we've dealt with before.
> > > We know how to do it. We just need to hold our noses and fix the icky
> > > problems, and then sit down and think about the design issues that have
> > > become apparent in Modularity v2 through our actually implementing it
> > > and using it (which is what Fedora is for, remember!) and figure out
> > > how to address them in Modularity v3.
> >
> > Are we going to do a Modularity v3? Because people seemed to be
> > *really* reluctant to go down that path because it would break
> > compatibility with RHEL. Honestly, my big problem is how much we're
> > being held hostage by RHEL for this. I would have been happier if we'd
> > focused on Fedora cases and naturally extended it to RHEL cases
> > afterward.
>
> RHEL isn't holding Fedora hostage.  That's also unnecessarily antagonistic.
>
> I think treating Fedora and RHEL as entirely separate things, and not
> part of the same ecosystem is exactly what got us into this in the
> first place.  Red Hat is trying to address this because we very much
> see how the disconnects happen, and how they are problematic for
> everyone involved.  There is pain felt on the enterprise side as well.
> If we take a step back and consider all of the various pieces of our
> ecosystem, it makes sense to try and figure out ways to make them as
> cohesive as possible.  Not the same, but not wildly and
> problematically different either.
>
> Fedora, RHEL, and now CentOS Stream are all pieces of that.  What you
> call "holding hostage" I would call an attempt to proactively
> contribute in the various communities we are all a part of.  There has
> been reluctance to do that in the past and it has cost both sides.  It
> will be messy and there will be growing pains.  I would ask that we
> have patience and assume positive intent.  It is fine to raise
> technical concerns, but they don't need to be portrayed in a manner
> that makes it seem like the communities are in direct conflict.
>

The hostage situation predates all this new stuff. Perhaps now it's
not a hostage situation, but it definitely felt like it leading up to
RHEL 8's release. I felt like we were railroaded into the design that
we have today, and aside from some minor late-stage adjustments, we
felt really out of the loop for its actual development.


-- 
真実はいつも一つ!/ 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