Quoting Christian Hesse (2025-11-07 08:48:07)
> At Arch Summit 2025 we had a chat about that situation and discussed several
> ideas. In the end we came up with one reasonable solution:
> We should introduce new repositories [core-unstable] and [extra-unstable] for
> this kind of testing. People would still have to enable these repositories,
> but I guess chances are higher than for my personal repository.
> [...]
> Feedback is welcome, same for other ideas - this is not set in stone and I am
> open for anything that works for me/us. Thanks!

Thanks for the idea! Even though I don't think this isn't the "right"
"full" solution to a broader underlying challenge (e.g., it doesn't
really address closely related issue of overlapping rebuilds), I love
taking a simple and pragmatic approach here.

Having read through the thread, I am still slightly unsure I understand
the proposed layout. Is it (i) a linear chain

    [extra] <- [extra-unstable] <- [extra-testing] <- [extra-staging],

where the core principle that packages earlier in the chain (i.e.,
further right in the illustration above) are "newer" packages and
correspond to "more recent" Git commits?

This is a layout that'd work well with the current Git structure but has
other implications, such as unstable releases always "blocking"
overlapping rebuilds; i.e., the rebuild adopts the unstable release and
can only move once the unstable release is ready to move too. I believe
it also wouldn't address the example you brought up in the initial
email.

Or is a better way to think of it as (ii) a branched repo

    [extra] <- [extra-testing] <- [extra-staging],
         ^
          `--- [extra-unstable]

where the order in the pacman configuration would probably still be the
same as above but there's now branched package history/evolution.

This second layout would most likely need a related branching concept in
Git and brings up some other questions; e.g.,

* Can I enable -testing and -unstable repos at the same time or are they
  mutually exclusive?

* How should I, as a user, choose between -unstable and -testing repos?

* If -testing and -unstable can be enabled at the same time, what
  happens if there's an -unstable version of the package while the
  package is part of some ongoing rebuild at the same time? Does the
  rebuild or the -unstable version "win"? Or do we need to rebuild the
  -unstable version as well when it moves to -testing (which seems to
  imply that -testing and -unstable now *must* be enabled together to
  avoid breakage)?

* In either case, what happens when a rebuild enters the stable repos;
  are we expected to rebuild all potentially affected -unstable packages
  as well?

It'd be good to have provisional answers here and flesh them out in an
RFC if we'd like to move forward.

Thanks again!
Lukas

Reply via email to