Skip to content

Releases: web-infra-dev/rsbuild

v1.5.2

30 Aug 11:32
bb77eb6

Choose a tag to compare

What's Changed

New Features πŸŽ‰

  • feat(deps): update dependency @rspack/core to v1.5.1 by @chenjiahan in #5971
  • feat(plugin-react): improve transpilation scope of ReactRefreshPlugin by @chenjiahan in #5969
  • feat: support for destructuring import.meta.env by @chenjiahan in #5979

Bug Fixes 🐞

  • fix: rerun onBeforeDevCompile hook correctly with multiple environments by @9aoy in #5980
  • fix: failed to escape undefined template params by @chenjiahan in #5987

Refactor πŸ”¨

  • refactor(types): use LoaderDefinition to declare loader types by @chenjiahan in #5975

Document πŸ“–

  • docs: improve authenticity and natural expression by @Copilot in #5964
  • docs: improve documentation authenticity and readability by @Copilot in #5972
  • docs: improve authenticity in documentation files by @Copilot in #5984
  • docs: improve English authenticity in documentation by @Copilot in #5988
  • docs: add example for cssModules.auto configuration by @chenjiahan in #5989
  • docs: fix JavaScript syntax errors in static-assets.mdx by @Copilot in #5992

Other Changes

  • chore(deps): update sass related packages by @renovate[bot] in #5965
  • test(e2e): do not rely on building URL to verify lazy compilation by @JSerFeng in #5966
  • chore(plugin-react): update @rspack/plugin-react-refresh to ^1.5.0 by @chenjiahan in #5968
  • release: @rsbuild/plugin-react v1.4.0 by @chenjiahan in #5970
  • Revert "fix: temporarily disable inline enum optimization (#5960)" by @chenjiahan in #5974
  • test(e2e): add new cases to verify enum with property access by @chenjiahan in #5976
  • chore(deps): update dependency @types/node to ^22.18.0 by @renovate[bot] in #5978
  • chore(deps): update dependency @rsbuild/plugin-react to ^1.4.0 by @renovate[bot] in #5977
  • chore(deps): update dependency @shikijs/transformers to ^3.12.0 by @renovate[bot] in #5991
  • chore: remove duplicated dependencies via pnpm dedupe by @Copilot in #5990
  • docs: fix various documentation errors including grammar, consistency and terminology by @Copilot in #5993
  • docs: fix various documentation errors across website/docs directory by @Copilot in #5994
  • release: v1.5.2 by @chenjiahan in #5995

Full Changelog: v1.5.1...v1.5.2

v1.5.1

27 Aug 14:20
0248871

Choose a tag to compare

What's Changed

Bug Fixes 🐞

Document πŸ“–

Other Changes

Full Changelog: v1.5.0...v1.5.1

v1.5.0

26 Aug 10:59
faf72d6

Choose a tag to compare

πŸŽ‰ See Announcing Rspack 1.5 for more details.

What's Changed

Breaking changes πŸ’‘

New Features πŸŽ‰

Performance πŸš€

Bug Fixes 🐞

Refactor πŸ”¨

  • refactor: eliminate switch exhaustiveness checks by @chenjiahan in #5803
  • refactor: rename connection to socket for clarity by @chenjiahan in #5850
  • refactor: improve debug log messages for better clarity by @chenjiahan in #5902
  • refactor(css-plugins): inherit CSS options from the built-in rule by @chenjiahan in #5940
  • refactor(fileSize): simplify asset formatting and path handling by @chenjiahan in #5945

