별도로 명시되지 않는 한 다음 변경사항은 Android, ChromeOS, Linux, macOS, Windows용 최신 Chrome 베타 채널 출시에 적용됩니다. 제공된 링크 또는 ChromeStatus.com의 목록에서 여기에 나열된 기능에 대해 자세히 알아보세요. Chrome 129는 2024년 8월 21일부터 베타 버전입니다. 데스크톱의 Google.com 또는 Android의 Google Play 스토어에서 최신 버전을 다운로드할 수 있습니다.
CSS
이 출시에서는 CSS 기능 2개를 새로 추가하고 3개 기능을 업데이트합니다.
CSS interpolate-size property
및 calc-size()
함수
CSS interpolate-size
속성을 사용하면 페이지에서 auto
, min-content
, fit-content
와 같은 CSS 고유 크기 조정 키워드의 애니메이션과 전환을 선택할 수 있습니다(해당 키워드에 애니메이션을 적용할 수 있는 경우).
CSS calc-size()
함수는 calc()
와 유사한 CSS 함수이지만 지원되는 크기 조절 키워드 하나에 대한 작업도 지원합니다. 현재 지원되는 크기 조정 키워드는 auto
, min-content
, max-content
, fit-content
입니다. 향후 지원될 수 있는 다른 크기 조정 키워드에는 stretch
(현재 접두사 -webkit-fill-available
로 지원됨) 및 contain
가 있습니다. 이 함수는 interpolate-size
속성에서 허용하는 애니메이션 중간에 있는 값을 나타내는 데 사용됩니다.
CSS 앵커 포지셔닝 inset-area
의 이름을 position-area
로 바꿉니다.
CSSWG는 이 속성의 이름을 inset-area
에서 position-area
로 바꾸기로 결정했습니다. Chrome 129에서는 position-area
가 제공되며 inset-area
이름은 향후 출시에서 삭제됩니다.
CSS 앵커 포지셔닝: 래핑되지 않은 inset-area()
inset-area()
함수를 position-try-fallbacks
내에서 직접 inset-area 값으로 바꿉니다. 예를 들어 position-try-fallbacks:inset-area(top)
대신 position-try-fallbacks:top
를 사용합니다.
mirror edgeMode를 사용하도록 CSS backdrop-filter 업데이트
backdrop-filter
CSS 속성은 요소의 배경에 하나 이상의 필터를 적용합니다. 배경은 요소 뒤에 있는 페인팅된 콘텐츠입니다.
일반적인 필터는 디자이너가 '흐리게 처리된 유리' 대화상자, 동영상 오버레이, 반투명 탐색 헤더 등을 구성할 수 있는 흐리게 처리입니다.
이는 처음에는 일반 흐리게 처리와 동일한 방식으로 구현되었지만 요소의 가장자리 너머를 샘플링하면 가장자리의 색상이 번질 수 있었습니다. 가장자리의 픽셀을 복제하여 배경 가장자리 외부의 픽셀을 샘플링하도록 사양이 변경되었습니다. 그러나 이렇게 하면 배경 가장자리에 들어갈 때 콘텐츠가 심하게 깜박입니다. 최신 사양 변경사항은 가장자리 너머에서 샘플링할 때 배경을 미러링하므로 단일 색상 선에 과도한 가중치를 적용하지 않고 가장자리에 새로운 색상을 부드럽게 점진적으로 도입할 수 있습니다.
Web API
WebRTC 데이터 채널의 Blob 지원
RTCDataChannel.send(Blob)
를 구현합니다. 이제 onMessage
이벤트는 선택적으로 binaryType
속성을 사용하여 Blob
유형의 데이터를 수신할 수 있습니다.
이제 문자열 및 ArrayBuffer 전송을 지원하는 것 외에도 크기가 WebRTC 사양에 표시된 SCTP 전송 maxMessageSize
보다 작은 한 Blob
를 대신 전송하도록 선택할 수 있습니다.
binaryType
속성을 "blob"
로 설정하면 onMessage 이벤트 데이터 속성이 현재 지원되는 ArrayBuffer
대신 Blob
유형이 됩니다.
Compute Pressure WebDriver 확장 프로그램 명령어
가상 압력 소스의 압력 소스 샘플을 생성, 삭제, 업데이트하기 위한 WebDriver 명령어를 노출합니다. 이러한 압력 소스는 기본 하드웨어 또는 운영체제 지원에 종속되지 않으며 테스트에 사용할 수 있습니다.
Intl.DurationFormat
여러 언어를 지원하는 '1시간 40분 30초'와 같은 시간 형식을 지정하는 메서드를 제공합니다.
Private Aggregation API: 클라이언트 측 기여도 병합
집계 가능한 보고서의 암호화된 페이로드에 삽입하기 전에 동일한 버킷 및 필터링 ID로 히스토그램 기여도를 병합하도록 Private Aggregation API를 수정합니다.
비공개 집계는 단일 집계 가능한 보고서에 삽입할 수 있는 기여도 수에 제한을 적용하며, 추가 기여도는 삭제됩니다. 가능하면 기여를 병합하여 제한을 초과하는 추가 유틸리티를 얻을 수 있습니다. 초과 기여도를 삭제하는 것을 무시하면 이러한 종류의 기여도를 병합해도 요약 보고서와 같은 최종 출력에는 영향을 미치지 않습니다.
scheduler.yield()
긴 작업을 분할하는 데 사용할 수 있는 브라우저에 제어를 양보하는 메서드를 제공합니다. scheduler.yield()
에서 반환된 약속을 기다리면 현재 작업이 생성되어 새 브라우저 작업에서 계속됩니다. 이를 통해 긴 작업으로 인한 응답성 문제를 개선할 수 있습니다. 기존 대안의 성능 문제를 완화하기 위해 연속이 우선 적용됩니다.
웹 인증 API: JSON 직렬화 메서드
WebAuthn PublicKeyCredential.toJSON()
, parseCreationOptionsFromJSON()
, parseRequestOptionsFromJSON()
메서드를 사용하면 개발자가 WebAuthn 응답을 JSON 객체로 직렬화하거나 JSON 표현에서 WebAuthn 요청 객체를 역직렬화할 수 있습니다.
WebGPU 확장 범위 (HDR) 지원
WebGPU 캔버스 구성에 색조 매핑 매개변수를 추가하고 standard
(디스플레이의 SDR 범위로 콘텐츠를 제한하는 현재 동작) 옵션을 기본값으로, extended
(이러한 제한을 적용하지 않음) 옵션을 새 동작으로 추가합니다. 이렇게 하면 WebGPU 콘텐츠가 디스플레이의 전체 범위를 사용할 수 있습니다.
진행 중인 오리진 트라이얼
Chrome 129에서는 다음과 같은 새로운 출처 무료 체험판을 선택할 수 있습니다.
FileSystemObserver 인터페이스
FileSystemObserver 인터페이스는 웹사이트에 파일 시스템 변경사항을 알립니다. 사이트는 사용자의 로컬 기기 (WICG/file-system-access에 지정됨) 또는 버킷 파일 시스템(fs.spec.whatwg.org에 지정됨)의 파일 및 디렉터리 변경사항을 관찰하고 변경 유형과 같은 기본 변경 정보에 관해 알림을 받습니다.
FileSystemObserver 오리진 체험판에 등록합니다.
지원 중단 및 삭제
이 버전의 Chrome에서는 아래에 나열된 지원 중단 및 삭제가 적용됩니다. 계획된 지원 중단, 현재 지원 중단, 이전 삭제 목록은 ChromeStatus.com을 참고하세요.
이 Chrome 출시에서는 한 가지 기능이 지원 중단됩니다.
비공개 네트워크 액세스에 0.0.0.0
지원 중단
Chrome은 비공개 네트워크 액세스 (PNA)가 완전히 출시되기 전에 IP 주소 0.0.0.0
에 대한 액세스를 차단합니다.
Chrome은 PNA 사양의 일환으로 공개 웹사이트에서 비공개 네트워크 엔드포인트에 직접 액세스하는 기능을 지원 중단합니다.
localhost (127.0.0.0/8
)에서 리슨하는 서비스는 사양에 따라 비공개로 간주됩니다. IP 주소 0.0.0.0
를 사용하여 macOS 및 Linux의 로컬호스트에서 리슨하는 서비스에 액세스하면 Chrome의 PNA 보호를 우회할 수 있습니다.
로컬호스트에서 리슨하는 웹 애플리케이션을 타겟팅하는 DNS 재바인딩 공격에서도 악용될 수 있습니다.
이 Chrome 출시에서는 세 가지 기능이 삭제됩니다.
DOMParser에서 includeShadowRoots
인수 삭제
includeShadowRoots
인수는 DOMParser.parseFromString()
함수에 대한 표준화되지 않은 인수였으며, 선언적 Shadow DOM이 포함된 HTML 콘텐츠의 명령적 파싱을 허용하기 위해 존재했습니다. 이 기능은 선언적 Shadow DOM의 초기 배포의 일부로 Chrome 90에서 출시되었습니다.
이제 setHTMLUnsafe()
및 parseHTMLUnsafe()
메서드로 이 기능의 표준화된 버전을 사용할 수 있으므로 비표준 includeShadowRoots
인수는 삭제됩니다. 코드는 다음과 같이 업데이트해야 합니다.
다음을 대신해서 사용합니다.
((new DOMParser()).parseFromString(html,'text/html',{includeShadowRoots: true});
사용:
Document.parseHTMLUnsafe(html);
비표준 선언적 섀도우 DOM 직렬화 삭제
선언적 섀도우 DOM의 프로토타입 구현에는 섀도우 루트가 포함된 DOM 트리를 직렬화하는 데 사용되는 getInnerHTML()
라는 메서드가 포함되어 있습니다. 프로토타입의 이 부분은 나머지 선언적 섀도우 DOM과 함께 표준화되지 않았으며 대신 대체 getHTML()
가 설계되었습니다.
따라서 이제 Chrome에서 이전 getInnerHTML()
메서드가 삭제됩니다. 대신 getHTML()
를 사용해야 하며, 이 메서드는 곧 여러 브라우저 간에 상호 운용될 예정입니다.
안전하지 않은 컨텍스트에서 PointerEvent.getCoalescedEvents()
삭제
포인터 이벤트 작업 그룹은 4년 전 PointerEvent.getCoalescedEvents()
를 안전한 컨텍스트로 제한하여 안전하지 않은 컨텍스트에서 API를 삭제했습니다. Chrome은 원래 이전 동작을 출시했으며 호환성 문제로 인해 사양 변경사항을 즉시 따르지 않았습니다.
비보안 컨텍스트에서 Chrome 사용량이 매우 적은 것으로 확인되어 이제 비보안 컨텍스트에서 삭제됩니다.