Skip to content

Only pull in OS specific binary when installing @chillicream/nitro#9570

Merged
tobias-tengler merged 13 commits intomainfrom
tte/slim-npm-package
Apr 17, 2026
Merged

Only pull in OS specific binary when installing @chillicream/nitro#9570
tobias-tengler merged 13 commits intomainfrom
tte/slim-npm-package

Conversation

@tobias-tengler
Copy link
Copy Markdown
Member

No description provided.

@tobias-tengler tobias-tengler marked this pull request as ready for review April 17, 2026 09:47
Copilot AI review requested due to automatic review settings April 17, 2026 09:47
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR changes how the Nitro CLI is distributed on npm so that installing @chillicream/nitro only pulls the platform-specific native binary, instead of bundling all binaries in a single package.

Changes:

  • Convert @chillicream/nitro to a thin JS wrapper that resolves a platform package via optionalDependencies.
  • Add per-platform npm packages (e.g. @chillicream/nitro-win-x64, @chillicream/nitro-linux-musl-x64) that each ship only the native binary for that platform.
  • Update the release workflow to publish platform packages first, then publish the main @chillicream/nitro package with its optionalDependencies pinned to the release version.

Reviewed changes

Copilot reviewed 11 out of 17 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/Nitro/CommandLine/src/npm/chillicream-nitro/package.json Switches from bundled binaries to optionalDependencies on platform packages; updates repo directory metadata.
src/Nitro/CommandLine/src/npm/chillicream-nitro/cli.js New runtime resolver that finds the installed platform package and spawns the native nitro binary.
src/Nitro/CommandLine/src/npm/chillicream-nitro/README.md Adds basic README for the npm package.
src/Nitro/CommandLine/src/npm/chillicream-nitro/.yarnrc.yml Adds Yarn config for this package directory.
src/Nitro/CommandLine/src/npm/chillicream-nitro/.gitignore Adds package-local gitignore rules.
src/Nitro/CommandLine/src/npm/chillicream-nitro/.gitattributes Marks Yarn/PnP-related files as vendored/binary for linguist.
src/Nitro/CommandLine/src/npm/chillicream-nitro/.editorconfig Adds package-local editorconfig.
src/Nitro/CommandLine/src/npm/chillicream-nitro-win-x86/package.json Introduces Windows x86 binary package metadata and shipped file list.
src/Nitro/CommandLine/src/npm/chillicream-nitro-win-x64/package.json Introduces Windows x64 binary package metadata and shipped file list.
src/Nitro/CommandLine/src/npm/chillicream-nitro-osx-x64/package.json Introduces macOS x64 binary package metadata and shipped file list.
src/Nitro/CommandLine/src/npm/chillicream-nitro-osx-arm64/package.json Introduces macOS arm64 binary package metadata and shipped file list.
src/Nitro/CommandLine/src/npm/chillicream-nitro-linux-x64/package.json Introduces Linux x64 (glibc) binary package metadata and shipped file list.
src/Nitro/CommandLine/src/npm/chillicream-nitro-linux-musl-x64/package.json Introduces Linux x64 (musl) binary package metadata and shipped file list.
src/Nitro/CommandLine/src/npm/chillicream-nitro-linux-arm64/package.json Introduces Linux arm64 binary package metadata and shipped file list.
src/Nitro/CommandLine/src/chillicream-nitro/yarn.lock Removes the old lockfile from the previous packaging approach.
src/Nitro/CommandLine/src/chillicream-nitro/cli.js Removes the old CLI resolver that relied on bundled binaries and detect-libc.
.github/workflows/release.yml Updates CI release to build archives, publish per-platform npm packages, then publish the main npm package with updated optionalDependencies.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/Nitro/CommandLine/src/npm/chillicream-nitro/cli.js Outdated
Comment thread src/Nitro/CommandLine/src/npm/chillicream-nitro/cli.js Outdated
Comment thread src/Nitro/CommandLine/src/npm/chillicream-nitro/cli.js Outdated
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 15 out of 21 changed files in this pull request and generated 2 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/release.yml Outdated
Comment thread src/Nitro/CommandLine/src/npm/chillicream-nitro/src/cli.ts Outdated
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 15 out of 21 changed files in this pull request and generated 1 comment.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/Nitro/CommandLine/src/npm/chillicream-nitro/src/cli.ts
@tobias-tengler tobias-tengler merged commit e183d9e into main Apr 17, 2026
139 checks passed
@tobias-tengler tobias-tengler deleted the tte/slim-npm-package branch April 17, 2026 10:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants