Commit552316ecRecorded25 Aug 2026Repositorybureau

Bump sigil-log range to ^0.17

Message

sigil-log v0.17.0 quotes and escapes log field VALUES and sanitises field KEYS, closing a log-forgery hole: a string value carrying whitespace and an equals sign used to render as several convincing fields, and a value carrying a newline forged a whole log event. bureau logs untrusted input, so it needs the fix.

A caret range stops at the minor pre-1.0, so ^0.16 cannot resolve 0.17.0 and the range genuinely has to move. sigil.lock is re-resolved by sigil deps install, which moves only this entry; every other pin is left where it was.

Log output changes for anything that reads or parses these lines. Measured across 27 realistic values by the release: 15 render identically, 12 change. A value is now quoted if and only if it contains a space, an =, a ", a , a control character or a Unicode separator, or is empty.

Changed
 package.sgl | 2 +-
 sigil.lock  | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)
Diff
package.sglmodified
@@ -39,7 +39,7 @@
39
40
dependencies: (list
41
(from-git url: "codeberg:sigil/sigil-json" version: "^0.16")
−42
(from-git url: "codeberg:sigil/sigil-log" version: "^0.16")
+42
(from-git url: "codeberg:sigil/sigil-log" version: "^0.17")
43
;; Explicit sigil-lib pin. Two independent reasons, both measured:
44
;; 1. Without it, sigil-lib is derived transitively and does not track
45
;; the `sigil:` field, so a relock can silently leave the C runtime
sigil.lockmodified
@@ -13,9 +13,9 @@
13
version: "0.16.0")
14
(package name: "sigil-log"
15
url: "codeberg:sigil/sigil-log"
−16
ref: "^0.16"
−17
sha: "56e4fc5a52dc370c037ef14502bb8d6d2876dc53"
−18
version: "0.16.0")
+16
ref: "^0.17"
+17
sha: "e50644a2d73729cca94f7c6dfd4934f4d8530c21"
+18
version: "0.17.0")
19
(package name: "sigil-lib"
20
url: "codeberg:sigil/sigil"
21
ref: "^0.18"