Document πŸ“–

  • docs: update JavaScript runtime installation instructions by @chenjiahan in #5787
  • docs: add less parallel to build performance guide by @chenjiahan in #5809
  • docs: add version info to onBeforeDevCompile hook by @chenjiahan in #5811
  • docs: improve code splitting documentation clarity by @chenjiahan in #5816
  • docs: mention Rspack's default split chunks strategy by @chenjiahan in #5821
  • docs(lazy-compilation): update default value and version history by @chenjiahan in #5837
  • docs: Add missing backtick to filename.mdx by @schu34 in #5848
  • docs(config): add links to chunk splitting strategies by @chenjiahan in #5845
  • docs: update awesome-rspack references to awesome-rstack by @chenjiahan in #5872
  • docs: add version info for modifyHTML hook by @chenjiahan in #5886
  • docs: fix grammar, spelling, and consistency errors in documentation by @Copilot in #5888
  • docs: fix errors, contractions, terminology, and grammar improvements by @Copilot in #5889
  • docs: fix documentation errors, grammar, typos, and file references by @Copilot in #5892
  • docs: fix grammatical errors and terminology inconsistencies by @Copilot in #5893
  • docs: fix various documentation errors including grammar and punctuation issues by @Copilot in #5894
  • docs: fix terminology inconsistencies and grammar issues by @Copilot in #5895
  • docs: update exclude documentation to clarify priority by @chenjiahan in #5900
  • docs: fix various documentation errors by @Copilot in #5903
  • docs: add code examples for html tags config options by @chenjiahan in #5904
  • docs(plugin-svgr): add note about default exportType with mixedImport by @chenjiahan in #5907
  • docs: add exclude option to printFileSize type by @chenjiahan in #5908
  • docs: update types documentation to reference source file by @chenjiahan in #5912
  • docs(config): add security warning about source maps in production by @chenjiahan in #5914
  • docs: update Rspress to beta.28 and remove unused openGraph fields by @chenjiahan in #5919
  • docs: add documentation for output.module config by @chenjiahan in #5923
  • docs: update Rstack description and bump doc-ui version by @chenjiahan in #5924
  • docs: fix various documentation errors by @Copilot in #5925
  • docs: fix grammar and consistency errors in documentation by @Copilot in #5930
  • docs: fix grammar issues and contractions by @Copilot in #5934
  • docs: fix grammar, punctuation, and clarity issues by @Copilot in #5936
  • docs: improve SSR error logging by @chenjiahan in #5947
  • docs: rename onDevCompileDone hook to onAfterDevCompile by @chenjiahan in #5883

Other Changes

Read more

v1.4.16

24 Aug 09:22

Choose a tag to compare

What's Changed

Bug Fixes 🐞

  • fix(deps): update launch-editor-middleware dependency to v2.11.1 by @chenjiahan in a26db53

Full Changelog: v1.4.15...v1.4.16

v1.5.0-rc.0

21 Aug 13:08
90a6fca

Choose a tag to compare

What's Changed

New Features πŸŽ‰

Bug Fixes 🐞

  • fix: add OnDevCompileDoneFn type for backward compatibility by @chenjiahan in #5913

Refactor πŸ”¨

  • refactor: improve debug log messages for better clarity by @chenjiahan in #5902

Document πŸ“–

  • docs: add version info for modifyHTML hook by @chenjiahan in #5886
  • docs: fix grammar, spelling, and consistency errors in documentation by @Copilot in #5888
  • docs: fix errors, contractions, terminology, and grammar improvements by @Copilot in #5889
  • docs: fix documentation errors, grammar, typos, and file references by @Copilot in #5892
  • docs: fix grammatical errors and terminology inconsistencies by @Copilot in #5893
  • docs: fix various documentation errors including grammar and punctuation issues by @Copilot in #5894
  • docs: fix terminology inconsistencies and grammar issues by @Copilot in #5895
  • docs: update exclude documentation to clarify priority by @chenjiahan in #5900
  • docs: fix various documentation errors by @Copilot in #5903
  • docs: add code examples for html tags config options by @chenjiahan in #5904
  • docs(plugin-svgr): add note about default exportType with mixedImport by @chenjiahan in #5907
  • docs: add exclude option to printFileSize type by @chenjiahan in #5908
  • docs: update types documentation to reference source file by @chenjiahan in #5912
  • docs(config): add security warning about source maps in production by @chenjiahan in #5914

Other Changes

  • chore: remove unnecessary exports and helpers by @chenjiahan in #5887
  • chore: add copilot-instructions.md for GitHub Copilot coding agent by @Copilot in #5891
  • docs: fix various documentation errors by @Copilot in #5896
  • chore(deps): update playwright monorepo to v1.55.0 by @renovate[bot] in #5897
  • chore: change log suffix color from gray to dim by @chenjiahan in #5901
  • docs: fix grammatical errors and spelling inconsistencies by @Copilot in #5911
  • release: 1.5.0-rc.0 by @chenjiahan in #5918

New Contributors

  • @Copilot made their first contribution in #5888

Full Changelog: v1.5.0-beta.4...v1.5.0-rc.0

v1.5.0-beta.4

19 Aug 13:43
8a9e46f

Choose a tag to compare

What's Changed

New Features πŸŽ‰

Bug Fixes 🐞

  • fix: ensure inspectConfig properly initializes action before execution by @chenjiahan in #5859

