<!--
{
  "documentType" : "article",
  "framework" : "Safari Technology Preview Release Notes",
  "identifier" : "/documentation/Safari-Technology-Preview-Release-Notes/stp-release-172",
  "metadataVersion" : "0.1.0",
  "role" : "article",
  "title" : "Safari Technology Preview 172 Release Notes"
}
-->

# Safari Technology Preview 172 Release Notes

Learn about the latest web technology updates in Safari Technology Preview: Web Inspector, CSS, Image Set, Rendering, Editing, JavaScript, Media, Popover, SVG, Accessibility, HTML, IndexedDB, and Web API.

## Overview

[Safari Technology Preview](https://webkit.org/blog/6017/introducing-safari-technology-preview/) Release 172 is now [available for download](https://webkit.org/downloads/) for macOS Ventura. 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: [264302@main…264854@main](https://github.com/WebKit/WebKit/compare/23ceeab826f9cfc357724e3a419ecffce799b60a...1504515d9a2cfd52f76ff827505d6271484bcde7).

### Web Inspector

- Fixed truncation for deeply nested async stack traces to avoid infinite nesting ([264354@main](https://commits.webkit.org/264354@main))
- Fixed XHR request with the same URL as the main resource to have an `XHR` type ([264686@main](https://commits.webkit.org/264686@main))

### CSS

- Added unprefixed `hyphens` and `hyphenate-character` CSS properties ([264628@main](https://commits.webkit.org/264628@main))
- Added `:has()` invalidation support for `:defined` pseudo class ([264602@main](https://commits.webkit.org/264602@main))
- Added `nowrap` white-space to the User-Agent Stylesheet for the `option` element ([264691@main](https://commits.webkit.org/264691@main))
- Fixed child-indexed pseudo-classes to match root elements ([264620@main](https://commits.webkit.org/264620@main))
- Fixed baseline alignment to not synthesize the first baseline when a flex item block axis is parallel to a flex cross axis ([264423@main](https://commits.webkit.org/264423@main))
- Fixed input elements to respect line heights smaller than `normal` ([264802@main](https://commits.webkit.org/264802@main))
- Fixed computing table overflow to take `overflow: clip` into account ([264849@main](https://commits.webkit.org/264849@main))
- Fixed viewport layout size when a site specifies an initial scale ([264842@main](https://commits.webkit.org/264842@main))

### Image Set

- Fixed `type()` function to only take one string ([264310@main](https://commits.webkit.org/264310@main))
- Fixed image-set options with identical resolutions to choose the first supported image type ([264481@main](https://commits.webkit.org/264481@main))

### Rendering

- Fixed calculating the actual column count to avoid floating point precision issues ([264667@main](https://commits.webkit.org/264667@main))
- Fixed wrong input text position with `line-height` ([264613@main](https://commits.webkit.org/264613@main))
- Fixed which element `scrollbar-width` is resolved from for the viewport ([264632@main](https://commits.webkit.org/264632@main))
- Fixed resize handles to render correctly when `scrollbar-width` is none ([264630@main](https://commits.webkit.org/264630@main))

### Editing

- Fixed `option` and `optgroup` to not be focusable in a `menulist` ([264755@main](https://commits.webkit.org/264755@main))
- Fixed text selection to appear correctly for partially rotated text ([264556@main](https://commits.webkit.org/264556@main))
- Fixed the caret color when specifying `caret-color: auto` ([264818@main](https://commits.webkit.org/264818@main))
- Fixed the input renderer applying overflow clipping to the content box ([264731@main](https://commits.webkit.org/264731@main))
- Fixed matching elements without a parent with `child-indexed` pseudo-classes ([264620@main](https://commits.webkit.org/264620@main))
- Fixed overflowing placeholder text inside an input ([264684@main](https://commits.webkit.org/264684@main))
- Fixed clipping a caret rect changing size instead of clipping ([264708@main](https://commits.webkit.org/264708@main))

### JavaScript

- Added `String#split` cache ([264749@main](https://commits.webkit.org/264749@main))
- Allowed `CellOrOther` for `PutByVal` etc. ([264683@main](https://commits.webkit.org/264683@main))
- Disabled `fp-contract` explicitly for Date math ([264453@main](https://commits.webkit.org/264453@main))
- Fixed to use ApproximateTime in CodeCache ([264640@main](https://commits.webkit.org/264640@main))

### Media

- Fixed WebRTC backed media element rendering layer changes slowly (size or layer made hidden/visible) ([264777@main](https://commits.webkit.org/264777@main))
- Added the `BufferedChangeEvent` object ([264472@main](https://commits.webkit.org/264472@main))
- Fixed media recorder producing empty chunks ([264478@main](https://commits.webkit.org/264478@main))
- Fixed `getDisplayMedia` capture to mute other tabs when starting ([264611@main](https://commits.webkit.org/264611@main))

### Popover

- Fixed `hidePopover` to prevent a recursive loop ([264623@main](https://commits.webkit.org/264623@main))

### SVG

- Fixed `animateMotion` to accumulate properly with `rotate: auto` or `rotate: auto-reverse` ([264595@main](https://commits.webkit.org/264595@main))
- Fixed to not create an interval if a value in `begin-value-list` doesn’t have a matching value in `end-value-list` ([264635@main](https://commits.webkit.org/264635@main))
- Fixed using a nested SVG resource ([264618@main](https://commits.webkit.org/264618@main))
- Fixed the computed `display` for SVG elements ([264627@main](https://commits.webkit.org/264627@main))
- Fixed the mapping from a point to a character index for the SVG `<text>` element ([264796@main](https://commits.webkit.org/264796@main))

### Accessibility

- Fixed `aria-checked` to work for `role="treeitem"` elements with `display: contents` ([264761@main](https://commits.webkit.org/264761@main))
- Fixed `display: contents` lists to return the correct sub-role ([264644@main](https://commits.webkit.org/264644@main))
- Fixed elements with the `popovertarget` attribute to expose expanded state to assistive technologies ([264852@main](https://commits.webkit.org/264852@main))

### HTML

- Removed `-webkit-user-select: none` from draggable elements ([264448@main](https://commits.webkit.org/264448@main))

### IndexedDB

- Fixed an array `keyPath` to yield an array key ([264479@main](https://commits.webkit.org/264479@main))

### Web API

- Added applying cookie policy on WebSocket requests ([264753@main](https://commits.webkit.org/264753@main))
- Fixed the `change` event to fire when the user reverts the value of a `color`, `date`, `time`, or `datetime` input after JavaScript changed the value ([264528@main](https://commits.webkit.org/264528@main))
- Fixed images with `decoding="async"` flickering while zooming in ([264433@main](https://commits.webkit.org/264433@main))
- Fixed forbidden host and domain code points to align with specifications ([264482@main](https://commits.webkit.org/264482@main))
- Fixed to not fire a `mousemove` event when a modifier key is pressed ([264455@main](https://commits.webkit.org/264455@main))
- Fixed the heuristics for reporting storage quota ([264446@main](https://commits.webkit.org/264446@main))
- Fixed `CSS.supports()` to always use no-quirks mode ([264835@main](https://commits.webkit.org/264835@main))
- Fixed `window.stop()` to fire abort events on XMLHttpRequest asynchronously ([264765@main](https://commits.webkit.org/264765@main))
- Fixed `navigator.credentials.preventSilentAccess()` ([264345@main](https://commits.webkit.org/264345@main))
- Fixed HTMLOptionElement text setter to not have a non-conforming observable behavior ([264442@main](https://commits.webkit.org/264442@main))
- Fixed ignoring bidi control characters while collecting fallback fonts ([264509@main](https://commits.webkit.org/264509@main))
- Fixed missing network connection integrity policies when connecting via `<link rel=preconnect>` ([264382@main](https://commits.webkit.org/264382@main))
- Fixed to resolve percentage in `use` against the instance’s viewport element ([264596@main](https://commits.webkit.org/264596@main))
- Fixed selecting an OptGroup label not unselecting the selected item ([264767@main](https://commits.webkit.org/264767@main))
- Fixed ServiceWorker downloads when chunks are sent via `postMessage` ([264412@main](https://commits.webkit.org/264412@main))

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)