Actualización: 0.1.0-beta.31
StudioCMS 0.1.0-beta.31 introduce cambios significativos, incluyendo una nueva capa de base de datos basada en Kysely, un sistema de plugins renovado y varias nuevas características y mejoras. Esta guía te ayudará a actualizar tu proyecto existente de StudioCMS a la última versión.
Cambios importantes
Sección titulada «Cambios importantes»- Sistema de plugins refactorizado. Consulta la documentación de plugins para más detalles.
- Implementada nueva capa de base de datos basada en Kysely.
- Eliminado el soporte para opciones de configuración pasadas directamente a la integración de Astro de StudioCMS, ahora todas las opciones de configuración deben definirse en el archivo
studiocms.config.mjs. Consulta la Referencia de Configuración para más detalles.
Nuevas funcionalidades
Sección titulada «Nuevas funcionalidades»- Implementado nuevo comando
studiocms migratepara manejar las migraciones de base de datos. - Permitir deshabilitar las etiquetas meta del generador mediante la opción de configuración
features.dashboard.security.hideGeneratorTags. - StudioCMS ahora soporta diferentes dialectos de base de datos mediante Kysely^.
- Introducida nueva middleware para mostrar errores del sistema en páginas con errores en lugar de hacer que todo el sitio se bloquee.
- Nuevas características de plugins:
- Inyección dinámica de componentes y scripts en el panel de control a través de nuevos hooks de plugins.
- Nuevos ayudantes de base de datos para facilitar el acceso a la base de datos dentro de los plugins.
- Introducida nueva página del panel de control para gestionar el sistema.
- Incluye un panel de información del sistema (debug).
- Proporciona acceso rápido a tus tablas de base de datos mientras estás en producción.
- Agregada la nueva aplicación de barra de herramientas de desarrollador integrada en StudioCMS para ver y gestionar tu base de datos mientras estás en modo de desarrollo.
- Integrada rastreo web-vitals/analytics opcional al panel de control para obtener mejores insights de rendimiento.
- Esto puede activarse mediante la opción de configuración
features.webVitals. - Para quienes anteriormente usaban las integraciones
@studiocms/web-vitalso@astrojs/web-vitals, esto ahora está integrado y puede configurarse mediante la configuración de StudioCMS.
- Esto puede activarse mediante la opción de configuración
- Agregado nuevo comando CLI
studiocms debugpara acceder rápidamente a información útil de depuración sobre tu proyecto StudioCMS.
Correcciones de errores y mejoras
Sección titulada «Correcciones de errores y mejoras»- Actualizada la URL de la imagen del usuario fantasma.
- Refactorizada la generación de
urlRoutede los datos de la página para resolver correctamente. - Refactorizados y simplificados los componentes de diseño del panel de control.
- Mejorados los tipos de configuración de StudioCMS y los comentarios de JSDoc.
- Refactorizados los comandos CLI para usar la nueva capa de base de datos.
- Introducidas nuevas utilidades de depuración para facilitar el acceso a información útil de depuración.
Instrucciones para la migración
Sección titulada «Instrucciones para la migración»Para actualizar tu proyecto StudioCMS a la versión 0.1.0-beta.31, sigue estos pasos:
-
Actualiza tus dependencias de StudioCMS a la última versión:
Ventana de terminal npx @studiocms/upgradeVentana de terminal pnpx @studiocms/upgradeVentana de terminal yarn dlx @studiocms/upgrade -
Si tienes plugins personalizados, asegúrate de que estén actualizados para ser compatibles con el nuevo sistema de plugins. Consulta la documentación de plugins para obtener orientación.
-
Revisa tu archivo
studiocms.config.mjspara asegurarte de que todas las opciones de configuración estén correctamente establecidas según el nuevo esquema. Consulta la Referencia de Configuración para obtener detalles.- ¿Anteriormente usaste las integraciones
@studiocms/web-vitalso@astrojs/web-vitals? Elimínalas de las dependencias de tu proyecto y configura el rastreo web vitals integrado a través de la opciónfeatures.webVitalsen tu archivostudiocms.config.mjs:studiocms.config.mjs export default defineStudioCMSConfig({features: {webVitals: true,},});
- ¿Anteriormente usaste las integraciones
-
Configura una nueva conexión de base de datos para la nueva capa de base de datos basada en Kysely. Actualiza tu archivo
.envcon los detalles de conexión de base de datos necesarios. Mantén tu base de datos anterior intacta para la migración.Ir a Prepara tu base de datos para más información sobre configurar tu base de datos.Ir a Variables de entorno para más información sobre configurar tus variables de entorno. -
Configura tu dialecto de base de datos en
studiocms.config.mjsbajo la opcióndb. Por ejemplo, para usar libSQL:studiocms.config.mjs export default defineStudioCMSConfig({db: {dialect: 'libsql', // o 'postgresql', 'mysql'},});StudioCMS ahora soporta múltiples lenguajes de base de datos a través de Kysely. Asegúrate de configurar el lenguaje correcto para tu base de datos. Por defecto se usará
libsqlsi no se especifica ningún lenguaje. -
Instala los paquetes de clientes de base de datos necesarios para tu lenguaje de base de datos elegido:
Ventana de terminal npm i @libsql/client @libsql/kysely-libsqlVentana de terminal pnpm add @libsql/client @libsql/kysely-libsqlVentana de terminal yarn add @libsql/client @libsql/kysely-libsqlVentana de terminal npm i mysql2Ventana de terminal pnpm add mysql2Ventana de terminal yarn add mysql2Ventana de terminal npm i pgVentana de terminal pnpm add pgVentana de terminal yarn add pg -
Descarga la herramienta de migración en la raíz de tu proyecto StudioCMS:
Ventana de terminal npm i @studiocms/migratorVentana de terminal pnpm add @studiocms/migratorVentana de terminal yarn add @studiocms/migratorEsta herramienta leerá tu
studiocms.config.mjspara hacer posible la conexión con el correspondiente lenguaje de tu base de datos. -
Ejecución de esquema de migración:
Dado que la capa de base de datos ha cambiado, deberás ejecutar migraciones para actualizar el esquema de tu base de datos y que sea compatible con la nueva versión. Hay dos formas de hacerlo:
Integrado en la CLI de StudioCMS hay un nuevo comando
migrateque ejecutará las migraciones necesarias por ti. Para usarlo, ejecuta el siguiente comando en el directorio de tu proyecto:Ventana de terminal npx studiocms migrateVentana de terminal pnpm studiocms migrateVentana de terminal yarn studiocms migrateSe te pedirá que selecciones una opción para migrar el esquema de tu base de datos a la última versión, retroceder a una versión anterior o ver el estado actual de la migración. Selecciona « Migrate to Latest » (Migrar a la última versión) para actualizar el esquema de tu base de datos.
Siempre puedes verificar el estado de tus migraciones ejecutando
studiocms migrate --statuspara ver qué migraciones se han aplicado y cuáles están pendientes.También puedes usar la opción
--latesto-lpara migrar automáticamente a la última versión sin indicaciones, o usar--rollbacko-rpara retroceder a una versión anterior.Alternativamente, puedes usar la herramienta de migración que instalaste en el paso anterior. Para hacer esto, continúa con el siguiente paso y utiliza la interfaz web para ejecutar las migraciones.
-
Ejecutar la interfaz web de la herramienta de migración:
Inicia la herramienta de migración ejecutando el siguiente comando en el directorio de tu proyecto:
Ventana de terminal npx studiocms-migratorVentana de terminal pnpm studiocms-migratorVentana de terminal yarn studiocms-migratorEsto iniciará un servidor web local. Abre tu navegador y navega a
http://localhost:4321para acceder a la interfaz de la herramienta de migración.Esta interfaz te dará opciones para migrar el esquema de tu base de datos, así como para migrar tus datos desde tu base de datos anterior a la nueva.
-
Una vez que la migración esté completa, inicia tu proyecto de StudioCMS como de costumbre:
Ventana de terminal npm run devVentana de terminal pnpm run devVentana de terminal yarn run devTu proyecto debería estar funcionando ahora con el esquema de base de datos y configuración actualizados.
Notas finales
Sección titulada «Notas finales»- Asegúrate de tener copias de seguridad de tu base de datos antes de realizar migraciones.
- Prueba tu aplicación a fondo después de la migración para detectar cualquier problema temprano.
- Consulta la documentación de StudioCMS para obtener más información sobre nuevas funciones y cambios.
- Si encuentras algún problema durante el proceso de migración, comunícate con nuestra comunidad de Discord^ o abre un issue en nuestro repositorio de GitHub^.