Repository navigation
feat(html): support rollup 5 - #2038
Open
lukastaegert wants to merge 2 commits into
Open
lukastaegert wants to merge 2 commits into
lukastaegert wants to merge 2 commits into
Conversation
To test plugins against the upcoming Rollup 5 release.
[Medium impact] The PR appears safe to merge; no new actionable issues were found. Reviews (2) · Last reviewed commit: "feat(html): support rollup 5" · Reviewed by Greptile |
There was a problem hiding this comment.
🟡 Changes recommended
Rollup 5 requires Node >=22.22.0, but both CI workflows still use Node 20, leaving build and pretest jobs on an unsupported runtime.
1 open issue
1 file not reviewed
pnpm-lock.yaml: Generated file
What changed in this PR
Prepares @rollup/plugin-html for Rollup 5 without changing plugin implementation, and corrects its declared minimum Rollup version to 1.21.0, as identified in #2035.
Changes:
- Extends peer support to Rollup 5 and selects its prerelease through the
rollup-nextcatalog. - Adds a side-effectful dynamic-import fixture to preserve entry-only script filtering coverage.
- Updates snapshots for the fixture and Rollup 5 warning output, and removes the old AVA snapshot report.
| File | Description |
|---|---|
pnpm-workspace.yaml |
Adds the rollup-next catalog. |
pnpm-lock.yaml |
Locks Rollup 5 and its dependencies for HTML plugin development. |
packages/html/test/snapshots/test.js.snap |
Updates dynamic chunk and warning expectations. |
packages/html/test/snapshots/test.js.md |
Removes the old AVA snapshot report. |
packages/html/test/fixtures/riddler.js |
Adds a side-effectful module to retain a separate chunk. |
packages/html/test/fixtures/catwoman.js |
Dynamically imports the new fixture. |
packages/html/package.json |
Corrects the peer minimum, adds Rollup 5 support, and switches the development dependency. |
Review effort: Balanced
| "@rollup/plugin-typescript": "^9.0.1", | ||
| "postcss": "^8.4.16", | ||
| "rollup": "^4.0.0-24", | ||
| "rollup": "catalog:rollup-next", |
Raise the declared peer floor to 1.21.0, the first Rollup version that adds the bundle file type property used to detect entry chunks, and extend the range to Rollup 5. Extend the dynamic-import fixture so a separate chunk is emitted and the entry-only HTML script filtering stays covered. Drop the stale markdown snapshot copy.
lukastaegert
force-pushed
the
html-rollup-5
branch
from
November 3, 2026 06:03
4eaea19 to
e5c8386
Compare
3 of 9 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Rollup Plugin Name:
htmlThis PR contains:
Are tests included?
Breaking Changes?
List any relevant issue numbers:
Description
In #2035, I found out that the
htmlplugin does not actually work with its minimally declared rollup version1.20.0as it relies on thetypeproperty introduced in1.21.0. At the same time, no additional changes are needed to support rollup 5.This PR adjusts both in a way that mirrors #2037.
Test against
rollup@5.0.0-2through therollup-nextcatalog. The dynamic-import fixture now uses a side-effectfulriddler.jsmodule so a separate chunk is emitted and the entry-only script filtering stays covered. This matches the change in #2035.