Google publikigis la retumilon Chrome 147. Samtempe, stabila eldono de la senpaga projekto Chromium, kiu estas la bazo de Chrome, estas havebla. La retumilo Chrome diferencas de Chromium per tio, ke ĝi uzas Google-emblemojn, havas sistemon por sendi sciigojn okaze de kraŝo, havas modulojn por ludi kopi-protektitan filmeton (DRM), havas aŭtomatan sistemon por instali ĝisdatigojn, ĉiam ebligas Sandbox-izoladon, provizas ŝlosilojn al la Google API, kaj transdonas RLZ-parametrojn dum serĉado. Por tiuj, kiuj bezonas pli da tempo por ĝisdatigi, ekzistas aparta branĉo "Extended Stable", kiu estas subtenata dum 8 semajnoj. La sekva eldono, Chrome 148, estas planita por la 5-a de majo.
Ŝlosilaj ŝanĝoj en Chrome 147 (1, 2, 3, 4):
- Vertikala langeta montra reĝimo estis aldonita, anstataŭigante la supran horizontalan stangon per langetaj butonoj per flanka stango kun vertikalaj langetoj. Vertikalaj langetoj povas esti montrataj en vastigitaj (ikono + parta priskribo) aŭ malvastigitaj (nur ikonoj) reĝimoj. Ŝvebado super flanka langeto montras bildeton de ĝia enhavo. La administrado de langetaj grupoj estis simpligita. Opcio "Montri Langetojn Vertikale" estis aldonita al la kunteksta menuo, kiu aperas kiam oni dekstre alklakas la langetan vicon. Se ĉi tiu opcio ne estas montrata defaŭlte, ĝi povas esti ebligita per la agordo "chrome://flags/#vertical-tabs".
- La legreĝimo estis restrukturita por montri nur la koncernan tekston sur paĝo, kaŝante ĉiujn rilatajn kontrolojn, standardojn, menuojn, navigaciajn stangojn kaj aliajn ne-enhav-rilatajn partojn de la paĝo. En la nova versio, simile al Fajrovulpo, koncerna enhavo estas montrata en la tuta videbla areo, anstataŭ en mallarĝa flanka kolumno apud la originala paĝo. Se la nova reĝimo ne estas ebligita defaŭlte, ĝi povas esti ebligita per la agordo "chrome://flags/#read-anything-immersive-reading-mode".
- Butono estis aldonita al la menuo "Helpo" por sendi plendon por bloki retpaĝojn kreitajn por fraŭdo aŭ fiŝado. Ĉi tiu butono estas montrata kiam la reĝimo "Sekura Foliumado" estas ebligita.
- Plivastigita protekto kontraŭ aliro al lokaj sistemoj dum interagado kun publikaj retejoj. Aliro de retejoj al IP-adresoj La loka reto (intrareto aŭ internaj adresoj) aŭ buklorekta interfaco (127.0.0.0/8) postulos uzantan konfirmon. Protekto nun kovras ne nur provojn ŝargi rimedojn per HTTP/HTTPS, fetch() petoj, kaj iframe-enmetoj, sed ankaŭ konektojn per WebSockets kaj WebTransport, same kiel fetch-petojn iniciatitajn per la metodo WindowClient.navigate(). Atakantoj ekspluatas internan rimedan aliron por nerekta identigo kaj por efektivigi CSRF-atakojn kontraŭ enkursigiloj, alirpunktoj, presiloj, entreprenaj retinterfacoj, kaj aliaj aparatoj kaj servoj, kiuj akceptas petojn nur de la loka reto.
- La funkcio de XML-analizado estis migrita de libxml2 al nova biblioteko skribita en Rust konsiderante sekurecon. Ĉi tiu ŝanĝo validas nur por XML; kiel antaŭe anoncite, subteno por XSLT baldaŭ estos malrekomendita.
- Nun eblas uzi la metodon startViewTransition() ne nur por la tuta paĝo, sed ankaŭ por individuaj HTML-elementoj.
- La CSS-funkcio contrast-color() estis aldonita. Ĝi redonas la malon de la specifita koloro (por blanka, ĝi redonas nigran, kaj por nigra, ĝi redonas blankan). Ĉi tiu funkcio povas esti uzata por kongruigi la fonkoloron de specifa tekstokoloro, kaj inverse.
- La CSS-eco "border-shape" estis aldonita, permesante al vi krei ne-rektangulajn limojn ĉirkaŭ elementoj, ekzemple uzante cirklajn aŭ plurlaterajn limojn. La CSS-eco "border-shape" akceptas la samajn formospecojn kiel la eco "clip-path", sed male al ĉi-lasta, ĝi detektas konturon, deĉifras ĝin, kaj altranĉas ajnan enhavon, kiu etendiĝas preter la konturo.
- Aldonis la interfacon CSSPseudoElement, kiu ebligas labori kun CSS-pseŭdoelementoj el JavaScript.
- La ligilo-elemento nun subtenas la uzon de la atributo "rel=modulepreload" por antaŭŝargi ne nur skriptojn, sed ankaŭ modulojn kun CSS-stiloj ( ) kaj JSON-datumoj ( ).
- La konduto de kalkulado de la larĝo de borderoj kaj konturoj en la CSS-ecoj border-width, outline-width, kaj column-rule-width estis ŝanĝita, unuigante ĝin kun Firefox kaj WebKit-bazitaj retumiloj. Antaŭe, la larĝo en ĉi tiuj ecoj estis restarigita al nulo, sendepende de iliaj valoroj, se la ecoj border-style, outline-style, aŭ column-rule-style estis agorditaj al "none" aŭ "hidden". Nun, la valoroj order-width, outline-width, kaj column-rule-width ĉiam respondas al la de la programisto difinitaj valoroj, sendepende de la enhavo de la ecoj "*-style".
- Aldonita la Math.sumPrecise()-metodo por kalkuli la sumon de elementoj de tabeloj kaj aliaj kalkuleblaj objektoj kun precizeco superanta la precizecon de regula sumado en buklo (precizecperdoj estas forigitaj dum meze konservante la rezultojn).
- Aldonis la atributon Request.isReloadNavigation por detekti kiam paĝo estis reŝargita, ekzemple, post alklako de la butono "Refreŝigi" aŭ alvoko de la metodoj location.reload() kaj history.go(0).
- Por redukti la precizecon de nerekta identigo, la logiko por rondigi la memorgrandecon resenditan per la API de Aparata Memoro, kiu provizas informojn pri la RAM-grandeco, estis ŝanĝita. Ĉi tiu informo povas esti utila por krei malpezajn versiojn de TTT-aplikaĵoj, kiuj ŝarĝiĝas sur aparatoj kun limigita RAM aŭ por aktivigi progresintajn funkciojn kiam grandaj kvantoj da memoro estas haveblaj. En konstruoj por la platformo Android Memorgrandeco nun estas rondigita al 1, 2, 4 kaj 8, kaj por aliaj platformoj al 2, 4, 8, 16 kaj 32.
- Por izolitaj TTT-aplikaĵoj (IWA), la TTT-Presada API estas efektivigita, provizante metodojn por determini la haveblecon de presiloj, sendi dokumentojn por presi, kaj administri la pres-atendovicon. La atributnomoj kaj semantiko uzataj en la API respondas al la Interreta Presprotokolo (IPP).
- La reĝimo "Origin trials" efektivigas la WebNN API-on, kiu permesas la uzon de maŝinlernadaj servoj provizitaj de la operaciumo kaj rilataj aparataraj kapabloj.
- Plibonigoj estis faritaj al la iloj por retpaĝaj programistoj. La enkonstruita artefarita inteligenteco-asistanto nun aŭtomate elektas kuntekstojn. La panelo "Aparata Reĝimo", uzata por testi la rendimenton de retejoj sur diversaj porteblaj aparatoj, estis modernigita. La panelo Reto nun aŭtomate deĉifras kunpremitan enhavon por petoj senditaj kun la kaplinio Content-Encoding: gzip aŭ deflate. Regulaj esprimoj nun uzeblas por filtri CSS-stilojn.
Aldone al novaj funkcioj kaj cimo-riparoj, la nova versio traktas 60 vundeblecojn. Multaj el la vundeblecoj estis identigitaj per aŭtomata testado uzante AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer, kaj AFL. Du problemoj (bufro-superfluo kaj entjera superfluo en WebML) ricevis kritikan severecnivelon, kio signifas, ke ili povus preteriri ĉiujn tavolojn de retumila protekto kaj efektivigi kodon ekster la sablokestmedio. Kiel parto de sia vundebleca rekompencprogramo por la nuna eldono, Google establis 60 rekompencojn kaj aljuĝis 118 000 USD (du rekompencoj de 43 000 USD, du rekompencoj de 11 000 USD, kaj po unu rekompenco de 4 000 USD, 3 000 USD, 2 000 USD kaj 1 000 USD). La kvantoj de 52 rekompencoj ankoraŭ ne estas determinitaj.
fonto: opennet.ru
