Les contributeurs WordPress ont travaillé dur ces dernières 24 heures pour préparer le Version de maintenance 6.4.1 après l'apparition d'un bug critique en raison d'un changement dans la bibliothèque de requêtes, provoquant des problèmes de mises à jour sur les serveurs exécutant d'anciennes versions de cURL.
Les sociétés d'hébergement, dont la nôtre, ont commencé à signaler l'impact généralisé du bug.
#657 arrête les téléchargements depuis https://api.wordpress.org/ et de nombreux autres sites lors de l'utilisation de Curl 7.29.0 (et peut-être d'autres versions) Erreur : RuntimeException : impossible d'obtenir l'URL 'https://api.wordpress.org/core/version-check/1.7/?locale=en_US' : erreur cURL 28 : opération abandonnée après 10000 807 millisecondes avec 1 sur -28 octets reçus. Cela provoque également des problèmes avec l'API REST dans Site Health avec l'erreur : Réponse de l'API REST : (http_request_failed) Erreur cURL 10005 : Opération interrompue après XNUMX XNUMX millisecondes avec XXX sur XXX octets reçus. » Cela empêche également les mises à jour du plugin et du noyau WordPress, essentiellement n'importe quoi. qui s'appuie sur le gestionnaire Curl interne de WordPress. Le problème est devenu une priorité absolue car il n’était pas clair comment les utilisateurs pourraient recevoir une mise à jour.
Même si vous corrigez ce problème maintenant, cela empêche toute future mise à niveau automatique vers la version 6.4.1, car cela interrompt les requêtes Curl, donc la seule façon pour les utilisateurs de mettre à niveau serait manuellement, plus vous attendez, plus le problème s'aggravera.
Nous avons trouvé des milliers de sites concernés par le bug. Le problème dépassait les capacités de résolution manuelle de la plupart des utilisateurs, ce qui a incité les hôtes à trouver comment mettre à jour leurs clients.
Le bug aurait également été à l'origine de problèmes potentiels avec l'API Stripe, WP-Admin et les performances.
Tiffany Bridge, chef de produit chez Liquid Web/Nexcess, a résumé comment ce problème est apparu :
Il paraît que:
- Quelqu'un a signalé un bug lié à une interaction entre son système de protection contre les intrusions et WordPress.
- Ensuite, ils ont déployé leur propre correctif sur WordPress.
- Le chef de projet pour ce domaine a demandé au demandeur de passer des tests, ce qu'il n'a pas fait.
- Ensuite, ils ont quand même fusionné le PR, malgré le manque de tests.
- En attendant, les hébergeurs devront tous annuler ce changement dans nos flottes afin que nos clients puissent toujours bénéficier de petites choses comme les mises à jour du noyau et des plugins si nous exécutons une version affectée de cURL. (7.29 confirmé, il y en a peut-être plus) Les principaux contributeurs de WordPress devront aller au fond des choses sur la manière dont ce bug a été autorisé, soit par le biais d'une analyse post-mortem, soit par une autre discussion pour éviter que cela ne se produise à grande échelle à l'avenir.
La mise à jour WordPress 6.4.1 met à jour la bibliothèque Requests de la version 2.0.8 à 2.0.9 en tant que correctif pour atténuer le problème. Annulez le changement problématique. La version 6.4.1 inclut également des correctifs pour trois autres problèmes distincts. Des mises à jour automatiques ont été déployées ce soir pour toute personne disposant de sites prenant en charge les mises à jour automatiques en arrière-plan.