Chrome 124

Kecuali dinyatakan lain, perubahan berikut berlaku untuk rilis saluran stabil Chrome 124 untuk Android, ChromeOS, Linux, macOS, dan Windows. Pelajari lebih lanjut fitur yang tercantum di sini melalui link yang diberikan atau dari daftar di ChromeStatus.com. Chrome 124 sudah stabil per 16 April 2024. Anda dapat mendownload versi terbaru di Google.com untuk desktop atau di Google Play Store untuk Android.

Hanya ingin sorotan? Lihat Baru di Chrome 124.

Perubahan Browser dan Developer Tools

Penginstalan universal

Buat halaman apa pun dapat diinstal, meskipun halaman yang tidak memenuhi kriteria kemampuan penginstalan PWA saat ini.

Penampung scroll yang dapat difokuskan keyboard

Meningkatkan aksesibilitas dengan membuat penampung scroll dapat difokuskan menggunakan navigasi fokus berurutan. Sebelum perubahan ini, tombol tab tidak akan memfokuskan scroller kecuali tabIndex ditetapkan secara eksplisit ke 0 atau lebih.

Dengan membuat scroller dapat difokuskan secara default, pengguna yang tidak dapat (atau tidak ingin) menggunakan mouse akan dapat memfokuskan konten yang terpotong menggunakan tab dan tombol panah pada keyboard. Perilaku ini hanya diaktifkan jika scroller tidak berisi turunan yang dapat difokuskan keyboard.

Fitur ini akan diluncurkan secara bertahap mulai Chrome 124, dan tersedia untuk semua pengguna pada Chrome 125.

Scroller yang dapat difokuskan keyboard | Bug pelacakan #40113891 | Entri ChromeStatus.com | Spesifikasi

Permintaan Izin untuk Web MIDI API

Fitur ini membatasi akses ke Web MIDI API di balik prompt izin. Sebelumnya, penggunaan pesan SysEx dengan Web MIDI API memerlukan izin eksplisit dari pengguna.Mulai Chrome 125, semua akses ke Web MIDI API memerlukan izin pengguna.

Fitur ini akan diluncurkan secara bertahap mulai Chrome 124, dan tersedia untuk semua pengguna pada Chrome 125.

Bug pelacakan #40063295 | Entri ChromeStatus.com | Spesifikasi

HTML dan DOM

Atribut writingsuggestions

Browser mulai memberikan saran penulisan kepada pengguna saat mereka mengetik di berbagai kolom yang dapat diedit di seluruh web. Meskipun hal ini umumnya berguna bagi pengguna, dalam kasus tertentu developer mungkin ingin menonaktifkan bantuan penulisan yang disediakan browser, seperti ekstensi atau situs yang menyediakan fungsi serupa yang mereka miliki.

Atribut baru writingsuggestions memiliki nilai true atau false yang memungkinkan developer mengaktifkan atau menonaktifkan saran penulisan yang disediakan browser. Status atribut untuk sebuah elemen juga dapat diwarisi dari elemen ancestor, sehingga memungkinkan developer mengontrol kemampuan ini pada skala per elemen, per dokumen, atau sub-dokumen.

Entri ChromeStatus.com | Spesifikasi

Memuat

Petunjuk klien Sec-CH-UA-Form-Factors

Petunjuk ini memberikan informasi kepada server tentang faktor bentuk agen pengguna. Metode ini menampilkan satu atau beberapa nilai faktor bentuk berikut:

  • Desktop: Agen pengguna yang berjalan di komputer pribadi.
  • Otomotif: Agen pengguna yang disematkan di kendaraan, tempat pengguna mungkin bertanggung jawab untuk mengoperasikan kendaraan dan tidak dapat memperhatikan detail kecil.
  • Seluler: Perangkat kecil berorientasi sentuhan yang biasanya dibawa oleh pengguna.
  • Tablet: Perangkat berorientasi sentuh yang lebih besar dari "Seluler" dan biasanya tidak digunakan oleh pengguna.
  • XR: Perangkat imersif yang meningkatkan atau mengganti lingkungan di sekitar pengguna.
  • EInk: Perangkat yang ditandai dengan update layar lambat dan resolusi warna terbatas atau tidak ada sama sekali.
  • Smartwatch: Perangkat seluler dengan layar kecil (biasanya kurang dari dua inci), dibawa sedemikian rupa sehingga pengguna dapat melihatnya dengan cepat.

Entri ChromeStatus.com | Spesifikasi

Izin Akses Jaringan Pribadi untuk melonggarkan konten campuran

Untuk membuat koneksi ke perangkat di jaringan lokal yang tidak memiliki nama unik global, sehingga tidak dapat memperoleh sertifikat TLS, fitur ini memperkenalkan opsi baru pada fetch() guna mendeklarasikan intent developer untuk berkomunikasi dengan perangkat tersebut. Hal ini mencakup fitur baru yang dikontrol kebijakan untuk membatasi akses setiap situs ke kemampuan ini, dan header baru untuk respons preflight server guna memberikan metadata tambahan.

Entri ChromeStatus.com | Spesifikasi

Header permintaan HTTP priority

Tindakan ini akan menambahkan header permintaan priority untuk semua permintaan HTTP dengan informasi prioritas untuk permintaan tersebut pada saat permintaan tersebut dikirim.

RFC 9218 (Extensible Prioritization Scheme untuk HTTP) menentukan header permintaan HTTP priority yang akan digunakan untuk memberi sinyal prioritas permintaan ke origin (dan perantara). Library ini juga menentukan proses negosiasi dan frame tingkat protokol untuk HTTP/2 dan HTTP/3 guna membawa informasi prioritas yang sama.

Header hanya dapat memberikan sinyal prioritas awal untuk suatu resource saat pertama kali diminta, sementara mekanisme berbasis frame memungkinkan untuk memodifikasi prioritas setelah kejadian.

Header dapat beroperasi secara menyeluruh ke server asal (dan menyediakan mekanisme agar origin dapat mengganti prioritas jika dikenali oleh perantara) sementara frame dibatasi untuk beroperasi di level link.

Fitur ini khusus untuk mendukung skema penentuan prioritas berbasis header.

Bug pelacakan #40252001 | Entri ChromeStatus.com | Spesifikasi

Pemblokiran render dokumen

Fitur ini memungkinkan penulis memblokir rendering dokumen hingga konten penting telah diuraikan, sehingga memastikan paint pertama yang konsisten di semua browser. Tanpa fitur ini, status first paint bergantung pada heuristik untuk yang dihasilkan parser yang dapat bervariasi di berbagai browser.

Hal ini sangat penting untuk Transisi Tampilan saat status DOM yang diurai pada frame pertama dapat secara drastis mengubah transisi yang dibuat.

Perhatikan bahwa fitur ini mengimplementasikan sintaksis <link rel=expect href="#id"> yang memungkinkan elemen link mereferensikan elemen lain yang diharapkan di halaman. Rendering kemudian diblokir hingga elemen yang diharapkan diuraikan sepenuhnya. Tindakan ini menggantikan implementasi atribut HTML sebelumnya yang memungkinkan seluruh dokumen diblokir render.

Entri ChromeStatus.com | Spesifikasi

Enkapsulasi kunci X25519Kyber768 untuk TLS

Melindungi traffic TLS Chrome saat ini dari kriptoanalisis kuantum di masa mendatang dengan men-deploy algoritma perjanjian kunci tahan kuantum Kyber768.

Ini adalah perjanjian kunci hibrida X25519 dan Kyber768 berdasarkan standar IETF. Spesifikasi dan peluncuran ini berada di luar cakupan W3C. Perjanjian kunci ini akan diluncurkan sebagai cipher TLS, dan harus transparan kepada pengguna.

