Safari Technology Preview Release 121 is now available for download for macOS Big Sur and macOS Catalina. If you already have Safari Technology Preview installed, you can update in the Software Update pane of System Preferences on macOS.
This release covers WebKit revisions 271794-272845.
Web Inspector
- Sources
- Collapsed blackboxed call frames in the Call Stack section (r272371)
CSS
- Added support for
aspect-ratio
on grid items (r272307)
- Added support for logical variants of
scroll-padding
and scroll-margin
(r272035)
- Added support for
color(a98-rgb ...)
, color(prophoto-rgb ...)
, color(rec2020 ...)
, color(xyz ...)
, hwb()
as part of CSS Color 4 (r271992, r272125, r272123, r272311, r272344)
- Added support for percentages when parsing
color(srgb ...)
and color(display-p3 ...)
per-spec (r271866)
- Changed
sRGB
to XYZ
conversion matrix values to match values in the latest spec (r272498)
- Fixed
max-height
percentages that are wrongly resolved for replaced grid items (r272309)
- Fixed grid item to fill the grid area for
stretch
or normal
self alignment (r272308)
- Fixed animation of
rotate
or scale
property to correctly account for static translate
property (r272201)
- Fixed
font-stretch
to apply to system-ui
(r272073)
- Fixed the nested grid container which has a replaced item with
max-height
incorrectly getting width(0px)
(r272338, r272711)
- Implemented
scroll-snap-stop
for scroll snapping (r272610)
- Handled
aspect-ratio: auto m/n
for replaced elements (r272360)
- Handled
min-width: auto
or min-height: auto
for aspect-ratio
(r272718)
- Handled zero
aspect-ratio
width or height (r271948)
- Made
auto && <ratio>
use content box-sizing
(r272569)
GPU Process
- Enabled audio capture in GPUProcess by default (r272735)
- Enabled audio capture for speech recognition in GPUProcess (r272434)
- Enabled GPU WebRTC codecs in GPUProcess by default on macOS (r272496)
- Enabled video capture in GPUProcess by default on macOS (r272810)
- Fixed
<audio>
not loading when the URL ends with .php
causing some tests to time out (r272750)
- Fixed implementation of WebGL power preference and discrete/internal GPU selection with ANGLE (r271880)
Media
- Added intermediate volume icon states between “mute” and “max” (r272375)
- Changed media controls to show the total duration, only switching to time remaining when clicked (r272373)
- Changed MediaStream-backed video elements to not compute the mediaType based on track muted states (r272583)
- Connected MediaSession with MediaRemote and NowPlaying (r272445, r272589)
- Fixed sound on YouTube after switching back to foreground (r272829)
- Fixed playback of WebM/Opus generated from Chrome MediaRecorder (r272822)
- Fixed Picture-in-Picture video pauses when scrolling on Twitter (r271870)
- Updated media controls time scrubber styles (r272352, r272438)
- Updated media controls to use new SF Symbols (r272339)
Web API
- Fixed the return key binding for date inputs conflicting with pressing return to submit a form (r272495
- Fixed selecting a date on
datetime-local
inputs unexpectedly adding second and millisecond fields (r272368)
- Fixed rendering a pattern with an SVG image (r272549)
- Forbid “|” in URL hosts (r271899)
- Reduced the overhead of HTMLDocumentParser in
innerHTML
setter (r272622)
JavaScript
- Added
@
in Error#stack
even if function name does not exist (r272139)
- Added
Atomics
support for BigInt64Array
and BigUint64Array
behind a runtime flag (JSC_useSharedArrayBuffer=1
) (r272341)
- Adjusted properties order of host JS functions (r272099)
- Changed
Object.assign
to throw for property creation on non-extensible target
(r272411)
- Handled milliseconds in Date’s timezone without floating point rounding (r272127)
- Implemented
BigInt64Array
and BigUint64Array
(r272170, r272215)
- Implemented private methods behind flag (
JSC_usePrivateMethods=1
)(r272580)
- Made
JSON.parse
faster by using table for fast string parsing (r272570)
WebAssembly
- Implemented
WebAssembly.instantiateStreaming
and WebAssembly.compileStreaming
(r271993)
- Implemented streaming compilation/instantiation for the Blob type (r272221)
- Updated
WebAssembly.Global
to support Funcref
and Externref
(r272071, r272081, r272119)
- Enabled Wasm bulk-memory and reference-types (r272074)
Accessibility
- Exposed focusable elements even if the element or ancestor has
aria-hidden=true
(r272390)
- Fixed long narrow tables to not be made into data tables unnecessarily (r272024)
Speech Recognition
- Used the user media permission prompt for Speech Recognition (r272165)