Paglabas ng Chrome 80

Google ipinakita paglabas ng web browser Chrome 80... Sabay-sabay magagamit matatag na paglabas ng isang libreng proyekto Kromo, na nagsisilbing batayan ng Chrome. Chrome browser naiiba ang paggamit ng mga logo ng Google, ang pagkakaroon ng isang system para sa pagpapadala ng mga abiso kung sakaling magkaroon ng pag-crash, ang kakayahang mag-download ng isang Flash module kapag hiniling, mga module para sa paglalaro ng protektadong nilalaman ng video (DRM), isang sistema para sa awtomatikong pag-install ng mga update at paghahatid sa panahon ng paghahanap Mga parameter ng RLZ. Ang susunod na release ng Chrome 81 ay naka-iskedyul para sa ika-17 ng Marso.

Ang pangunahing pagbabago в kromo 80:

  • Para sa maliit na porsyento ng mga user, nag-aalok ng function ng pagpapangkat ng tab, na nagbibigay-daan sa iyong pagsamahin ang ilang tab na may katulad na layunin sa mga visually separated na grupo. Ang bawat pangkat ay maaaring bigyan ng sariling kulay at pangalan. Maaaring i-enable ng mga user na hindi kasama sa unang wave ng activation ang suporta sa pagpapangkat sa pamamagitan ng opsyong “chrome://flags/#tab-groups”.

    Paglabas ng Chrome 80

  • Nagdagdag ng suporta para sa feature na ito Mag-scroll-To-Text, na nagbibigay-daan sa iyong lumikha ng mga link sa mga indibidwal na salita o parirala nang hindi tahasang tinutukoy ang mga label sa dokumento gamit ang tag na “a name” o ang property na “id”. Ang syntax ng naturang mga link ay binalak na maaprubahan bilang isang pamantayan sa web, na nasa yugto pa rin burador. Ang transition mask (talagang isang scrolling na paghahanap) ay pinaghihiwalay mula sa regular na anchor ng ":~:" attribute. Halimbawa, kapag binuksan mo ang link na "https://opennet.ru/52312/#:~:text=Chrome" ang pahina ay lilipat sa posisyon na may unang pagbanggit ng salitang "Chrome" at ang salitang ito ay mai-highlight .
  • Inilapat Isang mas mahigpit na paghihigpit sa paglipat ng Cookies sa pagitan ng mga site, para sa mga kahilingang hindi HTTPS, na nagbabawal sa pagproseso ng mga third-party na Cookies na itinakda kapag nag-a-access ng mga site maliban sa domain ng kasalukuyang page. Ang ganitong mga Cookies ay ginagamit upang subaybayan ang mga paggalaw ng user sa pagitan ng mga site sa code ng mga network ng advertising, mga widget ng social network at mga web analytics system. Tandaan na para makontrol ang pagpapadala ng Cookies, ginagamit ang attribute na SameSite na tinukoy sa Set-Cookie header, na bilang default ay nakatakda na ngayon sa value na “SameSite=Lax”, na naglilimita sa pagpapadala ng Cookies para sa mga cross-site na sub-request. , gaya ng kahilingan sa larawan o paglo-load ng nilalaman sa pamamagitan ng iframe mula sa ibang site. Maaaring i-override ng mga site ang default na gawi ng SameSite sa pamamagitan ng tahasang pagtatakda ng setting ng Cookie sa SameSite=Wala. Gayunpaman, ang halagang SameSite=Wala para sa Cookie ay maaari lamang itakda sa Secure mode (valid para sa mga koneksyon sa pamamagitan ng HTTPS). Magsisimula ang pagbabago sa mga yugto mag-apply Pebrero 17, sa simula para sa isang maliit na porsyento ng mga user, at pagkatapos ay unti-unting lumalawak ang saklaw.
  • Idinagdag proteksyon mula sa mga nakakainis na notification na may kaugnayan sa pagkumpirma ng mga kredensyal. Dahil ang aktibidad tulad ng pag-spam ng mga kahilingan sa push notification ay nakakaabala sa karanasan ng user at nakakaabala sa atensyon mula sa mga dialog ng kumpirmasyon, sa Chrome 80, sa halip na isang hiwalay na dialog, ang isang tooltip na nagbibigay-kaalaman ay maaari na ngayong ipakita sa address bar na nagbabala na ang kahilingan sa pahintulot ay naharang, na pagkatapos ito ay bumagsak sa isang tagapagpahiwatig na may larawan ng isang naka-cross out na kampana. Sa pamamagitan ng pag-click sa indicator, maaari mong i-activate o tanggihan ang hiniling na pahintulot sa anumang maginhawang oras. Awtomatikong ie-enable ang bagong mode para sa mga user na dati ay karaniwang nag-block ng mga naturang kahilingan, gayundin para sa mga site na nagtatala ng malaking porsyento ng mga tinanggihang kahilingan. Upang paganahin ang bagong mode para sa lahat ng mga kahilingan, isang espesyal na opsyon ang idinagdag sa mga setting (chrome://flags/#quiet-notification-prompts).

    Paglabas ng Chrome 80

  • Bawal pagpapakita ng mga pop-up window (pagtawag sa window.open() na paraan) at pagpapadala ng magkasabay na XMLHttpRequests sa page close o itago ang mga event handler (i-unload, before unload, pagehide at visibilitychange);
  • Iminungkahing inisyal Kaligtasan mula sa pag-load ng halo-halong nilalamang multimedia (kapag na-load ang mga mapagkukunan sa isang pahina ng HTTPS sa pamamagitan ng http:// protocol). Sa mga pahinang binuksan sa pamamagitan ng HTTPS, ang mga link na "http://" ay awtomatikong papalitan ng "https://" sa mga bloke na nauugnay sa pag-play ng mga audio at video file. Kung ang isang audio o video na mapagkukunan ay hindi magagamit sa pamamagitan ng https, kung gayon ang pag-download nito ay naharang (maaari mong manu-manong markahan ang pagharang sa pamamagitan ng menu na maa-access sa pamamagitan ng simbolo ng padlock sa address bar).

    Ang mga larawan ay patuloy na maglo-load nang hindi nagbabago (ang autocorrect ay ilalapat sa Chrome 81), ngunit upang palitan ang mga ito ng https o i-block ang mga larawan, binibigyan ang mga developer ng site ng mga pag-upgrade-hindi-secure-request ng mga katangian ng CSP at i-block-all-mixed-content. Para sa mga script at iframe, naipatupad na dati ang pagharang ng halo-halong nilalaman.

  • Isang unti-unti shutdown Suporta sa FTP. Bilang default, magagamit pa rin ang suporta sa FTP, ngunit gagawin isinagawa isang eksperimento kung saan idi-disable ang suporta sa FTP para sa isang partikular na porsyento ng mga user (upang bumalik, kakailanganin mong ilunsad ang browser gamit ang opsyong “-enable-ftp”). Alalahanin natin na sa mga nakaraang release, ang pagpapakita sa window ng browser ng mga nilalaman ng mga mapagkukunan na na-download sa pamamagitan ng "ftp://" na protocol ay hindi pinagana (halimbawa, ang pagpapakita ng mga HTML na dokumento at README file ay itinigil), ang paggamit ng FTP ay ipinagbabawal kapag nagda-download ng mga sub-resource mula sa mga dokumento, at ipinagpatuloy ang suporta sa proxy para sa FTP. Gayunpaman, posible pa ring mag-download ng mga file sa pamamagitan ng mga direktang link at ipakita ang mga nilalaman ng mga direktoryo.
  • Idinagdag
    ang kakayahang gumamit ng mga imaheng vector SVG bilang icon ng site (favicon).

  • Ang kakayahang piliing huwag paganahin ang ilang uri ng data na inilipat sa panahon ng pag-synchronize sa pagitan ng mga browser ay naidagdag sa mga setting.
  • May idinagdag na panuntunan para sa mga corporate na user na pinangangasiwaan ng sentral BlockExternalExtensions, na nagbibigay-daan sa iyong pigilan ang pag-install ng mga panlabas na add-on sa device.
  • Ipinatupad pagkakataon isang beses na pagsusuri ng buong hanay ng mga property o tawag sa JavaScript. Halimbawa, kapag ina-access ang “db.user.name.length” dati ay kinakailangan upang suriin ang kahulugan ng lahat ng mga bahagi nang sunud-sunod, halimbawa, sa pamamagitan ng “if (db && db.user && db.user.name)”. Ginagamit na ngayon ang operasyong "?." maa-access mo ang value na “db?.user?.name?.length” nang walang paunang pagsusuri at hindi hahantong sa error ang naturang pag-access. Sa kaso ng mga problema (kung ang ilang elemento ay naproseso bilang null o hindi natukoy)) ang output ay magiging "undefined".
  • Ipinakilala ng JavaScript ang isang bagong lohikal na concatenation operator "??", na nagbabalik ng kanang operand kung ang kaliwang operand ay NULL o hindi natukoy, at kabaliktaran. Halimbawa, "const foo = bar ?? 'default string'" kung ang bar ay null, ay ibabalik ang halaga ng bar kung hindi man, kabilang ang kapag ang bar ay 0 at ' ', kumpara sa "||" operator.
  • Sa Origin Trials mode (mga pang-eksperimentong feature na nangangailangan ng hiwalay pagpapagana) iminungkahing Content Indexing API. Ang Origin Trial ay nagpapahiwatig ng 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 isang espesyal na token na may bisa sa isang limitadong oras para sa isang partikular na site. API Pag-index ng Nilalaman, ay nagbibigay ng metadata tungkol sa nilalaman na dating naka-cache ng mga web application na tumatakbo sa Progressive Web Apps (PWS) mode. Maaaring mag-save ang application ng iba't ibang data sa gilid ng browser, kabilang ang mga larawan, video at artikulo, at kapag nawala ang koneksyon sa network, gamitin ito gamit ang Cache Storage at IndexedDB API. Ginagawang posible ng Content Indexing API na magdagdag, maghanap at magtanggal ng mga naturang mapagkukunan. Sa browser, ang API na ito ay ginagamit na upang maglista ng listahan ng mga page at multimedia data na available para sa offline na pagtingin.

    Paglabas ng Chrome 80

  • Pinatatag at ipinamahagi na ngayon sa labas ng Origin Trials API Makipag-ugnayan sa Picker, na nagpapahintulot sa gumagamit na pumili ng mga entry mula sa address book at magpadala ng ilang mga detalye tungkol sa mga ito sa site. Tinutukoy ng kahilingan ang isang listahan ng mga pag-aari na kailangang kunin. Ang mga property na ito ay tahasang ipinapakita sa user, na magpapasya kung ipapasa ang mga property na ito o hindi. Ang API ay maaaring gamitin, halimbawa, sa isang web mail client upang pumili ng mga tatanggap para sa isang ipinadalang sulat, sa isang web application na may VoIP function upang simulan ang isang tawag sa isang partikular na numero, o sa isang social network upang maghanap ng mga nakarehistrong kaibigan. . Kasabay nito, bilang bahagi ng Mga Pagsubok sa Pinagmulan, ang ilang mga bagong katangian ng Contact Picker ay inaalok: bilang karagdagan sa dating magagamit na buong pangalan, email at numero ng telepono, ang kakayahang maglipat ng isang email address at larawan ay naidagdag.
  • Sa Web Workers iminungkahi isang bagong paraan upang i-load ang mga module ng ECMAScript, na nagbibigay-daan sa iyong maiwasan ang paggamit ng importScripts() function, na humaharang sa manggagawa habang pinoproseso ang na-import na script at isinasagawa ito sa pandaigdigang konteksto. Kasama sa bagong paraan ang paggawa ng mga espesyal na module para sa Mga Manggagawa sa Web na sumusuporta sa mga karaniwang mekanismo ng pag-import ng JavaScript at maaaring dynamic na i-load nang hindi hinaharangan ang pagpapatupad ng manggagawa. Upang mag-load ng mga module, nagbibigay ang Worker constructor ng bagong uri ng mapagkukunan - 'module':

    const worker = bagong Manggagawa('worker.js', {
    uri: 'module'
    });

  • Ipinatupad Ang built-in na kakayahan ng JavaScript na magproseso ng mga naka-compress na stream nang hindi nangangailangan ng paggamit ng mga panlabas na aklatan. Naidagdag ang mga API para sa compression at decompression CompressionStream at DecompressionStream. Sinusuportahan ang compression gamit ang gzip at deflate algorithm.

    const compressionReadableStream
    = inputReadableStream.pipeThrough(new CompressionStream('gzip'));

  • Nagdagdag ng CSS property "line-break: kahit saan", na nagbibigay-daan sa mga break sa antas ng anumang typographic na character, kabilang ang mga break malapit sa mga bantas na character na paunang tinukoy ng mga puwang ( ) at sa gitna ng mga salita. Nagdagdag din ng CSS property "overflow-wrap: kahit saan» ay nagbibigay-daan sa iyo na masira ang mga walang patid na pagkakasunud-sunod ng mga character kahit saan kung ang isang angkop na posisyon para sa break ay hindi mahanap sa linya.
  • Para sa konteksto ng media na naproseso sa naka-encrypt na anyo, ipinatupad ang suporta para sa pamamaraan MediaCapabilities.decodingInfo(), na nagbibigay ng impormasyon tungkol sa mga kakayahan ng browser para sa pag-decode ng protektadong nilalaman (halimbawa, ang paraang ito ay maaaring gamitin upang pumili ng mga sitwasyong decoding na may mataas na kalidad o matipid sa enerhiya batay sa magagamit na bandwidth at laki ng screen).
  • Idinagdag na paraan HTMLVideoElement.getVideoPlaybackQuality(), kung saan makakakuha ka ng impormasyon tungkol sa pagganap ng pag-playback ng video upang isaayos ang bitrate, resolution at iba pang mga parameter ng video.
  • Sa API Tagapangasiwa ng Pagbabayad, na pinapasimple ang pagsasama sa mga umiiral nang sistema ng pagbabayad, idinagdag ang kakayahan delegasyon pagproseso ng address at impormasyon sa pakikipag-ugnayan sa isang panlabas na processor ng sistema ng pagbabayad (maaaring may mas tumpak na impormasyon ang application ng sistema ng pagbabayad kaysa sa browser).
  • Nagdagdag ng suporta sa header ng HTTP Sec-Fetch-Dest, na nagbibigay-daan sa iyong magpadala ng karagdagang metadata tungkol sa uri ng nilalamang nauugnay sa kahilingan (halimbawa, para sa isang kahilingan sa pamamagitan ng isang img tag, ang uri ay "larawan", para sa mga font - "font", para sa mga script - "script", para sa mga estilo - "estilo", atbp.). Batay sa tinukoy na uri, ang server ay maaaring gumawa ng mga hakbang upang maprotektahan laban sa ilang mga uri ng pag-atake (halimbawa, hindi malamang na ang isang link sa isang handler para sa isang money transfer ay tinukoy sa pamamagitan ng isang img tag, kaya ang mga naturang kahilingan ay hindi kailangang maproseso).
  • Sa JavaScript engine V8 isinagawa ang pag-optimize pag-iimbak ng mga pointer sa heap. Sa halip na iimbak ang buong 64-bit na halaga, tanging ang mga natatanging mas mababang bit ng pointer ang iniimbak. Ginawang posible ng pag-optimize na ito na bawasan ang pagkonsumo ng heap memory ng 40%, sa halaga ng isang parusa sa pagganap na 3-8%.
    Paglabas ng Chrome 80

    Paglabas ng Chrome 80

  • Pagbabago sa mga tool para sa mga web developer:
    • Ang web console ay mayroon na ngayong kakayahan na muling tukuyin ang let at class expression.

      Paglabas ng Chrome 80

    • Pinahusay na mga tool sa pag-debug ng WebAssembly. Nagdagdag ng suporta DWARF para sa step-by-step na pag-debug, pagtukoy ng mga breakpoint, at pagsusuri ng mga stack traces sa source code kung saan nakasulat ang isang WebAssembly application.

      Paglabas ng Chrome 80

    • Pinahusay na panel para sa pagsusuri sa aktibidad ng network. Nagdagdag ng kakayahang tingnan ang chain ng mga tawag ng mga script na nauugnay sa pagsisimula ng kahilingan.

      Paglabas ng Chrome 80

      Nagdagdag ng mga bagong column ng Path at URL na nagpapakita ng ganap na path at buong URL para sa bawat mapagkukunan ng network. Tinitiyak na ang napiling query ay naka-highlight sa diagram ng pangkalahatang-ideya.

      Paglabas ng Chrome 80

    • Sa tab na Mga Kondisyon ng Network, may idinagdag na opsyon upang baguhin ang parameter ng User-Agent.

      Paglabas ng Chrome 80

    • Isang bagong interface ang iminungkahi para sa pag-configure ng audit panel.
      Paglabas ng Chrome 80

    • Sa tab Coverage ibinigay ang pagpipilian ng pagkolekta ng data ng saklaw para sa bawat function o para sa bawat bloke ng code (mas detalyadong istatistika, ngunit nangangailangan ng mas maraming mapagkukunan).

      Paglabas ng Chrome 80

  • AppCache manifest action (teknolohiya para sa pag-aayos ng pagpapatakbo ng isang web application sa offline mode) limitado ang kasalukuyang direktoryo ng site (kung na-download ang manifest mula sa www.example.com/foo/bar/, gagana lang ang kakayahang i-override ang URL sa loob ng /foo/bar/). Ang suporta sa AppCache ay binalak na ganap na maalis sa Chrome 82. Ang binanggit na dahilan ay ang pagnanais na alisin ang isa sa mga vector para sa mga cross-site na pag-atake sa scripting. Inirerekomenda na gumamit ng API sa halip na AppCache Cache.
  • Itinigil suporta para sa legacy na WebVR 1.1 API, na maaaring palitan ng API WebXR device, na nagbibigay-daan sa iyong i-access ang mga bahagi para sa paglikha ng virtual at augmented reality at pag-isahin ang trabaho sa iba't ibang klase ng mga device, mula sa mga nakatigil na virtual reality helmet hanggang sa mga solusyon batay sa mga mobile device.
  • Ang mga humahawak ng protocol na konektado sa pamamagitan ng registerProtocolHandler() at unregisterProtocolHandler() na mga pamamaraan ay maaari na ngayong gumana sa isang secure na konteksto (kapag na-access sa pamamagitan ng HTTPS).

Bilang karagdagan sa mga inobasyon at pag-aayos ng bug, ang bagong bersyon ay nag-aalis 56 mga kahinaan. Marami sa mga kahinaan ang natukoy bilang resulta ng awtomatikong pagsubok gamit ang mga tool AddressSanitizer, MemorySanitizer, Kontrolin ang Integridad ng Daloy, LibFuzzer и AFL. 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 37 na parangal na nagkakahalaga ng $48 thousand (isang $10000 na parangal, tatlong $5000 na parangal, tatlong $3000 na parangal, apat na $2000 na parangal, tatlong $1000 na parangal at anim na $500 na parangal). Ang laki ng 17 reward ay hindi pa natutukoy.

Pinagmulan: opennet.ru

Magdagdag ng komento