Il comando bun why spiega perché un pacchetto è installato nel tuo progetto mostrando la catena di dipendenze che ha portato alla sua installazione.
Utilizzo
bash
bun why <pacchetto>Argomenti
<pacchetto>: Il nome del pacchetto da spiegare. Supporta pattern glob come@org/*o*-lodash.
Opzioni
--top: Mostra solo le dipendenze di livello superiore invece dell'albero completo delle dipendenze.--depth <numero>: Profondità massima dell'albero delle dipendenze da visualizzare.
Esempi
Controlla perché un pacchetto specifico è installato:
bash
bun why reacttxt
react@18.2.0
└─ my-app@1.0.0 (richiede ^18.0.0)Controlla perché tutti i pacchetti con un pattern specifico sono installati:
bash
bun why "@types/*"txt
@types/react@18.2.15
└─ dev my-app@1.0.0 (richiede ^18.0.0)
@types/react-dom@18.2.7
└─ dev my-app@1.0.0 (richiede ^18.0.0)Mostra solo le dipendenze di livello superiore:
bash
bun why express --toptxt
express@4.18.2
└─ my-app@1.0.0 (richiede ^4.18.2)Limita la profondità dell'albero delle dipendenze:
bash
bun why express --depth 2txt
express@4.18.2
└─ express-pollyfill@1.20.1 (richiede ^4.18.2)
└─ body-parser@1.20.1 (richiede ^1.20.1)
└─ accepts@1.3.8 (richiede ^1.3.8)
└─ (dipendenze più profonde nascoste)Comprendere l'Output
L'output mostra:
- Il nome del pacchetto e la versione interrogata
- La catena di dipendenze che ha portato alla sua installazione
- Il tipo di dipendenza (dev, peer, optional, o production)
- Il requisito di versione specificato nelle dipendenze di ogni pacchetto
Per le dipendenze annidate, il comando mostra l'albero completo delle dipendenze di default, con rientri che indicano la gerarchia delle relazioni.