Release Notes for Safari Technology Preview 13
Safari Technology Preview Release 13 is now available for download for both macOS Sierra betas and OS X El Capitan 10.11.6. If you already have Safari Technology Preview installed, you can update from the Mac App Store’s Updates tab. This release covers WebKit revisions 204876–205519.
Fetch API
- Added support for
BufferSource
bodies (r205115) - Fixed blob resource handling to raise a network error when the URL is not found (r205190)
- Set the blob type correctly for an empty body (r205250)
- Set the blob type from Response/Request
contentType
header (r205076) - Made the body mix-in
text()
decode data as UTF–8 (r205188) - Ensured response cloning works when data is loading (r205110)
- Enabled the Fetch API to load the data URL in same-origin mode (r205265)
- Prevented any body for opaque responses (r205082)
- Changed
opaqueredirect
responses to have their URL set to the original URL (r205081) - Prevented setting
bodyUsed
when request construction fails (r205253) - Set Response
bodyUsed
to check for its body-disturbed state (r205251) - Changed response cloning to use
structureClone
when teeing a Response stream (r205117) - Aligned the internal structure of
ReadableStream
with the specifications (r205289) - Aligned
data://
URL behavior of XHR to match specifications (r205113)
Custom Elements
- Added adopted callback for custom elements on
appendChild()
(r205085) - Enabled reaction callbacks for adopted custom elements (r205060)
- Updated the semantics of
:defined
to re-align with specification changes (r205416) - Added validations for a synchronously constructed custom element (r205386)
- Added support for the
whenDefined()
method on theCustomElementRegistry
(r205315) - Added a
CustomElementRegistry
check for reentrancy (r205261)
JavaScript
- Enabled assignments in
for…in
head in non-strict mode (r204895) - Changed
newPromiseCapabilities
to check that the given argument is a constructor (r205027) - Fixed
toString()
to return the correct tag when called on proxy objects (r205023)
Web APIs
- Added event support for
<link preload>
(r205269) - Implemented
x
,y
andScrollToOptions
arguments forElement.scroll()
,Element.scrollTo()
, andElement.scrollBy()
(r205505) - Updated
location.toString
to make it enumerable (r204953) - Updated
location.toString
in Web Workers to make it enumerable (r204954) - Changed
Object.preventExtensions(window)
to throw aTypeError
exception (r205404) - Aligned
coords
andsrcset
attribute parsing with the HTML specification (r205030, r205515) - Added support for
CanvasRenderingContext2D.prototype.resetTransform
(r204878) - Aligned cross-origin
Object.getOwnPropertyNames()
with the HTML specification (r205409)
Web Inspector
- Added IndexedDB Database, ObjectStore, and Index data to the details sidebar (r205043)
- Added support for Shift-Command-D (⇧⌘D) to switch to the last used dock configuration (r205413)
- Added support for Shift-Tab (⇧⇥) to un-indent the selected line (r204924)
- Changed Command-D (⌘D) to select the next occurrence instead of deleting the line (r205414)
- Added a visual indicator for shadow content in the DOM tree (r205322)
- Allowed hiding of CSS variables in the Computed styles panel (r205518)
- Fixed an issue that prevented using an Undo action in the breakpoint editor (r205499)
- Prevented the resource content view from showing “CR” characters (r205517)
- Fixed an issue preventing re-inspecting the page after a Web Inspector process crash (r205370)
- Improved the minification detection heuristic for small resources (r205314)
- Fixed an issue causing network record bars to be positioned on unexpected rows (r205349)
- Provided a way to clear an IndexedDB object store (r205041)
- Improved the debugger popover to pretty print functions (r205223)
- Corrected unexpected cursor changes while dragging ruler handle in the rendering frames timeline (r204940)
- Corrected the display of a plain text XHR response with
responseType="blob"
(r205268)
CSS
- Implemented
CSS.escape
according to the CSSOM specification (r204952) - Improved CSS stylesheet checks to ensure clean stylesheets are accessible from JavaScript (r205455)
- Improved
:enabled
and:disabled
selectors to only match elements that can be disabled (r205050)
Rendering
- Fixed scrollbars for a
<table>
with overflow content inside<div align="right">
(r205489) - Added support for non-BMP MathML operators U+1EEF0 and U+1EEF1 (r205111)
- Fixed getting font bounding rect for MathML (r205031)
Security
- Changed the Image Loader to set the fetch mode according its
crossOrigin
attribute (r205134) - Added a
SecurityError
when trying to access cross-origin Location properties (r205026) - Updated
Object.defineProperty()
andObject.preventExtensions()
to throw an error for a cross-originWindow
orLocation
object (r205358, r205359) - Updated
Object.setPrototypeOf()
to throw an error and returnnull
when used on a cross-originWindow
orLocation
object (r205205, r205258)
Plugins
- Replaced YouTube.com Flash embeds with HTML5 equivalents on macOS (r205274)