Skip to content

Comments

chore: normalize error object to make some Rollup tests pass#7562

Merged
sapphi-red merged 1 commit intomainfrom
12-17-chore_normalize_error_object_to_make_some_rollup_tests_pass
Dec 18, 2025
Merged

chore: normalize error object to make some Rollup tests pass#7562
sapphi-red merged 1 commit intomainfrom
12-17-chore_normalize_error_object_to_make_some_rollup_tests_pass

Conversation

@sapphi-red
Copy link
Member

@sapphi-red sapphi-red commented Dec 18, 2025

Normalize error object before comparing with Rollup's error so that some rollup tests passes.

Copy link
Member Author

sapphi-red commented Dec 18, 2025


How to use the Graphite Merge Queue

Add the label graphite: merge to this PR to add it to the merge queue.

You must have a Graphite account in order to use the merge queue. Sign up using this link.

An organization admin has enabled the Graphite Merge Queue in this repository.

Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue.

This stack of pull requests is managed by Graphite. Learn more about stacking.

@netlify
Copy link

netlify bot commented Dec 18, 2025

Deploy Preview for rolldown-rs canceled.

Name Link
🔨 Latest commit 3c18a8a
🔍 Latest deploy log https://app.netlify.com/projects/rolldown-rs/deploys/6943c4de65cd2d000760e66e

@sapphi-red sapphi-red self-assigned this Dec 18, 2025
@sapphi-red sapphi-red marked this pull request as ready for review December 18, 2025 08:44
Copilot AI review requested due to automatic review settings December 18, 2025 08:44
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR normalizes error objects in Rollup tests to improve compatibility between Rolldown and Rollup error formats, enabling 47 additional tests to pass (from 802 to 849).

Key Changes

  • Introduced separate normalization functions for actual (normalizeError) and expected (normalizeExpectedError) errors to handle differences in error object structure
  • Enhanced error comparison logic to support multiple errors in actual.errors array
  • Updated sorting logic for logs to use level and code instead of just message for more reliable comparison

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
packages/rollup-tests/test/utils.js Added normalization logic for error objects, including deletion of Rolldown-specific fields and handling of parse error code mapping
packages/rollup-tests/test/function/index.js Added special handling to normalize VALIDATION_ERROR to INVALID_OPTION for input-name-validation tests
packages/rollup-tests/src/status.md Updated test pass statistics showing increase from 802 to 849 passed tests
packages/rollup-tests/src/status.json Updated test pass statistics in JSON format
packages/rollup-tests/src/ignored-tests.js Added specific tests to the ignore list with detailed reasons for incompatibilities
packages/rollup-tests/src/ignored-by-unsupported-features.md Moved tests from "unsupported features" category to more specific categories with detailed explanations of error differences
Comments suppressed due to low confidence (3)

packages/rollup-tests/test/utils.js:57

  • Avoid automated semicolon insertion (93% of all statements in the enclosing function have an explicit semicolon).
		clone.message = '[message]'

packages/rollup-tests/test/utils.js:102

  • Avoid automated semicolon insertion (92% of all statements in the enclosing function have an explicit semicolon).
		clone.message = '[message]'

packages/rollup-tests/test/utils.js:134

  • Avoid automated semicolon insertion (92% of all statements in the enclosing function have an explicit semicolon).
			}))

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@sapphi-red sapphi-red force-pushed the 12-17-chore_normalize_error_object_to_make_some_rollup_tests_pass branch from be98607 to 0a91458 Compare December 18, 2025 08:56
Copilot AI review requested due to automatic review settings December 18, 2025 08:57
@sapphi-red sapphi-red force-pushed the 12-17-chore_normalize_error_object_to_make_some_rollup_tests_pass branch from 0a91458 to 691df72 Compare December 18, 2025 08:57
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 5 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@sapphi-red sapphi-red force-pushed the 12-17-chore_normalize_error_object_to_make_some_rollup_tests_pass branch from 691df72 to 6e865c4 Compare December 18, 2025 09:09
@sapphi-red sapphi-red force-pushed the 12-17-chore_normalize_error_object_to_make_some_rollup_tests_pass branch from 6e865c4 to 3c18a8a Compare December 18, 2025 09:09
@sapphi-red sapphi-red merged commit 159c4d7 into main Dec 18, 2025
28 of 30 checks passed
@sapphi-red sapphi-red deleted the 12-17-chore_normalize_error_object_to_make_some_rollup_tests_pass branch December 18, 2025 10:16
shulaoda added a commit that referenced this pull request Dec 22, 2025
## [1.0.0-beta.56] - 2025-12-22

### 💥 BREAKING CHANGES

