On Mon, 1 Mar 2021 at 15:31, Lars Knoll <lars.kn...@qt.io> wrote: > To fix this, we have now added a new feature (called parallel staging > branches), where CI rounds are not serialised anymore. Instead, COIN will > start a new CI run 15 minutes after a change (or a set of changes) got > staged. It will start that run independently of whether another CI run is > currently happening. If a staging branch passes, all the changes contained in > that branch will be merged into the target branch (can be a fast-forward > merge). If the merge produces a conflict, the staging branch will get > rejected even if it passed CI. > > This means that COIN will usually only test changes that are being staged > together. The advantages are that you can more easily pin down a change that > caused a CI failure, and that your changes will not get rejected because a > buggy change got staged in the same CI run (at least it’s a lot less likely). > > The one drawback is that we can in some rare cases end up with a repository > in a state where two staging branches passed CI and didn’t conflict when > merging them, but the merged state does not pass CI anymore for some reason. > > In that case the branch will be blocked until someone stages a fix for the > problem. But we do expect this to happen rather seldom, so I do believe that > the benefits far outweigh the drawback. > > For now this feature is only enabled in qtbase/dev, but if it works out well, > we will most likely enable it for further repositories and branches.
Hallelujah. _______________________________________________ Development mailing list Development@qt-project.org https://lists.qt-project.org/listinfo/development