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.keysusing 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
DOMFormDataimplementation (r221839, r221914)
Fetch API
- Added support for
FetchRequest.body(r221395) - Added support for
Requestbody stream cloning (r221437) - Added support for consuming a
RequestReadableStream body (r221504) - Added support for caching
Responsewith a ReadableStream body (r221704) - Aligned
FetchResponseandFetchRequestbody handling (r221772) - Fixed
Response.statusTextunexpectedly using the full HTTP status line for HTTP/2 responses (r221804) - Fixed
RequestReadableStream body to throw an exception when keep alive is true (r221342)
Accessibility
- Distinguished between
titleattribute tooltips andaria-labelattribute labels (r221918)
Web API
- Fixed validation for
DOMMatrixandDOMMatrixReadOnlyNaNvalues (r221545) - Implemented
DOMMatrix2DInitforsetTransform()andaddPath()(r221462)
CSS
- Removed support for
>>descendant combinator syntax (r221788) - Fixed wrong
getComputedStyleresult for pseudo-elements indisplay:nonesubtrees. (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
totalFrameDelayfor 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.asyncattribute (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)