6 points par GN⁺ 2024-04-19 | 3 commentaires | Partager sur WhatsApp
  • L’influence de jQuery sur le Web est indéniable
    • Depuis sa première présentation en 2006, il est immédiatement devenu un outil de base pour les développeurs Web
    • Il simplifie la manipulation des documents HTML, la gestion des événements, les animations, etc.
    • Il a continué à jouer un rôle majeur dans l’évolution des standards du Web et des fonctionnalités des navigateurs
  • Avec l’arrivée des frameworks JavaScript modernes, les développeurs qui choisissent jQuery pour de nouveaux projets sont moins nombreux, mais son usage reste encore très élevé à l’échelle mondiale
    • Selon une analyse des résultats d’une enquête IDC, 90 % de l’ensemble des sites Web utilisent jQuery
    • Parmi eux, environ un tiers utilisent une ancienne version
  • L’équipe jQuery et la fondation OpenJS travaillent à résoudre ce problème dans le cadre de la campagne Healthy Web checkup
    • Ce guide explique pourquoi il est important de maintenir jQuery à jour et accompagne le processus de mise à niveau

Pourquoi la mise à niveau de jQuery est importante pour la sécurité

  • Vulnérabilités de sécurité
    • La base de code de jQuery peut contenir diverses vulnérabilités, du XSS au RCE
    • L’équipe jQuery fournit des correctifs et des mises à jour dès qu’elles sont découvertes
    • Passer à la dernière version permet d’appliquer ces correctifs de sécurité et de réduire le risque d’exploitation par des attaquants
  • Bonnes pratiques de sécurité
    • Les nouvelles versions de jQuery intègrent des bonnes pratiques et des améliorations de sécurité pour atténuer les menaces courantes
    • La mise à niveau permet d’adopter ces bonnes pratiques et de renforcer la posture de sécurité de l’application
  • Exigences de conformité
    • De nombreux secteurs et cadres réglementaires imposent de maintenir les logiciels à jour et de corriger rapidement les vulnérabilités connues
    • Ne pas mettre à niveau jQuery pour résoudre des problèmes de sécurité peut entraîner une non-conformité à ces exigences

Support des navigateurs

  • jQuery 1.x, 2.x et 3.x ont chacun une liste différente de navigateurs pris en charge
    • Cependant, compte tenu de l’usage actuel du marché des navigateurs, les navigateurs pris en charge par jQuery 3.x, comme IE 9+, suffisent dans presque tous les cas
    • jQuery 4.x continuera à prendre en charge IE11, même si Microsoft a annoncé la fin officielle du support

Comment mettre à niveau jQuery

  • L’équipe jQuery propose le plugin jQuery Migrate afin de rendre la mise à niveau de jQuery aussi simple que possible
    • Il s’agit d’un outil de développement qui génère dans la console du navigateur des messages d’avertissement pouvant être utilisés pour identifier et corriger les problèmes de compatibilité
    • Il rétablit temporairement des fonctionnalités et comportements obsolètes afin que l’ancien code continue de fonctionner avec la nouvelle version de jQuery, tout en permettant de corriger les problèmes de compatibilité
  • jQuery Migrate existe en deux versions, 1.x et 3.x (pas de 2.x)
    • Une seule version doit être utilisée à la fois
    • En cas de mise à niveau depuis une version antérieure à jQuery 1.9, il peut être nécessaire d’utiliser successivement les deux versions
  • Par exemple, si la version actuelle de jQuery est 1.4.4
    • il faut d’abord passer à jQuery 1.12.4 avec jQuery Migrate 1.x, puis
    • utiliser jQuery Migrate 3.x pour passer à la dernière version de jQuery (actuellement 3.7.1)
    • Si la version actuelle est 2.2.4, seul jQuery Migrate 3.x est nécessaire pour passer à la dernière version de jQuery

Comment utiliser jQuery Migrate

  • Ajouter d’abord jQuery Migrate à la page après le chargement de jQuery
  
  
  • Tester ensuite le site Web ou l’application
    • Lors de l’utilisation de différentes API jQuery, jQuery Migrate enregistre dans la console des messages d’avertissement concernant les éléments obsolètes ou les changements majeurs
    • Corriger chaque avertissement un par un
  • Enfin, lorsqu’aucun avertissement n’est plus enregistré dans la console et que tous les changements majeurs ont été traités, supprimer jQuery Migrate : la migration est alors terminée
    • Pour plus de détails, consulter le README de jQuery Migrate

Guide de mise à niveau de jQuery

  • Les jQuery Upgrade Guides peuvent être utiles pour obtenir des informations détaillées sur les changements majeurs ou pour consulter la liste complète des changements majeurs de chaque version
  • Les guides de mise à niveau pour jQuery 1.9, 3.0 et 3.5 répertorient tous les changements majeurs introduits dans ces versions
  • La plupart des changements majeurs listés ne s’appliqueront probablement pas à votre code, mais ces guides apportent du contexte et des explications pour chacun d’eux

Remarques sur les futures versions de jQuery

  • L’arrivée de jQuery 4.0 peut faire se demander à quoi ressemblera le processus de mise à niveau vers jQuery 4.x
    • La réponse est qu’il sera identique à une mise à niveau vers jQuery 3.x et pourra se faire en une seule étape
    • Autrement dit, il n’est pas nécessaire de passer d’abord à jQuery 3.x avant de passer à jQuery 4.x
    • Il sera possible de passer directement de jQuery 1.9+ à jQuery 4.x
    • Un guide de mise à niveau pour jQuery 4.0 est également prévu

Avis de GN⁺

  • Comme jQuery reste encore très utilisé sur de nombreux sites Web, la mise à niveau de version est un enjeu important pour les développeurs Web
    • Continuer à utiliser une ancienne version peut exposer directement à des vulnérabilités nouvellement découvertes et provoquer aussi des problèmes de performances
  • Toutefois, dans le cas de systèmes legacy utilisant d’anciennes versions de jQuery, la mise à niveau peut demander beaucoup de temps et de coûts
    • Dans ce cas, réduire les risques par des méthodes comme l’application des seuls correctifs de sécurité peut aussi être une option
  • Il est possible de mettre à niveau facilement en utilisant notamment le plugin Migrate, mais des problèmes de compatibilité peuvent survenir
    • C’est particulièrement vrai pour du code legacy fortement dépendant de jQuery
    • Une migration progressive est nécessaire pour résoudre cela
  • Pour un nouveau projet, il peut être préférable de concevoir l’architecture de manière à ne pas dépendre de jQuery
    • Utiliser Vanilla JS ou des frameworks frontend modernes est une approche plus tournée vers l’avenir
  • Pour les développeurs qui ont utilisé jQuery jusqu’ici, profiter de cette occasion pour essayer de nouvelles technologies peut aussi aider à élargir leurs compétences

3 commentaires

 
[Ce commentaire a été masqué.]
 
[Ce commentaire a été masqué.]
 
kandk 2024-04-19

Ne pas mettre à niveau jQuery ou ne pas corriger les problèmes de sécurité
--> Ne pas mettre à niveau jQuery ou ne pas corriger les problèmes de sécurité