RFR: Mark integrated Pull Requests as properly merged in GitHub repositories

Julian Waters jwaters at openjdk.org
Thu Nov 3 12:32:18 UTC 2022

On Tue, 1 Nov 2022 16:55:16 GMT, Julian Waters <jwaters at openjdk.org> wrote:

> Skara currently closes integrated Pull Requests, since the actual integration is done internally and then pushed to the repository separately. This makes every integrated request always look like it was closed to an outside observer, forcing the use of a special integrated flag to distinguish between integrated and closed, or rejected and closed. On top of that, it just looks awful in the interface all around (and is also not included in the accepted Pull Request count by GitHub for the committer, which is frustrating for newer contributors to a surprising extent). In the [willful absence of a reply from the GitHub team to allow marking a pull request as merged through a flag](https://github.com/orgs/community/discussions/12437), and GitLab being unlikely to make a similar change either, a workaround with minimal impact can be used instead: Every pull has a corresponding pre-integration branch created at the time it was made, and this special branch is marked for deletion when the 
 pull is integrated. Following the principle of waste not, want not, a change that is currently only implemented for GitHub repositories instead resets the pre-integration branch to the source ref of the pull request, then merges the request into it's own pre-integration branch before the actual deletion occurs, leaving minimal impact on most of Skara's infrastructure and with virtually no effect on already existing repositories.
> - [x] Properly handle all dependencies of the pre-integration branch before it's modified irreversibly
> - [ ] Change test code to match modified integration logic (if required)

I've only just realized that there are tests that require careful change whenever the integration marking code is modified. The existing integration sequence hasn't been touched whatsoever but there is new logic executed before it that I can't figure out whether the corresponding test code needs to be updated. Will add that as a task for now


PR: https://git.openjdk.org/skara/pull/1409

More information about the skara-dev mailing list