Firefox 51 перешёл на стадию бета-тестирования, что ознаменовало прекращение формирования базовой функциональности и сосредоточение всего внимания на выявлении ошибок и контроле качества. Кроме того сформирован выпуск Firefox Developer Edition 52, который заменил собой aurora-ветку, в рамках которой проводится оценка готовности тех или иных новшеств для последующего бета-выпуска. Загрузить бета-выпуск можно на данной странице, а Firefox Developer Edition здесь. Релиз Firefox 51 намечен на 24 января, а Firefox 52 на 7 марта.
Изменения, представленные в бета-версии Firefox 51:
- Добавлена встроенная поддержка звукового кодека FLAC (Free Lossless Audio Codec), развиваемого сообществом Xiph.Org и обеспечивающего уровень сжатия звукового потока в 50-60% без потери качества (lossless). FLAC поддерживается в контейнерах FLAC и Ogg;
- Изменено оформление диалога сохранения паролей, добавлен флаг для показа пароля перед его сохранением;
- В адресной строке, рядом с URL, обеспечен показ уровня масштабирования, если он отличается от заданного по умолчанию. При клике на индикатор, масштаб сбрасывается в значение по умолчанию;
- Сокращена нагрузка на CPU при отображении видео и улучшено качество полноэкранного вывода на системах без поддержки ускорения средствами GPU;
- Добавлена поддержка сохранения паролей для форм без событий отправки (submit);
- Включение по умолчанию многопроцессного режима расширено на средства для людей с ограниченными возможностями, а также на системы Windows 10 с сенсорными экранами;
- Добавлена поддержка спецификации WebGL 2, которая определяет способ формирования аппаратно ускоренного 3D-контента при помощи HTML5-конструкций "Canvas" и JavaScript-интерфейса к OpenGL API. WebGL дает возможность web-разработчикам получить прямой доступ к функциям OpenGL и обеспечить включение 3D-контента в HTML-страницы;
- Если не возникнет непредвиденных проблем в релизе, планируется включить по умолчанию API WebExtensions, предназначенный для разработки дополнений, совместимых с браузером Chrome. Дополнение могут выполняться в отдельных дочерних процессах, изолирующих их от остальных частей браузера. Добавлена возможность встраивания WebExtension в состав классических дополнений. Реализован API для доступа к буферу обмена. Различия между API Chrome и WebExtensions можно отследить на данной странице. Время прекращения поддержки XUL пока не определено, поэтому XUL пока будет сосуществовать с WebExtensions.
- Реализовано JavaScript-свойство Symbol.toStringTag, а также методы TypedArray.prototype.toString() и TypedArray.prototype.toLocaleString(), определённые в спецификации ES2015;
- Выражения const и let приведены к полному соответствию со спецификацией ES2015;
- Началась постепенная выборочная блокировка сертификатов, заверенных с использованием алгоритма хэширования SHA-1. Для небольшого процента пользователей при обращении к сайтам, использующим сертификаты с SHA-1, будет выводиться ошибка и соединение будет помечаться незащищённым. Если не возникнет непредвиденных проблем, в дальнейшем блокировка SHA-1 будет расширена на всех пользователей браузера. Как и в случае с самоподписанными сертификатами, ошибку можно обойти через специальный диалог. Поддержка SHA-1 для вручную импортированных сертификатов пока сохранена;
- Прекращено урезание интенсивности генерации событий таймеров Window.setInterval() и Window.setTimeout() для вкладок, в которых задействован Web Audio API AudioContext, даже если во вкладке в данный момент не воспроизводится звук. Подобное изменение позволит решить проблемы с работающими в фоне музыкальными web-плеерами;
- Доведена до конца реализация второй версии API IndexedDB: добавлены методы IDBObjectStore.getKey() и IDBCursor.continuePrimaryKey(), обеспечена поддержка бинарных ключей;
- Тег "hr" теперь может использоваться в качестве разделителя элементов в блоке "menu";
- В WebRTC включена по умолчанию поддержка видеокодека VP9;
- Внедрена блокировка загрузки и выполнения скриптов, отдаваемых сервером под MIME-типами image/*, video/*, audio/* или text/csv;
- Прекращена поддержка нестандартных API Simple Push и Alarm, созданных для Friefox OS;
- Прекращена поддержка локали для белорусского языка. Из-за отсутствия сопровождающего данная локаль не обновлялась уже почти два года, а попытки найти заинтересованных лиц, готовых возобновить поддержку данной локали, не увенчались успехом;
- На платформах Linux и Android для отображения контента задействована графическая библиотека Skia.