1.0.0-beta.10 (2025-05-28)
⚠ BREAKING CHANGES
- "feat!: always make the default value of
platform
as browser
" (#4720)
- resolve: add
module
to resolve conditions by default (#4703)
- types/resolve: use literal
'import-statement'
to refer to static import statements instead of 'import'
(#4689)
- rust: merge
target
option into transform
(#4665)
- rust: merge
jsx
option into transform
(#4654)
- always make the default value of
platform
as browser
(#4611)
Features
- add preserveEntrySignatures option (#4640) (3979e2a)
- always make the default value of
platform
as browser
(#4611) (43425a0)
- binding: preserveModulesRoot (#4631) (51df2b7)
- ci: apply
cargo shear --fix
correctly in autofix (#4677) (15934eb)
- debug: add
StmtSideEffect
to record the specific reason why a stmt has side effect (#4671) (5982115)
- debug: emit more details for
Module[#imports](https://github.com/rolldown/rolldown/issues/imports)
(#4619) (42afd5a)
- enable cjs ns merge for react (#4621) (ddf8da8)
- enable loose mode validate option and give warning (#4638) (080ce4e)
- on_demand_wrapping: don't wrap modules that don't rely on others and have side effect (#4670) (326e6f5)
- plugin/json: only transform module with
moduleType: 'json'
(#4554) (c69e332)
- rolldown_plugin_oxc_runtime: support automatic resolution of oxc runtime helpers (#4641) (b09c035), closes #4597
- rolldown_plugin_utils: extract
check_public_file
from rolldown_plugin_asset
(#4660) (1b3b8c3)
- rolldown_plugin_utils: extract
file_to_url
from rolldown_plugin_asset
(#4663) (40290b5)
- rolldown_plugin_utils: support
create_to_import_meta_url_based_relative_runtime
(#4657) (d77354f)
- rolldown_plugin_utils: support
to_output_file_path_in_js
(#4659) (9e8c677)
- rolldown: oxc v0.71.0 and napi beta (#4618) (76c39c6), closes #4614
- rolldown: oxc v0.72.0 (#4658) (8371a90)
- rolldown: oxc v0.72.1 and oxc-resolver v11 (#4718) (79a47fc)
- rust: merge
jsx
option into transform
(#4654) (4872097), closes #4447
- rust: merge
target
option into transform
(#4665) (f9aa33a), closes #4651
- rust: preserveModulesRoot (#4630) (9f62c77)
- support to attach chunk debug information in output (#4633) (1079582)
Bug Fixes
chunk.name
is not sanitized when the chunk is a common chunk (#4712) (5949f2a), closes #4709
preserveModules
co exists with multi entrypoints (#4626) (b46bdea), closes #4624
preserveModules
don't respect relative path (#4629) (9727493)
- browser: disable oxc runtime plugin (#4708) (0ec9e7d), closes #4707
- ci: add missing
just
in warmup workflow (c6a1eb1)
- ci: cache release builds to a different cache key (a002b24)
- ci: cache warmup should include build artifacts (#4675) (0f2c3b5)
- ci: fix double pnpm cache from
setup-node
(#4685) (db25788)
- ci: fix release build (#4691) (82620b9)
- ci: fix template-injection in benchmark-rust (57b2792)
- ci: fix template-injection in publish-to-npm-for-nightly-canary.yml (352340f)
- ci: in metrics, use cache instead of
cargo fetch
(937eae9)
- ci: pnpm install --ignore-scripts (#4696) (e040112)
- cjs namespace merge in incremental build (#4613) (b1c500e)
- dynamic chunk not exported when using preserveModules (#4650) (d91dfb5)
- exported dynamic import is treated as unused (#4648) (edf5b4e), closes #4646
- generated wrapper stmt info should be always included on demand (#4639) (ed553e1)
- index out of bounds panic at oxc_index-3.0.0 with recent canary version (#4713) (3fad6f4)
- inlineDynamicImports: ensure tla module execution correctly (#4627) (e9ef28c)
- partial cjs namespace merge with chunk split (#4598) (83a0b40)
- partial merge cjs namespace (#4595) (0085f4a)
- removing unused dynamic imported chunks (#4655) (fe21db7)
- resolve: add
module
to resolve conditions by default (#4703) (9727531)
- rolldown/browser: auto-resolve oxc runtime helpers (#4645) (701bbc3), closes #4641
- rust: avoid panic in
into_assignment_target
(#4688) (6c806ea), closes #4304
- sort dynamic entires with topological order before tree shake. (#4694) (bc96622)
- strict_execution_order: runtime module should not be wrapped by default (#4692) (4008ac0)
- strict_execution_order: wrapped module should be included on demand (#4687) (7c21036)
- strip path for require identifier with
preserveModules
(#4704) (2ba8e28), closes #4700
- types/resolve: use literal
'import-statement'
to refer to static import statements instead of 'import'
(#4689) (eee51d8)
- watch: watch linux path at windows (#4625) (ed594aa)
Performance Improvements
- change
profile.dev.debug
to improve rust compile times (#4623) (0312f66)
- rolldown: prevent duplicate text embedding with
include_str!
(#4664) (8fee5af), closes #4354
Reverts
- "feat!: always make the default value of
platform
as browser
" (#4720) (4021325), closes rolldown/rolldown#4611
- "refactor(rolldown_sourcemap): remove unused
SourceJoiner[#prepend](https://github.com/rolldown/rolldown/issues/prepend)_source
" (#4632) (719ec89), closes rolldown/rolldown#4431
feat(on_demand_wrapping): don't wrap modules that don't rely on others and have side effect [#4670](https://github.com/rolldown/rolldown/issues/4670)
(#4686) (8a77ce9)