EdgeHTML

Anwendungsframework, Renderer

EdgeHTML ist ein von Microsoft entwickelter proprietärer HTML-Renderer für den Microsoft-Edge-Webbrowser. Es ist ein Fork von Trident, dem alle Legacy-Codes von älteren Versionen von Internet Explorer entfernt und die Mehrheit des Quellcodes mit neuen Web-Standards neu geschrieben wurde.[2] Die Interoperabilität mit anderen modernen Browsern wurde dabei auch größtenteils entfernt. Die Rendering-Engine, welche zunächst als „experimentell“ veröffentlicht worden war, ist seit Windows 10 Technical Preview 9879 Teil des Betriebssystems und wurde als Microsoft Edge zusammen mit Internet Explorer veröffentlicht.

EdgeHTML

Logo des Microsoft Edge
Basisdaten

Entwickler Microsoft
Erscheinungsjahr Juli 2015[1]
Aktuelle Version 18.18362
(2019)
Betriebssystem Windows
Programmier­sprache C++
Kategorie HTML-Rendering-Bibliothek

Im Dezember 2018 kündigte Microsoft an, dass zukünftige Versionen von Edge nicht mehr EdgeHTML als Renderer benutzen werden, sondern auf Chromium basieren sollen.[3] Seit Januar 2020 steht der neue Chromium-basierte Edge-Browser in Windows 10 ab Version 1803 zur Verfügung.[4]

Am Update-Dienstag im April 2021 wird für Windows 10 ein Update veröffentlicht, mit dessen Anwendung EdgeHTML deinstalliert und der neue Edge installiert wird. Dies gilt auch für das Preview-Update im März.[5]

Benutzung unter Windows

Bearbeiten

EdgeHTML ist als Softwarekomponente entworfen worden, um Softwareentwicklern die Möglichkeit zu bieten, ihren Applikationen Webbrowsing-Funktionalität zu geben. Es hat eine COM-Schnittstelle für den Zugriff und die Editierung der Webseiten mit jeder Ausstattung für COM-Support, wie z. B. C++ und .Net-Framework. Damit kann man z. B. eine Webbrowser-Komponente zu einem C++ Programm hinzufügen und dann die Seite, die gerade angezeigt wird, und Eigenschaften der Elemente abrufen. Ereignisse können damit auch aufgefangen werden. EdgeHTML wird auch dafür verwendet, WinRT-Applikationen, die auf Web-Technologien basieren, zu rendern.

Versionsgeschichte

Bearbeiten
EdgeHTML Edge Release-Datum Release-Notes
12.10240 20.10240 15. Juli 2015 Erstes Release, basiert auf Trident 7.0. Teil von Windows seit Windows 10 Technical Preview build 10049. Es ist nun performanter und unterstützt HTML5, CSS3 und ECMAScript 6.
13.10586 25.10586 5. Nov. 2015 Erstes Platform-Update, enthält weitere Verbesserungen für ECMAScript 6, Unterstützung für HTML5 und Unterstützung für Object RTC.
14.14393 38.14393 2. Aug. 2016 Unterstützung für Web-Benachrichtigungen, WebRTC 1.0, verbesserte HTML5, CSS3, ECMAScript 6 und 7 Unterstützung.
15.15063 40.15063 20. März 2017 Unterstützung für die Payment Request API, WebVR und CSS Custom Properties.
16.16299 41.16299 26. Sep. 2017 Verbesserte Entwicklerwerkzeuge (über F12 aufrufbar).

EdgeHTML 12

Bearbeiten

Microsoft hat EdgeHTML erstmals als Teil von Internet Explorer 11 in der Windows 10 Technical Preview Build 9879 am 12. November, 2014 veröffentlicht. Microsoft plante, EdgeHTML in Internet Explorer und Projekt Spartan (welches später zu Microsoft Edge umbenannt wurde) zu nutzen. In Internet Explorer würde es unter der Trident 7 Engine existieren, um Kompatibilitätsprobleme zu beheben. Jedoch entschied sich Microsoft, den Internet Explorer 11 in Windows 10 so wie in Windows 8.1 mitzuliefern. EdgeHTML wird daher nur in Microsoft Edge benutzt.

EdgeHTML unterstützt im Gegenteil zu Trident kein ActiveX. Es unterstützt auch keinen X-UA-kompatiblen Header, welcher in Trident benutzt wurde, um die Version festzustellen, in der eine Webseite gerendert werden sollte. Auch benutzt EdgeHTML nicht mehr die Kompatibilitätsansicht-Listen. Edge wird automatisch feststellen, ob eine Seite eine der entfernten Technologien benötigt, um richtig gerendert zu werden und würde den Benutzer empfehlen, die Seite in Internet Explorer zu öffnen. Außerdem wurde der User Agent String geändert, welcher angibt Google Chrome oder Apple Safari zu sein, jedoch auch kompatibel mit KHTML und Gecko zu sein, damit Server Edge die vollen Versionen einer Webseite senden, statt Seiten mit reduzierter Funktionalität.
EdgeHTML hat auch große Performance-Verbesserungen gegenüber Trident, wodurch Benchmark-Ergebnisse oft besser sind.

