Об этом проекте
pnpm-multi-versions — это утилита, предназначенная для сканирования lock-файла pnpm и выявления зависимостей, установленных в нескольких версиях в рамках проекта. Она предоставляет как интерфейс командной строки (CLI), так и JavaScript API для гибкой интеграции.
### Использование CLI
Запуск CLI выводит список пакетов с несколькими установленными версиями. Пользователи могут использовать флаг `--dependents`, чтобы отобразить древовидную визуализацию, показывающую, какие конкретные пакеты зависят от каждой версии дублированной зависимости.
### Использование API
Программно инструмент предоставляет функцию, которая принимает разобранный lock-файл и параметры конфигурации. Ключевые параметры включают:
- `ignoreMajor`: Логическое значение для игнорирования различий в основных версиях.
- `dependents`: Логическое значение для вычисления и сопоставления зависимых пакетов для каждой версии.
API возвращает три основные структуры данных:
- `versionsMap`: Карта, сопоставляющая имена пакетов с набором установленных версий.
- `dependentsMap`: Вложенная карта, показывающая, какие пакеты (с конкретными версиями) зависят от каждой версии целевых пакетов.
- `multipleVersions`: Набор, содержащий имена всех пакетов, у которых установлено несколько версий.
Это помогает разработчикам выявлять дублирующиеся версии зависимостей в проектах, управляемых с помощью pnpm, способствуя оптимизации и очистке.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.