Google har slÀppt version 95 av webblÀsaren Chrome. Samtidigt finns det en stabil release av det fria projektet Chromium, som Àr grunden för Chrome. WebblÀsaren Chrome kÀnnetecknas av anvÀndningen av Googles logotyper, en notifieringssystem för krascher, moduler för uppspelning av skyddat videoinnehÄll (DRM), ett automatiskt uppdateringssystem och överföring av RLZ-parametrar vid sökning. Enligt den nya fyra veckor lÄnga utvecklingscykeln Àr nÀsta version av Chrome, version 96, planerad till den 16 november. För dem som behöver mer tid för att uppdatera finns en separat Supported Extended Stable-gren som hÄlls i Ätta veckor, dÀr en uppdatering för den tidigare versionen Chrome 94 har skapats.
Huvudsakliga Àndringar i Chrome 95:
- För anvĂ€ndare av Linux, Windows, macOS och ChromeOS har en ny sidopanel introducerats, som visas till höger om innehĂ„llet och aktiveras genom att klicka pĂ„ en speciell ikon i adressfĂ€ltet. I panelen visas en sammanstĂ€llning av bokmĂ€rken och en lĂ€slista. Ăndringen aktiveras inte för alla anvĂ€ndare, utan kan aktiveras med instĂ€llningen âchrome://flags/#side-panelâ.

