Werkzeug: jQuery entfernen

Erstellt am 16. Mai 2020  ·  9Kommentare  ·  Quelle: pallets/werkzeug

An dieser Stelle reicht die Unterstützung moderner JavaScript-Funktionen in modernen Browsern wahrscheinlich aus, um jQuery durch einfaches JavaScript zu ersetzen. Die Bündelung von jQuery, sogar minimiert, beträgt 1/4 der endgültigen Größe des Rads auf PyPI. Wir werden auch immer wieder aufgefordert, jQuery aufgrund von CVEs zu aktualisieren, die herauskommen, obwohl sie keinen Einfluss auf den Debugger haben.

Hilfreichster Kommentar

@kx-chen und @chrisngyn werden daran arbeiten!

Alle 9 Kommentare

Wir sollten wahrscheinlich die gleichen Browserversionen wie jQuery unterstützen: https://jquery.com/browser-support/. Wenn IE ein zu großes Problem ist, bin ich wahrscheinlich bereit, es fallen zu lassen, es macht nur 0,3% der Seitenaufrufe aus (zumindest für Dokumente).

Ich würde einfach alles fallen lassen, was nicht modern ist. Es ist ein Entwicklertool, warum sich mit altem Mist beschäftigen?
Wenn Sie ein Entwickler sind, der Ihre Website mit alten Browsern zum Laufen bringen muss. Es ist scheiße, Sie zu sein, aber hoffentlich werden Sie dafür gut bezahlt. Das bedeutet nicht, dass Sie diesen alten Browser für die tägliche Entwicklung verwenden werden. Wenn Sie also im Werkzeug-Debugger landen, verwenden Sie wahrscheinlich keinen bösen alten Browser.

Also IMHO unterstützen nur die neuesten Firefox-, Chrome-, Edge-, Safari-Versionen und das war's. Die Unterstützung älterer EdgeHTML-Versionen und des IE (sogar IE 11) ist nur eine RIESIGE Nervensäge, da Sie entweder altes JS schreiben oder transpilieren müssen. Wenn Sie diese alten Browser ablegen, können Sie alle modernen Funktionen "kostenlos" nutzen.

Wir brauchen eine Art Baseline, und das ist wahrscheinlich auch in Ordnung (es stimmt im Grunde mit jQuery überein, mit Ausnahme des IE). Wir sollten wahrscheinlich zumindest Firefox ESR berücksichtigen.

Ich bezweifle, dass ESR für das Entwicklertool relevant ist. Wie auch immer, das nächste ESR-Major-Release kommt nächsten Monat und ich denke, im letzten Jahr hat sich nichts Wichtiges geändert, das für den Debugger relevant wäre.

Wenn wir etwas dokumentiert haben möchten, würde ich mich für "die neueste Version von Firefox, Chrome, Edge und Safari" entscheiden, verfügbar unter"

Das einzige Feature, an das ich spontan gedacht habe, war fetch vs XHR, da fetch viel angenehmer zu arbeiten ist, aber IE ausschließt. Ja, lass uns erstmal komplett modern durchgehen.

Wir werden auch immer wieder aufgefordert, jQuery aufgrund von CVEs zu aktualisieren, die herauskommen, obwohl sie keinen Einfluss auf den Debugger haben.

Dies ist ein großer Schmerzpunkt auf meiner Seite. Alle paar Wochen / Monate explodieren alle meine Python-Projekte mit neuen Sicherheitsergebnissen aufgrund dieser jquery-Abhängigkeit.

find venv -name jquery*
venv/lib/python3.7/site-packages/werkzeug/debug/shared/jquery.js

@kx-chen und @chrisngyn werden daran arbeiten!

Anscheinend erfordert die Gist-API

Sie können öffentliche Gists anonym lesen, aber Sie müssen bei GitHub angemeldet sein, um Gists zu erstellen. Um Gists im Namen eines Benutzers zu lesen oder zu schreiben, benötigen Sie den Gist-OAuth-Bereich und ein Token.

Wenn Sie auf die Schaltfläche klicken, wird ein 401-Fehler von GitHub zurückgegeben, der in einen 500-Fehler vom Debugger übersetzt wird. Ich habe das Gefühl, dass dies nicht immer der Fall war, aber jetzt funktioniert es eindeutig nicht. Ich glaube nicht, dass das Durchlaufen des OAuth-Flows von GitHub im Bereich des Debuggers liegt. Entfernen wir also einfach die Schaltfläche, den Code und die Dokumente zum Erstellen von Pastes/Gists.

Scheint von #1857 behoben zu sein.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen