Chrome 139

Tanggal rilis stabil: 5 Agustus 2025

Kecuali dinyatakan lain, perubahan berikut berlaku untuk rilis saluran stabil Chrome 139 untuk Android, ChromeOS, Linux, macOS, dan Windows.

CSS dan UI

Membuat var() dan attr() menjadi tidak berfungsi

Jika penggantian tidak dilakukan, fungsi var() dan attr() akan dievaluasi tanpa mencari siklus dalam penggantian tersebut.

Entri ChromeStatus.com

Mendukung deskriptor font-feature-settings dalam aturan @font-face

Fitur ini mendukung sintaksis berbasis string untuk font-feature-settings sebagaimana ditentukan dalam CSS Fonts Level 4. Tag fitur yang tidak valid atau tidak dikenali akan diabaikan sesuai spesifikasi. Tidak ada formulir biner atau non-standar yang didukung.

Seiring dengan makin banyaknya penggunaan font OpenType, peningkatan ini akan meningkatkan kontrol tipografi, mengurangi redundansi, dan mendukung pendekatan desain web yang lebih terukur dan modern.

Melacak bug #40398871 | Entri ChromeStatus.com | Spesifikasi

Fungsi kustom CSS

Fungsi kustom serupa dengan properti kustom, tetapi alih-alih menampilkan satu nilai tetap, fungsi ini menampilkan nilai berdasarkan properti kustom, parameter, dan kondisi lainnya.

Bug pelacakan #325504770 | Entri ChromeStatus.com | Spesifikasi

Terus jalankan transisi saat beralih ke nilai transisi awal

Saat properti terkait transisi berubah, properti tersebut hanya akan memengaruhi transisi yang baru dimulai. Artinya, jika Anda mengubah properti transisi, kecuali jika Anda juga mengubah properti yang memiliki animasi transisi aktif, animasi transisi tersebut akan berlanjut dengan durasi dan easing yang ditentukan sebelumnya.

Chrome secara keliru membatalkan transisi saat properti transisi disetel ke none, meskipun tidak membatalkannya jika Anda hanya mengubah transition-duration. Perubahan ini membuat Chrome konsisten dengan Safari dan Firefox, sehingga transisi aktif dapat terus berjalan, hingga nilai propertinya berubah yang memicu update transisi baru.

Entri ChromeStatus.com | Spesifikasi

Pembentukan sudut (corner-shape, superellipse, squircle)

Aktifkan sudut gaya, di atas border-radius yang ada, dengan mengekspresikan bentuk dan kelengkungan sudut sebagai superelips.

Hal ini memungkinkan bentuk seperti squircle, notch, dan scoop, serta menganimasikannya.

Melacak bug #393145930 | Entri ChromeStatus.com | Spesifikasi

Tambahkan properti dan deskriptor font-width, lalu jadikan font-stretch sebagai alias lama

Mendukung atribut asinkron untuk elemen SVG <script>

Antarmuka SVGScriptElement di SVG 2.0 memperkenalkan atribut async, mirip dengan HTMLScriptElement. Atribut ini memungkinkan skrip dieksekusi secara asinkron, sehingga meningkatkan performa dan responsivitas aplikasi web yang menggunakan SVG.

Melacak bug #40067618 | Entri ChromeStatus.com | Spesifikasi

Perintah pemanggil request-close

Elemen dialog dapat ditutup melalui berbagai mekanisme, terkadang developer ingin memiliki kemampuan untuk mencegah penutupan. Untuk mencapai hal ini, dialog memicu peristiwa pembatalan. Awalnya, peristiwa ini hanya dipicu melalui permintaan penutupan (misalnya, penekanan tombol ESC), baru-baru ini fungsi JavaScript requestClose() ditambahkan yang juga memicu peristiwa pembatalan.

Perintah request-close menghadirkan kemampuan baru tersebut ke API perintah pemanggil deklaratif.

Bug pelacakan #400647849 | Entri ChromeStatus.com | Spesifikasi

Perbaikan kandidat prioritas penahan scroll

Mengubah algoritma penambatan scroll. Daripada memilih kandidat prioritas sebagai penanda, pilih kandidat sebagai cakupan atau root algoritma pemilihan penanda reguler yang akan memilih elemen terdalam di layar sebagai penanda.

Entri ChromeStatus.com

Perangkat

Peningkatan performa penginderaan kedalaman WebXR

Mengekspos beberapa mekanisme baru untuk menyesuaikan perilaku fitur penginderaan kedalaman dalam sesi WebXR, dengan tujuan meningkatkan performa pembuatan atau penggunaan buffer kedalaman.

