Releases: Mic92/hestia
Release list
v3.0.1
Usage
- uses: Mic92/hestia@v3.0.1
with:
version: v3.0.1What's Changed
- pipeline: bypass upstream filter for drv closures by @cons-tan-tan in #132
New Contributors
- @cons-tan-tan made their first contribution in #132
Full Changelog: v3.0.0...v3.0.1
v3.0.0
Usage
- uses: Mic92/hestia@v3
with:
version: v3.0.0Build matrix: eval once, build in parallel
New Mic92/hestia/matrix subaction. An eval job runs nix-eval-jobs, uploads
each check's .drv closure to the cache, and outputs a matrix of the checks
that still need building. Build jobs fetch their derivation from the cache and
build by store path: no per-job evaluation, no flake changes, and no job for
checks whose results are already cached. Example workflow in the
README.
Larger FastCDC chunks (cache reset)
Chunk sizes go from 16/64/256 KiB to 64/256/1024 KiB (min/avg/max). Dedup is
nearly unchanged, encoded manifests shrink by 26-35 % and chunking time drops
by about 40 % (drain 51.9s -> 40.2s on a 14.7 GiB system closure).
Chunk boundaries are part of the cache format, so v3 starts a fresh manifest
namespace: the first runs after upgrading upload from a cold cache, old packs
age out through GC and eviction.
Faster substitution
- Closure export endpoint: prefetch a whole closure in one request instead of
per-path lookups. - Pack reads are coalesced across gaps and read ahead.
- Reference normalization no longer copies whole files.
Full changelog: v2.0.0...v3.0.0
v2.0.0
Usage
- uses: Mic92/hestia@v2.0.0
with:
version: v2.0.0⚠️ New cache format — one-time reset
v2 introduces a new on-disk cache format, so existing cache entries from
v1 will not be reused. The first runs after upgrading repopulate the cache
from scratch; old data ages out automatically via GC. No action is required.
The format change unlocks the headline improvement below.
Highlights
-
Reference normalization for cross-rebuild dedup. Nix store paths embed
the hashes of their dependencies in file contents. Previously, rebuilding a
dependency changed those embedded hashes and churned the cache, defeating
deduplication. v2 zeroes out (nullifies) these reference hashes before
chunking and restores them on the way out, so unchanged files stay identical
across rebuilds. Result: far better dedup and smaller uploads when only a
low-level dependency changes. -
Much faster chunking. Parallel chunking of large files across cores,
BLAKE3 instead of SHA-256 for internal content addresses (~3x faster hashing)
and general drain-path tuning roughly tripled throughput (~25 → ~70+ Mbit/s on my Framework laptop). -
Clear message for read-only tokens. On workflows without cache write
access (forks,pull_requestfrom forks,check_run), hestia now detects
the read-only token at startup and reports it clearly instead of failing at
the end of the run with a confusing "drain failed" warning. Reads still work,
so substitutions keep being served.
Full Changelog: v1...v2.0.0
v1.0.4
Usage
- uses: Mic92/hestia@v1.0.4
with:
version: v1.0.4What's Changed
Full Changelog: v1.0.3...v1.0.4
v1.0.3
Usage
- uses: Mic92/hestia@v1.0.3
with:
version: v1.0.3What's Changed
Full Changelog: v1.0.2...v1.0.3
v1
This is alpha software. The cache format and behavior can change
between releases; a format change means the cache starts out empty
after an upgrade.
Usage
- uses: Mic92/hestia/action@v1
with:
version: v1What's Changed
- build(deps): bump nixpkgs from
cbb5cf3to9eac87aby @dependabot[bot] in #71 - release: bump version to 1.0.0 by @Mic92 in #72
- redo v1.0.0: fork-PR CI fix + post-drain warning (#73) by @Mic92 in #74
Full Changelog: v0.1.0-beta2...v1
v1.0.2
Usage
- uses: Mic92/hestia@v1.0.2
with:
version: v1.0.2What's Changed
Full Changelog: v1.0.1...v1.0.2
v1.0.1
This is alpha software. The cache format and behavior can change
between releases; a format change means the cache starts out empty
after an upgrade.
Usage
- uses: Mic92/hestia@v1.0.1
with:
version: v1.0.1What's Changed
- docs: drop beta warning and pin examples to @v1 for 1.0 by @Mic92 in #75
- action: move to repo root for Marketplace eligibility by @Mic92 in #76
Full Changelog: v1...v1.0.1
v1.0.0
This is alpha software. The cache format and behavior can change
between releases; a format change means the cache starts out empty
after an upgrade.
Usage
- uses: Mic92/hestia/action@v1.0.0
with:
version: v1.0.0What's Changed
- build(deps): bump nixpkgs from
cbb5cf3to9eac87aby @dependabot[bot] in #71 - release: bump version to 1.0.0 by @Mic92 in #72
- redo v1.0.0: fork-PR CI fix + post-drain warning (#73) by @Mic92 in #74
Full Changelog: v0.1.0-beta2...v1.0.0
v0.1.0-beta2
This is alpha software. The cache format and behavior can change
between releases; a format change means the cache starts out empty
after an upgrade.
Usage
- uses: Mic92/hestia/action@v0.1.0-beta2
with:
version: v0.1.0-beta2What's Changed
Full Changelog: v0.1.0-beta.1...v0.1.0-beta2