Skip to content

Comments

chore: remove lazy barrel option#8010

Merged
shulaoda merged 1 commit intomainfrom
01-22-chore_remove_lazy_barrel_option
Jan 22, 2026
Merged

chore: remove lazy barrel option#8010
shulaoda merged 1 commit intomainfrom
01-22-chore_remove_lazy_barrel_option

Conversation

@shulaoda
Copy link
Member

No description provided.

Copy link
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.

@shulaoda shulaoda requested a review from sapphi-red January 22, 2026 10:11
@shulaoda shulaoda marked this pull request as ready for review January 22, 2026 10:11
Copilot AI review requested due to automatic review settings January 22, 2026 10:11
@netlify
Copy link

netlify bot commented Jan 22, 2026

Deploy Preview for rolldown-rs failed.

Name Link
🔨 Latest commit 816ccaf
🔍 Latest deploy log https://app.netlify.com/projects/rolldown-rs/deploys/6971fbd105db780008e9e0c8

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 aims to remove the lazyBarrel experimental option from Rolldown. However, the removal is incomplete as it only comments out references in three files while leaving many other references intact throughout the codebase.

Changes:

  • Comments out the lazyBarrel option in the input options TypeScript interface
  • Comments out the lazyBarrel binding in the options conversion utility
  • Comments out the documentation link in the VitePress configuration

Reviewed changes

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

File Description
packages/rolldown/src/options/input-options.ts Comments out the TypeScript interface definition for the lazyBarrel experimental option
packages/rolldown/src/utils/bindingify-input-options.ts Comments out the binding conversion for the lazyBarrel option
docs/.vitepress/config.ts Comments out the navigation link to the lazy barrel optimization documentation

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

@shulaoda shulaoda force-pushed the 01-22-chore_remove_lazy_barrel_option branch from 6f2dd96 to afc0588 Compare January 22, 2026 10:21
Copilot AI review requested due to automatic review settings January 22, 2026 10:28
@shulaoda shulaoda force-pushed the 01-22-chore_remove_lazy_barrel_option branch from afc0588 to 816ccaf Compare January 22, 2026 10:28
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 13 out of 13 changed files in this pull request and generated 4 comments.


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

nativeMagicString: v.optional(v.boolean()),
chunkOptimization: v.optional(v.boolean()),
lazyBarrel: v.optional(v.boolean()),
// lazyBarrel: v.optional(v.boolean()),
Copy link

Copilot AI Jan 22, 2026

Choose a reason for hiding this comment

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

The lazyBarrel option is commented out but not removed. This PR aims to remove the lazy barrel option, so this line should be deleted entirely rather than commented out. Additionally, the Rust binding layer still contains the lazy_barrel field in BindingExperimentalOptions, which needs to be removed for a complete cleanup.

Suggested change
// lazyBarrel: v.optional(v.boolean()),

Copilot uses AI. Check for mistakes.
nativeMagicString: experimental?.nativeMagicString,
chunkOptimization: experimental?.chunkOptimization,
lazyBarrel: experimental?.lazyBarrel,
// lazyBarrel: experimental?.lazyBarrel,
Copy link

Copilot AI Jan 22, 2026

Choose a reason for hiding this comment

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

The lazyBarrel option is commented out but not removed. This PR aims to remove the lazy barrel option, so this line should be deleted entirely rather than commented out. Additionally, the Rust implementation still contains the lazy_barrel field and all the lazy barrel optimization logic, which needs to be removed for a complete cleanup.

Suggested change
// lazyBarrel: experimental?.lazyBarrel,

Copilot uses AI. Check for mistakes.
},
{ text: 'Directives', link: '/in-depth/directives.md' },
{ text: 'Lazy Barrel Optimization', link: '/in-depth/lazy-barrel-optimization.md' },
// { text: 'Lazy Barrel Optimization', link: '/in-depth/lazy-barrel-optimization.md' },
Copy link

Copilot AI Jan 22, 2026

Choose a reason for hiding this comment

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

The documentation link to the lazy barrel optimization page is commented out but not removed. Since this PR removes the lazy barrel feature, this line should be deleted entirely. Additionally, the actual documentation file at docs/in-depth/lazy-barrel-optimization.md still exists and references to it in docs/glossary/barrel-module.md are still active, which will result in broken links.

Suggested change
// { text: 'Lazy Barrel Optimization', link: '/in-depth/lazy-barrel-optimization.md' },

