@zackees/soldr 0.8.20 → 0.8.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +13 -4
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -169,13 +169,13 @@ When you run `soldr`, the tool should do the obvious thing:
169
169
  - pick MSVC on Windows by default
170
170
  - fetch the tool you asked for
171
171
  - cache it locally
172
- - fetch and manage zccache so Rust builds get transparent caching without manual wrapper setup
172
+ - run the built-in zccache service so Rust builds get transparent caching without manual wrapper setup
173
173
 
174
174
  If soldr solves that one problem well, it becomes a super tool: the command you reach for first, because it makes the rest of the stack behave.
175
175
 
176
176
  - **Tool acquisition** (the crgx half): Need `maturin`, `cargo-dylint`, or any crate binary? soldr fetches a pre-built binary from GitHub Releases in seconds. No `cargo install` from source. Cached locally for instant reuse. On `0.5.x`, this is still an upstream trust decision rather than a repo-side trust guarantee; see [docs/TRUST_BOUNDARIES.md](./docs/TRUST_BOUNDARIES.md).
177
177
 
178
- - **Compilation caching** (the zccache half): `soldr cargo ...` now fetches and manages a pinned `zccache` release for Rust builds. soldr owns the zccache daemon/session wiring and keeps managed zccache artifacts under Soldr's cache root.
178
+ - **Compilation caching** (the zccache half): `soldr cargo ...` uses the zccache service compiled into Soldr. soldr owns the daemon/session wiring and keeps its object store under the active Soldr root at `cache/zccache/daemon-state/embedded-v1/<zccache-version>/objects`, so production and development roots remain isolated.
179
179
 
180
180
  ```bash
181
181
  # Build through soldr's front door:
@@ -252,7 +252,10 @@ to stderr. Set `SOLDR_PEP517_STATS=off` to silence it; `SOLDR_PEP517_STATS=full`
252
252
  statistics payload.
253
253
 
254
254
  Soldr also caches the last successful wheel for each project/build mode under
255
- `~/.soldr/pep517/wheels/`. Before packaging it scans source and staged-artifact
255
+ `<effective-soldr-root>/pep517/wheels/`. The backend asks the selected soldr
256
+ binary for this root, so official (`.soldr`), development (`.soldr-dev`), and
257
+ custom roots remain separate even when `SOLDR_CACHE_DIR` was initially unset.
258
+ Before packaging it scans source and staged-artifact
256
259
  metadata (relative path, size, and modification time); an unchanged tree
257
260
  hardlinks the cached wheel into pip's requested output directory and skips
258
261
  wheel rebuilding/compression. Set `SOLDR_PEP517_WHEEL_CACHE=off` to opt out.
@@ -379,7 +382,13 @@ If you also have many separate test binaries, consider consolidating them under
379
382
  - **Front-door builds**: `soldr cargo ...` is the primary build UX.
380
383
  - **Invisible caching**: `soldr cargo ...` uses a soldr-managed zccache by default, with `soldr --no-cache cargo ...` as the opt-out.
381
384
  - **Real cache controls**: `soldr status`, `soldr cache`, and `soldr clean` report and manage the soldr-managed zccache state, while `soldr purge` removes all Soldr-managed cache artifacts for bug clearing and benchmarking.
382
- - **One cache boundary**: soldr keeps its own tools, zccache session state, and managed zccache artifacts under `~/.soldr/` by default. Use `SOLDR_CACHE_DIR` to move that root.
385
+ - **One cache boundary**: official soldr keeps its tools and cache state under `~/.soldr/`; development builds use `~/.soldr-dev/`. Use `SOLDR_CACHE_DIR` to select an explicit root.
386
+ - **Bounded while idle**: the long-lived daemon owns only its selected root,
387
+ checks pressure every five minutes, expires old state daily, and installs no
388
+ OS scheduler. Embedded zccache defaults to 5% of the filesystem clamped to
389
+ 40–200 GiB, becomes aggressive for entries older than four days near full,
390
+ and expires artifacts after 30 days. Production, development (`.soldr-dev`),
391
+ custom, and standalone `.zccache` roots never sweep one another.
383
392
  - **Disposable-worktree friendly on Windows**: for build orchestration, soldr can relocate itself under `~/.soldr/runtime/soldr-self/` so `RUSTC_WRAPPER` does not keep using a worktree-local `soldr.exe`; stale runtime copies are cleaned up periodically.
384
393
  - **Pre-built first**: Download a pre-built binary before compiling from source. Fall back gracefully.
385
394
  - **Cargo-compatible**: soldr preserves normal cargo arguments instead of forcing a separate workflow.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zackees/soldr",
3
- "version": "0.8.20",
3
+ "version": "0.8.21",
4
4
  "description": "Instant Rust tools and builds from one command.",
5
5
  "license": "BSD-3-Clause",
6
6
  "homepage": "https://github.com/zackees/soldr",