Релиз Chrome 75

Компания Google представи пускане на уеб браузъра Chrome 75. В същото време е наличен стабилен релиз на безплатния проект Chromium, който е основата на Chrome. Браузърът Chrome се отличава с използването на логотипите на Google, възможността за зареждане на модула Flash по заявка, наличието на система за изпращане на известия в случай на срив, модули за възпроизвеждане на защитено видео съдържание (DRM), система за автоматично инсталиране на актуализации и предаване при търсене на RLZ параметри. Следващата версия на Chrome 76 е планирана за 30 юли.

Основни промени в Chrome 75:

  • В метода canvas.getContext() е добавен флагът «desynchronized» за обработка на контексти на Canvas (2D или WebGL) с използването на алтернативна система за рендиране, осигуряваща минимални закъснения чрез заобикаляне на стандартния механизъм за обновяване на DOM и извеждане директно чрез OpenGL;
  • Разширено API Web Share (обект navigator.share), с помощта на който може вместо списък от отделни бутони да се генерира унифициран бутон за публикуване в социални мрежи, актуални за посетителя. В новата версия на API е добавена възможност за извеждане на стандартен диалог за изпращане на файлове на други приложения (например на Android се извежда блок за изпращане чрез имейл, Bluetooth и т.н.);
  • Реализирано възможност за разделяне на групи числа в цифрови литерали със символа за подчертаване. Например, за подобряване на четимостта на големи числа в кода може да се указва 1_000_000_000 и това число ще бъде обработено като 1000000000;
  • За всички потребители на настолната версия е включен по подразбиране режим на строга изолация на сайтове, при който страниците на различни хостове винаги се разполагат в паметта на различни процеси, в които се прилага своя собствен sandbox. Основната особеност на режима на строга изолация е разделението не по раздели, а по домейни, т.е. ако преди съдържанието на заредените от други домейни скриптове, iframe и popup-ове се изпълняваше в един и същи процес с основния сайт, то сега те ще бъдат разделени в различни процеси;
  • Добавките, занесени в черния списък, сега ще се премахват напълно, а не ще се деактивират с превключване в неактивен режим.
  • В вградения мениджър на задачи на Chrome (Настройки > Повече инструменти > Мениджър на задачи) е осигурено извеждане на обработчиците на Service worker;
  • В метода window.open() е добавен атрибут «noreferrer«, позволяващ отваряне на страница без попълване на заглавката Referer;
  • Добавени са директивите CSP (Content Security Policy) «script-src-attr», «script-src-elem», «style-src-attr» и «style-src-elem», предоставящи функционалност на директивите script и style, но с възможност за прилагане към отделни обработчици на събития, елементи или атрибути;
  • В Web Authentication API е добавена поддръжка на FIDO CTAP2 PIN за използване на зададен PIN-номер от потребителите за авторизация при извършване на операции с ключове, поддържащи протокола FIDO CTAP2. В конфигуратора в секция «Advanced» се появи опцията «Manage security keys», в която може да се зададе PIN-код за защита на ключовете, поставени на USB-флаш устройство, както и опция за нулиране на ключа (очистване на всички данни и PIN);
  • В API Web Animations са добавени обекти
    AnimationEffect и KeyframeEffect, позволяващи интерактивно управление на анимираните елементи и времето (продължителност, закъснения).
    Освен това е добавен нов конструктор Animation(), предоставящ по-разширени инструменти за управление на анимацията. По-рано Web Animations API позволяваше създаването на анимация чрез метода Element.animate(), който връща вече форматиран обект Animation. Сега разработчикът може да управлява неговото създаване чрез явен призив на конструктора, в който, например, може да се зададе обект KeyframeEffect;
  • Добавена е опцията HTMLVideoElement.playsInline, предписваща на браузъра да показва видеото в обхвата на елемента (например, за предоставяне на метод за показване на цял екран);
  • В метода MediaStreamTrack.getCapabilities() е реализирана възможността за получаване на диапазона на допустимите стойности за свойства, свързани със звуковите устройства (честота на дискретизация, закъснение, брой канали и т.н.);
  • В WebRTC е добавен API RTCDtlsTransport за получаване на информация за активните трансфери, например за използването на SCTP или DTLS (Datagram Transport Layer Security), чрез които се изпращат или получават пакети RTP и RTCP. Също така е добавен интерфейс RTCIceTransport за предоставяне на информация за състоянието на транспортите
    ICE, използвани в обекта RTCPeerConnection;
  • В заглавието Cache-Control е реализирана директива «stale-while-revalidate«, която позволява задаването на допълнителен времеви интервал, в който браузърът може да използва ресурс с изтекъл срок за асинхронна повторна проверка на актуалността;
  • Добавена е възможност Scroll Snap Stop за определяне на привързването към елементите при инерционно превъртане (например, широк жест при избор в списък с изображения ще води до избора на не последния елемент, а на следващия);
  • В Android версията е подобрено автоматичното попълване на данните за профилите в аутентикационните форми. Блок със предложения вече се показва директно над екранната клавиатура и при кликване показва възможните запазени опции вместо да закрива формата за въвеждане;
  • Добавена е експериментална поддръжка на режим за четене (Reader Mode), при активиране на който се показва само същественият текст, а всички свързани контроли, банери, менюта, навигационни панели и други несвързани с контента части от страницата се прикриват. Активирането на новия режим става чрез опцията chrome://flags/#enable-reader-mode, след което в падащото меню се появява опция за неговото използване;
  • В JavaScript енджина V8 е реализиран режим на явен кеш на резултатите от компилацията на WebAssembly (при повторно отваряне на страницата, преди обработените компоненти на WebAssembly ще бъдат извлечени от кеша). В
    WebAssembly също така са добавени нови инструкции memory.copy, memory.fill, table.copy, memory.init и table.init за копиране, запълване и инициализиране на големи области от паметта;
  • Добавена е поддръжка на директно парсване на скриптове на живо по време на тяхното зареждане от мрежата, без да се ангажира основния поток на Chrome. По-рано потокът първо е приеман в основния поток, откъдето е пренасян за парсване. Такава организация е довела до блокировки от други задачи, изпълнявани в основния поток, като парсване на HTML и изпълнение на други JavaScript скриптове. Сега такова пренасочване е премахнато;
  • Подобрения в инструментите за уеб разработчици:
    • В режима за инспектиране на CSS е осигурено автоматично допълване на имената и основните стойности на функциите, които могат да се прилагат в CSS свойствата (например, «filter: blur(1px)»). Предложените стойности веднага се отразяват в преглеждания макет на страницата;
      Релиз Chrome 75
    • В командния панел, извеждан при натискане на Ctrl+Shift+P, е реализирана команда «Clear Site Data» за изчистване на всички данни, свързани със страницата (аналог на извикването на менюто Application > Clear Storage), включително Service workers, localStorage, sessionStorage, IndexedDB, Web SQL, Cookies, Cache и Application Cache;
    • Добавена е възможността за преглед на всички съществуващи бази данни IndexedDB (по-рано в Application > IndexedDB можеше да се разгледа базата данни за текущия домейн, което не позволяваше, например, да се инспектира използването на IndexedDB в блокове, зареждани чрез iframe);

      Релиз Chrome 75
    • В интерфейса за инспектиране на мрежата в подсказката, появяваща се при задържане на курсора върху полетата в колоната „Size“, сега се показва размерът на ресурса в оригиналния му вид, без компресия;

      Релиз Chrome 75
    • В страничната лента на отладчика е осигурен разделен изход на информация за състоянието на точките на спиране, свързани с отделни части от сложни изрази в реда (inline breakpoint), например, поставени в веригата от методи;

      Релиз Chrome 75
    • В панелите за инспектиране на IndexedDB и Cache е реализирано показването на броя на ресурсите в базата данни или кеша;
      Релиз Chrome 75
  • В експерименталните Canary-сборки е добавена поддръжка
    обращенията към DNS през HTTPS (DoH, DNS over HTTPS), които могат да бъдат активирани в chrome://flags#dns-over-https. DoH може да бъде полезен за предотвратяване на изтичане на информация за заявените имена на хостове през DNS-сървъри на доставчици, за справяне с MITM-атаки и фалшифициране на DNS-трафик, за противодействие на блокировки на ниво DNS или за организиране на работа в случай на невъзможност за директен достъп до DNS-сървъри (например, при работа през прокси);

Освен нововъведенията и корекциите на грешки, в новата версия е отстранено 42 уязвимости. Много от уязвимостите са открити в резултат на автоматизирано тестване с инструменти AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer и AFL. Критични проблеми, които позволяват заобикаляне на всички нива на защита в браузъра и изпълнение на код в системата извън sandbox-окружението, не са открити. В рамките на програмата за предоставяне на парични награди за откритие на уязвимости за текущото издание, компанията Google е изплатила 13 награди на обща стойност 9000 долара (една награда $5000, две награди по $1000 и четири награди по $500). Размерът на 7 награди все още не е определен.

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster