Skip to content

Replace Yarn with Bun as the package manager#1606

Merged
smorimoto merged 1 commit intomainfrom
replace-yarn-with-bun
Feb 8, 2026
Merged

Replace Yarn with Bun as the package manager#1606
smorimoto merged 1 commit intomainfrom
replace-yarn-with-bun

Conversation

@smorimoto
Copy link
Collaborator

@smorimoto smorimoto commented Feb 8, 2026

Summary

  • Remove Yarn configuration (.yarnrc.yml, yarn.lock, .yarn/ directory) and the packageManager field from package.json
  • Update all CI/CD workflows (main.yml, typedoc.yml, version-or-publish.yml) to use Bun commands (bun install --frozen-lockfile, bun run, bunx)
  • Update Mise tooling configuration to install Bun instead of Yarn
  • Generate bun.lock as the new lockfile

Test plan

  • bun run build passes locally
  • bun run test passes locally (47 test files, 134 tests)
  • CI workflows pass on GitHub Actions

Note

Medium Risk
Switches the project’s package manager and updates CI/release commands, which can affect install determinism and publishing behavior if Bun/npm invocation differs from Yarn.

Overview
Migrates the repo from Yarn to Bun by removing Yarn-specific config (.yarnrc.yml, .yarn/ ignore) and introducing a bun.lock lockfile plus Mise configuration to install Bun.

Updates GitHub Actions workflows to run installs, formatting, builds, tests, typedoc generation, and Changesets version/publish steps via bun/bunx instead of yarn, and adds a Changesets patch entry documenting the migration.

Written by Cursor Bugbot for commit 2e0927c. This will update automatically on new commits. Configure here.

- Remove Yarn configuration (.yarnrc.yml, yarn.lock, .yarn/)
- Remove packageManager field from package.json
- Update all CI/CD workflows to use Bun commands
- Update Mise tooling configuration to use Bun
- Generate bun.lock
@changeset-bot
Copy link

changeset-bot bot commented Feb 8, 2026

🦋 Changeset detected

Latest commit: 2e0927c

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
swagger-typescript-api Patch

Not sure what this means? Click here to learn what changesets are.

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

@smorimoto smorimoto added the enhancement New feature or request label Feb 8, 2026
@smorimoto smorimoto merged commit 0528831 into main Feb 8, 2026
13 checks passed
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 2e0927cd8d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@smorimoto smorimoto deleted the replace-yarn-with-bun branch February 8, 2026 02:00
@github-actions github-actions bot mentioned this pull request Feb 8, 2026
Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.

This PR is being reviewed by Cursor Bugbot

Details

You are on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle.

To receive Bugbot reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.

version: yarn changeset version
publish: yarn npm publish --tolerate-republish
version: bun changeset version
publish: bunx npm publish
Copy link

Choose a reason for hiding this comment

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

Publish command loses idempotency flag for retries

Medium Severity

The publish command changed from yarn npm publish --tolerate-republish to bunx npm publish, dropping the --tolerate-republish flag. This Yarn-specific flag allows the publish command to succeed even if the package version was already published, which is essential for retrying partially failed CI runs. Without it, retrying a publish workflow after a partial failure will error out when encountering already-published versions. The standard npm publish command has no equivalent flag.

Fix in Cursor Fix in Web

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant