MergeQueue - May updates
Aviator launch, ChangeSets, sticky comments, conditional checks, auto-update checks, and more
Highlights
🌟 Launching Aviator brand
🚀 ChangeSets - merge dependent PRs together
🚀 Sticky comments - real-time updates as PR comments without the noise
🚀 More slash commands!
🚀 Stacked PR updates
🚀 Advanced conditional status checks
🚀 Auto-updating Github status checks
🌟Aviator Launch
The cat is out of the bag! We are launching our new brand: Aviator
to continue on our mission of improving developer experience. You will see this reflected across the product in the coming weeks. We will share more when we officially announce.
New features
ChangeSets (beta)
Introducing ChangeSets to manage dependent PRs across multiple repositories together. Define all PRs that are part of the same ChangeSet, and our bot will validate and merge them together. You can also run global validations before merging changes together. Read the documentation.
Sticky comments
We introduced sticky comments to reduce noise in your PRs. Instead of posting a comment for each MQ bot update, the same comment will be updated in real-time with the most recent information.
The comment will provide info on the queue position and status checks:
Slash commands
Now you can queue / dequeue PRs directly using slash commands instead of adding label. Simply add comment on the PR /aviator merge
to queue and /aviator cancel
to dequeue the PR. Note that this requires accepting new permission changes to read/write issues
that we requested last month.
Stacked PRs (beta)
Thanks for giving feedback on our early version of managing stacked PRs. We are now building av
CLI for teams to effectively manage syncing and merging stacked PRs. Reply to us to get early access.
Advanced configuration for conditional status checks
Provide additional metadata in status checks for better control on status checks.
acceptable_statuses
- We previously considered all non success
statuses as failure. Now you can set custom acceptable statuses. This can only be set in your yaml configuration and is not available via the Merge Rules UI.
workflow_name
- If you have multiple checks with same name, you can additionally specify workflow name to uniquely identify them.
In the below example, MQ will only consider build
as passing if we receive a success
status. For check named conditional_build
, MQ will also consider a skipped
status as passing. Likewise, you can specify any acceptable status defined here.
version: 1.0.0
merge_rules:
labels:
trigger: mq
preconditions:
required_checks:
- build
- name: conditional_build
workflow_name: Conditional build tests
acceptable_statuses:
- success
- skipped
Pending CI statuses in real-time
In order to provide more information about the state of your queue, we have added real-time CI statuses to the queue page. This is reported for the PR at the top of the queue.
Let us know if you have more ideas on how to surface debug info that is useful for your team!
Auto-updating Github status checks
Last month, we requested read-only administration
access to read branch protection rules in your repo. If that is enabled, we will automatically update your GitHub required checks on the MQ side as soon as you make a change to your branch protection rules.
Bug fixes and improvements
Fixed lag in processing queue after unpausing
Default labels are created for new repos for a better onboarding process
Fast forwarding is now available for all on-prem users
Added webhook signature validation