Почти в каждой версии Chrome мы видим значительное количество обновлений и улучшений продукта, его производительности, а также возможностей веб-платформы. В этой статье описаны изменения в Chrome 52, бета-версия которого доступна с 9 июня. Этот список может быть изменен в любое время.
Шифры на основе DHE постепенно прекращаются
TL;DR: шифры на основе DHE удалены в настольной версии Chrome 53, поскольку их недостаточно для длительного использования. Серверы должны использовать ECDHE, если он доступен, или простой шифр RSA, если его нет.
Намерение удалить | Трекер Chromestatus | Ошибка хрома
В прошлом году мы изменили минимальный размер группы TLS Диффи-Хеллмана с 512 до 1024 бит; однако 1024-бит недостаточно в долгосрочной перспективе. Метрики показывают, что около 95% подключений DHE, видимых Chrome, используют 1024-битный DHE. Это, в сочетании с тем, как согласовывается DHE в TLS, затрудняет переход за пределы 1024-битного формата.
Хотя существует черновой вариант спецификации, устраняющий эту проблему, он все еще является черновиком и требует изменений как на клиенте, так и на сервере. Между тем, ECDHE уже широко внедрен и развернут. Серверы следует обновить до ECDHE, если они доступны. В противном случае убедитесь, что включен набор шифров обычного RSA.
Шифры на основе DHE устарели, начиная с Chrome 51. Поддержка удалена с рабочего стола в Chrome 53.
Предупреждение об устаревании FileError
TL;DR: в Chrome 54 ожидается удаление устаревшего интерфейса FileError
Замените ссылки на err
.code
на err
.name
и err
.message
.
Намерение удалить | Трекер Chromestatus | Ошибка хрома
Текущая версия стандарта File API не содержит интерфейса FileError
, и его поддержка была прекращена где-то в 2013 году. В Chrome 53 это предупреждение об устаревании будет выведено на консоль DevTools:
«FileError» устарел и будет удален в версии 54. Используйте атрибуты ошибки «имя» или «сообщение», а не «код».
Это имеет разные последствия в разных контекстах.
-
FileReader.error
иFileWriter.error
будут объектамиDOMException
вместо объектовFileError
. - Для асинхронных вызовов
FileSystem
ErrorCallback
будет переданFileError.ErrorCode
вместоFileError
. - Для синхронных вызовов
FileSystem
вместоFileError
будет выданFileError.ErrorCode
.
Это изменение влияет только на код, который основан на сравнении кода экземпляра ошибки ( e.code
) непосредственно со значениями перечисления FileError
( FileError.NOT_FOUND_ERR
и т. д.). Код, который проверяет жестко закодированные константы (например, e.code === 1
), может завершиться неудачно, сообщив пользователю о неверных ошибках.
К счастью, типы ошибок FileError
, DOMError
и DOMException
все общие свойства name
и message
, которые дают согласованные имена для случаев ошибки (другими словами, e.name === "NotFoundError"
). Вместо этого код должен использовать эти свойства, которые будут работать во всех браузерах и продолжат работать после удаления самого интерфейса FileError
.
Удаление FileError
ожидается в Chrome 54.
Удалить атрибут результатов для <input type=search>
TL;DR: Атрибут results
удаляется, поскольку он не является частью какого-либо стандарта и непоследовательно реализуется в разных браузерах.
Намерение удалить | Трекер Chromestatus | Ошибка хрома
Значение results
реализовано только в webkit и ведет себя крайне непоследовательно для тех, которые это делают. Например, Chrome добавляет значок лупы в поле ввода, а на рабочем столе Safari он контролирует, сколько предыдущих поисковых запросов отображается во всплывающем окне, открывающемся при нажатии значка лупы. Поскольку это не является частью какого-либо стандарта, оно устарело.
Если вам все равно нужно включить значок поиска в поле ввода, вам придется добавить к элементу собственный стиль. Вы можете сделать это, включив фоновое изображение и указав отступы слева в поле ввода.
input[type=search] {
background: url(some-great-icon.png) no-repeat scroll 15px 15px;
padding-left:30px;
}
```
This attribute has been deprecated since Chrome 51.