← Toutes les actualités

Web et développement

Cloudflare Workers renforce sa compatibilité avec les modules Node.js

Cloudflare a réécrit le registre de modules de Workers pour mieux suivre Node.js, accélérer le chargement et simplifier le déploiement d’applications.

Par Rédaction AUVR Studio2 min de lecture
Illustration officielle de Cloudflare consacrée au registre de modules Workers et à Node.js

Cloudflare a reconstruit le registre de modules de workerd, le moteur open source utilisé par Workers. L’objectif est de suivre plus fidèlement le comportement de Node.js, d’améliorer les performances et de rendre les erreurs plus compréhensibles pour les développeurs.


Un registre de modules entièrement réécrit


Le registre détermine la manière dont une application trouve, charge et relie ses fichiers JavaScript. Des différences subtiles avec Node.js peuvent provoquer des erreurs lorsqu’une bibliothèque suppose un ordre précis ou utilise des métadonnées propres aux modules.


La nouvelle architecture repose davantage sur les URL et prend mieux en charge import.meta. Elle cherche à appliquer des règles cohérentes à tous les modules, qu’ils proviennent du code du projet, d’une dépendance ou d’un composant fourni par la plateforme.


Les API Node.js stables activées par défaut


Cloudflare indique que les API stables de Node.js utiles dans un environnement sans serveur sont désormais prises en charge et activées par défaut. Les projets ont donc moins souvent besoin d’un indicateur spécial de compatibilité.


Cela ne transforme pas Workers en serveur Node.js traditionnel. Certaines API liées au système local, aux processus persistants ou à un accès direct à la machine restent incompatibles avec un environnement isolé distribué.


Des applications pouvant atteindre 64 Mio


La plateforme accepte désormais des applications atteignant 64 mébioctets sur toutes les offres. Cloudflare retire aussi l’ancienne limite fondée sur la taille compressée du paquet, qui pouvait rendre le résultat difficile à prévoir avant le déploiement.


Cette capacité supplémentaire facilite l’usage de dépendances plus riches, mais ne dispense pas d’optimiser les bundles. Un paquet plus volumineux peut augmenter le temps de construction, compliquer l’audit et embarquer du code inutilisé.


Des gains attendus au démarrage et pendant le développement


Le registre ajoute une compilation différée et des caches de code partagés. Le moteur peut attendre qu’un module soit réellement nécessaire avant de le compiler, puis réutiliser certains résultats entre plusieurs instances.


Les messages d’erreur ont également été retravaillés pour mieux indiquer le module et la règle concernés. L’ensemble doit réduire les surprises lors du portage d’une application Node.js vers Workers et rapprocher le développement local du comportement observé en production.


Source officielle et crédit image : Cloudflare Blog — article officiel sur le registre de modules Workers.