Skip to content

Commit

Permalink
feat(webpack): don't run forkTsCheckerPlugin by default
Browse files Browse the repository at this point in the history
  • Loading branch information
Heymdall committed Apr 23, 2024
1 parent 111750a commit 156f551
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 6 deletions.
5 changes: 5 additions & 0 deletions .changeset/mighty-terms-sing.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'arui-scripts': major
---

disableDevWebpackTypecheck теперь включён по умолчанию
6 changes: 4 additions & 2 deletions packages/arui-scripts/docs/settings.md
Original file line number Diff line number Diff line change
Expand Up @@ -240,5 +240,7 @@ const settings = {
Позволяет настроить работу с `compat` модулями. По умолчанию `{}`. Подробнее в разделе [модули](modules.md).

#### disableDevWebpackTypecheck
Позволяет настроить проверку типов для клиентского кода и серверный код в режиме разработки.
Если `true`, то для проверки типов используется `tsc --watch --noEmit --project tsconfig.json --skipLibCheck`, вместо `ForkTsCheckerWebpackPlugin`. По умолчанию `false`.
Выключает проверку типов вебпаком во время разработки.
Вместо этого будет запускаться отдельный процесс `tsc`, который будет выдавать сообщения об ошибках в типах только в консоль.

По умолчанию `true`.
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ export function getDefaultAppConfig(): AppConfigs {
useTscLoader: false,
webpack4Compatibility: false,
installServerSourceMaps: false,
disableDevWebpackTypecheck: false,
disableDevWebpackTypecheck: true,

// image processing
dataUrlMaxSize: 1536,
Expand Down
7 changes: 4 additions & 3 deletions packages/arui-scripts/src/configs/webpack.client.ts
Original file line number Diff line number Diff line change
Expand Up @@ -424,9 +424,10 @@ export const createSingleClientWebpackConfig = (
chunkFilename: mode === 'dev' ? '[id].css' : '[name].[contenthash:8].chunk.css',
insert: getInsertCssRuntimeMethod() as any,
}),
(mode === 'prod' || !configs.disableDevWebpackTypecheck) &&
configs.tsconfig !== null &&
new ForkTsCheckerWebpackPlugin(),
(mode === 'prod' || !configs.disableDevWebpackTypecheck)
&& configs.tsconfig !== null
&& !configs.useTscLoader
&& new ForkTsCheckerWebpackPlugin(),
// moment.js очень большая библиотека, которая включает в себя массу локализаций, которые мы не используем.
// Поэтому мы их просто игнорируем, чтобы не включать в сборку.
// https://github.com/jmblog/how-to-optimize-momentjs-with-webpack
Expand Down

0 comments on commit 156f551

Please sign in to comment.