镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

feat(ci): update build tooling - #2629

Merged
WikiRik merged 5 commits into
masterfrom
WikiRik/build-ci
Sep 11, 2026
Merged

WikiRik merged 5 commits into
masterfrom
WikiRik/build-ci

Conversation

@WikiRik

@WikiRik WikiRik commented Nov 9, 2025 •

Copy link
Copy Markdown
Member

Updates the rollup version we use and introduces a separate build step in the CI so we test on the files that will also be published to npm. This also allows us to more easily update eslint in a future PR. It's a feat because there might be (very) minor changes to the build itself.

This incorporates part of the changes of #2401

Checklist

  • PR contains only changes related; no stray files, etc.
  • README updated (where applicable)
  • Tests written (where applicable)
  • References provided in PR (where applicable)

@codecov

codecov Bot commented Nov 9, 2025 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (e36b279) to head (9a08c07).

Additional details and impacted files
@@            Coverage Diff            @@
##            master     #2629   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files          114       114           
  Lines         2586      2586           
  Branches       656       656           
=========================================
  Hits          2586      2586           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@WikiRik
WikiRik requested review from profnandaa and rubiin November 9, 2025 10:40
@WikiRik
WikiRik marked this pull request as ready for review November 9, 2025 10:53
rubiin
rubiin previously approved these changes Nov 9, 2025
@WikiRik

WikiRik commented Nov 9, 2025

Copy link
Copy Markdown
Member Author

Because I want to validate that the regression of #2630 does not happen here, I will put this in draft

@WikiRik
WikiRik marked this pull request as draft November 9, 2025 21:29
@WikiRik

WikiRik commented Nov 10, 2025

Copy link
Copy Markdown
Member Author

I specified the target for compilation in a661988 (#2629) and manually validated that it does not introduce the same regression as #2630

@WikiRik
WikiRik marked this pull request as ready for review November 10, 2025 22:01
@WikiRik
WikiRik requested a review from rubiin November 10, 2025 22:01
rubiin
rubiin previously approved these changes Nov 11, 2025

@rubiin rubiin left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM then

Comment thread build-browser.mjs Resolved
@WikiRik

WikiRik commented Nov 21, 2025

Copy link
Copy Markdown
Member Author

@profnandaa if possible I want to include this in the next release as well, together with #2633

@tux-tn tux-tn left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thanks for the work on refreshing the old dependencies and tooling. It's really great to see progress in this area! Even though I haven’t contributed in the last few years, I’d be more than happy to help out where I can. I had tried to work on something back in #1869, but life happened and I never managed to finish it.

I also have a few suggestions and topics I’d like to raise. Do you think I should open a dedicated discussion issue for tooling, or is there already an ongoing conversation somewhere that I could join?

Regarding this PR specifically:

  • Import attributes and in particular with { type: "json" } , aren’t supported in Node.js versions < 20.10.0. Since the Babel transpilation hook was removed from the build:browser command, this may break support for older Node.js versions.

  • Node.js 24 is now the current LTS, so we probably want to add it to the CI test matrix.

Happy to discuss further and help where needed!

@WikiRik

WikiRik commented Dec 17, 2025

Copy link
Copy Markdown
Member Author

Thanks for your message!

I also have a few suggestions and topics I’d like to raise. Do you think I should open a dedicated discussion issue for tooling, or is there already an ongoing conversation somewhere that I could join?

There might be one, but that's probably quite old already so it would be good to open a new dedicated one.

  • Import attributes and in particular with { type: "json" } , aren’t supported in Node.js versions < 20.10.0. Since the Babel transpilation hook was removed from the build:browser command, this may break support for older Node.js versions.

I will double check, but I thought that wasn't the case because Babel is still used in the build-browser script, just as a require argument.

  • Node.js 24 is now the current LTS, so we probably want to add it to the CI test matrix.

Agreed. I didn't want to add it here before but there's no reason not to. Will update it with Node 24

@WikiRik
WikiRik marked this pull request as draft April 15, 2026 20:48
@rubiin
rubiin requested review from pano9000, profnandaa and tux-tn and removed request for profnandaa April 18, 2026 14:07
@rubiin
rubiin marked this pull request as ready for review April 18, 2026 14:07
rubiin
rubiin previously approved these changes Apr 18, 2026
profnandaa
profnandaa previously approved these changes Apr 18, 2026
@WikiRik
WikiRik marked this pull request as draft April 20, 2026 18:57
@WikiRik
WikiRik dismissed stale reviews from profnandaa and rubiin via 9a08c07 April 20, 2026 19:22
@WikiRik
WikiRik marked this pull request as ready for review April 20, 2026 19:23
@WikiRik

WikiRik commented Apr 20, 2026

Copy link
Copy Markdown
Member Author

I've fixed the merge issue which caused the CI to fail.

To get back to the earlier comment; the build step requires Node 20.10+, but it still transforms the code to work with older versions (as can be seen in the CI). That's why we split these steps.

@WikiRik
WikiRik requested review from profnandaa and rubiin April 20, 2026 19:24

@tux-tn tux-tn left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM. I suggest documenting that Node.js 20.10 or newer is required to build the project locally. This is not a real concern since Node.js versions below 20.10 are already EOL, and users should generally be running Node.js 22 or newer.

Comment thread .github/workflows/ci.yml
with:
name: build-artifacts
- name: Install dependencies
run: npm install --legacy-peer-deps

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Do we still need to use the --legacy-peer-deps flag?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Yes, this step still runs on Node 8 etc

@WikiRik
WikiRik merged commit 9ff3424 into master Sep 11, 2026
14 checks passed
@WikiRik
WikiRik deleted the WikiRik/build-ci branch September 11, 2026 10:04
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.

4 participants