Expertos en Drupal

¿Qué planes hay para Drupal 9?

Desde drupal.org ya están calentando los motores para el lanzamiento de Drupal 9. El fundador de Drupal, Dries Buytaert, ha dado los detalles de la fecha de lanzamiento y explica cómo será la migración de Drupal 8 a Drupal 9.

¿Qué planes hay para Drupal 9?
Judit Cabana
Judit Cabana

November 18, 2019

“En Drupal Europe, anuncié que Drupal 9 saldrá el año 2020. Aunque he explicado por qué tenemos previsto lanzarlo en 2020, no era muy específico sobre en qué momento de 2020 teníamos previsto publicar Drupal 9. Teniendo en cuenta que 2020 se encuentra a menos de trece meses vista, es hora de ser más concreto.

¿Qué gran cambio tendrá Drupal 9?

Antes de hablar sobre la fecha de lanzamiento de Drupal 9, quiero explicar otro cambio que hemos hecho, que tiene un pequeño impacto en la fecha de lanzamiento de Drupal 9.

Según se anunció hace dos años, Drupal 8 adoptó un ciclo de lanzamiento de 6 meses (dos lanzamientos al año). Symfony, un marco de PHP del que depende Drupal, utiliza un calendario de lanzamientos similar. Desgraciadamente, el calendario de los lanzamientos de Drupal se ha producido históricamente 1-2 meses antes de los lanzamientos de Symfony, lo que nos obliga a esperar seis meses para adoptar el último lanzamiento de Symfony. Para poder adoptar las últimas versiones de Symfony más rápidamente, estamos moviendo los lanzamientos menores de Drupal a junio y diciembre. Esto nos permitirá adoptar las últimas versiones de Symfony en el mismo mes. Por ejemplo, Drupal 8.8.0 ya está programado para diciembre de 2019.

3 de junio de 2020: publicación Drupal 9

La mayor dependencia de Drupal 8 es Symfony 3, que tiene una fecha de expiración en noviembre de 2021. Esto significa que después de noviembre de 2021, los errores de seguridad en Symfony 3 no se solucionarán. Por lo tanto, debemos extinguir Drupal 8 no más tarde de noviembre de 2021. O, dicho de otro modo, en noviembre de 2021 todo el mundo debe estar en Drupal 9.

Con la vista puesta en noviembre de 2021, nos gustaría dar a los propietarios de sitios como mínimo un año para actualizarse de Drupal 8 a Drupal 9. Aunque podríamos publicar Drupal 9 en diciembre de 2020, decidimos que era mejor tratar de publicar Drupal 9 en junio de 2020. Esto da a los propietarios de los sitios 18 meses para actualizarlos. Además, también da a los contribuyentes del core de Drupal un amortiguador (buffer) adicional en caso de que no podamos acabar Drupal 9 a tiempo para un lanzamiento en verano.  

Construcción de Drupal 9 en Drupal 8  

En lugar de trabajar en Drupal 9 en una base de código separada, estamos construyendo Drupal 9 en Drupal 8. Esto significa que estamos añadiendo nuevas funcionalidades como código compatible con versiones anteriores y funciones experimentales. Una vez que el código sea estable, desactivaremos cualquier funcionalidad antigua.

Veamos un ejemplo. Como ya se ha dicho anteriormente, Drupal 8 actualmente depende de Symfony 3. Nuestro plan es lanzar Drupal 9 con Symfony 4 o 5. La edición de Symfony 5 está a menos de un año, mientras que Symfony 4 se publicó hace un año. Idealmente Drupal 9 se debería ejecutar con Symfony 5, tanto por las últimas mejoras de Symfony como para tener un soporte más duradero. Sin embargo, Symfony 5 aún no se ha publicado, por lo que no sabemos el alcance de sus cambios, y tendremos tiempo limitado para intentar adoptarlo antes de la expiración de Symfony 3.

Actualmente estamos trabajando para hacer posible ejecutar Drupal 8 con Symfony 4 (sin requerirlo). El apoyo a Symfony 4 es una piedra angular para Symfony 5 ya que aporta nuevas capacidades para los sitios que deciden utilizarlo y reduce la carga de actualizaciones de Symfony 5 para los desarrolladores del core de Drupal. Al final, nuestro objetivo es que Drupal 8 funcione con Symfony 3, 4 o 5 para poder identificar y solucionar cualquier problema antes de empezar a requerir Symfony 4 o 5 a Drupal 9.

Otro ejemplo es nuestro apoyo a los medios reutilizables. Drupal 8.0.0 se lanzó sin una biblioteca multimedia. Actualmente estamos trabajando para añadir una biblioteca multimedia en Drupal 8 para que los autores de contenido puedan seleccionar medios preexistentes de una biblioteca e integrarlos fácilmente en sus publicaciones. Una vez que la biblioteca de medios se mantenga estable, podremos desactivar el uso de la funcionalidad de subida de archivos anterior y hacer que la nueva biblioteca de medios sea la experiencia predeterminada.

La actualización a Drupal 9 será fácil

Como estamos construyendo Drupal 9 en Drupal 8, la tecnología de Drupal 9 se habrá probado sobre el terreno en Drupal 8.

Para los contribuyentes del core de Drupal, esto quiere decir que las tareas a realizar en Drupal 9 antes de que podamos lanzarlo no son excesivas. El lanzamiento de Drupal 9 sólo dependerá de la eliminación de funcionalidades obsoletas y de la actualización de las dependencias de Drupal, como Symfony. Esto hará que el tiempo de lanzamiento sea más previsible y la calidad del lanzamiento sea más robusta.

Para los autores de módulos contribuidos, significa que ya tienen la nueva tecnología a su servicio, por lo que podrán trabajar con la compatibilidad de Drupal 9 pronto (p. Ej. Pueden empezar a actualizar sus módulos multimedia para utilizar la nueva biblioteca de medios antes de lanzar Drupal 9). Finalmente, sus conocimientos técnicos de Drupal 8 se mantendrán relevantes en Drupal 9, ya que no habrá un cambio drástico en la forma en que se construye Drupal.

Pero lo más importante, para los propietarios de sitios de Drupal, es que esto significa que debería ser mucho más fácil actualizar a Drupal 9 de lo que fue actualizar a Drupal 8. Drupal 9 simplemente será la última versión de Drupal 8, con sus obsolescencias eliminadas. Esto quiere decir que no introduciremos nuevas interfaces de API o funciones de detección de compatibilidad retroactiva en Drupal 9 excepto las actualizaciones de nuestras dependencias. Mientras los módulos y los temas estén al día con las últimas API de Drupal 8, la actualización a Drupal 9 debería ser fácil. Por lo tanto, creemos que un periodo de actualización de 12 a 18 meses será suficiente.

¿Cuál es el gran reto de Drupal 9?

El gran reto de Drupal 9 es ... que no debería ser un gran reto. La mejor manera de estar preparado para Drupal 9 es mantenerse al día con las actualizaciones de Drupal 8. Asegúrate de que no utilizas módulos y APIs obsoletos y, si es posible, utiliza las últimas versiones de dependencias. Si lo haces, tu experiencia de actualización será sencilla, y esto es un gran logro para nosotros. "

Artículos Relacionados