Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Nov 21, 2025

Attempted migration from yarn to bun as requested, but encountered systematic bun crashes across all versions tested (1.1.30-1.3.2, canary).

Issue

Bun fails during dependency resolution with segmentation faults:

  • Segmentation fault at address 0xB98/0xBC8
  • Assertion failure: Expected metadata to be set
  • Crashes occur with/without yarn.lock, across all bun versions
  • Issue persists even with simplified package.json (no workspaces, no resolutions)

Tested Configurations

  • Bun versions: 1.1.30, 1.1.34, 1.1.38, 1.1.42, 1.2.0, 1.3.2, canary
  • With/without existing yarn.lock file
  • With/without workspace configuration
  • Fresh node_modules on each attempt

Root Cause

This appears to be a bun bug with complex monorepo dependency graphs. The rrweb project has:

  • 20+ workspace packages with interdependencies
  • Custom resolutions for rrweb-cssom (tarball URL)
  • Nested workspace structure (packages/, packages/plugins/)

Recommended Alternatives

  1. pnpm: More stable alternative to yarn with better monorepo support and performance
  2. yarn 4 (Berry): Modern yarn with significant performance improvements over yarn 1.x
  3. Wait for bun fix: File upstream bug report and revisit when resolved

No changes committed. Proceeding requires choosing an alternative approach or resolving bun's upstream issues.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • bun.report
    • Triggering command: /usr/bin/curl /usr/bin/curl (dns block)
  • edgedl.me.gvt1.com
    • Triggering command: /usr/local/bin/node /usr/local/bin/node install.js (dns block)
  • https://storage.googleapis.com/chromium-browser-snapshots/Linux_x64/1036745/chrome-linux.zip
    • Triggering command: /usr/local/bin/node node install.js (http block)
    • Triggering command: /usr/local/bin/node /usr/local/bin/node install.js (http block)
  • https://storage.googleapis.com/chromium-browser-snapshots/Linux_x64/869685/chrome-linux.zip
    • Triggering command: /usr/local/bin/node /usr/local/bin/node install.js (http block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

I want you to try and port the project's package manager from yarn to bun. Make sure you run very comprehensive tests/lint/typechecking/etc. so we don't have to wait for CI to find out if everything works.


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

@changeset-bot
Copy link

changeset-bot bot commented Nov 21, 2025

⚠️ No Changeset found

Latest commit: 0e53605

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copilot AI changed the title [WIP] Port package manager from yarn to bun with testing Unable to migrate from yarn to bun due to critical bun crashes Nov 21, 2025
Copilot AI requested a review from Juice10 November 21, 2025 12:19
Copilot finished work on behalf of Juice10 November 21, 2025 12:19
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