Vercel Doctor

Мёртвый код

Правила, обнаруживающие неиспользуемые файлы, экспорты и типы в вашей кодовой базе.

Обнаружение мёртвого кода работает на основе Knip. Неиспользуемый код раздувает бандл, замедляет холодный старт и увеличивает размер деплоя — всё это приводит к повышенным затратам на Vercel.

Вы можете полностью отключить обнаружение мёртвого кода с помощью --no-dead-code или "deadCode": false в конфигурационном файле.

knip/files

Warning · knip/files

Обнаруживает файлы, которые не импортируются ни одним другим файлом в проекте.

Почему это важно: Неиспользуемые файлы всё равно деплоятся и парсятся при сборке. Они увеличивают время холодного старта, добавляясь к графу модулей.

Исправление: Удалите файл или, если он намеренно автономный, добавьте его в паттерны entry в конфигурации Knip.


knip/exports

Warning · knip/exports

Обнаруживает экспортируемые символы (функции, переменные, классы), которые нигде не импортируются.

Почему это важно: Неиспользуемые экспорты добавляют мёртвый код в бандл. Tree-shaking не всегда устраняет их, особенно в серверном коде.

Исправление: Удалите ключевое слово export или удалите символ, если он больше не нужен.


knip/types

Warning · knip/types

Обнаруживает экспортируемые типы и интерфейсы TypeScript, на которые нигде нет ссылок.

Исправление: Удалите неиспользуемые экспорты типов.


knip/duplicates

Warning · knip/duplicates

Обнаруживает один и тот же символ, экспортируемый из нескольких файлов.

Почему это важно: Дублирующиеся экспорты создают неоднозначность и могут привести к импорту из неправильного файла, подтягивая больше кода, чем необходимо.

Исправление: Объедините дубликаты в одно место экспорта.

Edit on GitHub

Last updated on

On this page