On 17/05/26 15:08, Johannes Schauer Marin Rodrigues wrote:
Hi,
Quoting Gioele Barabucci (2026-05-17 14:14:51)
* The only solution to this problem is that 1) all buildd chroots must be
updated at the same time, and 2) all binNMU must run inside the same dinstall
window. Otherwise there will always be the risk of package version skew and
M-A issues.
synchronizing start times to the dinstall window is not sufficient. buildds use
https://incoming.debian.org/debian-buildd as an additional mirror. Depending on
how fast the same package builds on each architecture, that mirror frequently
carries different package versions for different architectures.
Someone on IRC (sorry, I forgot who) suggested that all binNMU could run
using a snapshot of the archive at the time the binNMU has been
requested (à la debrebuild). This would in fact simulate having all
binNMUs running inside the same dinstall window.
So one possible solution would be:
* All buildd chroots are generated at the same time and are ensured to
have no version skew.
* A mechanism ensures that the "request time" for a set of binNMUs is
recorded and passed to all arch-specific buildds.
* The dependencies of binNMUs are not fetched from the normal archive,
but from a snapshot of the archive taken when the binNMUs are requested.
* The snapshot does not only take the normal archive into account, but
also incoming.d.o. (Is this already the case?)
Unfortunately, automating all this requires extra infrastructural code
that does not exist, IIUC.
Regards,
--
Gioele Barabucci