Safari Technology Preview 16 Release Notes
Preview the latest web technology updates including: URL Parser, Gamepad API, CSS, Media, Fetch API, JavaScript, Web APIs, Web Inspector, Accessibility, Shadow DOM, and bug fixes.
Overview
Safari Technology Preview Release 16 is now available for download for macOS Sierra. If you are using Safari Technology Preview on OS X El Capitan, update to macOS Sierra to ensure you continue to receive updates. If you already have Safari Technology Preview installed, you can update from the Mac App Store’s Updates tab. This release covers WebKit revisions 206808–207669.
URL Parser
Enabled a faster and more standards-compliant URL parser (r207162)
Gamepad API
Enabled the Gamepad API by default, allowing gamepads already configured for use with macOS to work on web pages using the Gamepad API (r207348)
CSS
Supported CSS Shapes Level 1 without a
-webkit-prefix (r207630)Fixed an issue where CSS
font-variation-settingsdid not handle uppercase axis names in variable fonts (r207581)
Media
Made full access to the keyboard available when content is fullscreen (r207439)
Made setting
HTMLMediaElement.volumetoNaNorInfinitythrow aTypeError(r207375)Allowed throttling of background tabs that have media elements with no audible audio (r207338)
Fetch API
Added support for
Requestcache mode (r207086)Forbid redirection to non-HTTP(s) URL when in non-navigation mode (r206858)
Ensured memory cache does not bypass redirect mode (r206994)
Improved network data transfer to stream when the application needs it (r206857)
JavaScript
Implemented
Intl.getCanonicalLocales(r206837)Changed ES6 method functions to not have a
prototypeproperty (r207461)Forbid
"use strict"directive in generator functions with non-simple parameters (r207569)Prevented
Array.prototype.concatfrom modifying frozen objects (r207178)Prevented
Array.prototype.slicefrom modifying frozen objects (r207226)Prevented
JSON.parsefrom modifying frozen objects (r207341)Handled non-function, non-undefined comparator in
Array.prototype.sort(r207235)
Web APIs
Changed
MouseEventcoordinates to be set to 0 for simulated clicks (r207544)Fixed an issue where
select.optionscould incorrectly return too manyoptionelements (r207181)Made
table.deleteRow(–1)do nothing when there are no rows (r207640)Fixed event listener order when overwriting an attribute event listener (r206889)
Implemented
DOMPointandDOMPointReadOnly(r207420)Implemented
DOMRectandDOMRectReadOnly(r207438)Added support for
"CapsLock"modifier inKeyboardEvent.getModifierState()(r206828)Added support for
window.navigator.languagesattribute (r207021)Updated
window.navigator.languageto no longer return an all lowercase string (r206949)Updated
HTMLSelectElementto ignore nested optgroup elements when recalculating (r207276)Ensured a
toggleevent is fired wheneverdetails.openis changed (r207514)
Web Inspector
Fixed Timeline UI updating while recording in remote Web Inspector (r207466)
Exposed computed tree node and heading level for accessibility (r207553)
Added toggles for debugger pauses at
console.assertfailures (r207444)Prevented changing content view when dragging to delete a breakpoint (r207359)
Improved debugger highlight when inside of
getterandsettercalls (r207358)Improved debugger highlight when pausing on the first statement of a program (r207227)
Improved debugger highlight for dot- and bracket-expressions in
ifstatements (r207312)Removed line flash while stepping to prevent distraction (r207165)
Prevented CSS autocompletion from adding extra unexpected characters (r207481)
Corrected syntax highlighting for mixed case CSS values like
translateX(r207489)Fixed an issue when pasting into a CSS rule selector (r206888)
Accessibility
Implemented
prefers-reduced-motionmedia query (r207173)Set
<figcaption>to provide the accessible name for other content inside the<figure>(r206943)Exposed the invalid status for input types with an invalid input value (r207035)
Exposed the
placeholderattribute when both theplaceholderandaria-placeholderattributes are set (r207014)Improved accessibility support for
<summary>elements (r207314)Mapped the
<output>element to status role and exposed its text content as a title (r207429)Added a new role for the
<mark>element and exposed the role description (r207583)Improved the
<meter>element to describe the status of the value (r207540)Provided more detailed role description for input types exposed as standard text fields (r207401)
Shadow DOM
Fixed updating styles for stylesheets that change in a shadow tree (r206880)
Bug Fixes
Fixed an issue where Safari Technology Preview would hang when waking from sleep
Fixed an issue where the contents of a tab would remain onscreen briefly after automatically switching to a new tab when opening a
target=_blanklinkChanged “Download Linked File” context menu action to use the value of the
downloadattribute as the filename (r207648)Changed “Download Linked File As…” context menu action to use the value of the
downloadattribute as the suggested filenameFixed a bug where a keyframe animation on
bodycould trigger high CPU usage (r207372)Fixed an issue that caused the keyboard to remain visible when swiping back on twitter.com (r207486)
See Also
2016
Safari Technology Preview 20 Release NotesSafari Technology Preview 19 Release NotesSafari Technology Preview 18 Release NotesSafari Technology Preview 17 Release NotesSafari Technology Preview 15 Release NotesSafari Technology Preview 14 Release NotesSafari Technology Preview 13 Release NotesSafari Technology Preview 12 Release NotesSafari Technology Preview 11 Release NotesSafari Technology Preview 10 Release NotesSafari Technology Preview 9 Release NotesSafari Technology Preview 8 Release NotesSafari Technology Preview 7 Release NotesSafari Technology Preview 6 Release NotesSafari Technology Preview 5 Release Notes