Chrome 131 beta

Dipublikasikan: 16 Oktober 2024

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 131 adalah versi beta mulai 16 Oktober 2024. Anda dapat mendownload versi terbaru di Google.com untuk desktop atau di Google Play Store di Android.

CSS

Rilis ini menambahkan delapan fitur CSS baru.

CSS Anchor Positioning: anchor-scope

Properti anchor-scope memungkinkan pembatasan visibilitas nama anchor ke subtree tertentu.

​CSS font-variant-emoji

Properti CSS font-variant-emoji menyediakan cara untuk mengontrol antara glif emoji berwarna (gaya emoji) dan monokromatik (gaya teks). Hal ini juga dapat dilakukan dengan menambahkan Pemilih Variasi emoji, khususnya U+FE0E untuk teks dan U+FE0F untuk emoji, setelah setiap kode poin emoji.

Pewarisan sorotan CSS

Dengan pewarisan sorotan CSS, class semu sorotan CSS, seperti ::selection dan ::highlight, mewarisi properti melalui rantai sorotan semu, bukan rantai elemen. Hasilnya adalah model yang lebih intuitif untuk pewarisan properti dalam sorotan.

Untuk mempelajari lebih lanjut, baca postingan blog Perubahan pewarisan untuk gaya visual pemilihan CSS yang ditulis oleh Stephen Chenney dari Igalia.

Peningkatan pada struktur gaya elemen <details> dan <summary>

Mendukung lebih banyak gaya CSS untuk struktur elemen <details> dan <summary> agar elemen ini dapat digunakan dalam lebih banyak kasus saat widget pengungkapan atau widget akordeon dibuat di web. Secara khusus, perubahan ini menghapus batasan yang mencegah penyetelan properti tampilan pada elemen ini, dan menambahkan elemen pseudo ::details-content untuk mengubah gaya penampung untuk bagian yang diperluas dan diciutkan.

@page kotak margin

Menambahkan dukungan untuk kotak margin halaman, saat mencetak dokumen web, atau mengekspornya sebagai PDF.

Kotak margin @page memungkinkan Anda menentukan konten di area margin halaman, misalnya untuk memberikan header dan footer kustom, bukan menggunakan header dan footer bawaan yang dihasilkan oleh browser.

Kotak margin ditentukan menggunakan aturan at-rule di dalam aturan @page CSS. Tampilan dan konten kotak margin ditentukan dengan properti CSS di dalam at-rule, termasuk properti content. Penghitung juga didukung, untuk penomoran halaman. Spesifikasi menentukan dua nama penghitung khusus: page untuk nomor halaman saat ini dan pages untuk jumlah total halaman.

@property mendukung sintaksis <string>

Dukungan untuk nama komponen sintaksis <string> untuk properti kustom terdaftar.

Mendukung currentcolor dalam sintaksis warna relatif

Mengizinkan warna relatif di CSS (menggunakan kata kunci from) untuk menggunakan currentcolor sebagai dasar. Hal ini memungkinkan Anda menetapkan warna komplementer, berdasarkan warna teks elemen, untuk batas, bayangan, atau latar belakang elemen tersebut.

Fitur ini juga mencakup kasus penggunaan saat fungsi warna disusun bertingkat dengan dependensi pada currentcolor, misalnya color-mix(in srgb, rgb(from currentcolor r g b), white)) atau rgb(from rgb(from currentcolor 1 g b) b g r).

Mendukung aset SVG eksternal untuk properti clip-path, fill, stroke, dan marker-*

Fitur ini menambahkan dukungan untuk referensi eksternal untuk clip path, penanda, dan server cat (untuk properti 'fill' dan 'stroke'). Misalnya, clip-path: url("resources.svg#myPath").

Web API

Direct Sockets API

Memungkinkan Aplikasi Web Terisolasi untuk membuat komunikasi transmission control protocol (TCP) dan user datagram protocol (UDP) langsung dengan perangkat dan sistem jaringan serta memproses dan menerima koneksi masuk.

Mengecualikan header Speculation-Rules dari pembatasan CSP

Memperbarui integrasi antara aturan spekulasi dan CSP sehingga CSP hanya berlaku untuk <script type=speculationrules>, dan bukan untuk header Speculation-Rules. Kebijakan skrip CSP dimaksudkan untuk melindungi dari injeksi skrip ke dalam HTML, dan model ancaman CSP tidak terkait dengan header HTTP. Hal ini memungkinkan deployment aturan spekulasi yang lebih mudah dari CDN dan server edge lainnya.

FedCM sebagai sinyal tepercaya untuk Storage Access API

Menyelaraskan FedCM dan Storage Access API dengan membuat FedCM sebelumnya memberikan alasan yang valid untuk menyetujui permintaan akses penyimpanan secara otomatis.

Saat pengguna memberikan izin untuk menggunakan identitasnya dengan penyedia identitas (IdP) pihak ketiga di pihak tepercaya (RP), banyak IdP mewajibkan cookie pihak ketiga untuk berfungsi dengan benar dan aman. Proposal ini bertujuan untuk memenuhi persyaratan tersebut dengan cara yang pribadi dan aman dengan memperbarui pemeriksaan izin Storage Access API (SAA) agar tidak hanya menerima pemberian izin yang diberikan oleh perintah akses penyimpanan, tetapi juga pemberian izin yang diberikan oleh perintah FedCM.

Properti utama mekanisme ini adalah membatasi pemberian izin untuk kasus yang secara eksplisit diizinkan oleh RP dengan kebijakan izin FedCM, menerapkan kontrol per frame untuk RP, dan mencegah pengawasan pasif oleh IdP di luar kemampuan yang telah diberikan FedCM.

