Monorepo
pubm traite le monorepo comme un cas principal. Il peut relier JavaScript, Rust et Deno dans le même dépôt.
Détection automatique
Section intitulée « Détection automatique »pnpm-workspace.yamlCargo.tomlavec[workspace]deno.jsonoudeno.jsoncavecworkspacepackage.jsonavecworkspacesbunfig.tomlavecpackage.jsonworkspaces
Quand declarer packages
Section intitulée « Quand declarer packages »Utilisez une config explicite quand :
- seuls certains packages doivent etre publies
- JS et Rust cohabitent
- vous devez surcharger les registres inferes ou ajouter des registres prives
Flux typique
Section intitulée « Flux typique »pubm init --changesetspubm changesets addpubmDans un monorepo, le plus important est le plan de release calcule a partir des changesets, des groupes fixed ou linked et de l’ordre des dependances.
Exclure des packages des tags git
Section intitulée « Exclure des packages des tags git »En mode independent, chaque package reçoit normalement son propre tag git et un brouillon de GitHub Release. Utilisez excludeRelease pour versionner et publier certains packages sans creer de tags ni de releases.
export default defineConfig({ versioning: "independent", excludeRelease: ["packages/cli/platforms/*"], packages: [ { path: "packages/core" }, { path: "packages/cli" }, { path: "packages/cli/platforms/*" }, ],});