-
-
Notifications
You must be signed in to change notification settings - Fork 0
Home
@atls/yarn-cli - здесь собирается yarn. Бандл лежит тут. Для его установки необходимо произвести установку ярна из файловой системы указав путь к файлу с учётом контекста:
yarn set version ../tools/yarn/cli/bundles/yarn.js@atls/yarn-plugin-* - пакеты с префиксом plugin являются плагинами для ярна, которые включаются в бандл, собирающийся в @atls/yarn-cli. Плагины в yarn - это новый концепт, появившийся с v2 - https://yarnpkg.com/features/plugins.
typecheck (yarn typecheck) - компилит проект с помощью tsc без аутпута, чтобы проверить на наличие TypeError'ов
lint (yarn lint) - запускает линтер по проекту
format (yarn format) - prettier, поправляет отступы и т.п.
test (yarn test unit/yarn test integration) - запускает тесты по проекту
service (yarn service build/yarn service dev) - билд приложения/запуск в дев режиме
commit (yarn commit) - запуск мастера для создания коммитов
Пакеты в @atls/cli-ui-* отвечают за вывод в консоль (непосредственно, ui)
Здесь находятся пакеты для работы с кодом. Например здесь можно увидеть линтер и форматтер
@atls/code-service - пакет отвечает за сборку энтрипоинтов. build/dev команды - это всё он
@atls/code-schematics - хорошее объяснение schematics можно найти на странице пакета @angular-devkit/schematics, который используется в code-schematics.
Сам code-schematics используется, например, в команде для генерации первоначальной структуры проекта (а-ля create-react-app)
Здесь находятся конфигурации для jest, eslint, prettier и typescript
Здесь лежат утилитарные плагины/лоадеры для вебпака
Рассмотрим новый проект, созданный на основе template
Для начала стоит взглянуть в .yarnrc на эту строчку: здесь, как можно заметить, идёт референс на кастомный бандл yarn.
Этот самый бандл как раз генерируется в @atls/yarn-cli. Внутри этого бандла уже есть все плагины: typecheck, lint, format и т.д. Устанавливать их вручную не требуется
Также стоит обратить внимание на зависимости в корневом пекедже. Для корректной работы tools должны быть установлены все основные библиотеки, использующиеся в tools (typescript, eslint и тд)
Если все вышеперечисленное присутствует на проекте - tools готовы к работе