Skip to content

Commit 3ca3e61

Browse files
prontclaude
andauthored
fix(ci): use CUE raw multi-line strings in release generator (#25228)
Fragment descriptions are embedded into CUE via `"""..."""`, where backslashes are still interpreted as escape sequences. A fragment containing e.g. a shell line continuation (`\<newline>`) produces invalid CUE and breaks `cue export`, which is then used by the next `cargo vdev release prepare` invocation. Switch to raw multi-line strings (`#"""..."""#`) so backslashes are literal and no escaping is needed on the description content. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 0f7574a commit 3ca3e61

1 file changed

Lines changed: 5 additions & 2 deletions

File tree

scripts/generate-release-cue.rb

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -217,11 +217,14 @@ def generate_changelog!(new_version)
217217

218218
# Note: `pr_numbers`, `scopes` and `breaking` are being omitted from the entries.
219219
# These are currently not required for rendering in the website.
220+
# Use CUE raw multi-line strings (#"""..."""#) so backslashes in the
221+
# fragment (e.g. shell line continuations) are not interpreted as
222+
# escape sequences.
220223
entry = "{\n" +
221224
"type: #{type.to_json}\n" +
222-
"description: \"\"\"\n" +
225+
"description: #\"\"\"\n" +
223226
"#{description}\n" +
224-
"\"\"\"\n"
227+
"\"\"\"#\n"
225228

226229
if contributors.length() > 0
227230
entry += "contributors: #{contributors.to_json}\n"

0 commit comments

Comments
 (0)