Skip to content

Commit 0774706

Browse files
committed
Build the coverage leg without DWARF
The self-update e2e suites serve the instrumented socket-patch as a release asset, and the updater refuses any binary over its 256 MiB cap. With line-tables-only debug info the instrumented binary is ~274 MB locally, and feat/bazel-support already pushed it over the cap in CI: 8 self-update tests fail in both coverage shards with "exceeds the 268435456-byte cap". coverage is the gating Linux test leg, so the next big feature merge would block the queue. llvm-cov reads the __llvm_cov* sections, not DWARF, and panic locations come from #[track_caller], so dropping debug info changes neither the LCOV nor the failure annotations. The binary drops to ~163 MB. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011f9aeQEJr2Vxu6jJ5Jh1hH
1 parent 7c5240e commit 0774706

1 file changed

Lines changed: 10 additions & 0 deletions

File tree

‎.github/workflows/ci.yml‎

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -692,6 +692,16 @@ jobs:
692692
contents: read
693693
env:
694694
VEXCTL_VERSION: v0.3.0
695+
# No DWARF in the instrumented build. llvm-cov maps coverage from
696+
# the __llvm_cov* sections, not debug info, and a panic's location
697+
# comes from #[track_caller], so neither the LCOV nor the failure
698+
# annotations change. The self-update e2e suites serve this very
699+
# binary as a release asset, and the updater refuses one over its
700+
# 256 MiB cap (MAX_BINARY_BYTES in update/download.rs). With
701+
# line-tables-only the instrumented socket-patch was ~274 MB
702+
# locally (~107 MB of it .debug_*), and feat/bazel-support crossed
703+
# the cap in CI; without DWARF it is ~163 MB.
704+
CARGO_PROFILE_DEV_DEBUG: '0'
695705
steps:
696706
- name: Checkout
697707
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

0 commit comments

Comments
 (0)