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.

Document how a change request links the issues it closes `vole change new` and `vole change update` take `--closes`, and the request's metadata is what the page shows and what landing the request closes. None of the guides said so: `docs/cli.md` listed neither flag, `docs/change-requests.md` never mentioned the field, and `CONTRIBUTING.md` showed the opening command without it.

a0a7c73a67594f772ad9796dc570d81a68e5ab63 · Keenan Nemetz · 13d ago · parent c765ae2e

Document how a change request links the issues it closes
`vole change new` and `vole change update` take `--closes`, and the
request's metadata is what the page shows and what landing the request
closes. None of the guides said so: `docs/cli.md` listed neither flag,
`docs/change-requests.md` never mentioned the field, and `CONTRIBUTING.md`
showed the opening command without it.

That gap has a cost beyond being incomplete: a description that says
`Fixes #<ulid>` looks like it links the issue, so a request can land
without closing the issue it was meant to fix, and nobody notices until
the issue is still open on a merged change.

The workflow guide now has a section on the link — set it at open or
while the request is open, replaced rather than appended, full ids that
must exist, and only landing closes — the command reference lists the
flags, and CONTRIBUTING points at `--closes` and says the prose form is
only text.

docs/cli.md +6−3

@@ -164,20 +164,23 @@ Ids and comment ids accept a unique prefix. See [Issues](issues.md).
164 164 ## Change requests
165 165
166 166 ```sh
167 vole change new --title <title> --base <branch> [--head <rev>] [-m <text> | -F <file>]
167 vole change new --title <title> --base <branch> [--head <rev>] [--closes <issue>]... [-m <text> | -F <file>]
168 168 vole change list [--state open|closed|all] [--format <fmt>]
169 169 vole change show <id>
170 170 vole change comment <id> [-m <text> | -F <file>] [--path <file> --line <n> [--side new|old]] [--reply-to <comment-id>]
171 171 vole change edit-comment <id> <comment-id> [-m <text> | -F <file>]
172 172 vole change rm-comment <id> <comment-id>
173 vole change update <id> --head <rev>
173 vole change update <id> [--head <rev>] [--closes <issue>]... [--no-closes]
174 174 vole change approve <id> [--as <account>]
175 175 vole change close <id>
176 176 vole change reopen <id>
177 177 ```
178 178
179 179 `change` also accepts `request`, `requests` and `cr` as compatibility aliases. An
180 approval is only accepted from the account it names. See [Change requests](change-requests.md).
180 approval is only accepted from the account it names. `--closes` takes a full
181 issue id (repeatable, comma lists accepted) and names the issues landing the
182 request closes; it replaces the list on `update`, and `--no-closes` clears it.
183 See [Change requests](change-requests.md).
181 184
182 185 ## Releases
183 186