Skip to content

La commande bun why explique pourquoi un package est installé dans votre projet en montrant la chaîne de dépendances qui a conduit à son installation.

Utilisation

bash
bun why <package>

Arguments

  • <package> : Le nom du package à expliquer. Prend en charge les motifs glob comme @org/* ou *-lodash.

Options

  • --top : Afficher uniquement les dépendances de niveau supérieur au lieu de l'arborescence complète des dépendances.
  • --depth <number> : Profondeur maximale de l'arborescence des dépendances à afficher.

Exemples

Vérifier pourquoi un package spécifique est installé :

bash
bun why react
txt
react@18.2.0
  └─ my-app@1.0.0 (requires ^18.0.0)

Vérifier pourquoi tous les packages avec un motif spécifique sont installés :

bash
bun why "@types/*"
txt
@types/react@18.2.15
  └─ dev my-app@1.0.0 (requires ^18.0.0)

@types/react-dom@18.2.7
  └─ dev my-app@1.0.0 (requires ^18.0.0)

Afficher uniquement les dépendances de niveau supérieur :

bash
bun why express --top
txt
express@4.18.2
  └─ my-app@1.0.0 (requires ^4.18.2)

Limiter la profondeur de l'arborescence des dépendances :

bash
bun why express --depth 2
txt
express@4.18.2
  └─ express-pollyfill@1.20.1 (requires ^4.18.2)
     └─ body-parser@1.20.1 (requires ^1.20.1)
     └─ accepts@1.3.8 (requires ^1.3.8)
        └─ (deeper dependencies hidden)

Comprendre la sortie

La sortie affiche :

  • Le nom du package et la version interrogée
  • La chaîne de dépendances qui a conduit à son installation
  • Le type de dépendance (dev, peer, optional ou production)
  • L'exigence de version spécifiée dans les dépendances de chaque package

Pour les dépendances imbriquées, la commande affiche l'arborescence complète des dépendances par défaut, avec une indentation indiquant la hiérarchie des relations.

Bun édité par www.bunjs.com.cn