Penghentian dan Penghapusan di Chrome 58

Joe Medley
Joe Medley

Di hampir setiap versi Chrome, kami melihat sejumlah pembaruan dan pada produk, kinerjanya, dan juga kemampuan web Peron. Artikel ini menjelaskan penghentian penggunaan dan penghapusan di Chrome 58, yang masih dalam versi beta per 16 Maret. Daftar ini dapat berubah sewaktu-waktu.

Mouse di Android menghentikan pengaktifan TouchEvents

Hingga Chrome 57, peristiwa mouse tingkat rendah Android di Chrome utamanya mengikuti jalur peristiwa yang dirancang untuk interaksi sentuh. Misalnya, gerakan seret {i>mouse<i} yang terjadi saat tombol mouse ditekan akan menghasilkan MotionEvents, yang dikirimkan melalui View.onTouchEvent.

Namun karena peristiwa sentuh tidak dapat mendukung pengarahan kursor, gerakan mouse yang diarahkan mengikuti jalur terpisah. Desain ini memiliki banyak efek samping termasuk interaksi mouse mengaktifkan TouchEvents, semua tombol mouse muncul sebagai tombol mouse kiri, dan MouseEvents sedang disembunyikan 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 dan properti lainnya.

Rencana Penghapusan | Pelacak Chromestatus | Bug Chromium

Hapus pencocokan yang tidak peka huruf besar/kecil untuk atribut usemap

Atribut usemap sebelumnya didefinisikan sebagai tanpa huruf besar/kecil. Sayangnya menerapkan langkah ini cukup rumit sehingga tidak ada {i>browser<i} yang menerapkannya dengan benar. Penelitian menyarankan bahwa algoritma yang rumit seperti itu tidak diperlukan, dan bahkan pencocokan huruf besar/kecil ASCII tidak diperlukan.

Karenanya, spesifikasi diperbarui sehingga pencocokan peka huruf besar/kecil diterapkan. Perilaku lama tidak digunakan lagi di Chrome 57, dan kini telah dihapus.

Rencana Penghapusan | Pelacak Chromestatus | Bug Chromium

Menghapus navigasi frame teratas yang dimulai konten ke URL data

Karena ketidaktahuan mereka terhadap pengguna {i>browser<i} non-teknis, kami semakin sering melihat skema data: yang digunakan dalam spoofing dan phishing serangan. Untuk mencegah hal ini, kami memblokir halaman web agar tidak memuat data: URL di {i>frame<i} atas. Ini berlaku untuk tag &lt;a&gt;, 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.

Rencana Penghapusan | Pelacak Chromestatus | Bug Chromium

Menghapus nama yang tidak digunakan lagi untuk properti jalur gerakan

Properti CSS jalur gerakan memungkinkan penulis menganimasikan objek grafis apa pun jalur yang ditentukan penulis. Sesuai dengan spesifikasi ini, beberapa properti diimplementasikan di Chrome 45. Nama properti ini diubah dalam spesifikasi pada pertengahan 2016. Krom 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 ini.

Properti yang Dihapus Nama Saat Ini
jalur gerak jalur-offset
gerak-offset jarak offset
rotasi-gerak putar offset
gerakan offset

Rencana Penghapusan

Menghapus EME dari konteks yang tidak aman

Beberapa penggunaan Ekstensi Media Terenkripsi (EME) mengekspos implementasi manajemen hak digital yang bukan {i>open source<i}, melibatkan akses ke ID unik persisten, dan/atau menjalankan tindakan akses istimewa. Risiko keamanan meningkat untuk situs yang terekspos melalui tindakan tidak aman HTTP karena mereka dapat diserang oleh siapa saja di saluran. Selain itu, bila persetujuan pengguna diperlukan, penerimaan yang dipertahankan untuk situs HTTP yang tidak aman dapat dieksploitasi oleh penyerang tersebut.

Dukungan untuk konteks yang tidak aman dihapus dari Spesifikasi EME versi 1 dan tidak didukung di rekomendasi yang diusulkan atau diantisipasi dalam final berikutnya. tidak akan disertakan dalam proposal rekomendasi atau rekomendasi akhir berikutnya. API telah menunjukkan pesan penghentian penggunaan pada origin yang tidak aman sejak Chrome 44 (Mei 2015). Di Chrome 58, data tersebut kini telah dihapus. Perubahan ini adalah bagian dari upaya kami yang lebih luas untuk menghapus fitur canggih dari origin yang tidak aman.

Rencana Penghapusan | Pelacak Chromestatus | Bug Chromium

Menghapus pemanggil lama untuk HTMLEmbedElement dan HTMLObjectElement

Bahwa antarmuka memiliki pemanggil lama berarti bahwa {i>instance<i} dapat dipanggil sebagai fungsi tersebut. Saat ini, HTMLEmbedElement dan HTMLObjectElement mendukung fitur ini fungsionalitasnya. Di Chrome 57, kemampuan ini tidak digunakan lagi. Mulai Chrome 58, akan menampilkan pengecualian.

Perubahan ini menyesuaikan Chrome dengan perubahan spesifikasi terbaru. Perilaku lama tidak didukung di Edge atau Safari, dan saat ini dihapus dari Firefox.

Rencana Penghapusan | Pelacak Chromestatus | Bug Chromium

Menghapus cipher ChaCha20-Poly1305 pra-standar

Pada tahun 2013, Chrome 31 men-deploy Cipher suite TLS baru berdasarkan algoritma ChaCha20 dan Poly1305 milik Prof. Dan Bernstein. Ini adalah kemudian distandarisasi, dengan sedikit perubahan, 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.

