Skip to content

chore(rust/test): introduce ArtifactsSnapshot to make generating snapshot more clear#6405

Merged
graphite-app[bot] merged 1 commit intomainfrom
10-03-chore_rust_test_introduce_artifactssnapshot_to_make_generating_snapshot_more_clear
Oct 4, 2025
Merged

chore(rust/test): introduce ArtifactsSnapshot to make generating snapshot more clear#6405
graphite-app[bot] merged 1 commit intomainfrom
10-03-chore_rust_test_introduce_artifactssnapshot_to_make_generating_snapshot_more_clear

Conversation

@hyf0
Copy link
Member

@hyf0 hyf0 commented Oct 3, 2025

The integration test contain two parts logic:

  • one is varifying whether the output fits the expectation according test meta
  • one is collect snapshot.

The previous code logic of collecting snapshot hardcode everywhere. It's hard to understand how the snapshot is constructed and hard to be adjusted.

This PRs splits the logic of varification and generating snapshot.

Copy link
Member Author

hyf0 commented Oct 3, 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 Oct 3, 2025

Deploy Preview for rolldown-rs canceled.

Name Link
🔨 Latest commit 6513b5f
🔍 Latest deploy log https://app.netlify.com/projects/rolldown-rs/deploys/68e0f926ccef6e0008a42431

@github-actions
Copy link
Contributor

github-actions bot commented Oct 3, 2025

Benchmarks Rust

  • target: main(b29b368)
  • pr: 10-03-chore_rust_test_introduce_artifactssnapshot_to_make_generating_snapshot_more_clear(6513b5f)
group                                                        pr                                     target
-----                                                        --                                     ------
bundle/bundle@multi-duplicated-top-level-symbol              1.00     66.6±1.72ms        ? ?/sec    1.03     68.3±1.30ms        ? ?/sec
bundle/bundle@multi-duplicated-top-level-symbol-sourcemap    1.00     73.3±1.54ms        ? ?/sec    1.02     74.8±1.63ms        ? ?/sec
bundle/bundle@rome_ts                                        1.01    113.2±4.16ms        ? ?/sec    1.00    112.1±1.74ms        ? ?/sec
bundle/bundle@rome_ts-sourcemap                              1.00    127.8±2.46ms        ? ?/sec    1.01    129.0±3.19ms        ? ?/sec
bundle/bundle@threejs                                        1.00     43.3±0.81ms        ? ?/sec    1.03     44.6±2.50ms        ? ?/sec
bundle/bundle@threejs-sourcemap                              1.00     50.5±0.87ms        ? ?/sec    1.03     52.0±0.84ms        ? ?/sec
bundle/bundle@threejs10x                                     1.01    437.1±7.65ms        ? ?/sec    1.00    433.0±7.01ms        ? ?/sec
bundle/bundle@threejs10x-sourcemap                           1.01    504.6±7.50ms        ? ?/sec    1.00    497.4±4.69ms        ? ?/sec
scan/scan@rome_ts                                            1.01     88.1±1.66ms        ? ?/sec    1.00     87.6±1.79ms        ? ?/sec
scan/scan@threejs                                            1.01     33.1±0.60ms        ? ?/sec    1.00     32.9±2.21ms        ? ?/sec
scan/scan@threejs10x                                         1.00    335.4±5.41ms        ? ?/sec    1.01    338.0±5.39ms        ? ?/sec

@graphite-app
Copy link
Contributor

graphite-app bot commented Oct 4, 2025

Merge activity

