Firefox 127 für Entwickler

Dieser Artikel bietet Informationen über Änderungen in Firefox 127, die Entwickler betreffen. Firefox 127 wurde am 11. Juni 2024 veröffentlicht.

Änderungen für Webentwickler

HTML

CSS

JavaScript

  • Die folgenden Methoden von Set werden jetzt unterstützt (Firefox-Bug 1868423):
    • Set.prototype.intersection() — Gibt eine neue Menge zurück, die Elemente enthält, die sowohl in dieser Menge als auch in der angegebenen Menge vorhanden sind.
    • Set.prototype.union() — Gibt eine neue Menge zurück, die alle Elemente in dieser Menge und der angegebenen Menge enthält.
    • Set.prototype.difference() — Gibt eine neue Menge zurück, die Elemente in dieser Menge enthält, aber nicht in der angegebenen Menge.
    • Set.prototype.symmetricDifference() — Gibt eine neue Menge zurück, die Elemente enthält, die entweder in dieser Menge oder der angegebenen Menge sind, aber nicht in beiden.
    • Set.prototype.isSubsetOf() — Gibt einen booleschen Wert zurück, der anzeigt, ob alle Elemente dieser Menge in der angegebenen Menge enthalten sind.
    • Set.prototype.isSupersetOf() — Gibt einen booleschen Wert zurück, der anzeigt, ob alle Elemente der angegebenen Menge in dieser Menge enthalten sind.
    • Set.prototype.isDisjointFrom() — Gibt einen booleschen Wert zurück, der anzeigt, ob diese Menge keine gemeinsamen Elemente mit der angegebenen Menge hat.

SVG

  • Die lh und rlh Zeilenhöhe-Einheiten, die zuerst in CSS in Firefox 120 unterstützt wurden, werden nun auch in SVG unterstützt. Sie können sowohl in CSS-Eigenschaftswerten stroke-width: 0.5lh als auch in SVG-Attributwerten stroke-width="0.5lh" verwendet werden. (Firefox-Bug 1892089).

Sicherheit

  • Firefox wird jetzt automatisch Anfragen für Audio-, Video- und Bild-Subressourcen von HTTP auf HTTPS in sicheren Inhalten upgraden und HTTP-Anfragen für andere Arten von Medien blockieren. Wenn eine hochgestufte Anfrage fehlschlägt, weil der Host der Medien kein HTTPS unterstützt, werden die Medien nicht gefunden. Dies stellt sicher, dass, wenn Inhalte sicher über HTTPS bereitgestellt werden, alle zugehörigen Subressourcen ebenfalls sicher bereitgestellt werden oder überhaupt nicht. Da Seiten nun keinen Mixed Content mehr anzeigen, hat Firefox auch das Symbol entfernt, das anzeigt, wann eine Seite gemischte Inhalte enthält, und die Warnung in der Konsole für gemischte Inhalte wurde durch eine ersetzt, die anzeigt, wann Anfragen hochgestuft werden. (Firefox-Bug 1779757).

APIs

WebDriver-Konformität (WebDriver BiDi, Marionette)

Allgemein

  • Unterstützung für wheel-Aktionen in sowohl klassischem WebDriver als auch BiDi wurde behoben, um Modifikatoren wie ctrl, shift usw. korrekt zu handhaben (Firefox-Bug 1885542).

WebDriver BiDi

  • Der Befehl permissions.setPermission wurde hinzugefügt, der es ermöglicht, Browserberechtigungen (wie geolocation) zu aktualisieren. Das Berechtigungsmodul ist eine Erweiterung der WebDriver BiDi-Spezifikation in der Berechtigungsspezifikation definiert (Firefox-Bug 1875065).
  • Unterstützung für die a11y-Attribute name und role als Locator für den Befehl browsingContext.locateNodes hinzugefügt (Firefox-Bug 1885577).
  • Unterstützung für das Argument devicePixelRatio zu browsingContext.setViewport hinzugefügt, das es ermöglicht, das Verhalten von Bildschirmen mit unterschiedlichen Gerätepixelverhältnissen zu emulieren (Firefox-Bug 1857961).
  • browsingContext.navigate verbessert, um Rennbedingungen zu vermeiden, die dazu führen, dass unnötig gewartet wird, bevor der Befehl aufgelöst wird (Firefox-Bug 1894305).