- Det har lagts till en tydlig begÀran om behörighet för att spara adresser som matas in i webbformulÀr för att senare kunna anvÀndas i autofyll-systemet. NÀr det finns adresser i formulÀren visas nu en dialog för anvÀndaren, som gör det möjligt att spara adressen, redigera, uppdatera en tidigare sparad adress eller avböja att spara.
- Koden för att stödja FTP-protokollet har tagits bort. I Chrome 88 stÀngdes FTP-stödet av som standard, men en flagga för att Äteraktivera det lÀmnades kvar.
- Stödet för URL:er med vĂ€rdnamn som slutar med siffror, men som inte motsvarar IPv4-adresser, har upphört. Till exempel kommer URL:erna âhttp://127.1/â, âhttp://foo.127.1/â och âhttp://127.0.0.0.1â nu att betraktas som ogiltiga.
- För WebAssembly har möjligheten att skapa undantagshanterare implementerats, som kan fÄnga likviditeten nÀr ett undantag uppstÄr vid körning av viss kod. BÄde kÀnda webassembly-undantag och undantag som uppstÄr vid anrop av importerade funktioner stöds. För att fÄnga undantagen mÄste WebAssembly-modulen kompileras av en kompilator som stöder undantag, sÄsom Emscripten.
Det noteras att undantagshantering pÄ nivÄn av WebAssembly kan avsevÀrt minska storleken pÄ den genererade koden jÀmfört med undantagshantering med hjÀlp av JavaScript. Till exempel, optimeringssamlingen Binaryen med undantagshantering med hjÀlp av JavaScript leder till en kodökning pÄ 43%, medan WebAssembly endast ökar med 9%. Dessutom, nÀr optimeringslÀget "-O3" anvÀnds, Àr koden med undantagshantering i WebAssembly nÀstan identisk i prestanda med koden utan undantagshanterare, medan undantagshantering med hjÀlp av JavaScript resulterar i en prestandanedgÄng pÄ 30%.
- Det Àr förbjudet att dela WebAssembly-moduler mellan olika domÀner (cross-origin) nÀr man behandlar en och samma webbplats.
- I lÀget Origin Trials (experimentella funktioner som krÀver separat aktivering) har flera nya API:er lagts till. Origin Trial innebÀr möjlighet att arbeta med det angivna API:et frÄn applikationer som laddas frÄn localhost eller 127.0.0.1, eller efter registrering och erhÄllande av en speciell token som gÀller under en begrÀnsad tid för en specifik webbplats.
- Informationen i HTTP-huvudet User-Agent samt JavaScript-parametrarna navigator.userAgent, navigator.appVersion och navigator.platform har minskats. Endast uppgifter om webblÀsarens namn, huvudversion, plattform och enhetstyp (mobiltelefon, dator, surfplatta) har kvarlÀmnats i huvudet. För att fÄ ytterligare data, som exakt version och utökad plattformsinformation, mÄste API:et User Agent Client Hints anvÀndas. Inledningen av minskningen av User-Agent pÄ vanliga anvÀndares system Àr planerad till lanseringen av Chrome 102, som kommer att publiceras om sex mÄnader.
- Möjligheten att skapa Ätkomstdeskriptorer (Access Handles) för API:et File System Access har föreslagits, vilket möjliggör för webbapplikationer att lÀsa och skriva data direkt till filer och mappar pÄ anvÀndarens enhet. För att minska sÀtt att fÄ Ätkomst till filsystemet av webbapplikationer planerar Google att förena API:et File System Access och Storage Foundation. Som ett förberedande steg för en sÄdan förening har stöd för Ätkomstdeskriptorer föreslagits, som kompletterar filbeskrivarmetoder med utökade funktioner, sÄsom att sÀtta skrivrÀttighetslÄs av andra processer och att skapa separata strömmar för skrivning och lÀsning, inklusive stöd för lÀsning och skrivning frÄn arbetare pÄ synkront vis.
- API:n för sÀker betalningsbekrÀftelse har stabiliserats och föreslagits som standard med införandet av den nya utvidgningen 'payment', som möjliggör ytterligare bekrÀftelse av betalningstransaktionen. Kontrollparten, till exempel en bank, har möjlighet att generera en öppen nyckel PublicKeyCredential, vilken kan begÀras av sÀljaren för att ge en extra sÀker betalningsbekrÀftelse via API:n Payment Request, med metoden 'secure-payment-confirmation'.
- I callback-anrop som stÀllts in via konstruktorn PerformanceObserver har funktionen droppedEntriesCount implementerats, vilket gör det möjligt att förstÄ hur mÄnga prestationsmetrikor pÄ webbplatsen som har avvisats eftersom de inte fick plats i den tillhandahÄllna bufferten.
- API:n EyeDropper har lagts till, vilket gör det möjligt att kalla pÄ webblÀsarens grÀnssnitt för att bestÀmma fÀrgen pÄ valfria pixlar pÄ skÀrmen, vilket kan anvÀndas, till exempel i grafiska redigerare som implementerats som webbapplikationer. const eyeDropper = new EyeDropper(); const result = await eyeDropper.open(); // result = {sRGBHex: '#160731'}
- Funktionen self.reportError() har lagts till, vilket gör det möjligt för skript att skriva ut fel i konsolen, vilket emulerar uppkomsten av ett oÄterkalleligt undantag.
- API:n URLPattern har lagts till för att kontrollera om en URL matchar ett visst mönster, vilket till exempel kan anvÀndas för att analysera lÀnkar och för att omdirigera förfrÄgningar till hanterare i service worker. const p = new URLPattern({ protocol: 'https', hostname: 'example.com', pathname: '/:folder/*/:fileName.jpg', });
- API:n Intl.DisplayNames har utökats, dÀrigenom kan lokala namn för sprÄk, lÀnder, valutor, datumselement och liknande hÀmtas. I den nya versionen har nya typer av namn lagts till, 'calendar' och 'dateTimeField', genom vilka lokala namn för kalendrar samt datum- och tidsfÀlt (till exempel mÄnadsnamn) kan hÀmtas. För typen 'language' har stöd för anvÀndning av sprÄkvarianter lagts till.
- I API:n Intl.DateTimeFormat har stöd för nya vÀrden av parameter timeZoneName lagts till: 'shortGeneric' för att skriva ut en kort identifierare för tidszonen (till exempel 'PT', 'ET'), 'longGeneric' för en lÄng identifierare ('Pacific Time', 'Mountain Time'), 'shortOffset' med en kort avvikelse frÄn GMT ('GMT+5') och 'longOffset' med en lÄng avvikelse frÄn GMT ('GMT+0500').
- API U2F (Cryptotoken) har förklarats obsolet, och istÀllet bör API Web Authentication anvÀndas. API U2F kommer att stÀngas av som standard i utgÄvan av Chrome 98 och helt tas bort i Chrome 104.
- FörbÀttringar har gjorts i verktygen för webbutvecklare. I panelen Styles har justeringen av CSS-egenskaper relaterade till storlek (height, padding osv.) förenklats. I fliken Issues har möjligheten att dölja enskilda problem lagts till. I webbkonsolen och panelerna Sources och Properties har visningen av egenskaper förbÀttrats (egna egenskaper framhÀvs nu med fetstil och visas överst i listan).

Utöver nyheterna och buggfixarna i den nya versionen har 19 sÄrbarheter ÄtgÀrdats. MÄnga av sÄrbarheterna identifierades genom automatiserad testning med verktyg som AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer och AFL. Inga kritiska problem har identifierats som skulle göra det möjligt att kringgÄ alla nivÄer av webblÀsarsÀkerhet och köra kod utanför sandbox-miljön. I samband med programmet för belöningar för att upptÀcka sÄrbarheter har Google för den aktuella uppdateringen betalat ut 16 belöningar som uppgÄr till totalt 74 000 USD (en belöning pÄ $20000, tvÄ belöningar pÄ $10000, en belöning pÄ $7500, en belöning pÄ $6000, tre belöningar pÄ $5000 och en belöning vardera pÄ $3000, $2000 och $1000). Storleken pÄ 5 belöningar har Ànnu inte faststÀllts.
KĂ€lla: opennet.ru


