Kompania Google lëshimin e shfletuesit web . Në të njëjtën kohë ndër-vara i stabil i projektit të lirë , që shërben si baza për Chrome. Shfletuesi Chrome përdorimi i logotipëve Google, mundësia e ngarkimit të modulit Flash në kërkesë, ekzistenca e një sistemi njoftimi në rast dështimi, module për riprodhimin e përmbajtjes video të mbrojtur, një sistem automatik për instalimin e përditësimeve dhe transmetimin gjatë kërkimit . Çelja e ardhshme e Chrome 75 është caktuar për 4 qershor.
:
- Kur ndodh ngjarja onUnload, e cila shkaktohet gjatë mbylljes së faqes, tani do të shfaqë dritare pop-up (shkaktohet bllokimi i thirrjes window.open()), duke siguruar mbrojtje për përdoruesit nga hapja e detyruar e faqeve reklamë pas mbylljes së faqeve të dyshimta;
- Në motorin JavaScript ka një modë të re (flamuri "—jitless"), që jep mundësinë për të ekzekutuar JavaScript pa përdorimin e JIT (përdoret vetëm interpreti) dhe pa alokimin e memories ekzekutive gjatë ekzekutimit të kodit. Çaktivizimi i JIT mund të jetë i dobishëm për rritjen e sigurisë gjatë punës me aplikacione web potencialisht të rrezikshme, si dhe për sigurimin e ndërtimit në platforma që ndalojnë përdorimin e JIT (p.sh., në iOS, në disa Smart TV dhe konsola lojërash). Kur JIT është i çaktivizuar, performanca e ekzekutimit të JavaScript zvogëlohet me 40% në testin Speedometer 2.0 dhe me 80% në testin Web Tooling Benchmark, por gjatë simulimit të punës me YouTube është vënë re një rënie të performancës vetëm me 6%. Konsumi i memories në këtë rast zvogëlohet pak, me vetëm 1.7%;
- Në V8 gjithashtu janë propozuar një sasi e madhe optimizimesh të reja. Për shembull, është rritur me 60% ekzekutimi i thirrjeve të funksioneve, në të cilat numri i parametrave të kaluara në fakt nuk përputhet me numrin e argumenteve të specifikuar gjatë përcaktimit të funksionit. Përdorimi i funksionit get ka përshpejtuar qasjen në pronësitë DOM, e cila ka ndikuar pozitivisht në performancën e kornizës Angular. Punimi i analizës së JavaScript është përshpejtuar: optimizimi i dekoduesit UTF-8 ka rritur performancën e parserit në modalitetin streaming (analizë gjatë ngarkimit) me 8%, ndërsa përjashtimi i operacioneve të tepërta të deduplication ka dhanë një rritje tjetër prej 10.5%;
- është punuar për të reduktuar konsumimin e memories së motorit JavaScript.
është shtuar një kod për pastrimin e cache-it të kodit të byte, i cili zë rreth 15% të të gjithë madhësisë së kupës. Në mbledhësin e plehrave është shtuar një fazë për dëbimin nga cache-i të kodit të byte të kompiluar rrallë për funksionet e përdorura ose funksionet që thirren vetëm gjatë inicializimit. Vendimi për pastrimin merret në bazë të numëruesve të rinj, të cilët marrin parasysh kohën e fundit të qasjes në kodin e byte. Ky ndryshim ka mundësuar uljen e konsumit të memories me 5–15% pa pasur ndikim negativ në performancë. Për më tepër, në kompilarin e kodit të byte është përjashtuar gjenerimi i kodit që me siguri nuk do të përdoret, për shembull, ai që ndjek pas return ose break (nëse nuk ka kalim Jump);
- Për WebAssembly përkrahja e rrjedhave dhe operacioneve atomike (API WebAssembly Threads dhe WebAssembly Atomics);
- Për shpërndarjen e veçantë të skripteve është shtuar mbështetje për titullin "#!", i cili përcakton interpretorin për ekzekutimin. Për shembull, në përputhje me gjuhët e tjera skritpor, skedari JavaScript mund të duket kështu:
#!/usr/bin/env node
console.log(42); - Në CSS është shtuar një kërkesë të re media "", e cila lejon që faqja të përcaktojë gjendjen e konfigurimeve në sistemin operativ, të lidhura me çaktivizimin e efekteve të animuar. Me ndihmën e kësaj kërkese, pronari i faqes mund të kuptojë se përdoruesi ka çaktivizuar efektet animate dhe gjithashtu të çaktivizojë mundësitë e ndryshme animuese në faqen e internetit, për shembull, të heqë efektin e dridhjes së butonave, të përdorur për të tërhequr vëmendjen;
- Në përveçim të mundësisë së shfaqur në Chrome 72 për përcaktimin e fushave publike e shënimit të fushave si private, pas të cilit qasja në vlerat e tyre do të jetë e hapur vetëm brenda klasës. Për të shënuar një fushë si private, duhet të vendoset simboli "#" para emrit të fushës. Si në rastin e fushave publike, pronësitë private nuk kërkojnë përdorimin e qartë të konstruktorit.
- Titulli HTTP Feature-Policy, që lejon menaxhimin e sjelljes së API-ve dhe aktivizimin e mundësive të caktuara (p.sh., është e mundur të aktivizoni modin e punës sinkron në XMLHttpRequest ose të çaktivizoni Geolocation API), është plotësuar për kontrollin e aktivizimit të mundësive të caktuara. Për zhvilluesit janë propozuar dy metoda të reja document.featurePolicy dhe frame.featurePolicy, që ofrojnë tre funksione:
allowedFeatures() për të marrë një listë të funksioneve të lejuara për domain aktual, allowsFeature() për verifikimin selektiv të aktivizimit të mundësive të caktuara dhe getAllowlistForFeature() për daljen e listës së domainëve për të cilët në faqen aktuale lejohet mundësia e caktuar; - Është shtuar mbështetje eksperimentale ("chrome://flags#enable-text-fragment-anchor") për modalitetin , позволяющего формировать ссылки на отдельные слова или фразы, без явного указания в документе меток при помощи тега «a name» или свойства «id». Для передачи ссылки предлагается специальный параметр «#targetText=», в котором можно указать текст для перехода. Допускается указание маски, включающей фразы, указывающие на начало и конец фрагмента с использованием запятой в качестве их разделителя (например, «example.com#targetText=start%20words, end%20words»);
- Në konstruktorin AudioContext është shtuar një mundësi , e cila lejon të vendosni frekuencën e mostrimit për operacionet me zë përmes Web Audio API;
- Është shtuar mbështetje për klasën , e cila ofron metoda për analizimin dhe përpunimin e parametrave të caktuar nga regjioni, gjuhës dhe shkrimit, si dhe për të lexuar dhe shkruar etiketat e zgjerimit Unicode, duke ruajtur cilësimet e përdoruesit për regjionin në një format të serializuar;
- Mekanizmi (SXG) është zgjeruar me mjete për distributorët e përmbajtjes për gabimet e ngarkimit të përmbajtjes së nënshkruar, siç janë problemet me verifikimin e certifikatave. Trajtimi i gabimeve kryhet përmes zgjerimeve të API-së . Kujtojmë se SXG lejon pronarin e një site-i, përmes një firme digjitale, të autorizojë vendosjen e disa faqeve në një tjetër site, pas së cilës, kur përdoruesit ndajnë këto faqe në sitin e dytë, shfletuesi do t'i tregojë atyre URL-në e site-it origjinal, pavarësisht se faqja është ngarkuar nga një host tjetër;
- Në klasën TextEncoder është shtuar metoda , e cila lejon të shkruani një varg të koduar direkt në një tampon të paraprakisht të ndarë. Metoda encodeInto() është një alternativë me performancë të lartë ndaj metodës encode(), e cila kërkon kryerjen e një operacioni ndarjeje të tamponit me çdo thirrje.
- Në shërbimin worker është ruajtur thirrja client.postMessage() deri në momentin kur dokumenti është gati. Mesazhet e dërguara përmes client.postMessage() do të mbahen deri në fazën e gjenerimit të ngjarjes DOMContentLoaded, vendosjes së onmessage ose thirrjes startMessages();
- Në përputhje me kërkesat e specifikimit CSS Transitions ngjarjet transitionrun, transitioncancel, transitionstart dhe transitionend, të cilat gjenerohen kur një CSS-transition është vendosur në radhë, anulohet, fillon ose përfundon.
- Kur tregoni përmes overrideMimeType() ose MIME-tipin e papërshtatshëm të kodimit të simboleve për kërkesën XMLHttpRequest, tani kryhet kthimi në UTF-8 në vend të Latin-1;
- Është shpallur i vjetruar dhe do të hiqet në një nga lëshimet e ardhshme pronësia "allow-downloads-without-user-activation", përmes së cilës ishte e mundur të organizohej shkarkimi automatik i skedarëve gjatë përpunimit në iframe. Në të ardhmen, iniciimi i shkarkimeve të skedarëve pa veprimin e shprehur të përdoruesit do të ndalohet, pasi është përdorur aktivisht për abuzime, ngarkimin e skedarëve dhe inkorporimin e pjesëve të kodit të dëmshëm në kompjuterin e përdoruesit. Për të filluar shkarkimin do të kërkohet një klikim i përdoruesit në të njëjtën faqe. Fillimisht, pronësia ishte planifikuar të hiqej në Chrome 74, por heqja u shty nga Chrome 76.
- Për platformën Windows është propozuar një temë e errët opsionale të ndërfaqes (në lëshimin e mëparshëm tema e errët ishte përgatitur për macOS). Duke qenë se tema e errët është pothuajse identike me dizajnin në modin inkognito, për të dalluar modin privat të punës është shtuar një tregues i veçantë në vend të ikonës së profilit të përdoruesit;
- Për përdoruesit e korporatave është shtuar mundësia për të menaxhuar cilësimet e shfletuesve të përdoruesve përmes konsolës Google Admin;
Përveç novacioneve dhe rregullimit të gabimeve, në versionin e ri janë eliminuar . Shumë nga vulnerabilitetet janë identifikuar përmes testimit automatizuar me mjete , , , dhe . Nuk janë zbuluar probleme kritike, të cilat mund të kalojnë të gjitha nivelet e mbrojtjes së shfletuesit dhe të ekzekutojnë kodin në sistem jashtë sandbox-it. Në kuadër të programit të shpërblimit për identifikimin e vulnerabiliteteve për lëshimin aktual, kompania Google ka shpërblyer 19 çmime me një total prej 26837 dollarësh (katër çmime $3000, katër çmime $2000, një çmim $1337, katër çmime $1000, tre çmime $500). Shuma e 4 shpërblimeve ende nuk është përcaktuar.
Burimi: opennet.ru

