Ladybird의 7월 소식

15 hours ago 1

  • Ladybird는 7월 한 달 동안 47명의 기여자들이 319개의 풀 리퀘스트를 병합함
  • Web Platform Tests에서 1,831,856개까지 합격 테스트 수가 증가함
  • Google reCAPTCHA 통과 문제를 해결하여 레디버드의 호환성이 향상됨
  • HTTP/3, 고주사율 지원, Trusted Types 등 현대 웹 표준에 기반한 기능과 보안 개선을 이룸
  • CSS 기능 확대 및 내부 문자열 인코딩 개선 등으로 최신 브라우저와의 호환성 및 성능이 증대됨

7월 Ladybird 프로젝트 주요 성과

Ladybird 프로젝트는 오픈 웹을 지지하는 기업과 개인의 지원으로 전적으로 운영됨
이번 달에는 신규 후원자들이 함께하게 되어 개발팀에게 큰 힘이 되었음
후원에 관심 있는 기업이나 개인은 contact@ladybird.org로 연락 가능함

Web Platform Tests (WPT)

  • Web Platform Tests에서 7월 한 달간 새로 13,090개의 테스트가 통과되어, 총 통과 테스트 수가 1,831,856건이 됨
  • 이로써 웹 호환성 및 표준 준수 수준이 크게 향상됨

Google reCAPTCHA 통과

  • postMessage 구현에서 직렬화 타입이 처음 사용되는 경우 재구성이 불가능했던 오래된 문제가 존재했음
  • 이 오류가 수정되어 Google reCAPTCHA가 정상적으로 동작하게 됨
  • 단, 이 개선사항은 현재 동일 출처 정책 이슈로 https://www.google.com/ 도메인에서만 적용됨

고주사율 지원

  • 활성 화면의 리프레시 레이트를 자동 감지하여, 웹 콘텐츠 렌더링 빈도를 조정함
  • 예전에는 최대 60fps로 고정됐다면, 하드웨어가 지원할 경우 최대 120Hz로 렌더링이 이루어짐
  • 이로 인해 스크롤, 애니메이션, 전환 효과 등이 더욱 부드러워짐

HTTP/3 지원

  • curl 8.14.0과 OpenSSL 및 ngtcp2의 지원으로 Ladybird에서도 HTTP/3를 사용할 수 있게 됨
  • 서버에서 Alt-Svc 헤더로 HTTP/3를 광고하면 이를 자동으로 협상하여 연결함
  • curl의 Alt-Svc 관련 버그를 Ladybird팀이 발견해 보고했고, 이 문제는 curl 8.15.0에서 수정됨

Trusted Types 도입

  • Trusted Types는 크로스 사이트 스크립팅(XSS) 공격을 방지하는 중요한 보안 기능임
  • 이 기능을 Ladybird에 최초로 도입함에 따라, 정책 인식 및 타입 안전한 DOM 쓰기를 지원하게 됨
  • 향후 표준을 더 넓게 지원하고, 스펙 준수성을 높이기 위한 작업이 계속 진행 중임

SVG foreignObject 개선

  • SVG와 HTML의 상호운용성을 높이기 위해 foreignObject 처리 로직을 대폭 개선함
  • 레이아웃, 스타일 해석, 렌더링 등이 사양에 더욱 가까워졌음

CSS 확장 기능

  • content: url(...) 지원을 추가하여 CSS 내용에서 이미지 삽입이 가능해짐
  • 두 가지 신규 의사 클래스(:state(foo), :unchecked) 로 웹 컴포넌트 및 폼 스타일링 호환성을 높임
  • 논리 속성 그룹 구현을 최적화해서 CSS 재현력과 성능을 개선함

임의 대입 함수 정비

  • var() 및 attr()의 구현을 최신 CSS 사양의 임의 대입 함수 정의와 일치시켜 재작성함
  • 향후 if(), env()처럼 다양한 대입 함수 지원의 토대 마련

CSS <syntax> 파싱

  • 속성 값의 기대 문법을 <syntax>로 정의할 수 있도록 지원함
  • 예를 들어 color: attr(data-color type(<color>)); 형태로 사용할 경우, 데이터 속성을 CSS 컬러로 인식해 처리함
  • CSS Houdini 및 커스텀 프로퍼티의 동작이 한층 정교해짐

@property 진전

  • 기존의 @property 기능 구현을 확장하여 초기값 처리 및 CSS.registerProperty() 지원을 추가함
  • CSS Houdini와의 호환에 한 걸음 가까워짐

웹의 UTF-16 문자 인코딩

  • 웹과 JavaScript 문자열이 UTF-16을 기본 인코딩으로 사용함에 따라,
  • 레디버드는 기존 내부 UTF-8 코드에서 네이티브 UTF-16 타입으로 전환 중임
  • Unicode 처리의 정확도가 높아지고, 인코딩 관련 잠재 오류를 줄일 수 있게 됨

7월 기여자 명단

  • 7월 한 달 Ladybird 프로젝트에 코드를 기여한 수많은 개발자들에게 감사를 표함
  • 오픈 소스 커뮤니티의 활발한 활동이 지속적으로 이루어짐

Read Entire Article