Sign in

Search issue titles and bodies, change requests and comments. Private repositories you cannot read are not included.

vole
Clone

Read only, no credentials:

https://rodent.software/vole.git

Write over SSH with a registered key:

git clone ssh://git@rodent.software:2222/vole.git

A free and open-source forge that lives in your Git repo.

Move followed requests when a landing moves the branch

e535ca55547e47705590df49b2ea571dc7b3fa61 · Keenan Nemetz · 4d ago · parent a32a859a

Move followed requests when a landing moves the branch

A landing moves its base branch inside the server, so post-receive never runs
and the open requests that follow that branch keep the pre-merge tip. A stacked
request then reviews code the branch no longer has: its page says "branch
moved", its checks are looked up for the old commit, and any approval it holds
names a commit that is no longer the head.

MarkMerged now moves those followers in the same metadata commit that marks the
request merged and closes its issues, so the landing and its followers cannot
disagree if the write is interrupted. The follower rule is one function shared
with SyncBranchHead instead of two copies.

Closes #196

docs/change-requests.md +5

@@ -106,6 +106,11 @@ review against the new base. Changing the base does not change the branch the
106 106 request follows; pick a different head branch too only if the upper branch itself
107 107 moved.
108 108
109 A landing moves the base branch without a push, and Vole still moves the open
110 requests that follow that branch onto the landed commit — the same rule a push to
111 the branch applies. So a lower request follows its branch when an upper request
112 lands into it, with no separate command.
113
109 114 ## Linking the issues it closes
110 115
111 116 A change request names the issues it fixes in its own metadata, not in its