Descubre Drupal 9, la evolución del CMS

Drupal ha lanzado la mayor y última actualización de CMS. Para conocerla mejor comenzaremos hablando de la hoja de ruta que se marcó para conseguirlo, así como de sus ventajas a la hora de actualizar Drupal desde sus versiones anteriores, ya sea Drupal 7 o Drupal 8.

Concretamente, en octubre de 2019 se lanzaron dos ramas de Drupal 9 en estado de desarrollo (9.0.0 y 9.1.0), y también se lanzó la versión que mantendrá el soporte de Drupal 8 hasta su fin (la versión 8.9.0), de la que hablaremos más adelante junto con la de Drupal 7.

Posteriormente, el 3 de junio de 2020, se lanza la versión estable de Drupal 9, 9.0.0, la cual se planea sustituir por la 9.1.0 en diciembre de este año.

 

“La actualización de versión más fácil en la década”

Así la definen. A continuación explicaremos el por qué. Y es que, a diferencia de las actualizaciones de versión anteriores a esta, Drupal 9 no trata de ser una reinvención del CMS, sino que pretende mayoritariamente actualizar la versión más avanzada de su predecesor a través de eliminar aquellas APIs obsoletas y actualizando sus dependencias.

Aparte de estas dos cosas, Drupal 9 planea ser lo mismo que Drupal 8.9 (la última actualización menor de Drupal 8). Francamente, la actualización de Drupal 7 a Drupal 8 supuso un gran cambio a nivel técnico, lo que produjo a los desarrolladores un problema a la hora de tener que invertir una gran cantidad de tiempo en actualizar todo los módulos y, obviamente, en la propia actualización del sistema.

Esto provocó que se perdieran muchos usuarios y que muchos módulos útiles en Drupal 7 nunca llegaron a la siguiente versión. Por esta razón, Drupal 9 se ha creado como una actualización fácil y simple para todos los usuarios.

Para ilustrar lo comentado anteriormente, los desarrolladores han utilizado el siguiente símil: “previamente, imaginando que nuestro sitio web es un tren, actualizar de versión nos requeriría mover todo el tren a una vía diferente. Después de Drupal 8, las nuevas versiones solo serán estaciones en la misma vía”.

 

¿Qué se necesita para instalar Drupal 9?

En primer lugar, cabe destacar que los requisitos pueden cambiar a lo largo del desarrollo de las nuevas versiones, aunque no sea lo habitual.

Los requisitos actualmente serían los siguientes:

  • PHP 7.3 o superior.
  • Versión de Apache actualizada (2.4.7 o superior).
  •  Base de datos Mysql o Percona 5.7.8
  • MariaDB 10.3.7
  • PostgreSQL 10 con la extensión pg_trim.
  • SQLite 3.26

 

Novedades técnicas de Drupal 9

A continuación os exponemos un resumen con las actualizaciones más destacadas:

  • PHP 7.3: la principal causa de la actualización de versión del CMS, debido a la dependencia que tiene con Symfony.
  • Symfony 4: ahora utilizamos una mayor versión de Symfony, pasando de la 3.4.32 a la 4.4.9. Esto se debe a que Symfony, al igual que Drupal, recibe continuas actualizaciones tanto de seguridad como de políticas obsoletas.
  • Twig 2: Twig ahora se actualiza a su versión 2.12.5. Los cambios para los desarrolladores PHP y de plantillas se listan en la siguiente documentación.
  • Composer: la dependencia de Composer con Drupal ha sido actualizada a la versión 1.10.0.
  • jQuery y jQueryUI: la tan utilizada librería jQuery ha sido actualizada a la versión 3.5.1, recibiendo importantes actualizaciones de seguridad. Por el momento, Drupal 9 utilizará jQuery 3.x, ya que no hay todavía una versión estable de jQuery 4. Y, con respecto a jQuery UI, la mayoría de sus componentes ya estaban obsoletos en Drupal 8.8 y serán eliminados en Drupal 9. También cabe destacar que la librería jQuery cookie, incluida en el core, ha sido reemplazada por js-cookie.
  • Drush 10 será la nueva versión compatible.
  • Temas frontales y de administración por defecto: se planea actualizar los temas por defecto tanto frontal como de la parte de administración, ya que actualmente los que se usan fueron desarrollados con el lanzamiento de Drupal 7.

 

Olivero: nuevo tema frontal por defecto

