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

# Safari Technology Preview 22 Release Notes

Preview the latest web technology updates including: JavaScript, CSS, Form Validation, Web Inspector, Web API, Media, Rendering, and Security.

## Overview

[Safari Technology Preview](https://webkit.org/blog/6017/introducing-safari-technology-preview/) Release 22 is now [available for download](https://webkit.org/downloads/) for macOS Sierra. If you already have Safari Technology Preview installed, you can update from the Mac App Store’s Updates tab. This release covers WebKit revisions [210274-210845](https://trac.webkit.org/log?stop_rev=210274&rev=210845&limit=572).

### JavaScript

- Fixed an error when calling an async arrow function which is in a class’s member function ([r210558](https://trac.webkit.org/changeset/210558))
- Improved the speed of `Array.prototype.slice` in DFG/FTL JITs ([r210695](https://trac.webkit.org/changeset/210695))

### CSS

- Implemented `scroll-snap-type:proximity` scroll snapping ([r210560](https://trac.webkit.org/changeset/210560))
- Fixed updating `:active` and `:hover` states across Shadow DOM slots ([r210564](https://trac.webkit.org/changeset/210564))
- Fixed a CSS Grid issue with very big values for grid lines ([r210320](https://trac.webkit.org/changeset/210320))
- Implemented baseline positioning for grid containers ([r210792](https://trac.webkit.org/changeset/210792))
- Made the CSS Grid sizing data persistent through layouts ([r210669](https://trac.webkit.org/changeset/210669))
- Fixed `overflow:scroll` scroll position getting restored on back navigation ([r210329](https://trac.webkit.org/changeset/210329))

### Form Validation

- Fixed the validation message to use singular form of “character” when `maxLength` value is 1 ([r210447](https://trac.webkit.org/changeset/210447))
- Truncated lengthy validation messages with an ellipsis ([r210425](https://trac.webkit.org/changeset/210425))
- Aligned email validation with the latest HTML specification ([r210361](https://trac.webkit.org/changeset/210361))

### Web Inspector

- Added “Persist Logs on Navigation” to Settings tab ([r210793](https://trac.webkit.org/changeset/210793))
- Added UI zoom level to the Settings tab ([r210788](https://trac.webkit.org/changeset/210788))
- Added Command-, (⌘,) keyboard shortcut to open Settings tab ([r210772](https://trac.webkit.org/changeset/210772))
- Fixed showing application cache details in the Storage tab ([r210311](https://trac.webkit.org/changeset/210311))
- Improved the cubic-bezier editor for invalid inputs in component fields ([r210674](https://trac.webkit.org/changeset/210674))
- Fixed an issue clearing pseudo classes toggled on in the Styles sidebar when Web Inspector is closed ([r210316](https://trac.webkit.org/changeset/210316))
- Fixed resources disappearing from the network tab when an `iframe` gets removed ([r210759](https://trac.webkit.org/changeset/210759))
- Fixed restoring Settings tab when reopening Web Inspector ([r210764](https://trac.webkit.org/changeset/210764))
- Improved the layout of the spring function editor with left-aligned labels and slider tracks ([r210618](https://trac.webkit.org/changeset/210618))

### Web API

- Provided more detailed role descriptions for many new HTML5 input types ([r210295](https://trac.webkit.org/changeset/210295))
- Aligned the `innerText` setter with the HTML specification ([r210767](https://trac.webkit.org/changeset/210767))
- Fixed an issue changing the modified timestamp for a given gamepad when it is updated ([r210827](https://trac.webkit.org/changeset/210827))
- Changed pointer lock to release when the page state is reset for any reason, not just when the process exits ([r210281](https://trac.webkit.org/changeset/210281))
- Fixed editing of nested RTL-to-LTR content ([r210831](https://trac.webkit.org/changeset/210831))
- Support iterating over `URLSearchParams` objects ([r210593](https://trac.webkit.org/changeset/210593))
- Changed the first parameter of `Event.initEvent()` to be mandatory ([r210559](https://trac.webkit.org/changeset/210559))

### Media

- Added support for `MediaKeys.generateRequest()` ([r210555](https://trac.webkit.org/changeset/210555))
- Added protection against the MediaPlayer being destroyed in the middle of a load() ([r210747](https://trac.webkit.org/changeset/210747))

### Rendering

- Fixed an issue that caused the highlighting of text using the Yoon Gothic webfont to reflow ([r210456](https://trac.webkit.org/changeset/210456))
- Fixed reordering text inside a `blockquote` when un-indenting the text ([r210524](https://trac.webkit.org/changeset/210524))

### Security

- Volume-separated file URLs: disallowed a file URL on one volume from loading a file on another volume in macOS 10.12.4 or later ([r210571](https://trac.webkit.org/changeset/210571))

[!**Note** Safari WebDriver is broken in this release. We expect this will be fixed in release 23.]

---

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)