Chrome 80'de kullanımdan kaldırma ve kaldırma işlemleri

Ali Poşet
Ali Polat

Sayfa Kapatmada Eşzamanlı XMLHTTPRequest() Kullanımına İzin Verme

Chrome artık sayfa kapatıldığında veya kullanıcı tarafından kapatıldığında sayfa kapatıldığında XMLHTTPRequest() alanına yapılan eşzamanlı çağrılara izin vermiyor. Bu durum beforeunload, unload, pagehide ve visibilitychange için geçerlidir.

Bir sayfa kaldırıldığında verilerin sunucuya gönderilmesini sağlamak için sendBeacon() veya Fetch keep-alive öneririz. Şimdilik kurumsal kullanıcılar AllowSyncXHRInPageDismissal politika işaretini, geliştiriciler ise sayfa kaldırma işlemi sırasında eşzamanlı XHR isteklerine izin vermek için kaynak deneme işaretini allow-sync-xhr-in-page-dismissal kullanabilir. Bu geçici bir "kapsam dışında kalma" önlemidir ve Chrome 88'de bu işaretin kaldırılmasını bekliyoruz.

Bu konu ve alternatifler hakkında ayrıntılı bilgi için Sayfa kapatma işlemi sırasında eşzamanlı XMLHTTPRequest() öğesine izin vermeme bölümüne bakın.

Kaldırma Amacı | Chrome Platform Durumu | Chromium Hatası

FTP desteği kullanımdan kaldırıldı

Chrome'daki mevcut FTP uygulaması, şifrelenmiş bağlantıları (FTPS) veya proxy'leri desteklememektedir. Tarayıcıda FTP kullanımı, mevcut FTP istemcisini iyileştirmeye yatırım yapmaya uygun olmayacak kadar düşüktür. Buna ek olarak, etkilenen tüm platformlarda daha yetenekli FTP istemcileri kullanılabilir.

Chrome 72, FTP üzerinden belge alt kaynaklarını getirme ve üst düzey FTP kaynaklarının oluşturma desteğini kaldırdı. Şu anda FTP URL'lerine gittiğinizde, kaynağın türüne bağlı olarak bir dizin listesi veya indirme gösteriliyor olabilir. Google Chrome 74 ve sonraki sürümlerde yaşanan bir hata, HTTP proxy'ler üzerinden FTP URL'lerine erişim desteğinin kesilmesine neden oldu. Google Chrome 76'da FTP için proxy desteği tamamen kaldırıldı.

Google Chrome'un FTP uygulamasının geri kalan özellikleri, bir dizin listesini görüntülemek veya şifrelenmemiş bağlantılar üzerinden bir kaynağı indirmekle sınırlıdır.

Kullanımdan kaldırma zaman çizelgesi geçici olarak aşağıdaki şekilde belirlenmiştir:

Chrome 80 (Şubat 2020'den itibaren kararlı)

FTP, kurumsal olmayan istemciler için varsayılan olarak devre dışıdır ancak --enable-ftp veya --enable-features=FtpProtocol komut satırı işaretleri kullanılarak etkinleştirilebilir. Alternatif olarak, chrome://flags sayfasındaki #enable-ftp seçeneğini kullanarak da etkinleştirebilirsiniz.

Chrome 81 (Mart 2020'den itibaren kararlı)

FTP tüm Chrome yüklemeleri için varsayılan olarak devre dışıdır ancak --enable-ftp veya --enable-features=FtpProtocol komut satırı işaretleri kullanılarak etkinleştirilebilir.

Chrome 82 (Nisan 2020'deki kararlı sürüm)

FTP desteği tamamen kaldırılacak.

Kaldırma Amacı | Chrome Platform Durumu | Chromium Hatası

Sayfa yüklemesi sırasında pop-up'lara izin verme

Sayfalar, kaldırma sırasında yeni bir sayfa açmak için artık window.open() kullanamaz. Chrome pop-up engelleyicisi bunu zaten yasaklamıştır, ancak pop-up engelleyici etkin olsa da olmasa da artık yasaktır.

Kuruluşlar, yükleme sırasında pop-up'lara izin vermek için AllowPopupsDuringPageUnload politika işaretini kullanabilir. Chrome, Chrome 82'de bu işareti kaldırmayı beklemektedir.

Kaldırma Amacı | Chromestatus İzleyici | Chromium Hatası

Kaynak temiz olmayan ImageBitmap serileştirme ve aktarımı kaldırıldı

Bir komut dosyası, kaynak temiz olmayan ImageBitmap'i seri hale getirmeye veya aktarmaya çalıştığında artık hatalar bildirilecektir. Kaynakça temiz olmayan ImageBitmap, CORS mantığıyla doğrulanmayan çapraz kaynak görüntülerden veriler içeren bir haritadır.

Kaldırma Amacı | Chrome Platform Durumu | Chromium Hatası

Protokol işleme artık güvenli bir bağlam gerektiriyor

registerProtocolHandler() ve unregisterProtocolHandler() yöntemleri artık güvenli bir bağlam gerektirir. İstemci durumlarını, hassas olabilecek verilerin bir ağ üzerinden aktarılmasına izin verecek şekilde yeniden yapılandırabilen bu yöntemler.

registerProtocolHandler() yöntemi, kullanıcı izin verdikten sonra web sayfasına bir protokolü işleyebilmek için kendini kaydettirmesi için bir mekanizma sağlar. Örneğin, web tabanlı bir e-posta uygulaması mailto: şemasını işlemek için kaydolabilir. İlgili unregisterProtocolHandler() yöntemi, bir sitenin protokol işleme kaydını iptal etmesine izin verir.

Kaldırma Amacı | Chrome Platform Durumu | Chromium Hatası

Web Bileşenleri v0 kaldırıldı

Web Bileşenleri v0 artık Chrome'dan kaldırıldı. Web Bileşenleri v1 API'leri Chrome, Safari, Firefox ve (yakında) Edge'de kullanıma sunulacak olan bir web platformu standardıdır. Yükseltme hakkında yardım almak isterseniz Web Bileşenleri güncellemesi: v1 API'lere yükseltme için daha fazla süre başlıklı makaleyi okuyun. Aşağıdaki özellikler kaldırılmıştır. Bu kullanımdan kaldırma işlemi, aşağıda listelenen öğeleri kapsamaktadır.

Özel Öğeler

Kaldırma Amacı | Chrome Platform Durumu | Chromium Hatası

HTML İçe Aktarmaları

Kaldırma Amacı | Chrome Platform Durumu | Chromium Hatası

Gölge DOM

Kaldırma Amacı | Chrome Platform Durumu | Chromium Hatası

İsteğe bağlı öğeler için -webkit-lookance:button bilgisini kaldırın.

-webkit-appearance:button öğesini yalnızca <button> ve <input> düğmeleriyle çalışacak şekilde değiştirir. Desteklenmeyen bir öğe için button belirtilirse öğe, varsayılan görünüme sahip olur. Diğer tüm -webkit-appearance anahtar kelimeler için bu tür kısıtlamalar zaten vardır.

Kaldırma Amacı | Chrome Platform Durumu | Chromium Hatası

Kullanımdan kaldırma politikası

Platformun sağlıklı kalmasını sağlamak için bazen kurslarını çalıştıran API'leri Web Platformu'ndan kaldırırız. Bir API'yi kaldırmamızın pek çok nedeni olabilir. Örneğin:

  • Bunların yerini yeni API'ler alır.
  • Diğer tarayıcılarla uyumluluk ve tutarlılık sağlamak için spesifikasyonlarda yapılan değişiklikleri yansıtacak şekilde güncellenirler.
  • Bunlar, diğer tarayıcılarda hiçbir zaman sonuç vermeyen ilk denemelerdir ve bu nedenle web geliştiricilerinin destek yükünü artırabilir.

Bu değişikliklerden bazıları çok az sayıda siteyi etkileyecektir. Sorunları önceden azaltmak için geliştiricilere, sitelerinin çalışır durumda kalması için gerekli değişiklikleri yapabilmeleri amacıyla önceden bildirimde bulunmaya çalışırız.

Chrome'da şu anda API'lerin kullanımdan kaldırılması ve kaldırılmasıyla ilgili bir süreç vardır. Temel olarak:

  • blink-dev posta listesinde duyuru yapın.
  • Sayfada kullanım algılandığında Chrome Geliştirici Araçları Konsolu'nda uyarılar ayarlayın ve zaman ölçekleri belirleyin.
  • Kullanım azaldıkça özelliği bekleyin, izleyin ve kaldırın.

Kullanımdan kaldırılan tüm özelliklerin listesini chromestatus.com adresinde kullanımdan kaldırılmış filtreyi ve kaldırılan özellikleri kaldırılan filtreyi uygulayarak bulabilirsiniz. Bu gönderilerde yapılan bazı değişiklikleri, nedenleri ve taşıma yollarını özetlemeye de çalışacağız.