rspack icon indicating copy to clipboard operation
rspack copied to clipboard

[Bug]: Rspack does not rebuild when modifying pure type files

Open noshower opened this issue 5 months ago • 1 comments

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

复现步骤

  1. 启动项目 npm run dev
  2. 启动完项目后修改 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(不会被其他文件引用,全局的) 文件。目前类型检查不工作,毕竟影响工作效率。

辛苦研发大哥们,早点修复。☕️

noshower avatar Sep 24 '24 06:09 noshower