Commit 3c0c20da78

3c0c20da787d91bcad19aec3b5e1b5c4ac5a4745

parent: c6e2981aef

Verified · cmc ci/build: success ci/sonar: success ci/test: success ci/vuln: success

cmc <hello@cleberg.net> · 2026-09-11 02:08 UTC

CHANGELOG: v1.18.1
CHANGELOG.org +36
@@ -4,6 +4,42 @@ Versioning follows semver from v0.1.0. Database migrations run
44automatically on daemon start; upgrade notes appear per release when
55anything beyond "replace the binary and restart" is needed.
66
7* v1.18.1 — 2026-09-11
8
9A runner that cannot hang on a dead connection, SSH keys with names,
10and dependency updates.
11
12** CI runner
13
14- Every ssh invocation carries =ConnectTimeout=10=,
15 =ServerAliveInterval=15= and =ServerAliveCountMax=3=, placed after
16 the identity and the operator's =-ssh-opts= so an operator's value
17 wins. A claim whose TCP session had died under it blocked a laptop
18 runner's poll loop for thirteen hours; it now fails within a minute
19 and the loop resumes.
20- The build comment in =deploy/Containerfile.ci= stages the file in
21 the runner user's home before =podman build=: a login shell under
22 =su= cannot read root's stdin and does not share root's =/tmp=.
23
24** Keys
25
26- SSH keys carry a label (migration 0051). =keys add --label= defaults
27 to the authorized_keys comment; =keys label <fingerprint> [<text>]=
28 renames or clears it. =keys list=, =admin user show=, =repo
29 deploy-key list= and the settings page show it. Deploy, runner and
30 admin-created keys take the comment as their label. Closes #208.
31
32** Web
33
34- Org autolinks stop before trailing punctuation: a bare URL closing a
35 sentence or a parenthesis no longer takes the =.=, =,= or =)= into
36 the href. Closes #209.
37
38** Dependencies
39
40- golang.org/x/crypto 0.57, x/image 0.46, x/net 0.59, x/term 0.46.
41 Closes #205.
42
743* v1.18.0 — 2026-09-10
844
945What the first real job on a user's runner needed. A twice-daily