/
GitHub Merge Queue

GitHub Merge Queue

Update - disabled Feb 14 2025

  • branch protection (rulesets) set back to previous ie

    • combined main + release*

    • disallow force pushes to any branches

Issues found

Update - Tried merge queue again since it’s out of beta and there’s a lot of approved PRs to merge

Action plan to try the experiment:

  • enable merge queue on besu

    • you can't enable it on rulesets with * match so would need to duplicate the ruleset - have a separate one for release*

  • merge this PR #8284 which hopefully will help with flaky ATs

  • add a bunch of other PRs to merge queue - we live with the merge commit message being the PR description - there's 10 approved

  • if it doesn't work (only problem I see being flaky tests mean merge queue doesn't help), can switch off merge queue again - back to status quo

 

Update - disabled ~ Mar 17 2023

Issues found

 

Update - enabled on Mar 13 2023. DCO required adjusting as per https://github.com/hyperledger/besu/pull/5207

Essentially this works the same as enabling auto-merge, except that any additional "merge from main" actions are automated.

Impacts on current workflow

  • once the merge queue is enabled, it's a requirement - so all PRs will be merged via the queue.

  • to add your PR to the merge queue, you need to click the green "merge when ready" button" just as you would click the "enable auto-merge" button

  • "squash merge commits" is done automatically

  • avoiding unnecessary merge conflicts - think about inserting into a sensible place in the changelog, rather than appending to the end by default

  • when there's a merge conflict, the PR with the conflicts gets kicked out of the merge queue and manual intervention is required - same as if you had enabled "auto-merge"

Discussion in Feb 28 contributor call on enabling the merge queue 2023-02-28 Contributor Call - APAC Friendly Time after 23.1.1 release

Note - it's part of "branch protection" - so you turn it on for specific branch protection rules.

This feature is still in beta - discussion https://github.blog/changelog/2023-02-08-pull-request-merge-queue-public-beta/

Link to Besu merge queue (when enabled) would be https://github.com/hyperledger/besu/queue/main