Skip to content
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

Switch from Bun to Deno #386

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from
Draft

Switch from Bun to Deno #386

wants to merge 2 commits into from

Conversation

timrogers
Copy link
Owner

No description provided.

@Jarred-Sumner
Copy link

Sorry to see this. Is there anything we (Bun) could've done differently? Were there any bugs or issues you ran into?

@timrogers
Copy link
Owner Author

@Jarred-Sumner Thanks for reaching out - I appreciate the white glove support ❤️

I really loved the experience of switching from Node to Bun - it was so easy to get started, bun build --compile is a 👨🏻‍🍳 😽 idea and bun patch made it easy to get my dependencies working.

The issue that I hit was that my macOS binaries, built with this workflow, didn't work properly after signing with my Apple developer account. Instead, they behaved as a Bun interpreter:

$ ./gh-migrate-project-darwin-arm64
Bun is a fast JavaScript runtime, package manager, bundler, and test runner. (1.2.0+b0c5a7655)

Usage: bun <command> [...flags] [...args]

Commands:
  run       ./my-script.ts       Execute a file with Bun
            lint                 Run a package.json script
  test                           Run unit tests with Bun
  x         prettier             Execute a package binary (CLI), installing if needed (bunx)
  repl                           Start a REPL session with Bun
  exec                           Run a shell script directly with Bun

  install                        Install dependencies for a package.json (bun i)
  add       @evan/duckdb         Add a dependency to package.json (bun a)
  remove    redux                Remove a dependency from package.json (bun rm)
  update    @zarfjs/zarf         Update outdated dependencies
  outdated                       Display latest versions of outdated dependencies
  link      [<package>]          Register or link a local npm package
  unlink                         Unregister a local npm package
  publish                        Publish a package to the npm registry
  patch <pkg>                    Prepare a package for patching
  pm <subcommand>                Additional package management utilities

  build     ./a.ts ./b.jsx       Bundle TypeScript & JavaScript into a single file

  init                           Start an empty Bun project from a blank template
  create    vite                 Create a new project from a template (bun c)
  upgrade                        Upgrade to latest version of Bun.
  <command> --help               Print help text for command.

Learn more about Bun:            https://bun.sh/docs
Join our Discord community:      https://bun.sh/discord

Is that a known issue?

@timrogers
Copy link
Owner Author

If I follow exactly the same build process, without the signing step, I get a binary that works as expected, but then you hit the issue of macOS requiring ARM64 binaries to be signed.

@timrogers
Copy link
Owner Author

@Jarred-Sumner I'd love to get your take on this if you have a chance!

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