EdgeHTML은 마이크로소프트(Microsoft)가 개발한 독점(proprietary) 브라우저 엔진이다. 2015년 Windows 10과 함께 출시된 레거시 Microsoft Edge(당시 코드명 '프로젝트 스파르탄')의 렌더링 엔진으로 사용되었다. EdgeHTML은 인터넷 익스플로러(Internet Explorer)의 MSHTML(Trident) 엔진을 포크(fork)하여 개발되었으며, 기존의 하위 호환성 중심 접근법에서 벗어나 현대 웹 표준과 상호 운용성(interoperability)에 중점을 둔 엔진이다.
역사
마이크로소프트는 2014년 11월 12일, Windows Technical Preview 빌드 9879에서 처음으로 EdgeHTML 렌더링 엔진을 인터넷 익스플로러 11의 일부로 도입했다. 초기에는 인터넷 익스플로러와 '프로젝트 스파르탄' 두 브라우저 모두에서 사용될 계획이었으나, 최종적으로는 새로운 Edge 브라우저에만 탑재되었다. EdgeHTML은 2015년 7월 29일 Windows 10 정식 출시와 함께 공식적으로 배포되었으며, 이후 Windows 10 Mobile 및 Xbox 시스템 소프트웨어에도 포함되었다.
Trident와 달리 EdgeHTML은 ActiveX를 지원하지 않으며, X-UA-Compatible 헤더를 무시한다. 또한 사용자 에이전트(User Agent) 문자열을 Chrome 및 Safari와 유사하게 스푸핑(spoofing)하여, 사용자 에이전트 스니핑(sniffing)에 의존하는 웹 서버가 Edge 사용자에게 최신 버전의 웹 페이지를 제공하도록 유도했다.
Chromium 기반 전환과 단계적 폐지
2018년 12월, 마이크로소프트는 Edge 브라우저를 Chromium 기반으로 재구축한다고 발표했다. 이에 따라 EdgeHTML은 더 이상 Edge 브라우저의 주 엔진으로 사용되지 않게 되었다. 전환은 2021년 4월에 완료되었으며, 이후 EdgeHTML은 유니버설 Windows 플랫폼(UWP) 앱 내에서 제한적으로 지원 및 사용이 지속되었다.
이후 마이크로소프트는 EdgeHTML 기반의 레거시 웹 구성 요소들(레거시 Web View, Windows 8/8.1/UWP HTML/JavaScript 앱, 레거시 PWA, 레거시 Edge DevTools 등)을 더 이상 개발하지 않으며, 향후 Windows 버전에서 제거될 예정임을 공식 발표했다. 마이크로소프트는 개발자들에게 WebView2, Chromium 기반 PWA 등 지원되는 최신 웹 기술로 전환할 것을 권장하고 있다.
기술적 특징
EdgeHTML은 C++로 작성되었으며, Windows 10, Windows 10 Mobile, Xbox 시스템 소프트웨어에서 구동되었다. JavaScript 엔진으로는 Chakra(차크라)가 함께 사용되었다. EdgeHTML은 Blink 및 WebKit 레이아웃 엔진과의 완전한 호환성을 목표로 설계되었으며, 마이크로소프트는 "Edge-WebKit 간 차이는 모두 수정할 버그"라고 명시한 바 있다. 초기 출시 시점에 EdgeHTML은 4,000건 이상의 상호 운용성 수정 사항을 포함했다.
버전 역사
EdgeHTML의 마지막 안정 버전은 18.19041(2020년 5월 27일)이다. 버전 12에서 시작하여 18까지 발전했으며, 각 버전은 Windows 10의 주요 업데이트와 함께 배포되었다. 버전 15.15254(2017년 10월 11일)는 Windows 10 Mobile의 마지막 엔진 버전이었다. 버전 16부터 WebAssembly가 기본적으로 활성화되었다.
현재 상태
EdgeHTML은 더 이상 활발히 개발되지 않으며, 마이크로소프트는 이 엔진에 기반한 모든 구성 요소를 단계적으로 폐지( deprecation)하고 있다. 공식적인 지원 종료 및 보안 업데이트 중단 일자는 아직 확정되지 않았으나, 향후 Windows 버전에서 완전히 제거될 예정이다.