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

# Safari Technology Preview 52 Release Notes

Preview the latest web technology updates including: Legacy NPAPI Plug-ins, Service Worker, Loading, JavaScript, CSS, Web API, Accessibility, Web Driver, Web Inspector, WebAssembly, and Media.

## Overview

[Safari Technology Preview](https://webkit.org/blog/6017/introducing-safari-technology-preview/) Release 52 is now [available for download](https://webkit.org/downloads/) for macOS Sierra and macOS High 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 [228856-229535](https://trac.webkit.org/log?stop_rev=228856&rev=229535&limit=999).

### Legacy NPAPI Plug-ins

- Removed support for running legacy NPAPI plug-ins other than Adobe Flash

### Service Worker

- Changed Fetch event release assert to take into account the fetch mode ([r228930](https://trac.webkit.org/changeset/228930/webkit/))
- Changed to not use a Service Worker in the case of document redirection if it will be already served by AppCache ([r229086](https://trac.webkit.org/changeset/229086/webkit/))
- Fix loads for a Document controlled by a Service Worker to not use AppCache ([r229181](https://trac.webkit.org/changeset/229181/webkit/))
- Updated Service Worker to respect IndexedDB and DOM cache partitioning ([r229483](https://trac.webkit.org/changeset/229483/webkit/))

### Loading

- Added support for `preconnect` link headers ([r229308](https://trac.webkit.org/changeset/229308/webkit/))
- Fixed converting a load to a download to work with async policy delegates ([r229177](https://trac.webkit.org/changeset/229177/webkit/))
- Prevented DNS prefetching from being re-enabled ([r229061](https://trac.webkit.org/changeset/229061/webkit/))

### JavaScript

- Fixed handling undefined global variables with the same name as an element ID ([r229451](https://trac.webkit.org/changeset/229451/webkit/))
- Made `Number.isInteger` an intrinsic ([r228968](https://trac.webkit.org/changeset/228968/webkit/))

### CSS

- Added new CSS `env()` constants for use with fullscreen ([r229475](https://trac.webkit.org/changeset/229475/webkit/))
- Fixed  `::selection` CSS `stroke-color` and `stroke-width` to be applied to selected text in text fields ([r229147](https://trac.webkit.org/changeset/229147/webkit/))

### Web API

- Fixed HTML `pattern` attribute to set `u` flag for regular expressions ([r229363](https://trac.webkit.org/changeset/229363/webkit/))
- Fixed `replaceState` causing back and forward navigation problems on a page with `<base href="/">`  ([r229375](https://trac.webkit.org/changeset/229375/webkit/))
- Fixed `document.open` to cancel navigation policy check in addition to cancelling the existing provisional load ([r228922](https://trac.webkit.org/changeset/228922/webkit/))

### Accessibility

- Added more accessibility events support ([r229310](https://trac.webkit.org/changeset/229310/webkit/))
- Dispatched `accessiblesetvalue` event ([r229112](https://trac.webkit.org/changeset/229112/webkit/))
- Fixed keyboard focus to follow the VoiceOver cursor into web content or within web content ([r228857](https://trac.webkit.org/changeset/228857/webkit/))
- Fixed WebKit running spell checker even on non-editable content text ([r229500](https://trac.webkit.org/changeset/229500/webkit/))

### Web Driver

- Fixed clicking on a disabled option element to not produce an error ([r229212](https://trac.webkit.org/changeset/229212/webkit/))
- Fixed stale elements not getting detected when removed from the DOM ([r229210](https://trac.webkit.org/changeset/229210/webkit/))
- Fixed failed provisional loads causing “Navigate To” command to hang ([r228887](https://trac.webkit.org/changeset/228887/webkit/))
- Fixed script evaluations via WebDriver to have a user gesture indicator ([r229206](https://trac.webkit.org/changeset/229206/webkit/))

### Web Inspector

- Changed Canvas Tab to scroll into view and inspect an element if Canvas has a DOM node ([r229044](https://trac.webkit.org/changeset/229044/webkit/))

### WebAssembly

- Added cache for memory address and size on an instance ([r228966](https://trac.webkit.org/changeset/228966/webkit/))

### Media

- Fixed the `webkitfullscreenchange` event to fire at the same time as `:-webkit-full-screen` pseudo selector changes ([r229466](https://trac.webkit.org/changeset/229466/webkit/), [r229487](https://trac.webkit.org/changeset/229487/webkit/))

### Bug Fix

- Fixed copying a table from the Numbers app and pasting into iCloud Numbers ([r229503](https://trac.webkit.org/changeset/229503/webkit/))

---

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)