Skip to content

refactor(binding): rename Bundler to BindingBundleImpl #4983

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

hyf0
Copy link
Member

@hyf0 hyf0 commented Jun 17, 2025

Preparation for #4134.

Currently RolldownBuild in nodejs might creates mutiple binding bundlers. This abstraction isn't proper anymore. We need a rust struct that has the same lifetime matchs RolldownBuild in nodejs, which should be the one that has the name BindingBundler.

Copy link
Member Author

hyf0 commented Jun 17, 2025

Copy link

netlify bot commented Jun 17, 2025

Deploy Preview for rolldown-rs ready!

Name Link
🔨 Latest commit d50c721
🔍 Latest deploy log https://app.netlify.com/projects/rolldown-rs/deploys/6851388eea06870008170a03
😎 Deploy Preview https://deploy-preview-4983--rolldown-rs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@hyf0 hyf0 marked this pull request as ready for review June 17, 2025 07:45
@hyf0 hyf0 force-pushed the 06-17-refactor_binding_rename_bundler_to_bindingbundleimpl_ branch 3 times, most recently from d83f416 to daa9358 Compare June 17, 2025 07:57
Copy link
Contributor

github-actions bot commented Jun 17, 2025

Benchmarks Rust

  • target: main(13e7afc)
  • pr: 06-17-refactor_binding_rename_bundler_to_bindingbundleimpl_(d50c721)
group                                                        pr                                     target
-----                                                        --                                     ------
bundle/bundle@multi-duplicated-top-level-symbol              1.00     76.8±2.54ms        ? ?/sec    1.00     76.7±2.30ms        ? ?/sec
bundle/bundle@multi-duplicated-top-level-symbol-sourcemap    1.00     88.5±2.49ms        ? ?/sec    1.00     88.4±2.58ms        ? ?/sec
bundle/bundle@rome_ts                                        1.00    113.8±2.30ms        ? ?/sec    1.01    114.6±2.16ms        ? ?/sec
bundle/bundle@rome_ts-sourcemap                              1.00    129.3±2.76ms        ? ?/sec    1.01    130.9±2.92ms        ? ?/sec
bundle/bundle@threejs                                        1.00     41.6±2.27ms        ? ?/sec    1.00     41.4±1.08ms        ? ?/sec
bundle/bundle@threejs-sourcemap                              1.01     48.3±1.57ms        ? ?/sec    1.00     47.9±0.73ms        ? ?/sec
bundle/bundle@threejs10x                                     1.00    439.1±6.48ms        ? ?/sec    1.01    442.1±6.13ms        ? ?/sec
bundle/bundle@threejs10x-sourcemap                           1.00    513.0±5.63ms        ? ?/sec    1.01    519.1±7.94ms        ? ?/sec
scan/scan@rome_ts                                            1.00     89.6±1.53ms        ? ?/sec    1.00     89.3±1.62ms        ? ?/sec
scan/scan@threejs                                            1.01     31.9±1.95ms        ? ?/sec    1.00     31.4±0.51ms        ? ?/sec
scan/scan@threejs10x                                         1.00    326.6±6.89ms        ? ?/sec    1.00    325.5±6.02ms        ? ?/sec

@hyf0 hyf0 force-pushed the 06-17-refactor_binding_rename_bundler_to_bindingbundleimpl_ branch from daa9358 to d50c721 Compare June 17, 2025 09:42
@hyf0 hyf0 added this pull request to the merge queue Jun 17, 2025
Merged via the queue into main with commit 36f55b2 Jun 17, 2025
23 checks passed
@hyf0 hyf0 deleted the 06-17-refactor_binding_rename_bundler_to_bindingbundleimpl_ branch June 17, 2025 10:03
github-merge-queue bot pushed a commit that referenced this pull request Jun 17, 2025
> pnpm install  0.93s user 0.21s system 137% cpu 0.833 total
- warm-up `pnpm install ` is fast enough.
- `just` is smart enough to only execute `pnpm-install` once in any
command.
- reason:
#4983 (comment)
github-actions bot pushed a commit that referenced this pull request Jun 17, 2025
## [1.0.0-beta.17] - 2025-06-17

### 🚀 Features

- binding: feat(binding): always use the same `BindingBundler` to create `BindingBundlerImpl` for the same `RolldownBuild` by @hyf0 in [#4985](#4985)
- debug: feat(debug): cache large string by @hyf0 in [#4882](#4882)
- feat: make require('./foo.json') work as expected even if the json is transformed to JS by a custom plugin by @IWANABETHATGUY in [#4984](#4984)
- feat: add diagnostic for multiple entries with UMD/IIFE formats by @shulaoda in [#4954](#4954)

### 🐛 Bug Fixes

- plugin/vite-resolve: fix(plugin/vite-resolve): importing an optional peer dep should throw an runtime error by @sapphi-red in [#4980](#4980)
- fix: upgrade napi, fix wasm url by @sxzz in [#4958](#4958)
- fix: should rewrite hmr related ast after test if `experimental.hmr` is enabled. by @IWANABETHATGUY in [#4972](#4972)

### 💼 Other

- build: provide `"type": "module"` in `package.json` by @iiio2 in [#4974](#4974)

### 🚜 Refactor

- binding: refactor(binding): rename `Bundler` to `BindingBundleImpl` by @hyf0 in [#4983](#4983)
- rolldown: refactor(rolldown): migrate to ESM package by @sxzz in [#4959](#4959)

### 📚 Documentation

- docs: explain how to transpile legacy decorators by @hyf0 in [#4989](#4989)
- code-splitting: docs(code-splitting): make terms bold instead of wrapped with inline code block by @hyf0 in [#4975](#4975)
- docs: improve advanced chunks by @hyf0 in [#4966](#4966)
- docs: refine code splitting guide by @sapphi-red in [#4969](#4969)

### 🧪 Testing

- test: place empty `package.json` to prevent all files to be treated as node mode by @sapphi-red in [#4979](#4979)

### ⚙️ Miscellaneous Tasks

- infra: chore(infra): ensure `pnpm install` for common commands by @hyf0 in [#4987](#4987)
- browser: chore(browser): add `@oxc-project/runtime` by @shulaoda in [#4988](#4988)
- deps: chore(deps): update dependency tsdown to v0.12.8 by @renovate[bot] in [#4977](#4977)
- deps: chore(deps): update npm packages (major) by @renovate[bot] in [#4963](#4963)
- deps: chore(deps): lock file maintenance npm packages by @renovate[bot] in [#4967](#4967)
- deps: chore(deps): lock file maintenance rust crates by @renovate[bot] in [#4965](#4965)
- deps: chore(deps): lock file maintenance npm packages by @renovate[bot] in [#4964](#4964)
- deps: chore(deps): update github-actions by @renovate[bot] in [#4962](#4962)

### ❤️ New Contributors

* @iiio2 made their first contribution in [#4974](#4974)
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
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy