dev-prune-linux-arm64 1.17.0 → 1.18.0
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.
- package/README.md +16 -6
- package/bin/dev-prune +0 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -52,7 +52,7 @@ gigabytes hostage for a build you are not running.
|
|
|
52
52
|
|
|
53
53
|
`dev-prune` finds those directories across every Git repository you register, and deletes
|
|
54
54
|
them — but only after proving the exact command that puts them back would succeed. It
|
|
55
|
-
knows twenty-
|
|
55
|
+
knows twenty-five package managers, not just the obvious four: Composer, Bundler, Mix,
|
|
56
56
|
CocoaPods and Terraform are as first-class as npm and pip. It is a single Rust binary,
|
|
57
57
|
installs its own background schedule, and answers to two names: `dev-prune` and `devp`.
|
|
58
58
|
|
|
@@ -115,6 +115,11 @@ All three download the prebuilt binary for your platform, verify its published S
|
|
|
115
115
|
put it on `PATH`, and run `dev-prune setup`. Pass `--no-auto-setup` / `-NoAutoSetup` to
|
|
116
116
|
skip that last step.
|
|
117
117
|
|
|
118
|
+
A binary you download and run by hand asks first instead: the first attended run opens
|
|
119
|
+
the settings walkthrough before anything is installed, finishing it is the yes, and
|
|
120
|
+
quitting it means nothing is installed — durably, until you say otherwise with
|
|
121
|
+
`devp setup`.
|
|
122
|
+
|
|
118
123
|
Re-run any of them whenever you like. An install that is already current, complete and on
|
|
119
124
|
`PATH` is left exactly as it is and exits `0` without downloading; an older one is updated
|
|
120
125
|
in place; a newer one is not downgraded. `--force` / `-Force` writes it again regardless.
|
|
@@ -617,7 +622,7 @@ process that leaves a dirty working tree is a surprise.
|
|
|
617
622
|
| 🐳 **Container report** | `devp caches docker` (also `podman`, `nerdctl`, `finch`, Apple's `container`, or `containers` for all of them plus local Kubernetes clusters) breaks a container engine's disk into images, containers, local volumes and build cache, each with what the engine itself calls reclaimable, and prints the prune commands narrowest first with what each takes with it. `devp caches clear docker` then runs the narrow ones for you, after asking, and counts them in `devp stats` — **never a volume**, and never from a scheduler or a hook. `devp caches` carries a one-line summary per engine, outside its own total |
|
|
618
623
|
| 📊 **Cache report** | `devp caches` sizes every package manager cache and store on the machine — npm to cargo to conda, Maven, Gradle, NuGet, vcpkg, Conan, Composer, CocoaPods, Hex, Bundler, pub, SwiftPM, Terraform, Poetry, PDM and Deno — and prints the command that clears each. It also finds the stores that belong to no package manager at all and are routinely the largest things in the list: the Playwright and Puppeteer browser bundles, the Cypress binary cache, the Electron and electron-builder download caches, and the HuggingFace hub — a whole browser or model per version, and nothing ever removes the old one. The report is read-only; `devp caches clear <manager>` runs that command for you, after asking. `devp config set cache_max_gb default=10` says how big is too big — for every manager at once, or per manager with `default=10,npm=4` — and marks the ones past it — `devp caches clear --over-cap all` then empties exactly those, still only when you type it. Each manager also says how many of your registered repositories use it and what that works out to per repository, and `devp caches clear --unused all` empties the ones nothing uses at all. pnpm is reported once per filesystem, because a store it hardlinks into `node_modules` cannot cross one and projects kept off the system disk get a store of their own. Nothing on a schedule ever touches a cache, and Maven's `~/.m2/repository` is never cleared at all — it holds artifacts `mvn install:install-file` put there that no remote can hand back |
|
|
619
624
|
| 🩺 **`devp doctor`** | One read-only pass that ends by naming the *single* reason a repository would or would not be pruned. Runs no package manager, repairs nothing, safe to run twice. `devp doctor --fix` then mends what it found — installed-but-broken only |
|
|
620
|
-
| 🤖 **Self-installing automation** | OS-native scheduler (Task Scheduler, LaunchAgent, systemd user timer) and non-blocking Git hooks, installed
|
|
625
|
+
| 🤖 **Self-installing automation** | OS-native scheduler (Task Scheduler, LaunchAgent, systemd user timer) and non-blocking Git hooks, installed once the first run’s walkthrough is accepted (quitting it installs nothing) and restored after an upgrade. `auto_setup`, `auto_hooks`, `auto_daemon` or `DEV_PRUNE_NO_AUTO_SETUP=1` turn it off |
|
|
621
626
|
| ⚡ **0ms opt-out** | An `ignore.devprune.json` in a repository root is honoured by file presence alone — no read, no parse. It applies at registration as well: a bulk scan (`devp init`, and the scheduled pass's own discovery) will not register a repository that holds it, so a repository can decline before it ever reaches `devp status`. `devp link <path>` still registers one, because naming a single repository is not a bulk scan |
|
|
622
627
|
| 🔌 **`--json` on every reporting command** | `run`, `status`, `stats`, `trust` and `caches` each emit one versioned document on stdout, diagnostics on stderr. Built for scripts and agents |
|
|
623
628
|
| 🧠 **AI agent skill** | A token-lean `SKILL.md` embedded in the binary; `devp skill` exports it and prints onboarding prompts for Claude Code, Gemini Antigravity, Cursor, Windsurf, Copilot and OpenClaw, and the repository doubles as a Claude Code plugin marketplace |
|
|
@@ -702,11 +707,11 @@ Adapters detect the project, verify the lockfile, and own the bloat directories:
|
|
|
702
707
|
A required binary that is missing is a reason to skip, never a reason to delete: if `npm`
|
|
703
708
|
is not on `PATH`, the `node_modules` it owns is left exactly where it is.
|
|
704
709
|
|
|
705
|
-
The
|
|
710
|
+
The nine build-tool adapters ship **disabled**, because a build tree is regenerated
|
|
706
711
|
by recompiling, not downloading — it costs more to get back. `devp config set
|
|
707
712
|
enable_cargo true` / `enable_gradle true` / `enable_maven true` / `enable_swift true` /
|
|
708
713
|
`enable_dart true` / `enable_mix_build true` / `enable_vcpkg true` /
|
|
709
|
-
`enable_cmake_build true` switches them on, and their candidates wait for
|
|
714
|
+
`enable_cmake_build true` / `enable_dotnet_build true` switches them on, and their candidates wait for
|
|
710
715
|
`build_idle_days` (45 by default), applied as the *maximum* of it and `idle_days` — the
|
|
711
716
|
build-tool gate only ever makes pruning later, never earlier.
|
|
712
717
|
|
|
@@ -816,7 +821,7 @@ once on a first install — so the defaults are something you agreed to rather t
|
|
|
816
821
|
inherited — and again after an upgrade adds a setting you have never been shown.
|
|
817
822
|
|
|
818
823
|
If you already know what you want, `devp config recommended` is the one-command version:
|
|
819
|
-
it turns on the
|
|
824
|
+
it turns on the nine adapters and build trees that are off by default because they are
|
|
820
825
|
not universally wanted, and leaves `allow_manifest_rewrite` — the one recommendation
|
|
821
826
|
that edits files Git tracks — named, explained and off unless you add
|
|
822
827
|
`--with-cautious`. `devp config show` lists whatever you have not taken yet.
|
|
@@ -854,7 +859,7 @@ rather than downloading. That is the whole reason each one is a switch.
|
|
|
854
859
|
|
|
855
860
|
| Key | Default | Meaning |
|
|
856
861
|
| :--- | :---: | :--- |
|
|
857
|
-
| `enable_cargo` … `
|
|
862
|
+
| `enable_cargo` … `enable_dotnet_build` | `false` | Turn on an opt-in build-tool adapter; `build_idle_days` (`45`) gates all nine |
|
|
858
863
|
|
|
859
864
|
**Shared download caches** — one key, because the cap only ever marks.
|
|
860
865
|
|
|
@@ -1002,6 +1007,11 @@ non-blocking `post-commit`, `post-checkout` and `post-merge` Git hooks that regi
|
|
|
1002
1007
|
repositories as you visit them. Both are reinstated after an upgrade if anything went
|
|
1003
1008
|
missing.
|
|
1004
1009
|
|
|
1010
|
+
None of it arrives unasked. A machine that has never agreed opens the settings
|
|
1011
|
+
walkthrough on its first attended run, before anything is installed: finishing the
|
|
1012
|
+
walkthrough is the yes, quitting it is a durable no, and `devp setup` changes the
|
|
1013
|
+
answer whenever you like.
|
|
1014
|
+
|
|
1005
1015
|
```bash
|
|
1006
1016
|
devp setup --status # what is installed, what is not, and why
|
|
1007
1017
|
devp config set auto_setup false # stop the unattended pass entirely
|
package/bin/dev-prune
CHANGED
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dev-prune-linux-arm64",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.18.0",
|
|
4
4
|
"description": "Prebuilt dev-prune binary for linux arm64. Installed automatically by the 'dev-prune' package; not meant to be depended on directly.",
|
|
5
5
|
"os": ["linux"],
|
|
6
6
|
"cpu": ["arm64"],
|