Cómo evitar la instalación de paquetes en monorepo usando Yarn


10

Construí un monorepo usando espacios de trabajo de Lerna y Yarn .

Todo funciona bien, pero cada vez que instalo una nueva dependencia en un paquete (llamémosle A ) usando:

yarn add <package_name>

Yarn lo agrega y luego activa el installscript de todos los paquetes en el monorepo, incluso los paquetes en los que A no confía.

¿Hay alguna forma de evitar esto? Lleva unos minutos instalarlos sin ningún motivo.


¿Usaste los paquetes Lerna y Yarn? ¿Por qué no solo Lerna? Además, ¿ha intentado agregar el paquete con Lerna y establecer un alcance? github.com/lerna/lerna/tree/master/commands/add
kbariotis

Utilizo Lerna para publicar y versionar mis paquetes y espacios de trabajo de Yarn para administrar fácilmente las dependencias. Intenté tu sugerencia y no funcionó. Gracias por intentar :)
Erazihel

Respuestas:


4

Intente agregar al espacio de trabajo específico con: -

yarn workspace <workspace_name> add <package_name>

Para algunos documentos verifique aquí


No quiero instalar la dependencia en todo el espacio de trabajo, sino solo en un paquete
Erazihel

4

Puedes probar Yarn 2 con nodeLinker: node-modulesin .yarnrc.yml. Yarn 2 garantiza activar la reconstrucción solo en paquetes que tienen sus dependencias cambiadas, esto es algo que no fue garantizado por Yarn 1. Sin embargo, todavía habrá un caso muy raro cuando los paquetes aparentemente no relacionados se reconstruyan si se izan de manera diferente después de agregar un nuevo paquete , pero esto ocurrirá muy raramente.


Intenté su sugerencia pero parece que desafortunadamente el resultado sigue siendo el mismo ...: /
Erazihel

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.