Replies: 3 comments 2 replies
-
Typisk amerikanere å bruke infinitivsformen når de skulle brukt imperativ! "Lag" var kanskje litt belasta 😆 TurborepoSom jeg nevnte kjapt på utvidet standup har jeg lekt meg så vidt med Turborepo. Det er en task runner for monorepo som håndterer topologisk kjøring av bygg (sørger for først å bygge pakker som andre pakker er avhengige av). Det ser ut til å funke veldig greit, og oppsettet er veldig enkelt! Killer feature her er vel egentlig caching og diff. Har du bygget før, og ikke gjort endringer i en pakke, blir den ikke bygget på nytt. Man har også myligheten til en remote cache som gjør at dette også funker på tvers av branches/commits, slik at man bare trenger å bygge de pakkene som faktisk er endret når man kjører CI på en pull request. Det bør spare en del tid! Jeg støtte på en snag der bygget hang seg opp på standard-versionNår det kommer til versjonering har jeg nettopp jobbet litt med det i et par av de interne repoene våre, og der har jeg brukt standard-version. Det er verktøyet som blir brukt bak scenen av lerna for å generere changelogs og sette versjonsnummer ut fra typen commits. Det funka helt smertefritt i et enkelt repo, men jeg har ikke sjekket om det er noen quirks i forhold til å bruke det direkte på et monorepo. YarnSiden Yarn ble nevnt over vil jeg bare skyte inn at selv Yarn 1.x har støtte for workspaces; det er denne funksjonaliteten som ligger i bunn av lerna for linking av pakker 😊 Det er imidlertid veldig mange andre gode grunner til å se på oppgradering til 2.0 (eller migrering til (p)npm), så det bør absolutt undersøkes! Plug'n'play-funksjonaliteten i Yarn 2 kan nok være med på å kutte ned tiden på CI/CD-flytene våre betraktelig! Og de strengere kravene til avhengigheter som følger med kan nok være med på å finne en del latente bugs i oppsettet vårt. |
Beta Was this translation helpful? Give feedback.
-
Interessant diskusjon på Hacker News om pnpm. Konsensus virker være at det er pretty good. Mange sammenligner ytelsen til pnpm med Yarn Classic og ser store forbedringer. Så ingen "rettferdige" sammenligninger med Yarn 3 vs pnpm. Denne featuren virker kul!
|
Beta Was this translation helpful? Give feedback.
-
En gledelig utvikling i Lerna 😄 Kan hende et nytt roadmap aligner med behovet vårt. Watch this space. |
Beta Was this translation helpful? Give feedback.
-
Tingenes tilstand
Som dere kanskje har fått med dere er hverken Yarn 1.x eller Lerna under aktiv utvikling (edit: Lerna har fått en ny maintainer!). Vi er avhengig i dag av spesielt Lerna for å gjøre versjonering og publisering av pakker, og oppdatering av Changelogs, på en automatisert måte. Lerna fungerer ikke med nyere versjoner av Yarn.
Siden Yarn 1.x har det skjedd ting både i Yarn, med npm, og med alternativer som pnpm. Alle tre har tilsynelatende støtte for "workspaces" i en eller annen form. De kan med andre ord ta over noen av oppgavene vi bruker Lerna til i dag. En migrering vekk fra dagens situasjon trenger altså ikke være 1:1 med tanke på hvilke verktøy som gjør hvilke oppgaver.
For meg er det ikke noe alternativ på sikt å bli værende på de versjonene vi har i dag.
Oppgaver som må løses
Alternativ
Flere som har gått vekk fra Lerna har tatt i bruk https://github.com/changesets/changesets for versjonering, changelogs, og publisering.
Som en task runner har Microsoft sin Lage fått litt hype (ja, norsk for
make
).Vi har flere alternative package managers som kan funke, hver med sine "killer features".
Kor ska vi reis?
lage build
?Beta Was this translation helpful? Give feedback.
All reactions