Una de las principales preocupaciones en la comunidad era la de tener un tema más atractivo en la parte del usuario, que fuera responsive, rápido y, sobre todo, que tuviera un diseño mas moderno. Y es que el tema por defecto actual de Drupal (Bartik) no ha cambiado desde el lanzamiento de Drupal 7 en enero de 2011. Por este motivo, se ha creado uno nuevo mucho más interesante, Olivero.

 

En este enlace (https://www.drupal.org/project/ideas/issues/3088378) podemos ver el flujo que siguió toda la propuesta y cómo se fue desarrollando el tema en la comunidad. También podemos observar sus diferentes aspectos, como las cuadrículas responsives, sus diferentes tipografías, la paleta de colores que incluye para su personalización o los patrones de la interfaz de usuarios, entre otras características.

Cabe destacar que está previsto que salga una versión estable al mismo tiempo que se presenta la versión de Drupal 9.1.0, tal y como comentábamos, el próximo 2 de diciembre de 2020.

Actualmente cuenta con una versión alfa que podemos probar tanto en nuestros sitios actualizados a las últimas versiones de Drupal 8 como en las versiones en desarrollo de Drupal 9. Aquí tenéis el enlace al proyecto: https://www.drupal.org/project/olivero

 

Nuevo tema de administración: Claro

Al igual que veíamos con la parte frontal, el tema de administración por defecto requería de nuevas mejoras estéticas.

Para lograrlo se propuso 'Claro', una alternativa mucho más bonita visualmente para el usuario, que se enfoca también en la parte responsive y que, además, realiza cambios estéticos de funcionalidades.

Unos cambios muy necesarios en esta actualización para que pudiéramos sentir que realmente estamos utilizando un CMS potente a nivel de desarrollo y, a la vez, visualmente novedoso.




 

Un soporte para Drupal 7, 8 y 8.9

Se propone como una versión LTS (Long term support) a la que se le dará soporte hasta el final de las actualizaciones de seguridad de su dependencia Symfony 3.4 en noviembre de 2021. Un hecho que ha motivado, tal y como comentábamos antes, la actualización de Drupal 9.

Para Drupal 7, cuyos cambios requerirán un mayor esfuerzo, se brindará soporte hasta noviembre de 2022, es decir, se dará un año adicional para realizar todos los cambios requeridos antes de pasar a la versión más reciente.

A continuación, haremos mención a algunas herramientas muy útiles para los desarrolladores con las que nos resultará mucho más fácil actualizar nuestro entorno. Podéis ver más información sobre dichas herramientas aquí: https://www.drupal.org/psa-2020-06-24

 

Herramientas de actualización

Como principal herramienta para actualizar nuestra web, tenemos disponible el módulo Upgrade Status, el cual nos facilitará todo el trabajo de actualización.

Primero éste comprueba la versión de Drupal que tenemos y nos sugiere actualizar a la última, después comprueba si el sistema cumple los requisitos para Drupal 9 y nos informa de los módulos y las dependencias que debemos actualizar.

También podremos ver el código que tenemos obsoleto dentro de nuestros módulos. Los cuales tendremos que actualizar, ya que estas funciones dejarán de funcionar una vez que actualicemos a Drupal 9.

Por otro lado, como herramienta supletoria disponemos del módulo Rector, el cual tiene una amplia documentación en la web de los desarrolladores. Gracias a esto podremos corregir funciones en el código automáticamente e inyectar dependencias necesarias previas a la actualización.

 

Conclusiones

El objetivo de Drupal 9 es no ser un problema, es decir, que no origine un quebradero de cabeza a la hora de actualizar nuestros sitios viniendo de sus versiones anteriores.

Por ello, y siempre siguiendo la recomendación del propio Dries Buytaert, podemos “estar seguros de no utilizar módulos deprecados ni APIs, y en la medida de lo posible, usar la última versión de sus dependencias. Si hacemos esto, la experiencia a la hora de actualizar será fluida, y eso es una gran noticia para nosotros”. Finalmente “Drupal 9 será, simplemente, la última versión de Drupal 8....eliminando todo aquello que esté deprecado, y actualizando las dependencias a sus últimas versiones”.

 

Esperamos que os haya resultado interesante nuestro post sobre Drupal 9. ¿Estáis en el proceso de cambio? Si es así, cuéntanos tu experiencia en los comentarios. ¡Nos encantaría conocer vuestros puntos de vista!

Posts relacionados

Comentaris
¿Qué opinas? Escríbenos. Nos encantará leerte :)