assemblee-virtuelle / archipelago

Fostering interconnections between communities by creating synergies between their platforms
Apache License 2.0
14 stars 6 forks source link

[Major] Upgrade to react-scripts 5 and node 18+ #153

Closed mguihal closed 7 months ago

mguihal commented 10 months ago

Hello,

Jusqu'à maintenant, nous ne pouvions pas utiliser les dernières versions de Node pour la partie frontend dû à une incompatbilité avec la version trop ancienne de react-scripts (3.x). Node 16 était la dernière version compatible.

Node 16 n'étant désormais plus maintenu, il est temps de mettre à jour ces dépendances.

⚠️ Cette PR contient des breaking changes ⚠️

Idéalement, ne pas la merger sur next tant qu'on a pas décidé ce qu'on en fait (voir https://github.com/assemblee-virtuelle/archipelago/issues/152)

Changements effectués

Suite à la mise à jour de Node, le comportement de l'import des ressources a changé. Avant, il était possible de faire

import * as resources from './resources';

et l'ordre des de l'écriture des exports était conservé dans le fichier. En Node >=18 ce n'est plus le cas, les exports sont désormais triés par ordre alphabétique. J'ai donc exportés les ressources sous forme d'objet plutôt. Il est toutefois nécessaire désormais de changer la ligne d'importation par

import resources from './resources';

Je précise également que malgré la mise à jour à la dernière version, react-scripts est désormais déprécié. Une prochaine mise à jour majeure d'Archipelago sera nécessaire afin d'utiliser par exemple Vite à la place (et en profiter pour convertir le projet en Typescript)