Skip to content

El comando bun why explica por qué un paquete está instalado en tu proyecto mostrando la cadena de dependencias que llevó a su instalación.

Uso

bash
bun why <package>

Argumentos

  • <package>: El nombre del paquete a explicar. Soporta patrones glob como @org/* o *-lodash.

Opciones

  • --top: Mostrar solo las dependencias de nivel superior en lugar del árbol de dependencias completo.
  • --depth <number>: Profundidad máxima del árbol de dependencias a mostrar.

Ejemplos

Verificar por qué un paquete específico está instalado:

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

Verificar por qué todos los paquetes con un patrón específico están instalados:

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)

Mostrar solo dependencias de nivel superior:

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

Limitar la profundidad del árbol de dependencias:

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)

Entender la salida

La salida muestra:

  • El nombre y versión del paquete consultado
  • La cadena de dependencias que llevó a su instalación
  • El tipo de dependencia (dev, peer, optional, o production)
  • El requisito de versión especificado en las dependencias de cada paquete

Para dependencias anidadas, el comando muestra el árbol de dependencias completo por defecto, con la indentación indicando la jerarquía de relaciones.

Bun por www.bunjs.com.cn editar