Die Veröffentlichung des Webbrowsers Firefox 88 fand statt. Zudem wurde ein Update für die langfristige Unterstützung mit der Version 78.10.0 erstellt. Die Beta-Testphase für Firefox 89 wird in Kürze starten, wobei die Veröffentlichung für den 1. Juni geplant ist.
Hauptneuheiten:
- Im PDF-Viewer wurde die Unterstützung für integrierte Formularfelder in PDF-Dateien hinzugefügt, die zur Unterstützung der Interaktivität mit dem Benutzer JavaScript verwenden.
- Es wurde eine Einschränkung für die Intensität der Anfrage zur Berechtigung für den Zugriff auf das Mikrofon und die Kamera eingeführt. Solche Anfragen werden nicht angezeigt, wenn der Benutzer in den letzten 50 Sekunden bereits Zugriff auf dasselbe Gerät, für dieselbe Website und denselben Tab gewährt hat.
- Der Aufruf des Screenshot-Tools wurde aus dem Menü „Seitenaktionen“ entfernt, das angezeigt wird, wenn auf die drei Punkte in der Adressleiste geklickt wird. Für Screenshots wird empfohlen, das entsprechende Tool über das Kontextmenü aufzurufen, das beim Klicken mit der rechten Maustaste angezeigt wird, oder ein Symbol über die Oberflächeinstellungen in der Symbolleiste zu platzieren.

