Rilaxx ta' Chrome 74

Google ippreżentata rilaxx tal-web browser Chrome 74... Fl-istess ħin disponibbli rilaxx stabbli ta 'proġett b'xejn Kromju, li hija l-bażi ta' Chrome. Chrome browser differenti l-użu ta' logos ta' Google, il-ħila li tniżżel modulu Flash fuq talba, il-preżenza ta' sistema biex jintbagħtu notifiki f'każ ta' ħabta, moduli biex jintlagħab kontenut ta' vidjo protett, sistema għall-installazzjoni awtomatika ta' aġġornamenti u trażmissjoni waqt it-tfittxija Parametri RLZ. Ir-rilaxx li jmiss ta 'Chrome 75 huwa skedat għall-4 ta' Ġunju.

Il-prinċipali bidliet в chrome 74:

  • Meta jseħħ l-avveniment onUnload, li jissejjaħ meta l-paġna tingħalaq, issa projbit wiri twieqi pop-up (is-sejħa window.open() hija mblukkata), li jipproteġu lill-utenti milli jkunu sfurzati jiftħu paġni ta 'reklamar wara li jagħlqu siti dubjużi;
  • Fil-magna JavaScript implimentati deher reġim ġdid JIT-inqas bandiera ("—jitless"), li tagħmilha possibbli li tesegwixxi JavaScript mingħajr ma tuża JIT (jintuża biss l-interpretu) u mingħajr ma tiġi allokata memorja eżekutibbli waqt l-eżekuzzjoni tal-kodiċi. Id-diżattivazzjoni ta' JIT tista' tkun utli biex tittejjeb is-sigurtà meta taħdem ma' applikazzjonijiet tal-web potenzjalment perikolużi, kif ukoll biex tiżgura bini fuq pjattaformi li jipprojbixxu l-użu ta' JIT (pereżempju, iOS, xi televiżjonijiet intelliġenti u consoles tal-logħob. Meta JIT tkun diżattivata, l-eżekuzzjoni ta' JavaScript. il-prestazzjoni tonqos b'40% fit-test tal-Ispeedometer 2.0 u 80% fit-test tal-Web Tooling Benchmark, iżda meta s-simulazzjoni tax-xogħol ma 'YouTube, kien hemm biss tnaqqis ta' 6% fil-prestazzjoni, filwaqt li l-konsum tal-memorja naqas ftit, b'1.7% biss;
  • V8 joffri wkoll porzjon kbir ta 'ottimizzazzjonijiet ġodda. Per eżempju, l-eżekuzzjoni ta 'sejħiet ta' funzjoni li fihom in-numru ta 'parametri attwalment mgħoddija ma jikkorrispondix man-numru ta' argumenti speċifikati meta tiddefinixxi l-funzjoni ġiet aċċellerata b'60%. L-aċċess għall-proprjetajiet DOM bl-użu tal-funzjoni get ġie aċċellerat, li għandu impatt pożittiv fuq il-prestazzjoni tal-qafas Angolari. Il-parsing tal-JavaScript ġie aċċellerat: l-ottimizzazzjoni tad-decoder UTF-8 għamilha possibbli li tiżdied il-prestazzjoni tal-parser fil-modalità streaming (parsing kif it-tagħbija) bi 8%, u l-eliminazzjoni ta 'operazzjonijiet ta' deduplikazzjoni mhux meħtieġa tat żieda ta '10.5% oħra;
  • Sar xogħol biex jitnaqqas il-konsum tal-memorja tal-magna JavaScript.
    Kodiċi miżjud biex tnaddaf il-cache tal-bytecode, li jieħu madwar 15% tad-daqs totali tal-borġ. Stadju ġie miżjud mal-kollettur taż-żibel biex tkeċċi bytecode ikkumpilat b'mod mhux frekwenti mill-cache għal funzjonijiet li jintużaw jew funzjonijiet li jissejħu biss mal-inizjalizzazzjoni. Id-deċiżjoni li tnaddaf issir ibbażata fuq counters ġodda li jqisu l-aħħar darba li l-bytecode ġie aċċessat. Din il-bidla naqqset il-konsum tal-memorja b'5-15% mingħajr ma tħalli impatt negattiv fuq il-prestazzjoni. Barra minn hekk, il-kompilatur tal-bytecode jeskludi l-ġenerazzjoni ta 'kodiċi ovvjament mhux użat, per eżempju, li jsegwi ritorn jew waqfa (jekk ma jkunx hemm tranżizzjoni Jump għaliha);

    Rilaxx ta' Chrome 74

  • Għall-WebAssembly implimentati appoġġ għal ħjut u operazzjonijiet atomiċi (API WebAssembly Threads u WebAssembly Atomics);
  • Għal konsenja separata ta' skripts, ġie miżjud appoġġ għall-header “#!”, li jiddetermina l-interpretu li għandu jaħdem. Pereżempju, simili għal lingwi oħra tal-kitba, fajl JavaScript jista' jidher xi ħaġa bħal din:

    #!/usr/bin/env node
    console.log(42);

  • Mistoqsija ġdida tal-midja ġiet miżjuda mas-CSS "jippreferi-mozzjoni mnaqqsa", li jippermetti lis-sit jiddetermina l-istat tas-settings fis-sistema operattiva relatata mal-diżattivazzjoni tal-effetti animati. Bl-użu tat-talba ssuġġerita, is-sid tas-sit jista issir taf li l-utent iddiżattiva l-effetti animati u wkoll iddiżattiva diversi karatteristiċi ta 'animazzjoni fuq is-sit, pereżempju, neħħi l-effett ta' tħawwad tal-buttuni użati biex jiġbdu l-attenzjoni;
  • Minbarra l-abbiltà li tiddefinixxi oqsma pubbliċi introdotti fil-Chrome 72 appoġġ implimentat L-immarkar tal-oqsma bħala privati, u wara dan l-aċċess għall-valuri tagħhom ikun miftuħ biss fi ħdan il-klassi. Biex timmarka qasam bħala privat, żid sinjal “#” qabel l-isem tal-qasam. Bħal fl-oqsma pubbliċi, proprjetajiet privati ​​ma jeħtiġux l-użu espliċitu ta 'kostruttur.
  • Il-header HTTP Feature-Policy, li jippermettilek tikkontrolla l-imġieba tal-API u tippermetti ċerti karatteristiċi (pereżempju, tista 'tippermetti l-mod ta' tħaddim sinkroniku ta 'XMLHttpRequest jew tiddiżattiva l-API ta' Geolocation), ġiet miżjuda JavaScript API biex tikkontrolla l-attività ta’ ċerti opportunitajiet. Għall-iżviluppaturi, hemm żewġ metodi ġodda document.featurePolicy u frame.featurePolicy, li joffru tliet funzjonijiet:
    allowFeatures() biex tikseb lista ta' karatteristiċi permessi għad-dominju attwali, allowFeature() biex tiċċekkja b'mod selettiv jekk karatteristiċi speċifiċi humiex attivati, u getAllowlistForFeature() biex jirritorna lista ta' oqsma li għalihom hija permessa karatteristika speċifikata fil-paġna kurrenti;

  • Miżjud appoġġ sperimentali (“chrome://flags#enable-text-fragment-anchor”) għall-mod Skrollja-To-Test, li jippermettilek tifforma links għal kliem jew frażijiet individwali, mingħajr ma tispeċifika b'mod espliċitu tikketti fid-dokument billi tuża t-tikketta "a name" jew il-proprjetà "id". Biex tibgħat link, huwa offrut parametru speċjali "#targetText=", li fih tista 'tispeċifika t-test għat-tranżizzjoni. Huwa permess li tiġi speċifikata maskra li tinkludi frażijiet li jindikaw il-bidu u t-tmiem tal-framment billi tuża virgola bħala s-separatur tagħhom (per eżempju, “example.com#targetText=start%20words, end%20words”);
  • Għażla ġiet miżjuda mal-kostruttur AudioContext sampleRate, li jippermettilek li tissettja r-rata tal-kampjunar għall-operazzjonijiet tal-awdjo permezz tal-API tal-Web Audio;
  • Miżjud appoġġ tal-klassi Intl.Locale, li tipprovdi metodi għall-parsing u l-ipproċessar tal-lingwa, ir-reġjun, u l-parametri tal-istil stabbiliti mill-locale, kif ukoll għall-qari u l-kitba ta 'tikketti ta' estensjoni Unicode, issalva l-issettjar tal-lokal tal-utent f'format serjali;
  • Mekkaniżmu Skambji HTTP iffirmati (SXG) estiża b'għodod għal jinforma distributuri tal-kontenut dwar żbalji fit-tniżżil ta' kontenut iffirmat, bħal problemi bil-verifika taċ-ċertifikat. L-immaniġġjar tal-iżbalji jsir permezz tal-estensjonijiet tal-API Logging ta' Żbalji tan-Netwerk. Ifakkar li SXG tippermetti is-sid ta’ sit wieħed, bl-użu ta’ firma diġitali, jawtorizza t-tqegħid ta’ ċerti paġni fuq sit ieħor, u wara dan, jekk dawn il-paġni jiġu aċċessati fuq sit ieħor, il-browser juri lill-utent il-URL tas-sit oriġinali, minkejja l-fatt li l-paġna kienet mgħobbija minn ospitanti differenti;
  • Ġie miżjud metodu mal-klassi TextEncoder encodeInto(), li jippermettilek tikteb string kodifikata direttament f'buffer allokat minn qabel. Il-metodu encodeInto() huwa alternattiva ta' prestazzjoni għolja għall-metodu encode(), li jeħtieġ li titwettaq operazzjoni ta' allokazzjoni tal-buffer kull darba li tiġi aċċessata.
  • Ħaddiem fis-Servizz ipprovdut il-buffering tas-sejħa client.postMessage() sakemm id-dokument ikun lest. Messaġġi mibgħuta permezz client.postMessage() se jinżammu sakemm jitqajjem l-avveniment DOMContentLoaded, jiġi stabbilit onmessage, jew jissejjaħ startMessages();
  • Kif meħtieġ mill-ispeċifikazzjoni CSS Transitions miżjud transitionrun, transitioncancel, transitionstart, u transitionend avvenimenti ġġenerati meta tranżizzjoni CSS tkun fil-kju, ikkanċellata, tibda, jew tintemm l-eżekuzzjoni.
  • Meta tispeċifika kodifikazzjoni ta' karattri mhux korretta permezz ta' overrideMimeType() jew tip MIME għal XMLHttpRequest, issa taqa' lura għal UTF-8 minflok Latin-1;
  • Il-proprjetà "allow-downloads-without-user-activation", li permezz tagħha kien possibbli li jitniżżlu awtomatikament fajls meta jiġu pproċessati iframes, ġiet deprecata u se titneħħa f'rilaxx futur. Fil-futur, il-bidu tat-tniżżil tal-fajls mingħajr azzjoni espliċita tal-utent se jkun ipprojbit, peress li ntuża b'mod attiv għall-abbuż, jiġi sfurzat it-tniżżil u ddaħħal partijiet ta' malware fil-kompjuter tal-utent. Utent ikklikkja fuq l-istess paġna se tkun meħtieġa biex tibda t-tniżżil. Il-proprjetà kienet oriġinarjament ippjanata li titneħħa fi Chrome 74, iżda t-tneħħija kienet pospost sa Chrome 76.
  • Tema skura fakultattiva għad-disinn tal-interface hija offruta għall-pjattaforma tal-Windows (fir-rilaxx preċedenti, tema skura ġiet ippreparata għal macOS). Peress li d-disinn skur huwa kważi identiku għad-disinn fil-modalità incognito, ġie miżjud indikatur speċjali minflok l-ikona tal-profil tal-utent biex jenfasizza l-modalità operattiva privata;
  • Ġiet miżjuda opportunità għall-utenti korporattivi Ġestjoni tas-Cloud tal-Browser Chrome biex timmaniġġja s-settings tal-browser tal-utent permezz tal-console Admin ta' Google;

    Rilaxx ta' Chrome 74

Minbarra innovazzjonijiet u bug fixes, il-verżjoni l-ġdida telimina 39 vulnerabilità. Ħafna mill-vulnerabbiltajiet ġew identifikati bħala riżultat ta 'għodod ta' ttestjar awtomatizzati AddressSanitizer, MemorySanitizer, Kontroll tal-Integrità tal-Fluss, LibFuzzer и AFL. Ma ġew identifikati l-ebda problemi kritiċi li jippermettu li wieħed jevita l-livelli kollha ta 'protezzjoni tal-browser u jesegwixxi kodiċi fuq is-sistema barra l-ambjent sandbox. Bħala parti mill-programm biex tħallas premjijiet fi flus biex jiskopru vulnerabbiltajiet għar-rilaxx attwali, Google ħallset 19-il premju fl-ammont ta '$ 26837 (erba' premjijiet $ 3000, erba 'premjijiet $ 2000, premju wieħed $ 1337, erba' premjijiet $ 1000, tliet premjijiet $ 500). Id-daqs tal-4 premjijiet għadu ma ġiex determinat.

Sors: opennet.ru

Żid kumment