Реліз Firefox 88

Відбувся реліз web-браузера Firefox 88. Крім того, сформовано оновлення гілки із тривалим терміном підтримки 78.10.0. На стадію бета-тестування найближчим часом буде переведено гілку Firefox 89, реліз якої заплановано на 1 червня.

Основні нововведення:

  • У браузері PDF додана підтримка інтегрованих у PDF-файли форм введення, в яких для забезпечення інтерактивної взаємодії з користувачем використовується JavaScript.
  • Введено обмеження на інтенсивність показу запиту повноважень для доступу до мікрофона та камери. Подібні запити не будуть відображатися, якщо протягом останніх 50 секунд користувач вже надавав доступ до того ж пристрою, для того ж сайту та тієї ж вкладки.
  • Виклик інструмента для створення скріншотів видалено з меню «Page Actions», що відображається при натисканні на крапку в адресному рядку. Для створення скріншотів рекомендується викликати відповідний інструмент для контекстного меню, що показується при натисканні правою кнопкою миші або розмістити ярлик на панелі через інтерфейс налаштування зовнішнього вигляду.
    Реліз Firefox 88
  • Додана підтримка масштабування щипком на тачпадах у Linux із графічними оточеннями на базі протоколу Wayland.
  • У системі виведення на друк виконано локалізація одиниць вимірювання, що використовуються для завдання полів.
  • При запуску Firefox в оточеннях Xfce та KDE активовано використання движка композитингу WebRender. У Firеfox 89 очікується включення WebRender для решти користувачів Linux, включаючи всі версії Mesa і системи з драйверами NVIDIA (раніше webRender був включений тільки для GNOME за наявності драйверів Intel і AMD). WebRender написаний мовою Rust і дозволяє домогтися істотного збільшення швидкості малювання та зниження навантаження на CPU за рахунок винесення на бік GPU операцій відображення вмісту сторінки, які реалізовані через шейдери, що виконуються в GPU. Для примусового включення до about:config слід активувати налаштування «gfx.webrender.enabled» або запустити Firefox з виставленої змінної оточення MOZ_WEBRENDER=1.
  • Почалося поетапне включення протоколів HTTP/3 та QUIC. Спочатку підтримка HTTP/3 буде активована лише для невеликого відсотка користувачів і, якщо не виникне непередбачених проблем, буде доведена до кінця травня. Для використання HTTP/3 потрібна підтримка на стороні клієнта та сервера однієї версії чорнового стандарту QUIC і HTTP/3, яка вказується в заголовку Alt-Svc (Firefox підтримує чернетки специфікації з 27 по 32).
  • За промовчанням вимкнено підтримку протоколу FTP. Налаштування network.ftp.enabled за замовчуванням встановлено на false, а параметр для розширень browserSettings.ftpProtocolEnabled переведений у режим тільки для читання. У наступному випуску буде видалено весь код, пов'язаний із FTP. Як причина називається зниження ризиків атак на старий, що має історію виявлення вразливостей і має проблеми із супроводом код з реалізацією підтримки FTP. Також згадується звільнення від протоколів, що не підтримують шифрування, які незахищені від модифікації та перехоплення транзитного трафіку під час здійснення MITM-атак.
  • Для блокування можливих міжсайтових витоків забезпечено ізоляцію значення властивості «window.name» первинним сайтом, з якого відкрито сторінку.
  • JavaScript для результату виконання регулярних виразів додано властивість «indices», яка містить масив з початковими і кінцевими позиціями груп збігів. Властивість заповнюється лише під час регулярного виразу з прапором «/d». let re = / quick \ s (brown). +? (Jumps) / igd; let result = re.exec('The Quick Brown Fox Jumps Over The Lazy Dog'); // result.indices[0] === Array [ 4, 25 ] // result.indices[1] === Array [ 10, 15 ] // result.indices[2] === Array [ 20, 25 ]
  • В Intl.DisplayNames() і Intl.ListFormat() посилено перевірка того, що опції, що передаються в конструктор, є об'єктами. При спробі передачі рядків або інших примітивів генеруватиметься виняток.
  • Для DOM надано новий статичний метод AbortSignal.abort(), що повертає AbortSignal, для якого вже виставлено параметр aborted.
  • У CSS реалізовані нові псевдо-класи «user-valid» і «:user-invalid», що визначають стан перевірки елемента форми, для якого після взаємодії користувача з формою була виконана перевірка коректності зазначених значень. Ключовою відмінністю ":user-valid" і ":user-invalid" від псевдо-класів ":valid" і ":invalid" є те, що перевірка починається тільки після того, як користувач перейшов на інший елемент (наприклад, переключився на табуляцію на інше поле).
  • CSS-функція image-set(), що дозволяє вибрати зображення з набору варіантів з різною роздільною здатністю, що найбільше підходить для поточних параметрів екрану і пропускної спроможності мережного підключення, тепер може використовуватися в CSS-властивості «content» і «cursor». h2::before { content: image-set( url("small-icon.jpg") 1x, url("large-icon.jpg") 2x); }
  • У CSS-властивості outline забезпечено відповідність контуру, встановленим за допомогою властивості border-radius.
  • Для macOS моноширинний шрифт за замовчуванням змінено на Menlo.
  • У інструментах для веб-розробників у панелі інспектування мережі з'явився перемикач між показом HTTP-відповідей у ​​форматі JSON та у незмінному вигляді, в якому відповіді передані по мережі.
    Реліз Firefox 88
  • Увімкнення за промовчанням формату зображень AVIF (AV1 Image Format), в якому задіяні технології внутрішньокадрового стиснення з формату кодування відео AV1, відкладено до наступного випуску. У версії Firefox 89 також планується запропонувати оновлений інтерфейс користувача та інтегрувати в адресний рядок калькулятор (включається через suggest.calculator до about:config)

Окрім нововведень та виправлення помилок у Firefox 88 усунуто 17 уразливостей, з яких 9 позначені як небезпечні. 5 вразливостей (зібрані під CVE-2021-29947) викликані проблемами роботи з пам'яттю, такими як переповнення буферів та звернення до звільнених областей пам'яті. Потенційно дані проблеми можуть призвести до виконання коду зловмисника при відкритті спеціально оформлених сторінок.

Джерело: opennet.ru

Додати коментар або відгук