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

# Safari Technology Preview 7 Release Notes

Preview the latest web technology updates including: JavaScript, CSS, Web APIs, Web Inspector, Media, Rendering, and bug fixes.

## Overview

[Safari Technology Preview](https://webkit.org/blog/6017/introducing-safari-technology-preview/) Release 7 is now [available for download](https://webkit.org/downloads/). If you already have Safari Technology Preview installed, you can update from the Mac App Store’s Updates tab. Release 7 of Safari Technology Preview covers WebKit revisions [201541–202085](http://trac.webkit.org/log/?rev=202085&stop_rev=201541&limit=999).

### JavaScript

- Implemented options argument to `addEventListener` ([r201735](https://trac.webkit.org/changeset/201735/trunk/Source), [r201757](https://trac.webkit.org/changeset/201757/trunk/Source))
- Updated `JSON.stringify` to correctly transform numeric array indices ([r201674](https://trac.webkit.org/changeset/201674/trunk/Source))
- Improved the performance of Encode operations ([r201756](https://trac.webkit.org/changeset/201756/trunk/Source))
- Addressed issues with Date setters for years outside of 1900-2100 ([r201586](https://trac.webkit.org/changeset/201586/trunk/Source))
- Fixed an issue where reusing a function name as a parameter name threw a syntax error ([r201892](https://trac.webkit.org/changeset/201892/trunk/Source))
- Added the `error` argument for `window.onerror` event handlers ([r202023](https://trac.webkit.org/changeset/202023/trunk/Source))
- Improved performance for accessing dictionary properties ([r201562](https://trac.webkit.org/changeset/201562/trunk/Source))
- Updated `Proxy.ownKeys` to match recent changes to the spec ([r201672](https://trac.webkit.org/changeset/201672/trunk/Source))
- Prevented `RegExp` unicode parsing from reading an extra character before failing ([r201714](https://trac.webkit.org/changeset/201714/trunk/Source))
- Updated SVGs to report their memory cost to the JavaScript garbage collector ([r201561](https://trac.webkit.org/changeset/201561/trunk/Source))
- Improved the sampling profiler to protect itself against certain forms of sampling bias that arise due to the sampling interval being in sync with some other system process ([r202021](https://trac.webkit.org/changeset/202021/trunk/Source))
- Fixed global lexical environment variables scope for functions created using the `Function` constructor ([r201628](https://trac.webkit.org/changeset/201628/trunk/Source))
- Fixed parsing `super` when the default parameter is an arrow function ([r202074](https://trac.webkit.org/changeset/202074/trunk/Source))
- Added support for trailing commas in function parameters and arguments ([r201725](https://trac.webkit.org/changeset/201725/trunk/Source))

### CSS

- Added the unprefixed version of the pseudo element ::placeholder ([r202066](https://trac.webkit.org/changeset/202066/trunk/Source))
- Fixed a crash when computing the style of a grid with only absolute-positioned children ([r201919](https://trac.webkit.org/changeset/201919/trunk/Source))
- Fixed computing a grid container’s height by accounting for the horizontal scrollbar  ([r201709](https://trac.webkit.org/changeset/201709/trunk/Source))
- Fixed placing positioned items on the implicit grid ([r201545](https://trac.webkit.org/changeset/201545/trunk/Source))
- Fixed rendering for the `text-decoration-style` values: `dashed` and `dotted` ([r201777](https://trac.webkit.org/changeset/201777/trunk/Source))
- Fixed support for using `border-radius` and `backdrop-filter` properties together ([r201785](https://trac.webkit.org/changeset/201785/trunk/Source))
- Fixed clipping for `border-radius` with different width and height ([r201868](https://trac.webkit.org/changeset/201868/trunk/Source))
- Fixed CSS reflections for elements with WebGL ([r201639](https://trac.webkit.org/changeset/201639/trunk/Source))
- Fixed CSS reflections for elements with a `backdrop-filter` property ([r201648](https://trac.webkit.org/changeset/201648/trunk/Source))
- Improved the Document’s font selection lifetime in preparation for the CSS Font Loading API ([r201799](https://trac.webkit.org/changeset/201799/trunk/Source))
- Improved memory management for CSS value parsing ([r201608](https://trac.webkit.org/changeset/201608/trunk/Source))
- Improved font face rule handling for style change calculations ([r201971](https://trac.webkit.org/changeset/201971/trunk/Source), [r202085](https://trac.webkit.org/changeset/202085/trunk/Source))
- Fixed multiple selector rule behavior for keyframe animations ([r201818](https://trac.webkit.org/changeset/201818/trunk/Source))
- Fixed applying CSS variables correctly for `writing-mode` properties ([r201875](https://trac.webkit.org/changeset/201875/trunk/Source))
- Added experimental support for `spring()` based CSS animations ([r201759](https://trac.webkit.org/changeset/201759/trunk/Source))
- Changed the initial value of `background-color` to `transparent` per [specs](https://drafts.csswg.org/css-backgrounds-3/#background-color) ([r201666](https://trac.webkit.org/changeset/201666/trunk/Source))

### Web APIs

- Changed `CanvasRenderingContext2D.createPattern()` and `CanvasRenderingContext2D.putImageData()` to throw the correct exception type and align with the specification ([r201664](https://trac.webkit.org/changeset/201664/trunk/Source))
- Fixed a number of issues with Web Workers ([r201876](https://trac.webkit.org/changeset/201876/trunk/Source), [r201970](https://trac.webkit.org/changeset/201970/trunk/Source), [r201918](https://trac.webkit.org/changeset/201918/trunk/Source), [r201926](https://trac.webkit.org/changeset/201926/trunk/Source), [r201791](https://trac.webkit.org/changeset/201791/trunk/Source), [r201898](https://trac.webkit.org/changeset/201898/trunk/Source), [r201925](https://trac.webkit.org/changeset/201925/trunk/Source), [r201808](https://trac.webkit.org/changeset/201808/trunk/Source))

### Web Inspector

- Added ⌘T keyboard shortcut to open the **New Tab** tab ([r201692](https://trac.webkit.org/changeset/201692/trunk/Source), [r201762](https://trac.webkit.org/changeset/201762/trunk/Source))
- Added the ability to show and hide columns in data grid tables ([r202009](https://trac.webkit.org/changeset/202009/trunk/Source), [r202081](https://trac.webkit.org/changeset/202081/trunk/Source))
- Fixed an error when trying to delete nodes with children ([r201843](https://trac.webkit.org/changeset/201843/trunk/Source))
- Added a **Top Functions** view for Call Trees in the JavaScript & Events timeline ([r202010](https://trac.webkit.org/changeset/202010/trunk/Source), [r202055](https://trac.webkit.org/changeset/202055/trunk/Source))
- Added gaps to the overview and category graphs in the Memory timeline where discontinuities exist in the recording ([r201686](https://trac.webkit.org/changeset/201686/trunk/Source))
- Improved the performance of DOM tree views ([r201840](https://trac.webkit.org/changeset/201840/trunk/Source), [r201833](https://trac.webkit.org/changeset/201833/trunk/Source))
- Fixed filtering to apply to new records added to the data grid ([r202011](https://trac.webkit.org/changeset/202011/trunk/Source))
- Improved snapshot comparisons to always compare the later snapshot to the earlier snapshot no matter what order they were selected ([r201949](https://trac.webkit.org/changeset/201949/trunk/Source))
- Improved performance when processing many `DOM.attributeModified` messages ([r201778](https://trac.webkit.org/changeset/201778/trunk/Source))
- Fixed the 60fps guideline for the Rendering Frames timeline when switching timeline modes ([r201937](https://trac.webkit.org/changeset/201937/trunk/Source))
- Included the exception stack when showing internal errors in Web Inspector ([r202025](https://trac.webkit.org/changeset/202025/trunk/Source))
- Added ⌘P keyboard shortcut for quick open ([r201891](https://trac.webkit.org/changeset/201891/trunk/Source))
- Removed Text → Content subsection from the Visual Styles Sidebar when not necessary ([r202073](https://trac.webkit.org/changeset/202073/trunk/Source))
- Show `<template>` content that should not be hidden as Shadow Content ([r201965](https://trac.webkit.org/changeset/201965/trunk/Source))
- Fixed elements in the Elements tab losing focus when selected by the up or down key ([r201890](https://trac.webkit.org/changeset/201890/trunk/Source))
- Enabled combining diacritic marks in input fields in Web Inspector ([r201592](https://trac.webkit.org/changeset/201592/trunk/Source))

### Media

- Prevented double-painting the outline of a replaced video element ([r201752](https://trac.webkit.org/changeset/201752/trunk/Source))
- Properly prevented `video.play()` for `video.src="file"` with audio user gesture restrictions in place ([r201841](https://trac.webkit.org/changeset/201841/trunk/Source))
- Prevented showing the caption menu if the video has no selectable text or audio tracks ([r201883](https://trac.webkit.org/changeset/201883/trunk/Source))
- Improved performance of HTMLMediaElement.prototype.canPlayType that was accounting for 250–750ms first loading theverge.com ([r201831](https://trac.webkit.org/changeset/201831/trunk/Source))
- Fixed inline media controls to show PiP and fullscreen buttons ([r202075](https://trac.webkit.org/changeset/202075/trunk/Source))

### Rendering

- Fixed a repaint issue with vertical text in an out-of-flow container ([r201635](https://trac.webkit.org/changeset/201635/trunk/Source))
- Show text in a placeholder font while downloading the specified font ([r201676](https://trac.webkit.org/changeset/201676/trunk/Source))
- Fixed rendering an SVG in the correct vertical position when no vertical padding is applied, and in the correct horizontal position when no horizontal padding is applied ([r201604](https://trac.webkit.org/changeset/201604/trunk/Source))
- Fixed blending of inline SVG elements with transparency layers ([r202022](https://trac.webkit.org/changeset/202022/trunk/Source))
- Fixed display of hairline borders on 3x displays ([r201907](https://trac.webkit.org/changeset/201907/trunk/Source))
- Prevented flickering and rendering artifacts when resizing the web view ([r202037](https://trac.webkit.org/changeset/202037/trunk/Source))
- Fixed logic to trigger new layout after changing canvas height immediately after page load ([r201889](https://trac.webkit.org/changeset/201889/trunk/Source))

### Bug Fixes

- Fixed an issue where Find on Page would show too many matches ([r201701](https://trac.webkit.org/changeset/201701/trunk/Source))
- Exposed static text if form label text only contains static text ([r202063](https://trac.webkit.org/changeset/202063/trunk/Source))
- Added Origin header for CORS requests on preloaded cross-origin resources ([r201930](https://trac.webkit.org/changeset/201930/trunk/Source))
- Added support for the `upgrade-insecure-requests` (UIR) directive of Content Security Policy ([r201679](https://trac.webkit.org/changeset/201679/trunk/Source), [r201753](https://trac.webkit.org/changeset/201753/trunk/Source))
- Added proper element focus and caret destination for keyboard users activating a fragment URL ([r201832](https://trac.webkit.org/changeset/201832/trunk/Source))
- Increased disk cache capacity when there is lots of free space ([r201857](https://trac.webkit.org/changeset/201857/trunk/Source))
- Prevented hangs during synchronous XHR requests if a network session doesn’t exist ([r201593](https://trac.webkit.org/changeset/201593/trunk/Source))
- Fixed the response for a POST request on a blob resource to return a “network error” instead of HTTP 500 response ([r201557](https://trac.webkit.org/changeset/201557/trunk/Source))
- Restricted HTTP/0.9 responses to default ports and cancelled HTTP/0.9 resource loads if the document was loaded with another HTTP protocol ([r201895](https://trac.webkit.org/changeset/201895/trunk/Source))
- Fixed parsing URLs containing tabs or newlines ([r201740](https://trac.webkit.org/changeset/201740/trunk/Source))
- Fixed cookie validation in private browsing ([r201967](https://trac.webkit.org/changeset/201967/trunk/Source))
- Provided memory cache support for the `Vary` header ([r201800](https://trac.webkit.org/changeset/201800/trunk/Source), [r201805](https://trac.webkit.org/changeset/201805/trunk/Source))

---

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)