fix: test-cargo-unit CI job timing out since LTO was enabled#91424
Merged
lukesandberg merged 2 commits intocanaryfrom Mar 15, 2026
Merged
fix: test-cargo-unit CI job timing out since LTO was enabled#91424lukesandberg merged 2 commits intocanaryfrom
lukesandberg merged 2 commits intocanaryfrom
Conversation
mischnic
approved these changes
Mar 15, 2026
Collaborator
Tests Passed |
Merging this PR will not alter performance
Comparing Footnotes
|
Collaborator
Stats from current PR✅ No significant changes detected📊 All Metrics📖 Metrics GlossaryDev Server Metrics:
Build Metrics:
Change Thresholds:
⚡ Dev Server
📦 Dev Server (Webpack) (Legacy)📦 Dev Server (Webpack)
⚡ Production Builds
📦 Production Builds (Webpack) (Legacy)📦 Production Builds (Webpack)
📦 Bundle SizesBundle Sizes⚡ TurbopackClient Main Bundles
Server Middleware
Build DetailsBuild Manifests
📦 WebpackClient Main Bundles
Polyfills
Pages
Server Edge SSR
Middleware
Build DetailsBuild Manifests
Build Cache
🔄 Shared (bundler-independent)Runtimes
📎 Tarball URL |
Contributor
Author
Merge activity
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

What
Fixes the
test cargo unitCI job which has been consistently timing out (30 min) on canary since #91343 landed on Mar 14.Why
Two issues were contributing to the timeout:
LTO on unit test binaries: Enable thin LTO for release builds #91343 added
lto = "thin"to[profile.release]. Therelease-with-assertionsprofile (used bytest-cargo-unit) inherits fromrelease, so it inherited LTO. Unlike the native binary build which only links one artifact,cargo nextest run --workspacebuilds test binaries for dozens of crates — each requiring its own LTO link pass. This pushed the build from ~8 minutes to 30+ minutes, exceeding the job timeout.No remote cache timeout or streaming output: The
turbo run test-cargo-unitcommand had no--remote-cache-timeout(unlike the build step which uses--remote-cache-timeout 60) and used turbo's default grouped log output, which buffers all output until the task completes. This made the job appear completely silent for 30 minutes before being killed, making it impossible to diagnose.How
release-with-assertions-no-ltocargo profile that inherits fromrelease-with-assertionsbut disables LTO, and switchedtest-cargo-unitto use it. The production native build continues to userelease-with-assertionswith LTO.--remote-cache-timeout 60 --log-order streamto the turbo command fortest-cargo-unitfor parity with the build step and real-time output visibility.