Changelog
-
ADD: enable "squash" merge mode for multi-commit PRs
After 4 years, the world is apparently ready. Squashing tries to preserve
authorship, depending on the number of authors (and committers) on the PR.
Squashing does not preserve any part of existing commit messages. -
FIX: lock in statuses at the end of a staging
The statuses of a staging are computed dynamically. Because github associates
statuses with commits, rebuilding a staging (partially or completely) or using
one of its commits for a branch could lead to the statuses becoming inconsistent
with the staging e.g. all-green statuses while the staging had failed.By locking in the status at the end of the staging, the dashboard is less
confusing and more consistent, and post-mortem analysis (e.g. of staging
failures) easier. -
IMP: make timestamps and batch labels selectable
In the list of stagings for a branch, the timestamps and batch labels were not
selectable, which was inconvenent for cross-referencing and copy/pasting. They
should now be selectable. -
REV: don't automatically close PRs when their branch is disabled
Turns out that breaks FW chains and makes existing forward ports harder to
manage, so revert that bit. Do keep sending a message on the PR tho.
2022-06
-
ADD: automated provisioning of accounts from odoo.com
-
FIX: correctly handle PR empty PR descriptions
Github's webhook for this case are weird, and weren't handled correctly,
updating a PR's description to or from empty might be mishandled. -
FIX: properly unstage pull requests when they're retargeted (base branch is changed)
-
IMP: automatically close PRs when their target branch is deactivated
Leave a message on the PRs to explain, such PRs should also be reopen-able if
the users wants to retarget them. -
IMP: review pinging (
@-notification) of users by the mergebot and forwardbotThe bots should more consistently ping users when they need some sort of action to proceed.
-
IMP: show current alerts (disabled crons) on the PR pages
-
IMP: various UI items
- more clearly differentiate between "pending" and "unknown" statuses on stagings
- fix "outstanding forward ports" count
- add date of staging last modification (= success / failure instant)
- correctly retrieve and include fast-forward and unstaging reasons
- show the warnings banner (e.g. staging disabled) on the PR pages, as not all
users routinely visit the main dashboard
2021-10
-
ADD: a changelog feature you can now see here
-
ADD: squash-mode, currently only for single-commit PRs to make it easier to edit commit messages when they're incorrectly formatted
-
CHG: reject reviewers without an email configured, the fallback to
@users.noreply.github.comturns out to be confusing -
FIX: correctly display the error message when a PR is in error
-
FIX: don't rewrite commit titles, this can lead to odd effects when it's incorrectly formatted and interpreted as a pseudo-header
-
FIX: ensure the merge message matches the up-to-date PR descriptions, the two could desync if we'd missed an update
-
IMP: add reviewer and direct link to backend in PR pages
-
IMP: allow delegate reviewers to set merge methods
2021-09
-
ADD: mergebot should not accept merging draft PR anymore
-
ADD: refuse merging commits without an email set, this is mostly to be used by the forwardport-bot
-
ADD: when integrating a PR via rebasing, tag all the commits with the source PR so they're easier to find
-
FIX: two PRs with the same label in different projects should not be considered linked anymore
-
FIX: when a PR fails at staging, link the correct status in the message posted on the PR
-
FIX: when fetching an unknown PR and it's closed, don't lose that information
-
IMP: cleanup timestamp displays, always show the tzoffset, UTC on hover in the main page (easier to relate to logs), local in the per-branch listing
-
IMP: keep showing linked PRs after a PR has been merged