Releases: web-infra-dev/rspack
Releases Β· web-infra-dev/rspack
v1.0.8
What's Changed
Highlights
- the Rust crate
swc_core
has been upgraded to 0.106.0 and swc minifier source map error has been fixed by @SyMind in #7991
Performance Improvements β‘
- perf: lazy create hash utils by @chenjiahan in #7961
Exciting New Features π
- feat: support
compilation.builtModules
by @LingyuCoder in #7984
Bug Fixes π
- fix: the progress values for the make and sealing statuses are inaccurate by @inottn in #7990
- fix: correctly display the progress bar when it reaches 100% by @inottn in #7989
- fix: use
HookMap
forruntimeRequirementInTree
by @colinaaa in #7987 - fix: swc minifier source map by @SyMind in #7991
- fix: generate params of runtime module by @LingyuCoder in #8000
- fix(modern-module): use module style export for non entry module by @fi3ework in #7996
- fix: dedup asset_contents to avoid multiple hash changes by @inottn in #8002
- fix(core): allow non-utf8 string in source code by @hardfist in #8009
Document Updates π
- docs: update team members, add @shulaoda by @chenjiahan in #7998
Other Changes
- refactor(core): add task name for tokio-console better display by @hardfist in #7966
- refactor(core): use separate tokio_console layer by @hardfist in #7982
- chore(deps): update dependency @swc/plugin-remove-console to v3 by @renovate in #7978
- chore(deps): update pnpm to v9.11.0 by @renovate in #7977
- chore(deps): update github-actions by @renovate in #7973
- chore: fix proxied typo by @chenjiahan in #7983
- refactor: import module hooks by @JSerFeng in #7967
- revert: refactor(core) add task name for tokio-console better display by @LingyuCoder in #7997
- refactor: add JSDoc to improve BannerPlugin options types by @GiveMe-A-Name in #8003
- refactor: add JSDoc & types to improve HtmlRspackPlugin, IgnorePlugin options types by @GiveMe-A-Name in #8004
Full Changelog: v1.0.7...v1.0.8
v1.0.7
What's Changed
Performance Improvements β‘
- perf: lazy require
browserslist
package by @chenjiahan in #7963
Bug Fixes π
- fix(core): ping @rspack/dev-server to 1.0.5 by @hardfist in #7969
- fix(create-rspack): missing vanilla-ts tsconfig.json by @chenjiahan in #7970
Document Updates π
- docs: addRuntimeModule and runtimeRequirementInTree by @LingyuCoder in #7938
Other Changes
- refactor: phases level switcher for incremental options by @ahabhgk in #7954
- refactor: remove mut options in plugin apply by @ahabhgk in #7958
- chore: migrate @rspack/dev-server to an independent repo by @LingyuCoder in #7959
- chore: not allow run typecheck when run node bin/rspack for other project by @hardfist in #7964
Full Changelog: v1.0.6...v1.0.7
v1.0.6
What's Changed
Caution
This version has a bug which requires install webpack together to work, use v1.0.7 instead
Highlights
Support ContextReplacementPlugin
For more information, please refer to the documentation ContextReplacementPlugin.
Performance Improvements β‘
Exciting New Features π
- feat(rspack_plugin_javascript): improve provide dependency by @shulaoda in #7871
- feat(progress-plugin): support custom handler by @LingyuCoder in #7896
- feat: allow ModuleFactoryCreateData modify dependencies by @jerrykingxyz in #7895
- feat: support
compilation.hooks.runtimeRequirementInTree
by @LingyuCoder in #7917 - feat: support experimental loader
emitDiagnostic
by @h-a-n-a in #7879 - feat: support
compilation.addRuntimeModule
by @LingyuCoder in #7925 - feat: context repl plugin by @SyMind in #7853
- feat(core): integrate rspack_resolver with input_filesystem by @hardfist in #7858
- feat(core): support using tokio-console by @hardfist in #7945
Bug Fixes π
- fix(rspack-test-tools): corret script
testu
by @shulaoda in #7894 - fix: should run watch cases test in build assets by @ahabhgk in #7897
- fix(core): use resource shouldn't contain query by @hardfist in #7911
- fix: preserve variable names declared with
var
by @inottn in #7903 - fix: use SourceMapSource in js side to support map method by @SyMind in #7828
- fix: avoid import external module re-assigin in concatenation by @fi3ework in #7839
- fix: make stage has_module_graph_change calculate incorrectly by @jerrykingxyz in #7920
- fix(core): align assetInfo with webpack by @hardfist in #7924
- fix: should create an empty codegen result for module that has failure in codegen by @JSerFeng in #7777
- fix: eco-ci prebundled enhanced-resolve by @SoonIter in #7933
- fix: attach when add runtime module by @LingyuCoder in #7935
- fix: infer async modules when incremental enabled by @ahabhgk in #7927
- fix: change javascript parser options to properly merge by @inottn in #7946
Document Updates π
- docs(landingpage): update @rstack-dev/doc-ui to 1.5.1 by @SoonIter in #7899
- docs: update node version and webpack-dev-server@5 by @SoonIter in #7900
- docs: update how to use swc plugin in rspack rule by @zhangmingyuan666 in #7904
- docs: add Trellis logo at who is using rspack by @yharaskrik in #7901
- docs(landingpage): update @rstack-dev/doc-ui by @SoonIter in #7909
- docs: update who is using by @chenjiahan in #7948
- docs: fix link is 404 in README by @lzxb in #7947
- docs: add use case for
extensionAlias
by @chenjiahan in #7951 - docs(website): update blog credit by @ScriptedAlchemy in #7931
- docs: webpack-merge also applies to rspack by @wjw99830 in #7953
Other Changes
- refactor(types): remove @ts-expect-error in loaderRunner and StatsFactory by @SoonIter in #7864
- refactor: clean dev server code by @LingyuCoder in #7794
- chore(rspack): remove unnecessary files by @shulaoda in #7910
- chore(deps): bump mio from 0.8.8 to 0.8.11 by @dependabot in #7928
- test: disable dev server e2e test by @LingyuCoder in #7929
- chore(infra/biome): enable no-errors-on-unmatched by @CPunisher in #7932
- refactor: use
realDependencyLocation
instead ofrange
in dependency by @shulaoda in #7892 - chore(workflow): remove rangeStrategy from renovate config by @chenjiahan in #7950
- test: fix css concat stats test by @ahabhgk in #7955
New Contributors
- @zhangmingyuan666 made their first contribution in #7904
- @yharaskrik made their first contribution in #7901
- @lzxb made their first contribution in #7947
- @wjw99830 made their first contribution in #7953
Full Changelog: v1.0.5...v1.0.6
v1.0.5
What's Changed
Bug Fixes π
- fix(external_module): use "const" if supported when concatenation by @fi3ework in #7836
- fix(create-rspack): eslint-plugin-react-hooks version conflict by @chenjiahan in #7854
- fix: remove LightningCssMinimizerRspackPlugin exclude option default value by @noshower in #7811
- fix: trusted type with devtool eval by @LingyuCoder in #7866
- fix: do not use affected for side-effects-flag-plugin by @JSerFeng in #7865
- fix: should forward sourcemaps for refresh loaders by @h-a-n-a in #7872
- fix: should provide full error message with error name when
hideStack
is set totrue
by @h-a-n-a in #7867
Document Updates π
- docs: add NIO logo at built with rspack by @littleVege in #7856
- docs: add clarification to loader
this.callback
usage by @h-a-n-a in #7855 - docs: remove disableTransformByDefault by @9aoy in #7863
- docs: add
sources
JavaScript API by @chenjiahan in #7876 - docs: update slogan for who is using by @chenjiahan in #7881
- docs: add ABB logo at built with rspack by @VugarAhmadov in #7880
- docs: add sequoia logo at who is using by @ibuli in #7882
- docs: add getaround logo at who is using by @CPatchane in #7883
Other Changes
- ci: remove firefox by @LingyuCoder in #7857
- refactor(types): remove @ts-expect-error in Compiler and MultiCompiler by @SoonIter in #7824
- test(dev-server): enable dev server test cases by @LingyuCoder in #7861
- test(dev-sever): add e2e test cases part 2 by @LingyuCoder in #7829
- test(dev-sever): add e2e test cases part 3 by @LingyuCoder in #7833
- chore: remove "rust-analyzer.checkOnSave" of VS Code by @fi3ework in #7874
- test: disable unstable dev server snapshot case by @LingyuCoder in #7877
- refactor: css-extract using parseMeta to store css info by @JSerFeng in #7878
New Contributors
- @littleVege made their first contribution in #7856
- @VugarAhmadov made their first contribution in #7880
- @ibuli made their first contribution in #7882
- @CPatchane made their first contribution in #7883
Full Changelog: v1.0.4...v1.0.5
v1.0.4
What's Changed
Exciting New Features π
- feat(modern-module): make dynamic import runtime-less by @fi3ework in #7759
- feat(core): use dyn output_filesystem by @hardfist in #7817
- feat: remove
ErrorSpan
in dependency trait by @shulaoda in #7841 - feat: support context for resolve and resolveWeak by @inottn in #7832
- feat: make namedChunkGroups iterable by @inottn in #7840
Bug Fixes π
- fix(core): try fix EBUSY problem in windows ci by @hardfist in #7803
- fix(core): fix resolve faild when do recursive symbol link by @hardfist in #7744
- fix: overflow panic when shifting left value greater then 31 by @SyMind in #7792
- fix: remove HotUpdateChunk in chunks by @SyMind in #7810
- fix: should not transform source to buffer by @SyMind in #7821
- fix: change javascript parser options in child compiler by @ahabhgk in #7812
- fix(loader-runner): remove legacy Node compatible code by @chenjiahan in #7818
- fix: improve stats string for match resource with long data url by @ahabhgk in #7823
- fix: duplicate emit source map from child compiler by @SyMind in #7847
- fix: loader intermediate data should be overridden between loaders by @h-a-n-a in #7846
Document Updates π
- docs: add tip for import.meta.webpackContext literal by @chenjiahan in #7815
- docs: fix typo in zh docs by @SyMind in #7820
Other Changes
- ci: clean node_modules and target by @SyMind in #7299
- chore(workflow): correct rspack action scope by @chenjiahan in #7825
- test: ignore snapshot obsolete warnings while using
-t
by @LingyuCoder in #7835 - chore(infra): remove eslint configs by @shulaoda in #7842
- test(dev-sever): add e2e test cases part 1 by @LingyuCoder in #7809
- chore(infra/biome): enable
noImplicitAnyLet
andnoArrayIndexKey
rules by @shulaoda in #7843 - ci: disable dev server test cases by @LingyuCoder in #7851
Full Changelog: v1.0.3...v1.0.4
v1.0.3
What's Changed
Performance Improvements β‘
Exciting New Features π
- feat: support
compilation.chunkGroups[].origins
by @LingyuCoder in #7776
Bug Fixes π
- fix(make): isolated module clean incomplete by @jerrykingxyz in #7761
- fix: cheap source map by @SyMind in #7791
- fix: panic when identity mapping with different char indices by @SyMind in #7799
Document Updates π
- docs: fix migrate-from-builtins.css example codes by @noshower in #7775
- docs: update html plugin by @LingyuCoder in #7793
Other Changes
- chore(deps): bump actions/download-artifact from 3 to 4.1.7 in /.github/workflows by @dependabot in #7783
- chore: cleanup unused module syntax by @ahabhgk in #7790
Full Changelog: v1.0.2...v1.0.3
v1.0.2
What's Changed
Performance Improvements β‘
- perf: source map dev tool plugin by @SyMind in #7739
- perf: use itoa for integer to string conversion by @shulaoda in #7762
Bug Fixes π
- fix: escape css ident by @inottn in #7743
- fix: handle ASI for export declaration by @inottn in #7767
- fix(dev-server): pin webpack-dev-server version by @hardfist in #7784
Document Updates π
- docs(deps): upgrade @rstack-dev/doc-ui 1.4.2 by @SoonIter in #7771
- docs: Update asset-module.mdx by @renzp94 in #7770
Other Changes
New Contributors
Full Changelog: v1.0.1...v1.0.2
v1.0.1
π‘ Highlights
Improved create-rspack
Support for the addition of Biome / ESLint / Prettier when creating a new Rspack project:
Improve error logs of serde deserialize error
What's Changed
Performance Improvements β‘
Exciting New Features π
- feat(html): improve template parameters by @LingyuCoder in #7686
- feat(html): support js template without child compiler by @LingyuCoder in #7704
- feat(rspack-cli): support more flags for command serve by @shulaoda in #7710
- feat(create-rspack): support for linter, formatter and CLI flags by @chenjiahan in #7735
- feat(html): support hooks by @LingyuCoder in #7729
Bug Fixes π
- fix: use topological order when SideEffectsFlagPlugin optimize incoming connections by @ahabhgk in #7717
- fix(core): improve error report when load builtin:swc-loader and buitin:lightningcss-loader by @hardfist in #7700
- fix: align ignored module debug comment with webpack by @fi3ework in #7736
- fix: template react logo animation css selector by @velusgautam in #7741
- fix: add
in_function_scope
for getters and setters by @CPunisher in #7745
Document Updates π
- docs: Announcing Rspack 1.0 by @chenjiahan in #7682
- docs: fix FAQ in the 1.0 announcement by @chenjiahan in #7712
- docs: fix type of
devServer.hot
by @shulaoda in #7711 - docs: change Dominus Kelvin to Kelvin Omereshone by @DominusKelvin in #7714
- docs: remove outdated content from announcing-1-0.mdx by @chenjiahan in #7716
- docs(landingpage): extract comps to @rstack-dev/doc-ui by @SoonIter in #7726
- docs: correct asset generator filename property type by @nanianlisao in #7755
- docs: disable bundler info injection by set
force: false
by @LingyuCoder in #7756
Other Changes
- refactor: improve HarmonyAcceptDependency by @shulaoda in #7671
- refactor: remove ErrorSpan in dependencies by @shulaoda in #7674
- test(rspack-cli): enable rspack cli command serve basic test case by @shulaoda in #7724
- chore: add SECURITY.md by @hardfist in #7733
- test(infra): improve e2e test stability by @shulaoda in #7713
- chore: change security report email by @hardfist in #7760
- test: webpack test hot cases for new incremental by @ahabhgk in #7738
- chore(deps): upgrade @rstack-dev/doc-ui 1.4.0 by @SoonIter in #7765
New Contributors
- @DominusKelvin made their first contribution in #7714
- @velusgautam made their first contribution in #7741
- @nanianlisao made their first contribution in #7755
Full Changelog: v1.0.0...v1.0.1
v1.0.0
See Announcing Rspack 1.0 for more details π
What's Changed
Breaking Changes π
- fix: compilation errors and warnings should be
RspackError
by @h-a-n-a in #6900 - feat: deprecate JavaScript API by @h-a-n-a in #6859
- feat: upgrade swc to latest version by @hardfist in #6887
- refactor: remove profile integration timestamp by @LingyuCoder in #6947
- feat: remove fields of
SwcJsMinimizerRspackPluginOptions
by @h-a-n-a in #6950 - fix!: align optimization.moduleIds and optimization.chunkIds when mode=none by @LingyuCoder in #6956
- feat!: remove output.amdContainer from config by @fi3ework in #6958
- feat!: revert default values of SwcJsMinimizer by @h-a-n-a in #6970
- fix!: set default value of concatenateModules to true in production mode by @JSerFeng in #6959
- refactor!: use swc_plugin_prefresh instead of builtin swc plugin by @LingyuCoder in #7069
- feat!: detect conflicting values in
DefinePlugin
by @h-a-n-a in #7045 - feat!: remove
builtins.provide
by @h-a-n-a in #7086 - feat!: use native resolver in loader by @bvanjoi in #4945
- fix!: correct names of hash fields in asset.info by @xc2 in #7220
- feat(deps)!: update
webpack-dev-server
to v5 and no longer lock the versions by @SoonIter in #7130 - fix!: remove @rspack/plugin-minify by @hardfist in #7307
- feat!(crates): upgrade swc_core to 0.99.5 by @LingyuCoder in #7292
- feat!: improve HtmlRspackPlugin by @LingyuCoder in #7577
- refactor!: disable css minify in html minify and remove SwcCssMinimizerRspackPlugin by @ahabhgk in #7547
- feat!: support
optimization.emitOnErrors
by @LingyuCoder in #7595 - feat(core)!: change dojang default escape|unescape to lodash.template syntax by @hardfist in #7661
Performance Improvements β‘
- perf(rspack_plugin_javascript): use Rayon to parse modules parallelly by @fi3ework in #6864
- perf: make picking concatenable modules parallel by @JSerFeng in #7003
- perf: cache
compilation.entrypoints
by @chenjiahan in #7059 - perf: enable "fat" LTO for production release by @chenjiahan in #7088
- perf: remove unneeded string clone by @JSerFeng in #7104
- perf: reduce
get_scheme
allocation by @h-a-n-a in #7109 - perf: reduce alloc for bailout reason by @h-a-n-a in #7118
- perf: stats rust side generate speed by @SyMind in #7126
- perf: reduce allocation for filename render by @h-a-n-a in #7138
- perf: optimize JS communication with lazy getters by @SyMind in #7163
- perf: reduce allocation for
TraceableError
by @h-a-n-a in #7192 - perf: reduce allocation for
Stats
by @h-a-n-a in #7124 - perf: reduce allocation for parsing by @h-a-n-a in #7219
- perf: use Set as Queue to solve the duplication by @JSerFeng in #7233
- perf: reduce allocation for
ModuleRule
matching by @h-a-n-a in #7249 - perf: reduce large pre-allocations for
JavascriptParser::new
by @h-a-n-a in #7286 - perf: faster hasher for
Ukey
s by @ahabhgk in #7287 - perf: a bunch of small improvement for ConcatenatedModule by @CPunisher in #7257
- perf: reduce allocation for adding dependencies by @h-a-n-a in #7301
- perf: no need to require entire enhanced-resolve by @chenjiahan in #7343
- perf(allocator): use mimalloc v2 for all by @h-a-n-a in #7361
- perf: stats to js speed by @SyMind in #7344
- perf: rule matcher allocates only if
resource_path
is not a valid UTF-8 sequence by @h-a-n-a in #7441 - perf: bump lightningcss to remove duplicated browerslist-rs by @chenjiahan in #7461
- perf!: use browserslist-rs for lightningcss by @JSerFeng in #7544
- perf: warn case sensitive plugin by @ahabhgk in #7606
- perf: improve performance of eval-source-map by @JSerFeng in #7630
Exciting New Features π
- feat(napi): support js chunk hash hook by @ahabhgk in #6853
- feat(napi): compilation chunk hash hook by @ahabhgk in #6858
- feat: root module is less prone to be wrapped in IIFE by @fi3ework in #6697
- feat: CopyRspackPlugin support function
to
option by @9aoy in #6866 - feat: remove styled-components, emotion and relay in builtin swc-loader by @h-a-n-a in #6862
- feat: align split-chunks stats by @SyMind in #6847
- feat: generating provenance statements by @chenjiahan in #6896
- feat: add
factoryMeta
toJsModule
and optimizeInnerGraphPlugin
for variable decl with iife by @CPunisher in #6888 - feat: simple custom worker syntax by @ahabhgk in #6899
- feat: add nwjs target to rspack config by @wxiaoyun in #6880
- feat: add build unique id for detecting by @LingyuCoder in #6865
- feat: encode filename in EvalDevToolModulePlugin by @SyMind in #6903
- feat: add stats.module.dependent by @LingyuCoder in #6913
- feat(cli): defineConfig support all types by @chenjiahan in #6911
- feat: add nwjs external preset by @wxiaoyun in #6907
- feat: custom worker syntax for worklet by @ahabhgk in #6916
- feat: support deep AST parsing in debug by @h-a-n-a in #6919
- feat: add idHints and hash of stats.chunk by @LingyuCoder in #6920
- feat: support nested webpack_exports by @ahabhgk in #6930
- feat: fully support EvalSourceMapDevToolPlugin by @SyMind in #6933
- feat: support use data uri with inline loaders by @h-a-n-a in #6939
- feat(create-rspack): improve the templates by @chenjiahan in #6940
- feat: add contextInfo on resolveData by @ahabhgk in #6948
- feat: align stats.assets[].info by @LingyuCoder in #6951
- feat: optimize filename function diagnostic by @h-a-n-a in #6953
- feat(cli): add --profile to enable stats module profile by @LingyuCoder in #6957
- feat: stats origin moduleid by @LingyuCoder in #6955
- feat!: enable lightning css minimizer as default css minimizer by @ahabhgk in #6960
- feat: align stats chunk group by @LingyuCoder in #6961
- feat: enable lightning css minimizer error recovery by @ahabhgk in #6995
- feat: support nmf resolve hook by @ahabhgk in #6998
- feat: support splitChunkSizes type by @wxiaoyun in #6989
- feat: refresh overlay by @JiangWeixian in #6161
- feat: align webpack target and stats api by @SyMind in #7027
- feat: support fetch priority by @LingyuCoder in #7029
- feat: support webpackInclude and webpackExclude by ...
v1.0.0-rc.2
What's Changed
Exciting New Features π
- feat: apply affected modules to all cgm phase by @ahabhgk in #7684
- feat: apply affected modules for provide exports by @ahabhgk in #7703
- feat: support
"loose-unrecognized-keys"
for config validation by @h-a-n-a in #7705
Bug Fixes π
- fix:
context
should be an absolute path by @h-a-n-a in #7687 - fix(core): don't panic when load config failed by @hardfist in #7693
- fix(rspack-resolver): enable pnp feature by @fi3ework in #7707
Document Updates π
- docs(landing-page): brand NEW landing page by @SoonIter in #7550
- docs(landingpage): replace some not clear icon by @SoonIter in #7685
- docs(landingpage): remove "show all features" button by @SoonIter in #7692
- docs(landingpage): fix the section width by @SoonIter in #7695
- docs: improve migrating from 0.x by @SyMind in #7694
- docs(landingpage): add star animation by @SoonIter in #7697
- docs: remove rspack config diff docs by @SyMind in #7696
- docs: remove all 0.x version badges by @chenjiahan in #7698
- docs(landingpage): UI improvements by @chenjiahan in #7699
- docs(landingpage): fix center button text by @SoonIter in #7701
- docs(landingpage): add lottie animation by @SoonIter in #7702
- docs(homepage): lazy load images by @chenjiahan in #7706
Other Changes
Full Changelog: v1.0.0-rc.1...v1.0.0-rc.2