Paglabas ng Chrome 94

Inihayag ng Google ang paglabas ng web browser ng Chrome 94. Kasabay nito, available ang isang matatag na paglabas ng libreng proyekto ng Chromium, na nagsisilbing batayan ng Chrome. Ang Chrome browser ay nakikilala sa pamamagitan ng paggamit ng mga logo ng Google, ang pagkakaroon ng isang system para sa pagpapadala ng mga abiso sa kaso ng isang pag-crash, mga module para sa paglalaro ng protektadong nilalaman ng video (DRM), isang sistema para sa awtomatikong pag-install ng mga update, at pagpapadala ng mga parameter ng RLZ kapag naghahanap. Ang susunod na release ng Chrome 95 ay naka-iskedyul para sa ika-19 ng Oktubre.

Simula sa paglabas ng Chrome 94, inilipat ang development sa isang bagong ikot ng paglabas. Ang mga bagong makabuluhang release ay ipa-publish na ngayon bawat 4 na linggo, sa halip na bawat 6 na linggo, na nagbibigay-daan para sa mas mabilis na paghahatid ng mga bagong feature sa mga user. Napansin na ang pag-optimize ng proseso ng paghahanda ng release at pagpapabuti ng sistema ng pagsubok ay nagpapahintulot sa mga release na mabuo nang mas madalas nang hindi nakompromiso ang kalidad. Para sa mga negosyo at sa mga nangangailangan ng mas maraming oras upang mag-update, ang isang Extended Stable na edisyon ay hiwalay na ilalabas tuwing 8 linggo, na magbibigay-daan sa iyong lumipat sa mga bagong feature na release hindi isang beses bawat 4 na linggo, ngunit isang beses bawat 8 linggo.

