Automating patch pushes to trunk via the bot
A proposal to allow a bot to automatically push approved patches to the GCC trunk is being discussed, with considerations for existing workflows and potential…
Yuao Ma proposes enabling a bot to automatically push/merge approved patches to the GCC trunk, citing OpenJDK’s Skara bot as a precedent. This aims to streamline the contribution process by reducing manual interaction after code reviews. The discussion touches on the current workflow, the value proposition of using a web-based system for merging, and the need for more engagement with the forge.
- proposer
Proposes enabling a bot to automatically merge approved patches to the GCC trunk, similar to OpenJDK's workflow, to streamline the contribution process.
“I am wondering if we could enable the bot account to push/merge patches on our behalf. A good precedent for this is OpenJDK's workflow, which uses the Skara bot (open-sourced at https://github.com/openjdk/skara). For example, contributors can trigger integration directly from the PR interface: https://github.com/openjdk/jdk/pull/32721#issuecomment-5749064779 Could we explore doing something sim…”
- reviewer
Acknowledges the proposal and notes that the current forge-to-mailing-list process has been working acceptably, but agrees that automating merges would add significant value and improve engagement.
“In the past year me and others tried to bridge contributions on the forge with the mailing list by making sure that everything done on the forge gets emailed. Some hiccups occurred but it seems to me that the process has been working well enough for a while now. I'd love to get feedback that this is not the case so I can address it BTW. With that in place, the question becomes how to get more va…”
- reviewer
Asks for clarification on the specific benefits and potential drawbacks of automating patch pushes.
- reviewer
Asks for clarification on the current state of the forge integration and how it currently interacts with the mailing list.
Technical Tradeoffs
- Potential for errors if automation is not robust.
- Need to ensure all review and CI checks are properly integrated before merging.
In Details
This RFC discusses automating the merging of reviewed patches from the GCC web forge directly into the main repository. It contrasts with the current manual merge process and seeks to improve developer workflow efficiency, similar to other projects.
- Forge
- A web-based platform for code hosting, review, and collaboration, such as the one used for GCC development.
- Trunk
- The main development branch of a software project, where new features and changes are integrated.
- RFC
- Request For Comments, a type of proposal seeking community feedback before implementation.
- CI
- Continuous Integration, an automated process of frequently merging code changes from developers into a central repository.