Experts en Drupal

Quins plans hi ha per a Drupal 9?

Des de drupal.org ja estan escalfant els motors per al llançament de Drupal 9. El fundador de Drupal, Dries Buytaert, ha donat els detalls de la data de llançament i explica com serà la migració de Drupal 8 a Drupal 9.

Quins plans hi ha per a Drupal 9?
Judit Cabana
Judit Cabana

December 08, 2019

“A Drupal Europe, vaig anunciar que Drupal 9 sortirà a l'any 2020. Encara que he explicat per què tenim previst llançar-lo l'any 2020, no era molt específic sobre en quin moment de 2020 teníem previst publicar Drupal 9. Tenint en compte que 2020 es troba a menys de tretze mesos vista, és hora de ser més específic

Quin gran canvi tindrà Drupal 9?

Abans de parlar sobre la data de llançament de Drupal 9, vull explicar un altre canvi que hem fet, que té un petit impacte en la data de llançament de Drupal 9.

Segons es va anunciar fa dos anys, Drupal 8 va adoptar un cicle de llançament de 6 mesos (dos llançaments a l'any). Symfony, un marc de PHP del que depèn Drupal, utilitza un calendari de llançaments similar. Malauradament, el calendari dels llançaments de Drupal s'ha produït històricament 1-2 mesos abans dels llançaments de Symfony, el que ens obliga a esperar sis mesos per adoptar l'últim llançament de Symfony. Per poder adoptar les últimes versions de Symfony més ràpidament, estem movent els llançaments menors de Drupal a juny i desembre. Això ens permetrà adoptar les darreres versions de Symfony en el mateix mes. Per exemple, Drupal 8.8.0 ja està programat per al desembre de 2019.

3 de juny de 2020: publicació Drupal 9 

La major dependència de Drupal 8 és Symfony 3, que té una data d’expiració al novembre de 2021. Això significa que després de novembre de 2021, els errors de seguretat en Symfony 3 no es solucionaran. Per tant, hem d’extingir Drupal 8 no més tard de novembre de 2021. O, dit d’altra manera, al novembre de 2021 tothom ha d'estar en Drupal 9.

Amb la vista posada al novembre de 2021, ens agradaria donar als propietaris de llocs com a mínim un any per actualitzar-se  de Drupal 8 a Drupal 9. Tot i que podríem publicar Drupal 9 el desembre de 2020, vam decidir que era millor provar de publicar Drupal 9 el mes de juny de 2020. Això dóna als propietaris dels llocs 18 mesos per a actualitzar-los. A més, també dóna als contribuents del core de Drupal un amortidor (buffer) addicional en cas que no puguem acabar Drupal 9 a temps per a un llançament a l’estiu.

Construcció de Drupal 9 en Drupal 8

En comptes de treballar en Drupal 9 en una base de codi separada, estem construint Drupal 9 en Drupal 8. Això vol dir que estem afegint noves funcionalitats com a codi compatible amb versions anteriors i funcions experimentals. Una vegada que el codi sigui estable, desactivarem qualsevol funcionalitat antiga.

Vegem un exemple. Com ja s'ha dit anteriorment, Drupal 8 actualment depèn de Symfony 3. El nostre pla és llançar Drupal 9 amb Symfony 4 o 5. L'edició de Symfony 5 està a menys d'un any, mentre que Symfony 4 es va publicar fa un any. Idealment Drupal 9 s'hauria d’executar amb Symfony 5, tant per les últimes millores de Symfony com per tenir un suport més durador. Tanmateix, Symfony 5 encara no s'ha publicat, de manera que no sabem l'abast dels seus canvis, i tindrem temps limitat per intentar adoptar-lo abans de l’expiració de Symfony 3.

Actualment estem treballant per fer possible executar Drupal 8 amb Symfony 4 (sense requerir-ho). El suport a Symfony 4 és una pedra angular per Symfony 5 ja que aporta noves capacitats per als llocs que decideixen utilitzar-lo i redueix la càrrega d'actualitzacions de Symfony 5 per als desenvolupadors del core de Drupal. Al final, el nostre objectiu és que Drupal 8 funcioni amb Symfony 3, 4 o 5 per poder identificar i solucionar qualsevol problema abans de començar a requerir Symfony 4 o 5 a Drupal 9.

Un altre exemple és el nostre suport als mitjans reutilitzables. Drupal 8.0.0 es va llançar sense una biblioteca multimèdia. Actualment estem treballant per afegir una biblioteca multimèdia a Drupal 8 per a que els autors de contingut puguin seleccionar mitjans preexistents d'una biblioteca i integrar-los fàcilment a les seves publicacions. Una vegada que la biblioteca de mitjans es mantingui estable, podrem desactivar l'ús de la funcionalitat de pujada d'arxius anterior i fer que la nova biblioteca de mitjans sigui l'experiència predeterminada.

L'actualització a Drupal 9 serà fàcil

Com que estem construint Drupal 9 a Drupal 8, la tecnologia de Drupal 9 s'haurà provat sobre el terreny a Drupal 8. 

Per als contribuents del core de Drupal, això vol dir que les tasques a fer en Drupal 9 abans que puguem llençar-lo no són excessives. El llançament de Drupal 9 només dependrà de l'eliminació de funcionalitats obsoletes i de l'actualització de les dependències de Drupal, com ara Symfony. Això farà que el temps de llançament sigui més previsible i la qualitat del llançament sigui més robusta. 

Per als autors de mòduls contribuïts, significa que ja tenen la nova tecnologia al seu servei, de manera que podran treballar amb la compatibilitat de Drupal 9 aviat (p. Ex. Poden començar a actualitzar els seus mòduls multimèdia per utilitzar la nova biblioteca de mitjans abans de llançar Drupal 9). Finalment, els seus coneixements tècnics de Drupal 8 es mantindran rellevants en Drupal 9, ja que no hi haurà un canvi dràstic en la manera com es construeix Drupal.

Però el més important, per als propietaris de llocs de Drupal, això significa que hauria de ser molt més fàcil actualitzar a Drupal 9 del que va ser actualitzar a Drupal 8. Drupal 9 simplement serà l'última versió de Drupal 8, amb les seves obsolescències eliminades. Això vol dir que no introduirem noves interfícies d'API o funcions de detecció de compatibilitat retroactiva en Drupal 9 excepte les actualitzacions de les nostres dependències. Mentre els mòduls i els temes estiguin al dia amb les últimes API de Drupal 8, l'actualització a Drupal 9 hauria de ser fàcil. Per tant, creiem que un període d'actualització de 12 a 18 mesos serà suficient.

Quin és el gran repte de Drupal 9?

El gran repte de sobre Drupal 9 és ... que no hauria de ser un gran repte. La millor manera d'estar preparat per a Drupal 9 és mantenir-se al dia amb les actualitzacions de Drupal 8. Assegureu-vos que no utilitzeu mòduls i APIs obsolets i, si és possible, utilitzeu les últimes versions de dependències. Si ho feu, la vostra experiència d'actualització serà senzilla, i això és un gran assoliment per a nosaltres.”

Articles Relacionats