Melindungi Traffic Chrome dengan Hybrid Kyber KEM | Melacak bug #40910498 | Entri ChromeStatus.com | Spesifikasi

Media

jitterBufferTarget atribut

Atribut jitterBufferTarget memungkinkan aplikasi menentukan durasi target waktu dalam milidetik media untuk ditahan oleh buffer jitter RTCRtpReceiver. Hal ini memengaruhi jumlah buffering yang dilakukan oleh agen pengguna, yang pada akhirnya memengaruhi transmisi ulang dan pemulihan paket yang hilang. Dengan mengubah nilai target, aplikasi dapat mengontrol kompromi antara penundaan pemutaran dan risiko kehabisan frame audio atau video karena jitter jaringan.

Bug pelacakan #324276557 | Entri ChromeStatus.com | Spesifikasi

Web API

WebSocketStream API

WebSocket API menyediakan antarmuka JavaScript ke protokol WebSocket RFC6455. Meskipun berfungsi dengan baik, hal ini terasa canggung dari perspektif ergonomi dan tidak memiliki fitur penting dari tekanan balik. Tujuan dari WebSocketStream API adalah untuk mengatasi kekurangan ini dengan mengintegrasikan Streaming HOWWG dengan WebSocket API.

WebSocketStream: mengintegrasikan streaming dengan WebSocket API | Bug pelacakan #41470216 | Entri ChromeStatus.com | Spesifikasi

setHTMLUnsafe dan parseHTMLUnsafe

Metode setHTMLUnsafe dan parseHTMLUnsafe memungkinkan Declarative Shadow DOM untuk digunakan dari JavaScript. Metode ini juga menawarkan cara yang lebih mudah untuk mengurai HTML ke dalam DOM secara imperatif, dibandingkan dengan innerHTML atau DOMParser.

Entri ChromeStatus.com | Spesifikasi

Streams API: Iterasi asinkron ReadableStream

API stream menyediakan dasar yang dapat dioperasikan dan digunakan di mana saja untuk membuat, menulis, dan menggunakan aliran data. Perubahan ini menambahkan dukungan untuk protokol iterable asinkron ke ReadableStream API, memungkinkan aliran yang dapat dibaca untuk digunakan sebagai sumber loop await...of.

Bug pelacakan #40612900 | Entri ChromeStatus.com | Spesifikasi

pageswap peristiwa

Peristiwa pageswap diaktifkan pada objek jendela dokumen saat navigasi akan mengganti dokumen ini dengan dokumen baru. Peristiwa ini memberikan info aktivasi tentang navigasi (type, NavigationHistoryEntry untuk dokumen baru).

Jika navigasi memiliki transisi tampilan lintas dokumen, peristiwa akan dikirim sebelum merekam status untuk dokumen lama. Hal ini memungkinkan developer mengonfigurasi status lama yang diambil untuk transisi berdasarkan info aktivasi navigasi dan status visual dokumen lama saat ini.

Bug pelacakan #41495176 | Entri ChromeStatus.com | Spesifikasi

Penambahan ke Attribution Reporting API

Fitur telah ditambahkan ke Attribution Reporting API untuk membuat kemampuan proses debug tambahan dengan mendukung laporan debug kegagalan penguraian, meningkatkan ergonomi API dengan mendukung kolom untuk menentukan platform pendaftaran pilihan, dan meningkatkan privasi.

Picture-in-picture dokumen: menambahkan opsi untuk menyembunyikan tombol kembali ke tab

Tindakan ini akan menambahkan parameter baru (disallowReturnToOpener) ke Document picture-in-picture API, yang jika disetel ke benar (true), akan memberi petunjuk bagi browser bahwa browser tidak boleh menampilkan tombol di jendela picture-in-picture sehingga pengguna dapat kembali ke tab pembuka.

