Jak uniknąć instalacji pakietów w monorepo przy użyciu Yarn


10

Zbudowałem monorepo przy użyciu obszarów roboczych Lerna i Yarn .

Wszystko działa dobrze, ale za każdym razem, gdy instaluję nową zależność od pakietu (nazwijmy go A ), używając:

yarn add <package_name>

Yarn dodaje go, a następnie uruchamia installskrypt wszystkich pakietów w monorepo, nawet tych, na których A nie polega.

Czy mimo to można tego uniknąć? Instalacja zajmuje kilka chwil bez żadnego powodu.


Więc użyłeś obu pakietów Lerna i Yarn? Dlaczego nie tylko Lerna? Czy próbowałeś także dodać pakiet z Lerną i ustawić zakres? github.com/lerna/lerna/tree/master/commands/add
kbariotis

Używam Lerny do publikowania i wersji moich pakietów i obszarów roboczych Yarn, aby łatwo zarządzać zależnościami. Wypróbowałem twoją sugestię i to nie zadziałało. Dziękujemy za próbę :)
Erazihel

Odpowiedzi:


4

Spróbuj dodać do określonego obszaru roboczego za pomocą:

yarn workspace <workspace_name> add <package_name>

Niektóre dokumenty znajdziesz tutaj


Nie chcę instalować zależności w całym obszarze roboczym, ale tylko w jednym pakiecie
Erazihel

4

Można spróbować z przędzy 2 nodeLinker: node-modulesw .yarnrc.yml. Przędza 2 gwarantuje uruchomienie przebudowy tylko dla pakietów, które zmieniły swoje zależności, nie jest to gwarantowane przez Przędzę 1. Jednak nadal będzie bardzo rzadki przypadek, gdy pozornie niezwiązane pakiety zostaną odbudowane, jeśli zostaną podniesione inaczej po dodaniu nowego pakietu , ale zdarza się to bardzo rzadko.


Próbowałem twojej sugestii, ale wydaje się, że niestety wynik jest nadal taki sam ...: /
Erazihel

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.