Releases: web-infra-dev/rslib
v0.15.1
What's Changed
Bug Fixes 🐞
Document 📖
- docs: link redirect.dts.extension in dts.autoExtension by @fi3ework in #1263
- docs: distinguish watch mode in configuration files by @Timeless0911 in #1265
Other Changes
- chore: supersede strip-ansi with stripVTControlCharacters by @fi3ework in #1261
- chore(deps): update all non-major dependencies by @renovate[bot] in #1262
- chore(deps): update all non-major dependencies by @renovate[bot] in #1264
- Release v0.15.1 by @Timeless0911 in #1266
Full Changelog: v0.15.0...v0.15.1
v0.15.0
Highlights 💡
Preserve JSX
Rslib supports setting the JSX runtime to 'preserve'
to leave JSX syntax unchanged without transforming it, which is useful when you expect JSX to be left as is in library development.

See JSX transform - React for more details.
What's Changed
New Features 🎉
- feat: support JSX preserve by @fi3ework in #1244
- feat: support inspect Rslib config by @fi3ework in #1255
Bug Fixes 🐞
Document 📖
- docs: correct rslib mf command in README by @Timeless0911 in #1245
- docs: update examples link by @Timeless0911 in #1246
- docs(zh): translate bundle example heading by @fi3ework in #1248
- docs: specify @storybook/addon-essentials next version by @nyqykk in #1250
- docs(AGENTS.md): refine by @fi3ework in #1251
Other Changes
- chore(deps): update all non-major dependencies by @renovate[bot] in #1253
- chore(deps): bump Rsbuild 1.5.13 by @Timeless0911 in #1256
- Release v0.15.0 by @Timeless0911 in #1259
Full Changelog: v0.14.0...v0.15.0
v0.14.0
Breaking changes 🚨
Config loading
Currently, configuration files are loaded with jiti, which relies on Babel. This approach is relatively slow (at least ~70ms slower compared to native).
In Rslib v0.13.3, we introduced a new CLI option --config-loader native
, which uses Node.js's native loader. This approach offers better performance and stricter behavior, but comes with certain requirements:
- Requires Node v22.18+ with built-in TypeScript support
- Import specifiers must include file extensions
- When using TypeScript,
package.json
must set"type": "module"
- Importing JSON requires
with { type: "json" }
In Rslib v0.14.0, we adjust the default configuration loading behavior. The new default is now --config-loader auto
, which:
- First attempts to use the faster native loader
- If that fails, it gracefully falls back to jiti for broader compatibility
This change to 'auto'
as the default is part of our long-term plan to transition config loading from jiti to Node.js native.
What's Changed
New Features 🎉
- feat!: config loader default to
'auto'
by @Timeless0911 in #1240 - feat(CLI): support
logLevel
by @Timeless0911 in #1238
Bug Fixes 🐞
- fix(docs): use
rp-not-doc
for rsbuild doc badge by @Timeless0911 in #1236
Other Changes
- chore(deps): update dependency ora to v9 by @renovate[bot] in #1230
- chore(deps): update dependency ubuntu to v24 by @Timeless0911 in #1231
- chore(renovate): ignore
jsdom
due to Node.js version limit by @Timeless0911 in #1233 - chore: update tailwind v4 in test cases by @Timeless0911 in #1232
- chore(deps): bump Rsbuild 1.5.9 by @Timeless0911 in #1234
- chore(deps): update all non-major dependencies by @renovate[bot] in #1235
- chore(deps): bump Rsbuild 1.5.11 by @Timeless0911 in #1241
- test: make test logs clear by @Timeless0911 in #1242
- Release v0.14.0 by @Timeless0911 in #1243
Full Changelog: v0.13.3...v0.14.0
v0.13.3
What's Changed
New Features 🎉
- feat(CLI): add
--config-loader
option by @chenjiahan in #1225
Performance 🚀
- perf(plugin-dts): require typescript to improve startup performance by @chenjiahan in #1224
Bug Fixes 🐞
Other Changes
- chore: fix critical and high Dependabot alerts by @fi3ework in #1219
- chore: add AGENTS.md by @fi3ework in #1221
- chore(deps): update all non-major dependencies by @renovate[bot] in #1222
- chore(build): prebundle tinyglobby to reduce deps count by @Timeless0911 in #1226
- chore(build): prebundle deps in
rsbuild-plugin-dts
by @Timeless0911 in #1227 - Release v0.13.3 by @Timeless0911 in #1228
Full Changelog: v0.13.2...v0.13.3
v0.13.2
v0.13.1
What's Changed
Bug Fixes 🐞
- fix(dts): tsgo bin path should begin with file protocol in windows by @Timeless0911 in #1211
Document 📖
- docs: add hint for whether to enable
dts.build
by @Timeless0911 in #1212
Other Changes
- chore: bump Rslib and enable tsgo in local by @Timeless0911 in #1210
- chore(deps): bump Rsbuild 1.5.5 by @Timeless0911 in #1213
- chore(deps): update all non-major dependencies by @renovate[bot] in #1214
- chore(workflow): remove experimental typescript setting by @Timeless0911 in #1215
- Release v0.13.1 by @Timeless0911 in #1216
Full Changelog: v0.13.0...v0.13.1
v0.13.0
Highlights 💡
Faster declaration generation with tsgo
Rslib now can generate declaration files with tsgo, which can provide faster generation of declaration files, especially for large projects.
Tip
This feature is currently an experimental feature. Since tsgo is still in the experimental stage, there may be some bugs and unresolved issues or limitations. So, make sure to fully test it in your project before enabling this option.
export default {
lib: [
{
dts: {
tsgo: true,
},
},
],
};
What's Changed
New Features 🎉
- feat(dts): support
dts.tsgo
by @Timeless0911 in #1205
Document 📖
Other Changes
- test: use Rstest
projects
by @9aoy in #1201 - chore(deps): update all non-major dependencies by @renovate[bot] in #1203
- chore(deps): update actions/setup-node action to v5 by @renovate[bot] in #1208
- chore(deps): update all non-major dependencies by @renovate[bot] in #1207
- Release v0.13.0 by @Timeless0911 in #1209
Full Changelog: v0.12.4...v0.13.0
v0.12.4
What's Changed
New Features 🎉
- feat: only split async chunks for umd format by @Timeless0911 in #1194
Bug Fixes 🐞
- fix: correct ESM interop by @fi3ework in #1193
- fix: should glob dot files in bundleless mode by @Karibash in #1196
- fix: should add index main file when
redirect.js.path
set tofalse
by @Timeless0911 in #1198
Other Changes
- chore(dts): enhance error logs for dts mainEntryPointFilePath not found by @Timeless0911 in #1197
- chore(deps): update all non-major dependencies by @renovate[bot] in #1199
- Release v0.12.4 by @Timeless0911 in #1200
New Contributors
Full Changelog: v0.12.3...v0.12.4
v0.12.3
What's Changed
New Features 🎉
- feat: do not print detailed file size in bundleless mode by @Timeless0911 in #1191
Bug Fixes 🐞
- fix(css): prevent adding empty css rule by @Timeless0911 in #1182
- fix(dts): should redirect extension if filename contains dots by @Timeless0911 in #1189
Other Changes
- chore(deps): bump Rsbuild 1.5.0-rc.0 by @Timeless0911 in #1183
- chore(deps): update all non-major dependencies by @renovate[bot] in #1186
- chore(dts): use
color.dim
to print environment name by @Timeless0911 in #1187 - chore(deps): bump Rsbuild 1.5.0 by @Timeless0911 in #1190
- test: add more APIPlugin interception by @fi3ework in #1184
- Release v0.12.3 by @Timeless0911 in #1192
Full Changelog: v0.12.2...v0.12.3
v0.12.2
What's Changed
New Features 🎉
- feat(dts): support emitting
.d.cts.map
and.d.mts.map
files by @Timeless0911 in #1176
Document 📖
- docs: code splitting doc links by @Timeless0911 in #1175
- docs: remove unnecessary paragraphs in modernjs-module migration docs by @Timeless0911 in #1177
- docs: fix various documentation errors: grammar, spelling, and formatting issues by @Copilot in #1179
Other Changes
- chore(deps): update all non-major dependencies by @renovate[bot] in #1172
- chore(deps): bump Rsbuild 1.5.0-beta.4 by @Timeless0911 in #1178
- Release v0.12.2 by @Timeless0911 in #1180
New Contributors
- @Copilot made their first contribution in #1179
Full Changelog: v0.12.1...v0.12.2