- rename `MIXED_EXPORT` error to `MIXED_EXPORTS` (#7565) by @sapphi-red

### 🚀 Features

- rename `id` property to `exporter` in CIRCULAR_REEXPORT error (#7592) by @sapphi-red
- add `ids` property to `CIRCULAR_DEPENDENCY` error (#7591) by @sapphi-red
- node/dev: expose `devMode.lazy` (#7549) by @hyf0
- set log and pos properties for `parseAst` function errors (#7568) by @sapphi-red
- set log and pos properties for logs (#7567) by @sapphi-red
- test-dev-sever: support to manually configure port, run tests in concurrent (#7576) by @hyf0
- add `exporter` property to `MISSING_EXPORT` error (#7564) by @sapphi-red
- add `id` property to `PARSE_ERROR` error (#7563) by @sapphi-red
- support ImporterId hook filter (#7540) by @IWANABETHATGUY

### 🐛 Bug Fixes

- types: better "go to definition" experience for interface `OutputPlugin` (#7610) by @KazariEX
- `postBanner` content should be placed after shebang (#7583) by @btea
- use sanitized filename for preserve modules chunk name (#7603) by @IWANABETHATGUY
- correct filter out unused cjs namespace  (#7602) by @IWANABETHATGUY
- watch: property respect `notify.pollInternal` and `notify.compareContents` (#7595) by @sapphi-red
- make `cleanDir` work with default output directory (#7579) by @shulaoda
- merge `MISSING_NAME_OPTION_FOR_UMD_EXPORT` error to `MISSING_NAME_OPTION_FOR_IIFE_EXPORT` error (#7566) by @sapphi-red
- dev/hmr: ensure cjs modules with no exports reference correct `module` identifier (#7544) by @leegeunhyeok

### 🚜 Refactor

- remove `stable_id` field from `PARSE_ERROR` error (#7593) by @sapphi-red
- make include_runtime_symbol reuseable after linking stage (#7580) by @IWANABETHATGUY
- rust/dev: construct the bundler within itself (#7553) by @hyf0
- rust/watcher: polish API of `Watcher` struct (#7551) by @hyf0
- use `LinkingMetadata::stmt_info_included` to check if a stmt_info is included (#7572) by @IWANABETHATGUY
- use `LinkingMetadata::is_included` to check if a module is included (#7571) by @IWANABETHATGUY
- store module and stmt_info is included info to module meta (#7570) by @IWANABETHATGUY
- make include_* method reunsable after linking stage (#7552) by @IWANABETHATGUY
- rust/watcher: construct the bundler within watcher itself (#7550) by @hyf0
- extract make include_runtime_symbol reusable (#7546) by @IWANABETHATGUY

### ⚙️ Miscellaneous Tasks

- renovate: add `kill-port` in `ignoreDeps` in renovate.json (#7619) by @sapphi-red
- deps: update rust crates (#7617) by @renovate[bot]
- deps: update npm packages (#7616) by @renovate[bot]
- deps: update github-actions (#7615) by @renovate[bot]
- ci: skip benchmark workflows on draft PRs (#7611) by @Copilot
- deps: update dependency rolldown-plugin-dts to ^0.19.0 (#7607) by @renovate[bot]
- deps: update dependency oxlint-tsgolint to v0.10.0 (#7601) by @renovate[bot]
- deps: update dependency rolldown-plugin-dts to v0.18.4 (#7599) by @renovate[bot]
- deps: update notify (#7594) by @sapphi-red
- test-dev-server: add retry mechanism to hmr-full-bundle-mode tests (#7588) by @Copilot
- deps: update napi to v3.7.1 (#7590) by @renovate[bot]
- add JSDoc documentation for memfs type (#7587) by @Copilot
- deps: update dependency oxlint to v1.34.0 (#7589) by @renovate[bot]
- move some tests in ignored-by-unsupported-features that are passing (#7569) by @sapphi-red
- deps: update dependency oxlint-tsgolint to v0.9.2 (#7582) by @renovate[bot]
- deps: update oxc resolver to v11.16.0 (#7574) by @renovate[bot]
- test/dev-server: don't run `pnpm install` during tests (#7560) by @hyf0
- test/dev-server: use `kill-port@1` to improve performance (#7575) by @hyf0
- normalize error object to make some Rollup tests pass (#7562) by @sapphi-red
- ci: separate dev-server(hmr) tests and normal tests (#7558) by @hyf0
- ci: make native rolldown build reusable (#7557) by @hyf0
- resolve some TODOs (#7561) by @sapphi-red

### ❤️ New Contributors

* @KazariEX made their first contribution in [#7610](#7610)
* @leegeunhyeok made their first contribution in [#7544](#7544)

Co-authored-by: shulaoda <[email protected]>
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.

2 participants