Meskipun tombol untuk kembali ke tab pembuka selalu masuk akal dalam kasus picture-in-picture video (streaming video dapat ditampilkan ke elemen video di tab pembuka), hal ini tidak selalu berlaku untuk pengalaman picture-in-picture dokumen. Hal ini memberi developer kontrol yang lebih besar atas pengalaman pengguna saat mereka menentukan bahwa tombol seperti itu tidak relevan untuk kasus penggunaan mereka.

Dokumentasi untuk picture-in-picture Dokumen | Entri ChromeStatus.com | Spesifikasi

Rendering dan Grafis

SVG context-fill dan context-stroke

Mengimplementasikan fitur SVG yang ada yang mengizinkan kata kunci context-fill dan context-stroke saat menentukan properti isian dan goresan. Hal ini hanya memengaruhi sub-hierarki SVG yang dibuat instance-nya dengan elemen <use>, dan elemen <marker> yang dibuat instance-nya menggunakan properti marker pada elemen <path>. Dalam situasi tersebut, context-fill dan context-stroke di-resolve menjadi nilai properti fill dan stroke pada <use> atau <path>.

Entri ChromeStatus.com | Spesifikasi

WebGPU: Dukungan ServiceWorker dan SharedWorker

Dukungan ServiceWorker dan SharedWorker ditambahkan ke WebGPU, yang selaras dengan kemampuan WebGL yang ada.

Service Worker mengaktifkan kemampuan offline dan pemrosesan latar belakang untuk WebGPU. Artinya, aplikasi web atau Ekstensi Chrome yang memiliki banyak grafis dapat menyimpan resource dalam cache dan menjalankan komputasi meskipun pengguna tidak aktif berinteraksi dengan halaman.

Pekerja Bersama memungkinkan beberapa tab atau konteks ekstensi mengoordinasikan dan berbagi resource WebGPU. Hal ini menyebabkan performa yang lebih halus dan penggunaan hardware grafis pengguna yang lebih efisien.

Bug pelacakan #41494731 | Entri ChromeStatus.com | Spesifikasi

Uji coba origin sedang berlangsung

Di Chrome 124, Anda dapat ikut serta dalam uji coba origin baru berikut.

Uji coba penghentian penggunaan untuk peristiwa mutasi

Peristiwa mutasi, termasuk DOMSubtreeModified, DOMNodeInserted, DOMNodeRemoved, DOMNodeRemovedFromDocument, DOMNodeInsertedIntoDocument, dan DOMCharacterDataModified, dapat merusak performa halaman, dan juga secara signifikan meningkatkan kompleksitas dalam penambahan fitur baru ke Web. API ini tidak digunakan lagi dari spesifikasi pada tahun 2011, dan diganti (pada tahun 2012) oleh Mutation Observer API yang jauh lebih baik.

Dukungan peristiwa mutasi akan dinonaktifkan secara default mulai Chrome 127, sekitar 30 Juli 2024. Kode harus dimigrasikan ke Mutation Observer API sebelum tanggal tersebut untuk menghindari kerusakan situs. Jika perlu waktu lebih lama, daftar ke uji coba penghentian penggunaan peristiwa mutasi untuk mengaktifkan kembali fitur tersebut selama waktu yang terbatas di situs tertentu. API ini dapat digunakan hingga Chrome 134, yang berakhir pada 25 Maret 2025.

Atau, kebijakan perusahaan MutationEventsEnabled juga dapat digunakan untuk tujuan yang sama, juga melalui Chrome 134.

Uji Coba Origin | Bug pelacakan #40268638 | Entri ChromeStatus.com | Spesifikasi

Penghentian dan penghapusan

Versi Chrome ini memperkenalkan penghentian penggunaan dan penghapusan berikut. Buka ChromeStatus.com untuk melihat daftar penghentian dan penghapusan.

Tidak ada penghentian atau penghapusan di Chrome 124.

Bacaan lebih lanjut

Ingin lebih banyak? Lihat referensi tambahan ini.