fix: unbreak main CI (vulnerable TLS/QUIC deps, runner link memory) #28

Merged
jlxq0 merged 2 commits from fix/main-ci-deps-memory into main 2026-10-24 04:32:49 +00:00
Owner

main's own CI is red for two reasons that have nothing to do with any open change. This PR fixes both. It has to land before #27.

  • cargo audit has failed every scheduled run since 2026-09-15. There are eleven advisories across four transitive crates, and each crate has a semver-compatible fix:

    Crate From To Advisories
    quinn-proto 0.11.16 0.11.19 RUSTSEC-2026-0338..0342
    rustls 0.23.43 0.23.46 RUSTSEC-2026-0285, -0346, -0348, -0349
    rustls-webpki 0.103.14 0.103.16 RUSTSEC-2026-0382
    webpki-roots 1.0.9 1.0.11 RUSTSEC-2026-0381

    Only the lockfile changes. comemo and tiny-skia each still resolve to a single copy.

  • Out of memory on the shared runners. Runs 147 and 148 died with rustc and ld SIGKILLed while linking the test binaries. The cargo job now builds dev and test profiles with line-tables-only debuginfo and CARGO_BUILD_JOBS=2. The job keeps no needs: and no job-level if:, so CI / cargo is still a satisfiable required status.

Verified locally with the same environment variables: fmt, clippy -D warnings, the full test suite (including the 2 GiB debug-worker fixture), cargo audit, and cargo deny check bans licenses sources all pass. An independent session reviewed the change and passed it. The runner memory limit itself can only be measured by this PR's CI run.

🤖 Generated with Claude Code

https://claude.ai/code/session_014Tow3aw74AFPQwy1Smuqdo

`main`'s own CI is red for two reasons that have nothing to do with any open change. This PR fixes both. It has to land before #27. - **`cargo audit`** has failed every scheduled run since 2026-09-15. There are eleven advisories across four transitive crates, and each crate has a semver-compatible fix: | Crate | From | To | Advisories | |---|---|---|---| | quinn-proto | 0.11.16 | 0.11.19 | RUSTSEC-2026-0338..0342 | | rustls | 0.23.43 | 0.23.46 | RUSTSEC-2026-0285, -0346, -0348, -0349 | | rustls-webpki | 0.103.14 | 0.103.16 | RUSTSEC-2026-0382 | | webpki-roots | 1.0.9 | 1.0.11 | RUSTSEC-2026-0381 | Only the lockfile changes. `comemo` and `tiny-skia` each still resolve to a single copy. - **Out of memory on the shared runners.** Runs 147 and 148 died with rustc and ld SIGKILLed while linking the test binaries. The `cargo` job now builds dev and test profiles with `line-tables-only` debuginfo and `CARGO_BUILD_JOBS=2`. The job keeps no `needs:` and no job-level `if:`, so `CI / cargo` is still a satisfiable required status. Verified locally with the same environment variables: fmt, clippy `-D warnings`, the full test suite (including the 2 GiB debug-worker fixture), `cargo audit`, and `cargo deny check bans licenses sources` all pass. An independent session reviewed the change and passed it. The runner memory limit itself can only be measured by this PR's CI run. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_014Tow3aw74AFPQwy1Smuqdo
`cargo audit` has failed main's scheduled run every day since 2026-09-15.
Eleven advisories in four transitive crates, all fixed in semver-compatible
releases: quinn-proto 0.11.16 -> 0.11.19 (RUSTSEC-2026-0338..0342), rustls
0.23.43 -> 0.23.46 (RUSTSEC-2026-0285, -0346, -0348, -0349), rustls-webpki
0.103.14 -> 0.103.16 (RUSTSEC-2026-0382), webpki-roots 1.0.9 -> 1.0.11
(RUSTSEC-2026-0381). Lockfile only; comemo and tiny-skia stay single copies.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014Tow3aw74AFPQwy1Smuqdo
fix(ci): link the cargo job's binaries within the runner's memory
Some checks failed
CI / cargo (pull_request) Successful in 5m56s
CI / docker (pull_request) Failing after 12s
75174cc94b
Runs 147 and 148 on the build-*-general runners died with rustc and ld
SIGKILLed while linking typst-mcp's test binaries. Line-tables-only debuginfo
for dev and test keeps file:line in panics at a fraction of the link memory,
and two build jobs cap concurrent links. The job keeps no `needs:` and no
job-level `if:`, so CI / cargo stays a satisfiable required status.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014Tow3aw74AFPQwy1Smuqdo
jlxq0 merged commit dd97f7134a into main 2026-10-24 04:32:49 +00:00
jlxq0 referenced this pull request from a commit 2026-10-24 04:44:49 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
jlxq0/typst-mcp!28
No description provided.