User Agents

Bearbeiten
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
Trident 11 Mozilla/5.0 (Windows NT 10.0; Trident/7.0; rv:11.0) like Gecko

EdgeHTML ist stärker auf moderne Web-Standards und Interoperabilität statt Kompatibilität fokussiert. Bei der ersten Release-Version auf Windows 10 gab es mehr als 4000 Interoperatibilitätsverbesserungen.

EdgeHTML 13

Bearbeiten

Am 18. August 2015 veröffentlichte Microsoft die erste Vorschau von EdgeHTML Version 13, als Teil von Windows 10.10525, es war jedoch noch Version 12 angegeben. In nachfolgenden Updates wurde die Unterstützung von HTML5 und Cascading Style Sheets (CSS3) mit neuen Elementen erweitert. Auch unterstützt EdgeHTML 13 nun Object RTC. Hauptsächlich wurde jedoch die Unterstützung von ECMAScript 6 verbessert und einige Funktionen von ECMAScript 7 hinzugefügt. Mit dem Update für Chakra stellt Edge, laut dem Kangax Benchmark, die beste Unterstützung für ECMAScript 6 zur Verfügung. Das Ergebnis liegt bei 84 % für Edge mit 90 % der Flags aktiviert, 13 % besser als Mozilla Firefox 42, die damals neueste Version von Firefox.

EdgeHTML 13.10586 wurde in mehreren Versionen von Windows veröffentlicht. Am 12. November 2015 wurde das New Xbox One Experience-Update für die Xbox One veröffentlicht, welches Internet Explorer 10 durch EdgeHTML 13.10586 ersetzte. Es wurde am selben Tag auf Windows 10 als Teil des Updates auf Version 1511 veröffentlicht. Am 18. November 2015 wurde das Update auf Windows 10 Mobile Insider Preview veröffentlicht. Dann veröffentlichte Microsoft das Update auf Windows Server 2016 als Teil der Technical Preview 4.

EdgeHTML 14

Bearbeiten

Microsoft veröffentlichte am 16. Dezember 2015 Redstone Build 1. Im Januar und Februar 2016 folgten andere Builds, welche alle die fundamentale Arbeit für EdgeHTML 14 darstellten. Schließlich wurde die erste Version von EdgeHTML 14 am 18. Februar 2016 als Version 14.14267 veröffentlicht. Diese Version enthält nahezu keine Änderungen in der Standard-Unterstützung, jedoch fundamentale Arbeiten für Web Notifications und WebRTC 1.0. Außerdem wurde die Unterstützung für ECMAScript und CSS3 verbessert. Es enthielt auch einige neue Flags. Außerdem erwähnte Microsoft, dass sie an VP9, WOFF 2.0, Web Speech API, WebM, FIDO 2.0, Beacon sowie vielen anderen Technologien arbeiten.

Die Veröffentlichung der finalen Version 14.14393 erfolgte am 2. August 2016 als Teil des 2016er Anniversary Updates von Windows 10.

Leistung

Bearbeiten

Eine Rezension des letzten Windows 10 Builds von AnandTech fand große Leistungsverbesserungen gegenüber Trident, vor allem die JavaScript-Engine Chakra verbesserte sich erheblich und ist nun gleich schnell wie V8 (JavaScript-Implementierung von Google), welche auch in Google Chrome benutzt wird. Andere Benchmarks, welche sich auf die Leistung des WebGL-APIs spezialisieren, fanden, dass EdgeHTML mehr leistete als Blink (Rendering-Engine von Google Chrome) und Gecko (Rendering-Engine von Firefox).

Kompatibilität

Bearbeiten

EdgeHTML sollte mit der WebKit-Engine kompatibel sein, welche von Apple Safari und anderen Webbrowsern wie Chrome mit der Abspaltung Blink benutzt wird.

“Any Edge-WebKit differences are bugs that we’re interested in fixing.”

„Jeder Unterschied zwischen Edge und Webkit sind Bugs (Fehler), an deren Beseitigung wir interessiert sind.“[6]

Einzelnachweise

Bearbeiten
  1. support.microsoft.com.
  2. Mary Jo Foley: Microsoft’s Spartan browser: What’s under the hood. In: ZDNet. 22. Januar 2015, abgerufen am 6. März 2016 (englisch).
  3. Microsoft Edge goes Chromium (and macOS). In: TechCrunch. Abgerufen am 6. Dezember 2018 (amerikanisches Englisch).
  4. Der neue Edge mit Chromium für Windows 10 kommt jetzt als Windows-Update. In: heise.de. Abgerufen am 18. Januar 2020 (deutsch).
  5. New Microsoft Edge to replace Microsoft Edge Legacy with April’s Windows 10 Update Tuesday release. In: techcommunity.microsoft.com. Abgerufen am 7. Februar 2021 (englisch).
  6. Building a more interoperable Web with Microsoft Edge.