What’s New in Mergify, 2020Q1 Edition

What’s New in Mergify, 2020Q1 Edition

Julien Danjou

As usual, this quarter has been a busy one for us. We still grow and helped many new users getting on board and automating their workflow.

A lot of our effort this past quarter has been put in improving our engine and dashboard. Many of the changes we did are not directly visible to our users, so we won’t bother talking about them here. You might have noticed some of them if you were bitten by a bug we fixed, otherwise, it might be business as usual for you.

While we continuously prepare and improve for our constant growth, we have to make trade-offs between time spent introducing new features and time spent solving our technical debt.

Our engineering team has close to 40 years of experience combined and knows one thing: cash is king. If you want to last in this computer business, you have to pay down your technical debt as soon as possible to be able to grow and avoid exploding in flight.

That being said, let’s talk about new features!

Backport & Conflicts

We told the story of the backport action and its new features a few weeks ago. For those who didn’t follow, here’s a quick recap.

The backport action will now prevent creating backport pull requests if there is a conflict cherry-picking the commits. You can change this behavior by enabling the ignore_conflicts option.

If you do so, Mergify will add a label to a conflicting pull request. This is made to be able to match those pull requests with your automation rules. The default label name is conflicts, but if you fancy customizing your labels, you can pick a better name with the label_conflicts option.

Backport documentation

Mass Deletion of Labels

Some of our users like labels, some don’t. And while some abuse them, they also need to get rid of them once in a while.

It can be tedious or impossible to list all the labels you want to delete for your pull request, especially you want to delete them all.

Therefore, the label action now comes with a new option named remove_all that removes every label.

And that’s all we got for this quarter. Take care!