rspack
rspack copied to clipboard
[Bug]: Rspack does not rebuild when modifying pure type files
System Info
System:
OS: macOS 14.5
CPU: (16) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
Memory: 125.49 MB / 32.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 20.12.0 - ~/.nvm/versions/node/v20.12.0/bin/node
Yarn: 1.22.22 - ~/.nvm/versions/node/v20.12.0/bin/yarn
npm: 10.5.0 - ~/.nvm/versions/node/v20.12.0/bin/npm
pnpm: 9.5.0 - ~/.nvm/versions/node/v20.12.0/bin/pnpm
Browsers:
Chrome: 129.0.6668.59
Safari: 17.5
npmPackages:
@rspack/cli: 0.7.5 => 0.7.5
@rspack/core: 0.7.5 => 0.7.5
@rspack/plugin-react-refresh: 0.7.5 => 0.7.5
Details
修改纯类型的文件时,rspack 没有编译,导致 tsconfig-paths-webpack-plugin 插件反应。
Reproduce link
No response
Reproduce Steps
下面是可复现的demo: rspack-project.zip
复现步骤
- 启动项目 npm run dev
- 启动完项目后修改 src/type.ts , 将 "Android" 删除, 保存文件
预期
终端中显示错误
ERROR in ./src/App.tsx:9:51
TS2345: Argument of type '"Android"' is not assignable to parameter of type 'AppType | (() => AppType)'.
7 | const [count, setCount] = useState(0);
8 |
> 9 | const [appType, setAppType] = useState<AppType>("Android");
| ^^^^^^^^^
10 |
11 | console.log(appType, setAppType);
12 |
Found 1 error in NaN ms.
实际
没有任何反应。
其他说明
在 0.5.6 版本中,不管是纯类型的 .d.ts 还是 .ts 文件,在保存文件后,都会触发类型检查。升级到 0.7.5 之后,纯类型文件,只会在首次启动时才参与类型检查,后面再修改,仿佛就没有修改似得。
另外我们从 webpack 迁移到 rspack ,项目架构没有变化,webpack 和 [email protected] 都是可以在文件修改后,触发类型检查。
期望,尽快修复这个问题,我们项目中每个组件都可能存在一个 type.ts(会被其他文件引用) 这样的纯类型文件和全局的 .d.ts(不会被其他文件引用,全局的) 文件。目前类型检查不工作,毕竟影响工作效率。
辛苦研发大哥们,早点修复。☕️