Увидел свет Firefox 58. Это первое значимое обновление браузера от Mozilla после того, как прошлой осенью был выпущен огромный апдейт Quantum, который пришёлся на 57-ю версию веб-обозревателя.
В отличие него, в Firefox 58 нового, на первый взгляд, особо и нет. По крайней мере, интерфейс Photon, дебютировавший как раз вместе с Quantum, остался в этом выпуске без видимых изменений. Однако в версии 58 определённо есть кое-что интересное и об этом пойдёт речь далее.
Производительность
Quantum – это многогранный проект по усовершенствованию и переосмыслению основных подсистем Firefox, для серьёзного усиления его производительности. Некоторые отдельные наработки Quantum Mozilla начала интегрировать в браузер ещё в первой половине прошлого года.
Позже существенная часть изменений пришлась на версию 57, что вышла осенью. Пользователи и обозреватели в своих отзывах тогда отмечали, что Firefox, его скорость и отзывчивость интерфейса, буквально получили второе дыхание. Впрочем, работа по наращиванию производительности «огненного лиса» продолжается: с Firefox 58 стартует её следующий этап.
Теперь ещё больше процессов, связанных с отображением веб-страниц теперь будут работать параллельно. В прошлом году Mozilla впервые вынесла одну из процедур в отдельных поток:
С выходом версии 58, по крайней мере в Windows, дополнительных потоков станет уже два:
Распараллеливание нелегко даётся программистам Mozilla, так как основа браузера изначально для этого была не приспособлена. Однако разработчики постепенно всё же продвигаются, что даёт весомые плоды. Благодаря описанному выше усовершенствованию, Firefox 58 получил солидную прибавку производительности в веб-приложениях и онлайн играх с 3D графикой:
Другое важное отличие кроется в новом подходе к кэшированию JavaScript. Вообще по этому, как и предыдущему изменению есть детальное описание в блогах Mozilla, где представители компании раскрывают все основные моменты, попутно знакомя желающих с базовой теоретической частью того или иного механизма.
Для простого же пользователя важно следующее: данное нововведение позволит загружать часто посещаемые вами сайты чуть быстрее. К часто посещаемым браузер отнесёт всё, куда вы заходили не менее четырёх раз.
Дальше для таких сайтов и начинает работать новый механизм. Результаты разные. Например, странички Google или Twitter будут загружаться всего примерно на 5% быстрее. Однако для некоторых ресурсов прирост составит чуть больше. Например, 7,8% для Википедии и около 12% для страничек Facebook.
В будущих выпусках разработчики намерены расширить действие новой системы кэширования дополнительно и на итоговый машинный код, так что впереди будет ещё одно подобное ускорение.
Также в Firefox 58 дебютировал новый двухуровневый компилятор, который управляется с кодом WebAssembly в 10-15 быстрее. В итоге использующие этот код веб-приложения и игры должны получить очень серьёзное ускорение.
Наконец, существенно ускорено отображение контента (ячейки сайтов, история посещений и прочее) на переделанной странице новой вкладки, что появилась в версии 57. Вот небольшое сравнительное видео от энтузиастов:
Другие внутренние изменения
Внутренние оптимизация в Firefox 58 коснулись не только производительности. В новую версию добавлен специальных механизм, который способен при некоторых условиях снижать активность фоновых вкладок (то есть тех, что открыты, но не просматриваются в данный момент). Это позволит сократить нагрузку на центральный процессор и уменьшить потребление памяти.
Ряд важных правок внесён в систему безопасности. Пользователи теперь будут лучше защищены от фишинга и конкретно от подделки веб-адресов в адресной строке браузера. Вдобавок в Firefox добавлен дополнительный механизм защиты от отслеживания, позаимствованный из приватного веб-обозревателя Tor (он, в свою очередь, создаётся на базе Firefox).
Нередки случаи, когда сайт злоумышленников не позволяет пользователю закрыть вкладку с ним с помощью многократного показа специального диалога. Теперь Firefox должен распознавать и пресекать такое поведение со стороны веб-ресурса.
Наконец, Mozilla предоставила чуть больше возможностей создателям новых расширений для Firefox и, очевидно, продолжит делать это в будущих версиях, так как до функциональности XUL-модулей, окончательный отказ от которых состоялся в версии 57, нынешним WebExtensions, к сожалению, ещё далеко.
Изменения в интерфейсе, настройках, разное
По сравнению с выпуском 57, который принёс новый интерфейс Photon и много мелких изменений, нынешний выпуск в плане видимых глазу изменений довольно скромен.
Прежде всего, отметим инструмент для создания скриншотов. Он теперь работоспособен и в приватном режиме, а вдобавок получил новую кнопку, позволяющую копировать выделенное сразу в буфер обмена. То есть нужный фрагмент сразу отправляется в память и вам не нужно его отдельно сохранять в облако или к себе на диск:
Возможность отключать ненужные пользователю разделы страницы новой вкладки была ещё в Firefox 57, но теперь разделы можно ещё и сворачивать, для чего предназначены новые стрелочки рядом с их названиями:
Например, можно свернуть раздел «топ сайтов»:
В случае, если указанную выше страницу новой вкладки подменило расширение и вовсю там хозяйничает, то вам на всякий случай сообщат об этом в настройках. Вдруг, это могло произойти без вашего ведома, что особо актуального для неопытных юзеров. Там же присутствует кнопка, позволяющая сразу же и отключить это расширение:
В настройках сайтов появился новый пункт, позволяющий разрешить или запретить веб-ресурсам переназначать ваши горячие клавиши:
Ещё пара небольших изменений произошли на служебной странице about:support. Рядом с кнопкой для перехода в папку текущего профиля Firefox тут отныне указывается и его адрес:
Кроме того, внизу этой странички появился раздел про локализацию:
Ну и совсем небольшое изменение: удерживая клавишу Shift с помощью колёсика мыши теперь можно прокручивать страницу по горизонтали. Раньше аналогичное действие перемещало вас на страницу вперёд или назад, но в Mozilla посчитали, что вариант с прокруткой будет более востребован.
Что дальше?
Согласно официальному расписанию разработчиков, следующее обновление – Firefox 59 увидит свет 13 марта следующего года.
Также Mozilla решила нарушить свою традицию по приданию статуса ESR каждому седьмому выпуску программы. После Firefox 52 следующим релизом с расширенным сроком поддержки должен был стать как раз Firefox 59, однако вместо него новым ESR-выпуском окажется юбилейный Firefox 60.
Что касается грядущих изменений, то подробно о них пока ещё говорить рано, но если коротко, то в будущих выпусках мы увидим следующую порцию серьёзных оптимизаций производительности:
- Ускорение загрузки часто посещаемых страниц за счёт расширения новой системы кэширования JavaScript;
- Ускорение отображения веб-страниц благодаря новому Quantum WebRender;
- Упреждающая отрисовка вкладок (когда пользователь навёл курсор на таб, но ещё не кликнул по нему, браузер заранее выполнит часть действий чтобы в случае клика отобразить содержимое вкладки быстрее);
- Следующая группа улучшений в рамках проектов Quantum DOM и Quantum Flow.
Уже известны и некоторые планы по интерфейсу. В отличие от описанных выше пунктов, с ними тянуть не должны и скорее всего добавят уже в Firefox 59:
- Возможность перемещать ячейки на странице новой вкладки;
- Настройка содержимого пустых ячеек на странице новой вкладки (сейчас можно регулировать лишь те ячейки, в которые браузер уже добавил какую-то страничку);
- Новая опция для запрета всем сайтам задавать вопрос с просьбой разрешить показ уведомлений, а также получить доступ к веб-камере или геолокации;
- Возможность изменить расположение поисковых подсказок в выпадающем списке адресной строки.
Игорь Андреев – автор статей для ITRew.ru и Our-Firefox.ru. Увлечен современными технологиями, рассказываю о них в своих текстах)
Страница автора — twitter.com