-
Notifications
You must be signed in to change notification settings - Fork 367
feat: compile CI to a binary with bun #3101
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
b2afcc7
to
9e8229c
Compare
648d085
to
8394ced
Compare
Co-authored-by: Elliot Hesp <[email protected]>
Co-authored-by: Elliot Hesp <[email protected]>
Co-authored-by: Elliot Hesp <[email protected]>
Co-authored-by: Elliot Hesp <[email protected]>
just resolving some conflicts with main |
0975ddc
to
421820f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
A PR to enable compiling the CLI to native binaries with Bun, update TypeScript configs for JSON imports and Bun types, refactor utility imports, and add a GitHub Actions workflow for cross-platform build and validation.
- Enable
resolveJsonModule
and Bun type support in tsconfigs - Refactor error utilities and package metadata imports for cleaner code
- Add
compile:bun
script and a new CI workflow to build and test binaries
Reviewed Changes
Copilot reviewed 12 out of 14 changed files in this pull request and generated 2 comments.
Show a summary per file
File | Description |
---|---|
genkit-tools/common/tsconfig.json | Enabled JSON module resolution |
genkit-tools/common/src/utils/errors.ts | Unified connection-refused detection logic |
genkit-tools/common/src/utils/utils.ts | Switched to isConnectionRefusedError in health checks |
genkit-tools/common/src/utils/package.ts | Replaced runtime JSON read with static import |
genkit-tools/common/package.json | Updated export/type paths and added bun-types dependency |
genkit-tools/cli/tsconfig.json | Added Bun types and JSON resolution |
genkit-tools/cli/src/commands/ui-start.ts | Spawned server harness via shared command constant |
genkit-tools/cli/src/commands/server-harness.ts | Introduced Commander-based __server-harness entrypoint |
genkit-tools/cli/src/cli.ts | Routed __server-harness invocation into main CLI program |
genkit-tools/cli/package.json | Added compile:bun script, Bun typings, and TS-Node dep |
.github/workflows/build-cli-binaries.yml | New workflow: build/test Bun-compiled CLI binaries per OS/arch |
Files not reviewed (1)
- genkit-tools/pnpm-lock.yaml: Language not supported
Comments suppressed due to low confidence (1)
genkit-tools/common/package.json:67
- The export paths were updated to include
src
segments—verify that your build actually emitslib/types/src/...
. Mismatches here could break consumers' import resolution.
"types": "./lib/types/src/types/index.d.ts",
This is a draft PR to:
bun
bun
Checklist (if applicable):