Состоялся релиз web-браузера Firefox 54, а также мобильной версии Firefox 54 для платформы Android. В ближайшие часы ожидается обновление ветки с длительным сроком поддержки 52.2.0. В скором времени на стадию бета-тестирования перейдёт ветка Firefox 55, релиз которой намечен на 8 августа. Aurora-выпуски больше не формируются, для ознакомления с развиваемыми возможностями предлагается использовать ночные сборки.

Основные новшества:

  • В меню и на панель закладок добавлена секция "Mobile Bookmarks” со списком закладок, созданных на синхронизированных мобильных устройствах;
  • Проведена модернизация диалоговой панели с информацией о загрузках, добавлены дополнительные детали о загружаемых элементах;
  • Активирована по умолчанию поддержка обработки контента в разных процессах (e10s-multi), позволяющая запустить более одного процесса для обработки контента. Подобный подход позволяет обеспечить дополнительную изоляцию обработчиков, повысить надёжность (крах одной вкладки не приведёт к закрытию всех остальных вкладок), повысить эффективность использования ресурсов многоядерных процессоров (разнесение нагрузки на все ядра), уменьшить фрагментацию памяти при длительной работе браузера. По умолчанию запускается 4 процесса-обработчика контента, но данный лимит можно изменить через переменную dom.ipc.processCount в about:config;
    • Активирована sandbox-изоляция, ограничивающая доступ дочерних процессов Firefox к системным вызовам, файловой системе и сторонним процессам. Для изоляции в Linux применяется ограничение доступа к системным вызовам при помощи Seccomp-bpf, также для изоляции используются User namespace и chroot в пустую директорию. В Windows применяются разработанные Google библиотеки sandboxbroker и sandboxtarget, используемые в Chromium и Chrome;
    • В число поставляемых по умолчанию системных дополнений (см. about:debugging) включено дополнение Firefox Screenshots, которое отключено по умолчанию (для включения следует в about:config выставить extensions.screenshots.system-disabled=false). Дополнение позволяет быстро создавать скриншоты web-страниц и обмениваться скриншотами с другими пользователями. Созданные снимки страниц или их отдельных частей размещаются в специальном облачном сервисе, в котором в течение 14 дней остаются доступны по прямой ссылке для других пользователей, знающих идентификатор снимка. Созданные в текущем браузере скриншоты показываются в специальном разделе "My Shots". Имеются средства для отправки скриншотов в Facebook, Twitter, Pinterest и по электронной почте. Серверная часть облачного сервиса открыта и может быть поднята на своих мощностях (применяется Node.js и PostgreSQL).
    • В средствах для web-разработчика в режиме адаптивного дизайна ("Responsive Design Mode") появилась возможность создания собственных устройств для тестирования сайта в его окружении (задаётся разрешение экрана, DPI, параметры сенсорного экрана, пропускная способность сети и т.п.). Создаваемые устройства можно размещать в общем списке наряду с предопределёнными устройствами;
    • В системе инспектирования web-страниц появилась поддержка синтаксиса задания цветов CSS color level 4, например, "hsl(120deg 100% 50%)" теперь распознаётся в панели с правилами CSS;
    • Внесена большая порция улучшений в новый отладчик для JavaScript (debugger.html). В боковой панели появилась возможность установки контрольных выражений (watch expression), которые будут вычислены при остановке приложения отладчиком. Обеспечено сохранение состояния интерфейса отладчика между разными сеансами, например, сохраняются открытые вкладки, свёрнутая боковая панель, выделенные куски кода, точки останова и т.п. Для небольших экранов предоставлен режим сворачивания вертикальных элементов интерфейса.

      Реализованы всплывающие подсказки, позволяющие посмотреть текущее значение переменной. Добавлена возможность нормализации форматирования кода, позволяющая привести в читаемый вид упакованный JavaScript-код, поставляемый без пробелов и отступов. Значительно расширены средства для поиска кода в отладчике, полосками обрамлены все совпадения, в панели показывается общее число найденных элементов, добавлен новый режим поиска вызова функций;

    • Network Monitor переписан с XUL на обычный JavaScript/HTML/CSS. В инструменты для мониторинга сетевой активности добавлен сводный блок с информацией о запросе, включающий общий размер данных, переданных по сети. Для кодов состояния и HTTP-заголовков добавлены ссылки на документацию;
    • По умолчанию активирована блокировка воспроизведения мультимедийного контента в только что открытых фоновых вкладках. Звук и видео, заданные через HTML5-теги audio и video, теперь начинают воспроизводиться только после того, как пользователь явно перейдёт на вкладку (воспроизведение не начнётся, пока вкладка не станет видимой). Изначально данная возможность обкатывалась в рамках ветки Firefox 53, но не была включена в релиз;
    • Добавлена поддержка конструкции ‹script type="module"› для определения содержимого модульных скриптов, тестируемых вместе с флагом "dom.moduleScripts.enabled" в настройках;
    • Добавлен метод URL.toJSON(), возвращающий определённый в "href" URL в виде конструкции JSON ('{"key": "https://www...."}');
    • В Linux, Windows и macOS по умолчанию включена поддержка объёмного звука (5.1 surround);
    • В средства для воспроизведения защищённого контента (Encrypted MediaExtensions) добавлена поддержка использования кодека VP9 в шифрованных потоках, обрабатываемых модулями Clear Key и Widevine. Кодек WebM/VP8 теперь может использоваться на системах с любой производительностью (раньше активировался только для достаточно быстрых систем);
    • В WebRTC включена по умолчанию поддержка режима TCP ICE, позволяющего использовать TCP вместо UDP в сетях, в которых блокируется UDP;
    • Прекращена поддержка конвейерной обработки ("HTTP Pipelining"), для асинхронной передачи на сервер нескольких запросов в одном соединении рекомендуется использовать HTTP/2.0. Настройка network.http.pipelining в about:config теперь игнорируется;
    • Добавлено событие onanimationcancel, которое генерируется при отмене или сбое воспроизведения анимации, заданной через CSS Animation;
    • В версии для Android включена по умолчанию поддержка объекта Intl, предоставляющего доступ к API интернационализации (сравнение строк, форматирование чисел, времени и дат с учётом локали);
    • Продолжено усовершенствование API WebExtensions для разработки дополнений, совместимых с браузером Chrome. Из новых программных интерфейсов отмечается реализация API для создания боковых панелей, которая позволяет разместить локальный HTML-файл в внутри панели. Также добавлена возможность переопределить обработчик about:newtab и подключить собственный обработчик протоколов (например, дополнение с IRC-клиентом может создать обработчик irc://). Началась реализация API для интеграции с инструментами для разработчиков. Добавлен Privacy API, позволяющий манипулировать настройками, связанными с приватностью (networkPredictionEnabled, webRTCIPHandlingPolicy и hyperlinkAuditingEnabled);
    • В версии для Android увеличена производительность синхронизации закладок, повышена надёжность воспроизведения звука и видео в браузере, налажено корректное сохранение имён файлов после загрузки.

    Кроме новшеств и исправления ошибок в Firefox 54 устранена серия уязвимостей, из которых несколько помечены как критические, т.е. могут привести к выполнению кода злоумышленника при открытии специально оформленных страниц. В настоящее время информация с подробностями об исправленных проблемах безопасности недоступна, ожидается, что перечень уязвимостей будет опубликован в течение нескольких часов.

    Источник: http://www.opennet.ru/opennews/art.shtml?num=46691