Skip to content
This repository was archived by the owner on Oct 3, 2025. It is now read-only.

Migrate from npm to bun for improved build performance#439

Closed
pjcdawkins wants to merge 6 commits intomainfrom
migrate-npm-to-bun
Closed

Migrate from npm to bun for improved build performance#439
pjcdawkins wants to merge 6 commits intomainfrom
migrate-npm-to-bun

Conversation

@pjcdawkins
Copy link
Collaborator

Summary

  • Migrated frontend build system from npm to bun
  • Updated Upsun configuration to use bun commands
  • Removed npm-specific dependencies and configuration
  • Replaced package-lock.json with bun.lock

Test plan

  • Verify frontend builds successfully with bun locally
  • Verify deployment to Upsun completes successfully
  • Verify application functions correctly after deployment
  • Verify build time improvements on Upsun

🤖 Generated with Claude Code

Updated Upsun configuration to use bun for installation and builds.
Removed npm-specific dependencies and configuration, including
npm-force-resolutions and preinstall script. Consolidated resolutions
into overrides field. Replaced package-lock.json with bun.lock.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@github-actions
Copy link

Hello, and thank you for contributing to the Upsun demo project!

Setting up tests

Until all tests pass, a pull request will not be merged.

Build tests for combinations of Python and Node.js will happen automatically, and must pass in order to merge.
Another test will actually runthrough all steps of the demo on a new project, but requires a repository admin to add the runthrough label to the pull request.

Failing tests

If your PR is failing, see the Running tests section of the README for troubleshooting details.

Reviewing these changes locally:

  1. Clone this repo

    git clone -b migrate-npm-to-bun git@github.com:platformsh/demo-project.git demo-test-migrate-npm-to-bun && cd demo-test-migrate-npm-to-bun
  2. Create a project on Upsun:

    upsun project:create --title "Demo Project test (pr-439/merge)" --default-branch migrate-npm-to-bun

    This command will set the local repository remote automatically, but you will need to specify the organization and region.

  3. Push to Upsun:

    upsun push

pjcdawkins and others added 5 commits September 30, 2025 19:55
Added bun setup step to GitHub Actions workflow. Updated root package.json
scripts to use bun for frontend commands. Modified vulnerability scanning
to use bun pm audit instead of npm audit.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Updated GitHub Actions matrix to test Node.js 22.x and 24.x only,
matching current Upsun support and bun compatibility.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Replaced npm audit with Bun's Security Scanner API for checking
high and critical vulnerabilities in frontend dependencies.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Created bunfig.toml with security scanner configuration and telemetry
disabled. Removed dedicated vulnerability check steps from workflow as
bun install will fail if critical issues are found when a scanner is
configured.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
The @acme/bun-security-scanner is just a documentation placeholder.
Relying on GitHub Dependabot for vulnerability scanning instead.
Fixed telemetry configuration format.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@pjcdawkins
Copy link
Collaborator Author

Done together with uv in #438

@pjcdawkins pjcdawkins closed this Oct 2, 2025
@pjcdawkins pjcdawkins deleted the migrate-npm-to-bun branch October 2, 2025 08:01
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant