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.

Require a linked issue when a change request opens

0789f22ea633bf995417893c0052abb6a36d5520 · Keenan Nemetz · 9d ago · parent 1265ea55

Require a linked issue when a change request opens

Add a per-repository policy for teams that want every proposed update to trace back to an issue. The browser marks Closes as required, and the pre-receive hook applies the same rule to requests added through the CLI or a hand-written metadata commit. Existing requests stay editable and landable.

forge/access/acl_test.go +4

@@ -251,6 +251,7 @@ func TestJSONRoundTrip(t *testing.T) {
251 251 t.Parallel()
252 252 a := Empty("keenan")
253 253 a.Protected = []string{"refs/heads/main"}
254 a.RequireLinkedIssue = true
254 255 b, err := a.Bytes()
255 256 if err != nil {
256 257 t.Fatal(err)
@@ -265,6 +266,9 @@ func TestJSONRoundTrip(t *testing.T) {
265 266 if !got.IsProtected("refs/heads/main") {
266 267 t.Fatal("protection lost")
267 268 }
269 if !got.RequiresLinkedIssue() {
270 t.Fatal("linked-issue rule lost")
271 }
268 272 }
269 273 func TestParseRejectsBadRoles(t *testing.T) {
270 274 t.Parallel()