Améliorer le SDK jQuery avec des tests et un correctif critique
Malheureusement, nous avons rencontré quelques problèmes avec notre SDK jQuery ces deux derniers
jours. Nous en sommes vraiment désolés et, hélas, nous n’avons pas de meilleure explication à donner
qu’une erreur humaine (en l’occurrence, la mienne). Heureusement, seule une petite partie de nos
clients a été touchée (uniquement ceux qui utilisaient le SDK jQuery 2.6.1
avec notre Robot /file/filter),
mais cela reste en deçà de la qualité à laquelle nous vous avons habitués.
Le SDK jQuery date d’avant CasperJS, Travis CI et consorts, et c’est en fait le premier logiciel écrit pour Transloadit, il y a près de 6 ans. Il a été lancé sans véritable suite de tests. Malheureusement, nous n’avons pas corrigé cela au fil des ans, à mesure que nos outils s’amélioraient. Ces derniers jours nous ont douloureusement rappelé que notre API, notre site web et nos nombreux autres SDK ne sont pas les seuls à avoir besoin de tests rigoureux : notre SDK jQuery en a bien sûr besoin aussi.
Désormais, nous allons y remédier et transformer cette faiblesse en force en ajoutant au SDK jQuery divers tests au niveau système, implémentation et intégration, à l’aide des outils mentionnés plus haut. Nous sommes convaincus que cette amélioration réduira considérablement le risque que des bugs de ce type atteignent à nouveau la production.
Encore une fois, nous sommes sincèrement désolés de ce qui s’est passé.
Si vous utilisez une version personnalisée ou un fork du SDK jQuery, nous vous prions d’appliquer manuellement ce correctif à votre configuration. Une future mise à jour de l’API rendra le SDK jQuery inutilisable pour vous si vous n’avez pas appliqué ce correctif. En effet, c’est actuellement l’API qui contient la logique déterminant quel résultat a déjà été envoyé au SDK jQuery et pour lequel appeler le callback onResult(). Bien entendu, l’API ne devrait pas s’en charger, puisqu’il s’agit d’une logique côté client. Nous souhaitons donc retirer cette fonctionnalité de l’API pour la déplacer dans le SDK jQuery, ce que fait le correctif ci-dessus avec seulement 10 % du code utilisé.
Comme toujours, nous vous recommandons d’utiliser la dernière version du SDK jQuery via https://assets.transloadit.com/js/jquery.transloadit2-v2-latest.js. Nous ferons toujours en sorte qu’elle reste stable. Si vous utilisez cette version, vous n’avez rien à faire concernant le correctif.
Une autre annonce suivra bientôt avec une véritable date de dépréciation pour cette fonctionnalité, mais – comme elle est liée aux problèmes survenus – nous tenions à vous prévenir dès maintenant.
