What's Changed
Breaking Changes 🛠
See Breaking changes in Rsbuild v1.0.0 for more details.
- feat(deps)!: bump Rspack 1.0 alpha by @chenjiahan in #2722
- feat!: enable LightningCSS minimizer as default CSS minimizer by @chenjiahan in #2716
- feat!: replace output.targets with output.target by @9aoy in #2636
- feat!: remove deprecated
dev.startUrl
by @chenjiahan in #2642 - feat!: add browserslist to context.environments by @chenjiahan in #2646
- feat!: output.emitAssets changed to boolean type by @chenjiahan in #2649
- feat!: remove
target
param forsource.alias
by @chenjiahan in #2650 - feat!: decorators version defaults to
2022-03
by @chenjiahan in #2677 - fix!: remove context.tsconfigPath by @chenjiahan in #2690
- fix!: remove
output.distPath.server
by @chenjiahan in #2696 - fix!: remove function usage of
source.entry
by @chenjiahan in #2697 - fix!(plugin-lightningcss): remove minify option by @chenjiahan in #2717
- refactor!: remove service-worker target by @chenjiahan in #2657
- refactor!: update api.context, remove
entry
,targets
properties by @9aoy in #2680 - fix!: HMR not work on online IDEs, the default value of
dev.client.port
changed by @chenjiahan in #2639
New Features 🎉
- feat(server): support load SSR module by @9aoy in #2528
- feat: support environment config by @9aoy in #2633
- feat: expose
reduceConfigs
helper by @chenjiahan in #2631 - feat: allow to use port placeholder in
client.port
by @chenjiahan in #2641 - feat: support read environments source.entry config by @9aoy in #2643
- feat: support apply environment html-related config by @9aoy in #2647
- feat: support apply more environment configs by @9aoy in #2652
- feat: use environment name as progress id by @chenjiahan in #2670
- feat: handle more cases in ensureAssetPrefix helper by @chenjiahan in #2671
- feat(deps): bump core-js v3.37 and @swc/helpers by @chenjiahan in #2673
- feat(styled-components): use SWC Wasm plugin by @chenjiahan in #2679
- feat: support apply environment bundleAnalyze config by @9aoy in #2682
- feat(type-check): allow to check multiple tsconfig files by @chenjiahan in #2684
- feat: print file size grouped by environment by @9aoy in #2683
- feat: support apply environment nonce config by @9aoy in #2685
- feat(source-build): support for flat conditional exports by @chenjiahan in #2688
- types: allow to configure dev in environments by @chenjiahan in #2695
- feat: support for merging environments config by @chenjiahan in #2700
- feat: add modifyEnvironmentConfig hook by @9aoy in #2707
- feat: support apply environment moduleFederation config by @9aoy in #2692
- feat(create-rsbuild): enable allowImportingTsExtensions by @chenjiahan in #2710
- feat: add basic server environment api by @9aoy in #2714
- feat: allow to configure progress bar by environment by @chenjiahan in #2730
- feat: support output environment config when inspect config by @9aoy in #2738
Performance 🚀
- perf(core): remove fs-extra dependency by @chenjiahan in #2637
Bug Fixes 🐞
- fix: preload util type assertion by @9aoy in #2638
- fix: apply default dev config by @chenjiahan in #2640
- fix: failed to empty dir in some cases by @chenjiahan in #2658
- fix: should not print empty urls if target is node by @chenjiahan in #2659
- fix: bundle analyze with environment name by @chenjiahan in #2681
- fix: remove unused lazy compilation wrapper by @chenjiahan in #2691
- fix: rspack profile outputPath unexpected by @9aoy in #2693
- fix(plugin-sass): additionalData function type by @chenjiahan in #2708
- fix: replace Rspack's tsConfig path config by @chenjiahan in #2711
- fix: bump Rspack 1.0 canary, fix types by @chenjiahan in #2712
- fix: print and serve multiple environments html route correctly by @9aoy in #2713
- fix(typed-css-modules): missing auto function params by @chenjiahan in #2715
- fix: no longer filter rsbuild config by @chenjiahan in #2718
- fix(ci): use canary specific version instead of npm tag by @SoonIter in #2720
- fix(config): no need to disable experiments.css by @chenjiahan in #2728
- fix(image-compress): prefer using Rspack types by @chenjiahan in #2740
- fix: error message in decorator by @SoonIter in #2748
- fix(plugin-svelte): failed to HMR with style tag by @chenjiahan in #2749
- fix(create-rsbuild): enable verbatimModuleSyntax for svelte by @chenjiahan in #2750
- fix(plugin-vue2): apply js resolve config to vue2 sfc template by @xc2 in #2753
Document 📖
- docs: add conventional commits link to contributing by @chenjiahan in #2644
- docs: override browserslist by environment by @chenjiahan in #2648
- docs: support htmlPlugin param in tools.rspack utils by @9aoy in #2651
- docs: add basic environment config by @9aoy in #2654
- docs: update releases page for 1.0 release by @chenjiahan in #2666
- docs: update relay example to use SWC plugin by @chenjiahan in #2678
- docs: add guide for Preact by @fi3ework in #2694
- docs: update document for
output.target
by @chenjiahan in #2698 - docs: update badge links in README by @chenjiahan in #2701
- docs: update dev command in webpack.mdx by @mwarger in #2699
- docs: update assets URLs by @chenjiahan in #2719
- docs(plugin-babel): compile jsx in node_modules by @chenjiahan in #2729
- docs: fix typo in exportsPresence example by @chenjiahan in #2755
Other Changes
- chore: move node env helpers to core by @chenjiahan in #2634
- chore: prefer using Node builtin fs by @chenjiahan in #2635
- chore(deps): bump typescript v5.5 by @chenjiahan in #2653
- chore: enable html plugins if has html paths by @chenjiahan in #2655
- chore(deps): update dependency launch-editor-middleware to ^2.8.0 by @renovate in #2663
- chore(deps): update dependency @modern-js/module-tools to ^2.54.1 by @renovate in #2661
- chore(config): remove allowJs true by @chenjiahan in #2667
- chore(build): emit bundleless declaration files by @chenjiahan in #2668
- chore: add formatter config to VS Code setting by @chenjiahan in #2669
- chore(deps): update dependency globals to ^15.6.0 by @renovate in #2662
- chore(deps): update dependency nx to ^19.3.1 by @renovate in #2664
- chore: merge shared modules by @chenjiahan in #2672
- chore(deps): update dependency typescript-eslint to ^7.13.1 by @renovate in #2674
- chore(deps): update all patch dependencies by @renovate in #2675
- chore: extract getCommonParentPath helper by @chenjiahan in #2686
- chore(deps): update dependency vue-router to ^4.4.0 by @renovate in #2676
- chore(deps): update dependency svelte-preprocess to v6 by @renovate in #2605
- chore(deps): update dependency eslint-plugin-svelte to ^2.41.0 by @renovate in #2702
- chore: update renovate config by @chenjiahan in #2704
- chore(deps): update copy-webpack-plugin to v11 by @chenjiahan in #2705
- refactor: enable TypeScript isolatedDeclarations by @chenjiahan in #2709
- refactor: use environment param instead of context.environment by @9aoy in #2721
- chore(deps): update dependency react-router-dom to ^6.24.0 by @renovate in #2723
- chore: remove script condition helper from shared by @chenjiahan in #2731
- test(ut): prefer using matchRules helper by @chenjiahan in #2732
- chore: move toml plugin to separate repo by @chenjiahan in #2733
- chore: move yaml plugin to separate repo by @chenjiahan in #2734
- chore(deps): update eslint by @renovate in #2724
- chore(deps): update all patch dependencies by @renovate in #2735
- chore: move mdx plugin to separate repo by @chenjiahan in #2739
- chore: move basic-ssl plugin to separate repo by @chenjiahan in #2746
New Contributors
Full Changelog: v0.7.10...v1.0.0-alpha.0