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 , e cila lejon qĂ« tĂ« krijoni lidhje nĂ« fjalĂ« ose fraza tĂ« veçanta, pa treguar qartĂ« nĂ« dokument etiketat pĂ«rmes tag-ut «a name» ose pronĂ«s «id». PĂ«r tĂ« transmetuar lidhjen, propozohet njĂ« parameter specifik «#targetText=», nĂ« tĂ« cilin mund tĂ« pĂ«rcaktoni tekstin pĂ«r kalimin. Lejohet pĂ«rcaktimi i njĂ« maske, qĂ« pĂ«rfshin fraza qĂ« tregojnĂ« fillimin dhe pĂ«rfundimin e fragmentit duke pĂ«rdorur presjen si ndarĂ«s (pĂ«r shembull, «example.com#targetText=startwords, endwords»);
- 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

