Компания Google пускане на уеб браузъра . В същото време стабилен релиз на безплатния проект , който е основата на Chrome. Браузърът Chrome с използването на логотипите на Google, възможността за зареждане на модула Flash по заявка, наличието на система за изпращане на известия в случай на срив, модули за възпроизвеждане на защитено видео съдържание (DRM), система за автоматично инсталиране на актуализации и предаване при търсене . Следващата версия на Chrome 76 е планирана за 30 юли.
:
- В метода canvas.getContext() флагът «desynchronized» за обработка на контексти на Canvas (2D или WebGL) с използването на алтернативна система за рендиране, осигуряваща минимални закъснения чрез заобикаляне на стандартния механизъм за обновяване на DOM и извеждане директно чрез OpenGL;
- Разширено API (обект navigator.share), с помощта на който може вместо списък от отделни бутони да се генерира унифициран бутон за публикуване в социални мрежи, актуални за посетителя. В новата версия на API възможност за извеждане на стандартен диалог за изпращане на файлове на други приложения (например на Android се извежда блок за изпращане чрез имейл, Bluetooth и т.н.);
- възможност за разделяне на групи числа в цифрови литерали със символа за подчертаване. Например, за подобряване на четимостта на големи числа в кода може да се указва 1_000_000_000 и това число ще бъде обработено като 1000000000;
- За всички потребители на настолната версия е включен по подразбиране , при който страниците на различни хостове винаги се разполагат в паметта на различни процеси, в които се прилага своя собствен sandbox. Основната особеност на режима на строга изолация е разделението не по раздели, а по домейни, т.е. ако преди съдържанието на заредените от други домейни скриптове, iframe и popup-ове се изпълняваше в един и същи процес с основния сайт, то сега те ще бъдат разделени в различни процеси;
- Добавките, занесени в черния списък, сега ще се премахват напълно, а не ще се деактивират с превключване в неактивен режим.
- В вградения мениджър на задачи на Chrome (Настройки > Повече инструменти > Мениджър на задачи) извеждане на обработчиците на Service worker;
- В метода window.open() е добавен атрибут ««, позволяващ отваряне на страница без попълване на заглавката Referer;
- директивите (Content Security Policy) «script-src-attr», «script-src-elem», «style-src-attr» и «style-src-elem», предоставящи функционалност на директивите script и style, но с възможност за прилагане към отделни обработчици на събития, елементи или атрибути;
- В Web Authentication API поддръжка на FIDO CTAP2 PIN за използване на зададен PIN-номер от потребителите за авторизация при извършване на операции с ключове, поддържащи протокола . В конфигуратора в секция «Advanced» се появи опцията «Manage security keys», в която може да се зададе PIN-код за защита на ключовете, поставени на USB-флаш устройство, както и опция за нулиране на ключа (очистване на всички данни и PIN);
- В API Web Animations са добавени обекти
, позволяващи интерактивно управление на анимираните елементи и времето (продължителност, закъснения).
Освен това е добавен нов конструктор , предоставящ по-разширени инструменти за управление на анимацията. По-рано Web Animations API позволяваше създаването на анимация чрез метода Element.animate(), който връща вече форматиран обект Animation. Сега разработчикът може да управлява неговото създаване чрез явен призив на конструктора, в който, например, може да се зададе обект KeyframeEffect; - Добавена е опцията , предписваща на браузъра да показва видеото в обхвата на елемента (например, за предоставяне на метод за показване на цял екран);
- В метода MediaStreamTrack.getCapabilities() е реализирана възможността за получаване на диапазона на допустимите стойности за свойства, свързани със звуковите устройства (честота на дискретизация, закъснение, брой канали и т.н.);
- В WebRTC е добавен API за получаване на информация за активните трансфери, например за използването на SCTP или DTLS (Datagram Transport Layer Security), чрез които се изпращат или получават пакети RTP и RTCP. Също така е добавен интерфейс RTCIceTransport за предоставяне на информация за състоянието на транспортите
ICE, използвани в обекта RTCPeerConnection; - В заглавието Cache-Control е реализирана директива ««, която позволява задаването на допълнителен времеви интервал, в който браузърът може да използва ресурс с изтекъл срок за асинхронна повторна проверка на актуалността;
- 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)»). Предложените стойности веднага се отразяват в преглеждания макет на страницата;

- В командния панел, извеждан при натискане на 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);

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

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

- В панелите за инспектиране на IndexedDB и Cache е реализирано показването на броя на ресурсите в базата данни или кеша;

- В режима за инспектиране на CSS е осигурено автоматично допълване на имената и основните стойности на функциите, които могат да се прилагат в CSS свойствата (например, «filter: blur(1px)»). Предложените стойности веднага се отразяват в преглеждания макет на страницата;
- В експерименталните Canary-сборки поддръжка
обращенията към DNS през HTTPS (DoH, DNS over HTTPS), които могат да бъдат активирани в chrome://flags#dns-over-https. DoH може да бъде полезен за предотвратяване на изтичане на информация за заявените имена на хостове през DNS-сървъри на доставчици, за справяне с MITM-атаки и фалшифициране на DNS-трафик, за противодействие на блокировки на ниво DNS или за организиране на работа в случай на невъзможност за директен достъп до DNS-сървъри (например, при работа през прокси);
Освен нововъведенията и корекциите на грешки, в новата версия е отстранено . Много от уязвимостите са открити в резултат на автоматизирано тестване с инструменти , , , и . Критични проблеми, които позволяват заобикаляне на всички нива на защита в браузъра и изпълнение на код в системата извън sandbox-окружението, не са открити. В рамките на програмата за предоставяне на парични награди за откритие на уязвимости за текущото издание, компанията Google е изплатила 13 награди на обща стойност 9000 долара (една награда $5000, две награди по $1000 и четири награди по $500). Размерът на 7 награди все още не е определен.
Източник: opennet.ru





