Apple has released Safari Technology Preview 234, the latest version of their developer preview web browser. The preview version of Apple’s popular browser offers developers and other interested users the ability to try out features that may or may not, debut in future public release versions of Safari.
Safari Technology Preview 234 includes fixes and updates for Animations, CSS, HTML, JavaScript, MathML, Media, SVG, Web API, Web Authentication, Web Inspector, and WebRTC.
The current Safari Technology Preview release is compatible with machines running macOS Sequoia and macOS Tahoe, the newest version of macOS that launched earlier this year. The update is available through the Software Update mechanism in System Preferences or System Settings to anyone who has downloaded the browser from Apple’s website.
Overview
Safari Technology Preview Release 234 is now available for download for macOS Tahoe and macOS Sequoia. If you already have Safari Technology Preview installed, you can update it in System Settings under General → Software Update.
This release includes WebKit changes between: 303092@main…304071@main.
Accessibility
Resolved Issues
- Fixed missing
aria-labelon the button added by<img controls>to improve accessibility for screen readers. (304013@main) (164651880)Animations
New Features
- Added support for Threaded Scroll-driven Animations. With Threaded Scroll-driven Animations, eligible scroll-driven animations are updated as their associated timeline’s source element is scrolled instead of when the page rendering is updated, yielding smoother animations on devices with Pro Motion displays. Additionally, since scrolling is performed in a separate process, those animations update as scrolling occurs no matter the load on the main thread. Eligible animations are any scroll-driven animations animating the
opacity,transform,translate,scale,rotate,filter,backdrop-filteror any of the Motion Path properties. (303997@main) (165924545)CSS
New Features
- Added support for CSS
display: grid-lanes. (303114@main) (164860495)- Added support for an automatic initial value for
grid-auto-flowin CSS Grid Level 3 to switch flow orientation based ongrid-template-rowsandgrid-template-columnsfor grid lane layouts. (303634@main) (164791817)- Added support for
item-tolerancein CSS Masonry layouts to improve flexible grid item placement. (303096@main) (164043151)Resolved Issues
- Fixed an issue where
max-widthwas not correctly applied to tables with fixed widths. (303644@main) (96554687)- Fixed incorrect sizing and fragment URL handling for SVG images used in
-webkit-cross-fade(). (303593@main) (106633417)- Fixed table layout so that fixed horizontal margins on
<caption>elements now contribute to the table’s minimum preferred logical width, preventing captions from causing narrower than expected tables. (303642@main) (120990942)- Fixed incorrect width calculation for
positionedelements usingbox-sizing: border-boxwith anaspect-ratio, ensuring borders and padding are not double-counted. (303834@main) (121500004)- Fixed the UA style sheet to use
:instead offocus-visible :for outline properties. (303643@main) (123155364)focus - Fixed
Highlightto remove its non-standardRegistry constructorand updated tests to useCSSwhile ensuring.highlights Mapis properly restored after tampering. (303858@main) (125529396).prototype - Fixed handling of
@propertyregistration so that theinitial-valuedescriptor can be optional. (303757@main) (131288198)- Fixed
deviceso that page zoom now affects the main frame consistently with iframes, keeping their values synchronized. (303397@main) (163857955)Pixel Ratio - Fixed
line-heightto correctly scale font-relative units when text zoom is applied. (304012@main) (165073337)- Fixed
elementand.client Width elementto correctly include padding for.client Height content-boxtables. (303641@main) (165515755)- Fixed: Refactored the handling of block-level boxes inside inline boxes. (303985@main) (165523565)
- Fixed an issue where
text-decoration: underlineappeared higher than expected whentext-box-trimwas applied to the root inline box. (303710@main) (165614136)- Fixed auto-placement cursor handling for spanning items in
grid-laneslayouts to correctly wrap within the valid range. (303815@main) (165701659)- Fixed an issue with grid lanes masonry layout where items with negative margins were incorrectly positioned too low by always taking the maximum running position. (303813@main) (165718130)
HTML
Resolved Issues
- Fixed
shadowrootcustomelementregistryattribute serialization to correctly compare ShadowRoot and document registries. (303841@main) (165476421)JavaScript
Resolved Issues
- Fixed
Dateconstructor overflow handling so that invalid day values now returnNa. (303582@main) (155776209)N - Fixed
Intlto remove the.Locale .prototype .get Week Info() minimalproperty for compliance with the specification. (303287@main) (165083619)Days - Fixed
Intlto properly apply.Number Format minimumandFraction Digits maximumto ensure currency and compact notations behave correctly. (303943@main) (165875014)Fraction Digits MathML
Resolved Issues
- Fixed default MathML rule thickness to use the font’s
underlinemetric with a zero fallback. (303108@main). (164693673)Thickness - Fixed painting empty
<msqrt>radical operator in MathML by removing an incorrect check. (303134@main) (164776629)- Fixed MathML
<mpadded>,<mfrac>,<munderover>,<mover>and<mspace>elements not updating layout when attributes likewidth,height,depth,lspace, andvoffsetetc. changed. (303508@main) (164797996)- Fixed MathML boolean attributes so they are now compared ASCII case-insensitively. (303107@main) (164819048)
Media
Resolved Issues
- Fixed an issue where Video Viewer UI elements overlapped or exited unexpectedly. (303256@main) (164051864)
- Fixed an issue where WebM with VP9/Vorbis fallback would not play. (303100@main) (164053503)
- Fixed an issue where empty
<track>elements prevented media from advancing its readyState and blockedplay()calls. (303314@main) (164125914)- Fixed
Mediato respectStream Track Processor track. (303389@main) (165199900).enabled = false - Fixed an issue where the
endedevent for Media Source Extensions might never fire by ensuring buffered ranges update correctly and playback gaps are observed even when the video does not start at time zero. (303596@main) (165430052)- Fixed an issue where caption previews were not shown in the default media controls. (304070@main) (165931046)
SVG
Resolved Issues
- Fixed SVG intrinsic sizing and
preferredto correctly transpose dimensions for vertical writing modes. (303578@main) (103262534)Aspect Ratio() - Fixed
SVGLengthparsing to correctly return the initial value when encountering parser errors or invalid values. (303577@main) (136102554)- Fixed an issue where
SVGImagedid not respect system dark mode changes. (303920@main) (140661763)- Fixed
SVGLengthto throw a.prototype .value As String Syntaxwhen assigned an empty string. (303594@main) (165429393)Error - Fixed an issue where lengths with leading or trailing whitespace failed to be parsed. (303951@main) (165501190)
Web API
New Features
- Added support for
Readableand theStream .get Iterator() [@@asyncmethods to enable iteration over streams. (303970@main). (96318671)Iterator] - Added support for the Keyboard Lock API. (303093@main) (161422221)
- Added support for using readable byte streams as
fetchrequest and response bodies and enabling synchronous start behavior. (303115@main) (162107262)- Added support for
Readable. (303239@main) (164877711)Byte Stream - Added support for upgrading elements in
Custom. (303250@main) (165045530)Element Registry .prototype .initialize - Added support for the
customelementregistrycontent attribute and handling ofnullcustomvalues inElement Registry document,.create Element document, and.create Element NS element. (303300@main) (165096267).attach Shadow - Expose
Mediainterface inDevice Info Secureonly as per web specification. (303512@main) (165318702)Context Resolved Issues
- Fixed an issue where
scroll-marginfromIntersectionincorrectly applied to scrollers inside cross-origin iframes. (303367@main) (164994009)Observer - Fixed
ReadableandStream Writableto correctly pass abort and cancel reasons and improvingStream Webstream handling. (303738@main) (165474756)Transport Web Authentication
New Features
- Added support for the WebAuthn PRF extension that maps to the CTAP
hmac-secretextension, enabling credential-bound cryptographic secrets for both credential creation and authentication flows. (303406@main) (113572812)Resolved Issues
- Fixed an issue where the
excludelist was not sent to CTAP when its size was 1. (303120@main) (164546088)Credentials
Apple’s aim with Safari Technology Preview is to gather feedback from developers and users on its browser development process. Safari Technology Preview can run side-by-side with the existing Safari browser and while it is designed for developers, it does not require a developer account to download and use.