Mekanisme utama yang diekspos adalah: kemampuan untuk meminta buffer kedalaman mentah atau yang dihaluskan, kemampuan untuk meminta runtime menghentikan atau melanjutkan penyediaan buffer kedalaman, dan kemampuan untuk mengekspos buffer kedalaman yang tidak selaras dengan tampilan pengguna secara persis, sehingga agen pengguna tidak perlu melakukan proyeksi ulang yang tidak perlu setiap frame.

Melacak bug #410607163 | Entri ChromeStatus.com | Spesifikasi

DOM

Mengizinkan lebih banyak karakter di JavaScript DOM API

Parser HTML selalu (atau untuk waktu yang lama) mengizinkan elemen dan atribut memiliki berbagai karakter dan nama yang valid, tetapi API DOM JavaScript untuk membuat elemen dan atribut yang sama lebih ketat dan tidak cocok dengan parser.

Perubahan ini melonggarkan validasi API DOM javascript agar sesuai dengan parser HTML.

Melacak bug #40228234 | Entri ChromeStatus.com | Spesifikasi

Grafik

WebGPU: Dukungan tekstur 3D untuk format terkompresi BC dan ASTC

Fitur WebGPU texture-compression-bc-sliced-3d dan texture-compression-astc-sliced-3d masing-masing menambahkan dukungan tekstur 3D untuk format yang dikompresi BC dan ASTC.

Melacak bug #342840940 | Entri ChromeStatus.com | Spesifikasi

Konfirmasi Pembayaran Aman (SPC)

securePaymentConfirmationAvailability API

Ini adalah JavaScript API untuk menyediakan cara yang lebih mudah untuk memeriksa apakah fitur Secure Payment Confirmation (SPC) tersedia. Dengan API ini, satu-satunya cara untuk menentukan ketersediaan SPC adalah dengan membuat PaymentRequest dengan parameter yang diperlukan, yang rumit dan sulit jika developer ingin memeriksa SPC sebelum mulai memproses pembayaran.

Melacak bug #40258712 | Entri ChromeStatus.com | Spesifikasi

Konfirmasi Pembayaran Aman: Kunci Terikat Browser

Menambahkan tanda tangan kriptografi tambahan pada pernyataan dan pembuatan kredensial Konfirmasi Pembayaran Aman. Kunci pribadi yang sesuai tidak disinkronkan di seluruh perangkat. Hal ini membantu developer web memenuhi persyaratan untuk pengikatan perangkat untuk transaksi pembayaran.

Bug pelacakan #377278827 | Entri ChromeStatus.com | Spesifikasi

AI di perangkat

Web Speech API di perangkat

Fitur ini menambahkan dukungan pengenalan ucapan di perangkat ke Web Speech API, sehingga situs dapat memastikan bahwa audio maupun ucapan yang ditranskripsikan tidak dikirim ke layanan pihak ketiga untuk diproses.

Situs dapat mengkueri ketersediaan pengenalan ucapan di perangkat untuk bahasa tertentu, meminta pengguna menginstal resource yang diperlukan untuk pengenalan ucapan di perangkat, dan memilih antara pengenalan ucapan di perangkat atau berbasis cloud sesuai kebutuhan.

Entri ChromeStatus.com | Spesifikasi

Menghapus nama jendela untuk navigasi lintas situs yang mengganti grup konteks penjelajahan

Menghapus nilai properti window.name saat navigasi mengalihkan grup konteks penjelajahan, untuk menghindari kebocoran informasi yang dapat digunakan sebagai vektor pelacakan.

Bug pelacakan #1090128 | Entri ChromeStatus.com | Spesifikasi

Jaringan

Mengurangi pembuatan sidik jari dalam informasi header Accept-Language

Mengurangi jumlah informasi yang diekspos oleh string nilai header Accept-Language dalam permintaan HTTP dan di navigator.languages. Daripada mengirim daftar lengkap bahasa pilihan pengguna pada setiap permintaan HTTP menggunakan header Accept-Language, Chrome hanya mengirim bahasa pilihan pengguna yang paling utama.

Bug pelacakan #1306905 | Entri ChromeStatus.com

Mengacak alokasi port TCP di Windows

Peluncuran ini mengaktifkan pengacakan port TCP di versi Windows (2020 atau yang lebih baru) yang tidak kami perkirakan akan mengalami masalah dengan penggunaan ulang port sebelumnya yang terjadi terlalu cepat (sehingga menyebabkan penolakan karena waktu tunggu habis saat penggunaan ulang port). Masalah penggunaan ulang port yang cepat muncul dari masalah Ulang Tahun, di mana probabilitas memilih ulang port secara acak yang sudah terlihat dengan cepat menyatu dengan 100% untuk setiap port baru yang dipilih jika dibandingkan dengan penggunaan ulang port dalam model berurutan.

