On Thu, 15 Jun 2023 at 03:04, Petr Pisar <ppisar@redhat.com> wrote:
V Thu, Jun 15, 2023 at 01:33:38AM +0200, Kevin Kofler via devel napsal(a):
> Petr Pisar wrote:

> and accept that
> users now have to explicitly opt in to those modules.

That's exactly what killed the current modularity. Nobody felt a presure to
fix the tooling because Modularity was off by default.


I don't think anyone felt pressure to fix it before it was off by default. Fixes to problems with Fedora MBS were always 'coming real soon' for multiple releases before this decision was made. There have been multiple outages or slowdowns in the Fedora Build System over the years due to MBS issues which only got 'fixed' by herculean last minute efforts.

The truth is that this has been a vicious loop from the beginning. There was a general feeling with many developers inside and outside of Red Hat that no matter what problems they saw, they were going to have to like it or lump it. People who were proponents from the start got burned out either by the lack of fixes to the tooling or community pushback. People working on it felt like they were having to put parts of it in before it was ready but also left to handle the fallout from things not working well. 

Reviewing the past 3+ years, I would say that modularity would only work well if the entire 'build system' and work flow around it was built with that in mind. The Fedora system had nearly 20 years of established work flows, tooling and ideas when modularity was added and it never worked well. The CentOS Stream build system was designed from scratch but with many of the tools Fedora already used, and MBS worked better but still has had many issues of square peg in round hole. Remi's modularity seems to have worked best because of at least two things:
1. He designed his entire build workflow to work with his modularity system.  He redesigned how he was going to package and how he was going to deal with modules with tools which fit his workflow.
2. He controls what goes into his build system, when it goes into, and how packages look.
3. When it breaks, he is the only person affected by any breakage (aka there aren't 4000 developers trying to build other things at the same time).

In many ways I think that the first 2 items are the core to making modularity work anywhere. 

--
Stephen Smoogen, Red Hat Automotive
Let us be kind to one another, for most of us are fighting a hard battle. -- Ian MacClaren