Skip to content

Shrink npm downloads with CLI-only release archives - #44

Merged
thesiti92 merged 1 commit into
mainfrom
smaller-npm-download
Sep 29, 2026
Merged

thesiti92 merged 1 commit into
mainfrom
smaller-npm-download

Conversation

@thesiti92

Copy link
Copy Markdown
Contributor

The npm fetcher downloads the full release archive even though it extracts only diffr. Publish diffr-cli archives and select them when generating new npm pins. Repacking 0.1.4 reduced downloads from 45.8–69.1 MB to 20.6–21.6 MB (55–69%).

Existing pins remain compatible with published releases. Full CLI/TUI archives and Homebrew installs remain available; checksums cover both archive types. Release CI smoke-tests the CLI-only archive with an empty PATH.

Whiteboard already uses this fetcher for build and packaging downloads. Adoption requires publishing the next diffr/npm release, then updating Whiteboard’s exact dependency pins and lockfile. The existing 0.1.4 pins are intentionally unchanged because CLI-only assets have not been published for that release.

Validation: 20 package tests, TypeScript check, npm pack dry run, actionlint, real macOS ARM archive packaging and structural NDJSON smoke, checksum/formula generation, and pin-to-fetch/check integration using real archives with the network boundary redirected locally. Cross-platform builds and Homebrew checks run in CI.

AI assistance: implemented and validated with OpenAI Codex.

AI assistance: implemented and validated with OpenAI Codex.
@thesiti92
thesiti92 merged commit 65403dc into main Sep 29, 2026
44 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants