From 7e0c768db7b4ad78907b756d966d24afc1e236ea Mon Sep 17 00:00:00 2001 From: James Munns Date: Wed, 22 Jul 2026 10:03:29 +0200 Subject: [PATCH] Drop to line-tables-only for debuginfo in new `binrelease` profile This allows for retaining panic messages and backtraces, without retaining all debuginfo. On linux, this is a significant size savings, 516.1MiB -> 181.4MiB, and also is a bit quicker to build, about 2m10s vs 2m41s on my Ryzen 1700X systems. This is an opt-in change, as it requires --profile binrelease, but this new profile is used for the nightly workflow, meaning that CI will pull this instead of the --release binary. --- .github/workflows/nightly.yml | 4 ++-- Cargo.toml | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 70e92df1b..d66862732 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -26,9 +26,9 @@ jobs: - uses: actions-rs/cargo@v1 with: command: build - args: --release + args: --profile binrelease - name: Upload Release - run: gh release upload --repo oxidecomputer/humility nightly --clobber target/release/humility + run: gh release upload --repo oxidecomputer/humility nightly --clobber target/binrelease/humility env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/Cargo.toml b/Cargo.toml index fdcb8e799..e500974a2 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -282,6 +282,10 @@ zip = "8.6.0" [profile.release] debug = true +[profile.binrelease] +inherits = "release" +debug = "line-tables-only" + [profile.ci] inherits = "release" debug = false