Release Notes for Safari Technology Preview 135

Safari Technology Preview Release 135 is now available for download for macOS Big Sur and 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 284370-285101.

Note: Tab Groups do not sync in this release.

Web Inspector and Web Driver

  • Fixed “testForLinkLabels” Accessibility audit to ignore anchors if aria-hidden (r284986)
  • Added support for the acceptInsecureCerts capability (r285164)

CSS

  • Media queries affect Cascade Layer order (r284859)
  • Enabled accent-color by default (r284634)
  • Added support for small svw/svh/svmin/svmax, large lvw/lvh/lvmin/lvmax, and dynamic dvw/dvh/dvmin/dvmax viewport units (r284628)
  • Added flex-basis: content support (r284440)
  • Added support for contain: style for counters (r284642, r284755)
  • Added support for ::before and ::after pseudo elements after ::slotted (r284973)
  • Added support for more CSS properties for ::marker (r284519)
  • Allowed :is and :where after all pseudo elements (r285054)
  • Made :-webkit-any() a synonym of :is() (r285032)
  • Fixed ::part(foo):hover (r284865)
  • Serialized :part() argument as identifier (r284863)
  • Fixed :host invalidation when combined with pseudo classes in descendant position (r285100)
  • Prevented clamping flex base size with min-height, max-height, min-width, and max-width (r284397)
  • Fixed sizing of orthogonal elements with percentage margins (r284773)
  • Fixed -webkit-background-clip: text to paint correctly for inline box spanning multiple lines (r284380)
  • Fixed box-shadow and text-shadow to yield float values while interpolating (r284437)
  • Fixed CSS serialization affecting grid-auto-flow (r284876)
  • Fixed percentages on orthogonal replaced children (r284548)
  • Fixed the border-radius value from .style to be readable when it includes a var() (r285015)
  • Fixed opacity to flatten when combined with transform-style: preserve-3d (r285021)

Web API

  • Enabled lazy image loading by default (r284995)
  • Added support for rel="noopener/noreferrer" on <form> elements (r284749)
  • Exposed MediaCapabilities to Workers (r284443)
  • Fixed anchor.relList.supports("opener") to return true (r284745)
  • Fixed changing the src attribute of the <img> element inside an ImageDocument to trigger a load (r284901)
  • Fixed document.open() and friends to use the correct document as a source for reset document’s URL (r284758)
  • Fixed form navigations with target="_blank" to not have an opener (r284821)
  • Fixed form submission to be cancelled if the form gets detached from inside the formdata event handler (r284660)
  • Fixed JavaScript URL result to be treated as UTF-8 bytes (r284934)
  • Fixed Origin of opaque blob: URLs to be null instead of an empty string (r284478)
  • Fixed selection extend() with no ranges to trigger an exception (r285084)
  • Fixed the intrinsic size of a picture image inside a template (r284667)
  • Updated appearance of <datalist> indicator (r284626)

Scrolling

  • Fixed misplaced position: fixed content with async-scrollable iframes when switching tabs (r284738)

Rendering

  • Ensured CanvasRenderingContext2D.drawImage(video) uses the right color space (r284439)

WebAuthn

  • Changed to obtain consent to create a new credential when the platform authenticator is in excludedCredentials. This improves compliance with the WebAuthn spec (Step 3.1 of makeCredential). (r284413)

Media

  • Added support for requestVideoFrameCallback API for MediaStreamTrack-based backends (r284528)
  • Fixed video appearing blank with only audio playing if video element isn’t appended to the DOM tree (r284741)
  • Updated WebM with invalid size to fail to load with error (r284434)

WebRTC

  • Decreased WebRTC latency by pulling data more often (r284860)
  • Changed to fallback to SW decoder in case of VP9-SVC (r284523)
  • Changed to always set the color space for incoming H.264/265 streams (r284433)
  • Ensured synchronized rendering of incoming audio tracks (r285027)
  • Fixed latent audio over peer connections when changing the output (r284674)

WebGL

  • Fixed an issue where high-performance WebGL wasn’t getting the correct GPU (r284669)

App Extensions

  • Fixed an issue where App Extension toolbar items would not remember their position or stay removed from the toolbar

Web Extensions

  • Fixed an issue where browser.storage.sync entries were saved into the browser.storage.local storage area. If unable to locate sync storage entries, check in the local storage area and do a one-time migration to the sync storage area