Melacak bug #40744069 | Entri ChromeStatus.com

Performa

Pembekuan latar belakang yang lebih cepat di Android

Memperpendek waktu untuk membekukan halaman latar belakang (dan pekerja terkait) dari lima menit menjadi satu menit di Android.

Melacak bug #435623337 | Entri ChromeStatus.com

Keamanan

Mengaktifkan peristiwa error untuk worker yang diblokir Kebijakan Keamanan Konten (CSP)

Membuat Chrome mematuhi spesifikasi, memeriksa CSP selama pengambilan dan memicu peristiwa error secara asinkron, bukan menampilkan pengecualian saat skrip menjalankan "new Worker(url)" atau "new SharedWorker(url)".

Bug pelacakan #41285169 | Entri ChromeStatus.com | Spesifikasi

WebRTC

Level audio untuk frame yang dienkode RTC

Fitur ini mengekspos ke web tingkat audio frame yang dienkode yang ditransmisikan menggunakan RTCPeerConnection dan diekspos menggunakan transformasi yang dienkode WebRTC.

Bug pelacakan #418116079 | Entri ChromeStatus.com | Spesifikasi

Web API

Ekstensi cakupan aplikasi web

Menambahkan kolom manifes aplikasi web scope_extensions yang memungkinkan aplikasi web memperluas cakupannya ke origin lain.

Hal ini memungkinkan situs yang mengontrol beberapa subdomain dan domain tingkat teratas ditampilkan sebagai satu aplikasi web.

Mewajibkan asal yang tercantum untuk mengonfirmasi pengaitan dengan aplikasi web menggunakan file konfigurasi .well-known/web-app-origin-association.

Bug pelacakan #detail?id=1250011 | Entri ChromeStatus.com | Spesifikasi

Deteksi jenis MIME JSON yang sesuai dengan spesifikasi

Chrome kini mengenali semua jenis MIME JSON yang valid sebagaimana ditentukan oleh spesifikasi mimesniff WHATWG. Ini mencakup jenis MIME apa pun yang subjenisnya diakhiri dengan +json, selain application/json dan text/json. Perubahan ini memastikan bahwa API dan fitur web yang mengandalkan deteksi JSON berperilaku secara konsisten dengan standar platform web dan browser lainnya.

Entri ChromeStatus.com | Spesifikasi

WebGPU core-features-and-limits

Fitur core-features-and-limits menandakan bahwa adaptor dan perangkat WebGPU mendukung fitur dan batas inti spesifikasi.

Melacak bug #418025721 | Entri ChromeStatus.com | Spesifikasi

Crash Reporting API: Tentukan crash-reporting untuk hanya menerima laporan error

Fitur ini memastikan developer hanya menerima laporan error dengan menentukan endpoint bernama crash-reporting. Secara default, laporan error dikirimkan ke endpoint default yang menerima banyak jenis laporan selain laporan error. Developer dapat menyediakan URL terpisah ke endpoint terkenal bernama crash-reporting, untuk mengarahkan laporan error ke sana, bukan ke endpoint default.

Melacak bug #414723480 | Entri ChromeStatus.com | Spesifikasi

Uji coba origin

Prompt API

API yang dirancang untuk berinteraksi dengan model bahasa AI menggunakan input teks, gambar, dan audio. Gemini mendukung berbagai kasus penggunaan, mulai dari membuat teks gambar dan melakukan penelusuran visual hingga mentranskripsikan audio, mengklasifikasikan peristiwa suara, membuat teks yang mengikuti petunjuk tertentu, dan mengekstrak informasi atau insight dari teks. Output terstruktur didukung untuk memastikan bahwa respons mematuhi format yang telah ditentukan sebelumnya, biasanya dinyatakan sebagai skema JSON, untuk meningkatkan kesesuaian respons dan memfasilitasi integrasi yang lancar dengan aplikasi hilir yang memerlukan format output standar.

API ini juga diekspos di Ekstensi Chrome. Entri fitur ini melacak eksposur di web. Kebijakan Enterprise (GenAILocalFoundationalModelSettings) tersedia untuk menonaktifkan download model dasar yang akan membuat API ini tidak tersedia.

Uji Coba Origin | Postingan blog uji coba origin | Bug pelacakan #417530643 | Entri ChromeStatus.com

Masa aktif pekerja bersama yang diperpanjang

