-
Notifications
You must be signed in to change notification settings - Fork 0
Cache Storage and Maintenance
On-disk cache files support optional compression, deferred writes, and file protection.
performance.cache_write_strategy controls when buffered cache writes flush:
| Value | When writes hit disk |
|---|---|
immediate |
After each cache entry |
phase |
End of each phase+scope invocation (common default) |
end |
End of the entire Beez run |
If Beez crashes mid-run with phase or end, some cache entries may not be persisted yet. The next run recomputes missing entries.
Configured under cache.compress:
cache = {
compress = {
algorithm = "gzip", -- none, gzip, zlib, rle, deflate, delta, vbyte
level = 6,
mode = "auto", -- never, always, auto
},
},Cache files are stored in an envelope format with a header and optional compressed body. Metadata is tracked in .cache/beez-compress.meta.
beez --updateRewrites cache files to match current compression settings. Prints how many files were migrated. Does not invalidate cache keys.
cache.protect = true applies platform-specific protection on cache files after write (read-only or similar) to reduce torn reads during concurrent access.
beez --clean-cacheOr manually:
rm -rf .cache| Delete | Effect |
|---|---|
.cache/entries/ |
Step manifests; indexes may repopulate |
.cache/index/ |
Fast lookup; full key lookup still works |
.cache/success/ |
All per-file success state |
.cache/logs/ |
Logs only; does not affect build cache |
.cache/logs/ holds run and worker logs. It is not part of the cache invalidation system. Add .cache/ to .gitignore.
| Pattern | Reason |
|---|---|
Cache .cache/ between CI jobs |
Reuse step and success cache |
| Key cache on lockfile + toolchain | Separate caches per compiler |
beez --clean-cache on cache schema breaks |
After major Beez upgrades |
beez --no-cache for release builds |
Optional policy for reproducibility |
See Cache Settings for all cache.* keys.
Quick Reference · Glossary · FAQ
- Fundamentals
- Core Concepts
- Project Layout
- First Pipeline
- Phases and Scopes
- How Phases and Scopes Work
- Selecting with Phases and Scopes
- Designing Phases and Scopes
- Parallel Execution and Dependencies
- Configuration
- Configuration Overview
- Global User Config
- Project Config
- Environment Variables
- Performance Settings
- Cache Settings
- Config Reference
- CLI
- CLI Overview
- Running Targets
- Filtering by Phase
- Running a Single Step
- Listing Entities
- Output and Logging Flags
- Cache and Maintenance Flags
- Meta and Utility Commands
-
Project Scaffolding —
beez --init(embedded Tempify) - CLI Flag Reference
- Lua DSL
- DSL Overview
- Plugin System — Plugins, Config DSL, Standard-Workflows
- Step Declaration
- Task Declaration
- Workflow Declaration
- Order Declaration
- Configure Step
- ReqPack Declaration
- Beez API
- Step Context
- DSL Patterns
- Caching
- Caching Overview
- Step Cache
- Success Cache
- Glob Metadata Cache
- Artifact Patterns
- Cache Keys and Invalidation
- Cache Storage and Maintenance
- Caching Troubleshooting
- UI and Output
- Output Modes
- Progress and Animation
- Colors and Themes
- Run Summaries
- Logging and Log Files
- Development and Contribution
- Building and Setup
- Repository Layout
- Testing
- Code Quality
- Feature Development Workflow
- Submitting Changes