Yayınlanma tarihi: 3 Nisan 2025
Aksi belirtilmedikçe aşağıdaki değişiklikler Android, ChromeOS, Linux, macOS ve Windows için en yeni Chrome beta kanalı sürümünde geçerlidir. Burada listelenen özellikler hakkında daha fazla bilgiyi verilen bağlantılardan veya ChromeStatus.com'daki listeden edinebilirsiniz. Chrome 136, 3 Nisan 2025 itibarıyla beta sürümündedir. En son sürümü masaüstü için Google.com'dan veya Android için Google Play Store'dan indirebilirsiniz.
CSS ve kullanıcı arayüzü
Bu sürümde altı yeni CSS ve kullanıcı arayüzü özelliği eklendi.
CSS dynamic-range-limit
özelliği
Sayfanın, HDR içeriğinin maksimum parlaklığını sınırlamasını sağlar.
El yazısı komut dosyalarındaki harf aralığını yoksayma
Bu özellik, geliştirici tarafından spesifikasyona uygun olarak belirtilmiş olsa bile, harf aralığının kelimeleri bölmemesini sağlamak için el yazısı yazı tipleri için harf aralığı ayarını yoksaymaya yönelik mantık ekler.
:visited
bağlantı geçmişini bölümlendirme
Kullanıcı tarama geçmişi sızıntılarını önlemek için sabit öğeler yalnızca bu üst düzey site ve çerçeve kaynağından daha önce tıklandıysa :visited
olarak biçimlendirilir.
Yalnızca bu sitede ve çerçevede daha önce tıklanmış bağlantılara stil uygulayarak :visited
bağlantı stili bilgilerini elde etmek için geliştirilmiş birçok yan kanal saldırısı artık geçerliliğini yitirdi. Artık sitelere kullanıcılarla ilgili yeni bilgiler sağlamıyorlar.
:visited
bağlantılarının gizliliğinde yapılan bu iyileştirmeler hakkında daha fazla bilgi edinin.
string
attr()
türünü raw-string
olarak yeniden adlandırın
CSS Çalışma Grubu, string
attr()
türünü raw-string
ile değiştirmeye karar verdi.
Bu nedenle Chrome, attr()
söz dizimini değiştirdi. Böylece attr(data-foo string)
artık attr(data-foo raw-string)
olacak.
Türe duyarlı olmayan var()
yedek
var()
işlevinin yedek kısmı, referans verilen özel mülkün türüyle doğrulanmıyor.
Ön ek yok print-color-adjust
print-color-adjust
mülkü, basılı web sayfalarındaki renkleri ayarlamanıza olanak tanır. Bu, Chrome'un halihazırda desteklediği -webkit-print-color-adjust
ile aynıdır ancak standartlaştırılmış bir ada sahiptir. -webkit
ön ekiyle başlayan sürüm kaldırılmaz.
Web API'leri
AudioContext kesintiye uğramış durumu
AudioContextState
için "interrupted"
durumu ekler. Bu yeni durum, UA'nın bu senaryolarda oynatmayı duraklatmasına ve web uygulamalarının uygun şekilde yanıt vermesine olanak tanır.
Blob URL'si bölümlendirme: Getirme/Gezinme
Depolama bölümlendirmesinin devamı olarak bu özellik, yalnızca çerçeve kaynağına göre bölümlendirilmeye devam edecek üst düzey gezinmeler hariç olmak üzere blob URL erişiminin depolama anahtarına (üst düzey site, çerçeve kaynağı ve has-cross-site-ancestor boole değeri) göre bölümlendirilmesini uygular. Bu davranış, şu anda hem Firefox hem de Safari tarafından uygulanan davranışa benzer ve Blob URL kullanımı, Depolama Bölme işlemi kapsamında diğer depolama API'leri tarafından kullanılan bölümleme şemasıyla uyumlu hale getirilir.
Ayrıca, noopener
artık oluşturucu tarafından başlatılan ve ilgili sitenin, gezinmeyi gerçekleştiren üst düzey siteyle çapraz site olduğu blob URL'lerine yapılan üst düzey gezinmelerde zorunlu kılınmaktadır. Bu sayede Chrome, Safari'deki benzer davranışla uyumlu hale getirilmiştir. İlgili özellikler de bu değişiklikleri yansıtacak şekilde güncellenmiştir.
Yanıt vermeyen web sayfalarından gelen kilitlenme raporlarındaki çağrı yığınları
Bu özellik, JavaScript kodu sonsuz bir döngü veya çok uzun bir hesaplama çalıştırması nedeniyle bir web sayfası yanıt vermediğinde JavaScript çağrı yığınını yakalar. Bu, geliştiricilerin yanıt vermeme sorununun nedenini belirlemesine yardımcı olur. Neden yanıt vermeme ise JavaScript çağrı yığını kilitlenme raporlama API'sine dahil edilir.
Captured Surface Control API
Captured Surface Control API, web uygulamalarının tekerlekli fare hareketlerini yakalanan bir sekmeye iletmesine ve yakalanan bir sekmenin yakınlaştırma düzeyini okumasına ve değiştirmesine olanak tanır.
CapturedSurfaceResolution
Ekran paylaşımı sırasında yakalanan yüzeyin piksel oranını gösterir. Bu özellik, uygulamaların sistem kaynaklarını korumasına veya kalite ile bant genişliği arasındaki dengeyi yakalanan yüzeyin fiziksel ve mantıksal çözünürlüklerine göre uyarlamasına yardımcı olur.
Tıklama etkinliklerini yakalanan işaretçiye gönderme
pointerup
etkinliği dağıtılırken bir işaretçi yakalanırsa click
etkinliği, kullanıcı arayüzü etkinliği spesifikasyonuna göre pointerdown
ve pointerup
etkinliklerinin en yakın ortak atası yerine yakalanan hedefe dağıtılır. Yakalanmış olmayan işaretçiler için click
hedefi değişmeden kalır.
Sihirli yorumlarla açık derleme ipuçları
JavaScript dosyalarında hangi işlevlerin istekli olarak ayrıştırılması ve derlenmesi gerektiğiyle ilgili bilgilerin eklenmesine olanak tanır. Bilgiler, sihirli yorumlar olarak kodlanır.
FedCM güncellemeleri: Birden fazla kimlik sağlayıcı desteği, pasif modda "başka bir hesap ekle" özelliğinin kaldırılması
Bu güncellemeyle FedCM, aynı iletişim kutusunda birden fazla kimlik sağlayıcı gösterebilir.
Bu sayede geliştiriciler, desteklenen tüm kimlik sağlayıcıları kullanıcılara kolayca sunabilir. Öncelikle tüm sağlayıcıların aynı get()
görüşmesinde yer aldığı basit durumu ele almayı planlıyoruz. FedCM pasif modunda "başka bir hesap ekle" özelliği için desteği de kaldırıyoruz. Bu özellik, seçicide diğer kimlik sağlayıcı hesaplarının yanında "başka bir hesap kullan" düğmesi gösterilmesine olanak tanır. Bu özellik şu anda kullanılmamaktadır ve kullanıcı deneyimi görüşmeleri, bu özelliği desteklemenin çok fazla faydası olmayan daha karmaşık bir akışa yol açtığına karar vermemize yol açmıştır. Bu özellik, FedCM etkin modunda çalışmaya devam eder.
Akıcı kaydırma çubukları.
Bu özellik, Windows ve Linux'taki Chrome kaydırma çubuklarını (hem yer paylaşımlı hem de yer paylaşımlı olmayan) Windows 11 Fluent tasarım diline uyacak şekilde modernize eder. Yer paylaşımlı olmayan Fluent kaydırma çubukları Linux ve Windows'ta varsayılan olarak etkinleştirilir. Chrome'un Linux kaydırma çubuğu tasarımı geçmişte Windows'ta sunulan tasarımla uyumlu olduğu için bu değişiklik Linux için de geçerlidir.
WebRTC'de H265 (HEVC) codec desteği
Chrome 136'tan itibaren HEVC, WebRTC'de desteklenen codec'ler olarak VP8, H.264, VP9 ve AV1'e katılacak. Destek, MediaCapabilities API kullanılarak sorgulanabilir.
Bu yeni codec, VP8 ve H264 gibi eski nesil codec'lere kıyasla daha yüksek sıkıştırma verimliliği (bit hızı başına daha yüksek kalite) ve on yıldan uzun süredir çok güçlü donanım desteği sunar. Bu, pil ömrünün artmasına ve performans sorunlarının riskinin azalmasına neden olur. Ayrıca, temel donanım kodlayıcının performansına bağlı olarak, donanım VP9 veya AV1 kodlayıcıların kullanılamadığı durumlarda görsel deneyimi genellikle iyileştirir.
MediaRecorder için H26x codec desteği güncellemeleri
MediaRecorder API artık HEVC kodlamayı destekliyor. hvc1.*
codec dizesini kullanıma sunuyor ve MP4'te değişken çözünürlüklü videoyu destekleyen yeni codec'ler (hev1.*
ve avc3.*
) ekliyor. Chrome 130'taki WebCodecs'e HEVC platform kodlaması desteği eklendi. Bunun ardından Chromium'daki MediaRecorder API'sine destek eklendi. API artık farklı HEVC ve H.264 mime türü spesifikasyonlarına sahip hem MP4 hem de Matroska muxer türlerini desteklemektedir. HEVC kodlaması yalnızca kullanıcının cihazı ve işletim sistemi gerekli özellikleri sağlıyorsa desteklenir.
Chrome Enterprise'da IP adresi günlüğe kaydetme ve raporlama
Chrome Enterprise, yerel ve uzak IP adreslerini toplayıp raporlayarak ve bu IP adreslerini Güvenlik İnceleme Günlükleri'ne (SIT) göndererek güvenlik izleme ve olay yanıtlama özelliklerini iyileştirir. Ayrıca Chrome Enterprise, yöneticilerin isteğe bağlı olarak Chrome Enterprise Reporting bağlayıcısını kullanarak IP adreslerini birinci taraf ve üçüncü taraf SIEM sağlayıcılarına göndermesine olanak tanır. Bu özellik, Chrome Enterprise Core müşterileri tarafından kullanılabilir.
Gezinme başlatıcıyı HTTP önbelleği bölüm anahtarına dahil etme
Chrome'un HTTP önbelleği anahtarlama şeması, üst düzey gezinme içeren siteler arası sızıntı saldırılarını azaltmak için is-cross-site-main-frame-navigation
boole değişkeni içerecek şekilde güncellendi. Daha açık belirtmek gerekirse bu, saldırganın belirli bir sayfaya üst düzey gezinme başlattığı ve ardından yükleme zamanlamasından hassas bilgileri anlamak için sayfa tarafından yüklendiği bilinen bir kaynağa gittiği çapraz site saldırılarını önler. Bu değişiklik, kötü amaçlı bir sitenin kullanıcının daha önce belirli bir siteyi ziyaret edip etmediğini anlamak için gezinme öğelerini kullanmasını engelleyerek gizliliği de artırır.
CanvasTextDrawingStyles
için dil desteği
Tüm DOM öğeleri gibi <canvas>
DOM öğesi de yazı tipi seçimi için dile özgü işleme tanımlamak amacıyla kullanılan bir lang
özelliğini kabul eder (yazı tipleri yerel ayara özgü gliflere sahip olduğunda). Tarayıcılar bu özelliğe uyar. Ancak, bir OffscreenCanvas oluşturulduğunda yerel ayar bilgilerini ayarlamak mümkün değildir. Bu durum, ekran dışı kanvasın, çıktısının kullanıldığı kanvastan farklı oluşturulmuş sonuçlar üretmesine neden olabilir. Bu özellik, metin çizimi ve metrikler için dile doğrudan kontrol vermek üzere CanvasTextDrawingStyles
öğesine bir lang
IDL özelliği ekler.
iframe'ler için izin politikası raporları
"Olası İzinler Politikası ihlali" adlı yeni bir ihlal türü kullanıma sunuluyor. Bu türde, yalnızca İzinler Politikası (yalnızca raporlama politikası dahil) ve iframe'lerde ayarlanan allow
özelliği incelenerek, uygulanan İzinler Politikası ile iframe'lere iletilen izinler arasındaki çelişki tespit edilir.
Tahmin edilebilir raporlanan depolama alanı kotası
Sınırsız depolama alanı izinlerine sahip olmayan siteler için StorageManager'ın Estimate API'sinden tahmini depolama alanı kotasını bildirin. Gizli modda, kullanıcıya sunulan depolama alanı normal moddakinden önemli ölçüde daha küçük olduğu için kullanıcının tarama modunu, bildirilen depolama kotasını kullanarak tespit etmek mümkündür.
Private Aggregation API: Toplu hata raporlama
Private Aggregation API kullanılırken karşılaşılabilecek çeşitli hata koşulları vardır. Örneğin, gizlilik bütçesi tükenebilir ve başka histogram katkıları yapılmasını önleyebilir. Bu özellik, geliştiricilerin yalnızca belirli bir hata türü oluştuğunda gönderilmesi gereken histogram katkılarını kaydetmelerine olanak tanır. Bu özellik, hata durumlarının sıklığını ölçmeyi ve bu ölçümleri geliştirici tarafından belirtilen ilgili boyutlara (ör. dağıtılan kodun sürümü) ayırmayı destekler. Hataların kendisi siteler arası bilgiler olabileceğinden, üçüncü taraf çerezleri olmayan kullanıcılar için bunları sayfaya gösteremeyiz. Bunun yerine bu özellik, Aggregation Service aracılığıyla mevcut toplu ve gürültülü raporlama ardışık düzenlerini yeniden kullanır.
RegExp.escape
RegExp.escape
, bir dize alan ve normal ifade içinde kalıp olarak kullanılabilecek, kaçış karakteri eklenmiş bir sürüm döndüren statik bir yöntemdir. Örneğin:
const str = prompt("Please enter a string");
const escaped = RegExp.escape(str);
const re = new RegExp(escaped, 'g'); // handles reg exp special tokens with the replacement.
console.log(ourLongText.replace(re));
Spekülasyon kuralları: etiket alanı
Geliştiricilerin spekülasyon kurallarına field
etiketi eklemesine olanak tanır. Bu isteğe bağlı alan, spekülasyon kurallarının kaynağını izlemek için kullanılabilir. Örneğin, bunları bir ara sunucuda farklı şekilde işlemek için. Bir spekülasyonla ilişkili tüm etiketler Sec-Speculation-Tags
üstbilgisiyle gönderilir.
Storage Access API için Katı Aynı Kaynak Politikası
Storage Access API semantiklerini, aynı kaynak politikasına kesinlikle uyacak şekilde ayarlar. Yani, bir çerçevede document.requestStorageAccess()
kullanmak, çerezleri varsayılan olarak iFrame'in kaynağına (siteye değil) yapılan isteklere ekler. Siteler arası çerezlerin engellemesini kaldırmak için CookiesAllowedForUrls
politikasının veya Depolama Aksesuarı Başlıklarının yine de kullanılabileceğini unutmayın.
loaded
ve total
için çift türü kullanmak üzere ProgressEvent
uygulamasını güncelleyin
ProgressEvent
, ilerlemeyi gösteren loaded
ve total
özelliklerine sahiptir ve bu özelliklerin türü artık unsigned long long
'dır. Bu özellik sayesinde bu iki özelliğin türü double
olarak değiştirilir. Bu da geliştiricinin değer üzerinde daha fazla kontrole sahip olmasını sağlar. Örneğin, geliştiriciler artık total
değeri 1 olan ve loaded
değeri 0'dan 1'e kademeli olarak artan bir ProgressEvent oluşturabilir. Bu, max özelliği atlanmışsa <progress>
HTML öğesinin varsayılan davranışıyla uyumludur.
getCharNumAtPosition
, isPointInFill
, isPointInStroke
için DOMPointInit
değerini kullanın
Bu değişiklik, Chromium kodunu getCharNumAtPosition
, isPointInFill
, isPointInStroke
için SVGPoint
yerine DOMPointInit
kullanımı açısından SVGGeometryElement
ve SVGPathElement
için en son W3C spesifikasyonuyla uyumlu hale getirir.
Web kimlik doğrulaması koşullu oluşturma (Geçiş anahtarı yükseltmeleri)
WebAuthn koşullu oluşturma istekleri, web sitelerinin mevcut şifre kimlik bilgilerini geçiş anahtarına yükseltmesine olanak tanır.
WebGPU: GPUAdapterInfo
isFallbackAdapter
özelliği
GPUAdapterInfo
isFallbackAdapter
Boole özelliği, bir adaptörün daha geniş uyumluluk, daha tahmin edilebilir davranış veya daha iyi gizlilik karşılığında önemli performans sınırlamalarına sahip olup olmadığını belirtir. Yedek adaptörün tüm sistemlerde bulunmayabileceğini unutmayın.
Yeni kaynak denemeleri
Chrome 136'ta aşağıdaki yeni kaynak denemelerini etkinleştirebilirsiniz.
Audio Output Devices API: setDefaultSinkId()
Bu özellik, MediaDevices'e setDefaultSinkId()
ekler. Bu sayede üst düzey çerçeve, alt çerçeveleri tarafından kullanılan varsayılan ses çıkış cihazını değiştirebilir.
Web uygulamalarının iki modlu performans zamanlamalarını anlamasını sağlayın
Web uygulamaları, web uygulamasının kontrolü dışındaki faktörler nedeniyle sayfa yükleme performansında iki modlu dağılım sorunuyla karşılaşabilir. Örneğin:
- Bir kullanıcı aracısı ilk kez başlatıldığında ("soğuk başlatma" senaryosu), sistemdeki kaynaklar için rekabet eden birçok pahalı başlatma görevi gerçekleştirmelidir.
- Tarayıcı uzantıları bir web sitesinin performansını etkileyebilir. Örneğin, bazı uzantılar ziyaret ettiğiniz her sayfada ek kod çalıştırır. Bu da CPU kullanımını artırabilir ve yanıt sürelerinin uzamasına neden olabilir.
- Bir makine yoğun görevler gerçekleştirirken web sayfalarının daha yavaş yüklenmesine neden olabilir.
Bu senaryolarda, web uygulamasının yüklemeye çalıştığı içerik, sistemde yapılan diğer çalışmalarla rekabet halinde olur. Bu durum, performans sorunlarının web uygulamalarının kendisinden mi yoksa harici faktörlerden mi kaynaklandığını tespit etmeyi zorlaştırır.
PerformanceNavigationTiming
nesnesinde yeni bir confidence
alanı, geliştiricilerin gezinme zamanlarının web uygulamaları için temsili olup olmadığını belirlemelerine olanak tanır.
Cihaz Bağlı Oturumu Kimlik Bilgileri
Web sitelerinin bir oturumu tek bir cihaza güvenli bir şekilde bağlama yöntemi.
Sunucuların bir cihaza güvenli bir şekilde bağlı bir oturum oluşturmasına olanak tanır. Tarayıcı, özel anahtara sahip olduğunun kanıtıyla oturumu sunucu tarafından istendiği şekilde düzenli olarak yeniler.
Tuval metin oluşturma uygulamasında güncelleme
CanvasRenderingContext2D ve OffscreenCanvasRenderingContext2D'nin measureText()
, fillText()
ve strokeText()
iç yapıları, RTL metni ve önbelleğe almayı daha iyi destekleyen yeni bir uygulamayla değiştirildi. Bu, performansı ve BIDI metin çıkışını etkileyebilir. Bu nedenle, bu kaynak denemesi, metin ağırlıklı kanvas uygulamalarının yeni uygulamayı denemesine ve karşılaşabilecekleri sorunları bildirmesine olanak tanır.
Kullanımdan kaldırmalar
Chrome'un bu sürümünde aşağıdaki desteği sonlandırma ve kaldırma işlemleri uygulanmaktadır. Planlanan desteğin sonlandırılması, mevcut desteğin sonlandırılması ve daha önce kaldırılan özelliklerin listeleri için ChromeStatus.com'u ziyaret edin.
Bu Chrome sürümünde iki özellik için desteği sonlandırıldı.
Intl Locale Info alıcılarının desteği sonlandırılıyor
Intl Locale Info API, hafta verileri (haftanın ilk günü, hafta sonu başlangıç günü, hafta sonu bitiş günü, ilk haftadaki minimum gün) ve yerel ayarda kullanılan metin yönü saat döngüsü gibi yerel ayar bilgilerini göstererek Intl.Locale
nesnesini geliştirmeyi amaçlayan 3. Aşama ECMAScript TC39 önerisidir. Bu değişiklik, kullanımdan kaldırılmış bazı alıcıları kaldırır.
HTMLFencedFrameElement.canLoadOpaqueURL()
öğesini kaldırın.
canLoadOpaqueURL()
, 2023'te navigator.canLoadAdAuctionFencedFrame()
ile değiştirildi ve bu API'nin çağrılması, geliştiricileri yeni API'ye yönlendiren bir desteği sonlandırma konsol uyarısıyla sonuçlandı. İşlevin HTMLFencedFrameElement
'e eklenmesi mantıklı değildir. Bunun yerine, diğer çitle çevrili çerçeve ve reklam açık artırması yöntemlerini içeren navigator
nesnesine eklenmelidir.