…apshot more clear (#6405)

The integration test contain two parts logic:

- one is varifying whether the output fits the expectation according test meta
- one is collect snapshot.

---

The previous code logic of collecting snapshot hardcode everywhere.  It's hard to understand how the snapshot is constructed and hard to be adjusted.

This PRs splits the logic of varification and generating snapshot.
@graphite-app graphite-app bot force-pushed the 10-03-chore_rust_test_introduce_artifactssnapshot_to_make_generating_snapshot_more_clear branch from e715e7d to 6513b5f Compare October 4, 2025 10:38
@graphite-app graphite-app bot merged commit 6513b5f into main Oct 4, 2025
28 checks passed
@graphite-app graphite-app bot deleted the 10-03-chore_rust_test_introduce_artifactssnapshot_to_make_generating_snapshot_more_clear branch October 4, 2025 10:52
@github-actions github-actions bot mentioned this pull request Oct 7, 2025
shulaoda pushed a commit that referenced this pull request Oct 7, 2025
## [1.0.0-beta.42] - 2025-10-07

### 🚀 Features

- rolldown: oxc v0.94.0 (#6428) by @Boshen
- add CLI environment flag (#6426) by @IWANABETHATGUY
- dev: use `RebuildStrategy#Auto` by default (#6420) by @hyf0
- rolldown_plugin_vite_html: introduce html plugin state (#6413) by @shulaoda
- dev: expose build errors via `DevOptions#on_output` (#6412) by @hyf0
- dev: add binding for `DevOptions#rebuild_strategy` (#6396) by @hyf0
- dev: add `RebuildStrategy::Auto` to issue rebuild automatically if detecting full reload hmr update (#6395) by @hyf0
- debug: inject `call_id` for `renderChunk` hook (#6392) by @hyf0
- node/dev: add `DevEngine#close` (#6377) by @hyf0
- rust/dev: add `DevEngine#close` (#6376) by @hyf0

### 🐛 Bug Fixes

- rolldown_plugin_react_refresh_wrapper: register exports in next microtask (#6423) by @sapphi-red
- plugin/vite-resolve: try original extension before replacing with TS variants (#6421) by @sapphi-red
- node/resolve: take custom package json path into account (#6419) by @hyf0
- dev: call `watchChange` hook (#6403) by @sapphi-red
- use minify options for DCE for dce-only minify (#6402) by @sapphi-red
- respect package.json type field in plugin-resolved modules (#6400) by @hyf0
- returning result of this.resolve in resolveDynamicImport hook impacts bundle size (#6397) by @sapphi-red
- rolldown_plugin_json: avoid generating named exports for `eval` and `arguments` (#6381) by @sapphi-red
- use static property for namespace object (#6383) by @sapphi-red

### 🚜 Refactor

- rust: improve constuction of `PackageJson` and remove unused fields (#6418) by @hyf0
- introduce `BindingResult` to pass errors from rust to js (#6390) by @hyf0
- rust: rename eager_rebuild to rebuild_strategy with enum (#6394) by @hyf0
- rust/binding: use `BindingError` to cover `JsError` and `NativeError` (#6388) by @hyf0
- rust/binding: rename `BindingError` to `NativeError` (#6387) by @hyf0

### 📚 Documentation

- tweak built-in transforms section (#6384) by @sapphi-red

### ⚡ Performance

- dev: avoid frequent `setTimeout` -> `clearTimeout` (#6375) by @sapphi-red

### 🧪 Testing

- hmr: include generated bundle for full reloads in snapshots (#6374) by @sapphi-red
- dev: add test about doing hmr with not being affected by not executed modules (#6360) by @hyf0
- hmr: hmr patch file generation for `this.addWatchFile` (#5219) by @sapphi-red

### ⚙️ Miscellaneous Tasks

- deps: update crate-ci/typos action to v1.38.0 (#6431) by @renovate[bot]
- deps: update crate-ci/typos action to v1.37.3 (#6429) by @renovate[bot]
- deps: lock file maintenance npm packages (#6417) by @renovate[bot]
- deps: update github-actions (#6414) by @renovate[bot]
- rust/test: sensible heading level for build snapshot of config variant (#6408) by @hyf0
- rust/test: introduce `SnapshotSection` to organize snapshot content (#6407) by @hyf0
- rust/test: extract `ArtifactsSnapshot` and `BuildRoundOutput` into standalone files (#6406) by @hyf0
- rust/test: introduce `ArtifactsSnapshot` to make generating snapshot more clear (#6405) by @hyf0
- deps: update crate-ci/typos action to v1.37.2 (#6409) by @renovate[bot]
- fix `GitHub` casing (#6401) by @iiio2
- rust: remove unused `rolldown_binding_watcher` crate (#6386) by @hyf0
- deps: update crate-ci/typos action to v1.37.1 (#6391) by @renovate[bot]
- node: rename `normalizeErrors` into `aggregateBindingErrorsIntoError` (#6389) by @hyf0
- fix typos (#6382) by @sapphi-red
- deps: update dependency tsdown to v0.15.6 (#6379) by @renovate[bot]
- deps: update crate-ci/typos action to v1.37.0 (#6380) by @renovate[bot]
- deps: update dependency rolldown-plugin-dts to v0.16.11 (#6378) by @renovate[bot]
- add comment to `add_watch_file` that the path should be a normalized absolute path (#6371) by @sapphi-red
- deps: update dependency rolldown-plugin-dts to v0.16.10 (#6373) by @renovate[bot]

Co-authored-by: sapphi-red <49056869+sapphi-red@users.noreply.github.com>
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