Компания Google представила (https://chromereleases.googleblog.com/2018/03/stable-channel...) релиз web-браузера Chrome 65 (http://www.google.com/chrome). Одновременно доступен (https://www.chromium.org/developers/calendar) стабильный выпуск свободного проекта Chromium (http://dev.chromium.org/), выступающего основой Chrome. Браузер Chrome отличается (https://code.google.com/p/chromium/wiki/ChromiumBrowserVsGoo...) использованием логотипов Google, возможностью загрузки модуля Flash по запросу, наличием системы отправки уведомлений в случае краха, модулями для воспроизведения защищённого видеоконтента, системой автоматической установки обновлений и передачей при поиске RLZ-параметров (https://www.opennet.dev/opennews/art.shtml?num=26822).Основные (https://productforums.google.com/forum/#!topic/chrome/N1Go1_...) изменения (https://plus.google.com/+FrancoisBeaufort/posts) в (https://blog.chromium.org/2018/02/chrome-65-beta-css-paint-a...) Chrome (https://developers.google.com/web/updates/2018/) 65 (https://v8project.blogspot.ru/2018/02/v8-release-65.html):
- При вводе в адресной строке обеспечен показ пиктограмм сайтов (Favicons) в списке рекомендуемых ссылок;
- Оформление интерфейса управления дополнениями ("Manage Extensions" в Omnibox) переработано и переведено в соответствие с концепцией Material Design;
- Представлено для тестирования новое оформление диалоговых окон и всплывающих сообщений, соответствующее концепции Material Design. Включение по умолчанию нового интерфейса запланировано на Chrome 66, а пока требует явной активации через "chrome://flags#secondary-ui-md";
- В мобильной версии для платформы Android добавлена возможность удаления загруженных файлов (в менеджере загрузок добавлено меню "..." с кнопками Share и Delete). В основное меню добавлена кнопка для настройки языка, через которую можно выбрать предпочитаемый язык, изменить приоритет языков и настроить функцию перевода;
- В настройки для людей с ограниченными возможностями добавлена опция для отображения страниц по возможности в упрощённом виде (Chrome menu → Settings → Accessibility → Simplified View) без нагромождения навигацией и прочими не связанными с контентом элементами;
- В рамках обеспечения (https://www.opennet.dev/opennews/art.shtml?num=47543) защиты от автоматического открытия непрошенных страниц обеспечена блокировка замены текущей страницы при открытии ссылки в новой вкладке (когда кликнутая ссылка открывается в новой вкладке, а содержимое текущей вкладки перенаправляется на новый URL). При подобных пробросах теперь выводится предупреждение, требующее от пользователя подтвердить переход явным кликом. Автоматическое открытие рекламных страниц часто практикуется недобросовестными рекламодателями, использующими методы обхода механизмов верификации HTML-баннеров в рекламных сетях для подстановки автоматического перехода;
- Изменено (https://plus.google.com/+FrancoisBeaufort/posts/dtfastJppG8) кодовое слово для принудительного открытия страниц, на которых имеются проблемы с SSL-сертификатом (например, сертификат просрочен). Для открытия подобных страниц (https://expired.badssl.com/) вместо кодовой фразы "badidea" теперь нужно ввести "thisisnotsafe";
- Добавлен API CSS Paint (https://developers.google.com/web/updates/2018/01/paintapi) (CSS Custom Paint), позволяющий программно генерировать изображение для CSS-свойств. Вместо ссылки на ресурс с изображением можно использовать функцию paint() для указания обработчика, который сгенерирует изображение (например, в CSS можно указать "background-image: paint(checkerboard)", где checkerboard зарегистрированный Worklet для формирования фона);
- Добавлен API Server Timing (https://w3c.github.io/server-timing/), позволяющий серверу передать статистику о потреблении различных ресурсов при выполнении определённого запроса (CPU, обращение к ФС, операции с СУБД, запросы из кэша и т.п.). Новый API расширяет средства оценки производительности web-приложения на стороне браузера (API Navigation Timing и Resource Timing) возможностью получить сведения о скрытых от браузера затратах времени, которые потребовались для выполнения запроса на стороне сервера. Сведения передаются (https://umaar.com/dev-tips/136-server-timing/) через HTTP-заголовок Server-Timing, поддержка которого уже интегрирована в инструменты мониторинга Chrome Developer Tools;
- В CSS реализован псевдоселектор ":any-link (https://developer.mozilla.org/en-US/docs/Web/CSS/:any-link)" для применения CSS-свойств ко всем элементам гиперссылок по которым были и небыли переходы. Синтаксис определения цветовых координат HSL/HSLA и RGB/RGBA приведён в соответствие со спецификацией CSS Color 4 (https://drafts.csswg.org/css-color/#the-hsl-notation). Добавлена возможность использования свойства display:contents (https://drafts.csswg.org/css-display/#box-generation) для создания (https://rachelandrew.co.uk/archives/2016/01/29/vanishing-box.../) блоков для дочерних элементов и песевдоэлементов без генерации родительского блока (box);
- Для HTML-элемента slot реализован метод assignedElements() (https://html.spec.whatwg.org/#dom-slot-assignedelements), который возвращает только элементы узлов, прикреплённых к указанному слоту (по аналогии с ранее доступным методом assignedNodes() для вывода узлов);
- Добавлено свойство HTMLAnchorElement.relList (https://www.chromestatus.com/feature/5631885325631488), которое показывает взаимосвязь между ресурсом, представляемым HTML-элементом "A" и текущим документом, заданную при помощи атрибута "rel";
- В заголовок Feature-Policy добавлен флаг sync-xhr (http://xhr.featurepolicy.rocks/), позволяющий выборочно включать и выключать синхронный режима работы XMLHttpRequest;
- Поддержка протокола TLS 1.3 приведена в соответствие с 23 черновиком спецификации (https://tools.ietf.org/html/draft-ietf-tls-tls13-23);
- Добавлена возможность использования Request.destination (https://fetch.spec.whatwg.org/#concept-request-destination) для определения, какие ресурсы были загружены для service worker;
- Так как язык WebIDL (https://www.w3.org/TR/WebIDL-1/) признан устаревшим, в API PerformanceResourceTiming, PerformanceLongTaskTiming и TaskAttributionTiming добавлен метод toJSON (https://heycam.github.io/webidl/#idl-tojson-operation) для преобразования объектов в JSON;
- Для защиты от утечки информации на другие хосты (cross-origin) в Chrome теперь игнорируется наличие атрибута download для элементов "A (https://www.w3.org/MarkUp/1995-archive/Elements/A.html) с атрибутами cross-origin;
- Для соответствия требованиям спецификации HTML запрещено переопределение объекта document.all;
- Прекращено доверие (https://www.opennet.dev/opennews/art.shtml?num=46941) к SSL-сертификатам Symante, выданным после 1 декабря 2017 года (изменение действует только для сайтов, отказавшихся заменить устаревший сертификат Symantec на новый сертификат от DigiCert).
Кроме нововведений и исправления ошибок в новой версии устранено 45 уязвимостей (https://bugs.chromium.org/p/chromium/issues/list?can=1&q=lab...). Многие из уязвимостей выявлены в результате автоматизированного тестирования инструментами AddressSanitizer (http://code.google.com/p/address-sanitizer/wiki/AddressSanit...), MemorySanitizer (https://code.google.com/p/memory-sanitizer/wiki/MemorySanitizer), Control Flow Integrity (https://sites.google.com/a/chromium.org/dev/developers/testi...), LibFuzzer (https://sites.google.com/a/chromium.org/dev/developers/testi...) и AFL (http://lcamtuf.coredump.cx/afl/). Критических проблем, которые позволяют обойти все уровни защиты браузера и выполнить код в системе, за пределами sandbox-окружения, не выявлено. В рамках программы по выплате денежного вознаграждения за обнаружение уязвимостей для текущего релиза компания Google выплатила ...
URL: https://chromereleases.googleblog.com/2018/03/stable-channel...
Новость: https://www.opennet.dev/opennews/art.shtml?num=48216