Skip to content

refactor(bitset): return bool from set_bit to fuse guard-and-set#9207

Merged
graphite-app[bot] merged 1 commit intomainfrom
refactor/bitset-set-bit-returns-bool
Apr 22, 2026
Merged

refactor(bitset): return bool from set_bit to fuse guard-and-set#9207
graphite-app[bot] merged 1 commit intomainfrom
refactor/bitset-set-bit-returns-bool

Conversation

@IWANABETHATGUY
Copy link
Copy Markdown
Member

@IWANABETHATGUY IWANABETHATGUY commented Apr 22, 2026

BitSet::set_bit and IndexBitSet::set_bit now return true when the bit was newly set, mirroring HashSet::insert. Fuses four if has_bit(x) { return } set_bit(x) patterns into a single if !set_bit(x) { return } in wrap_module_recursively, has_dynamic_exports_due_to_export_star, include_module, and include_statement.

Copy link
Copy Markdown
Member Author


How to use the Graphite Merge Queue

Add the label graphite: merge-when-ready 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
Copy Markdown

netlify Bot commented Apr 22, 2026

Deploy Preview for rolldown-rs canceled.

Name Link
🔨 Latest commit 1b19a10
🔍 Latest deploy log https://app.netlify.com/projects/rolldown-rs/deploys/69e8d58837a16f0008c56d72

@IWANABETHATGUY IWANABETHATGUY marked this pull request as ready for review April 22, 2026 13:54
@IWANABETHATGUY IWANABETHATGUY force-pushed the refactor/bitset-set-bit-returns-bool branch from 478113f to dbe47c7 Compare April 22, 2026 13:54
Copy link
Copy Markdown
Member Author

IWANABETHATGUY commented Apr 22, 2026

Merge activity

  • Apr 22, 1:55 PM UTC: The merge label 'graphite: merge-when-ready' was detected. This PR will be added to the Graphite merge queue once it meets the requirements.
  • Apr 22, 2:03 PM UTC: IWANABETHATGUY added this pull request to the Graphite merge queue.
  • Apr 22, 2:10 PM UTC: Merged by the Graphite merge queue.

`BitSet::set_bit` and `IndexBitSet::set_bit` now return `true` when the bit was newly set, mirroring `HashSet::insert`. Fuses four `if has_bit(x) { return } set_bit(x)` patterns into a single `if !set_bit(x) { return }` in `wrap_module_recursively`, `has_dynamic_exports_due_to_export_star`, `include_module`, and `include_statement`.
@graphite-app graphite-app Bot force-pushed the refactor/bitset-set-bit-returns-bool branch from dbe47c7 to 1b19a10 Compare April 22, 2026 14:04
@graphite-app graphite-app Bot merged commit 1b19a10 into main Apr 22, 2026
32 of 33 checks passed
@graphite-app graphite-app Bot deleted the refactor/bitset-set-bit-returns-bool branch April 22, 2026 14:10
This was referenced Apr 29, 2026
shulaoda added a commit that referenced this pull request Apr 29, 2026
## [1.0.0-rc.18] - 2026-04-29

### 💥 BREAKING CHANGES

- optimization: default unspecified inlineConst.mode to smart (#9248) by @IWANABETHATGUY

### 🐛 Bug Fixes

- rolldown_plugin_vite_import_glob: return error instead of panicking when virtual module uses a relative glob (#9241) by @shulaoda
- binding: treat empty inlineConst object as omitted (#9247) by @IWANABETHATGUY
- rolldown: keep enum declaration for optional-chain access (#9229) by @Dunqing
- link_stage: restore inline let-else in exports-kind filter (#9237) by @IWANABETHATGUY
- dev/lazy: avoid module reinitialization in lazy compilation patches (#9179) by @h-a-n-a
- dev: visit identifier references for runtime rewrites in HMR finalizer (#9191) by @h-a-n-a
- chunk-optimizer: pick dominator for runtime placement to avoid cycles (#9164) by @IWANABETHATGUY
- make `this.emitFile` chunk path synchronous to avoid deadlock (#9031) by @lazarv
- use sentinel id for `browser: false` ignored modules (#9192) by @shulaoda
- prevent chunk optimizer from creating import cycles (#9228) by @IWANABETHATGUY

### 🚜 Refactor

- replace tokio::sync::Mutex with std::sync::Mutex for non-IO data (#9176) by @shulaoda
- rolldown_plugin_vite_import_glob: do not rewrite import path for absolute base (#9195) by @shulaoda
- runtime_helper: wrap DependedRuntimeHelperMap in a struct (#9215) by @IWANABETHATGUY
- drop redundant clear() in determine_safely_merge_cjs_ns (#9206) by @IWANABETHATGUY
- clean up generate_lazy_export (#9208) by @IWANABETHATGUY
- bitset: return bool from set_bit to fuse guard-and-set (#9207) by @IWANABETHATGUY
- link_stage: simplify exports-kind filter and clarify safety comments (#9205) by @IWANABETHATGUY

### 📚 Documentation

- determine_module_exports_kind (#9252) by @IWANABETHATGUY
- fix dead link to esbuild ESM/CJS interop tests (#9230) by @Copilot
- remove CSS bundling references (#9234) by @shulaoda
- correct IncrementalFullBuild row in BundleMode table (#9214) by @IWANABETHATGUY
- design: add bundler data lifecycle design doc (#9212) by @hyf0
- remove minifier alpha status notices (#9202) by @sapphi-red

### ⚙️ Miscellaneous Tasks

- upgrade oxc to 0.128.0 (#9260) by @shulaoda
- deps: bump rolldown-ariadne to 0.6.0 (#9254) by @IWANABETHATGUY
- deps: update github actions (#9259) by @renovate[bot]
- deps: update github actions (#9258) by @renovate[bot]
- remove renovate overrides (#9257) by @Boshen
- use ubuntu-latest for security workflow (#9256) by @Boshen
- notify Discord around release publish (#9251) by @Boshen
- add release environment to npm publish workflow (#9250) by @Boshen
- justfile: drop the `--` separator before forwarded args in `vp run` (#9246) by @shulaoda
- deps: update test262 submodule for tests (#9243) by @sapphi-red
- add more tracing instrumentations (#9220) by @sapphi-red
- rolldown_plugin_vite_import_glob: remove outdated sourcemap doc comment (#9213) by @shulaoda
- update security workflow (#9201) by @Boshen

### ❤️ New Contributors

* @lazarv made their first contribution in [#9031](#9031)

Co-authored-by: shulaoda <165626830+shulaoda@users.noreply.github.com>
@rolldown-guard rolldown-guard Bot mentioned this pull request Apr 29, 2026
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