Chrome izdanje 77

Google je objavio novu verziju internetskog preglednika Chrome. U isto vrijeme, dostupno je novo izdanje projekta Chromium otvorenog koda - temelja Chromea. Sljedeće izdanje zakazano je za 22. listopada.

U novoj verziji:

  • Ukinuto je zasebno označavanje stranica certifikatima razine EV (Extended Validation). Informacije o korištenju EV certifikata sada se prikazuju samo u padajućem izborniku koji se prikazuje kada kliknete na ikonu sigurne veze. Naziv tvrtke potvrđen od strane certifikacijskog tijela, s kojim je EV certifikat povezan, više se neće prikazivati ​​u adresnoj traci;
  • Povećana izolacija rukovatelja stranica. Dodana zaštita za podatke s više stranica, kao što su kolačići i HTTP resursi, primljene od stranica trećih strana koje kontroliraju napadači. Izolacija funkcionira čak i ako napadač otkrije pogrešku u procesu renderiranja i pokuša izvršiti kod u njegovom kontekstu;
  • Dodana je nova stranica za dobrodošlicu novim korisnicima (chrome://welcome/), koja se prikazuje umjesto standardnog sučelja za otvaranje nove kartice nakon prvog pokretanja Chromea. Stranica vam omogućuje da označite popularne Googleove usluge (GMail, YouTube, Maps, News i Translate), priložite prečace na stranicu Nova kartica, povežete se s Google računom kako biste omogućili Chrome Sync i postavite Chrome kao zadani poziv u sustavu .
  • Izbornik stranice nove kartice, prikazan u gornjem desnom kutu, sada ima mogućnost učitavanja pozadinske slike, kao i opcije za odabir teme i postavljanje bloka s prečacima za brzu navigaciju (najčešće posjećene stranice, ručni korisnički odabir , i skrivanje blokova s ​​prečacima). Postavke su trenutno pozicionirane kao eksperimentalne i zahtijevaju aktivaciju putem zastavica “chrome://flags/#ntp-customization-menu-v2” i “chrome://flags/#chrome-colors-custom-color-picker”;
  • Omogućena je animacija ikone web mjesta u zaglavlju kartice, signalizirajući da je stranica u procesu učitavanja;
    Dodana je zastavica "--guest", koja vam omogućuje pokretanje Chromea iz naredbenog retka u načinu prijave za goste (bez povezivanja s Google računom, bez snimanja aktivnosti preglednika na disk i bez spremanja sesije);
  • Čišćenje zastavica u chrome://flags koje je započelo u prošlom izdanju se nastavlja. Umjesto zastavica, sada se preporučuje korištenje skupova pravila za konfiguriranje ponašanja preglednika;
  • Gumb "Pošalji na svoje uređaje" dodan je u kontekstni izbornik stranice, kartice i adresne trake, što vam omogućuje slanje veze na drugi uređaj pomoću Chrome sinkronizacije. Nakon odabira odredišnog uređaja povezanog s istim računom i slanja veze, na ciljnom uređaju će se prikazati obavijest za otvaranje veze;
  • U verziji za Android potpuno je redizajnirana stranica s popisom preuzetih datoteka u kojoj su umjesto padajućeg izbornika sa sadržajnim odjeljcima dodani gumbi za filtriranje općeg popisa prema vrsti sadržaja te sličice preuzetih slika sada se prikazuju preko cijele širine zaslona;
  • Dodane su nove metrike za procjenu brzine učitavanja i prikazivanja sadržaja u pregledniku, omogućujući web programeru da odredi koliko brzo glavni sadržaj stranice postaje dostupan korisniku. Prethodno ponuđeni alati za kontrolu renderiranja omogućavali su procjenu samo činjenice da je renderiranje počelo, ali ne i spremnost stranice u cjelini. Chrome 77 nudi novi Largest Contentful Paint API, koji vam omogućuje da saznate vrijeme renderiranja velikih (korisniku vidljivih) elemenata u vidljivom području, kao što su slike, video zapisi, elementi blokova i pozadine stranica;
  • Dodan PerformanceEventTiming API, koji pruža informacije o kašnjenju prije prve korisničke interakcije (na primjer, pritisak na tipku na tipkovnici ili mišu, klik ili pomicanje pokazivača). Novi API podskup je EventTiming API-ja koji pruža dodatne informacije za mjerenje i optimiziranje odziva sučelja;
  • Dodane su nove značajke za obrasce koje olakšavaju korištenje vlastitih nestandardnih kontrola obrazaca (nestandardna polja za unos, gumbi itd.). Novi događaj "formdata" omogućuje korištenje JavaScript rukovatelja za dodavanje podataka u obrazac kada se pošalje, bez potrebe za pohranjivanjem podataka u skrivene elemente unosa.
    Druga nova značajka je podrška za kreiranje prilagođenih elemenata povezanih s obrascem koji djeluju kao ugrađene kontrole obrasca, uključujući mogućnosti poput omogućavanja provjere valjanosti unosa i pokretanja slanja podataka na poslužitelj. Uvedeno je svojstvo formAssociated za označavanje elementa kao komponente sučelja obrasca, a dodan je poziv attachInternals() za pristup dodatnim metodama kontrole obrasca kao što su setFormValue() i setValidity();
  • U Origin Trials modu (eksperimentalne značajke koje zahtijevaju zasebnu aktivaciju), dodan je novi Contact Picker API, koji korisniku omogućuje odabir unosa iz adresara i prijenos određenih detalja o njima na stranicu. Prilikom podnošenja zahtjeva utvrđuje se popis nekretnina koje je potrebno pribaviti (na primjer, puno ime, e-mail, broj telefona). Ta su svojstva jasno prikazana korisniku, koji donosi konačnu odluku o prijenosu podataka ili ne. API se može koristiti, na primjer, u klijentu web pošte za odabir primatelja za poslano pismo, u web aplikaciji s VoIP funkcijom za pokretanje poziva na određeni broj ili u društvenoj mreži za traženje već registriranih prijatelja .
    Origin Trial podrazumijeva mogućnost rada s navedenim API-jem iz aplikacija preuzetih s localhosta ili 127.0.0.1, ili nakon registracije i primanja posebnog tokena koji vrijedi ograničeno vrijeme za određenu stranicu;
  • Za forme je implementiran atribut “enterkeyhint” koji omogućuje definiranje ponašanja kada pritisnete tipku Enter na virtualnoj tipkovnici. Atribut može imati vrijednosti enter, done, go, next, previous, search i send;
  • Dodano je pravilo domene dokumenta koje kontrolira pristup svojstvu "document.domain". Prema zadanim postavkama pristup je dopušten, ali ako je odbijen, pokušaj promjene vrijednosti “document.domain” rezultirat će pogreškom;
  • Poziv LayoutShift dodan je Performance API-ju za praćenje promjena u položaju DOM elemenata na zaslonu.
    Veličina zaglavlja HTTP "Referer" ograničena je na 4 KB; ako je ta vrijednost premašena, sadržaj se skraćuje na naziv domene;
  • Argument url u funkciji registerProtocolHandler() ograničen je na korištenje samo shema http:// i https:// i sada ne dopušta sheme "data:" i "blob:";
  • Dodana je podrška za formatiranje jedinica, valuta, znanstvenih i kompaktnih notacija metodi Intl.NumberFormat (na primjer, "Intl.NumberFormat('en', {style: 'unit', unit: 'meter-per-second'}") ;
  • Dodana su nova CSS svojstva overscroll-behavior-inline i overscroll-behavior-block za kontrolu ponašanja pomicanja kada se dosegne logička granica područja za pomicanje;
  • Svojstvo CSS white-space sada podržava vrijednost break-spaces;
  • Service Workers dodali su podršku za HTTP Basic autentifikaciju i prikaz standardnog dijaloga za unos parametara prijave;
  • Web MIDI API sada se može koristiti samo u kontekstu sigurne veze (https, lokalna datoteka ili lokalni host);
  • WebVR 1.1 API proglašen je zastarjelim, a zamijenio ga je WebXR Device API koji omogućuje pristup komponentama za kreiranje virtualne i proširene stvarnosti te objedinjuje rad s različitim klasama uređaja, od stacionarnih kaciga za virtualnu stvarnost do rješenja temeljenih na mobilnim uređajima.
    U alatima za razvojne programere, mogućnost kopiranja CSS svojstava DOM čvora u međuspremnik dodana je kroz kontekstni izbornik, koji se poziva desnim klikom na čvor u DOM stablu. Dodano je sučelje (Prikaži regije pomaka renderiranja/izgleda) za praćenje pomaka izgleda zbog nedostatka rezerviranih mjesta za oglašavanje i slike (prilikom učitavanja sljedeća slika pomiče tekst prema dolje prilikom gledanja). Kontrolna ploča ažurirana je na izdanje Lighthouse 5.1. Omogućeno je automatsko prebacivanje na tamnu temu DevTools kada koristite tamnu temu u OS-u. U načinu mrežnog pregleda dodana je oznaka za učitavanje resursa iz predmemorije prethodnog dohvaćanja. Dodana podrška za prikaz push poruka i obavijesti na ploči aplikacija. U web konzoli, pri pretpregledu objekata, sada se prikazuju privatna polja klasa;
  • U motoru V8 JavaScript optimizirano je pohranjivanje statistike o vrstama operanda koji se koriste u različitim operacijama (omogućuje vam da optimizirate izvršenje ovih operacija uzimajući u obzir specifične tipove). Kako bi se smanjila potrošnja memorije, vektori svjesni tipa sada se smještaju u memoriju tek nakon što se izvrši određena količina bajt-koda, čime se eliminira potreba za optimizacijama za funkcije s kratkim vijekom trajanja. Ova promjena omogućuje uštedu 1-2% memorije u verziji za desktop sustave i 5-6% za mobilne uređaje;
  • Poboljšana skalabilnost pozadinske kompilacije WebAssembly - što je više procesorskih jezgri u sustavu, veća je korist od dodanih optimizacija. Na primjer, na Xeon stroju s 24 jezgre, vrijeme kompilacije za demo aplikaciju Epic ZenGarden prepolovljeno je;

Uz inovacije i ispravke pogrešaka, nova verzija uklanja 52 ranjivosti. Mnoge od ranjivosti identificirane su kao rezultat automatiziranog testiranja pomoću alata AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer i AFL. Jedan problem (CVE-2019-5870) označen je kao kritičan, tj. omogućuje zaobilaženje svih razina zaštite preglednika i izvršavanje koda na sustavu izvan okruženja sandboxa. Pojedinosti o kritičnoj ranjivosti još nisu objavljene, poznato je samo da može dovesti do pristupa već oslobođenom memorijskom području u kodu za obradu multimedijskih podataka. U sklopu programa isplate novčanih nagrada za otkrivanje ranjivosti za trenutno izdanje, Google je isplatio 38 nagrada u vrijednosti od 33500 dolara (jedna nagrada od 7500 dolara, četiri nagrade od 3000 dolara, tri nagrade od 2000 dolara, četiri nagrade od 1000 dolara i osam nagrada od 500 dolara). Veličina 18 nagrada još nije određena.

Izvor: linux.org.ru

Dodajte komentar