EdgeHTML
Screenshot of Microsoft Edge in Windows 10 showing the English Wikipedia main page rendered by EdgeHTML 12 | |
Developer(s) | Microsoft |
---|---|
Stable release |
14.14393
/ August 2, 2016 |
Preview release |
14.14915
/ August 31, 2016 |
Written in | C++[1] |
Type | Application framework, software component |
License | Proprietary |
EdgeHTML is a proprietary layout engine developed by Microsoft for the Microsoft Edge web browser. It is a fork of Trident that has removed all legacy code of older versions of Internet Explorer and rewritten the majority of its source code with web standards and interoperability with other modern browsers in mind.[2] The rendering engine was first released as an experimental option in Internet Explorer 11 as part of the Windows 10 Technical Preview build 9879.
Usage in Windows
EdgeHTML is designed as a software component to allow software developers to easily add web browsing functionality to their own applications. It presents a COM interface for accessing and editing web pages in any COM-supported environment, like C++ and .NET. For instance, a web browser control can be added to a C++ program and EdgeHTML can then be used to access the page currently displayed in the web browser and retrieve element values. Events from the web browser control can also be captured. It's also used to render WinRT-apps that are based on web technologies.
Release history
EdgeHTML | Edge | Release | Notes |
---|---|---|---|
12.10240 | 20.10240 | July 15, 2015 | Initial release, based on Trident 7.0. Part of Windows since Windows 10 Technical Preview build 10049. Contains improvements to performance, support for HTML5 and CSS3. |
13.10586 | 25.10586 | November 5, 2015 | First platform update, includes further enhancements to HTML5, including Object RTC support.[3] |
14.14291 | Extensions, Pinned tabs, VP9 | ||
14.14342 | 38.14342 | Web Notifications, WebRTC 1.0, Beacon, Fetch, improved HTML5 and CSS3. | |
14.14393 | 38.14393 | August 2, 2016 |
EdgeHTML 12
Microsoft first introduced the EdgeHTML render engine as part of Internet Explorer 11 in the Windows Technical Preview build 9879 on November 12, 2014.[4] 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,[5] leaving EdgeHTML only for the 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.[6]
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.[7] 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 also made significant performance improvements over Trident, resulting in better JavaScript benchmark scores.[8]
Microsoft EdgeHTML 12 | Mozilla/5.0 (Windows NT 10.0;) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.10240 |
---|---|
Internet Explorer 11 | Mozilla/5.0 (Windows NT 10.0; Trident/7.0; rv:11.0) like Gecko |
Breaking from Trident, the new EdgeHTML engine will be focused on modern web standards and interoperability, rather than compatibility. The initial release of Edge HTML on Windows 10 included more than 4000 interoperability fixes.[9]
EdgeHTML 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. Microsoft also included support for Object RTC and enabled ASM.js by default after it was added in version 12. The update's main focus was on improving the support for ECMAScript 6 and also including some features from ECMAScript 7. With that update to Chakra Edge provided to most extensive support for ECMAScript 6 according to the Kangax benchmark with 84% (and 90% with all flags enabled), 13% ahead of Mozilla Firefox 42, the then-current version of Firefox and runner-up.[3]
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.
EdgeHTML 14
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. Further, Microsoft announced that it is working on VP9, WOFF 2.0, Web Speech API, WebM, FIDO 2.0, Beacon and many other technologies.
On August 2, 2016, EdgeHTML 14 was released to Windows 10 as part of the 2016 Anniversary Update.
Performance
A review of the engine in the latest Windows 10 build by AnandTech found substantial benchmark improvements over Trident, particularly JavaScript engine performance, which is now up to par with that of Google Chrome.[10] Other benchmarks focusing on the performance of the WebGL API found EdgeHTML to perform much better than Google Chrome and Mozilla Firefox.[11]
Compatibility
EdgeHTML is meant to be fully compatible with the Blink and WebKit layout engines, used by Google Chrome and Safari, respectively. Microsoft has stated that "any Edge-WebKit differences are bugs that we’re interested in fixing."[12]
See also
References
- ↑ Hachamovitch, Dean (2007-12-14), Internet Explorer 8 and Acid2: A Milestone, Microsoft
- ↑ "What's powering Spartan? Internet Explorer, of course". Neowin.
- 1 2 "Introducing EdgeHTML 13, our first platform update for Microsoft Edge". Windows Blog. Retrieved 19 November 2015.
- ↑ "Living on the edge – our next step in helping the web just work". IE Blog. Retrieved 19 November 2015.
- ↑ "Updates from the "Project Spartan" Developer Workshop". IE Blog. Retrieved 6 December 2015.
- ↑ "Windows 10 Free Upgrade Available in 190 Countries Today". Windows Blog. Retrieved 19 November 2015.
- ↑ "A break from the past: the birth of Microsoft's new web rendering engine". IE Blog. Retrieved 19 November 2015.
- ↑ "Edge is blazing fast". Windows Blog. Retrieved April 20, 2016.
- ↑ Microsoft Edge Team (17 June 2015). "Building a more interoperable Web with Microsoft Edge". Microsoft Edge Dev Blog. Retrieved 8 May 2016.
- ↑ Brett Howse. "AnandTech - Internet Explorer Project Spartan Shows Large Performance Gains". anandtech.com.
- ↑ "Benchmark Deep-Dive: Microsoft Windows 10 Spartan Browser vs. IE11 vs. Google Chrome 41 vs. Mozilla Firefox". WinBuzzer. Retrieved 9 February 2015.
- ↑ "Building a more interoperable Web with Microsoft Edge".
Further reading
- Weber, Jason (22 January 2015). "Project Spartan and the Windows 10 January Preview Build". IEBlog. Microsoft.