Rust 기반의 Web 엔진 Servo 0.6, CSS Grid 지원으로 웹 호환성 개선
Rust로 개발되는 오픈 소스 웹 엔진 Servo가 웹사이트 호환성을 높이고 있습니다. 최근 공개된 공식 개발 보고서에 따르면, Servo 0.6.0에는 8월 동안 진행된 417개의 커밋이 반영됐습니다.
이번 변화에서 가장 눈에 띄는 부분은 CSS Grid 지원의 기본 활성화입니다.
CSS Grid는 웹페이지의 내용을 행과 열로 배치하는 기능입니다. 여러 개의 기사 카드를 나란히 보여주거나, 본문과 사이드바를 나눌 때 활용할 수 있습니다. 엔진이 이를 제대로 처리하지 못하면 웹사이트의 배치가 의도와 다르게 표시될 수 있습니다.
Servo는 이번 변경으로 CSS Grid를 사용하는 여러 사이트를 더 정확하게 표시하게 됐습니다. 공식 보고서에서도 이전 버전과 비교한 화면을 통해 차이를 보여주고 있습니다.
Linux 데스크탑과 관련된 개선도 있습니다. 데모 브라우저인 servoshell이 Wayland 환경에서 시스템 클립보드와 연동되며, 마우스로 웹페이지의 텍스트를 선택하는 기능도 동작하게 됐습니다. Linux ARM64 빌드에는 라즈베리 파이 5에서 실행하기 위한 조정도 반영됐습니다.
아직은 Chrome이나 Firefox를 바로 대체할 브라우저로 보기보다, 새로운 웹 엔진이 실제 웹사이트를 하나씩 제대로 표시해 나가는 과정으로 보는 편이 좋겠습니다. Servo는 엔진 프로젝트이며, servoshell 역시 이를 실행하고 시험하는 데모 브라우저입니다.
웹 브라우저를 쓰다 보면 속도나 메모리 사용량에는 관심을 가져도, 그 안에서 웹페이지를 그리는 엔진까지 생각하는 일은 드물다고 봅니다.
하지만 새로운 엔진을 만드는 입장에서는 글자를 선택하고 복사하는 일부터 웹사이트의 배치를 맞추는 일까지, 익숙한 기능 하나하나가 개발 과제입니다. 이번 소식도 그런 관점에서 보면 꽤 반갑습니다.
당장 주력 브라우저를 바꿀 정도의 변화는 아니더라도, 리눅스와 Wayland 환경까지 챙기면서 성장하는 오픈 소스 웹 엔진이 있다는 것 자체에 의미를 두고 싶습니다.
앞으로가 꽤나 기대되네요 😄
※ 각주
[1] Rust: 메모리 안전성과 높은 실행 성능을 중시하는 프로그래밍 언어로, 운영체제와 웹 브라우저 엔진 등 다양한 시스템 소프트웨어 개발에 사용됩니다.
[2] 웹 엔진: HTML, CSS 등의 웹 문서를 해석하고 화면에 표시하는 소프트웨어의 핵심 구성 요소입니다.
[3] Servo: Rust 언어로 개발되는 오픈 소스 웹 엔진으로, 병렬 처리와 메모리 안전성을 주요 설계 목표로 삼고 있습니다.
[4] 커밋(Commit): 소스 코드의 변경 사항을 버전 관리 시스템에 기록하는 단위로, 기능 추가나 버그 수정 등의 개발 이력을 나타냅니다.
[5] CSS Grid: 웹페이지의 요소를 행과 열로 나누어 배치할 수 있도록 지원하는 CSS 레이아웃 기술입니다.
[6] servoshell: Servo 웹 엔진을 실행하고 기능을 시험하기 위해 제공되는 데모 브라우저 프로그램입니다.
[7] Wayland: Linux 데스크톱에서 화면 출력과 입력 처리를 위한 현대적인 디스플레이 프로토콜로, 기존 X11을 대체하는 기술입니다.
[8] 클립보드: 복사하거나 잘라낸 텍스트와 이미지 등의 데이터를 다른 프로그램에 붙여넣을 수 있도록 임시로 보관하는 기능입니다.
[9] ARM64: ARM 아키텍처의 64비트 명령어 집합으로, 라즈베리 파이와 스마트폰 및 일부 데스크톱 컴퓨터 등에 사용됩니다.
Comments