loopbackio / loopbackio/loopback-next
Spike: Switch from lerna to pnpm workspaces
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 5.1k
- Forks
- 1.1k
- Ø Merge
- 2 T. 21 Std.
- Gemergte PRs (30 T.)
- 27
Beschreibung
Our current lerna-based setup is very inefficient. Most of the pull requests in this repository are created by RenovateBot to update package-lock files, our git history is full of RenovateBot commits that make it difficult to spot relevant changes.
Let's investigate how to switch from lerna to [pnpm](https://pnpm.js.org/) and use a single root package-lock file for the entire monorepo.
References:
- pnpm workspaces: https://pnpm.js.org/en/workspaces
- Travis CI setup: https://pnpm.js.org/en/continuous-integration#travis
Topics to investigate:
- How to release new versions using conventional release process? Can we perhaps use https://github.com/atlassian/changesets? Related: https://github.com/pnpm/pnpm/issues/2225
- Does RenovateBot support pnpm? If not, is there any other bot we could use instead? E.g. GitHub's [Dependabot](https://github.com/dependabot). Related: https://github.com/renovatebot/renovate/issues/2015
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit den Verweisen auf pnpm workspaces und Travis CI im Issue und untersuche anschließend die aktuellen Workflows für Lerna, package-lock, RenovateBot und Releases. Erledigt ist die Aufgabe, wenn ein umsetzbarer Migrationsplan dokumentiert ist, einschließlich der Handhabung von Releases und der Unterstützung für Dependency-Updates, statt eine Implementierungsänderung vorzunehmen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- nodejs, typescript
- Bereich
- build-system, devops, release, tooling
- Issue-Typ
- Refactoring
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100