Penghentian dan Penghapusan API di Chrome 53

Joe Medley
Joe Medley

Di hampir setiap versi Chrome, kami melihat sejumlah update dan peningkatan yang signifikan pada produk, performanya, dan juga kemampuan Platform Web. Artikel ini menjelaskan perubahan di Chrome 52, yang masih dalam versi beta per 9 Juni. Daftar ini dapat berubah sewaktu-waktu.

Cipher berbasis DHE dihentikan

TL;DR: Cipher berbasis DHE dihapus di Chrome 53 versi desktop karena tidak memadai untuk penggunaan jangka panjang. Server harus menggunakan ECDHE, jika tersedia, atau penyandian RSA biasa jika tidak tersedia.

Intent untuk Menghapus | Pelacak Chromestatus | Bug Chromium

Tahun lalu, Chrome menggunakan ukuran grup TLS Diffie-Hellman minimum dari 512-bit hingga 1024-bit; namun, 1024-bit tidak cukup untuk jangka panjang. Metrik melaporkan bahwa sekitar 95% koneksi DHE yang dilihat oleh Chrome menggunakan DHE 1024-bit. Hal ini, ditambah dengan cara DHE dinegosiasikan di TLS, menyulitkan untuk berpindah melewati 1024-bit.

Meskipun ada draf spesifikasi yang memperbaiki masalah ini, namun hal ini masih draf dan memerlukan perubahan pada klien dan server. Sementara itu, ECDHE sudah diimplementasikan dan di-deploy secara luas. Server harus diupgrade ke ECDHE jika tersedia. Jika tidak, pastikan cipher suite RSA biasa diaktifkan.

Cipher berbasis DHE sudah tidak digunakan lagi sejak Chrome 51. Dukungan dihapus dari desktop di Chrome 53.

Peringatan penghentian penggunaan FileError

TL;DR: Penghapusan antarmuka FileError yang tidak digunakan lagi diharapkan di Chrome 54. Ganti referensi ke err.code dengan err.name dan err.message.

Intent untuk Menghapus | Pelacak Chromestatus | Bug Chromium

Versi standar File API saat ini tidak berisi antarmuka FileError dan dukungannya tidak digunakan lagi pada tahun 2013. Di Chrome 53, peringatan penghentian ini akan dicetak ke konsol DevTools:

'FileError' tidak digunakan lagi dan akan dihapus dalam versi 54. Gunakan atribut error 'name' atau 'message', bukan 'code'.

Hal ini memiliki efek yang berbeda dalam konteks yang berbeda.

  • FileReader.error dan FileWriter.error akan menjadi objek DOMException, bukan objek FileError.
  • Untuk panggilan FileSystem asinkron, ErrorCallback akan diteruskan FileError.ErrorCode, bukan FileError.
  • Untuk sinkron, panggilan FileSystem FileError.ErrorCode akan ditampilkan, bukan FileError.

Perubahan ini hanya memengaruhi kode yang mengandalkan perbandingan kode instance error (e.code) secara langsung dengan nilai enum FileError (FileError.NOT_FOUND_ERR, dll). Kode yang diuji terhadap konstanta hard code (misalnya e.code === 1) dapat gagal dengan melaporkan error yang salah kepada pengguna.

Untungnya, jenis error FileError, DOMError, dan DOMException sama-sama menggunakan properti name dan message yang memberikan nama yang konsisten untuk kasus error (dengan kata lain, e.name === "NotFoundError"). Kode harus menggunakan properti tersebut, yang akan berfungsi di berbagai browser dan terus berfungsi setelah antarmuka FileError itu sendiri telah dihapus.

Penghapusan FileError diperkirakan akan menghapus Chrome 54.

Hapus atribut hasil untuk <input type=search>

TL;DR: Atribut results dihapus karena bukan bagian dari standar apa pun dan tidak diterapkan secara konsisten di seluruh browser.

Intent untuk Menghapus | Pelacak Chromestatus | Bug Chromium

Nilai results hanya diterapkan di webkit dan berperilaku sangat tidak konsisten pada nilai yang digunakan. Misalnya, Chrome menambahkan ikon kaca pembesar ke kotak input, sedangkan di desktop Safari, nilai ini mengontrol berapa banyak penelusuran sebelumnya yang ditampilkan dalam pop-up yang ditampilkan dengan mengklik ikon kaca pembesar. Karena bukan bagian dari standar, hal ini tidak digunakan lagi.

Jika masih perlu menyertakan ikon penelusuran di kolom input, Anda harus menambahkan beberapa gaya kustom ke elemen. Anda dapat melakukannya dengan menyertakan gambar latar dan menentukan padding kiri pada kolom input.

    input[type=search] {
      background: url(some-great-icon.png) no-repeat scroll 15px 15px;
      padding-left:30px;
    }
 ```   

This attribute has been deprecated since Chrome 51.