It’s another monthly burst of news about bors-ng.

bors modifies the usual github CI workflow in a subtle but important way:

With regular github, the CI test (eg: travis-ci) needs to pass before the Merge button goes green - but the PR might be against a stale version of master, and the test does not have to pass against master+PR. There is a github option to enforce this too, but it puts the work on the user and requires them to rebase against HEAD before the merge button will go green.

After the PR has been “approved” (), bors rebases the PR and runs the CI bot (travis) *again against master+PR, and only merges if that passes. Iow, “approve-for-merge” is separated from “actually-merge”.

Subtle, but important :P

See https://graydon.livejournal.com/186550.html for the blog version of the above.

(*) bors approval is indicated with a bors r+ github comment. See https://bors.tech/documentation/ for other bot commands.

Angus Lees of bitnami

In the last month, we landed 5 PRs in the bors-ng repository.

“This Month in Bors” is written in public on GitHub. If you find a mistake, pull requests or issue reports are appreciated!

Notable Additions

  • notriddle fixed the appearance of tabs on the dashboard
  • notriddle fixed a case where bors blockd a PR on reviews even when it’s actually been fully approved twice
  • nbraud added CI inference for .appveyor.yml files

New Contributors

Want to see your name in this newsletter? Look at bors starters, a curated list of issues that are good for new contributors!

Who’s using bors?

This month’s featured user is DDraceNetwork, a mod of the Teeworlds video game. Teeworlds is an online multiplayer 2D shooter/platformer, but there’ve been modded servers for other things since the game was released in 2007. DDraceNetwork currently run the largest group of servers for racing to see who can get through a map the quickest.

Their custom server and client runs on Windows, Mac, and Linux. The original Teeworlds software didn’t have automated tests, but they’ve been adding some when they’ve added new functionality. Their server also maintains compatibility with the original Teeworlds client.

There’s a pre-bors blog post from a project member about their server setup.

Got any suggestions for next month? Post a comment on the July pull request.