Chrome 74 шығарылымы

Google ұсынылған веб-шолғыштың шығарылымы Chrome 74... Бір мезгілде қол жетімді тегін жобаның тұрақты шығарылымы хром, ол Chrome негізі ретінде қызмет етеді. Chrome браузері ерекшеленеді Google логотиптерін пайдалану, сұрау бойынша Flash модулін жүктеп алу мүмкіндігі, бұзылған жағдайда хабарландырулар жіберу жүйесінің болуы, қорғалған бейне мазмұнын ойнату модульдері, іздеу кезінде жаңартуларды автоматты түрде орнату және жіберу жүйесі RLZ параметрлері. Chrome 75-тің келесі шығарылымы 4 маусымға жоспарланған.

басты өзгерту в Chrome 74:

  • Бет жабылған кезде шақырылатын onUnload оқиғасы орын алғанда, қазір Ол тыйым салынады пайдаланушыларды күмәнді сайттарды жапқаннан кейін жарнамалық беттерді ашуға мәжбүрлеуден қорғайтын қалқымалы терезелерді көрсету (window.open() қоңырауы бұғатталған);
  • JavaScript қозғалтқышында жүзеге асырылды жаңа режим пайда болды JIT аз («—джитсіз» жалаушасы), бұл JavaScript-ті JIT қолданбай (тек интерпретатор пайдаланылады) және кодты орындау кезінде орындалатын жадты бөлмей орындауға мүмкіндік береді. JIT-ті өшіру ықтимал қауіпті веб-қосымшалармен жұмыс істеу кезінде қауіпсіздікті жақсарту үшін, сондай-ақ JIT-ті пайдалануға тыйым салатын платформаларда құрастыруды қамтамасыз ету үшін пайдалы болуы мүмкін (мысалы, iOS, кейбір смарт теледидарлар және ойын консольдері. JIT өшірілгенде, JavaScript орындалады. Speedometer 40 тестінде өнімділік 2.0%-ға және Web Tooling Benchmark тестінде 80%-ға төмендейді, бірақ YouTube-пен жұмысты модельдеу кезінде өнімділіктің небәрі 6%-ға төмендеуі байқалды, ал жадты тұтыну аздап, небәрі 1.7%-ға төмендеді;
  • V8 сонымен қатар жаңа оңтайландырулардың үлкен бөлігін ұсынады. Мысалы, нақты берілген параметрлердің саны функцияны анықтау кезінде көрсетілген аргументтер санына сәйкес келмейтін функция шақыруларының орындалуы 60%-ға жеделдетілді. Get функциясы арқылы DOM сипаттарына қол жеткізу жеделдетілді, бұл бұрыштық құрылымның жұмысына оң әсер етеді. JavaScript талдауы жеделдетілді: UTF-8 декодерін оңтайландыру ағынды режимде талдаушы өнімділігін (жүктеу кезінде талдау) 8%-ға арттыруға мүмкіндік берді, ал қажетсіз қайталау операцияларын жою тағы 10.5%-ға ұлғайды;
  • JavaScript қозғалтқышының жадты тұтынуын азайту бойынша жұмыс жүргізілді.
    Жалпы үйме өлшемінің шамамен 15%-ын алатын байт-код кэшін тазалау үшін код қосылды. Қолданылатын функциялар немесе инициализациялау кезінде ғана шақырылатын функциялар үшін кэштен сирек құрастырылатын байт кодты шығару үшін қоқыс жинағышқа кезең қосылды. Тазалау туралы шешім байт-кодқа соңғы рет қол жеткізген уақытты ескеретін жаңа есептегіштер негізінде қабылданады. Бұл өзгеріс өнімділікке теріс әсер етпестен жад шығынын 5–15%-ға азайтты. Сонымен қатар, байт-код компиляторы анық пайдаланылмаған кодтың генерациясын жоққа шығарады, мысалы, қайтарудан немесе үзілістен кейін (оған Jump өтуі болмаса);

    Chrome 74 шығарылымы

  • WebAssembly үшін жүзеге асырылды ағындар мен атомдық операцияларды қолдау (API WebAssembly Threads және WebAssembly Atomics);
  • Сценарийлерді бөлек жеткізу үшін «#!» тақырыбына қолдау қосылды, ол іске қосылатын аудармашыны анықтайды. Мысалы, басқа сценарий тілдеріне ұқсас, JavaScript файлы келесідей болуы мүмкін:

    #!/usr/bin/env түйіні
    console.log(42);

  • CSS-ке жаңа медиа сұрау қосылды "артықшылықты-қысқартылған-қозғалыс«, сайтқа анимациялық әсерлерді өшіруге байланысты операциялық жүйедегі параметрлердің күйін анықтауға мүмкіндік береді. Ұсынылған сұрауды пайдаланып, сайт иесі болады пайдаланушының анимациялық эффектілерді өшіргенін анықтаңыз, сонымен қатар сайттағы әртүрлі анимация мүмкіндіктерін өшіріңіз, мысалы, назар аудару үшін пайдаланылатын түймелердің шайқау әсерін алып тастаңыз;
  • Chrome 72-де енгізілген жалпы өрістерді анықтау мүмкіндігіне қосымша қолдау жүзеге асырылды Өрістерді жеке деп белгілеу, содан кейін олардың мәндеріне қол жеткізу тек сынып ішінде ашылады. Өрісті жеке деп белгілеу үшін өріс атауының алдына «#» белгісін қойыңыз. Қоғамдық өрістер сияқты, жеке сипаттар конструкторды нақты пайдалануды талап етпейді.
  • API әрекетін басқаруға және белгілі бір мүмкіндіктерді қосуға мүмкіндік беретін (мысалы, XMLHttpRequest синхронды жұмыс режимін қосуға немесе Geolocation API қызметін өшіруге) мүмкіндік беретін Feature-Policy HTTP тақырыбы қосылды. JavaScript API белгілі бір мүмкіндіктердің белсенділігін бақылау. Әзірлеушілер үшін үш функцияны ұсынатын document.featurePolicy және frame.featurePolicy екі жаңа әдісі бар:
    allowFeatures() ағымдағы домен үшін рұқсат етілген мүмкіндіктер тізімін алу үшін, allowFeature() нақты мүмкіндіктердің қосылғанын таңдап тексеру үшін және getAllowlistForFeature() ағымдағы бетте көрсетілген мүмкіндікке рұқсат етілген домендердің тізімін қайтарады;

  • Режимге эксперименттік («chrome://flags#enable-text-fragment-anchor») қолдау қосылды. Мәтінге айналдыру, бұл «a name» тегін немесе «id» сипатын пайдаланып құжаттағы белгілерді нақты көрсетпей, жеке сөздерге немесе сөз тіркестеріне сілтемелер құруға мүмкіндік береді. Сілтемені жіберу үшін «#targetText=» арнайы параметрі ұсынылады, онда көшу үшін мәтінді көрсетуге болады. Бөлгіш ретінде үтірді пайдаланып фрагменттің басы мен соңын көрсететін сөз тіркестерін қамтитын масканы көрсетуге рұқсат етіледі (мысалы, “example.com#targetText=start%20words, end%20words”);
  • Опция AudioContext конструкторына қосылды үлгі жылдамдығы, бұл Web Audio API арқылы аудио операциялары үшін таңдау жылдамдығын орнатуға мүмкіндік береді;
  • Қосымша сыныптық қолдау Intl.Locale, ол тіл арқылы орнатылған тілді, аймақты және стиль параметрлерін талдау және өңдеу әдістерін қамтамасыз етеді, сонымен қатар Юникод кеңейтім тегтерін оқу және жазу, пайдаланушы тілінің параметрлерін серияланған пішімде сақтау;
  • Тетік Қол қойылған HTTP алмасулары (SXG) үшін құралдармен кеңейтілген хабарлау сертификатты растау мәселелері сияқты қол қойылған мазмұнды жүктеп алудағы қателер туралы мазмұнды таратушылар. Қателерді өңдеу API кеңейтімдері арқылы жүзеге асырылады Желі қателерін тіркеу. Еске салайық, SXG ол мүмкіндік береді бір сайттың иесі электрондық цифрлық қолтаңбаны пайдалана отырып, басқа сайтта белгілі бір беттерді орналастыруға рұқсат береді, содан кейін бұл беттерге екінші сайтта қол жеткізілсе, браузер пайдаланушыға түпнұсқа сайттың URL мекенжайын көрсетеді. бет басқа хосттан жүктелгенін;
  • TextEncoder сыныбына әдіс қосылды encodeInto(), бұл кодталған жолды тікелей алдын ала бөлінген буферге жазуға мүмкіндік береді. encodeInto() әдісі encode() әдісінің өнімділігі жоғары балама болып табылады, ол әр қатынасқан сайын буферді бөлу операциясын орындауды талап етеді.
  • Қызмет көрсетуші қызметкер қамтамасыз етілген клиент.postMessage() шақыруын құжат дайын болғанша буферлеу. client.postMessage() арқылы жіберілген хабарлар DOMContentLoaded оқиғасы көтерілгенше, onmessage орнатылғанша немесе startMessage() шақырылғанша сақталады;
  • CSS Transitions спецификациясы талап еткендей қосылды CSS ауысуы кезекке қойылғанда, тоқтатылғанда, орындауды бастағанда немесе аяқтағанда жасалған transitionrun, transitioncancel, transitionstart және transitionend оқиғалары.
  • XMLHttpRequest үшін overrideMimeType() немесе MIME түрі арқылы қате таңба кодтауын көрсеткенде, ол енді латын-8 орнына UTF-1 нұсқасына түседі;
  • iframe файлдарын өңдеу кезінде файлдарды автоматты түрде жүктеп алуға болатын "қолданушыны белсендірусіз жүктеуге рұқсат беру" сипаты ескірген және болашақ шығарылымда жойылады. Болашақта пайдаланушының нақты әрекетінсіз файлдарды жүктеуді бастауға тыйым салынады, өйткені ол теріс пайдалану, жүктеулерді мәжбүрлеу және пайдаланушының компьютеріне зиянды бағдарламалардың бөліктерін енгізу үшін белсенді түрде қолданылған. Жүктеп алуды бастау үшін пайдаланушы сол бетті басу қажет. Бастапқыда бұл мүлікті Chrome 74 жүйесінде жою жоспарланған болатын, бірақ жойылды кейінге қалдырылды Chrome 76 нұсқасына дейін.
  • Windows платформасы үшін интерфейс дизайнына арналған қосымша қараңғы тақырып ұсынылады (алдыңғы шығарылымда macOS үшін қараңғы тақырып дайындалған). Қараңғы дизайн инкогнито режиміндегі дизайнмен дерлік бірдей болғандықтан, жеке жұмыс режимін бөлектеу үшін пайдаланушы профилі белгішесінің орнына арнайы индикатор қосылды;
  • Корпоративтік пайдаланушылар үшін мүмкіндік қосылды Chrome браузерінің бұлтты басқаруы Google әкімші консолі арқылы пайдаланушы шолғышының параметрлерін басқару;

    Chrome 74 шығарылымы

Инновациялар мен қателерді түзетуден басқа, жаңа нұсқа жояды 39 осалдық. Көптеген осалдықтар құралдармен автоматтандырылған тестілеу нәтижесінде анықталды АдресСанитизатор, Жад тазартқыш, Ағынның тұтастығын басқару, LibFuzzer и AFL. Браузерді қорғаудың барлық деңгейлерін айналып өтуге және құм жәшігінен тыс жүйеде кодты орындауға мүмкіндік беретін маңызды мәселелер анықталмады. Ағымдағы шығарылымның осалдықтарын анықтағаны үшін ақшалай сыйақы төлеу бағдарламасының бір бөлігі ретінде Google $19 сомасында 26837 сыйлық (төрт $3000 марапат, төрт $2000 марапат, бір $1337 сыйлық, төрт $1000 марапат, үш $500 сыйлық) төледі. 4 сыйлықтың мөлшері әлі анықталған жоқ.

Ақпарат көзі: opennet.ru

пікір қалдыру