Hal ini menambahkan opsi baru, extendedLifetime: true, ke konstruktor SharedWorker. Permintaan ini meminta agar shared worker tetap aktif meskipun semua klien saat ini telah dibongkar. Kasus penggunaan utamanya adalah memungkinkan halaman melakukan pekerjaan asinkron yang memerlukan JavaScript setelah halaman dibatalkan pemuatannya, tanpa perlu mengandalkan pekerja layanan.

Uji Coba Origin | Postingan blog uji coba origin | Bug pelacakan #400473072 | Entri ChromeStatus.com

Entri performa SoftNavigation

Mengekspos heuristik navigasi lembut (eksperimental) kepada developer web, menggunakan PerformanceObserver dan linimasa performa.

Fitur ini melaporkan dua entri performa baru:

  • soft-navigation, untuk interaksi pengguna yang menavigasi halaman. Menentukan timeOrigin baru untuk membantu membagi linimasa performa.
  • interaction-contentful-paint, yang melaporkan performa pemuatan interaksi (tidak hanya paint berikutnya), digunakan sebagai LCP untuk navigasi ringan.

Uji Coba Asal | Postingan blog uji coba asal | Melacak bug #1338390 | Entri ChromeStatus.com | Spesifikasi

Mediasi langsung Web Authentication

Mode mediasi untuk navigator.credentials.get() yang menyebabkan UI login browser ditampilkan kepada pengguna jika ada kunci sandi atau sandi untuk situs yang langsung diketahui oleh browser. Jika tidak, metode ini akan menolak dengan NotAllowedError jika tidak ada kredensial tersebut. Hal ini memungkinkan situs menghindari menampilkan halaman login jika browser dapat menawarkan pilihan kredensial login yang kemungkinan berhasil, sekaligus tetap mengizinkan alur halaman login untuk kasus saat tidak ada kredensial tersebut.

Bug pelacakan #408002783 | Entri ChromeStatus.com | Spesifikasi

Atribut pemblokiran rendering kecepatan frame penuh

Menambahkan token pemblokiran rendering baru dengan kecepatan frame penuh ke atribut pemblokiran. Jika diblokir dengan token kecepatan frame penuh, perender akan bekerja pada kecepatan frame yang lebih rendah sehingga dapat mencadangkan lebih banyak resource untuk pemuatan.

Uji Coba Origin | Bug pelacakan #397832388 | Entri ChromeStatus.com

Mode kompatibilitas WebGPU

Menambahkan subset API WebGPU yang bersifat opt-in dan dibatasi ringan yang mampu menjalankan API grafis lama seperti OpenGL dan Direct3D11. Dengan memilih untuk menggunakan mode ini dan mematuhi batasannya, developer dapat memperluas jangkauan aplikasi WebGPU mereka ke banyak perangkat lama yang tidak memiliki API grafis modern dan eksplisit yang diperlukan WebGPU inti.

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

Penghentian penggunaan dan penghapusan

Berhenti mengirim header pengambilan data awal Tujuan: pengambilan data awal dari pengambilan data awal dan pra-render

Sekarang setelah pengambilan data dan pra-render menggunakan header Sec-Purpose untuk pengambilan data dan pra-render, kita akan menghapus header pengambilan data Purpose: prefetch lama yang masih diteruskan saat ini. Hal ini akan berada di balik tombol nonaktif/ flag fitur untuk mencegah masalah kompatibilitas.

Hal ini akan dicakup ke pengambilan data aturan spekulasi, pra-render aturan spekulasi, <link rel=prefetch>, dan <link rel=prerender> non-standar Chrome.

Melacak bug #420724819 | Entri ChromeStatus.com | Spesifikasi

Menghapus dukungan untuk macOS 11

Chrome 138 adalah rilis terakhir yang mendukung macOS 11. Mulai Chrome 139, macOS 11 tidak didukung.

Di Mac yang menjalankan macOS 11, Chrome akan terus berfungsi dan menampilkan kolom info peringatan, tetapi tidak akan mendapatkan pembaruan lagi. Untuk mengupdate Chrome, Anda harus mengupdate software komputernya ke versi macOS yang didukung.

Untuk penginstalan baru dari Chrome 139, diperlukan macOS 12 atau yang lebih baru.

Entri ChromeStatus.com

Menghapus deteksi otomatis charset ISO-2022-JP di HTML

Ada masalah keamanan yang diketahui terkait deteksi otomatis charset untuk ISO-2022-JP. Mengingat penggunaannya sangat rendah, dan Safari tidak mendukung deteksi otomatis ISO-2022-JP, dukungan dihapus dari Chrome 139.

Melacak bug #40089450 | Entri ChromeStatus.com