- Fix cache key stability.
- Use 8 character hash components to reduce the key length, making it more readable.
- Add
cache-all-crates
option, which enables caching of crates installed by workflows. - Add installed packages to cache key, so changes to workflows that install rust tools are detected and cached properly.
- Fix cache restore failures due to upstream bug.
- Fix
EISDIR
error due to globed directories. - Update runtime
@actions/cache
,@actions/io
and devtypescript
dependencies. - Update
npm run prepare
so it creates distribution files with the right line endings.
- Update
@actions/cache
dependency to fix usage ofzstd
compression.
- Add new
save-if
option to always restore, but only conditionally save the cache.
- Only hash
Cargo.{lock,toml}
files in the configured workspace directories.
- Avoid calling
cargo metadata
on pre-cleanup. - Added
prefix-key
,cache-directories
andcache-targets
options.
- Primarily just updating dependencies to fix GitHub deprecation notices.
- The action code was refactored to allow for caching multiple workspaces and
different
target
directory layouts. - The
working-directory
andtarget-dir
input options were replaced by a singleworkspaces
option that has the form of$workspace -> $target
. - Support for considering
env-vars
as part of the cache key. - The
sharedKey
input option was renamed toshared-key
for consistency.
- Clean both
debug
andrelease
target directories.
- Use Rust toolchain file as additional cache key.
- Allow for a configurable target-dir.
- Cache
~/.cargo/bin
. - Support for custom
$CARGO_HOME
. - Add a
cache-hit
output. - Add a new
sharedKey
option that overrides the automatic job-name based key.
- Add a new
working-directory
input. - Support caching git dependencies.
- Lots of other improvements.
- Don’t prune targets that have a different name from the crate, but do prune targets from the workspace.
- Improved logging output.
- Make sure to consider
all-features
dependencies when pruning. - Work around macOS cache corruption.
- Remove git-db cache for now.