Google on avaldanud web-brauseri Chrome 147. Samuti on saadaval stabiilne versioon avatud projekti Chromium, mis on Chrome'i alus. Chrome'i brauser erineb Chromiumist Google'i logode, krahhiloengute puhul teate saatmise süsteemi, kopeerimise kaitsega video sisu esitamise moodulite (DRM), automaatsete värskenduste installimise süsteemi, Sandboksi isolatsiooni pidevast rakendamisest, Google API võtmete tarnimisest ja RLZ-parameetrite edastamisest otsingus. Neile, kellele on vaja rohkem aega uuenduse tegemiseks, toetatakse eraldi Extended Stable haru, mis kestab 8 nädalat. Järgmine Chrome'i väljaanne 148 on planeeritud 5. maiks.
Peamised muudatused Chrome 147 (1, 2, 3, 4):
- Lisatud on vertikaalsete sakkide kuvamise režiim, mis asendab ülemise horisontaalse sakkide paneeli külgpaneeliga vertikaalsete sakkidega. Vertikaalseid sakke saab kuvada lahti (ikoon + osa kirjeldusest) ja kokku volditud režiimides (ainult ikoonid). Kui hiirt külgsakile viia, kuvatakse selle sisu eelvaade. Sakigrammide haldamine on lihtsustatud. Kontekstimenüüs, mis ilmub, kui paremklõpsi klikkida sakkide real, on juurde lisatud valik „Kuva sakkid vertikaalselt“ („Show Tabs Vertically“). Kui seda valikut ei ole vaikimisi saadaval, saab selle aktiveerida seadmise kaudu „chrome://flags/#vertical-tabs“.
- Uuendatud lugemisrežiim (reading mode), kus kuvatakse ainult lehe oluline tekst, samal ajal kui kõik seotud juhtnupud, bännerid, menüüd, navigeerimisriba ja muud sisu mitteseotud lehe osad on peidetud. Uues versioonis, nagu Firefoxis, kuvatakse oluline sisu kogu nähtavas piirkonnas, mitte enam kitsas külgribas algse lehe kõrval. Kui uut režiimi ei rakendata vaikimisi, saab seda aktiveerida seadete kaudu „chrome://flags/#read-anything-immersive-reading-mode“.
- Menüüsse „Help“ on lisatud nupp kaebuste saatmiseks, et lisada veebilehti, mis on loodud pettuste või andmepüügiga tegelemiseks, blokeerimisnimekirja. Nupp kuvatakse, kui turvalise sirvimise režiim on aktiveeritud.
- Kaitsevahendeid on laiendatud, et vältida kohaliku süsteemi puudutamist avalike veebisaitidega suhtlemisel. Veebisaitidelt tehtud päringud IP-aadressidega Kohalikust võrgust (intranet või siseaadressid) või loopback-liidest (127.0.0.0/8) juurdepääsu nõuab kasutajalt tegevuse kinnitamist. Kaitserežiimi alla kuuluvad nüüd mitte ainult katsetused laadida ressursse HTTP/HTTPS üle, fetch() päringud ja iframe'ide sisestamine, vaid ka ühenduste loomine WebSocketide ja WebTransporti kaudu, samuti fetch-päringud, mis on algatanud meetod WindowClient.navigate(). Juhtimine sisemistele ressurssidele kasutatakse pahatahtlike isikute poolt kaudseks tuvastamiseks ning CSRF-rünnakute teostamiseks ruuterditele, juurdepääsupunktidele, printeritele, ettevõtte veebiliidestele ja muudesse seadmetesse ja teenustesse, mis aktsepteerivad päringuid ainult kohalikus võrgus.
- XML-i analüüsi funktsionaalsus on tõlgitud libxml2-lt uude Rusti keeles kirjutatud teekki, mille fookuses on turvalisuse tagamine. Muudatus puudutab ainult XML-i, nagu on varem kuulutatud, XSLT toetamine lõpetatakse varsti.
- StartViewTransition() meetodi rakendamine on nüüd võimalik mitte ainult kogu lehe, vaid ka eraldi HTML-elementide jaoks.
- Lisatud CSS-funktsioon contrast-color(), mis tagastab antud värvi vastandid (valge puhul tagastab musta, musta puhul valge). Funktsiooni saab kasutada taustavärvi valimiseks antud teksti värvi jaoks ja vastupidi.
- Lisatud CSS-omand «border-shape», mis võimaldab luua mitte-ristkülikukujulisi elemendi ääriseid, näiteks kasutades ümmargusi või hulknurkseid raame. CSS-omand «border-shape» aktsepteerib samu kujundeid nagu omadus «clip-path», kuid erinevalt viimati nimetatust määrab see kontuuri, dekodeerib selle ja lõikab ära kontuurist väljuva sisu.
- Lisatud liidese CSSPseudoElement, mis võimaldab töötada CSS-i pseudoelementidega JavaScriptist.
- Elemendis link on rakendatud atribuudi «rel=modulepreload» kasutamise võimalus mitte ainult skriptide, vaid ka CSS-stiilide moodulite (<link rel=»modulepreload» as=»style» href=»…»>) ja JSON-andmete (<link rel=»modulepreload» as=»json» href=»…»>) eelkoormamiseks.
- CSS omaduste border-width, outline-width ja column-rule-width laiuse arvutamise käitumine on muutunud, et see vastaks Firefoxile ja WebKit mootoril töötavatele brauseritele. Varasemalt nulliti nende omaduste laius olenemata määratud väärtustest, kui omadused border-style, outline-style või column-rule-style olid väärtuses „none” või „hidden”. Nüüd seavad väärtused order-width, outline-width ja column-rule-width alati töötaja määratud väärtused sõltumata „*-style” omaduste sisust.
- Lisatud on meetod Math.sumPrecise(), et arvutada massiivide ja muude loetletavate objektide elementide summa täpsusega, mis ületab tavalise tsükli summamise täpsust (välistatakse täpsuse kadumine vahepealsete tulemuste salvestamisel).
- Lisatud on atribuut Request.isReloadNavigation, mis võimaldab määrata, et lehte on uuendatud, näiteks pärast nuppu „Refresh” vajutamist või meetodite location.reload() ja history.go(0) kutsumise kaudu.
- Kasutaja seadme mälu suuruse täpsuse vähendamiseks on muudetud API Device Memory kaudu tagastatavat mälusuuruse ümardamise loogikat. See võimaldab saada teavet töötava mälu suuruse kohta. See teave võib olla kasulik kergemate veebirakenduste loomiseks, mis on mõeldud seadmetele, kus on vähe mälu, või edasiste võimaluste aktiveerimiseks suurte mälumahtude puhul. Androidi platvormi versioonides on mälumaht nüüd ümardatud suurusteni 1, 2, 4 ja 8, samas kui teistel platvormidel ümardatakse suurusi 2, 4, 8, 16 ja 32.
- Isolatsiooniga veebirakendustes (IWA — Isolated Web Apps) on kasutusele võetud API Web Printing, mis pakub meetodeid printerite olemasolu määramiseks, dokumentide printimiseks saatmiseks ja printimiskuule järjekorra haldamiseks. API-s kasutatavad atribuutide nimed ja semantika vastavad IPP (Internet Printing Protocol) protokollile.
- Režiimis 'Origin trials' on rakendatud API WebNN, mis võimaldab kasutada operatsioonisüsteemi poolt pakutavaid teenuseid masinõppe jaoks ning nendega seotud riistvara võimalusi.
- Toodud on täiustusi veebiarenduse tööriistadesse. Sisseehitatud AI-assistendis on rakendatud automaatne konteksti valik. Uuendatud on paneeli "Device Mode", mida kasutatakse saidi funktsionaalsuse testimiseks erinevatel mobiilseadmetel. Paneelis Network on tagatud automaatne dekodeerimine kokkusurutud sisu jaoks, mis saadetakse pealkirjaga Content-Encoding: gzip või deflate. Antud on võimalus kasutada regulaaravaldisi CSS-stiilide filtreerimiseks.
Uues versioonis on lisaks uuendustele ja vigade parandusele kõrvaldatud 60 haavatavust. Paljusid neist haavatavustest tuvastati automatiseeritud testimise käigus kasutades tööriistu AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer ja AFL. Kahele probleemile (mälupuhvri ülevool ja täisarvu ülevool WebML-is) on määratud kriitiline oht, mis tähendab, et haavatavused võimaldavad mööda minna kõigist brauseri kaitsetasemetest ja käivitada süsteemis koodi väljaspool sandbox-keskkonda. Haavatavuste avastamise preemiasüsteemi raames on Google käesoleva väljaande jaoks kehtestanud 60 auhinda ning välja maksnud 118 000 Ameerika dollarit (kaks auhinda 43 000 dollarit, kaks auhinda 11 000 dollarit ja üks auhind 4 000, 3 000, 2 000 ja 1 000 dollarit. 52 auhinna suurus on veel määramata.
Allikas: opennet.ru
