On Sat, Jan 18, 2025 at 5:07 PM Michal Schorm <mschorm@xxxxxxxxxx> wrote: > > On Sat, Jan 18, 2025 at 4:33 PM Miroslav Suchý <msuchy@xxxxxxxxxx> wrote: > > Dne 18. 01. 25 v 11:01 dop. Mattia Verga via devel napsal(a): > > > I think some of the build failures are due to building things out of > > > sequence. > > > > I agree with Fabio in this thread, that it is (should not be) the case. > > > > > The optimal solution would be to have some script that periodically > > > creates a tree of buildrequires dependency for all Fedora packages... > > > but that would require some work. So, I was just thinking, what about to > > > set up a simple repository where we put some text files like: > > > > As one of the Mock developer, I have seen several people trying to create script that build-order packages. All of them > > failed. Including me. > > > > There are lots of traps: > > ... > > ... > > ... > > My $0.02 - if you try to write something, write is simple and dumb. Not general. Based on the data from last rebuild. > > Count with the errors. As it does not be 100% correct. Even if it takes several percent of failures down it will be > > improvement. > > An idea: > What instead of guessing the dependencies beforehand, we would just > use the last known set. > We get that generated for free during every build. So if we just > preserve and parse the root.log every time a production build > succeeds, > we have exactly that "based on the data from the last rebuild" you mentioned. > > Don't we already preserve the logs of production builds that reach > stable, anyway? > > I see only 2 main flaws with this: > - commits added between the last successful build and the mass rebuild > may cause differences > - we usually do mass rebuild for Rawhide. At that time, many packages > had not yet been built even once for Rawhide (that's why we do a mass > rebuild). However there may already be present macros changing the > behaviour specifically in that Fedora release. > > In both cases, we expect just minor deviances, so the overall graph > should be mostly correct, > and that sounds like a good value to effort ratio to me. And that gives you a huge non-acyclic graph. What then? You can't apply a topological sort on a graph with cycles. As I mentioned previously, if the build order during the mass rebuild makes a difference *at all*, then something went wrong *before the mass rebuild started*. Fabio -- _______________________________________________ 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, report it: https://pagure.io/fedora-infrastructure/new_issue