EdgeHTML

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
EdgeHTML
Microsoft Edge logo.svg
300px
Microsoft Edge, powered by EdgeHTML, displaying a Wikipedia page in 2018
Developer(s) Microsoft
Stable release 18.19041 / May 27, 2020; 3 years ago (2020-05-27)
Written in C++[1]
Operating system Windows 10, Xbox One and Xbox Series X/S system software
Type Browser engine
License Proprietary
Website docs.microsoft.com/en-us/archive/microsoft-edge/legacy/developer/dev-guide/

EdgeHTML is a proprietary browser engine from Microsoft that was formerly used in Microsoft Edge, which debuted in 2015 as part of Windows 10.

EdgeHTML is a fork of the MSHTML (Trident) engine of Internet Explorer.[2] It is designed as a software component that enables developers to easily add web browsing functionality to other apps.[3]

In 2018, Microsoft began rebuilding Edge as a Chromium-based browser,[4][5] which meant that EdgeHTML would no longer be used in the Edge browser. This transition was completed in April 2021.[6] Past this date, EdgeHTML does, however, continue to be supported and widely used in Universal Windows Platform apps.[7]

History

Microsoft first introduced the EdgeHTML rendering engine as part of Internet Explorer 11 in the Windows Technical Preview build 9879 on November 12, 2014.[8] Microsoft planned to use EdgeHTML both in Internet Explorer and Project Spartan; in Internet Explorer it would exist alongside the Trident 7 engine from Internet Explorer 11, the latter being used for compatibility purposes. However, Microsoft decided to ship Internet Explorer 11 in Windows 10 as it was in Windows 8.1,[9] leaving EdgeHTML only for the then new Edge browser. EdgeHTML was also added to Windows 10 Mobile and the second Windows Server 2016 Technical Preview. It was officially released on July 29, 2015, as part of Windows 10.[10]

Unlike Trident, EdgeHTML does not support ActiveX. It also drops support for the X-UA-Compatible header, used by Trident to determine in which version it had to render a certain page. Microsoft also dropped the usage of Compatibility View-lists.[11] Edge will recognize if a page requires any of the removed technologies to run properly and suggest to the user to open the page in Internet Explorer instead. Another change was spoofing the user agent string, which claims to be Chrome and Safari, while also mentioning KHTML and Gecko, so that web servers that use user agent sniffing send Edge users the full versions of web pages instead of reduced-functionality pages.

EdgeHTML's rendering was meant to be fully compatible with the rendering of the Blink and WebKit layout engines, used by Google Chrome and Safari, respectively. At the time, Microsoft stated that "any Edge-WebKit differences are bugs that we’re interested in fixing."[12]

Breaking from Trident, the new EdgeHTML engine will be focused on modern web standards and interoperability, rather than compatibility. The initial release of EdgeHTML on Windows 10 included more than 4000 interoperability fixes.[13]

On August 18, 2015, Microsoft released the first preview to EdgeHTML platform version 13 as part of Windows 10.0.10525, though it was still labeled as version 12. In subsequent updates, the support for HTML5 and CSS3 was extended to include new elements.

EdgeHTML 13.10586 was released in multiple versions of Windows. On November 12, 2015, the New Xbox One Experience-update for the Xbox One included EdgeHTML 13.10586, replacing Internet Explorer 10 in the process. It was released to Windows 10 as part of the November Update on the same day. On November 18, 2015, the updated got rolled out to Windows 10 Mobile users in the Insider Preview. Finally, Microsoft rolled out the same update to Windows Server 2016 as part of Technical Preview 4.

On December 16, 2015, Microsoft released the first build of Redstone. In January and February 2016, 4 other builds followed, all laying the foundational work for EdgeHTML 14. On February 18, 2016, Microsoft released the first version of EdgeHTML 14 as version 14.14267. This version of the engine contained almost no changes in standards support yet, but contained fundamental work for Web Notifications, WebRTC 1.0, improved ECMAScript and CSS support and also contained a number of new flags.[14] Further, Microsoft announced that it was working on VP9, WOFF 2.0, Web Speech API, WebM, FIDO 2.0, and Beacon API.

EdgeHTML has often been compared to Gecko due to its standards support and lack of compatibility with Webkit[15]

Releases

EdgeHTML version Release date Notes
12.0 November 12, 2014 Beta version that was part of a special Internet Explorer build
12.10049 March 31, 2015 Beta is now part of the Microsoft Edge browser
12.10166 July 9, 2015
12.10240 July 15, 2015 Initial public release of Microsoft Edge. Contains improvements to performance, support for HTML5 and CSS3.
12.10525 August 18, 2015 This release contains initial groundwork for Object RTC in Microsoft Edge.
12.10532 August 27, 2015 New features such as Pointer Lock (Mouse Lock), Canvas blending modes, and new input types.
13.10547 September 18, 2015 Edge HTML has been updated to version 13, extended support for HTML5 and CSS3, Extended srcset (sizes), a[download] attribute, Canvas ellipse, SVG external content, WebRTC - Object RTC API (desktop).
13.10565 October 12, 2015 CSS initial and unset values, initial support for docked F12 Developer Tools.
13.10586 November 5, 2015 First public platform update, includes further enhancements to HTML5, including Object RTC support.[16]
13.11099 January 13, 2016
14.14267 February 18, 2016 Initial plumbing for Web Notifications support.
14.14279 March 4, 2016
14.14291 March 17, 2016 Preview support for the VP9 video format on some devices.
14.14316 April 6, 2016 new Web Platform features
14.14327 April 20, 2016 Beacon interface and accessibility improvements.
14.14342 May 10, 2016 Web Notifications, Beacon and Fetch APIs became enabled by default, Performance improvements for several common JavaScript APIs.
14.14352 May 26, 2016 H.264/AVC decoding became available through the ORTC API.
14.14356 June 1, 2016 Various performance and reliability improvements and bug fixes.
14.14361 June 8, 2016 TCP Fast Open is now disabled by default.
14.14366 June 14, 2016 Fixed an issue that could result in abnormally high CPU usage when open to a page with many animated GIFs, as well as an issue resulting in certain captchas not displaying correctly.
14.14367 June 16, 2016 Improvements to reduce battery usage on Windows 10 Mobile when Microsoft Edge is running in the background.
14.14376 June 28, 2016
14.14393 August 2, 2016
14.14901 August 11, 2016
14.14915 August 31, 2016 Partial implementation of Webkit-Text-Stroke and CSS outline-offset, partial support for WebRTC 1.0.
14.14926 September 14, 2016

Improved performance on websites with changes to large numbers of HTML Elements containing text by improving spellchecker efficiency. This results in substantially improved performance on websites like TweetDeck. Addressed the largest cause of reliability issues in Insider builds of Microsoft Edge, which should improve reliability on major sites such as Facebook and Outlook.

15.14942 October 7, 2016

Enabled H.264/AVC support by default for RTC scenarios. Ongoing work to add support for CSS Custom Properties. Ongoing work to add support for CSP 2.0 and WebRTC 1.0

15.14959 November 3, 2016
15.14986 December 7, 2016
15.15063 April 11, 2017
15.15254 October 11, 2017 Latest browser engine of Microsoft Edge for Windows 10 Mobile.
16.16299 October 8, 2017 WebAssembly enabled by default.
17.17134 April 30, 2018
18.17763 November 13, 2018
18.18362 May 21, 2019
18.18363 November 12, 2019
18.19041 May 27, 2020

See also

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Lua error in package.lua at line 80: module 'strict' not found.