Release Notes for Safari Technology Preview 40
Safari Technology Preview Release 40 is now available for download for macOS Sierra and betas of 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 221334-221968.
JavaScript
- Added support for regular expression named capture groups (r221769)
- Fixed semicolon tokens becoming interpreted as an
=
assignment operator (r221400) - Implemented async iteration statement
for-await-of
(r221358) - Optimized
Object.keys
using careful array allocation (r221853)
FileSystem Entry API
- Added support for
input.webkitEntries
(r221645) - Implemented
FileSystemDirectoryEntry.getDirectory()
(r221540) - Implemented
FileSystemEntry.getParent()
(r221481) - Implemented
FileSystemFileEntry.file()
(r221544) - Fixed the FileSystemEntry API to ignore hidden files (r221639)
- Finished the
DOMFormData
implementation (r221839, r221914)
Fetch API
- Added support for
FetchRequest.body
(r221395) - Added support for
Request
body stream cloning (r221437) - Added support for consuming a
Request
ReadableStream body (r221504) - Added support for caching
Response
with a ReadableStream body (r221704) - Aligned
FetchResponse
andFetchRequest
body handling (r221772) - Fixed
Response.statusText
unexpectedly using the full HTTP status line for HTTP/2 responses (r221804) - Fixed
Request
ReadableStream body to throw an exception when keep alive is true (r221342)
Accessibility
- Distinguished between
title
attribute tooltips andaria-label
attribute labels (r221918)
Web API
- Fixed validation for
DOMMatrix
andDOMMatrixReadOnly
NaN
values (r221545) - Implemented
DOMMatrix2DInit
forsetTransform()
andaddPath()
(r221462)
CSS
- Removed support for
>>
descendant combinator syntax (r221788) - Fixed wrong
getComputedStyle
result for pseudo-elements indisplay:none
subtrees. (r221542) - Updated the font selection algorithm to match latest CSS specifications (r221630)
CSS Grid
- Fixed grid shorthand to not reset the gutter properties (r221668)
- Changed stretching auto tracks to be done as part of the track sizing algorithm (r221931)
- Changed to use transferred size over content size for automatic minimum size (r221910)
Web Inspector
- Fixed an issue that caused toolbar buttons to be hidden at narrow widths (r221338)
- Prevented the split console in the Settings tab (r221882)
- Use the same Timeline icon in the dashboard and Timeline tab (r221861)
- Increased the maximum width allowed for sidebars (r221713)
- Fixed an issue that prevented ⌘E and ⌘G from working in the main content area when quick console drawer is open (r221691)
Media
- Prevented increasing the reported
totalFrameDelay
for non-displayed frames, or frames coming in while paused (r221937) - Fixed MSE-to-Canvas painting that can become “stuck” during heavy workloads (r221430)
Rendering
- Implemented the
HTMLImageElement.async
attribute (r221803) - Implemented
HTMLImageElement.decode()
method (r221805) - Fixed respecting the SVG fragment identifier if it is a part of an HTTP URL (r221377)
- Enabled previous elements with
lang=
to affect fonts selected for subsequent elements (r221408)