Release Notes for Safari Technology Preview 5
Safari Technology Preview Release 5 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 5 of Safari Technology Preview covers WebKit revisions 200418–201083.
JavaScript
- Corrected the entropy of
Math.random()
for the first two invocations (r201053) - Corrected sticky
RegExp
handling when backtracking alternatives with dissimilar match lengths (r200946) - Fixed ES6 site compatibility when
Function.name
is inferred from property names (r200423) - Sped up ES6
Array
iterators between 4x to 6x (r200422) - Made the
Object
constructor be aware ofnew.target
by storing the target’s prototype to the newly created object’s prototype (r200421) - Fixed calls to getters and setters on
super
being called with wrongthis
object (r200586) - Improved error messages for accessing
arguments.callee
and similar getters in strict mode (r200694) - Made
TypedArray.prototype.slice
use the byteLength of passed array for memmove (r200667)
CSS
- Fixed the cascading order for
!important
properties in::slotted
and::host
rules correctly (r201073) - Added
color-gamut
media query support for wide gamut displays (r201065) - Made Web Fonts only download when characters are used in its
unicode-range
(r200601) - Restored legacy parsing of color attributes with 4 and 8 digits (r200501)
- Corrected how transitions behave when
auto
values are used (r200622) - Unprefixed
-webkit-cross-fade()
(r200888) - Corrected
cross-fade()
rendering to match expectations (r200889) - Corrected how prefixed and unprefixed variants in
CSSStyleDeclaration
are handled (r200769) - Stopped attempting to compute min/max width for replaced elements with no intrinsic size (r200486)
- Unprefixed CSS Grid Layout properties (r200510)
- Fixed static position for positioned CSS Grid items (r200572)
- Corrected parsing when just using
span
as a grid-line value (r200755) - Implemented CSS Grid auto-repeat computation (r200618)
Web APIs
- Started blocking Geolocation API calls on pages served over insecure connections (r200686)
- Made
NodeList
iterable (r200619) - Added support for
title
attribute tooltips inside Shadow DOM content (r200923) - Stopped retargeting
event.target
when an event bubbles up from an assigned node to its assigned slot (r200464) - Enabled IndexedDB in Web Worker scripts (r200697)
- Fixed IndexedDB transactions so they can’t be committed or aborted twice (r200598)
- Started propagating user gesture state across
postMessage
boundaries (r200908) - Aligned
window.scroll()
,scrollTo()
, andscrollBy()
with the CSSOM spec with support for theoptions
argument (r200907) - Made all scrolling height and width values be integral rounded (r200915)
- Added support for
ArrayBufferView
in the CSS Font Loading API (r200921)
Web Inspector
- Hook up ShadowChicken in the Debugger tab to properly show tail call deleted frames (r200981)
- Made
let
andconst
work as expected in Console evaluations (r200533) - Improved organization of the Debugger tab sidebar (r200566, r200600)
- Added Object Graph view to heap snapshots and removed the Summary view (r200474, r200517)
- Fixed sites that relied on putting custom properties on
console.prototype
(r201022) - Improved performance of filtering large timeline recordings (r201047)
- Made Inspect Element and element selection work with Shadow DOM nodes (r200539)
- Fixed the start times in the Frames timeline data grid (r201082)
- Started persisting breakpoints in scripts named via
//# sourceURL
(r201019) - Fixed the scrollbar covering the last column in data grids when always showing scrollbars (r200962)
- Fixed Computed Style so it no longer shows both prefixed and unprefixed variants of properties (r200952)
- Made the Call Trees view in the Timelines tab filterable and hide it from views that are not filterable (r200708, r200873)
- Started showing in-progress message in timeline views that do not show data until the recording finishes (r200573, r200594)
- Improved performance of the Console when it tries to render thousands of messages at once (r200471)
- Fixed filtering by duration in the Frames timeline view (r200809)
- Fixed loading of
//# sourceMappingURL
with a relative URL (r200806) - Improved
console.count()
to better match other browsers - Improved performance of the Timelines tab by profiling Web Inspector with Web Inspector (r200740, r200745, r200773, r200779, r200949)
Media
- Made media elements not pause right away when removed from the document (r200431)
- Started returning a
Promise
fromHTMLMediaElement.prototype.play()
(r200638) - Stopped updating media duration at playback end while seeking (r200675)
Security
- Fixed case matching against the path portion of CSP source expression URLs that ends in a forward-slash (r200445)
- Corrected a CORS check what was sometimes incorrectly failing for media loads (r200493)
Networking
- Stopped restarting a resource preload if there is already one pending for the same URL (r200630)
Accessibility
- Media controls are now keyboard accessible along with other Shadow DOM elements (r200520)