Release Notes for Safari Technology Preview 7
Safari Technology Preview Release 7 is now available for download. 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.
JavaScript
- Implemented options argument to
addEventListener
(r201735, r201757) - Updated
JSON.stringify
to correctly transform numeric array indices (r201674) - Improved the performance of Encode operations (r201756)
- Addressed issues with Date setters for years outside of 1900-2100 (r201586)
- Fixed an issue where reusing a function name as a parameter name threw a syntax error (r201892)
- Added the
error
argument forwindow.onerror
event handlers (r202023) - Improved performance for accessing dictionary properties (r201562)
- Updated
Proxy.ownKeys
to match recent changes to the spec (r201672) - Prevented
RegExp
unicode parsing from reading an extra character before failing (r201714) - Updated SVGs to report their memory cost to the JavaScript garbage collector (r201561)
- 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)
- Fixed global lexical environment variables scope for functions created using the
Function
constructor (r201628) - Fixed parsing
super
when the default parameter is an arrow function (r202074) - Added support for trailing commas in function parameters and arguments (r201725)
CSS
- Added the unprefixed version of the pseudo element ::placeholder (r202066)
- Fixed a crash when computing the style of a grid with only absolute-positioned children (r201919)
- Fixed computing a grid container’s height by accounting for the horizontal scrollbar (r201709)
- Fixed placing positioned items on the implicit grid (r201545)
- Fixed rendering for the
text-decoration-style
values:dashed
anddotted
(r201777) - Fixed support for using
border-radius
andbackdrop-filter
properties together (r201785) - Fixed clipping for
border-radius
with different width and height (r201868) - Fixed CSS reflections for elements with WebGL (r201639)
- Fixed CSS reflections for elements with a
backdrop-filter
property (r201648) - Improved the Document’s font selection lifetime in preparation for the CSS Font Loading API (r201799)
- Improved memory management for CSS value parsing (r201608)
- Improved font face rule handling for style change calculations (r201971, r202085)
- Fixed multiple selector rule behavior for keyframe animations (r201818)
- Fixed applying CSS variables correctly for
writing-mode
properties (r201875) - Added experimental support for
spring()
based CSS animations (r201759) - Changed the initial value of
background-color
totransparent
per specs (r201666)
Web APIs
- Changed
CanvasRenderingContext2D.createPattern()
andCanvasRenderingContext2D.putImageData()
to throw the correct exception type and align with the specification (r201664) - Fixed a number of issues with Web Workers (r201876, r201970, r201918, r201926, r201791, r201898, r201925, r201808)
Web Inspector
- Added ⌘T keyboard shortcut to open the New Tab tab (r201692, r201762)
- Added the ability to show and hide columns in data grid tables (r202009, r202081)
- Fixed an error when trying to delete nodes with children (r201843)
- Added a Top Functions view for Call Trees in the JavaScript & Events timeline (r202010, r202055)
- Added gaps to the overview and category graphs in the Memory timeline where discontinuities exist in the recording (r201686)
- Improved the performance of DOM tree views (r201840, r201833)
- Fixed filtering to apply to new records added to the data grid (r202011)
- Improved snapshot comparisons to always compare the later snapshot to the earlier snapshot no matter what order they were selected (r201949)
- Improved performance when processing many
DOM.attributeModified
messages (r201778) - Fixed the 60fps guideline for the Rendering Frames timeline when switching timeline modes (r201937)
- Included the exception stack when showing internal errors in Web Inspector (r202025)
- Added ⌘P keyboard shortcut for quick open (r201891)
- Removed Text → Content subsection from the Visual Styles Sidebar when not necessary (r202073)
- Show
<template>
content that should not be hidden as Shadow Content (r201965) - Fixed elements in the Elements tab losing focus when selected by the up or down key (r201890)
- Enabled combining diacritic marks in input fields in Web Inspector (r201592)
Media
- Prevented double-painting the outline of a replaced video element (r201752)
- Properly prevented
video.play()
forvideo.src="file"
with audio user gesture restrictions in place (r201841) - Prevented showing the caption menu if the video has no selectable text or audio tracks (r201883)
- Improved performance of HTMLMediaElement.prototype.canPlayType that was accounting for 250–750ms first loading theverge.com (r201831)
- Fixed inline media controls to show PiP and fullscreen buttons (r202075)
Rendering
- Fixed a repaint issue with vertical text in an out-of-flow container (r201635)
- Show text in a placeholder font while downloading the specified font (r201676)
- 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)
- Fixed blending of inline SVG elements with transparency layers (r202022)
- Fixed display of hairline borders on 3x displays (r201907)
- Prevented flickering and rendering artifacts when resizing the web view (r202037)
- Fixed logic to trigger new layout after changing canvas height immediately after page load (r201889)
Bug Fixes
- Fixed an issue where Find on Page would show too many matches (r201701)
- Exposed static text if form label text only contains static text (r202063)
- Added Origin header for CORS requests on preloaded cross-origin resources (r201930)
- Added support for the
upgrade-insecure-requests
(UIR) directive of Content Security Policy (r201679, r201753) - Added proper element focus and caret destination for keyboard users activating a fragment URL (r201832)
- Increased disk cache capacity when there is lots of free space (r201857)
- Prevented hangs during synchronous XHR requests if a network session doesn’t exist (r201593)
- Fixed the response for a POST request on a blob resource to return a “network error” instead of HTTP 500 response (r201557)
- 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)
- Fixed parsing URLs containing tabs or newlines (r201740)
- Fixed cookie validation in private browsing (r201967)
- Provided memory cache support for the
Vary
header (r201800, r201805)