Nilai COOP noopener-allow-popups

Beberapa origin dapat berisi aplikasi yang berbeda dengan tingkat persyaratan keamanan yang berbeda. Dalam kasus tersebut, akan lebih baik jika skrip yang berjalan di satu aplikasi tidak dapat membuka dan membuat skrip halaman aplikasi dengan origin yang sama.

Dalam kasus seperti itu, dokumen dapat memastikan bahwa pembukanya tidak dapat menulis skripnya, meskipun dokumen pembuka berasal dari origin yang sama. Nilai Cross-Origin-Opener-Policy noopener-allow-popups memungkinkan dokumen menentukan perilaku tersebut.

Private Aggregation API: menaikkan batas kontribusi menjadi 100 untuk pemanggil Protected Audience

Memungkinkan pelari skrip Protected Audience membuat hingga 100 kontribusi per laporan Agregasi Pribadi, dibandingkan dengan batas saat ini sebesar 20.

Agregasi Pribadi membatasi jumlah kontribusi histogram yang dapat disematkan dalam satu laporan agregat, sehingga menghapus kontribusi tambahan apa pun. Pemanggil Shared Storage dapat mengatasi batas dengan memanggil operasi Shared Storage lainnya. Namun, pemanggil Protected Audience tidak memiliki penyimpanan persisten, sehingga mereka kehilangan kontribusi berlebih di akhir lelang. Perhatikan bahwa perubahan ini bersifat netral privasi karena kontribusi API masih dibatasi oleh anggaran privasi yang sama.

Karena padding, setiap laporan Protected Audience akan memiliki payload yang lebih besar, meskipun tidak memerlukan batas kontribusi yang lebih besar. Kami memperkirakan bahwa laporan yang lebih besar ini akan meningkatkan biaya pengoperasian Layanan Agregasi.

Memilih pelonggaran parser

Perubahan ini membuat parser HTML mengizinkan tag tambahan di <select> selain <option>, <optgroup>, dan <hr>.

Perubahan ini mendukung fitur <select> yang dapat disesuaikan, tetapi diluncurkan terlebih dahulu karena dapat dilakukan secara terpisah dan memiliki beberapa risiko kompatibilitas yang ingin mendapatkan masukan dari tim Chrome.

WebGPU: Jarak klip

Menambahkan fitur GPU opsional clip-distances yang memungkinkan penetapan jarak klip yang ditentukan pengguna dalam output shader vertex. Teknik ini sangat berguna untuk aplikasi yang perlu memangkas semua vertex dalam tampilan yang berada di luar bidang yang ditentukan pengguna, seperti banyak aplikasi CAD.

WebGPU: GPUCanvasContext getConfiguration()

Setelah GPUCanvasContext configure() dipanggil dengan kamus konfigurasi, Anda dapat menggunakan metode GPUCanvasContext getConfiguration() untuk memeriksa konfigurasi konteks kanvas. Hal ini mencakup anggota GPU device, format, usage, viewFormats, colorSpace, toneMapping, dan alphaMode. Seperti yang dibahas dalam masalah 4828, aplikasi web dapat menggunakannya untuk mendeteksi apakah kanvas HDR didukung di WebGPU.

WebHID di pekerja khusus

Mengaktifkan WebHID di dalam konteks pekerja khusus. Hal ini memungkinkan Anda melakukan I/O berat dan pemrosesan data dari perangkat HID di thread terpisah, sehingga membantu mengurangi dampak performa pada thread utama.

WebRTC RTCRtpEncodingParameters.scaleResolutionDownTo

API yang mengonfigurasi encoder WebRTC untuk menskalakan frame input jika lebih besar dari maxWidth dan maxHeight yang ditentukan. API ini mirip dengan scaleResolutionDownBy, kecuali bahwa batasan resolusi dinyatakan dalam istilah absolut (misalnya, 640x360) dan bukan dalam istilah relatif (misalnya, skalakan ke bawah sebesar 2), sehingga menghindari kondisi perlombaan yang terkait dengan perubahan ukuran frame input secara langsung.

Uji coba origin baru

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

Statistik pemutaran untuk WebAudio

Fitur AudioContext.playoutStats memungkinkan aplikasi mengukur kualitas dan latensi pemutaran audio menggunakan WebAudio.

Summarizer API

JavaScript API untuk membuat ringkasan teks input, yang didukung oleh model bahasa AI.

Penghentian dan penghapusan

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

Rilis Chrome ini menghapus tiga fitur.

Menghapus properti CSS Anchor Positioning inset-area

Dengan resolusi Kelompok Kerja CSS untuk mengganti nama properti inset-area menjadi position-area, penghapusan ini akan membersihkan implementasi di Chromium untuk fitur yang mematuhi standar.

Menghapus kemampuan untuk menonaktifkan BeforeunloadEventCancelByPreventDefault

Fitur BeforeunloadEventCancelByPreventDefault dikirimkan di Chrome 117, tetapi ada kebijakan perusahaan yang memungkinkan tanda ini dinonaktifkan secara paksa. Kebijakan perusahaan akan dihapus di Chrome 131.

Menghapus metode requestAdapterInfo() GPUAdapter non-standar

Grup Kerja WebGPU memutuskan bahwa requestAdapterInfo() tidak praktis untuk memicu dialog izin sehingga mereka telah menghapus opsi tersebut dan menggantinya dengan atribut info GPUAdapter sehingga developer web bisa mendapatkan nilai GPUAdapterInfo yang sama secara sinkron.