Версия на Firefox 88

Беше пуснат уеб браузърът Firefox 88. В допълнение беше създадена актуализация на клона за дългосрочна поддръжка 78.10.0. Клонът на Firefox 89 скоро ще бъде прехвърлен на етапа на бета тестване, чието пускане е насрочено за 1 юни.

Основни иновации:

  • PDF Viewer вече поддържа PDF интегрирани формуляри за въвеждане, които използват JavaScript, за да предоставят интерактивно потребителско изживяване.
  • Въведено е ограничение за интензивността на показване на заявки за разрешения за достъп до микрофона и камерата. Такива заявки няма да се показват, ако потребителят вече е предоставил достъп до същото устройство, за същия сайт и за същия раздел в рамките на последните 50 секунди.
  • Инструментът за екранни снимки е премахнат от менюто за действия на страницата, което се появява, когато щракнете върху елипсите в адресната лента. За да създадете екранни снимки, се препоръчва да извикате подходящия инструмент за контекстното меню, което се показва, когато щракнете с десния бутон или поставите пряк път в панела през интерфейса за настройки на външния вид.
    Версия на Firefox 88
  • Добавена е поддръжка за мащабиране с щипка на тъчпадове в Linux с графични среди, базирани на протокола Wayland.
  • Системата за печат е локализирала мерните единици, използвани за задаване на полета.
  • При стартиране на Firefox в средите Xfce и KDE се активира използването на машината за композиране WebRender. Очаква се Firefox 89 да активира WebRender за всички други потребители на Linux, включително всички версии на Mesa и системи с NVIDIA драйвери (преди това webRender беше активиран само за GNOME с Intel и AMD драйвери). WebRender е написан на езика Rust и ви позволява да постигнете значително увеличение на скоростта на изобразяване и да намалите натоварването на процесора чрез преместване на операциите за изобразяване на съдържанието на страницата към страната на 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 за резултата от изпълнението на регулярни изрази е добавено свойството “indexes”, което съдържа масив с начална и крайна позиция на групи от съвпадения. Свойството се попълва само при изпълнение на регулярния израз с флага "/d". нека re = /бързо\s(кафяво).+?(скокове)/igd; let result = re.exec('Бързата кафява лисица прескача мързеливото куче'); // result.indices[0] === Масив [ 4, 25 ] // result.indices[1] === Масив [ 10, 15 ] // result.indices[2] === Масив [ 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 „съдържание“ и „курсор“ . 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

Добавяне на нов коментар