Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
85 commits
Select commit Hold shift + click to select a range
94b28bf
Bump actions/setup-node from 4 to 5 in the actions group (#259)
dependabot[bot] Sep 9, 2025
5467cca
Update README.md (#234)
Propfend Sep 18, 2025
3c68c31
Bump @types/node from 24.2.1 to 24.3.0 in the dev-minor group (#258)
dependabot[bot] Sep 18, 2025
5abb1e2
update dependencies, prepare for release
Swatinem Sep 18, 2025
f13886b
2.8.1
Swatinem Sep 18, 2025
7bd5339
ci: address lint findings, add zizmor workflow (#262)
woodruffw Sep 23, 2025
14cb63c
Bump @vercel/ncc from 0.38.3 to 0.38.4 (#263)
dependabot[bot] Sep 23, 2025
2a0d153
Bump taiki-e/install-action from 2.62.2 to 2.62.13 in the actions group
dependabot[bot] Sep 29, 2025
90fd061
Merge pull request #265 from Swatinem/dependabot/github_actions/actio…
github-actions[bot] Sep 29, 2025
eb57cd6
Bump @actions/cache from 4.0.5 to 4.1.0 in the prd-minor group (#267)
dependabot[bot] Sep 30, 2025
a1f9490
Bump @types/node from 24.5.2 to 24.6.0 in the dev-minor group (#266)
dependabot[bot] Sep 30, 2025
bf8c594
Bump taiki-e/install-action from 2.62.13 to 2.62.21 in the actions group
dependabot[bot] Oct 6, 2025
b08fc8f
Merge pull request #271 from Swatinem/dependabot/github_actions/actio…
github-actions[bot] Oct 6, 2025
20d8423
Bump typescript from 5.9.2 to 5.9.3 in the dev-patch group (#269)
dependabot[bot] Oct 7, 2025
51dda28
Bump @types/node from 24.6.0 to 24.7.0 in the dev-minor group (#270)
dependabot[bot] Oct 7, 2025
2245981
Bump taiki-e/install-action from 2.62.21 to 2.62.28 in the actions group
dependabot[bot] Oct 13, 2025
9416228
Merge pull request #274 from Swatinem/dependabot/github_actions/actio…
github-actions[bot] Oct 13, 2025
27f6075
feat: Implement ability to disable adding job ID + rust environment h…
Ryan-Brice Nov 3, 2025
54f6936
Bump @types/node from 24.7.0 to 24.9.0 in the dev-minor group (#275)
dependabot[bot] Nov 3, 2025
b28feea
Bump the actions group across 1 directory with 3 updates (#278)
dependabot[bot] Nov 3, 2025
7ec422f
Bump taiki-e/install-action from 2.62.39 to 2.62.45 in the actions group
dependabot[bot] Nov 3, 2025
a84bfdc
Merge pull request #280 from Swatinem/dependabot/github_actions/actio…
github-actions[bot] Nov 3, 2025
07caf06
Bump taiki-e/install-action from 2.62.45 to 2.62.49 in the actions group
dependabot[bot] Nov 10, 2025
972b315
Merge pull request #283 from Swatinem/dependabot/github_actions/actio…
github-actions[bot] Nov 10, 2025
3aaed55
Bump the actions group with 2 updates
dependabot[bot] Nov 17, 2025
c911900
Merge pull request #284 from Swatinem/dependabot/github_actions/actio…
github-actions[bot] Nov 17, 2025
e306f83
Don't overwrite env for cargo-metadata call (#285)
MaeIsBad Nov 18, 2025
f2a41b7
Bump @types/node from 24.9.0 to 24.10.0 in the dev-minor group (#282)
dependabot[bot] Nov 18, 2025
c071727
Bump @actions/io from 1.1.3 to 2.0.0 in the prd-major group (#281)
dependabot[bot] Nov 18, 2025
8930d9c
Bump the actions group with 3 updates (#288)
dependabot[bot] Nov 26, 2025
2ea64ef
Bump smol-toml from 1.4.2 to 1.5.2 in the prd-minor group (#287)
dependabot[bot] Nov 26, 2025
779680d
2.8.2
Swatinem Nov 26, 2025
151eeee
Add support for running rust-cache commands from within a Nix shell (…
marc0246 Dec 1, 2025
73cfdf1
Bump taiki-e/install-action from 2.62.57 to 2.62.60 in the actions group
dependabot[bot] Dec 2, 2025
42c5594
Merge pull request #291 from Swatinem/dependabot/github_actions/actio…
github-actions[bot] Dec 2, 2025
e73b99e
Bump the actions group across 1 directory with 5 updates (#296)
dependabot[bot] Dec 16, 2025
6cda4ba
Bump the prd-major group with 3 updates (#294)
dependabot[bot] Dec 16, 2025
0aa729b
Bump @types/node from 24.10.1 to 25.0.2 in the dev-major group (#295)
dependabot[bot] Dec 16, 2025
5e4a767
Consider all installed toolchains in cache key (#293)
tamird Dec 16, 2025
11da852
Compare case-insenitively for full cache key match (#303)
kbriggs Jan 12, 2026
1a83841
Migrate to `node24` runner (#314)
rhysd Mar 11, 2026
68500c1
Bump the actions group across 1 directory with 7 updates (#312)
dependabot[bot] Mar 11, 2026
390157d
Bump the prd-minor group across 1 directory with 2 updates (#307)
dependabot[bot] Mar 11, 2026
8a02ed5
Bump @types/node from 25.0.2 to 25.2.2 in the dev-minor group (#309)
dependabot[bot] Mar 11, 2026
bf71d02
bump dependencies and rebuild
Swatinem Mar 12, 2026
c676846
2.9.0
Swatinem Mar 12, 2026
3d1fa46
add changelog
Swatinem Mar 12, 2026
781e8d9
try reverting pipeline change
Swatinem Mar 12, 2026
c193711
2.9.1
Swatinem Mar 12, 2026
e18b497
update changelog, not sure why npm suddenly does not commit this
Swatinem Mar 12, 2026
d7ac6f6
Typofix (#316)
23Skidoo Mar 12, 2026
bc18602
fix: include target names in build/ and .fingerprint/ cleanup (#317)
eitsupi Mar 14, 2026
5084d13
Bump taiki-e/install-action from 2.68.26 to 2.68.34 in the actions group
dependabot[bot] Mar 16, 2026
85fb424
Merge pull request #318 from Swatinem/dependabot/github_actions/actio…
github-actions[bot] Mar 16, 2026
f51f967
fix: include cdylib/rlib/dylib/staticlib targets in build and fingerp…
eitsupi Mar 19, 2026
ed5e89b
feat: cache more cargo binaries (#325)
clechasseur Apr 12, 2026
22de9d9
Bump smol-toml from 1.6.0 to 1.6.1 in the prd-patch group (#321)
dependabot[bot] Apr 14, 2026
3a55635
Bump typescript from 5.9.3 to 6.0.2 in the dev-major group (#322)
dependabot[bot] Apr 14, 2026
469cb0e
Bump the actions group across 1 directory with 5 updates (#326)
dependabot[bot] Apr 14, 2026
bd17f4a
Bump the actions group with 4 updates (#329)
dependabot[bot] Apr 21, 2026
13b6262
Bump @types/node from 25.5.0 to 25.6.0 in the dev-minor group (#327)
dependabot[bot] Apr 21, 2026
3d9a6ae
Bump typescript from 6.0.2 to 6.0.3 in the dev-patch group (#328)
dependabot[bot] Apr 21, 2026
91cad52
Bump the actions group with 2 updates
dependabot[bot] Apr 28, 2026
174de31
Merge pull request #333 from Swatinem/dependabot/github_actions/actio…
github-actions[bot] Apr 28, 2026
455db76
Bump @actions/glob from 0.6.1 to 0.7.0 in the prd-minor group (#332)
dependabot[bot] May 1, 2026
919333d
Bump @actions/core from 3.0.0 to 3.0.1 in the prd-patch group (#334)
dependabot[bot] May 1, 2026
77fc985
Bump the actions group with 3 updates (#335)
dependabot[bot] May 11, 2026
faada81
Bump the actions group with 2 updates
dependabot[bot] May 12, 2026
65012b4
Merge pull request #339 from Swatinem/dependabot/github_actions/actio…
github-actions[bot] May 12, 2026
8ba370a
docs: Update checkout action version to latest (#345)
sondrelg May 29, 2026
874b06e
Bump the actions group across 1 directory with 3 updates (#346)
dependabot[bot] Jun 3, 2026
be9aa03
package maintenance
Swatinem Jun 6, 2026
1fe0a60
Merge branch 'master' of https://github.com/Swatinem/rust-cache
Swatinem Jun 6, 2026
c106961
use rollup to do bundle splitting
Swatinem Jun 6, 2026
f27557a
Bump @types/node from 25.9.2 to 25.9.3 in the dev-patch group
dependabot[bot] Jun 15, 2026
baf1a81
Merge pull request #351 from Swatinem/dependabot/npm_and_yarn/dev-pat…
github-actions[bot] Jun 15, 2026
7e2fe43
Bump rollup in the dev-minor group across 1 directory (#350)
dependabot[bot] Jul 4, 2026
2903027
Bump the prd-minor group with 2 updates (#353)
dependabot[bot] Jul 4, 2026
3cd715c
Bump the actions group across 1 directory with 4 updates (#354)
dependabot[bot] Jul 4, 2026
cb96ac7
fix `credentials` cleanup path
Swatinem Jul 4, 2026
b88d7b9
pin `cargo-binstall` action
Swatinem Jul 4, 2026
6dfd3c5
rebuild dist
Swatinem Jul 4, 2026
a31add9
Fix Windows cache path validation after Rollup migration (#355)
eitsupi Jul 4, 2026
0b5b468
Bump rollup from 4.62.0 to 4.62.2 in the dev-patch group
dependabot[bot] Jul 6, 2026
7e35be2
Merge pull request #358 from Swatinem/dependabot/npm_and_yarn/dev-pat…
github-actions[bot] Jul 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions .github/workflows/binstall.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: binstall

on: [push, pull_request]

permissions: {}

jobs:
binstall:
if: github.repository == 'Swatinem/rust-cache'
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]

name: Test `cargo binstall` on ${{ matrix.os }}
runs-on: ${{ matrix.os }}

env:
CARGO_TERM_COLOR: always

steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- run: rustup toolchain install stable --profile minimal --no-self-update

- uses: cargo-bins/cargo-binstall@732870f031d2fb36309d0deaf36abcc704a7be65 # v1.20.1

- uses: ./

- run: cargo binstall -y cargo-deny
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
14 changes: 9 additions & 5 deletions .github/workflows/check-dist.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,17 +11,21 @@ on:
- "**.md"
workflow_dispatch:

permissions: {}

jobs:
check-dist:
if: github.repository == 'Swatinem/rust-cache'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- name: Setup Node.js 20.x
uses: actions/setup-node@v4
- name: Setup Node.js 24.x
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.x
node-version: 24.x
cache: npm

- name: Install dependencies
Expand All @@ -39,7 +43,7 @@ jobs:
fi
id: diff

- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
if: ${{ failure() && steps.diff.conclusion == 'failure' }}
with:
name: dist
Expand Down
10 changes: 8 additions & 2 deletions .github/workflows/coverage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ name: coverage

on: [push, pull_request]

permissions: {}

jobs:
coverage:
if: github.repository == 'Swatinem/rust-cache'
Expand All @@ -17,11 +19,15 @@ jobs:
CARGO_TERM_COLOR: always

steps:
- uses: actions/checkout@v5
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- run: rustup toolchain install stable --profile minimal --component llvm-tools-preview --no-self-update

- uses: taiki-e/install-action@cargo-llvm-cov
- uses: taiki-e/install-action@9e1e5806d4a4822de933115878265be9aaa786d9 # v2.82.2
with:
tool: cargo-llvm-cov

- uses: ./
with:
Expand Down
18 changes: 10 additions & 8 deletions .github/workflows/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,25 @@
name: Dependabot Automation
on: pull_request

permissions:
contents: write
pull-requests: write
permissions: {}

jobs:
automerge:
runs-on: ubuntu-latest
permissions:
contents: write # for pushing commits
pull-requests: write # for merging PRs
if: github.event.pull_request.user.login == 'dependabot[bot]' && github.repository == 'Swatinem/rust-cache'
steps:
- name: Fetch metadata
id: metadata
uses: dependabot/fetch-metadata@v2
uses: dependabot/fetch-metadata@25dd0e34f4fe68f24cc83900b1fe3fe149efef98 # v3.1.0
with:
github-token: "${{ secrets.GITHUB_TOKEN }}"
- uses: actions/checkout@v5
with:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
fetch-depth: 2
persist-credentials: false
if: steps.metadata.outputs.update-type == 'version-update:semver-patch'
- name: Check if package-lock.json has been changed
if: steps.metadata.outputs.update-type == 'version-update:semver-patch'
Expand All @@ -35,9 +37,9 @@ jobs:
fi
- name: Setup node if necessary
if: steps.npm.outputs.changed != ''
uses: actions/setup-node@v4
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: 20.x
node-version: 24.x
cache: npm
- name: Re-generate and commit dist/ if changed
id: amend
Expand Down
6 changes: 5 additions & 1 deletion .github/workflows/git-registry.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ name: git-registry

on: [push, pull_request]

permissions: {}

jobs:
git-registry:
if: github.repository == 'Swatinem/rust-cache'
Expand All @@ -18,7 +20,9 @@ jobs:
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: git

steps:
- uses: actions/checkout@v5
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- run: rustup toolchain install stable --profile minimal --no-self-update

Expand Down
6 changes: 5 additions & 1 deletion .github/workflows/install.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ name: install

on: [push, pull_request]

permissions: {}

jobs:
install:
if: github.repository == 'Swatinem/rust-cache'
Expand All @@ -17,7 +19,9 @@ jobs:
CARGO_TERM_COLOR: always

steps:
- uses: actions/checkout@v5
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- run: rustup toolchain install stable --profile minimal --no-self-update

Expand Down
74 changes: 74 additions & 0 deletions .github/workflows/multi-job-cache.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
name: multi-job-cache

on: [push, pull_request]

permissions: {}

jobs:
multi-job-cache-1:
if: github.repository == 'Swatinem/rust-cache'
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]

name: Test multi-job cache (1) on ${{ matrix.os }}
runs-on: ${{ matrix.os }}

env:
CARGO_TERM_COLOR: always

steps:
- name: checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- name: install rust toolchain
run: rustup toolchain install stable --profile minimal --target wasm32-unknown-unknown --no-self-update

- name: cache
uses: ./
with:
workspaces: |
tests
add-job-id-key: "false"
add-rust-environment-hash-key: "false"

- name: cargo check (tests)
working-directory: tests
run: cargo check

multi-job-cache-2:
if: github.repository == 'Swatinem/rust-cache'
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]

name: Test multi-job cache (2) on ${{ matrix.os }}
runs-on: ${{ matrix.os }}

env:
CARGO_TERM_COLOR: always

steps:
- name: checkout
uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- name: install rust toolchain
run: rustup toolchain install stable --profile minimal --target wasm32-unknown-unknown --no-self-update

- name: cache
uses: ./
with:
workspaces: |
tests/wasm-workspace
add-job-id-key: "false"
add-rust-environment-hash-key: "false"

- name: cargo check (tests/wasm-workspace)
working-directory: tests/wasm-workspace
run: cargo check
33 changes: 33 additions & 0 deletions .github/workflows/nix.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: nix

on: [push, pull_request]

permissions: {}

jobs:
nix:
if: github.repository == 'Swatinem/rust-cache'
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest]

name: Test Nix on ${{ matrix.os }}
runs-on: ${{ matrix.os }}

steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- uses: cachix/install-nix-action@8aa03977d8d733052d78f4e008a241fd1dbf36b3 # v31.10.6

- uses: ./
with:
workspaces: tests
cmd-format: nix develop ./tests -c {0}

- run: |
nix develop -c cargo check
nix develop -c cargo test
working-directory: tests
70 changes: 70 additions & 0 deletions .github/workflows/save-restore.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
name: save-restore

on: [push, pull_request]

permissions: {}

jobs:
save:
if: github.repository == 'Swatinem/rust-cache'
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]

name: Save a new cache on ${{ matrix.os }}
runs-on: ${{ matrix.os }}

env:
CARGO_TERM_COLOR: always

steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
persist-credentials: false

- run: rustup toolchain install stable --profile minimal --no-self-update

# Use a per-run key so this job always exercises the post-step save path.
- uses: ./
with:
workspaces: tests
shared-key: save-restore-${{ matrix.os }}-${{ github.run_id }}-${{ github.run_attempt }}

- run: cargo check
working-directory: tests

restore:
if: github.repository == 'Swatinem/rust-cache'
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]

name: Restore the newly saved cache on ${{ matrix.os }}
needs: save
runs-on: ${{ matrix.os }}

env:
CARGO_TERM_COLOR: always

steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
persist-credentials: false

- run: rustup toolchain install stable --profile minimal --no-self-update

- id: cache
uses: ./
with:
workspaces: tests
shared-key: save-restore-${{ matrix.os }}-${{ github.run_id }}-${{ github.run_attempt }}
save-if: "false"

- name: Verify exact cache hit
if: steps.cache.outputs.cache-hit != 'true'
shell: bash
run: |
echo "The cache created by the save job could not be restored." >&2
exit 1
6 changes: 5 additions & 1 deletion .github/workflows/simple.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ name: simple

on: [push, pull_request]

permissions: {}

jobs:
simple:
if: github.repository == 'Swatinem/rust-cache'
Expand All @@ -17,7 +19,9 @@ jobs:
CARGO_TERM_COLOR: always

steps:
- uses: actions/checkout@v5
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
with:
persist-credentials: false

- run: rustup toolchain install stable --profile minimal --no-self-update

Expand Down
Loading