finds.dev← search

// the find

graydon/bors

★ 451 · Python · updated Dec 2021

Integration robot for buildbot and github

Bors is the original merge bot written for the early Rust project — it polls GitHub and Buildbot once per minute, advances PRs through a review-then-test-then-merge state machine, and exits. The original is explicitly dormant; the README points you to Homu and bors-ng as the living successors.

The stateless-cron design is genuinely clever for its era: no persistent daemon means no stuck processes, no corrupted in-memory state, and easy debugging by just running it manually. The state machine (UNREVIEWED → APPROVED → PENDING → TESTED → merged) is simple and readable. It solves a real problem — serializing merges so you never land a PR that breaks the branch after CI passed on the individual commit.

Password stored in plaintext JSON config (`gh_pass`) — this predates token-based auth and nobody has cleaned it up. Buildbot-only CI support means it's useless for anything running GitHub Actions, CircleCI, or modern pipelines without a rewrite. Last meaningful activity was 2013-era Python; the codebase will have compatibility friction on any current Python runtime. And the README itself tells you to go elsewhere — adopting this instead of bors-ng is choosing the ancestor over the maintained fork for no benefit.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →