À propos du projet

pnpm-multi-versions est un outil utilitaire conçu pour analyser un lockfile pnpm et identifier les dépendances installées en plusieurs versions dans un projet. Il fournit à la fois une interface en ligne de commande (CLI) et une API JavaScript pour une intégration flexible. ### Utilisation de la CLI L'exécution de la CLI génère une liste de paquets avec plusieurs versions installées. Les utilisateurs peuvent utiliser le drapeau `--dependents` pour afficher une visualisation en arborescence montrant quels paquets spécifiques dépendent de chaque version de la dépendance dupliquée. ### Utilisation de l'API De manière programmatique, l'outil expose une fonction qui prend un lockfile analysé et des options de configuration. Les options clés incluent : - `ignoreMajor` : Booléen pour ignorer les différences de version majeure. - `dependents` : Booléen pour calculer et mapper les dépendants pour chaque version. L'API renvoie trois structures de données principales : - `versionsMap` : Une Map associant les noms de paquets à un ensemble de versions installées. - `dependentsMap` : Une Map imbriquée montrant quels paquets (avec des versions spécifiques) dépendent de chaque version des paquets cibles. - `multipleVersions` : Un ensemble contenant les noms de tous les paquets ayant plusieurs versions installées. Cela aide les développeurs à identifier les versions de dépendances dupliquées dans les projets gérés par pnpm, facilitant les efforts d'optimisation et de nettoyage.