Canales de publicación
Etiquetas dist-tag estable, canary y LTS, versiones sincronizadas, procedencia y publicación de versiones.
Text.js se distribuye mediante tres dist-tags de npm. Todos los paquetes (@textjs/app, @textjs/react, @textjs/core, @textjs/font, @textjs/opencode, create-text-app y eslint-plugin-textjs) se versionan de forma sincronizada, por lo que un único número de versión describe todo el framework.
Canales
| Canal | dist-tag | Versión | Instalación |
|---|---|---|---|
| Estable | latest | 1.0.x | bun add @textjs/app |
| Canary | canary | 1.0.x-canary.N | bun add @textjs/app@canary |
| LTS | lts, v1-lts | Se publica tras el lanzamiento de 2.0.0 | bun add @textjs/app@lts |
Usa el canal estable en producción. Usa canary para probar correcciones y funcionalidades el día que llegan a dev. Cuando exista una línea LTS, úsala si actualizas una vez al año.
bun create text-app@canary my-consoleEstable
Las versiones estables siguen el versionado semántico: las versiones de parche corrigen errores, las menores añaden funcionalidades compatibles con versiones anteriores y las mayores pueden introducir incompatibilidades en las API tras un periodo de obsolescencia. Una versión estable procede de una canary que ha superado todas las pruebas y se publica con certificación de procedencia de npm.
Canary
Cada envío a dev en el repositorio oficial pasa por una comprobación de tipos y pruebas, y se publica como la siguiente versión de parche con el sufijo -canary.N:
latest | Envío a dev | Versión publicada |
|---|---|---|
1.0.0 | primero | 1.0.1-canary.0 |
1.0.0 | segundo | 1.0.1-canary.1 |
1.0.1 | siguiente | 1.0.2-canary.0 |
N continúa a partir de la canary más alta que ya existe en npm, por lo que los números nunca se repiten. Las versiones canary no se guardan en commits del repositorio. Añade [skip canary] al mensaje de un commit para omitir una publicación.
Las versiones canary son compilaciones de dev, la rama en la que se integra cada pull request. Pueden cambiar o eliminar API aún no publicadas sin previo aviso. Fija una versión canary exacta si dependes de una.
Procedencia
Las versiones se publican desde GitHub Actions con npm publish --provenance, que vincula cada archivo tar con el commit y el flujo de trabajo exactos que lo generaron. Verifica un paquete con:
npm audit signaturesPublicar una versión
Los responsables del mantenimiento actualizan de forma sincronizada la versión de todos los paquetes del espacio de trabajo con los scripts de publicación:
bun run release:version minor # 1.0.0 → 1.1.0 (also: patch, major, canary, stable, x.y.z)bun run release:publish --tag latest --provenancerelease:version reescribe cada package.json y las constantes que reflejan su versión (VERSION, rendererVersion del reconciliador), se niega a ejecutarse cuando las versiones de los paquetes han dejado de coincidir, y --dry-run muestra el plan. release:publish compila, empaqueta (resolviendo workspace:*), aplica publishConfig, se niega a publicar una versión preliminar en latest o una versión estable en canary, y omite las versiones que ya existen en npm.
Consulta la Política de soporte para saber durante cuánto tiempo se mantiene cada línea de versiones.