Firefox 135 Versionshinweise für Entwickler
Dieser Artikel bietet Informationen über die Änderungen in Firefox 135, die Entwickler betreffen. Firefox 135 wurde am 4. Februar 2025 veröffentlicht.
Änderungen für Webentwickler
>HTML
Keine bemerkenswerten Änderungen
CSS
Entfernt
- Die
-moz-user-inputCSS-Eigenschaft erlaubte es Ihnen, Eingabefelder zu deaktivieren. Diese Eigenschaft ist jetzt veraltet und wurde entfernt (Firefox-Bug 1935198).
JavaScript
- Der JSON parse with source proposal wird jetzt unterstützt, da er Funktionen bietet, um Probleme im Zusammenhang mit Präzisionsverlust beim Konvertieren von Werten wie großen Fließkommazahlen und Datumswerten zwischen JavaScript-Werten und JSON-Text zu mildern (Firefox-Bug 1934622). Insbesondere sind die folgenden Funktionen jetzt verfügbar:
- Das
JSON.parse()reviverParametercontextArgument: Bietet Zugriff auf den ursprünglichen JSON-Quelltext, der geparst wurde. JSON.isRawJSON(): Prüft, ob ein Wert ein Objekt ist, das vonJSON.rawJSON()zurückgegeben wird.JSON.rawJSON(): Erstellt ein "Roh-JSON"-Objekt, das ein Stück JSON-Text enthält, der dann in ein Objekt aufgenommen werden kann, um den angegebenen Wert beim Stringifizieren des Objekts beizubehalten.
- Das
Sicherheit
- Certificate Transparency ist ein Standard, der sicherstellt, dass Zertifikate öffentlich bekannt gemacht werden, bevor Webbrowser ihnen vertrauen. Firefox unterstützt diese Funktion jetzt in Desktop-Versionen (aber nicht auf Android). Dies betrifft nur Server, die Zertifikate verwenden, die von einer Zertifizierungsstelle im Mozilla Root CA Program ausgestellt wurden. (Firefox-Bug 1938242).
APIs
- Die statische Methode
PublicKeyCredential.getClientCapabilities()wird unterstützt, wodurch eine Webanwendung prüfen kann, ob ein Browser bestimmte WebAuthn Funktionen und Erweiterungen aktiviert hat, ohne auf User-Agent-Erkennung zurückgreifen zu müssen. (Firefox-Bug 1884466).
DOM
Medien, WebRTC und Web Audio
- Die Eigenschaften
midundriddesRTCOutboundRtpStreamStatsInterface sowie diemidEigenschaft desRTCInboundRtpStreamStatsInterface werden jetzt unterstützt. (Firefox-Bug 1643001).
WebDriver-Konformität (WebDriver BiDi, Marionette)
Allgemein
-
Um Benutzereingriffe realistischer zu gestalten und echte Interaktionen des Benutzers im Browser besser zu simulieren, haben wir die Verarbeitungen der Aktionssequenz der
Perform Actions-Befehle in Marionette und WebDriver BiDi vom Inhaltsprozess in den Elternelementprozess verschoben. Während Ereignisse weiterhin synchron vom Inhaltsprozess gesendet werden, werden sie nun asynchron durch IPC-Anrufe vom Elternelementprozess ausgelöst (Firefox-Bug 1922077).Aufgrund dieser signifikanten Änderung können einige Regressionen bestehen bleiben. Wenn Sie Probleme feststellen, reichen Sie bitte einen Fehlerbericht für den Remote Agent ein. Wenn die Regressionen die Testausführung blockieren, können Sie vorübergehend zum vorherigen Verhalten zurückkehren, indem Sie die Firefox-Einstellung
remote.events.async.enabledauffalsesetzen. -
Mit der jetzt im Elternelementprozess erfolgenden Verarbeitung der Aktionen wurden auch die folgenden Probleme behoben:
-
Wir unterstützen jetzt ordnungsgemäße Warteschlangen von Aktionssequenzen ohne Race-Bedingungen. Dies ist insbesondere wichtig für den
input.performActions-Befehl von WebDriver BiDi, der mehrfach parallel aufgerufen werden kann und die enqueueten Aktionen sequentiell ausführen muss (Firefox-Bug 1915798). -
Beim Abschicken von Aktionen wird die
input cancel listjetzt korrekt aktualisiert, nur nachdem die Aktion erfolgreich gesendet wurde. Zuvor konnte, bei einem Fehlschlag der Aktion, eine umgekehrte Aktion bestehen bleiben, was zu unerwarteten Nebeneffekten beim Zurücksetzen des Zustands derinput sourceführen konnte (Firefox-Bug 1930845). -
Beim Ausführen von Aktionen werden einzelne Aktionen jetzt während der Ausführung erneut versucht, insbesondere in Situationen, in denen eine einzelne Aktion eine Navigation auslöst, die den aktuellen Browsing-Kontext ersetzt (Firefox-Bug 1930530, Firefox-Bug 1930090).
-
Beim Ausführen von Aktionen trat der Fehler
TypeError: can't access property "getActor", browsingContext.currentWindowGlobal is nullauf, wenn eine Aktion (nicht die letzte) in der Aktionskette das Fenster schloss und die verbleibenden Aktionen noch gesendet wurden (Firefox-Bug 1932916).
-
-
Einige Marionette- und WebDriver-BiDi-Befehle, die intern auf das Senden eines
requestAnimationFrameangewiesen sind, bevor sie zurückkehren, würden hängen bleiben, wenn der aktuelle Browsing-Kontext während ihrer Ausführung navigiert wurde (Firefox-Bug 1937118).
WebDriver BiDi
- Unterstützung für das
format-Feld imbrowsingContext.captureScreenshot-Befehl hinzugefügt, wodurch Clients verschiedene Dateiformate (image/pngundimage/jpegwerden derzeit unterstützt) angeben und die Kompressionsqualität für Screenshots definieren können (Firefox-Bug 1861737).
Änderungen für Add-on-Entwickler
commands.updatekann jetzt Tastenkombinationen für Befehle den TastenF13bisF19zuweisen. Erweiterungen können diese Tasten jedoch nicht aus demcommandsmanifest.json Schlüssel zuweisen. Benutzer können diesen Tasten auch Funktionen mit Tastenkombinationen für Erweiterungen verwalten zuweisen (Firefox-Bug 1924542)
Experimentelle Webfunktionen
Diese Funktionen sind neu in Firefox 135 enthalten, aber standardmäßig deaktiviert. Um sie auszuprobieren, suchen Sie auf der about:config-Seite nach der entsprechenden Einstellung und setzen Sie diese auf true. Weitere solcher Funktionen finden Sie auf der Seite Experimentelle Funktionen.
- Temporal API (Nightly-Version):
javascript.options.experimental.temporal. Das Temporal-Objekt zielt darauf ab, die Arbeit mit Daten und Zeiten in verschiedenen Szenarien zu vereinfachen, mit eingebauten Zeit- und Kalenderdarstellungen. (Firefox-Bug 1912511). - Priorisierte Aufgabenplanung API:
dom.enable_web_task_scheduling. Die Priorisierte Aufgabenplanung API bietet eine standardisierte Methode zur Priorisierung aller Aufgaben einer Anwendung, unabhängig davon, ob sie im Code des Website-Entwicklers definiert wurden oder in Drittanbieter-Bibliotheken und Frameworks. Diese wurde vorübergehend in Nightly-Builds deaktiviert, um Schäden in freier Wildbahn zu vermeiden. (Firefox-Bug 1938242).