Rencana Penghapusan | Pelacak Chromestatus | Bug Chromium

Menghapus dukungan untuk pencocokan commonName di sertifikat

RFC 2818 menjelaskan dua metode untuk mencocokkan nama domain terhadap sertifikat: menggunakan nama yang tersedia dalam subjectAlternativeName, atau, jika tidak ada ekstensi SAN, kembali ke commonName. Penggantian ke commonName sebelumnya tidak digunakan lagi di RFC 2818 (diterbitkan pada tahun 2000), tetapi dukungan tetap ada dalam sejumlah Klien TLS, sering kali salah.

Penggunaan kolom subjectAlternativeName membuatnya tidak ambigu apakah sertifikat menyatakan pengikatan ke alamat IP atau nama domain, dan sepenuhnya didefinisikan dalam hal interaksinya dengan Batasan Nama. Namun, commonName bersifat ambigu. Oleh karena itu, dukungan untuk resource tersebut menjadi sumber bug keamanan di Chrome, library yang digunakannya, dan dalam ekosistem TLS secara keseluruhan.

Risiko kompatibilitas untuk menghapus commonName rendah. RFC 2818 memiliki tidak digunakan lagi selama hampir dua dekade, dan persyaratan dasar pengukuran (yang harus dipatuhi oleh semua certificate authority tepercaya publik) telah diwajibkan keberadaan subjectAltName sejak tahun 2012. Firefox sudah memerlukan subjectAltName untuk sertifikat tepercaya publik yang baru diterbitkan sejak Firefox 48.

Rencana Penghapusan | Pelacak Chromestatus | Bug Chromium

Elemen antarmuka regions, addRegion(), dan removeRegion(), telah dihapus dari spesifikasi WebVTT dan dihapus di Chrome 58 untuk mematuhi spesifikasi terbaru. Kami memperkirakan hanya akan ada sedikit dampak dari penghapusan ini karena fitur tidak pernah diaktifkan secara {i>default<i} (artinya di belakang flag). Pengguna yang memerlukan alternatif dapat menggunakan 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 dibangun, dan tidak memiliki atribut sehingga pada dasarnya tidak memiliki fungsionalitas yang mudah diakses. Oleh karena itu, sedang dihapus.

Rencana Penghapusan | Pelacak Chromestatus | Bug Chromium

Menghapus atribut global webkitdropzone

Atribut global dropzone diperkenalkan oleh Spesifikasi tarik lalu lepas HTML5 sebagai metode deklaratif untuk menentukan apakah elemen HTML bersedia target operasi tarik lalu lepas, jenis konten yang dapat dilepas elemen, dan operasi tarik lalu lepas (salin/pindahkan/link).

Atribut ini gagal menarik perhatian vendor browser. Blink dan WebKit hanya terapkan bentuk atribut berawalan, webkitdropzone. Karena Atribut dropzone dihapus dari spesifikasi dalam awal Maret 2017 versi berawalan akan dihapus dari Chrome.

Rencana Penghapusan | Pelacak Chromestatus | Bug Chromium

Menghentikan penggunaan notifikasi yang tidak aman

Notifikasi adalah fitur yang canggih karena memungkinkan situs memanggil sistem UI untuk mengirimkan informasi pribadi itu sendiri atau sinyal pribadi yang informasi telah diubah. Penyerang dapat mengendus atau mencuri informasi yang dikirimkan melalui notifikasi melalui koneksi yang tidak aman. Web push memerlukan sehingga perubahan ini akan menyelaraskan notifikasi non-push dengan push notifikasi. Perubahan ini adalah bagian dari upaya kami yang lebih luas untuk menghapus fitur canggih dari origin yang tidak aman.

Rencana Penghapusan | Pelacak Chromestatus | Bug Chromium

Menghentikan penggunaan notifikasi dari iframe yang tidak aman

Permintaan izin dari iframe dapat membingungkan pengguna karena sulit untuk membedakan antara asal halaman yang memuat dan asal iframe yang membuat permintaan. Ketika cakupan permintaan tidak jelas, sulit bagi pengguna untuk menilai apakah akan memberikan atau menolak izin.

Melarang notifikasi dalam iframe juga akan memenuhi persyaratan izin notifikasi dengan notifikasi push, yang memudahkan developer.

Developer yang memerlukan fungsi ini dapat membuka jendela baru untuk meminta izin notifikasi.

Penghapusan dilakukan di Chrome 62.

Rencana Penghapusan | Pelacak Chromestatus | Bug Chromium

Menghapus indexedDB.webkitGetDatabaseNames()

Kami menambahkan fitur ini saat Indexed DB relatif baru di Chrome dan memberikan awalan itu semua. API secara asinkron menampilkan daftar database yang ada nama dalam suatu asal, yang tampak cukup masuk akal.

Sayangnya, desain ini cacat, sehingga hasilnya mungkin akan segera usang ketika dikembalikan, sehingga hanya dapat digunakan untuk pencatatan, tidak logika aplikasi. Tujuan masalah github jalur/link ke diskusi sebelumnya tentang berbagai alternatif, yang memerlukan pendekatan berbeda. Meskipun ada minat aktif dan nonaktif oleh pengembang, mengingat kurangnya kemajuan {i>browser<i} masalah telah diselesaikan oleh penulis {i>library<i}.

Developer yang memerlukan fungsi ini harus mengembangkan solusi mereka sendiri. Misalnya, library seperti Dexie.js menggunakan tabel global yang merupakan {i>database<i} lain untuk melacak nama-nama {i>database<i}.

Fitur ini dihapus di Chrome 60.

Rencana Penghentian Penggunaan | Pelacak Chromestatus | Bug Chromium