Mga pangunahing pagbabago sa Chrome 94:

  • Nagdagdag ng HTTPS-First mode, na nagpapaalala sa HTTPS Only mode na dating lumabas sa Firefox. Kung ang mode ay isinaaktibo sa mga setting, kapag sinusubukang buksan ang isang mapagkukunan nang walang pag-encrypt sa pamamagitan ng HTTP, susubukan muna ng browser na i-access ang site sa pamamagitan ng HTTPS, at kung ang pagtatangka ay hindi matagumpay, ang user ay bibigyan ng babala tungkol sa kakulangan ng Suporta sa HTTPS at hiniling na buksan ang site nang walang pag-encrypt. Sa hinaharap, isinasaalang-alang ng Google na i-enable ang HTTPS-First bilang default para sa lahat ng user, nililimitahan ang pag-access sa ilang feature ng web platform para sa mga page na binuksan sa HTTP, at pagdaragdag ng mga karagdagang babala upang ipaalam sa mga user ang tungkol sa mga panganib na lalabas kapag nag-a-access sa mga site nang walang encryption. Ang mode ay pinagana sa seksyong "Privacy and Security" > "Security" > "Advanced" na mga setting.
    Paglabas ng Chrome 94
  • Para sa mga pahinang binuksan nang walang HTTPS, pagpapadala ng mga kahilingan (pag-download ng mga mapagkukunan) sa mga lokal na URL (halimbawa, "http://router.local" at localhost) at mga panloob na hanay ng address (127.0.0.0/8, 192.168.0.0/16, 10.0.0.0) ay ipinagbabawal .8/1.2.3.4, atbp.). Ang isang pagbubukod ay ginawa lamang para sa mga pahinang na-download mula sa mga server na may mga panloob na IP. Halimbawa, ang isang pahinang na-load mula sa server 192.168.0.1 ay hindi makakapag-access sa isang mapagkukunan na matatagpuan sa IP 127.0.0.1 o IP 192.168.1.1, ngunit na-load mula sa server XNUMX ay magagawang. Ang pagbabago ay nagpapakilala ng karagdagang layer ng proteksyon laban sa pagsasamantala ng mga kahinaan sa mga humahawak na tumatanggap ng mga kahilingan sa mga lokal na IP, at magpoprotekta rin laban sa mga pag-atake sa pag-rebinding ng DNS.
  • Idinagdag ang function na "Sharing Hub", na nagbibigay-daan sa iyong mabilis na magbahagi ng link sa kasalukuyang page sa ibang mga user. Posibleng bumuo ng QR code mula sa isang URL, mag-save ng page, magpadala ng link sa isa pang device na naka-link sa isang user account, at maglipat ng link sa mga third-party na site gaya ng Facebook, WhatsUp, Twitter at VK. Ang tampok na ito ay hindi pa ginawang magagamit sa lahat ng mga gumagamit. Upang pilitin ang button na “Ibahagi” sa menu at address bar, maaari mong gamitin ang mga setting na “chrome://flags/#sharing-hub-desktop-app-menu” at “chrome://flags/#sharing-hub- desktop-omnibox” .
    Paglabas ng Chrome 94
  • Ang interface ng mga setting ng browser ay muling naayos. Ang bawat seksyon ng mga setting ay ipinapakita na ngayon sa isang hiwalay na pahina, sa halip na sa isang karaniwang pahina.
    Paglabas ng Chrome 94
  • Naipatupad na ang suporta para sa dynamic na pag-update ng log ng mga inisyu at binawi na certificate (Certificate Transparency), na ia-update na ngayon nang walang reference sa mga update sa browser.
  • Nagdagdag ng page ng serbisyo na "chrome://whats-new" na may pangkalahatang-ideya ng mga pagbabagong nakikita ng user sa bagong release. Awtomatikong lalabas kaagad ang page pagkatapos mag-update o maa-access sa pamamagitan ng What's New button sa Help menu. Kasalukuyang binabanggit ng page ang paghahanap ng tab, ang kakayahang hatiin ang mga profile, at isang feature sa pagbabago ng kulay ng background, na hindi partikular sa Chrome 94 at ipinakilala sa mga nakaraang release. Ang pagpapakita ng pahina ay hindi pa pinagana para sa lahat ng mga gumagamit: upang kontrolin ang pag-activate, maaari mong gamitin ang mga setting na "chrome://flags#chrome-whats-new-ui" at "chrome://flags#chrome-whats-new-in -pangunahing-menu- bagong-badge".
    Paglabas ng Chrome 94
  • Ang pagtawag sa WebSQL API mula sa nilalamang na-load mula sa mga third-party na site (tulad ng isang iframe) ay hindi na ginagamit. Sa Chrome 94, kapag sinusubukang i-access ang WebSQL mula sa mga third-party na script, may ipapakitang babala, ngunit simula sa Chrome 97, ang mga naturang tawag ay iba-block. Sa hinaharap, plano naming ganap na alisin ang suporta para sa WebSQL, anuman ang konteksto ng paggamit. Ang WebSQL engine ay batay sa SQLite code at maaaring gamitin ng mga umaatake upang pagsamantalahan ang mga kahinaan sa SQLite.
  • Para sa mga kadahilanang pangseguridad at upang maiwasan ang malisyosong aktibidad, ang paggamit ng legacy na MK (URL:MK) na protocol, na minsang ginamit sa Internet Explorer at pinapayagan ang mga web application na kumuha ng impormasyon mula sa mga naka-compress na file, ay nagsimulang ma-block.
  • Ang suporta para sa pag-synchronize sa mga mas lumang bersyon ng Chrome (Chrome 48 at mas luma) ay hindi na ipinagpatuloy.
  • Ang HTTP header ng Patakaran sa Pahintulot, na idinisenyo upang paganahin ang ilang partikular na kakayahan at kontrolin ang access sa API, ay nagdagdag ng suporta para sa flag na "display-capture", na nagbibigay-daan sa iyong kontrolin ang paggamit ng Screen Capture API sa page (bilang default, ang kakayahang makuha ang nilalaman ng screen mula sa mga panlabas na iframe ay naka-block).
  • Ilang bagong API ang naidagdag sa Origin Trials mode (mga pang-eksperimentong feature na nangangailangan ng hiwalay na pag-activate). Ipinahihiwatig ng Origin Trial ang kakayahang magtrabaho kasama ang tinukoy na API mula sa mga application na na-download mula sa localhost o 127.0.0.1, o pagkatapos magrehistro at makatanggap ng espesyal na token na may bisa sa limitadong oras para sa isang partikular na site.
    • Idinagdag ang WebGPU API, na pumapalit sa WebGL API at nagbibigay ng mga tool para sa pagsasagawa ng mga operasyon ng GPU gaya ng pag-render at pag-compute. Sa konsepto, ang WebGPU ay malapit sa Vulkan, Metal at Direct3D 12 API. Sa konsepto, ang WebGPU ay naiiba sa WebGL sa parehong paraan na ang Vulkan graphics API ay naiiba sa OpenGL, ngunit hindi ito batay sa isang partikular na graphics API, ngunit ito ay isang unibersal layer na gumagamit ng parehong mababang antas ng primitives , na available sa Vulkan, Metal at Direct3D 12.

      Nagbibigay ang WebGPU ng mga JavaScript application na may mababang antas ng kontrol sa organisasyon, pagproseso, at pagpapadala ng mga command sa GPU, pati na rin ang kakayahang pamahalaan ang mga nauugnay na mapagkukunan, memorya, buffer, texture object, at pinagsama-samang graphics shader. Binibigyang-daan ka ng diskarteng ito na makamit ang mas mataas na pagganap para sa mga application ng graphics sa pamamagitan ng pagbabawas ng mga gastos sa overhead at pagtaas ng kahusayan ng pagtatrabaho sa GPU. Ginagawa rin ng API na posible na lumikha ng mga kumplikadong 3D na proyekto para sa Web na gumagana tulad ng mga standalone na programa, ngunit hindi nakatali sa mga partikular na platform.

    • Ang mga standalone na aplikasyon ng PWA ay mayroon na ngayong kakayahang magparehistro bilang mga humahawak ng URL. Halimbawa, ang music.example.com na application ay maaaring magparehistro sa sarili bilang isang URL handler https://*.music.example.com at lahat ng mga transition mula sa mga panlabas na application gamit ang mga link na ito, halimbawa, mula sa mga instant messenger at email client, ay hahantong sa pagbubukas ng mga PWA- application na ito, hindi isang bagong tab ng browser.
    • Ang suporta para sa bagong HTTP response code - 103 ay ipinatupad, na maaaring magamit upang ipakita ang mga header nang maaga. Binibigyang-daan ka ng Code 103 na ipaalam sa kliyente ang tungkol sa mga nilalaman ng ilang mga header ng HTTP kaagad pagkatapos ng kahilingan, nang hindi naghihintay na kumpletuhin ng server ang lahat ng mga operasyong nauugnay sa kahilingan at simulan ang paghahatid ng nilalaman. Sa katulad na paraan, maaari kang magbigay ng mga pahiwatig tungkol sa mga elementong nauugnay sa page na inihahatid na maaaring i-preload (halimbawa, maaaring magbigay ng mga link sa css at javascript na ginamit sa page). Ang pagkakaroon ng natanggap na impormasyon tungkol sa mga naturang mapagkukunan, sisimulan ng browser ang pag-download ng mga ito nang hindi naghihintay na matapos ang pangunahing pahina sa pag-render, na nagbibigay-daan sa iyong bawasan ang kabuuang oras ng pagproseso ng kahilingan.
  • Nagdagdag ng WebCodecs API para sa mababang antas ng pagmamanipula ng mga stream ng media, na umaakma sa mataas na antas ng HTMLMediaElement, Mga Extension ng Pinagmulan ng Media, WebAudio, MediaRecorder, at mga WebRTC API. Ang bagong API ay maaaring in demand sa mga lugar tulad ng game streaming, client-side effect, stream transcoding, at suporta para sa hindi karaniwang mga multimedia container. Sa halip na ipatupad ang mga indibidwal na codec sa JavaScript o WebAssembly, ang WebCodecs API ay nagbibigay ng access sa mga pre-built, high-performance na mga bahagi na binuo sa browser. Sa partikular, ang WebCodecs API ay nagbibigay ng audio at video decoder at encoder, image decoder, at function para sa pagtatrabaho sa mga indibidwal na video frame sa mababang antas.
  • Na-stabilize ang Insertable Streams API, na ginagawang posible na manipulahin ang mga raw media stream na ipinadala sa pamamagitan ng MediaStreamTrack API, gaya ng data ng camera at mikropono, mga resulta ng screen capture, o intermediate codec decoding data. Ginagamit ang mga interface ng WebCodec upang ipakita ang mga hilaw na frame at nabuo ang isang stream na katulad ng nabubuo ng WebRTC Insertable Streams API batay sa RTCPeerConnections. Sa praktikal na bahagi, ang bagong API ay nagbibigay-daan para sa functionality tulad ng paglalapat ng mga diskarte sa machine learning upang matukoy o i-annotate ang mga bagay sa real time, o magdagdag ng mga epekto tulad ng background clipping bago mag-encode o pagkatapos mag-decode ng isang codec.
  • Ang scheduler.postTask() na paraan ay na-stabilize, na nagbibigay-daan sa iyong kontrolin ang pag-iskedyul ng mga gawain (JavaScript callback na mga tawag) na may iba't ibang antas ng priyoridad. Tatlong antas ng priyoridad ang ibinibigay: 1- execution muna, kahit na ma-block ang mga operasyon ng user; 2—pinahihintulutan ang mga pagbabagong nakikita ng user; 3 - pagpapatupad sa background). Maaari mong gamitin ang bagay na TaskController upang baguhin ang priyoridad at kanselahin ang mga gawain.
  • Pinatatag at ipinamahagi na ngayon sa labas ng Origin Trials API Idle Detection upang matukoy ang kawalan ng aktibidad ng user. Binibigyang-daan ka ng API na makita ang mga oras kung kailan hindi nakikipag-ugnayan ang user sa keyboard/mouse, tumatakbo ang screen saver, naka-lock ang screen, o ginagawa ang trabaho sa ibang monitor. Ang pagpapaalam sa aplikasyon tungkol sa kawalan ng aktibidad ay isinasagawa sa pamamagitan ng pagpapadala ng isang abiso pagkatapos maabot ang isang tinukoy na limitasyon ng kawalan ng aktibidad.
  • Ang proseso ng pamamahala ng kulay sa mga bagay na CanvasRenderingContext2D at ImageData at ang paggamit ng puwang ng kulay ng sRGB sa mga ito ay pormal na. Nagbibigay ng kakayahang lumikha ng CanvasRenderingContext2D at ImageData na mga bagay sa mga color space maliban sa sRGB, gaya ng Display P3, upang samantalahin ang mga advanced na kakayahan ng mga modernong monitor.
  • Nagdagdag ng mga pamamaraan at katangian sa VirtualKeyboard API upang makontrol kung ang virtual na keyboard ay ipinapakita o nakatago, at upang makakuha ng impormasyon tungkol sa laki ng ipinapakitang virtual na keyboard.
  • Binibigyang-daan ng JavaScript ang mga klase na gumamit ng mga static na pagsisimula ng mga bloke sa code ng pangkat na ipinapatupad nang isang beses kapag pinoproseso ang klase: class C { // Ang block ay tatakbo kapag pinoproseso ang mismong klase na static { console.log("C's static block"); } }
  • Ang flex-basis at flex CSS properties ay nagpapatupad ng content, min-content, max-content, at fit-content na mga keyword upang magbigay ng higit na flexible na kontrol sa laki ng pangunahing bahagi ng Flexbox.
  • Idinagdag ang scrollbar-gutter CSS property upang makontrol kung paano nakalaan ang espasyo ng screen para sa scrollbar. Halimbawa, kapag hindi mo gustong mag-scroll ang content, maaari mong palawakin ang output para sakupin ang scrollbar area.
  • Ang Self Profiling API ay idinagdag kasama ang pagpapatupad ng isang profiling system na nagbibigay-daan sa iyong sukatin ang oras ng pagpapatupad ng JavaScript sa gilid ng user upang i-debug ang mga problema sa pagganap sa JavaScript code, nang hindi gumagamit ng mga manu-manong manipulasyon sa interface para sa mga web developer.
  • Matapos tanggalin ang Flash plugin, napagpasyahan na ibalik ang mga walang laman na halaga sa mga katangian ng navigator.plugins at navigator.mimeTypes, ngunit tulad ng nangyari, ginamit ng ilang mga application ang mga ito upang suriin ang pagkakaroon ng mga plugin para sa pagpapakita ng mga PDF file. Dahil ang Chrome ay may built-in na PDF viewer, ang navigator.plugins at navigator.mimeTypes properties ay magbabalik na ngayon ng nakapirming listahan ng mga karaniwang PDF viewer plugin at MIME type - "PDF Viewer, Chrome PDF Viewer, Chromium PDF Viewer, Microsoft Edge PDF Viewer at WebKit built-in na PDF".
  • Ang mga pagpapabuti ay ginawa sa mga tool para sa mga web developer. Naidagdag ang mga Nest Hub at Nest Hub Max device sa listahan ng simulation ng screen. Ang isang pindutan para sa pag-invert ng mga filter ay idinagdag sa interface para sa pag-inspeksyon sa aktibidad ng network (halimbawa, kapag ini-install ang filter na "status-code: 404", maaari mong mabilis na tingnan ang lahat ng iba pang mga kahilingan), at nagbibigay din ng kakayahang tingnan ang mga orihinal na halaga. ng mga header ng Set-Cookie (nagbibigay-daan sa iyong suriin ang pagkakaroon ng mga maling halaga na inalis kapag nag-normalize). Ang sidebar sa web console ay hindi na ginagamit at aalisin sa isang release sa hinaharap. Nagdagdag ng kakayahang pang-eksperimentong itago ang mga isyu sa tab na Mga Isyu. Sa mga setting, idinagdag ang kakayahang pumili ng wika ng interface.
    Paglabas ng Chrome 94

Bilang karagdagan sa mga inobasyon at pag-aayos ng bug, inaalis ng bagong bersyon ang 19 na kahinaan. Marami sa mga kahinaan ang natukoy bilang resulta ng awtomatikong pagsubok gamit ang AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer at AFL tool. Walang natukoy na mga kritikal na problema na magbibigay-daan sa isa na ma-bypass ang lahat ng antas ng proteksyon ng browser at magsagawa ng code sa system sa labas ng kapaligiran ng sandbox. Bilang bahagi ng programang magbayad ng cash reward para sa pagtuklas ng mga kahinaan para sa kasalukuyang release, nagbayad ang Google ng 17 na parangal na nagkakahalaga ng $56500 (isang $15000 na parangal, dalawang $10000 na parangal, isang $7500 na parangal, apat na $3000 na parangal, dalawang $1000 na parangal). Ang laki ng 7 reward ay hindi pa natutukoy.

Pinagmulan: opennet.ru

Magdagdag ng komento