Safari Technology Preview 218 wurde am 30. April 2025 veröffentlicht und steht ab sofort für macOS Sequoia und macOS Sonoma zum Download bereit. Nutzer, die bereits die Technologie-Vorschau installiert haben, können bequem über die Systemeinstellungen unter Allgemein → Softwareupdate aktualisieren. Diese neue Ausgabe bringt eine Vielzahl an Verbesserungen und neuen Funktionen, die sowohl die Webentwicklung erleichtern als auch die Performance und Sicherheit im Browser steigern. Im Folgenden werfen wir einen detaillierten Blick auf die wichtigsten Änderungen und Features dieser Version.
Die Änderungsliste beruht auf den WebKit-Änderungen zwischen 293327@main und 293898@main. Im Bereich CSS wurden sinnvolle Erweiterungen und Korrekturen vorgenommen. Besonders hervorzuheben ist die Unterstützung der Modifizierer crossorigin() und referrerpolicy() bei CSS-Bildladeoperationen. Diese ermöglichen es Entwicklern, noch spezifischer den Umgang mit CORS-Richtlinien und Referenzinformationen beim Laden von Bildern zu steuern, was insbesondere für Datenschutz und Cross-Origin-Request-Management von Bedeutung ist. Im Anschluss sind diverse Fehler behoben worden, die zuvor die korrekte Darstellung oder Funktion bestimmter CSS-Eigenschaften verhinderten.
So wurde zum Beispiel das Problem gelöst, dass der @font-face font-family Descriptor keine Listen von Werten zulassen sollte, was zu unerwartetem Verhalten führte. Auch die Sichtbarkeit von Platzhaltertext in Formularfeldern reagiert jetzt zuverlässig auf Änderungen des Eingabetypen und sorgt so für ein konsistentes Nutzererlebnis. Technische Schwierigkeiten bei der Darstellung von Float-Boxen, Selektionen und Cursorn in sogenannten übersprungenen Teilbäumen (skipped subtrees) wurden ebenfalls behoben, damit das Rendering in komplexen Layout-Situationen stabil bleibt. Das Verhalten der CSS-Funktion random() wurde aktualisiert, um mit den neuesten Spezifikationsänderungen konform zu sein. Dabei ersetzte man match-element durch element-shared, was klar dokumentierte Standardkonformität und zukünftige Kompatibilität sicherstellt.
Die Standard-User-Agent-Stylesheets wurden angepasst, sodass zum Beispiel Elemente vom Typ <pre> jetzt logische Ränder verwenden, was die Typografie und Layoutkonsistenz verbessert. Im Bereich JavaScript gibt es ebenfalls nennenswerte Fortschritte, insbesondere in Hinsicht auf die noch recht junge Temporal API. Die Unterstützung für Temporal wurde weiter ausgebaut, was Entwicklern mehr Möglichkeiten bietet, Zeit- und Datumsmanipulationen präziser und moderner zu handhaben. Mehrere Bugs, die die Iterator-Hilfsmethoden betrafen, wurden eliminiert. Insbesondere wurde ein Fehler korrigiert, bei dem Iteratoren bei frühzeitigen Fehlern nicht korrekt geschlossen wurden.
Dieses Problem konnte zu unerwünschtem Verhalten führen. Auch der Aufruf von Iterator.prototype.reduce funktionierte jetzt besser, insbesondere wenn kein Initialwert übergeben wurde. Ein besonderer Fokus lag auf der Lockdown Mode Funktion, die den Schutz vor Angriffen und Tracking erhöht.
In Version 218 wurde die Unterstützung für Webfonts unter dieser Sicherheitsfunktion verbessert. Dabei wurde ein früher verwendeter, anfälliger Hardcoded-Allowlist-Mechanismus durch einen sicheren Parser ersetzt, der jetzt eine größere Vielfalt an Schriftarten zulässt, ohne Kompromisse bei der Sicherheit einzugehen. Somit können Nutzer von Lockdown Mode weiterhin von einer ansprechenden Typografie profitieren, ohne unnötige Einschränkungen hinsichtlich Webfonts in Kauf nehmen zu müssen. Die Rendering-Engine erhielt ebenfalls Optimierungen: Bilder, die sich in Scrollcontainern befinden, laden nun auch dann, wenn sie sich nahe am sichtbaren Bereich befinden und nicht zwingend vollständig im Viewport sichtbar sind. Dies führt zu einer angenehmeren Wahrnehmung und schnelleren Bildanzeige beim Scrollen.
Die korrekte Positionierung von Ruby-Annotationen in Schreibrichtungen wie sideways-lr wurde ebenso behoben, was besonders für Sprachen mit speziellen Schriftsystemen relevant ist. Darüber hinaus wurde sichergestellt, dass Inhalte in übersprungenen Teilbäumen beim Hit Testing nicht berücksichtigt werden, was der Benutzerinteraktion zugutekommt. Der Bereich SVG wird um die Unterstützung für pointer-events="bounding-box" auf Gruppen-Container-Ebene erweitert. Dies erlaubt differenziertere Event-Handling-Szenarien, etwa bei komplexen grafischen Elementen und interaktiven SVG-Gruppen. Auch Web APIs präsentierten Verbesserungen: Nun erhalten ausstehende Speech-Synthesis-Ausgaben einen korrekt ausgelösten Fehler-Event, falls die Sprachausgabe vorzeitig abgebrochen wird.
Dies erleichtert Entwicklern das Handling von Formularen für Barrierefreiheit und Audio-Ausgabe in Web-Anwendungen. Die Web Extensions erhielten mit Safari Technology Preview 218 nützliche Erweiterungen: Insbesondere wurde die Unterstützung für das request-method Content Blocker Trigger Feld eingeführt, was Detailsteuerungen bei Inhaltsfiltern ermöglicht. Fehler bei der Prioritätsbehandlung von Regelnummern in declarativeNetRequest-Regeln wurden behoben, damit höhere Zahlen wie erwartet höhere Prioritäten erhalten. Weiterhin wurde ein Parsing-Problem mit dem keyword wasm-unsafe-eval im Content-Security-Policy-Kontext korrigiert. Ein Fehler, der verhinderte, dass Webzugängliche Ressourcen aus einem Subframe unter about:blank geladen werden konnten, wurde ebenfalls gelöst.
Der Web Inspector wurde mit der Möglichkeit erweitert, im Debugger beim Übergehen eines await-Statements dieses wie synchronen Code zu behandeln. Dies verbessert die Debugging-Erfahrung bei asynchronem JavaScript erheblich und erleichtert die Analyse komplexer asynchroner Abläufe. Auch im Bereich WebRTC gibt es Fortschritte: Die API RTCRtpScriptTransformer.generateKeyFrame unterstützt nun einen rid-Parameter, was die Steuerung und Anpassung von Video-Keyframes in Echtzeitkommunikation sowie Streaming-Szenarien präziser macht. Safari Technology Preview 218 zeigt deutlich Apples Engagement, sowohl die Standards im Bereich Webentwicklung aktiv mitzugestalten als auch die Stabilität, Performance und Sicherheit des Browsers kontinuierlich zu verbessern.
Besonders Entwickler und technisch versierte Anwender profitieren von den neuesten Spezifikationsumsetzungen und Feinschliffen im Rendering und der JavaScript-Ausführung. Die Unterstützung neuer CSS-Funktionen, die umfangreicheren JavaScript-Features mit Fokus auf Temporal und Iteratoren, sowie die verbesserten Debugging-Möglichkeiten sorgen für ein rundum aktuelles Test- und Entwicklungstool. Mit Blick auf Sicherheit und Datenschutz wurde der Lockdown Mode sinnvoll ergänzt, ohne die Nutzererfahrung einzuschränken. Auch das verbesserte Handling bei Web Extensions und Content Security Policies unterstreicht den Fokus auf moderne Webanwendungen. Insgesamt bietet Safari Technology Preview 218 eine solide Basis für die künftige Entwicklung von Safari und WebKit.