jQuery SDK mit Tests und einem kritischen Patch verbessern
Leider hatten wir in den vergangenen zwei Tagen einige Probleme mit unserem jQuery SDK. Das tut uns
sehr leid, und bedauerlicherweise haben wir keine bessere Erklärung als menschliches (also mein)
Versagen. Glücklicherweise war nur ein kleiner Teil unserer Kunden betroffen (nämlich diejenigen,
die das jQuery SDK 2.6.1 in Kombination mit unserem
Robot /file/filter einsetzten),
dennoch entspricht das nicht der Qualität, die Sie von uns gewohnt sind.
Das jQuery SDK stammt aus der Zeit vor CasperJS, Travis CI und Ähnlichem und war tatsächlich die erste Software, die vor fast 6 Jahren für Transloadit geschrieben wurde. Es wurde ohne eine solide Reihe von Tests veröffentlicht. Leider haben wir es über die Jahre versäumt, das zu ändern, während sich unsere Werkzeuge verbesserten. Die letzten Tage haben schmerzlich deutlich gemacht, dass nicht nur unsere API, unsere Website und unsere vielen anderen SDKs gründlich getestet werden müssen, sondern selbstverständlich auch unser jQuery SDK.
Künftig werden wir das korrigieren und die Schwäche in eine Stärke verwandeln, indem wir mit den zuvor genannten Werkzeugen verschiedene Tests auf System-, Implementierungs- und Integrationsebene in das jQuery SDK einführen. Wir sind zuversichtlich, dass dieses Upgrade die Wahrscheinlichkeit drastisch verringert, dass Fehler wie diese erneut in die Produktion gelangen.
Nochmals: Wir bedauern sehr, dass dies passiert ist.
Wenn Sie eine angepasste Version oder einen Fork des jQuery SDK einsetzen, bitten wir Sie, diesen Patch manuell auf Ihr Setup anzuwenden. Es wird ein künftiges Update der API geben, das das jQuery SDK für Sie funktionsunfähig macht, wenn Sie diesen Patch nicht eingespielt haben. Das liegt daran, dass wir die Logik darüber, welches Ergebnis bereits an das jQuery SDK gesendet wurde und für welches der onResult()-Callback aufgerufen werden soll, derzeit innerhalb der API führen. Natürlich sollte sich die API nicht darum kümmern, denn es handelt sich um clientseitige Logik. Daher möchten wir die API von dieser Funktionalität befreien und sie in das jQuery SDK verlagern, was der obige Patch mit nur 10 % des bisher verwendeten Codes leistet.
Wie immer empfehlen wir, die neueste Version des jQuery SDK zu nutzen, indem Sie https://assets.transloadit.com/js/jquery.transloadit2-v2-latest.js einbinden. Wir werden uns stets bemühen, diese stabil zu halten. Wenn Sie diese Version verwenden, müssen Sie bezüglich des Patches nichts unternehmen.
Es wird bald eine weitere Ankündigung mit einem konkreten Termin für die Abkündigung dieser Funktionalität geben, aber – da sie mit den aufgetretenen Problemen zusammenhängt – möchten wir Sie bereits vorab informieren.