- Die Unterstützung für das Skalieren per Pinch-Geste auf Touchpads unter Linux mit grafischen Umgebungen auf Basis des Wayland-Protokolls wurde hinzugefügt.
- Im Drucksystem wurde die Lokalisierung der Maßeinheiten, die zur Festlegung der Ränder verwendet werden, umgesetzt.
- Beim Start von Firefox in den Umgebungen Xfce und KDE wurde die Nutzung der WebRender-Komposite-Engine aktiviert. In Firefox 89 wird erwartet, dass WebRender für alle anderen Linux-Nutzer aktiviert wird, einschließlich aller Mesa-Versionen und Systeme mit NVIDIA-Treibern (vorher war WebRender nur für GNOME mit Intel- und AMD-Treibern verfügbar). WebRender ist in Rust geschrieben und ermöglicht eine signifikante Steigerung der Rendering-Geschwindigkeit sowie eine Verringerung der CPU-Belastung, indem die Rendering-Operationen für Seiteninhalte, die durch GPU-Shader umgesetzt werden, auf die GPU ausgelagert werden. Um WebRender gezielt zu aktivieren, sollte die Einstellung "gfx.webrender.enabled" in about:config aktiviert oder Firefox mit der Umgebungsvariable MOZ_WEBRENDER=1 gestartet werden.
- Die schrittweise Aktivierung der Protokolle HTTP/3 und QUIC hat begonnen. Zunächst wird die Unterstützung von HTTP/3 nur für einen kleinen Prozentsatz der Nutzer aktiviert, und sofern keine unvorhergesehenen Probleme auftreten, soll die Implementierung bis Ende Mai auf alle Nutzer ausgeweitet werden. Für die Verwendung von HTTP/3 ist Unterstützung auf der Clientseite erforderlich sowie Server die gleiche Version des Entwurfsstandards QUIC und HTTP/3, die im Alt-Svc-Header angegeben ist (Firefox unterstützt Entwürfe der Spezifikation von 27 bis 32).
- Die Unterstützung des FTP-Protokolls ist standardmäßig deaktiviert. Die Einstellung network.ftp.enabled ist standardmäßig auf false gesetzt, und die Option für die Erweiterungen browserSettings.ftpProtocolEnabled wurde schreibgeschützt. Im nächsten Release wird der gesamte Code, der mit FTP verbunden ist, entfernt. Als Grund wird die Verringerung der Risiken von Angriffen auf den alten, anfälligen Code genannt, der eine Geschichte von Sicherheitslücken und Wartungsproblemen hat. Es wird auch erwähnt, dass von Protokollen, die keine Verschlüsselung unterstützen und anfällig für Änderungen und Abfangen des Transit-Traffics bei MITM-Angriffen sind, Abstand genommen wird.
- Um mögliche zwischenseitliche Lecks zu verhindern, wird der Wert der Eigenschaft „window.name“ durch die primäre Website, von der die Seite geöffnet wurde, isoliert.
- In JavaScript wurde für das Ergebnis der regulären Ausdrücke die Eigenschaft „indices“ hinzugefügt, die ein Array mit den Anfangs- und Endpositionen der Übereinstimmungsgruppen enthält. Diese Eigenschaft wird nur ausgefüllt, wenn das reguläre Ausdruck mit dem Flag „\/d“ ausgeführt wird. let re = /quick\s(brown).+?(jumps)/igd; let result = re.exec('The Quick Brown Fox Jumps Over The Lazy Dog'); // result.indices[0] === Array [ 4, 25 ] // result.indices[1] === Array [ 10, 15 ] // result.indices[2] === Array [ 20, 25 ]
- In Intl.DisplayNames() und Intl.ListFormat() wurde die Prüfung, ob die an den Konstruktor übergebenen Optionen Objekte sind, verschärft. Bei dem Versuch, Zeichenfolgen oder andere Primitive zu übergeben, werden Ausnahmen ausgelöst.
- Für das DOM wurde eine neue statische Methode AbortSignal.abort() bereitgestellt, die ein AbortSignal zurückgibt, für das der Parameter aborted bereits gesetzt ist.
- Im CSS wurden neue Pseudo-Klassen «:user-valid» und «:user-invalid» implementiert, die den Validierungsstatus eines Formularelements definieren, für das nach der Interaktion des Nutzers mit dem Formular eine Überprüfung der eingegebenen Werte durchgeführt wurde. Der Hauptunterschied zwischen «:user-valid» und «:user-invalid» sowie den Pseudo-Klassen «:valid» und «:invalid» besteht darin, dass die Überprüfung erst beginnt, nachdem der Nutzer auf ein anderes Element gewechselt ist (zum Beispiel durch Tabulatorwechsel zu einem anderen Feld).
- Die CSS-Funktion image-set(), mit der ein Bild aus einer Auswahl an Optionen mit unterschiedlichen Auflösungen gewählt werden kann, das am besten zu den aktuellen Bildschirmparametern und der Netzwerkgeschwindigkeit passt, kann jetzt in den CSS-Eigenschaften «content» und «cursor» verwendet werden. h2::before { content: image-set( url(«small-icon.jpg») 1x, url(«large-icon.jpg») 2x); }
- Im CSS-Eigenschaften outline wird die Übereinstimmung mit der durch die Eigenschaft border-radius festgelegten Kontur gewährleistet.
- Für macOS wurde die Standard-Schriftart in der Breite geändert auf Menlo.
- In den Entwicklertools der Netzwerkinspektoranzeige gibt es jetzt einen Schalter, um zwischen der Anzeige von HTTP-Antworten im JSON-Format und im unmodifizierten Format, in dem die Antworten über das Netzwerk gesendet werden, zu wechseln.

- Die standardmäßige Aktivierung der Unterstützung für das Bildformat AVIF (AV1 Image Format), das Technologien der intra-frame Kompression aus dem Video-Encoding-Format AV1 verwendet, wurde auf die nächste Version verschoben. In Firefox 89 soll auch eine aktualisierte Benutzeroberfläche angeboten und ein Rechner in die Adressleiste integriert werden (aktivierbar über suggest.calculator in about:config).
Neben Neuerungen und Fehlerbehebungen wurden in Firefox 88 insgesamt 17 Sicherheitsanfälligkeiten behoben, von denen 9 als kritisch eingestuft werden. 5 Sicherheitsanfälligkeiten (unter CVE-2021-29947 zusammengefasst) entstanden durch Speicherprobleme, wie z. B. Pufferüberläufe und das Zugreifen auf bereits freigegebene Speicherbereiche. Diese Probleme können potenziell zur Ausführung von Angreifer-Code führen, wenn speziell gestaltete Seiten geöffnet werden.
Quelle: opennet.ru