Marionette

  • WebDriver:ElementClear für Elemente, die in einem deaktivierten Feldsatz gefunden wurden, behoben (Firefox-Bug 1863266).
  • Ein Fehler behoben, bei dem WebDriver:GetElementText die korrekte Großschreibung von Text mit einem Unterstrich nicht gelang (Firefox-Bug 1888004).
  • Ein Fehler in WebDriver:SwitchToFrame behoben, der fehlschlagen konnte, wenn der Tab mitten in einer Navigation war (Firefox-Bug 1817820).

Änderungen für Add-on-Entwickler

  • Firefox installiert jetzt Erweiterungen, die den "split"-Wert des manifest.json "incognito"-Schlüssels angeben. Da Firefox jedoch keinen Split-Modus unterstützt und um die Integrität des privaten Surfens zu erhalten, wird "split" als Alias für den Wert "not_allowed" behandelt (Firefox-Bug 1876924).
  • management.ExtensionInfo gibt jetzt den install_type von "admin" zurück, wenn ein Add-on unter Verwendung einer Unternehmensrichtlinie installiert wird (Firefox-Bug 1895341).
  • Hinzufügung eines filter-Parameters zu declarativeNetRequest.getDynamicRules und declarativeNetRequest.getSessionRules, der die gefilterte Rückgabe von Regeln nach ID ermöglicht (Firefox-Bug 1820870).
  • host_permissions für Manifest V3-Erweiterungen werden nun den Benutzern während der Installation angezeigt (Firefox-Bug 1889402). Wenn ein Erweiterungs-Update jedoch neue Host-Berechtigungen anfordert, werden diese dem Benutzer nicht angezeigt. Siehe (Firefox-Bug 1893232).
  • Hinzufügung der Funktion runtime.getContexts, die Informationen über die mit der Erweiterung verbundenen Kontexte zurückgibt (Firefox-Bug 1875480).
  • Für Manifest V3-Erweiterungen wird als Fallback auf die vom Benutzer definierten Tastenkombinationen für den speziellen _execute_browser_action Befehl zurückgegriffen, wenn keine benutzerdefinierten Tastenkombinationen für _execute_action vorhanden sind. Dies ermöglicht Erweiterungen, die von Manifest V2 auf V3 migrieren, alle benutzerdefinierten Tastenkombinationen für die Browser-Aktion beizubehalten (Firefox-Bug 1797811).
  • Erweiterungen mit einer eingebetteten Optionsseite unterstützen jetzt den automatischen Wechsel zum dunklen Thema basierend auf den Benutzerpräferenzen (Firefox-Bug 1888866).

Experimentelle Web-Features

Diese Features sind neu in Firefox 127 enthalten, jedoch standardmäßig deaktiviert. Um mit ihnen zu experimentieren, suchen Sie die entsprechende Präferenz auf der about:config Seite und setzen Sie sie auf true. Weitere solcher Features finden Sie auf der Seite Experimentelle Features.

  • Symmetrischer Abstand mit CSS letter-spacing: layout.css.letter-spacing.model.

    Die CSS-Eigenschaft letter-spacing verteilt jetzt den angegebenen Buchstabenabstand gleichmäßig auf beiden Seiten jedes Zeichens. Dies unterscheidet sich vom aktuellen Verhalten, bei dem der Abstand hauptsächlich auf eine Seite hinzugefügt wird (Firefox-Bug 1891446).

  • calc()-Farbkanalunterstützung in relativen Farben: layout.css.relative-color-syntax.enabled.

    Die CSS-Funktion calc() kann nun Farbkanäle in relativen Farben parsen (Firefox-Bug 1889561).

  • JavaScript Float16Array typisiertes Array: javascript.options.experimental.float16array.

    Float16Array typisierte Arrays werden jetzt unterstützt, zusammen mit DataView.prototype.getFloat16() und DataView.prototype.setFloat16() zum Lesen und Setzen von Float16Array-Werten aus einer DataView, und die statische Methode Math.f16round(), die verwendet werden kann, um Zahlen auf 16 Bit zu runden. Der neue Typ ist nützlich für das Teilen von Daten mit einer GPU, insbesondere für Anwendungsfälle, in denen es sinnvoll ist, Genauigkeit gegen Speicherverbrauch einzutauschen. (Firefox-Bug 1833647.)