This reminds me of the original system I proposed for Rust back when
it reached the point where PRs were coming in faster than we could
test them. It's similar to what Michael proposed, though a bit more
involved: https://gist.github.com/Manishearth/f2971973e164be03890a
(yes, it does allude to binary search :p)

At the time, Firefox's model wouldn't fit well because semantic
conflicts during merge are an issue -- not actual git merge conflicts,
but two changes which are compatible with their respective parents
but not with each other. These are less of an issue in Servo or Firefox,
because these aren't bootstrapping compilers :)

Rust finally went with manual rollups -- they used to be really time
consuming but now it's mostly okay. Intermittents were a big
problem then, too, and would have broken this model completely.
Currently Servo has a pretty high rate of intermittents,

-Manish Goregaokar
_______________________________________________
dev-servo mailing list
dev-servo@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-servo

Reply via email to