Wydanie Firefox 122

Zrealizowano wydanie przeglądarki internetowej Firefox 122 i utworzono aktualizację gałęzi z długoterminowym wsparciem — 115.7.0. Gałąź Firefox 123 przeszła do fazy beta-testów, a jej wydanie planowane jest na 20 lutego.

Główne nowości w Firefox 122:

  • Rozszerzono możliwości związane z wyświetlaniem rekomendacji podczas wprowadzania w pasku adresu. Dla niektórych wyszukiwarek wprowadzono możliwość pokazywania w rekomendacjach obrazów oraz opisów tekstowych. Podczas poszukiwania informacji związanych z web developmentem, zapewniono wyświetlanie w rekomendacjach linków do dokumentacji w MDN (Mozilla Developer Network).
    Wydanie Firefox 122
  • Rozpoczęto tworzenie gotowych paczek deb dla Ubuntu, Debiana i Linux Mint. Tworzone pakiety są kompatybilne z tradycyjnymi wersjami Firefox dla Debiana i Ubuntu, oferowanymi do pobrania w archiwach „.tar.bz2”. Podczas tworzenia pakietów w kompilatorze włączono dodatkowe optymalizacje oraz flagi wzmocnienia bezpieczeństwa. Do zestawu dołączono plik .desktop do utworzenia skrótu na pulpicie i w menu dystrybucji. Instrukcja instalacji Firefox z repozytorium APT Mozilla.
  • Poprawiono jakość tłumaczenia stron za pomocą wbudowanego systemu tłumaczenia maszynowego. Rozwiązano problemy z znikaniem przetłumaczonej strony oraz zakłóceniem działania interaktywnych widżetów.
  • Aby zwiększyć zabezpieczenia przed atakami XSS i poprawić przenośność między przeglądarkami w SVGUseElement, zakończono wsparcie dla URL „data:”.
  • Dodano zabezpieczenie przed wyciekiem informacji o wcześniej odwiedzonych linkach poprzez analizę koloru pikseli za pomocą filtrów wykorzystujących parametr currentColor. Wyjście takich filtrów nie będzie możliwe do odczytania z canvas w SVG, ponieważ mogą być one używane do określania koloru wyświetlanego przez selektor „:visited”.
  • W wersjach dla macOS dodano wsparcie dla technologii Passkey (użycie tylko w iCloud Keychain), która pozwala użytkownikowi na przeprowadzanie uwierzytelnienia bez haseł przy użyciu biometrycznych identyfikatorów, takich jak odcisk palca lub rozpoznawanie twarzy.
  • Zabepieczono przetwarzanie tokena autouzupełnienia „webauthn”. W dialogach autouzupełniania formularzy wprowadzono interfejs do podłączenia za pomocą Passkey.
  • W trybie prywatnego przeglądania skrypty otrzymują możliwość zapisywania danych za pomocą API Cache w celu ujednolicenia zachowań w trybie prywatnym i zwykłym (istniejąca różnica mogła być używana do określenia działania użytkownika w trybie prywatnym).
  • W WebRTC domyślnie włączono wsparcie dla mechanizmu wczesnej korekcji błędów ULPFEC (Uneven Level Protection Forward Error Correction), który pozwala na odzyskiwanie uszkodzonych lub utraconych pakietów. Zastosowanie ULPFEC umożliwia poprawę jakości wideo dla użytkowników z niestabilnymi łączami.
  • Dozwolone jest użycie elementu <hr> wewnątrz elementu <select> do wstawiania separatorów w listach tworzonych na podstawie elementu <select>.
  • Dodano możliwość użycia metody showPicker z elementami do programowego wezwania dostarczonej przez przeglądarkę implementacji menu rozwijanego.
  • Zasady łamania linii przy wyświetlaniu tekstu na stronach internetowych zostały dostosowane do standardu Unicode. Dla języków azjatyckich, takich jak japoński i chiński, zrealizowano wsparcie dla zaznaczania całych słów podwójnym kliknięciem myszy.
  • Wprowadzono właściwość CSS offset-position, która określa początkową pozycję elementu i zwykle jest używana razem z właściwością offset-path do definiowania trajektorii ruchu obiektów animacji.
  • Właściwość CSS offset-path zyskała wsparcie dla funkcji ray(), która definiuje segment linii, po którym podąża animowany element, oraz wartości basic-shape i coord-box.
  • Dodano wsparcie dla funkcji rect() i xywh() w właściwościach CSS clip-path i offset-path do tworzenia podstawowych kształtów.
  • Dodano wsparcie dla animowania atrybutu SVG viewBox, przy użyciu języka SMIL (Synchronized Multimedia Integration Language), zaprojektowanego do animacji elementów SVG.
  • Parser URL, wywoływany dla linków z nieznaną schemą, został zmieniony na DefaultURI zgodnie z wymogiem specyfikacji.
  • Włączono wsparcie dla metod ArrayBuffer.prototype.transfer() i ArrayBuffer.prototype.transferToFixedLength() do przekazywania praw własności pamięci z jednego ArrayBuffer do drugiego. Po przekazaniu bufor zostaje odłączony od pierwotnego obszaru pamięci i staje się nieprzydatny do użycia. Stan bufora można sprawdzić za pomocą właściwości ArrayBuffer.prototype.detached.
  • Zrealizowano API LargestContentfulPaint, które dostarcza informacji o czasie renderowania największego obrazu lub tekstu na etapie przed rozpoczęciem interakcji użytkownika ze stroną.
  • Dodano wsparcie dla API Screen Wake Lock, pozwalającego aplikacji webowej, na przykład odtwarzaczowi multimedialnemu, zablokować wywoływanie wygaszacza ekranu po długim okresie braku aktywności użytkownika.
  • Dodano eksperymentalne wsparcie dla API:
    • API Deklaratywnego Shadow DOM (włączane przez dom.webcomponents.shadowdom.declarative.enabled w about:config) do tworzenia nowych gałęzi korzeniowych w Shadow DOM, na przykład do oddzielenia importowanego stylu elementu i związanej z nim gałęzi DOM od głównego dokumentu. Proponowane API deklaratywne pozwala na odłączenie gałęzi DOM jedynie przy użyciu HTML, bez potrzeby pisania kodu JavaScript.
    • API Popover (włączane przez dom.element.popover.enabled w about:config) do tworzenia elementów interfejsu, wyświetlanych nad innymi elementami interfejsu internetowego. Na przykład za pomocą nowego API można tworzyć menu działań, wyświetlać podpowiedzi do wypełniania formularzy, tworzyć interfejsy szkoleniowe oraz realizować przechwytywanie treści. Wyświetlanie nad innymi elementami odbywa się poprzez ustawienie atrybutu „popover”, przy czym lokalizacja, kaskadowanie i fokus wejścia są obsługiwane automatycznie. W przeciwieństwie do elementu „dialog”, elementy z atrybutem „popover” nie wykorzystują trybu modalnego, wspierają zdarzenia i łatwo je zamknąć.
    • Narzędzia do odczytu i zapisu w schowku (włączane przez dom.events.asyncClipboard.clipboardItem, dom.events.asyncClipboard.readText i dom.events.asyncClipboard.writeText w about:config), umożliwiające użycie interfejsu ClipboardItem oraz metod read(), readText() i write().
    • Obiekt Intl.Segmenter (włączony tylko w nocnych wersjach Firefox) do precyzyjnego segmentowania tekstu w linii z uwzględnieniem lokalizacji, na przykład do rozdzielania słów w językach, które nie używają spacji do oddzielania słów.
  • W narzędziach dla programistów internetowych w trybie inspekcji, podczas edytowania selektora lub właściwości, naciśnięcie klawisza Enter teraz potwierdza wprowadzenie i ustawia fokus na odpowiedni element, a nie powoduje przeniesienia fokusu do następnego pola wejściowego (aby przenieść fokus do następnego pola, można użyć klawisza Tab).
  • W wersji na Androida wprowadzono możliwość aktywacji mechanizmu GPC (Global Privacy Control), który zastępuje nagłówek „DNT” (Do Not Track) i pozwala informować strony o zakazie sprzedaży danych osobowych oraz ich wykorzystywania do śledzenia preferencji lub ruchu między stronami. Umożliwiono również ustawienie Firefox jako domyślnej przeglądarki do wyświetlania plików PDF. Aby wzmocnić ochronę przed pasywną identyfikacją użytkownika, w nagłówku User-Agent zawsze jest ustawiane „Android 10”, niezależnie od rzeczywistej wersji platformy.

Oprócz nowości i poprawek w Firefox 122 usunięto 15 luk w zabezpieczeniach (5 oznaczonych jako krytyczne). 8 luk jest spowodowanych problemami z pamięcią, takimi jak przepełnienia buforów i odwołania do już zwolnionych obszarów pamięci. Te problemy mogą potencjalnie prowadzić do wykonania kodu przez osoby trzecie przy otwieraniu specjalnie przygotowanych stron.

Dodatkowo warto wspomnieć o ogłoszeniu przez Mozillę stworzenia oddzielnej usługi do śledzenia przypadków dyskryminacji Firefox na różnych platformach oraz rozwiązania zgłoszonych problemów we współpracy z producentami platform. Obecnie na stronie zbiorczej zebrano problemy techniczne związane z działaniem Firefoxa w systemach Apple, Google i Microsoft. Na przykład w platformie Android zauważono niemożność importowania ustawień przeglądarki i obniżenie jakości wyszukiwania. W Windows wspomniano o zakazie programowej zmiany domyślnej przeglądarki oraz wymuszaniu korzystania z Microsoft Edge. W Androidzie i Windowsie wspomniano również o zachowaniu niektórych powiązań z Chrome i Edge nawet po zmianie domyślnej przeglądarki.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster