Digital

Drupal 9: todo lo que necesitas saber para estar preparado

5 Mins de lectura

Durante la conferencia Drupal Europe del año 2018, Dries Buytaert anunció su deseo de que Drupal 9 viera la luz en el año 2020, finalmente sus expectativas se hacen realidad con la salida de Drupal 9 el próximo 3 de junio.

Novedades Drupal 9

Drupal 9 trae las mismas características que la última versión minoritaria de Drupal 8 (Drupal 8.9.0 según lo planificado) pero con las actualizaciones de las dependencias a sus versiones soportadas y la eliminación del código obsoleto.

 

Drupal 9

 

El beneficio clave sobre Drupal 8 es que la plataforma será compatible con las actualizaciones de seguridad en Drupal que salgan después de noviembre de 2021. Estas son las principales dependencias actualizadas de Drupal 9 respecto a Drupal 8:

  • Symfony 3 a Symfony 4.4. Es la dependencia más importante y su fecha de salida dependía principalmente de esta actualización. Con esta novedad se incrementa la versión necesaria de PHP a la versión 7.3 lo que mejora la estabilidad y la seguridad.
  • Twig 1 a Twig 2. Drupal 8 dependía de Twig 1 ya que en el momento de su lanzamiento Twig 2 no estaba disponible. En este momento Twig 2 es la versión estable del proyecto por lo que se ha decidido incluirlo en la nueva versión.
  • CKeditor 4. Actualmente el soporte de seguridad de CKeditor 4 coincide con el soporte de Drupal 9. Por lo tanto se mantendrá en la fecha de salida, se actualizará durante las próximas versiones a CKeditor 5 y se marcará como obsoleto para ser eliminado en Drupal 10.
  • jQuery y jQuery UI. jQuery seguirá siendo una dependencia de Drupal 9 y la mayoría de los componentes de jQuery UI han sido eliminados debido a que han llegado a fin de su tiempo de vida.
  • PHPUnit. Durante el desarrollo de Drupal 8 se ha hecho obsoleto el sistema para realizar las pruebas SimpleTest en favor de PHPUnit. La nueva versión de Drupal tiene con el soporte para realizar las pruebas con el sistema de pruebas unitarias PHPUnit 8 y con la idea de actualizar a PHPUnit 9 durante las próximas versiones de Drupal 9.
  • Doctrine. Se ha eliminado como dependencia y se han incluido las partes de código necesarias directamente en el núcleo de Drupal 9.
  • Bases de datos. Será necesario disponer de unas versiones de backend de base de datos compatibles con Drupal 9 más recientes. MySQL/Percona >= 5.7.8, MariaDB 10.3.7, SQLite 3.26 y PostgreSQL 10 con la extensión pg_trgm.
  • Drush. La versión compatible con Drupal 9 será Drush 10.

¿Qué implica a los que tienen Drupal 8?

Uno de los cambios más importantes que aporta Drupal 9 frente a Drupal 8 en el cambio de versión de Symfony. Veremos así desde Symfony 3 a Symfony 4.4.

El núcleo de Drupal 8 está desarrollado con los componentes de Symfony 3, es la mayor dependencia de Drupal 8, este framework alcanzará su fin de vida de ciclo de desarrollo en noviembre del 2021. Por el mismo motivo el ciclo de vida de Drupal 8 llega a su fin en la misma fecha.

Con la salida de Drupal 9 en Junio de 2020, inicialmente se había planificado para diciembre de 2020. Así, se da un margen de 18 meses para actualizar la versión de Drupal a su novena versión.

¿Es necesario actualizar a Drupal 9?

Si, pero con matices, desde luego es obligatoria la actualización pero no es necesario hacerla el mismo día del lanzamiento de Drupal 9. Drupal 8 llega al fin de su ciclo de vida en Noviembre de 2021. Por lo que los propietarios de un sitio construido con Drupal 8 disponen de 18 meses para planificar y realizar dicha actualización.

A partir de esa fecha el sitio web puede estar expuesto a problemas de seguridad porque Drupal 8 y Symfony 3 se quedarán sin mantenimiento de seguridad. Es posible que los usuarios malintencionados se aprovechen de los agujeros de seguridad que salgan a partir de la ficha del fin de vida del ciclo del desarrollo.

En noviembre de 2021 todos los sitios web de Drupal 8 y Drupal 7 tendrán que estar actualizados a Drupal 9.

 

evolucion Drupal 8

¿Cómo actualizar a Drupal 9 desde Drupal 8?

La característica sobresaliente de Drupal 9 es su capacidad para proporcionar una actualización tan fácil como sea posible desde Drupal 8. Para ello es necesario tener en cuenta el estado de actualización del núcleo de Drupal, los módulos y temas contribuidos instalados en el portal y los módulos y temas personalizados desarrollados a medida.

A continuación vemos en detalle las necesidades según cada caso:

  • Núcleo de Drupal: es imprescindible aplicar las actualizaciones minoritarias entre las versiones de Drupal 8. Son necesarias por las modificaciones e inclusiones de los módulos nuevos que se han ido incorporando en las versiones minoritarias de Drupal 8. Como el módulo Media, los cambios en algún caso del modelo de datos de cómo se almacenan las entidades como el versionado de las taxonomías o de los enlaces de menú, la forma de gestionar los alias de las urls, etc . Por lo que si nuestro Drupal 8 ha ido actualizándose de una manera incremental y progresiva, no debería haber problema de actualizar el núcleo de Drupal 8 a Drupal 9.
  • Módulos y temas contribuidos: Tenemos que asegurarnos que los módulos o temas contribuido estén actualizados a la última versión y sean compatibles con Drupal 9. A partir de la versión de Drupal 8.77 es posible marcar un módulo compatible con Drupal 8 y 9 a la vez. Es decir, ese módulo funcionará tanto en una instancia de Drupal 8 como Drupal 9. También se puede usar la página que ha preparado Acquia para comprobar la obsolescencia de los módulos y ver cual es son los que ya son compatibles con Drupal 9 y cual es no y poder encontrar fácilmente los parches funcionales. En el caso de que algún módulo no se haya terminado de migrar es posible abrir una incidencia y aportar el código para realizar la compatibilidad del módulo.
  • Módulos y temas custom: es necesario comprobar que el código personalizado no utilice las invocaciones a las funciones obsoletas. Para ello existen las herramientas como la herramienta de consola Drupal Checker que permite comprobar que no se estén usando las invocaciones a las API obsoletas o el módulo Upgrade Status que permite de forma adicional escanear los ficheros .info y los ficheros de las plantillas de Twig para encontrar los problemas de sintaxis obsoleta. Estas mismas herramientas se pueden usar para la comprobación de los módulos contribuidos. Mediante el uso de la herramienta Drupal Rector es posible corregir algunos de los problemas código obsoleto de forma automática.

¿Qué implica a los que tienen Drupal 7?

Habitualmente la comunidad de desarrolladores del núcleo de Drupal mantiene 2 versiones mayoritarias. Por lo que al principio se pensaba dejar sin mantenimiento Drupal 7 en junio del 2020 a la misma vez que sale Drupal 9. Debido a que hay una gran cantidad de portales en Drupal 7 han tomado la decisión que se queda sin soporte de seguridad y llega a su fin de vida en noviembre del 2021 a la par que Drupal 8.

 

evolucion Drupal 7

 

Es muy recomendable empezar a construir su nuevo sitio en Drupal 9 porque el proceso de actualización desde Drupal 7 no es tan simple como en Drupal 8. Ya que la arquitectura de los módulos de Drupal 8 y 9 es totalmente distinta a los de Drupal 7.

 

En Hiberus contamos con un departamento de más de 60 desarrolladores Drupal. Nuestros más de 10 años de experiencia nos ha hecho trabajar en los principales casos de éxito Drupal a nivel nacional. Cuéntanos tu proyecto y conoce a nuestro equipo experto en Drupal.

Si dispones de un sitio web de Drupal 7 o Drupal 8 y necesitas un partner seguro para actualizar Drupal, contacta con Hiberus. Llevaremos a cabo la realización del proyecto con nuestros mejores expertos.

 

2 posts

Sobre el autor
Technical Leader del departamento de Hiberus CMS
Artículos

SOMOS EXPERTOS EN DRUPAL

Hemos desarrollado los proyectos más importantes de Drupal en España.
Contamos con un departamento de más de 60 desarrolladores Drupal. Descubre cómo podemos ayudarte.

¿Te ayudamos?

Artículos relacionados
Banca y SegurosDigitalRetailTurismo

¿Qué es el CRO (Conversion Rate Optimization)?

3 Mins de lectura
Cuando hablamos de conversión dentro de un producto digital no nos referimos única y exclusivamente a una venta, sino a la consecución…
DigitalMediaSomosHiberus

Caso de Éxito SEO: un millón de clics en Discover por San Fermín en DIARIO DE NAVARRA

5 Mins de lectura
Diario de Navarra es un medio de comunicación regional perteneciente al Grupo La Información, decano en la prensa de Navarra y el…
DigitalRetail

Actualizar Magento: cuándo y cómo plantear un cambio de versión

4 Mins de lectura
De forma periódica, Adobe publica nuevas versiones de Magento con el objetivo de añadir nuevas funcionalidades o mejorar las ya existentes. Es…

1 Comentario

Deja una respuesta

Tu dirección de correo electrónico no será publicada.