Compare commits

..

2 commits

Author SHA1 Message Date
Austin Schaefer
9429ca100a Merge branch 'worktree-desktop-support' of ssh://code.austinschaefer.com:22222/schaefera/feedsignal into worktree-desktop-support
All checks were successful
CI / fmt (pull_request) Successful in 11s
CI / clippy-native (pull_request) Successful in 6m1s
CI / clippy-web (pull_request) Successful in 3m50s
CI / clippy-server (pull_request) Successful in 4m59s
CI / clippy-desktop (pull_request) Successful in 4m28s
CI / test (pull_request) Successful in 6m9s
CI / audit (pull_request) Successful in 28s
2026-09-16 15:22:45 +02:00
Austin Schaefer
9a9cd9d1d3 Stop caching target/ and fix sccache's per-run cache key
target/ was the majority of the ~1.5GB cache each of the 5 CI jobs
tarred and uploaded on every run — expensive on a single runner where
those uploads contend for the same disk/network, and pointless since
these jobs build different feature-set combinations into one
identically-keyed target dir anyway. sccache already gives compiler-
level reuse without that duplication.

sccache's cache key was keyed to github.run_id, which never gets an
exact hit, so its ~377MB also re-uploaded in full every single run
with no benefit. Key it to Cargo.lock like the registry cache instead,
so it only re-saves when dependencies actually change.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-16 15:22:30 +02:00

View file

@ -24,7 +24,6 @@ jobs:
path: | path: |
~/.cargo/registry ~/.cargo/registry
~/.cargo/git ~/.cargo/git
target
key: cargo-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }} key: cargo-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }}
restore-keys: | restore-keys: |
cargo-${{ runner.os }}- cargo-${{ runner.os }}-
@ -33,10 +32,11 @@ jobs:
uses: actions/cache@v4 uses: actions/cache@v4
with: with:
path: /root/.cache/sccache path: /root/.cache/sccache
# Not keyed to Cargo.lock: sccache caches individual compiler # Keyed to Cargo.lock, not github.run_id: a per-run key never
# invocations by content hash, so it should accumulate across # gets an exact hit, so actions/cache re-uploads the full
# dependency bumps rather than reset like the target/ cache above. # sccache dir on every single run even when nothing changed.
key: sccache-${{ runner.os }}-${{ github.run_id }} # This still refreshes whenever dependencies bump.
key: sccache-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }}
restore-keys: | restore-keys: |
sccache-${{ runner.os }}- sccache-${{ runner.os }}-
@ -54,7 +54,6 @@ jobs:
path: | path: |
~/.cargo/registry ~/.cargo/registry
~/.cargo/git ~/.cargo/git
target
key: cargo-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }} key: cargo-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }}
restore-keys: | restore-keys: |
cargo-${{ runner.os }}- cargo-${{ runner.os }}-
@ -63,7 +62,7 @@ jobs:
uses: actions/cache@v4 uses: actions/cache@v4
with: with:
path: /root/.cache/sccache path: /root/.cache/sccache
key: sccache-${{ runner.os }}-${{ github.run_id }} key: sccache-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }}
restore-keys: | restore-keys: |
sccache-${{ runner.os }}- sccache-${{ runner.os }}-
@ -81,7 +80,6 @@ jobs:
path: | path: |
~/.cargo/registry ~/.cargo/registry
~/.cargo/git ~/.cargo/git
target
key: cargo-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }} key: cargo-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }}
restore-keys: | restore-keys: |
cargo-${{ runner.os }}- cargo-${{ runner.os }}-
@ -90,7 +88,7 @@ jobs:
uses: actions/cache@v4 uses: actions/cache@v4
with: with:
path: /root/.cache/sccache path: /root/.cache/sccache
key: sccache-${{ runner.os }}-${{ github.run_id }} key: sccache-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }}
restore-keys: | restore-keys: |
sccache-${{ runner.os }}- sccache-${{ runner.os }}-
@ -115,7 +113,6 @@ jobs:
path: | path: |
~/.cargo/registry ~/.cargo/registry
~/.cargo/git ~/.cargo/git
target
key: cargo-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }} key: cargo-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }}
restore-keys: | restore-keys: |
cargo-${{ runner.os }}- cargo-${{ runner.os }}-
@ -124,7 +121,7 @@ jobs:
uses: actions/cache@v4 uses: actions/cache@v4
with: with:
path: /root/.cache/sccache path: /root/.cache/sccache
key: sccache-${{ runner.os }}-${{ github.run_id }} key: sccache-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }}
restore-keys: | restore-keys: |
sccache-${{ runner.os }}- sccache-${{ runner.os }}-
@ -143,7 +140,6 @@ jobs:
path: | path: |
~/.cargo/registry ~/.cargo/registry
~/.cargo/git ~/.cargo/git
target
key: cargo-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }} key: cargo-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }}
restore-keys: | restore-keys: |
cargo-${{ runner.os }}- cargo-${{ runner.os }}-
@ -152,7 +148,7 @@ jobs:
uses: actions/cache@v4 uses: actions/cache@v4
with: with:
path: /root/.cache/sccache path: /root/.cache/sccache
key: sccache-${{ runner.os }}-${{ github.run_id }} key: sccache-${{ runner.os }}-${{ hashFiles('**/Cargo.lock') }}
restore-keys: | restore-keys: |
sccache-${{ runner.os }}- sccache-${{ runner.os }}-