
Dolores de cabeza actualizando Drupal 8 Beta
Compartir
Tabla de contenido

Drupal 8 promete traer un montón de nuevas características y herramientas para ayudarnos a construir y darle mantenimiento a nuestros sitios web (para más información, les recomiendo ver mi otro post sobre Symfony y Drupal, con un Release Candidate ya a la vuelta de la esquina (a la fecha de redacción de este blog).
Aquí en Rootstack ya hemos estado trabajando con la nueva plataforma para desarrollar varios proyectos, y entre los nuevos cambios, hemos podido apreciar sobretodo la inclusión de varios módulos contribuidos en el core de Drupal 8 y el sistema de exportación de datos a archivos. Sin embargo, las versiones alpha y beta de todo proyecto siempre conlleva limitantes, y Drupal 8 no es de menos, al convertir la actualización de un proyecto desde su primera versión beta a la última versión disponible en un auténtico dolor de cabeza.
Al momento de arrancar con el desarrollo de un proyecto en Drupal 8, es importante tomar en cuenta la necesidad de extensión del sitio y el uso de sitios contribuidos existentes (incluir varios módulos para la construcción del sitio, en lugar de implementar la nueva API de desarrollo de Drupal para incluir características en el sitio). El problema principal radica en los cambios aún presentes en las versiones beta al API del Core de Drupal, en un proceso de implementar nuevas funcionalidades y pasar las existentes a los nuevos componentes de Symfony. Varios módulos contribuidos se han visto en la necesidad de ser parcheados frecuentemente para prevenir fallos y errores en algunas o todas sus funcionalidades, al igual que los módulos personalizados desarrollados para nuestros proyectos.
Sin embargo, realizar actualizaciones frecuentes al Core de Drupal y de sus módulos no ha resultado ser una opción, debido a que varios de estos cambios han afectado - y se han visto afectados - al sistema principal de Drupal 8 para exportación de código: el Administrador de Configuraciones.
El Administrador de Configuraciones, el nuevo sistema de exportación de datos a código de Drupal 8, es una de las nuevas características más esperadas para los desarrolladores, reemplazando el sistema de Features que, bien siendo una buena proposición para aquellos que han desarrollado en Drupal anteriormente, saben que tiene sus limitaciones (como problemas de conflictos a menos de que se mantenga estrictamente la estructura de las características, o un UI pesante y a menudo poco amigable). Sin embargo, el uso de este sistema para cambios de sitio ha demostrado ser aún un tanto inestable y posiblemente inútil al tratar de realizar actualizaciones de versiones.
La estructura de exportación (y los .yaml generados) ha ido variando con casi todas las versiones beta, por lo cual intentos de importar configuraciones realizadas en versiones más viejas ha resultado en importaciones fallidas o, peor, incompletas, resultado en un malfuncionamiento del sitio.
El sistema de importación singular para características específicas ha facilitado la importación de las estructuras más complejas (como las vistas), pero aún así se han presentado problemas con algunas de ellas, como lo son los Tipos de Contenido y los Bloques personalizados, entre otros.
Finalmente, cabe mencionar que, dado los varios cambios realizados a los módulos contribuidos y a los rápidos ciclos de actualización a los que se encuentran expuestos, estos han resultado ser nuestro enemigo #1. En mi primer proyecto de Drupal 8, basado en su gran mayoría por código personalizado, nos hemos visto menos afectados por los cambios de versiones, con la excepción de toques de mantenimiento para los cambios de API a las funciones y sistemas heredados. Por otro lado, en otro sitio más reciente, intentar actualizar de una o dos versiones no sólo causó problemas con la importación de las configuraciones anteriores, si no que trajo todo tipo de problemas con otros módulos como Views y Panels, los cuales se vieron afectados por una serie de nuevos bugs que afectaron a varios requerimientos del proyecto.
Para concluir, tengan en mente estos 3 puntos para su próximo proyecto con el beta de Drupal 8:
1. Asegúrese de que no sea un sitio que requiera de mucho mantenimiento/extensibilidad a futuro (a menos hasta que salga la versión oficial de Drupal 8).
2. Trate de depender lo menos posible de los módulos contribuidos disponibles de Drupal, aprovechando lo más posible el nuevo API de desarrollo.
3. No trate de actualizar aún sus módulos, ni su instalación de Drupal 8.
Una vez que Drupal 8 salga del beta y empiezen a aparecer más módulos estables y estabilidad en el API del Core, podremos finalmente superar este último obstáculo para los nuevos estándares de desarrollo que esta versión trae.
Blogs relacionados

Guía de Open Banking para Bancos Tradicionales en Colombia
May 29th 2026
Descubre los desafíos arquitectónicos, de seguridad y de integración del Open banking en Colombia. Aprende a modernizar tu tecnología para banca tradicional

Migración Core Bancario Legacy: 5 Lecciones de Ingeniería
May 27th 2026
Descubre 5 lecciones de ingeniería sobre la migración core bancario legacy. Estrategias de arquitectura y mitigación de riesgos financieros con Rootstack

Reportes regulatorios automatizados con IA para bancos
May 27th 2026
Transforma tu infraestructura. Descubre cómo integrar reportes regulatorios automatizados para banca utilizando arquitecturas de IA sobre el core bancario.

Migración a la nube para seguros: Guía de modernización
May 22nd 2026
Descubre los beneficios, desafíos y mejores prácticas de la migracion a la nube para compañías de seguros. Optimiza la escalabilidad y seguridad operativa

El impacto de las API en plataformas de seguros modernas
May 21st 2026
Descubre por qué la integración de API de seguros es vital para modernizar arquitecturas legacy, automatizar procesos y optimizar ecosistemas insurtech

Automatización en seguros: Reducir tiempo de reclamaciones
May 20th 2026
Aprende cómo la automatización del flujo de trabajo de empresas de seguros optimiza el procesamiento de reclamaciones mediante APIs, microservicios e IA