Changesets
pubm usa changesets como base para el versionado y el changelog. Cada changeset describe qué paquetes cambian y en qué nivel: patch, minor o major.
Flujo básico
Sección titulada «Flujo básico»pubm changesets addpubm changesets statuspubm changesets versionpubm changesets changelogInicializar el directorio de changesets
Sección titulada «Inicializar el directorio de changesets»Los changesets pendientes se almacenan en:
.pubm/changesets/Inicializa ese directorio ejecutando el asistente de configuración interactivo:
pubm initDurante el setup, pubm init pregunta si deseas activar el workflow de changesets. Si seleccionas que sí, crea el directorio .pubm/changesets/, genera .github/workflows/changeset-check.yml para aplicar el requisito en PRs, y actualiza .gitignore para registrar los archivos de changeset ignorando el resto del contenido de .pubm/.
Añadir un changeset
Sección titulada «Añadir un changeset»pubm changesets addEse comando guía el proceso y crea un archivo en .pubm/changesets/.
Ver estado
Sección titulada «Ver estado»pubm changesets statuspubm changesets status --verbosestatus muestra qué changesets siguen pendientes y qué bumps producirán.
Consumir changesets
Sección titulada «Consumir changesets»pubm changesets versionversion aplica los changesets pendientes a los paquetes afectados y escribe las nuevas versiones.
Generar changelog
Sección titulada «Generar changelog»pubm changesets changelogchangelog genera texto de changelog a partir de los changesets pendientes.
Uso en CI
Sección titulada «Uso en CI»Si tu release se ejecuta en CI, no necesitas un paso separado de pubm changesets version para preparar la publicación. El pipeline normal de pubm ya consume los changesets durante la fase de versionado.
pubmpubm --mode ci --phase publishEse comando es útil para flujos editoriales o controlados, pero no es necesario antes de pubm ni de pubm --mode ci --phase publish.
Replegarse en commits convencionales
Sección titulada «Replegarse en commits convencionales»Cuando versionSources es "all" (el valor por defecto), pubm changesets version recurre automáticamente a los commits convencionales para cualquier paquete que no tenga archivos de changeset pendientes. Esto permite a los equipos adoptar los changesets de forma incremental: los paquetes con changesets los usan; los paquetes sin changesets se repliegan en el historial de commits.
Correspondencia por defecto de tipos de commits
Sección titulada «Correspondencia por defecto de tipos de commits»| Tipo de commit | Bump |
|---|---|
feat | minor |
fix | patch |
perf | patch |
Un footer BREAKING CHANGE o un sufijo ! (p. ej. feat!:) siempre produce un bump major.
Configurar correspondencias personalizadas
Sección titulada «Configurar correspondencias personalizadas»Sobreescribe la correspondencia por defecto en pubm.config.ts:
export default defineConfig({ versionSources: "all", conventionalCommits: { types: { feat: "minor", fix: "patch", perf: "patch", docs: "patch", }, },});Establece versionSources: "commits" para usar únicamente commits convencionales e ignorar completamente los archivos de changeset. Establece versionSources: "changesets" para deshabilitar el replegado y usar únicamente los archivos de changeset.
Migrar desde changesets
Sección titulada «Migrar desde changesets»pubm changesets migratemigrate ayuda a mover archivos desde .changeset/ a .pubm/.
Siguientes pasos
Sección titulada «Siguientes pasos»- Lee la Configuration para ver cómo afecta el versionado a nivel de repositorio.
- Lee la CI/CD para entender cómo encajan changesets y release automation.
- Lee la CLI Reference para ver todos los comandos disponibles.