Chrome 129 beta

Kecuali jika dinyatakan lain, perubahan berikut berlaku untuk rilis saluran Chrome beta terbaru untuk Android, ChromeOS, Linux, macOS, dan Windows. Pelajari lebih lanjut fitur yang tercantum di sini melalui link yang disediakan atau dari daftar di ChromeStatus.com. Chrome 129 adalah versi beta mulai 21 Agustus 2024. Anda dapat mendownload versi terbaru di Google.com untuk desktop atau di Google Play Store di Android.

CSS

Rilis ini menambahkan dua fitur CSS baru, dan memperbarui tiga fitur.

Fungsi interpolate-size property dan calc-size() CSS

Properti interpolate-size CSS memungkinkan halaman memilih animasi dan transisi kata kunci ukuran intrinsik CSS seperti auto, min-content, dan fit-content, jika kata kunci tersebut dapat dianimasikan.

Fungsi calc-size() CSS adalah fungsi CSS yang mirip dengan calc(), tetapi juga mendukung operasi pada tepat satu kata kunci ukuran yang didukung. Kata kunci ukuran yang saat ini didukung adalah auto, min-content, max-content, dan fit-content. Kata kunci ukuran lainnya yang mungkin didukung di masa mendatang meliputi stretch (saat ini didukung sebagai -webkit-fill-available dengan awalan) dan contain. Fungsi ini digunakan untuk merepresentasikan nilai di tengah animasi yang diizinkan oleh properti interpolate-size.

Mengganti nama CSS anchor positioning inset-area menjadi position-area

CSSWG memutuskan untuk mengganti nama properti ini dari inset-area menjadi position-area. Chrome 129 mengirimkan position-area, nama inset-area akan dihapus dalam rilis mendatang.

CSS Anchor Positioning: inset-area() yang Dibuka

Mengganti fungsi inset-area() dengan nilai area inset langsung dalam position-try-fallbacks. Misalnya, gunakan position-try-fallbacks:top, bukan position-try-fallbacks:inset-area(top).

Memperbarui filter latar belakang CSS untuk menggunakan edgeMode cermin

Properti CSS backdrop-filter menerapkan satu atau beberapa filter ke latar belakang elemen. Latar belakang adalah konten yang dicat yang berada di belakang elemen. Filter umum adalah pemburaman yang memungkinkan desainer membuat kotak dialog "kaca buram", overlay video, header navigasi transparan, dan lainnya.

Ini awalnya diterapkan dengan cara yang sama seperti pemburaman biasa, tetapi sampling di luar tepi elemen memungkinkan warna dari tepi untuk bercampur. Spesifikasi diubah untuk mengambil sampel piksel di luar tepi latar belakang dengan menduplikasi piksel di tepi. Namun, hal ini akan menyebabkan konten berkedip secara ekstrem saat memasuki tepi latar belakang. Perubahan spesifikasi terbaru mencerminkan latar belakang saat mengambil sampel di luar tepi yang memungkinkan pengenalan gradasi warna baru yang halus di tepi tanpa membebani satu baris warna.

Web API

Dukungan blob di saluran data WebRTC

Mengimplementasikan RTCDataChannel.send(Blob), dan peristiwa onMessage kini dapat menerima data jenis Blob secara opsional menggunakan atribut binaryType.

Selain mendukung pengiriman string dan ArrayBuffer, Anda kini dapat memilih untuk mengirim Blob selama ukurannya berada di bawah maxMessageSize transpor SCTP seperti yang ditunjukkan dalam spesifikasi WebRTC.

Dengan atribut binaryType yang ditetapkan ke "blob", atribut data peristiwa onMessage akan berjenis Blob, bukan ArrayBuffer yang saat ini didukung.

Perintah ekstensi WebDriver Compute Pressure

Mengekspos perintah WebDriver untuk membuat, menghapus, dan memperbarui sampel sumber tekanan untuk sumber tekanan virtual. Sumber tekanan tersebut yang tidak bergantung pada dukungan hardware atau sistem operasi yang mendasarinya dan dapat digunakan untuk pengujian.

Intl.DurationFormat

Memberikan metode pemformatan durasi, misalnya "1 jam 40 menit 30 detik" yang mendukung beberapa lokalitas.

Private Aggregation API: penggabungan kontribusi sisi klien

Mengubah Private Aggregation API untuk menggabungkan kontribusi histogram dengan bucket dan ID pemfilteran yang sama sebelum disematkan dalam payload terenkripsi laporan agregat.

Agregasi Pribadi memberlakukan batas jumlah kontribusi yang dapat disematkan dalam satu laporan agregat, dengan kontribusi tambahan akan dihapus. Dengan menggabungkan kontribusi jika memungkinkan, kita bisa mendapatkan utilitas tambahan di luar batas. Perhatikan bahwa, dengan mengabaikan penghapusan sumbangan berlebih, penggabungan jenis sumbangan ini tidak akan berdampak pada output akhir, misalnya laporan ringkasan.

scheduler.yield()

