What's Changed
New Features 🎉
- feat(core): add restart type to dev.watchFiles by @chenjiahan in #8118
- feat(core): add onRestart plugin hook by @chenjiahan in #8119
- feat(core): add onRestart to Rsbuild instance by @chenjiahan in #8121
- feat(core): add context to onRestart hook by @chenjiahan in #8122
- feat(core): support restart watchers in JavaScript API by @chenjiahan in #8135
- feat(core): add restart option to createRsbuild by @chenjiahan in #8141
- feat(core): expose config files in context by @chenjiahan in #8144
- feat(core): accept loadConfig result as config input by @chenjiahan in #8147
- feat(core): watch loaded config files for restart by @chenjiahan in #8149
- feat(deps): update @rspack/core to 2.1.5 by @chenjiahan in #8155
- feat(core): support multiple JS minimizer options by @chenjiahan in #8154
Performance 🚀
- perf(plugin-babel): avoid redundant path join by @chenjiahan in #8124
- perf(core): avoid repeated root asset path formatting by @chenjiahan in #8125
Bug Fixes 🐞
- fix(core): handle relative asset prefix for lazy compilation by @yifancong in #8109
- fix(core): correct CLI subcommand help by @chenjiahan in #8117
- fix(core): ensure restart cleanup hooks run by @chenjiahan in #8120
- fix(core): resolve restart paths from watcher cwd by @chenjiahan in #8123
- fix(core): prevent duplicate restarts from stale watchers by @chenjiahan in #8132
- fix(core): hide unavailable restart shortcut by @chenjiahan in #8134
- fix(deps): update all patch dependencies by @renovate[bot] in #8139
- fix(core): close stale watcher after shortcut restart by @chenjiahan in #8153
Refactor 🔨
- refactor(core): isolate restart callbacks by instance by @chenjiahan in #8129
- refactor(core): decouple restart orchestration from CLI by @chenjiahan in #8133
- refactor(core): use context config files by @chenjiahan in #8145
- refactor(cli): pass loadConfig result to createRsbuild by @chenjiahan in #8148
Document 📖
- docs: clarify lazy compilation server URL by @chenjiahan in #8112
- docs: document onRestart trigger conditions by @chenjiahan in #8131
- docs: clarify configuration file watching by @chenjiahan in #8150
- docs: clarify watchFiles glob path separators by @chenjiahan in #8152
Other Changes
- chore(deps): update dependency @rslib/core to v1.0.0-beta.0 by @chenjiahan in #8111
- chore(deps): update dependency rspack-vue-loader to ^17.6.1 by @renovate[bot] in #8113
- chore(deps): update dependency rslog to ^2.3.0 by @renovate[bot] in #8114
- chore(deps): update dependency @rslint/core to ^0.7.0 by @chenjiahan in #8116
- test(e2e): migrate runner to rstest by @chenjiahan in #7776
- test(e2e): clean up Rstest configuration by @chenjiahan in #8126
- test(e2e): cover onRestart hook in dev by @chenjiahan in #8127
- test(e2e): use snapshots for stable outputs by @chenjiahan in #8128
- test(e2e): cover all CLI help commands by @chenjiahan in #8130
- chore(deps): update dependency oxfmt to ^0.59.0 by @renovate[bot] in #8137
- chore(deps): update pnpm to v11.15.0 by @renovate[bot] in #8138
- chore(deps): update actions/stale action to v10.4.0 by @renovate[bot] in #8136
- chore(deps): update dependency happy-dom to ^20.11.0 by @renovate[bot] in #8140
- chore(deps): update module federation to v2.8.0 by @renovate[bot] in #8143
- chore(deps): update dependency less to ^4.7.0 by @renovate[bot] in #8142
- test(e2e): cover config file build dependencies by @chenjiahan in #8146
- test(e2e): avoid modifying tracked watch files by @chenjiahan in #8151
- test(e2e): cover multiple JS minimizer options by @chenjiahan in #8156
- release: v2.1.7 by @chenjiahan in #8157
Full Changelog: v2.1.6...v2.1.7