Kompania Google prezantoi lëshimin e shfletuesit web Chrome 101. Ndërkohë, është në dispozicion një version i qëndrueshëm i projektit të hapur Chromium, i cili përbën bazën e Chrome. Shfletuesi Chrome dallon nga Chromium për përdorimin e logove të Google, sistemin e dërgimit të njoftimeve në rast crash, modul për riprodhimin e përmbajtjes video të mbrojtur nga kopjimi (DRM), sistemin e automatik të instalimit të azhurnimeve, aktivizimin e vazhdueshëm të Sandbox-isolimit, ofrimin e çelësave për Google API dhe transmetimin e parametrave RLZ gjatë kërkimeve. Për ata që kanë nevojë për më shumë kohë për azhurnim, mbështetet një degë e veçantë Extended Stable, që shoqërohet për 8 javë, në të cilën është formuar një azhurnim për lëshimin e kaluar Chrome 100. Lëshimi i ardhshëm i Chrome 102 është planifikuar për 24 maj.
Ndryshimet kryesore në Chrome 101:
- ĂshtĂ« shtuar funksioni Side Search, qĂ« ofron mundĂ«sinĂ« pĂ«r tĂ« parĂ« rezultatet e kĂ«rkimit nĂ« panelin anĂ«sor njĂ«kohĂ«sisht me shikimin e njĂ« faqe tjetĂ«r (nĂ« njĂ« dritare njĂ«kohĂ«sisht mund tĂ« shikoni si pĂ«rmbajtjen e faqes ashtu edhe rezultatin e kĂ«rkimit). Pas kalimit nĂ« njĂ« faqe nga faqja e rezultateve tĂ« kĂ«rkimit nĂ« Google, para fushĂ«s sĂ« hyrjes nĂ« shiritin e adresĂ«s shfaqet njĂ« ikonĂ« me shkronjĂ«n «G», e cila, duke klikuar mbi tĂ«, hap panelin anĂ«sor me rezultatet e kĂ«rkimit tĂ« mĂ«parshĂ«m. Nga parazgjedhja funksioni nuk Ă«shtĂ« aktivizuar nĂ« tĂ« gjitha sistemet, pĂ«r t'u aktivizuar mund tĂ« pĂ«rdorni cilĂ«simin «chrome://flags/#side-search».

