Di hampir setiap versi Chrome, kami melihat sejumlah besar update dan peningkatan pada produk, performanya, dan juga kemampuan Platform Web. Artikel ini menjelaskan penghentian dan penghapusan di Chrome 58, yang masih dalam versi beta per 16 Maret. Daftar ini dapat berubah sewaktu-waktu.
Mouse di Android berhenti memicu TouchEvents
Hingga Chrome 57, peristiwa mouse tingkat rendah Android di Chrome terutama mengikuti
jalur peristiwa yang dirancang untuk interaksi sentuh. Misalnya, gerakan tarik mouse yang terjadi saat
tombol mouse ditekan akan menghasilkan MotionEvents
, yang dikirim melalui
View.onTouchEvent
.
Namun, karena peristiwa sentuh tidak dapat mendukung pengarahan kursor, pengarahan kursor mousemove mengikuti
jalur terpisah. Desain ini memiliki banyak efek samping, termasuk interaksi mouse
yang memicu TouchEvents
, semua tombol mouse yang muncul sebagai tombol mouse kiri, dan
MouseEvents
yang ditekan oleh TouchEvents
.
Mulai Chrome 58, mouse di Android M atau yang lebih baru akan:
- Tidak lagi mengaktifkan
TouchEvents
. - Aktifkan urutan
MouseEvents
yang konsisten dengan tombol yang sesuai dan properti lainnya.
Intent to Remove | Chromestatus Tracker | Chromium Bug
Menghapus pencocokan tidak peka huruf besar/kecil untuk atribut usemap
Atribut usemap
sebelumnya ditentukan sebagai tidak peka huruf besar/kecil. Sayangnya,
implementasi ini cukup rumit sehingga tidak ada browser yang menerapkannya
dengan benar. Riset menunjukkan bahwa algoritma yang rumit seperti itu tidak diperlukan,
dan bahkan pencocokan ASCII yang tidak peka huruf besar/kecil tidak diperlukan.
Oleh karena itu, spesifikasi diperbarui sehingga pencocokan peka huruf besar kecil diterapkan. Perilaku lama tidak digunakan lagi di Chrome 57, dan sekarang dihapus.
Intent to Remove | Chromestatus Tracker | Chromium Bug
Menghapus navigasi frame atas yang dimulai konten ke URL data
Karena tidak dikenal oleh pengguna browser non-teknis, kami
semakin sering melihat skema data:
digunakan dalam serangan spoofing dan phishing. Untuk mencegah hal ini, kami memblokir halaman web agar tidak memuat URL data:
di frame atas. Hal ini berlaku untuk tag <a>
, window.open
,
window.location
, dan mekanisme serupa. Skema data:
akan tetap berfungsi untuk
resource yang dimuat di bawah oleh halaman.
Fitur ini akan dihapus di Chrome 60.
Intent to Remove | Chromestatus Tracker | Chromium Bug
Menghapus nama yang tidak digunakan lagi untuk properti jalur gerakan
Properti CSS jalur gerakan memungkinkan penulis menganimasikan objek grafis apa pun di sepanjang jalur yang ditentukan penulis. Sesuai dengan spesifikasi, beberapa properti diterapkan di Chrome 45. Nama properti ini diubah dalam spesifikasi pada pertengahan 2016. Chrome menerapkan nama baru di Chrome 55 dan Chrome 56. Peringatan penghentian penggunaan konsol juga diterapkan.
Di Chrome 58, nama properti lama akan dihapus. Properti yang terpengaruh dan nama barunya ditampilkan di bawah.
Properti yang Dihapus | Nama Saat Ini |
---|---|
motion-path | offset-path |
motion-offset | offset-distance |
rotasi-gerakan | offset-rotate |
gerakan | offset |
Menghapus EME dari konteks yang tidak aman
Beberapa penggunaan Encrypted Media Extensions (EME) mengekspos implementasi pengelolaan hak digital yang bukan open source, melibatkan akses ke ID unik persisten, dan/atau berjalan tanpa sandbox atau dengan akses dengan hak istimewa. Risiko keamanan meningkat untuk situs yang diekspos melalui HTTP tidak aman karena dapat diserang oleh siapa saja di saluran tersebut. Selain itu, jika izin pengguna diperlukan, penerimaan yang dipertahankan untuk situs HTTP yang tidak aman dapat dieksploitasi oleh penyerang tersebut.
Dukungan untuk konteks tidak aman telah dihapus dari spesifikasi EME versi 1 dan tidak didukung dalam rekomendasi yang diusulkan atau diantisipasi dalam versi final berikutnya. tidak akan ada dalam rekomendasi yang diusulkan mendatang atau rekomendasi final berikutnya. API ini telah menampilkan pesan penghentian penggunaan di origin yang tidak aman sejak Chrome 44 (Mei 2015). Di Chrome 58, fitur ini kini dihapus. Perubahan ini adalah bagian dari upaya kami yang lebih luas untuk menghapus fitur canggih dari origin yang tidak aman.
Intent to Remove | Chromestatus Tracker | Chromium Bug
Menghapus pemanggil lama untuk HTMLEmbedElement dan HTMLObjectElement
Antarmuka yang memiliki pemanggil lama berarti instance dapat dipanggil sebagai
fungsi. Saat ini, HTMLEmbedElement
dan HTMLObjectElement
mendukung
fungsi ini. Di Chrome 57, kemampuan ini tidak digunakan lagi. Mulai Chrome 58,
panggilan akan menampilkan pengecualian.
Perubahan ini membuat Chrome selaras dengan perubahan spesifikasi terbaru. Perilaku lama tidak didukung di Edge atau Safari, dan sedang dihapus dari Firefox.
Intent to Remove | Chromestatus Tracker | Chromium Bug
Menghapus cipher ChaCha20-Poly1305 pra-standar
Pada tahun 2013, Chrome 31 men-deploy cipher suite TLS baru berdasarkan algoritma ChaCha20 dan Poly1305 Prof. Dan Bernstein. Hal ini kemudian distandardisasi, dengan sedikit penyesuaian, di IETF sebagai RFC 7539 dan RFC 7905. Kami meluncurkan varian standar pada awal tahun 2016 dengan Chrome 49. Sekarang kami menghapus varian pra-standar.
Intent to Remove | Chromestatus Tracker | Chromium Bug
Menghapus dukungan untuk pencocokan commonName dalam sertifikat
RFC 2818 menjelaskan dua metode untuk mencocokkan nama domain dengan sertifikat: menggunakan nama yang tersedia dalam ekstensi subjectAlternativeName
, atau, jika tidak ada ekstensi SAN, kembali ke commonName
. Penggantian ke commonName
tidak digunakan lagi di RFC 2818 (dipublikasikan pada tahun 2000), tetapi dukungan tetap ada di sejumlah
klien TLS, sering kali salah.
Penggunaan kolom subjectAlternativeName
membuat tidak ambigu apakah
sertifikat menyatakan binding ke alamat IP atau nama domain, dan
ditentukan sepenuhnya dalam hal interaksinya dengan Batasan Nama. Namun, commonName
bersifat ambigu, dan karenanya, dukungan untuknya telah menjadi sumber
bug keamanan di Chrome, library yang digunakannya, dan dalam ekosistem TLS
secara keseluruhan.
Risiko kompatibilitas untuk menghapus commonName
rendah. RFC 2818 telah
tidak lagi menggunakannya selama hampir dua dekade, dan
persyaratan dasar
(yang harus dipatuhi oleh semua certificate authority tepercaya publik) telah mewajibkan
adanya subjectAltName
sejak tahun 2012. Firefox sudah mewajibkan
subjectAltName
untuk setiap sertifikat tepercaya publik yang baru diterbitkan sejak
Firefox 48.
Intent to Remove | Chromestatus Tracker | Chromium Bug
Bit TextTrack terkait VTTRegion
Elemen antarmuka regions
, addRegion()
, dan removeRegion()
telah
dihapus dari spesifikasi WebVTT dan dihapus di Chrome 58 untuk mematuhi
spesifikasi terbaru. Kami memperkirakan sedikit dampak dari
penghapusan ini karena fitur tersebut tidak pernah diaktifkan secara default (artinya fitur tersebut
ada di balik tanda). Pengguna yang memerlukan alternatif dapat menggunakan properti VTTCue.region
yang ditambahkan di Chrome 58.
Pelacak Chromestatus | Bug Chromium
WebAudio: menghapus antarmuka AudioSourceNode
Antarmuka AudioSourceNode
bukan bagian dari
spesifikasi Audio Web,
tidak dapat dibuat, dan tidak memiliki atribut sehingga pada dasarnya tidak memiliki fungsi yang dapat diakses
developer. Oleh karena itu, video tersebut dihapus.
Intent to Remove | Chromestatus Tracker | Chromium Bug
Menghapus atribut global webkitdropzone
Atribut global dropzone
diperkenalkan oleh
spesifikasi tarik lalu lepas HTML5
sebagai metode deklaratif untuk menentukan kesediaan elemen HTML menjadi
target operasi tarik lalu lepas, jenis konten yang dapat dilepas ke
elemen, dan operasi tarik lalu lepas (salin/pindahkan/tautkan).
Atribut ini gagal mendapatkan daya tarik di kalangan vendor browser. Blink dan WebKit
hanya menerapkan bentuk atribut berawalan, webkitdropzone
. Karena
atribut dropzone
dihapus dari spesifikasi pada
awal Maret 2017,
versi dengan awalan dihapus dari Chrome.
Intent to Remove | Chromestatus Tracker | Chromium Bug
Menghentikan penggunaan notifikasi yang tidak aman
Notifikasi adalah fitur yang canggih karena memungkinkan situs memanggil UI sistem untuk mengirimkan informasi pribadi itu sendiri atau sinyal bahwa informasi pribadi telah diubah. Penyerang dapat menyadap atau mencuri informasi apa pun yang dikirim melalui notifikasi melalui koneksi yang tidak aman. Push web memerlukan origin yang aman, sehingga perubahan ini akan menyelaraskan notifikasi non-push dengan notifikasi push. Perubahan ini adalah bagian dari upaya kami yang lebih luas untuk menghapus fitur canggih dari origin yang tidak aman.
Intent to Remove | Chromestatus Tracker | Chromium Bug
Menghentikan penggunaan notifikasi dari iframe yang tidak aman
Permintaan izin dari iframe dapat membingungkan pengguna karena sulit untuk membedakan antara asal halaman yang berisi dan asal iframe yang membuat permintaan. Jika cakupan permintaan tidak jelas, akan sulit bagi pengguna untuk menilai apakah akan memberikan atau menolak izin.
Tidak mengizinkan notifikasi di iframe juga akan menyelaraskan persyaratan untuk izin notifikasi dengan notifikasi push, sehingga mengurangi hambatan bagi developer.
Developer yang memerlukan fungsi ini dapat membuka jendela baru untuk meminta izin notifikasi.
Penghapusan dilakukan di Chrome 62.
Intent to Remove | Chromestatus Tracker | Chromium Bug
Menghapus indexedDB.webkitGetDatabaseNames()
Kami menambahkan fitur ini saat Indexed DB relatif baru di Chrome dan penggunaan awalan sedang populer. API secara asinkron menampilkan daftar nama database yang ada di origin, yang tampaknya cukup masuk akal.
Sayangnya, desain ini memiliki kekurangan, karena hasilnya mungkin sudah tidak berlaku begitu ditampilkan, sehingga hanya dapat digunakan untuk logging, bukan logika aplikasi yang serius. Masalah GitHub melacak/menautkan ke diskusi sebelumnya tentang alternatif, yang akan memerlukan pendekatan yang berbeda. Meskipun ada minat yang terus-menerus dari developer, mengingat kurangnya kemajuan lintas browser, masalah ini telah diatasi oleh penulis library.
Developer yang memerlukan fungsi ini harus mengembangkan solusi mereka sendiri. Library seperti Dexie.js misalnya menggunakan tabel global yang merupakan database lain untuk melacak nama database.
Fitur ini dihapus di Chrome 60.