jQuery 4.0 publié après une décennie avec des changements de modernisation
L'équipe de jQuery a publié la version 4.0, introduisant des changements importants, la prise en charge des navigateurs modernes et des nettoyages prévus depuis longtemps.
jQuery, une bibliothèque JavaScript largement utilisée par les développeurs web pour travailler avec des pages web, a officiellement publié la version 4.0, la première mise à jour majeure du projet depuis presque une décennie.
L'une des modifications majeures est la suppression de la prise en charge d'Internet Explorer 10 et des versions antérieures. La prise en charge d'IE 11 reste pour l'instant, mais seulement partiellement, car le projet prévoit de l'abandonner complètement dans jQuery 5.0.
De plus, le support a été abandonné pour Edge Legacy, les très anciennes versions de Firefox, les premières versions d’iOS et le navigateur Android. Il est conseillé aux projets qui dépendent encore de ces environnements de rester sur la série jQuery 3.x.
Du côté de la sécurité, jQuery 4.0 ajoute la prise en charge des Trusted Types, permettant à du HTML enveloppé dans des objets TrustedHTML d'être transmis en toute sécurité aux méthodes de manipulation jQuery sous des configurations strictes de Content Security Policy. De plus, la plupart des chargements de scripts asynchrones reposent désormais sur des éléments <script> créés dynamiquement plutôt que sur des scripts en ligne, avec quelques exceptions limitées.
En interne, le code source de jQuery a terminé sa migration des modules AMD vers les modules ES. Le projet utilise désormais Rollup pour le packaging, rendant le code source directement compatible avec les outils et flux de travail modernes et utilisable via <script type="module"> dans les navigateurs compatibles.
Comme prévu, plusieurs API obsolètes depuis longtemps ont été supprimées. Cela inclut des méthodes utilitaires telles que jQuery.isArray, jQuery.parseJSON, jQuery.trim, jQuery.now, ainsi que plusieurs éléments internes liés au CSS. Dans tous les cas, les API natives des navigateurs offrent des remplacements directs.
Le nettoyage interne supplémentaire comprend la suppression de push, sort et splice du prototype jQuery.
jQuery 4.0 change également l'ordre des événements liés au focus afin de correspondre à la spécification actuelle du W3C. De ce fait, la bibliothèque ne remplace plus le comportement natif du navigateur, ce qui signifie que les séquences d'événements suivent désormais l'ordre standardisé utilisé par les navigateurs modernes.
Enfin, la version allégée a été encore réduite en supprimant les Deferreds et Callbacks, atteignant environ 19,5 Ko compressés en gzip. Les Promises natives peuvent remplacer la plupart des utilisations de Deferred dans les navigateurs pris en charge. Les projets qui nécessitent encore la prise en charge d'IE 11 devraient continuer à utiliser la version complète ou ajouter un polyfill pour les Promises.
Pour plus d'informations et une liste détaillée de tous les changements, consultez l'annonce.
