Skip to content

Build tools update - #9062

Open
limzykenneth wants to merge 3 commits into
processing:mainfrom
limzykenneth:rolldown
Open

Build tools update#9062
limzykenneth wants to merge 3 commits into
processing:mainfrom
limzykenneth:rolldown

Conversation

@limzykenneth

Copy link
Copy Markdown
Member

Resolves #9020

Changes:

This is a simplified version of #9020 with just the build tools update. Users of the library should not see any meaningful difference as this is a dev focused change. People working on the library itself should also not see any workflow changes other than speed ups and more consistent tests.

Details

Rollup > Rolldown

The main build tool is changed to Rolldown. Rolldown is made to be largely backwards compatible with Rollup with main improvements in build speed and less need for plugins. The result on our repo is as follow

Rollup

real	0m16.766s
user	0m36.326s
sys	0m1.659s

Rolldown

real	0m0.864s
user	0m1.681s
sys	0m0.360s

This represents a 19x speed up in build. This is also present with npm run dev:global preview script, making it viable for very quick iteration on global mode code in development.

Webdriverio > Playwright

To improve test stability, the browser test runner is switched from webdriverio to playwright which should see less flaky test overall. Playwright also enables us to install a for test chromium browser on npm install so the user don't need to have chrome installed on their system to run the test, same applies to CI environment.

ESLint > Oxlint/Oxfmt

Linting and formatting is migrated to oxlint and oxfmt for faster speed. Previously ESLint was doing double duty of linting and formatting, including style rules, oxlint and oxfmt split lint rules and style rules up between them. Speed difference between the two is as follow (only comparing linting)

ESLint

real	0m5.475s
user	0m8.091s
sys	0m0.455s

Oxlint

real	0m0.161s
user	0m0.200s
sys	0m0.074s

This represents a 34x speed up. There are room to include editor configuration in the future so that the right extensions will be installed by code editors and run on save, this is not included in this PR and is for future work.

PR Checklist

@p5-bot

p5-bot Bot commented Aug 9, 2026

Copy link
Copy Markdown

Continuous Release

CDN link

Published Packages

Commit hash: 91f429f

Previous deployments

This is an automated message.

@Vaivaswat2244

Copy link
Copy Markdown
Contributor

lgtm

@davepagurek davepagurek left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

lgtm, thanks for making these updates!

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.

3 participants