v1.1.0
See Announcing Rspack 1.1 for more details.
What's Changed
Performance Improvements β‘
- perf: incremental build chunk graph by @JSerFeng in #7721
- perf: enable
xxhash64
hash function by default by @chenjiahan in #8249 - perf: enable SWC
disableAllLints
by default to reduce overhead by @chenjiahan in #8275 - perf(core): replace
neo-async
with a minimal helper by @chenjiahan in #8282 - perf: remove unnecessary regex by @shulaoda in #8320
- perf(cli): enable Node.js compile cache by @chenjiahan in #8331
Exciting New Features π
- feat: add setters for errors and warnings in Compilation by @inottn in #8115
- feat(CLI): make
@rspack/cli
dual package and bundle with Rslib by @chenjiahan in #8187 - feat: add rspack_cacheable lib by @jerrykingxyz in #8156
- feat: keep SWC types up to date by @chenjiahan in #8215
- feat: support wrappedContextRegExp by @inottn in #8149
- feat: introduce RemoveDuplicateModulesPlugin by @JSerFeng in #8128
- feat(html): support function filename and
[name]
in filename by @LingyuCoder in #7753 - feat: module.modules by @SyMind in #8192
- feat: support
output.compareBeforeEmit
by @LingyuCoder in #8245 - feat(incremental): free space for revoked modules by @ahabhgk in #8250
- feat(core): bump swc to 3.0.1 by @hardfist in #8264
- feat: add read API to output file system by @LingyuCoder in #8274
- feat(rspack/stats): support the option groupModulesByLayer of stats by @easy1090 in #8283
- feat: unify js module by @SyMind in #8210
- feat(core): improve progress plugin for multi compiler by @hardfist in #8301
- feat: unify module in loader context by @SyMind in #8262
- feat(core): bump swc to 4.0.2 by @hardfist in #8322
- feat: use lightningcss v1.0.0-alpha.60 stead of lightningcss_rs by @GiveMe-A-Name in #8324
- feat: throw error for outdated compilation by @SyMind in #8315
- feat: support compilation.modules[i].dependencies by @inottn in #8050
- feat(core): bump swc to 5.0.0 by @hardfist in #8354
- feat: improve description, types and JSDoc for entry options by @chenjiahan in #8361
Bug Fixes π
- fix: temporarily use
lightingcss_rs
to fix CSS property order by @GiveMe-A-Name in #8182 - fix(deps): upgrade rspack_resolver 0.3.5 to fix extensionAlias edge cases by @SoonIter in #8188
- fix: should correct cacheGroups test regex by @JSerFeng in #8204
- fix(type):
rspack
function type in cjs require by @SoonIter in #8169 - fix(modern-module): concatenate entry module regardless bail reasons by @fi3ework in #8165
- fix(ci): trigger
pkg-preview
when the needs are skipped by @shulaoda in #8216 - fix: incremental provided exports should rebuild clean exports info by @ahabhgk in #8221
- fix: module_executor support layer by @jerrykingxyz in #8212
- fix: expose incremental.buildChunkGraph by @JSerFeng in #8240
- fix: compile time evaluation of require.ensure by @LingyuCoder in #8242
- fix(cli): display the error which is thrown by the plugin during the starting of
rspack serve
by @LingyuCoder in #8244 - fix: preserve star export from external module by @fi3ework in #8217
- fix: sourceMapFilename is relative by @SyMind in #8269
- fix(type): Make iterators compatible with TS 5.6
--target ESNext
by @andersk in #8279 - fix(core): remove unused source files by @chenjiahan in #8285
- fix: types and docs of umd external object by @LingyuCoder in #8286
- fix(test-tools): update peer dependency @rspack/core to v1 by @renovate in #8289
- fix(type): Patch rollup-plugin-dts bug that broke prebundled zod by @andersk in #8306
- fix: hotUpdate chunk should have correct runtime by @JSerFeng in #8273
- fix: error for set user request by @SyMind in #8307
- fix: falsy rule should be filtered by @LingyuCoder in #8297
- fix: use incremental in production build by @ahabhgk in #8311
- fix: correct usage of
pnpm --filter
in package scripts by @shulaoda in #8319 - fix: runtime chunk hash should respect their reference order by @ahabhgk in #8303
- fix(ci): pkg.pr.preview not work by @SoonIter in #8325
- fix: file dependencies are lost when css module fails by @LingyuCoder in #8328
- fix: code auto merging error by @SyMind in #8341
- fix(cli): missing
exports.types
field by @chenjiahan in #8355 - fix(tests): layer-stats snapshot problem by @easy1090 in #8356
- fix: correct split-chunks tests by @JSerFeng in #8357
- fix(experiments css): should preserve keywords decl and compose ident for self reference by @Austaras in #8225
- fix: import order change should re-seal by @JSerFeng in #8358
- fix(core): bump swc to 5.0.1 by @hardfist in #8362
Document Updates π
- docs: update ContextModuleFactory hook by @9aoy in #8178
- docs: correct ES modules and some other spellings by @chenjiahan in #8191
- docs: add tips and examples for experiments configs by @chenjiahan in #8189
- docs: use ApiMeta specific label instead of Webpack specific chapter by @9aoy in #8186
- docs: update links in README by @chenjiahan in #8203
- docs: add layer examples and correct types by @chenjiahan in #8202
- docs: fix link is 404 in Guide by @nobuaki0331 in #8223
- docs: correct the format of defaultValue by @inottn in #8222
- docs: should enable swc
keepImportAttributes
configuration when useRule.with
by @9aoy in #8239 - docs: addedVersion should link to release tag by @9aoy in #8241
- docs: update Rspack roadmap by @chenjiahan in #8246
- docs: add license to website footer by @chenjiahan in #8261
- docs(swc-loader): add example for syntax lowering and polyfill by @chenjiahan in #8265
- docs: fix inline match resource typo by @9aoy in #8292
- docs: add docs for incremental by @ahabhgk in #8293
- docs: add swc cacheRoot guide by @9aoy in #8308
- docs: add Docusaurus to ecosystem by @chenjiahan in #8336
- docs: add Nuxt to ecosystem by @chenjiahan in #8338
- docs: improve default value, types and examples for
optimization
by @chenjiahan in #8339 - docs: fix missing internal plugins by @chenjiahan in #8343
Other Changes
- refactor: add JSDoc to improve config.experiments types by @GiveMe-A-Name in #8184
- test: rename harmony to ESM by @chenjiahan in #8183
- chore(deps): update crates by @renovate in #6596
- chore(deps): update dependency exit-hook to v4 by @renovate in #8193
- chore(deps): update pnpm to v9.12.2 by @renovate in #8199
- refactor: collect rebuild modules mutations in make by @ahabhgk in #8196
- refactor: add JSDoc to improve config.wath types by @GiveMe-A-Name in #8201
- test: add
rspack.default
should not exist test by @SoonIter in #8207 - chore(typo): rename
lightningCssMiminizerPlugin.ts
file by @SoonIter in #8214 - refactor: add JSDoc to improve config.devServer type by @GiveMe-A-Name in #8213
- refactor: add JSDoc to improve config.ignoreWarnings, profile, bail types by @GiveMe-A-Name in #8230
- chore(deps): update npm dependencies by @renovate in #8200
- refactor: add JSDoc to improve config.performance by @GiveMe-A-Name in #8231
- refactor: add JSDoc to improve rspack config types by @GiveMe-A-Name in #8233
- ci: allow to use self-host runner when preview package by @LingyuCoder in #8236
- ci: allow to get label from self host runner by @LingyuCoder in #8237
- chore: add Debug trait for FileSystem and Make Task by @jerrykingxyz in #8252
- ci: allow aarch64 gnu compile on github runner in pkg preview by @LingyuCoder in #8253
- test: remove copy plugin build folder by @LingyuCoder in #8251
- ci: create prerelease pull request by @LingyuCoder in #8263
- ci: fix pretag default value by @LingyuCoder in #8266
- chore(deps): update pnpm to v9.12.3 by @renovate in #8256
- chore(deps): update github-actions by @renovate in #8255
- chore: remove arco-pro diff test case by @chenjiahan in #8270
- chore(ci): change repo owner of rspack-ecosystem-ci by @chenjiahan in #8272
- chore(ci): fix the syntax error by @inottn in #8278
- refactor: module.size fn should a option compilation by @SyMind in #8281
- test: keep test case stable with different version length by @LingyuCoder in #8287
- chore(deps): update npm dependencies by @renovate in #8257
- chore(docs): add groupModulesByLayer doc by @easy1090 in #8284
- refactor(rspack_napi): simplify the logic of
JsRegExp
by @shulaoda in #8254 - chore(deps): update npm dev dependencies by @renovate in #6429
- chore(format): run prettier format by @SoonIter in #8295
- chore(ci/deps): update renovate by @SoonIter in #8294
- refactor: use async thread pool by @hardfist in #8226
- chore(renovate): manually update peer dependencies by @chenjiahan in #8317
- chore: prevent clone when create ModuleIdentifier by @SyMind in #8330
- refactor(rspack): improve dependency location by @shulaoda in #8313
- refactor(rspack): remove
RawRegex
andJsRegExp
by @shulaoda in #8298 - chore: fix the incorrect links in the comments by @inottn in #8340
- refactor: css-module should have strict buildInfo by @JSerFeng in #8342
- refactor: rm UNASSOCIATED_MODULE_INSTANCE_REFS by @SyMind in #8327
- chore(deps): update rspress to v1.35.3 by @renovate in #8348
- chore(deps): update rspress to v1.35.4 by @renovate in #8360
- chore(deps): update github-actions by @renovate in #8345
New Contributors
- @nobuaki0331 made their first contribution in #8223
Full Changelog: v1.0.14...v1.1.0