On 2026-09-25 3:20 AM, Richard W.M. Jones via devel wrote:
There are two approaches.  The one I'm going to call the Good One (my
opinion) is that we build a coherent distribution with one version of
each package.  Libraries are built with stable APIs and backwards
compatibility in mind.


Fedora doesn't develop most of those libraries, we distribute them. I don't think it makes sense to maintain a build system that only works if development is done the way we wish it were done.


The Bad One is we just chuck everything together and do what works,
without caring about the long term.  This is certainly effective at
making something that works, but hides long term debt, including
serious security issues, which matters more than ever.


The idea that applications will lag and use old libraries is a common objection, which is weird because the only project has has been demonstrated with "upstream-release" branches needs them because they're ahead of the distribution.

It's Fedora, today, that is using old versions, not decoupled applications.

I suspect that many people will dismiss that as insufficient evidence, so I checked Rawhide recently:

https://github.com/gordonmessmer/rawhide-lag-tracker

https://drive.google.com/drive/folders/1axHOgq6LsODDmAA-D-C12StPs2jpI2Qq?usp=sharing

About 1/6 of packages in Rawhide are, in my opinion, significantly behind upstream. Meaning they're on the current release series but more than 3 patches behind, or they're not on the current release series at all. Another 1/6 of packages don't have release-monitoring set up nor a Url that references a VCS (which, I know, is not required) and are difficult to check without manual work. So, somewhere between 1/6 and 1/3 of packages are lagging, in Rawhide.

If you are concerned about shipping old packages, then upstream-release branching is the *solution*, not the problem.

The process we have in place today, where we try to build everything around one release of every shared component, actually make it harder to keep things up to date. They require more coordination than a system that offers upstream-release branches. Shared components require extra care to update because they might impact applications, and applications sometimes can't be updated because the shared components aren't ready yet.


--
_______________________________________________
devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]
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/[email protected]
Do not reply to spam, report it: 
https://forge.fedoraproject.org/infra/tickets/issues/new

Reply via email to