Conversation
✅ Deploy Preview for rolldown-rs ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
[1.0.0-rc.5] - 2026-02-18
💡 Smarter
entriesAwareManual Code SplittingNew
entriesAwareandentriesAwareMergeThresholdoptions formanualCodeSplitting.groups[]enable entry-reachability-based chunk splitting with automatic small chunk merging.entriesAware: truesplits matched modules by entry reachability — modules reached by the same set of entries are grouped together, providing the most precise loading behavior with less over-fetchingvendor-entry-a-entry-b.js) instead of opaque hashesentriesAwareMergeThresholdsets a byte-size threshold to merge tiny subgroups into the closest sibling with the fewest extra entries, reducing micro-chunk fragmentation while preserving precisionmaxSize: merge tiny chunks first to reduce request overhead, then cap large chunks to control payload size🚀 Features
Visitortorolldown/utils(feat: addVisitortorolldown/utils#8373) by @sapphi-redinputFormatproperty toModuleInfo(feat(module-info): addinputFormatproperty toModuleInfo#8329) by @shulaodatreeshake.invalid_import_side_effectstofalse(feat: defaulttreeshake.invalid_import_side_effectstofalse#8357) by @sapphi-redIndexBitSet(feat(rolldown_utils): addIndexBitSet#8343) by @sapphi-redawait import().then((m) => m.prop)(feat(rolldown_plugin_vite_build_import_analysis): add support forawait import().then((m) => m.prop)#8328) by @sapphi-redentriesAwareMergeThreshold(feat(rust/mcs): supportentriesAwareMergeThreshold#8312) by @hyf0maxSizewill split the oversized chunk with taking file relevance into account (feat(mcs):maxSizewill split the oversized chunk with taking file relevance into account #8277) by @hyf0entriesAwarechunks (feat(mcs): generate more readable name forentriesAwarechunks #8275) by @hyf0entriesAware(feat(mcs): supportentriesAware#8274) by @hyf0🐛 Bug Fixes
minify.compress: trueandminify.mangle: truewithminify: true(fix: alignminify.compress: trueandminify.mangle: truewithminify: true#8367) by @sapphi-redencode_hash_with_baseoutput to fixed length to prevent slice panics (fix: padencode_hash_with_baseoutput to fixed length to prevent slice panics #8320) by @shulaodaxxhash_with_baseskips hashing when input is exactly 16 bytes (fix:xxhash_with_baseskips hashing when input is exactly 16 bytes #8319) by @shulaodaImportKind::try_fromwith missing variants and correcturl-importtourl-token(fix: completeImportKind::try_fromwith missing variants and correcturl-importtourl-token#8310) by @shulaodaexternalconfig (fix: mark Node.js builtin modules as side-effect-free when resolved viaexternalconfig #8304) by @IWANABETHATGUYmaxSizeshould split chunks correctly based on sizes (fix(mcs):maxSizeshould split chunks correctly based on sizes #8289) by @hyf0🚜 Refactor
RawMangleOptionsandRawCompressOptions(refactor: introduceRawMangleOptionsandRawCompressOptions#8366) by @sapphi-redapply_manual_code_splittingintoManualSplitter(refactor(mcs): refactorapply_manual_code_splittingintoManualSplitter#8346) by @hyf0ModuleGroupOriginandModuleGroupId(refactor(mcs): introduce newtypeModuleGroupOriginandModuleGroupId#8311) by @hyf0FinalizerMutableStatestruct (refactor: remove unnecessaryFinalizerMutableStatestruct #8303) by @shulaodafinalize_modules(refactor: move module finalization intofinalize_modules#8302) by @shulaodaapply_transfer_parts_mutationinto its own module (refactor: extractapply_transfer_parts_mutationinto its own module #8301) by @shulaodadetermine_export_mode(refactor: move ESM format check intodetermine_export_mode#8294) by @shulaodawarningsfield fromGenerateContext(refactor: removewarningsfield fromGenerateContext#8293) by @shulaodais_in_node_modulestoPathExttrait inrolldown_std_utils(refactor: moveis_in_node_modulestoPathExttrait inrolldown_std_utils#8286) by @shulaoda\0rolldown/runtime.js(refactor(dev): inject hmr runtime to\0rolldown/runtime.js#8234) by @hyf0📚 Documentation
formatJSDoc from'esm'to'es'(docs: change default value informatJSDoc from'esm'to'es'#8372) by @shulaodainvalidImportSideEffectsoption mention from lazy barrel optimization doc (docs(in-depth): removeinvalidImportSideEffectsoption mention from lazy barrel optimization doc #8355) by @sapphi-redminSizeconstraints (docs(manual-code-splitting): clarify minSize constraints #8279) by @ShroXd⚡ Performance
report_compressed_sizeis disabled (perf(rolldown_plugin_vite_reporter): skip gzip computation whenreport_compressed_sizeis disabled #8321) by @shulaoda🧪 Testing
vi.waitForandexpect.pollinstead of customwaitUtilfunction (test: usevi.waitForandexpect.pollinstead of customwaitUtilfunction #8369) by @sapphi-red⚙️ Miscellaneous Tasks