Тестирование Firefox 53-beta и Firefox Developer Edition 54
Firefox 53 перешёл на стадию бета-тестирования, что ознаменовало прекращение формирования базовой функциональности и сосредоточение всего внимания на выявлении ошибок и контроле качества. Кроме того сформирован выпуск Firefox Developer Edition 54, который заменил собой aurora-ветку, в рамках которой проводится оценка готовности тех или иных новшеств для последующего бета-выпуска. Загрузить бета-выпуск можно на данной странице, а Firefox Developer Edition здесь. Релиз Firefox 53 намечен на 18 апреля, а Firefox 54 на 13 июня.
Изменения, представленные в бета-версии Firefox 53:
- Полностью переработано оформление уведомлений для подтверждения предоставления web-приложению или сайту дополнительных полномочий, таких как доступ к определению местоположения, микрофону, камере, API для offline-хранения, выводу уведомлений и т.п. Уведомления о запросе расширенных полномочий стали более заметными, наглядными и простыми для понимания. В адресной строке предусмотрена возможность быстрого доступа к полномочиям с возможностью их изменения в любой момент и доступом к расширенным настройкам сайта, позволяющим заблокировать загрузку изображений, обработку cookie и использование плагинов.
- Поддержка многопроцессного режима расширена наработками проекта Quantum Compositor (e10s-gpu), в рамках которого код композитинга и интерфейса для взаимодействия с GPU вынесен в отдельный процесс, что позволяет защитить браузер от проблем, возникающих из-за графических драйверов и сбоев в графическом API. В случае сбоя графического драйвера процесс композитинга автоматически перезапускается без негативного влияния на работу остальных частей браузера. Проведённый в ночных сборках эксперимент показал, что тестовое включение Quantum Compositor привело к сокращению общего числа жалоб на крахи браузера на 1.2%, крахов в процессе завершения работы на 5.1%, крахов плагинов на 5.5% и число отчётов о крахах GPU-драйверов уменьшилось на 45%. Отдельный процесс для отрисовки пока активирован только для платформы Windows;
- В дополнение к ранее применяемой базовой теме оформления в основной состав включены две новые темы оформления — Compact Dark и Compact Light, созданные по мотивам тем оформления для Firefox Developer Edition. Новые темы можно активировать через Appearance в менеджере дополнений (about: addons) или через меню настройки внешнего вида (Menu/Customize). Новые темы являются первым шагом на пути к реализации плана по визуальному обновлению Firefox в 2017 году.
- По умолчанию активирована блокировка воспроизведения мультимедийного контента в фоновых вкладках. Звук и видео теперь начинают воспроизводиться только после того, как пользователь явно перейдёт на вкладку (воспроизведение не начнётся, пока вкладка не станет видимой);
- Обеспечена возможность применения легковесных тем оформления для окон, открытых в режиме приватного просмотра;
- В режиме читателя (Reader Mode) реализовано отображение приблизительного времени чтения страницы;
- Изменён метод отображения обрезанной части заголовка страницы на вкладках — вместо многоточия реализован эффект смазывания (затухания) последних букв;
- Обновлены элементы интерфейса для управления воспроизведением мультимедийного содержимого;
- Добавлена поддержка канала прозрачности для видео в формате WebM, что позволяет организовать воспроизведение с просвечивающим фоном;
- Для очень больших меню, включающих более 40 элементов, реализована функция inline-поиска элементов меню;
- В дополнениях запрещена загрузка бинарных компонентов и разделяемых библиотек непосредственно в процесс Firefox. Разработчикам дополнений, в которых используется нативный код, рекомендуется перейти на технологии WebExtensions и API Native Messaging, который подразумевает запуск связанного с дополнением исполняемого файла в отдельном процессе и организацию канала связи с ним. Начиная с Firefox 53 все дополнения, использующие JS-ctypes или напрямую загружающие бинарные данные в процесс будут занесены в чёрный список;
- По умолчанию включен интерфейс для навигации по структурированным данным в формате JSON. В интерфейсе предоставлена возможность раскрытия блоков в соответствии с заданным фильтром и сохранения или копирования выделенных областей. В состав кодовой базы просмотрщик JSON добавлен ещё в Firefox 44, но до сих пор был отключен по умолчанию (devtools.jsonview.enabled в about: config);
- Продолжено усовершенствование API WebExtensions для разработки дополнений, совместимых с браузером Chrome. В новой версии реализована большая часть API browser.browsingData, которое позволяет удалять из Firefox накопленные в процессе навигации данные, такие как данные форм, cookie, пароли, загрузки, содержимое кэша, история посещений. Частично реализован API browser.identity, предоставляющий средства для аутентификации с использованием OAuth. Добавлен новый API browser.contextualIdentities с реализацией системы контейнеров для изоляции параметров идентификации (например, в разных вкладках можно использовать разные учётные записи к одному сайту). Успешно прошёл тестирование и включён по умолчанию API browser.storage.sync. Началась реализация API browser.devtools. Существенно расширены возможности по созданию контекстных меню.
- Добавлена система детализированного подтверждения полномочий, которые требуют дополнения на базе WebExtensions. Перед установкой дополнения, или в случае изменений списка полномочий при доставке обновлений, пользователь должен подтвердить предоставление дополнению расширенных прав, таких как доступ к пользовательским данным или содержимому вкладок;
- В сборках для платформы Linux прекращена поддержка процессоров x86, не поддерживающих инструкции SSE2 (процессоры старее Pentium 4 и AMD Opteron, в том числе Pentium 3, Athlon XP и VIA C3);
- Прекращена поддержка платформ Windows XP и Vista, а также 32-разрядных версий macOS. Последним LTS-выпуском для данных систем является Firefox 52, который будет поддерживаться до апреля 2018 года;
- Уменьшен размер обновлений к сборкам для macOS;
- Добавлен API Intersection Observer, позволяющий увеличить производительность сайта за счёт применения техники отложенной загрузки контента и значительного снижения накладных расходов при проверке видимости контента;
- На платформе Windows возобновлена поддержка событий сенсорного экрана.
- На 64-разрядных системах Windows 7+ теперь по умолчанию устанавливаются 64-разрядные сборки Firefox;
- Прекращена поддержка 32-разрядных версий Mac OS X. Для платформы macOS теперь формируются только 64-разрядные сборки Firefox, создание универсальных сборок прекращено;
- После выхода Firefox 53 в апреле 2017 года в каталоге дополнений Mozilla планируют прекратить генерацию цифровых подписей для новых классических дополнений, написанных с использованием XUL, SDK и XPCOM. Приниматься будут только дополнения на базе WebExtensions. Ограничение касается только новых дополнений для настольных сборок Firefox, обновления к ранее добавленным дополнениям смогут быть подписаны, как и дополнения к Firefox для Android, Thunderbird и Seamonkey.
- В версии для платформы Android предоставлена возможность включения размещения вкладок в две колонки, при работе в портретном режиме. При удержании нажатия на предложенный вариант поискового запроса (search suggestion), данный запрос будет удалён из истории посещений. Код для декодирования звука и видео выделен в отдельный процесс, что положительно скажется на стабильности воспроизведения. Пользователю предоставлена возможность размещения на домашний экран Android ярлыков со ссылками на сайты c предопределёнными пиктограммами.
Улучшения, ожидаемые в Firefox 54:
- Активирована sandbox-изоляция, ограничивающая доступ дочерних процессов Firefox к системным вызовам, файловой системе и сторонним процессам. Для изоляции в Linux применяется ограничение доступа к системным вызовам при помощи Seccomp-bpf, также для изоляции используются PID namespace и chroot в пустую директорию. В Windows применяются разработанные Google библиотеки sandboxbroker и sandboxtarget, используемые в Chromium и Chrome;
- Запрещено автоматическое воспроизведение мультимедийного контента в новых вкладках, открытых в фоне;
- В редакции для настольных систем в окне «Библиотека» обеспечено отображение закладок, созданных на синхронизированных мобильных устройствах;
- В средствах для web-разработчика в режиме адаптивного дизайна («Responsive Design Mode») появилась возможность создания собственных устройств для тестирования сайта в его окружении (задаётся разрешение экрана, DPI, параметры сенсорного экрана, пропускная способность сети и т.п.);
- Добавлена поддержка конструкции ‹script type=«module»› для определения содержимого модульных скриптов, тестируемых вместе с флагом «dom.moduleScripts.enabled» в настройках;
- Добавлен метод URL.toJSON (), возвращающий определённый в «href» URL в виде конструкции JSON ('{«key»: «https://www…»}');
- Добавлено событиеonanimationcancel, которое генерируется при остановке воспроизведения анимации, заданной через CSS Animation;
- В версии для Android включена по умолчанию поддержка объекта Intl, предоставляющего доступ к API интернационализации (сравнение строк, форматирование чисел, времени и дат с учётом локали);
© OpenNet