Apple has released its first update and second release to its Safari Technology Preview browser. The browser puts an emphasis on releasing stable, technology preview ready builds. With updates coming every two weeks, Apple is showing a commitment to bringing stability to developers on the cutting edge of web technologies.
The browser can be installed alongside current builds of Safari, allowing developers to jump back and forth and compare differences as needed. Today’s browser update sees changes in JavaScript, CSS, its Web APIs, Web Inspector, accessibility, rendering, media, networking, and general bug fixes.
Safari Technology Preview can be downloaded from Apple’s Developer Site; once installed subsequent updates will be installed through the Mac App Store.
The full release notes are seen below:
Release 2
Browser Differences
- Changed the CFBundleSignature to allow Apple Events, like those sent from AppleScript, to correctly distinguish between Safari and Safari Technology Preview
JavaScript
- Added ES6 support for Symbol.isConcatSpreadable
- Disallowed var assignments in for-in loops according to ES6 specs
- Improved stability for ES6 classes when invoking a method of the parent class before callingsuper() in a constructor
- Allowed undefined or null for Symbol.search and Symbol.match
- Enabled Array.prototype native functions’ species constructors to work with proxies
- Implemented the proposal for String.prototype.padStart() and String.prototype.padEnd()
- Implemented ES6 spec for String.prototype.match and RegExp.prototype[@@match]
- Included a workaround for web compatibility on ES6 TypeErrors when accessingRegExp.prototype flag properties
- Corrected quantified unicode regular expressions
- Ensured greedy unicode regular expressions properly backtrack past non-BMP characters
CSS
- Implemented the allow-end value of the hanging-punctuation CSS property
- Improved web compatibility by resetting CSS spacing rules on <math> elements
- Added the new color-gamut CSS media query
- Updated screen queries to check the capabilities of the current screen instead of the deepest available screen
Web APIs
- Restricted WebSockets header parsing according to RFC6455 and RFC7230
- Improved performance of certain draw calls in WebGL with a non-power-of-two texture optimization
- Disabled the Fetch API until the implementation is ready to be enabled by default
- Enhanced Shadow DOM support to compute styles for the style attribute of <slot> elements
- Softened pushState and replaceState frequency restrictions
Web Inspector
- Timelines tab performance and bug fixes
- Disabled debugger statements while profiling a page to ensure maximum performance accuracy
- Added the ability to configure timeline instruments to use for recordings
- Added a paint count indicator in the top left corner of non-opaque layers
- Added font-variant-numeric to CSS autocompletions
- Added the console.takeHeapSnapshot method for capturing heap snapshots
- Changed details sidebar shortcuts to Command-Option-0 and Command-Shift-0
- Double-quotes and backslashes in strings are now displayed correctly in the console
- Improved the consistency of CSP directive violation messages reported in the console
Accessibility
- Corrected new lines in content editable elements to notify accessibility
- Updated the handling of SVG elements with a presentational role to be the same as other host language elements
- Limited the numbered list announcement for a list item number to the first line of text in the list item
- Changed the accessibility role descriptions for JavaScript alerts to “web dialog” and “web alert dialog” to make them more understandable to screen reader users
Rendering
- Updated backdrop filter to repaint when changed in JavaScript
- Corrected drawing SVG stroke patterns for objects with empty bounding box elements
Media
- Improved stability when an audio source is changed while being processed
- Fixed audio track listings
Networking
- Improved the reliability of speculative disk cache validation requests with the HTTP Refererheader
Bug Fixes
- Fixed autoscrolling in a drag selection when a window is against the screen edge, including while in full screen mode
FTC: We use income earning auto affiliate links. More.
Comments