- Në shiritin e adresës Omnibox është zbatuar para-renderimi (prerendering) i përmbajtjes së rekomandimeve, që ofrohen ndërsa shkruhet. Më parë, për të përshpejtuar kalimin nga shiritin e adresës, rekomandimet më të mundshme për kalim shkarkoheshin pa pritur klikimin e përdoruesit, duke përdorur thirrjen Prefetch. Tani, përveç shkarkimit, ato gjithashtu para-renderohen në memorie (në përfshirje ekzekutohen skenarët dhe formohet struktura DOM), duke mundësuar që rekomandimet të shfaqen menjëherë pas klikimit. Për menaxhimin e para-renderimit janë propozuar cilësimet «chrome://flags/#enable-prerender2», «chrome://flags/#omnibox-trigger-for-prerender2» dhe «chrome://flags/#search-suggestion-for-prerender2».
- Informacioni në HTTP-headin User-Agent dhe parametrat JavaScript navigator.userAgent, navigator.appVersion dhe navigator.platform janë reduktuar. Në heading janë lënë vetëm informacionet mbi emrin e shfletuesit, versionin e rëndësishëm të shfletuesit (komponentët e versionit MINOR.BUILD.PATCH janë zëvendësuar me 0.0.0), platformën dhe llojin e pajisjes (telefon mobil, PC, tabletë). Për të marrë të dhëna të tjera, si versioni i saktë dhe të dhëna të avancuara mbi platformën, është e nevojshme të përdoret API User Agent Client Hints. Për sa i përket faqeve që nuk kanë nevojë për informacion të ri dhe që ende nuk janë gati të kalojnë në User Agent Client Hints, deri në maj 2023 është ofruar mundësia e kthimit të plotë të User-Agent.
- Kushtet e funksionit setTimeout janĂ« ndryshuar kur kalon njĂ« argument zero qĂ« pĂ«rcakton vonesĂ«n e thirrjes. Duke filluar me Chrome 101, me specifikimin "setTimeout(âŠ, 0)" kodi do tĂ« thirret menjĂ«herĂ«, pa vonesĂ« prej 1ms, siç kĂ«rkon specifikata. PĂ«r thirrje tĂ« ripĂ«rsĂ«ritura tĂ« brendshme setTimeout, aplikohet njĂ« vonesĂ« prej 4ms.
- Në versionin për platformën Android është implementuar mbështetje për kërkesën e autorizimeve për dërgimin e njoftimeve (në Android 13 për të shfaqur njoftime, aplikacioni duhet të ketë autorizimin "POST_NOTIFICATIONS", përndryshe dërgimi i njoftimeve do të bllokohet). Kur Chrome hapet në mjedisin Android 13, shfletuesi tani do të shfaqë kërkesën për marrjen e autorizimeve për dërgimin e njoftimeve.
- Ka ndodhur heqja e mundësisë për të përdorur API WebSQL në skriptet e palëve të treta. Në mënyrë të paracaktuar, bllokimi i WebSQL në skriptet e shkarkuara nga vende që nuk janë aktuale, ishte aktivizuar në Chrome 97, por ishte lënë një mundësi për të çaktivizuar këtë sjellje. Në Chrome 101 kjo mundësi është hequr. Në të ardhmen planifikohet që mbështetja për WebSQL të pezullohet gradualisht, pavarësisht kontekstit të përdorimit. Në vend të WebSQL rekomandohet përdorimi i API-së Web Storage dhe Indexed Database. Menaxhuesi WebSQL është i bazuar në kodin SQLite dhe mund të ishte përdorur nga sulmuesit për të shfrytëzuar dobësitë në SQLite.
- Emrat e politikave pĂ«r ndĂ«rmarrjet (chrome://policy) qĂ« pĂ«rmbajnĂ« terma jo-inkluzivĂ« janĂ« hequr. Duke filluar me Chrome 86, pĂ«r politikat e specifikuara janĂ« ofruar zĂ«vendĂ«sime qĂ« pĂ«rdorin terminologji inkluzive. ĂshtĂ« bĂ«rĂ« pastrimi i terma si "whitelist", "blacklist", "native" dhe "master". PĂ«r shembull, politika URLBlacklist Ă«shtĂ« riemĂ«ruar nĂ« URLBlocklist, AutoplayWhitelist nĂ« AutoplayAllowlist, dhe NativePrinters nĂ« Printers.
- Në mënyrën Origin Trials (mundësi eksperimentale që kërkojnë aktivizim të veçantë), testimi i API Federated Credential Management (FedCM) ka filluar vetëm në ndërtimet për platformën Android, e cila lejon krijimin e shërbimeve të bashkuara të identifikimit, duke garantuar ruajtjen e privatësisë dhe duke punuar pa mekanizma ndjekjeje të ndërmjetëm, siç është përpunimi i Cookie-ve të palëve të treta. Trial Origin nënkupton mundësinë e përdorimit të këtij API nga aplikacione të shkarkuara nga localhost ose 127.0.0.1, ose pas regjistrimit dhe marrjes së një t_tokeni të veçantë, i cili ka një afat të kufizuar veprimi për një faqe të caktuar.
- Mekanizmi Priority Hints është stabilizuar dhe ofrohet për të gjithë ata që e duan, duke lejuar përcaktimin e rëndësisë së burimeve të ngarkuara përmes specifikimit të atributit shtesë 'importance' në etiketat si iframe, img dhe link. Ky atribut mund të marrë vlera 'auto', 'low' dhe 'high', të cilat ndikojnë në rendin e ngarkimit të burimeve të jashtme nga shfletuesi.
- Shtuar është pronësia AudioContext.outputLatency, përmes së cilës mund të merret informacion mbi ecurinë e vonesës së parashikuar para daljes së zërit (vonësën mes kërkesës për zë dhe fillimin e përpunimit të të dhënave të pranuara nga aparati i daljes së zërit).
- Shtuar është pronësia CSS font-palette dhe rregulli @font-palette-values, që lejojnë përzgjedhjen e një palete nga një font i ngjyrosur ose përcaktimin e një palette të personalizuar. Për shembull, këto mundësi mund të përdoren për të përshtatur fontet me ngjyra ose emoji me ngjyrën e dizajnit të përmbajtjes ose për të aktivizuar modalitetin e errët ose të ndritur për fontin.
- Shtatë është funksioni CSS hwb(), që ofron një metodë alternative për të specifikuar ngjyrat sRGB në formatin HWB (Hue, Whiteness, Blackness), i ngjashëm me formatin HSL (Hue, Saturation, Lightness), por më i thjeshtë për perceptimin e njeriut.
- Në metodën window.open(), specifikimi i pronës popup në vargun windowFeatures, pa i caktuar një vlerë (dmth. kur thjesht përmendet popup, jo popup=true) tani përpunon si aktivizim për hapjen e një dritarja të vogël hapëse (si 'popup=true') në vend të caktimit të vlerës 'false' siç ishte e logjikshme dhe e shkaktonte konfuzion për zhvilluesit.
- Në API MediaCapabilities, i cili ofron informacion mbi kapacitetet e pajisjes dhe shfletuesit për dekodimin e përmbajtjeve multimediale (kodekët, profillet, bitrate-t dhe rezolucionet e mbështetura), është shtuar mbështetje për rrjedhat WebRTC.
- Versioni i tretë i API-së Secure Payment Confirmation është propozuar, duke ofruar mjete për konfirmimin e ndihmës së operacioneve të pagesës. Në versionin e ri është shtuar mbështetje për identifikuesit që kërkojnë futjen e të dhënave, përcaktimin e ikonës për tregimin e dështimit të verifikimit, si dhe një pronë opsionale payeeName.
- Në API USBDevice është shtuar metoda forget() për të tërhequr autorizimet e dhëna më parë nga përdoruesi për qasje në pajisjen USB. Për më tepër, instancat e USBConfiguration, USBInterface, USBAlternateInterface dhe USBEndpoint tani janë të barabarta në krahasimin e rreptë ("===", tregojnë për një objekt të vetëm), nëse janë kthyer për të njëjtin objekt USBDevice.
- PĂ«rmirĂ«sime janĂ« bĂ«rĂ« nĂ« mjetet pĂ«r zhvilluesit web. ĂshtĂ« ofruar mundĂ«sia pĂ«r eksportimin dhe importimin nĂ« formatin JSON tĂ« veprimeve tĂ« regjistruara nga pĂ«rdoruesi (shembuj). NĂ« konsolĂ«n web dhe nĂ« ndĂ«rfaqen e shikimit tĂ« kodit Ă«shtĂ« pĂ«rmirĂ«suar llogaritja dhe shfaqja e pronave private. ĂshtĂ« shtuar mbĂ«shtetje pĂ«r punĂ«n me modelin e ngjyrave HWB. NĂ« panelin CSS Ă«shtĂ« shtuar mundĂ«sia pĂ«r tĂ« parĂ« shtresat kaskadĂ«, tĂ« caktuara me rregullĂ«n @layer.

Përveç novacioneve dhe rregullimeve të gabimeve, versioni i ri ka eliminuar 30 vulnerabilitete. Shumë nga vulnerabilitetet janë identifikuar përmes testimit automatizuar me mjete si AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer dhe AFL. Problemet kritike që lejojnë kalimin e të gjitha niveleve të mbrojtjes së shfletuesit dhe ekzekutimin e kodit në sistem jashtë mjedisit sandbox nuk janë zbuluar. Në kuadër të programit për shpërblimin monetar për zbulimin e vulnerabiliteteve për këtë lëshim, kompania Google ka dhënë 25 shpërblime me një total prej 81,000 dollarësh (një shpërblim $10,000, tre shpërblime $7,500, tri shpërblime $7,000, një shpërblim $6,000, dy shpërblime $5,000, katër shpërblime $2,000, tre shpërblime $1,000 dhe një shpërblim $500). Shuma e 6 shpërblimeve ende nuk është përcaktuar.
Burimi: opennet.ru


