Firefox 50 перешёл на стадию бета-тестирования, что ознаменовало прекращение формирования базовой функциональности и сосредоточение всего внимания на выявлении ошибок и контроле качества. Одновременно сформирован выпуск Firefox Developer Edition 51, который заменил собой aurora-ветку, в рамках которой проводится оценка готовности тех или иных новшеств для последующего бета-выпуска. Загрузить бета-выпуск можно на данной странице, а Firefox Developer Edition здесь. Релиз Firefox 50 намечен на 8 ноября, а Firefox 51 на 24 января.

Улучшения, представленные в бета-версии Firefox 50:

  • Поддержка горячего отображения результатов поиска на странице. Если сейчас поиск по Ctrl+F требует перехода от элемента к элементу, то в новой реализации все совпадения сразу подсвечиваются на странице по мере набора. Для управления поведением поиска в about:config добавлены настройки findbar.modalHighlight и findbar.highlightAll;
  • В системе поиска на странице добавлен режим поиска с совпадением только слов целиком;
  • Добавлена настройка, позволяющая использовать клавиатурную комбинацию Ctrl+Tab для цикличного обхода вкладок в порядке обращения к ним;
  • В режим читателя (Reader Mode) добавлена возможность вывода на печать. Для быстрого перехода в режим читателя добавлена горячая клавиша Alt+r;
  • В браузер встроен набор пиктограмм Emoji, который не требует наличия в системе специальных шрифтов и может применяться в Linux;
  • Многопроцессный режим будет включен для систем с проверенными дополнениями, а позднее активирован для систем с любыми дополнениями;
  • В состав войдут наработки инициативы по переносу из Tor Browser некоторых возможностей, которые позволяют усилить защиту персональной информации и блокировать возможности, способствующие идентификации пользователя по косвенным признакам. В частности, будут добавлены средства для блокирования перебора плагинов и mime-типов, отключения вывода данных о параметрах экрана через API screen.orientation, удаления опции "open with" из диалога загрузки файлов. Для активации предложенных ограничений следует изменить значение параметров "privacy.resistFingerprinting" и "browser.download.forbid_open_with" в about:config;
  • В список доверительных корневых сертификатов добавлен сертификат контролируемого сообществом удостоверяющего центра Let’s Encrypt;
  • Продолжено усовершенствование API WebExtensions для разработки дополнений, совместимых с браузером Chrome. Из новых программных интерфейсов отмечается расширение API для работы с историей посещений, в webNavigation API добавлен фильтр событий, реализованы полноценные средства для отладки дополнений через интерфейс about:debugging;
  • Для обеспечения совместимости с завязанными на WebKit мобильными приложениями для тега input добавлена поддержка атрибута webkitdirectory и свойства HTMLInputElement.webkitDirectory, через которые можно установить флаг, разрешающий выбирать только директории;
  • Прекращена поддержка нестандартных псевдоклассов ":-moz-full-screen-ancestor" и CSS-свойства "box-sizing: padding-box". Снят префикс "-moz-" с псевдокласса "https://developer.mozilla.org/en-US/docs/Web/CSS/:any-link :any-link";
  • Реализовано JavaScript-свойство Symbol.hasInstance, определённое в спецификации ES2015;
  • Реализован JavaScript-метод Object.getOwnPropertyDescriptors(), определённый в спецификации ES2017;
  • Добавлено расширение WebGL EXT_shader_texture_lod;
  • В консоли для web-разработчиков появилась поддержка формата Source Map, позволяющего сопоставить объединённый в один файл JavaScript-код c оригинальными файлами, из которых он был сформирован. Source Map в web-консоли пока отключен по умолчанию (включается через devtools.sourcemap.locations.enabled в about:config), но при включении каждое сообщение дополнительно снабжается ссылкой на файл-источник и строку кода;
  • В web-консоли включено отображение стека трассировки сетевых запросов;
  • Включён по умолчанию инструмент инспектирования потребления памяти, позволяющий создавать слепки распределения памяти в разные моменты работы web-приложения. Инструмент удобен для поиска и исправления утечек памяти;
  • В инструмент для мониторинга сетевой активности добавлен столбец "Cause", в котором приводится информация о том, как сетевой запрос был инициирован, его типе и трассировке стека предшествующих ему операций;
  • Обновлён интерфейс для просмотра данных в формате JSON (JSON Viewer). Пустые массивы теперь показываются как "[]" вместо "[0]" по аналогии с пустыми объектами ("{}"), для свойств объектов добавлено отображение разделителей столбцов;
  • В интерфейсе инспектирования хранилища (Storage Inspector) добавлена возможность удаления элементов indexedDB из контекстного меню;
  • На странице about:debugging#workers, предоставляющей средства управления зарегистрированными Service Workers, добавлено отображение подписок на push-уведомления и возможность отправки тестовых уведомлений;
  • Обновлены пиктограммы в средствах для разработчиков;

    Было:

    Стало:

  • При отладке кода WebAssembly появилась подсветка синтаксиса;
  • В выпуске для платформы Android выполнено перемещение недавно закрытых вкладок в панель работы с историей посещений и добавлена возможность отображения потокового видео в формате HLS (HTTP Live Streaming);




Улучшения, ожидаемые в Firefox 51:

  • Добавлена встроенная поддержка звукового кодека FLAC (Free Lossless Audio Codec), развиваемого сообществом Xiph.Org и обеспечивающего уровень сжатия звукового потока в 50-60% без потери качества (lossless). FLAC поддерживается в контейнерах FLAC и Ogg;
  • Изменено оформление диалога сохранения паролей, добавлен флаг для показа пароля перед его сохранением;
  • В адресной строке, рядом с URL, обеспечен показ уровня масштабирования, если он отличается от заданного по умолчанию. При клике на индикатор, масштаб сбрасывается в значение по умолчанию;
  • Сокращена нагрузка на CPU при отображении видео и улучшено качество полноэкранного вывода на системах без поддержки ускорения средствами GPU;
  • Добавлена поддержка сохранения паролей для форм без событий отправки (submit);
  • Включение по умолчанию многопроцессного режима расширено на средства для людей с ограниченными возможностями, а также на системы Windows 10 с сенсорными экранами;
  • Если не возникнет непредвиденных проблем в релизе планируется включить по умолчанию API WebExtensions, предназначенный для разработки дополнений, совместимых с браузером Chrome. Для выполнения дополнений WebExtensions используется отдельный дочерний процесс, изолирующий дополнения от остальных частей браузера. Различия между API Chrome и WebExtensions можно отследить на данной странице. Время прекращения поддержки XUL пока не определено, поэтому XUL пока будет сосуществовать с WebExtensions;
  • Реализовано JavaScript-свойство Symbol.toStringTag, определённое в спецификации ES2015;
  • Выражения const и let приведены к полному соответствию со спецификацией ES2015;
  • Прекращено урезание интенсивности генерации событий таймеров Window.setInterval() и Window.setTimeout() для вкладок, в которых задействован Web Audio API AudioContext, даже если во вкладке в данный момент не воспроизводится звук. Подобное изменение позволит решить проблемы с работающими в фоне музыкальными web-плеерами;
  • На платформах Linux и Android для отображения контента задействована графическая библиотека Skia.

Дополнительно можно отметить выход обновления Firefox 49.0.1, в котором добавлено предупреждение о наличии специфичной для платформы Windows проблемы, связанной с невозможностью запуска браузера при наличии в системе проприетарного межсетевого экрана Websense. Проблему планируется решить в выпуске 49.0.2, в 49.0.1 лишь добавлено уведомление о возможных путях обхода проблемы, таких как откат на версию Firefox 48.

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