Document πŸ“–

  • docs: update awesome-rspack references to awesome-rstack by @chenjiahan in #5872

Other Changes

Full Changelog: v1.5.0-beta.3...v1.5.0-beta.4

v1.5.0-beta.3

15 Aug 09:57
e01fb08

Choose a tag to compare

What's Changed

New Features πŸŽ‰

  • feat(client): improve log messages for overlay and socket by @chenjiahan in #5849

Bug Fixes 🐞

Refactor πŸ”¨

Document πŸ“–

  • docs: Add missing backtick to filename.mdx by @schu34 in #5848
  • docs(config): add links to chunk splitting strategies by @chenjiahan in #5845

Other Changes

New Contributors

Full Changelog: v1.5.0-beta.2...v1.5.0-beta.3

v1.5.0-beta.2

14 Aug 07:19
d576d03

Choose a tag to compare

Highlights πŸ’‘

Barrel file optimization

Rspack's experimental barrel file optimization has been enabled by default.

When building applications with barrel files, this optimization should make builds significantly faster.

# Without barrel optimization
Benchmark 1: node --run build:rsbuild
  Time (mean Β± Οƒ):      1.708 s Β±  0.040 s    [User: 4.624 s, System: 2.005 s]
  Range (min … max):    1.655 s …  1.757 s    5 runs

# With barrel optimization
Benchmark 2: BARREL=true node --run build:rsbuild
  Time (mean Β± Οƒ):      1.253 s Β±  0.007 s    [User: 3.179 s, System: 1.292 s]
  Range (min … max):    1.240 s …  1.258 s    5 runs

Summary
  BARREL=true node --run build:rsbuild ran
    1.36 Β± 0.03 times faster than node --run build:rsbuild

This optimization can be disabled via experiments.lazyBarrel:

// rsbuild.config.mjs
export default {
  tools: {
    rspack: {
      experiments: {
        lazyBarrel: false,
      },
    },
  },
};

What's Changed

Performance πŸš€

Bug Fixes 🐞

Document πŸ“–

  • docs(lazy-compilation): update default value and version history by @chenjiahan in #5837

Other Changes

Full Changelog: v1.5.0-beta.1...v1.5.0-beta.2

v1.5.0-beta.1

13 Aug 08:41
b3aef97

Choose a tag to compare

Highlights πŸ’‘

Lazy compilation by default πŸš€

Rsbuild now enables lazy compilation for dynamic imports by default (dev.lazyCompilation.imports is now set to true for web target). If your application contains many dynamic imports, you'll notice faster dev server startup.

If you encounter any issues related to lazy compilation, you can disable it by setting dev.lazyCompilation to false , or feel free to report them via GitHub Issues.

What's Changed

New Features πŸŽ‰

Bug Fixes 🐞

Document πŸ“–

Other Changes

Full Changelog: v1.5.0-beta.0...v1.5.0-beta.1

v1.5.0-beta.0

11 Aug 11:22
939f3a7

Choose a tag to compare

Highlights πŸ’‘

Drop support for Node 16

Node.js 16 reached its end-of-life on September 11, 2023. Many other npm packages in the ecosystem have also dropped support for Node 16, including webpack-dev-server, css-loader, sass-loader, and so on, which makes maintaining compatibility increasingly challenging. Therefore, we have decided to drop Node 16 support starting from Rsbuild v1.5 to ensure better compatibility with the modern ecosystem.

Package v1.4 v1.5
@rspack/core >=16.0.0 >=18.12.0
@rspack/cli >=18.12.0 >=18.12.0
@rspack/dev-server >=18.12.0 >=18.12.0
@rsbuild/core >=16.10.0 >=18.12.0

⚠️ This is a breaking change for users still running Node.js 16. Users will need to upgrade to Node.js 18.12.0 or later to use Rsbuild v1.5.

For users currently using Node.js 16:

  1. Upgrade to Node.js 18.12.0 or later (Node.js 22 LTS is recommended)
  2. Update your CI/CD pipelines to use the new Node.js version

Parallel Less Compilation

This release adds support for parallel loader execution to @rsbuild/plugin-less. If your project uses the @rsbuild/plugin-less and contains a large number of Less files, you can enable parallel compilation to improve build performance.

pluginLess({
  parallel: true,
});

What's Changed

New Features πŸŽ‰

Performance πŸš€

Bug Fixes 🐞

Refactor πŸ”¨

Document πŸ“–

Other Changes

Full Changelog: v1.4.15...v1.5.0-beta.0