Copilot uses AI. Check for mistakes.
Comment on lines +10 to +12
// experimental: {
// lazyBarrel: true,
// },
Copy link

Copilot AI Jan 22, 2026

Choose a reason for hiding this comment

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

The experimental configuration is commented out but not removed. For cleaner code maintenance, these commented lines should be deleted entirely since the feature is being removed. The same applies to all other test files in the lazy-barrel directory.

Suggested change
// experimental: {
// lazyBarrel: true,
// },

Copilot uses AI. Check for mistakes.
@shulaoda shulaoda merged commit 897449a into main Jan 22, 2026
34 of 38 checks passed
@shulaoda shulaoda deleted the 01-22-chore_remove_lazy_barrel_option branch January 22, 2026 10:38
@github-actions github-actions bot mentioned this pull request Jan 22, 2026
shulaoda pushed a commit that referenced this pull request Jan 22, 2026
## [1.0.0-rc.1] - 2026-01-22

### 🚀 Features

- debug_info: add facade chunk elimination reason (#7980) by @IWANABETHATGUY
- support lazy barrel optimization (#7933) by @shulaoda
- add `experimental.lazyBarrel` option (#7908) by @shulaoda
- skip unused external modules from IIFE parameter list (#7978) by @sapphi-red
- add custom panic hook for better crash reporting (#7752) by @shulaoda
- treeshake: add `invalidImportSideEffects` option (#7958) by @shulaoda
- merge allow-extension emitted chunks (#7940) by @IWANABETHATGUY
- nativeMagicString generateMap (#7944) by @IWANABETHATGUY
- Include meta.magicString in RenderChunkMeta (#7943) by @IWANABETHATGUY
- debug_info: add debug info for eliminated facade chunks (#7946) by @IWANABETHATGUY
- stablize `strictExecutionOrder` and move to `output.strictExecutionOrder` from `experimental.strictExecutionOrder` (#7901) by @sapphi-red
- add documentation link to require() error message (#7898) by @Copilot
- add `codeSplitting: boolean` and deprecate `inlineDynamicImports` (#7870) by @hyf0
- dev: change lazy module URL to `/@vite/lazy` from `/lazy` (#7884) by @sapphi-red

### 🐛 Bug Fixes

- transform JS files containing `</script>` to escape template literals (#7987) by @IWANABETHATGUY
- apply avoid-breaking-exported-api = false to clippy.toml and fix clippy errors (#7982) by @Boshen
- pass `kind` from `this.resolve` (#7981) by @sapphi-red
- rolldown_plugin_vite_resolve: ignore yarn resolution errors and fallback to other resolvers (#7968) by @sapphi-red
- renamer: prevent renaming symbols when there no conflicts (#7936) by @Dunqing
- correct minifyInterExports when emitted chunk got merged (#7941) by @IWANABETHATGUY
- deduplicate entry points when module is both emitted and dynamically imported (#7885) by @IWANABETHATGUY
- dev: add `@vite-ignore` to lazy compilation proxy module import (#7883) by @sapphi-red

### 🚜 Refactor

- rust: enable clippy nursery lint group (#8002) by @Boshen
- rust: fix inconsistent_struct_constructor clippy lint (#7999) by @Boshen
- rust: fix needless_pass_by_ref_mut clippy lint (#7994) by @Boshen
- rust: fix unnecessary_wraps clippy lint (#7993) by @Boshen
- rust: fix enum_variant_names clippy lint (#7992) by @Boshen
- fix single_match clippy lint (#7997) by @Boshen
- rust: fix redundant_clone clippy lint (#7996) by @Boshen
- rust: rename CJS to Cjs to follow upper_case_acronyms lint (#7991) by @Boshen
- rust: remove unnecessary Box wrapper around Vec in MemberExprRef (#7990) by @Boshen
- import_record: make resolved_module optional (#7907) by @shulaoda
- remove unnecessary `.parse` (#7966) by @sapphi-red
- remove unused `ImportRecordMeta::IsPlainImport` (#7948) by @shulaoda
- proper set chunk meta (#7939) by @IWANABETHATGUY
- module_loader: remove `try_spawn_with_cache` (#7920) by @shulaoda
- link_stage: simplify `ImportStatus::NoMatch` to unit variant (#7909) by @shulaoda
- improve global scope symbol reservation in chunk deconfliction (#7906) by @IWANABETHATGUY
- simplify ast unwrapping in generate stage (#7900) by @IWANABETHATGUY
- generate_stage: optimize cross-chunk imports computation (#7889) by @shulaoda
- link_stage: move runtime require logic into match branch (#7892) by @shulaoda
- link_stage: simplify runtime require reference conditions (#7891) by @shulaoda
- link_stage: inline and simplify external dynamic import check (#7890) by @shulaoda
- generate_stage: simplify external module import collection logic (#7887) by @shulaoda
- avoid redundant module lookup in TLA computation (#7886) by @shulaoda
- dev: `devEngine.compileEntry` does not return null (#7882) by @sapphi-red
- dev: fix type errors for test HMR runtime (#7881) by @sapphi-red
- dev: move `clientId` property to `DevRuntime` base class (#7880) by @sapphi-red
- dev: generate client id in browser (#7878) by @hyf0

### 📚 Documentation

- apis: organize hook filters documentation and add composable filters section (#8003) by @sapphi-red
- update `vitepress-plugin-group-icons` (#7947) by @yuyinws
- add in-depth documentation for lazy barrel optimization (#7969) by @shulaoda
- bump theme & update activeMatch for reference (#7963) by @mdong1909
- mark `build()` API as experimental (#7954) by @sapphi-red
- enhance search functionality with improved scoring and filtering logic (#7935) by @hyf0
- add minor comments to multiple types (#7930) by @sapphi-red
- refactor advanedChunks related content to adapt manual code splitting concept (#7925) by @hyf0
- apis: add content to Bundler API page (#7926) by @sapphi-red
- apis: restructure plugin API related docs (#7924) by @sapphi-red
- add plugin API docs (#7923) by @sapphi-red
- apis: add docs to important APIs (#7913) by @sapphi-red
- move the important APIs to the top of the sidebar (#7912) by @sapphi-red
- apis: add more content to CLI documentation (#7911) by @sapphi-red
- apis: generate CLI docs from --help output (#7910) by @sapphi-red
- add fathom analytics (#7896) by @mdong1909

### ⚡ Performance

- use u32 for string indices in string_wizard and rolldown to reduce memory usage (#7989) by @IWANABETHATGUY
- rust: remove all usages of `with_scope_tree_child_ids(true)` for `SemanticBuilder` (#7995) by @Dunqing
- renamer: skip unnecessary nested scope symbol processing (#7899) by @Dunqing
- module_loader: use ArcStr for importer_id to avoid string copy (#7922) by @shulaoda
- module_loader: defer `ModuleTaskOwner` construction until needed (#7921) by @shulaoda
- renamer: optimize symbol renaming by eliminating `rename_non_root_symbol` pass (#7867) by @Dunqing

### 🧪 Testing

- add lazy barrel optimization test cases (#7967) by @shulaoda

### ⚙️ Miscellaneous Tasks

- remove lazy barrel option (#8010) by @shulaoda
- mark watch API as experimental (#8004) by @sapphi-red
- deps: update dependency lodash-es to v4.17.23 [security] (#8001) by @renovate[bot]
- git ignore zed local config (#7988) by @IWANABETHATGUY
- setup publint for published packages (#7972) by @Copilot
- enable `tagged_template_transform ` uncondionally (#7975) by @IWANABETHATGUY
- deps: update oxc to v0.110.0 (#7964) by @renovate[bot]
- deps: update oxc apps (#7962) by @renovate[bot]
- ai: add upgrade-oxc Claude skill (#7957) by @Boshen
- deps: update rollup submodule for tests to v4.55.2 (#7959) by @sapphi-red
- deps: update test262 submodule for tests (#7960) by @sapphi-red
- deps: update crate-ci/typos action to v1.42.1 (#7961) by @renovate[bot]
- deps: update rust crates (#7951) by @renovate[bot]
- deps: update npm packages (#7953) by @renovate[bot]
- deps: update github-actions (#7952) by @renovate[bot]
- deps: update npm packages (#7950) by @renovate[bot]
- format magic-string test before write to disk (#7945) by @IWANABETHATGUY
- deps: update dependency rolldown-plugin-dts to ^0.21.0 (#7915) by @renovate[bot]
- deps: update dependency oxlint-tsgolint to v0.11.1 (#7914) by @renovate[bot]
- deps: update dependency diff to v8.0.3 [security] (#7904) by @renovate[bot]
- remove outdated TODO comment in `collect_depended_symbols` (#7888) by @shulaoda
- deps: update oxc resolver to v11.16.3 (#7876) by @renovate[bot]
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