[Development] Solutions for ensuring that changes in upstream modules are tested with downstream modules before merging
ulf.hermann at qt.io
Wed Jun 16 13:20:29 CEST 2021
I'd like to remind everyone to the fact that the current dependencies
model was intentionally chosen for faster iteration during early Qt 6
development. We _wanted_ to allow breaking things in other modules so
that we could move on. The breakage was to be fixed later, possibly
after multiple other changes were in.
Before this, we had a "private API revision" in qtdeclarative, and every
time we changed something about the private API, the revision had to be
incremented, then all dependent modules had to receive some #if'ery to
support both, old and new API revisions, and only then the change could
be fully integrated. Afterwards, all the #if'ery could be removed again.
This is obviously not a very efficient way of managing changes.
We may consider the phase of rapid iteration to be over and revert to
the old model, but that should be a choice, too, not just a side effect
of some test strategy.
More information about the Development