Memberikan metode untuk memberikan kontrol ke browser, yang dapat digunakan untuk membagi tugas yang lama. Menunggu promise yang ditampilkan oleh scheduler.yield() menyebabkan tugas saat ini menghasilkan, yang berlanjut dalam tugas browser baru. Hal ini dapat digunakan untuk meningkatkan masalah responsivitas yang disebabkan oleh tugas yang lama. Lanjutan diprioritaskan untuk memitigasi masalah performa alternatif yang ada.

Web Authentication API: Metode serialisasi JSON

Metode PublicKeyCredential.toJSON(), parseCreationOptionsFromJSON(), dan parseRequestOptionsFromJSON() WebAuthn memungkinkan developer melakukan serialisasi respons WebAuthn menjadi objek JSON atau mendeserialisasi objek permintaan WebAuthn dari representasi JSON-nya.

Dukungan rentang yang diperluas (HDR) WebGPU

Menambahkan parameter pemetaan tone ke konfigurasi kanvas WebGPU, dan menambahkan opsi standard (perilaku saat ini yang membatasi konten ke rentang SDR layar) sebagai default, dan extended (tidak menerapkan batasan ini) sebagai perilaku baru. Hal ini memungkinkan konten WebGPU menggunakan rentang penuh layar.

Uji coba origin sedang berlangsung

Di Chrome 129, Anda dapat memilih untuk mengikuti uji coba origin baru berikut.

Antarmuka FileSystemObserver

Antarmuka FileSystemObserver memberi tahu situs tentang perubahan pada sistem file. Situs mengamati perubahan pada file dan direktori di perangkat lokal pengguna (seperti yang ditentukan dalam WICG/file-system-access) atau di Sistem File Bucket (seperti yang ditentukan dalam fs.spec.whatwg.org), dan diberi tahu tentang info perubahan dasar, seperti jenis perubahan.

Daftar untuk uji coba origin FileSystemObserver.

Penghentian dan penghapusan

Versi Chrome ini memperkenalkan penghentian penggunaan dan penghapusan yang tercantum di bawah. Buka ChromeStatus.com untuk melihat daftar penghentian penggunaan yang direncanakan, penghentian penggunaan saat ini, dan penghapusan sebelumnya.

Rilis Chrome ini tidak lagi menggunakan satu fitur.

Menghentikan penggunaan 0.0.0.0 untuk Akses Jaringan Pribadi

Chrome akan memblokir akses ke alamat IP 0.0.0.0 sebelum Akses Jaringan Pribadi (PNA) diluncurkan sepenuhnya.

Chrome menghentikan penggunaan akses langsung ke endpoint jaringan pribadi dari situs publik sebagai bagian dari spesifikasi PNA. Layanan yang memproses di localhost (127.0.0.0/8) dianggap bersifat pribadi sesuai dengan spesifikasi. Perlindungan PNA Chrome dapat diabaikan menggunakan alamat IP 0.0.0.0 untuk mengakses layanan yang memproses di localhost di macOS dan Linux.

Hal ini juga dapat disalahgunakan dalam serangan rebinding DNS yang menargetkan aplikasi web yang memproses permintaan di localhost.

Rilis Chrome ini menghapus tiga fitur.

Menghapus argumen includeShadowRoots di DOMParser

Argumen includeShadowRoots adalah argumen yang tidak pernah distandardisasi untuk fungsi DOMParser.parseFromString(), yang ada di sana untuk memungkinkan penguraian imperatif konten HTML yang berisi shadow DOM deklaratif. Argumen ini diluncurkan di Chrome 90 sebagai bagian dari peluncuran awal shadow DOM deklaratif.

Setelah versi standar fitur ini tersedia dengan metode setHTMLUnsafe() dan parseHTMLUnsafe(), argumen includeShadowRoots non-standar akan dihapus. Kode harus diperbarui sebagai berikut:

Daripada:

((new DOMParser()).parseFromString(html,'text/html',{includeShadowRoots: true});

Penggunaan:

Document.parseHTMLUnsafe(html);

Menghapus serialisasi shadow DOM deklaratif non-standar

Implementasi prototipe shadow DOM deklaratif berisi metode bernama getInnerHTML() yang digunakan untuk melakukan serialisasi hierarki DOM yang berisi root shadow. Bagian prototipe tersebut tidak distandardisasi dengan bagian lain dari shadow DOM deklaratif, dan sebagai gantinya, pengganti dirancang—getHTML().

Oleh karena itu, metode getInnerHTML() lama kini dihapus dari Chrome. Anda harus menggunakan getHTML() sebagai pengganti, yang akan segera dapat dioperasikan secara lintas browser.

Menghapus PointerEvent.getCoalescedEvents() dari konteks yang tidak aman

Kelompok Kerja Peristiwa Pointer membuat PointerEvent.getCoalescedEvents() dibatasi untuk konteks aman lebih dari empat tahun yang lalu, yang menghapus API dari konteks tidak aman. Chrome awalnya mengirimkan perilaku lama dan tidak langsung mengikuti perubahan spesifikasi karena masalah kompatibilitas.

Sekarang kami menghapusnya dari konteks yang tidak aman karena penggunaan Chrome dalam konteks yang tidak aman ternyata sangat rendah.