Conversation

Has a tool ever been written for automated maintenance+CI of a downstream patch set / fork? In other words, I have an upstream repo, and I want to maintain my own repo which is upstream plus a set of patches. [1/2]
3
3
But whenever upstream receives a commit, I want automation to try applying the patch set on top of the new commit, and if it works, build+test the result. On failure, notify humans. There should be an explicit, mutable mapping of original commit -> patched commit. [2/2]
2
1
This could be useful in many scenarios. Linux distros’ package patches, Rust’s fork of LLVM, ungoogled-chromium, Linux hardware forks (though you should upstream!)… Today these tend to involve someone manually rebasing/merging, and as such only update upon major releases.
2
1
Replying to and
There is a fair bit of scripting being used but the core of our approach is keeping everything cleanly rebased and obsessively cleaning up / minimizing / reviewing our patch sets to the upstream repositories. Also, tricking upstream into doing our work for us tends to work well.
1
2
Replying to and
Chromium is used by a bunch of projects including major browsers like Microsoft Edge. The upstream open source project should really be a lot more vendor neutral in the first place. Should be easier to change defaults and services should be optional / have configurable provider.
1
Replying to and
I wouldn't want to deal with CI applying our Chromium patches repeatedly as it goes through development. If we had more resources, we'd rather start porting / testing patches to a Beta release for an upcoming major release and have most ready for the upcoming Stable release.
1
Show replies