Release Notes for Safari Technology Preview 140
Safari Technology Preview Release 140 is now available for download for macOS Big Sur and of macOS Monterey. 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 287834-288438.
Note: Tab Groups do not sync in this release.
Web Inspector
- Elements Tab
- Made CSS Alignment controls in the Styles Detail Sidebar accessible (r288385)
- Sources Tab
- Timelines Tab
- Added better names for newer CSS Animations, CSS Transitions, and Web Animations events (r287945)
:has() Pseudo-Class
- Added support for
:has(:not(foo))
(r288303) - Avoided complex style invalidation with repeated DOM mutations (r288012, r287973)
- Fixed computing specificity (r288196)
- Changed to disallow nested
:has()
(r288111) - Changed to ignore
:visited
inside:has()
(r288304)
CSS
- Added support for intrinsic sizes in
flex-basis
(r288113) - Added support for intrinsic sizes to the
flex
shorthand (r288184) - Added support for “missing“/”none” color components (r288143)
- Added support for interpolating colors with “missing”/“none” components via
color-mix()
(r288427) - Added support for preloading of layered
@import
rules (r288099) - Changed interpolation mode for CSS gradients to default to OKLab if any non-legacy color syntax colors are used in the stops (r288071)
- Changed to only apply automatic minimum block-size aspect-ratio rules to non-replaced elements (r288003)
- Fixed the
::backdrop
pseudo-element to react to associated element event listeners (r287878) - Fixed the CSS
color()
function to not clamp channels to the 0-1 range (r287838) - Fixed the height of
flex
items withaspect-ratio
whenever the cross axis intrinsic size is larger than the viewport (r287976) - Fixed rounding of distributed free space to flexible tracks (r287977)
- Fixed
position: fixed
layers to not allocate a backing buffer if all the children are offscreen (r288429) - Fixed setting
content: normal
on a::marker
to make the computed style return resolved values (r288054)
Web API
- Added support for
FetchEvent.handled
API for Service Workers (r287915) - Enabled
form.requestSubmit()
(r288179) - Fixed
nextHopProtocol
exposed regardless ofTiming-Allow-Origin
(r288219) - Fixed
input.labels
inside shadow DOM (r288162) - Fixed canvas functions that take colors as strings to support all the syntax that CSS supports (r288134)
- Implemented
HTMLScriptElement.supports(type)
method (r287996) - Improved computation of Service Worker
FetchEvent.resultingClientId
(r288201)
Web Animations
- Added support for
animation-composition
CSS property (r288433) - Changed
getKeyframes()
for a CSS Animation to not use computed style for keyframes (r287835) - Fixed interpolation during animation of two empty transform lists to always yield “none” (r287917)
JavaScript
WebAssembly
- Fixed misc
WebAssembly.Table
issues (r288064) - Fixed misc issues in
WebAssembly.Exception
(r288065) - Fixed
WebAssembly.Global
‘s typename for “anyfunc” (r288049)
Dialog Element
- Added
visibility: visible
to modal dialogs in the user-agent stylesheet (r288233) - Fixed some overflow and clipping issues with modal dialogs (r288267, r287845)
HTML
- Fixed support for new lines in HTMLTextArea’s
placeholder
text (r288005) - Fixed keeping the selected state of a select element when inserting a selected
<option>
(r288174) - Prevented
contenteditable
anchors from being stuck (r288420)
Media
- Fixed
gl.texImage2D
upload of getUserMedia streams via<video>
element fails (r288025) - Fixed MediaStream
canvas.captureStream()
playback (r288435) - Fixed portrait video playback on HTML canvas elements (r288053)
- Fixed no VP9-SVS video stream from remote peer on some devices (r287928)
- Fixed “Add to Contact” menu item (r287959)
- Tightened the focus check for getUserMedia (r288087)
WebAuthn
- Allowed single use of WebAuthn without user gesture for all relying parties (r287957)
Accessibility
- Exposed toggle buttons using
role="button"
as form controls (r288100) - Improved support for
aria-owns
in ARIA trees (r288117)
Content Security Policy
- Improved handling of multiple policies (r288132)
Privacy
- Fixed an issue where a website may be able to track sensitive user information (r288078)
SVG
- Fixed calculations of
filterRegion
andoutsets
of the referenced SVG filter (r288183) - Fixed referenced SVG filter always using sRGB color space for its result (r287982)
Scrolling
- Fixed sometimes not being able to scroll after using a builtin trackpad (r287997)
Web Extensions
- Fixed a crash when calling
browser.webNavigation.getAllFrames()
on an empty tab - Fixed Active tab permissions for a tab to get removed if a matching per-site permission changes to “Deny”
- Fixed service worker background script errors to get reset each time they successfully load