Skip to content

Conversation

cabljac
Copy link
Contributor

@cabljac cabljac commented Jun 18, 2025

This is a draft PR to:

  • make the cli compatible with bun
  • add CI to compile genkit-tools cli to binary targets using bun
  • push those binaries somewhere (to be decided)

Checklist (if applicable):

@cabljac cabljac changed the title @invertase/cli binary feat: compile CI to a binary with bun Jun 18, 2025
@cabljac cabljac requested a review from Copilot June 18, 2025 13:44
Copilot

This comment was marked as outdated.

@cabljac cabljac force-pushed the @invertase/cli-binary branch 6 times, most recently from b2afcc7 to 9e8229c Compare June 18, 2025 15:49
@cabljac cabljac requested a review from Copilot June 20, 2025 11:34
Copilot

This comment was marked as outdated.

@cabljac cabljac force-pushed the @invertase/cli-binary branch from 648d085 to 8394ced Compare June 20, 2025 11:55
@cabljac cabljac marked this pull request as ready for review June 23, 2025 14:38
@cabljac cabljac enabled auto-merge (squash) July 1, 2025 10:16
@cabljac cabljac disabled auto-merge July 4, 2025 06:52
@cabljac
Copy link
Contributor Author

cabljac commented Jul 4, 2025

just resolving some conflicts with main

@cabljac cabljac force-pushed the @invertase/cli-binary branch from 0975ddc to 421820f Compare July 4, 2025 07:47
@cabljac cabljac enabled auto-merge (squash) July 8, 2025 08:16
@cabljac cabljac requested a review from Copilot July 8, 2025 08:16
Copy link

@Copilot 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

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 emits lib/types/src/.... Mismatches here could break consumers' import resolution.
  "types": "./lib/types/src/types/index.d.ts",

@cabljac cabljac disabled auto-merge July 11, 2025 10:06
@cabljac cabljac enabled auto-merge (squash) July 11, 2025 10:07
@cabljac cabljac merged commit bc3013c into main Jul 11, 2025
11 checks passed
@cabljac cabljac deleted the @invertase/cli-binary branch July 11, 2025 10:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

4 participants