Une mauvaise mise à jour d'Apple Safari interrompt l'API JavaScript IndexedDB et perturbe les applications Web • The Register


L'équipe WebKit d'Apple a réussi à casser la populaire API JavaScript IndexedDB dans la dernière version de Safari (14.1.1) sur macOS 11.4 et iOS 14.6.

Le bogue, signalé pour la première fois le 2 juin 2021, ne se manifeste que lorsque les applications essaient pour la première fois d'utiliser le gestionnaire IndexedDB NoSQL pour stocker des données. Le rechargement d'une page Web ou d'une application mettant en œuvre l'API résout le problème, selon plusieurs rapports de bogues.

Néanmoins, la situation est loin d'être idéale pour les développeurs Web et pour toute personne utilisant les versions de bureau ou mobiles de Safari. Bien qu'il existe une variété d'API de stockage disponibles pour les développeurs Web, IndexedDB est l'une des deux (l'autre étant l'API de stockage de cache) recommandées ; les autres options ont des cas d'utilisation spécifiques, des lacunes ou ne sont pas largement prises en charge.

Feross Aboukhadijeh, un développeur open source qui exécute Socket, a déclaré lundi que le bogue empêchait l'application de transfert de fichiers Web de son entreprise, Wormhole, de fonctionner lors du chargement initial jusqu'à ce qu'une solution de contournement soit mise en œuvre.

« L'ouverture d'une base de données IndexedDB échoue 100 % du temps au premier essai », a-t-il déclaré. mentionné via Twitter. "Si vous actualisez, cela commence à fonctionner."

"Il est vraiment très difficile de créer des sites Web fiables sur macOS et iOS avec des bogues comme celui-ci", a-t-il déclaré. ajoutée, implorant l'équipe WebKit d'Apple de donner la priorité à un correctif. "Cela aurait dû être détecté par des tests unitaires de base."

Les problèmes de Safari avec IndexedDB surviennent alors que les développeurs Web attendent la publication d'un correctif pour un bogue affectant localStorage, une API de stockage de navigateur plus limitée, dans Safari 14.1 et versions ultérieures, et le mot qu'un bogue de plantage IndexedDB signalé en 2019 attirera l'attention.

Paulus Esterhazy, directeur de l'ingénierie chez Presentation biz Pitch, a récemment documenté divers problèmes avec IndexedDB, dont beaucoup ont à voir avec Safari, dans un article GitHub.

"L'équipe Webkit continue d'envoyer des bogues critiques liés au stockage en production, encore et encore", a-t-il écrit.

Les équipes d'ingénierie des navigateurs pour Chromium, Edge et Firefox, entre autres, introduisent régulièrement leurs propres bugs – Apple n'a pas le monopole des erreurs de code.

Mais la technologie d'Apple pose un défi particulier aux développeurs Web, car la société exige que tous les navigateurs iOS soient basés sur WebKit, le moteur de rendu utilisé dans Safari. La concurrence avec WebKit n'est tout simplement pas autorisée sur iOS.

Les règles de la plate-forme d'Apple sont actuellement examinées de près par les législateurs et les responsables antitrust du monde entier et, en Californie, par la juge du tribunal de district américain Yvonne Gonzalez Rogers, qui devrait bientôt rendre une décision dans le cadre du procès antitrust d'Epic Games contre Apple.

Les ingénieurs logiciels de Google comme Alex Russell se plaignent depuis longtemps que la feuille de route de développement du navigateur d'Apple, l'adoption limitée des API et les règles de la plate-forme garantissent que les applications Web ne peuvent pas rivaliser avec les applications natives de la plate-forme iOS.

Mais d'autres non affiliés à un concurrent majeur d'Apple partagent ce sentiment de frustration.

"Compte tenu de la position privilégiée de Safari sur iOS, Apple a été décevant par la lenteur avec laquelle ils adoptent les normes (voire pas du tout) et par le caractère incomplet des implémentations, comme pour la lecture multimédia et WebRTC", a déclaré le développeur de logiciels Matt Mastracci dans un courrier électronique adressé Le registre.

"À un moment donné, l'expérience des développeurs sur Safari était haut de gamme, mais ils tombent dans le même piège que Microsoft lorsqu'ils avaient le monopole du navigateur de bureau."

Dans un récent article sur Hacker News, Aboukhadijeh s'est plaint que les actions d'Apple donnent l'impression que Cupertino est « carrément hostile au Web » et désireux de pousser les développeurs à créer des applications de plate-forme natives (qui, contrairement aux applications Web, Apple peut contrôler via son App Store des règles).

"La négligence et le sous-investissement d'Apple dans la plate-forme Web empêchent définitivement les sites Web ou les" PWA " d'avoir " l'apparence, la convivialité et les fonctionnalités d'une application native ", a-t-il écrit. "Safari souffre du double effet des limitations qu'Apple a intentionnellement mises en place et du sous-effectif intentionnel de l'équipe Safari."

Nous avons interrogé Apple sur le bogue IndexedDB et si son équipe Safari est en sous-effectif par rapport à la concurrence. Nous serions abasourdis s'il décidait de répondre. ®



Source link

Un disposition e-commerce donne l’occasion de se lancer à moindres frais par rapport aux entreprises classiques. De plus, vous pouvez vous lancer autrement rapidement. La maîtrise d’un état e-commerce ne demande pas de présence physique à un endroit précis, sauf peut-être quant au stockage et la préparation des commandes que vous avez la possibilité tout à fait externaliser, mais aussi mieux dans l’hypothèse ou vous ne possédez pas de accumulation (on en parlera plus tard dans l’article).