v0.1.9
Removed
yocache.bbclassno longer POSTs a per-event build report to the server,
nor logs it locally — the server never persisted any of it (every payload
was decoded and discarded), so it was pure overhead: hundreds to thousands
of synchronous requests per build for no benefit.INHERIT += "toaster"and
INHERIT += "buildhistory"are also dropped from the recommended setup,
since their only purpose here was unlocking two of the now-removed events
(MissedSstate,TaskArtifacts). Removed variables:YOCACHE_SKIP_POST,
YOCACHE_REPORT_ENDPOINT,YOCACHE_LOG,YOCACHE_LOG_LIMIT,
YOCACHE_EVENTS,YOCACHE_METADATA_TYPES. The server's
POST /api/build-reportendpoint stays, unused, for a possible future
reinstatement with a real consumer. Mirror wiring and artifact upload are
unaffected.YOCACHE_SKIP_UPLOAD, the blanket dry-run flag, is gone — it was fully
redundant withYOCACHE_SKIP_UPLOAD_TYPES = "all", which already produces
the same "log what would be uploaded, send nothing" behavior.
Added
- Hash-equivalence now dedups across different taskhashes that produce the
same task output (cross-output equivalence): areportwhose outhash
matches an earlier taskhash's outhash unifies onto that taskhash's unihash,
mirroring bitbake's own hashserv (get_equivalent_for_outhash). Previously
every taskhash got its own unihash even when two machines' inputs differed
but their actual output matched, missing sstate reuse bitbake's reference
server would have found. - LRU eviction now evicts an sstate task's archive together with its
.siginfo/.sigsidecars as one unit, ordered by whichever sibling was
most recently accessed — a cold sidecar can no longer get evicted alone
and strand (or orphan) its still-cached archive. Once a group is fully
evicted, its hash-equivalence entries are deleted too, so a unihash never
outlives the blob it points at.
Full Changelog: v0.1.8...v0.1.9