Dostępny Firefox 126. Wśród interesujących nowości znalazły się wsparcie dla kompresji zstd, język kataloński, zwiększenie udziału kodu napisanego w Rust, rozpoczęcie wsparcia dla zakończenia Theora, zaostrzenie wymagań wobec starych dodatków i wiele innych.
W tej wersji:
- Funkcja „Kopiuj link bez parametrów śledzenia” nauczyła się usuwać parametry z zagnieżdżonych linków. Ponadto liczba znanych parametrów wykorzystywanych do śledzenia, które rozpoznaje i usuwa Firefox, przekroczyła 300.
- Zrealizowano wsparcie dla Content-encoding: zstd. Ten algorytm kompresji jest bardziej efektywny niż brotli i gzip. Ponadto, dekompresja skompresowanych danych teraz odbywa się poza głównym wątkiem, co przyspiesza ładowanie stron.
- Na stronie about:support dodano informacje o dostępności na komputerze DLP (oprogramowanie zapobiegające wyciekom informacji).
- Wbudowany tłumacz zyskał wsparcie dla języka katalońskiego.
- Komponent odpowiedzialny za przesyłanie informacji o awariach, został przepisany w Rust. Wśród powodów wskazuje się jakość kodu, który, choć wystarczająco dobry, był przerażająco trudny w utrzymaniu (w szczególności istniały oddzielne realizacje interfejsu graficznego dla Windows, Linux i macOS, blob, a wszystko to było połączone kodem wiążącym bez żadnego pokrycia testami). Dlatego mimo że w planach było wiele nowych funkcji i ulepszeń, komponent przez długi czas nie był rozwijany.
- Firefox teraz chętniej korzysta z IPv6.
- Naprawiono błąd, który powodował zauważalne opóźnienia przy otwieraniu stron w sytuacjach, gdy jednocześnie skonfigurowano użycie WPAD i DoH.
- Z powodu problemów z wydajnością tymczasowo wyłączono dodaną w poprzedniej wersji opcję przejścia do linku z schowka gdy kursor znajduje się w pasku adresu.
- Zabroniono otwierania stron z wykorzystaniem portów 4190 i 6679 (pełna lista zabronionych portów).
- Rozpoczęto pracę nad wycofaniem wsparcia dla kodeka Theora. Na wstępnym etapie deweloperzy ocenią jego popularność za pomocą danych telemetrycznych, według wstępnych danych tylko 0,09% mediów w Firefox jest odtwarzane przy użyciu Theora, a duże zasoby (takie jak Wikipedia), które korzystały z tego kodeka, dawno przeszły na bardziej efektywne kodeki.
- To jest ostatnia wersja, w którą można zainstalować stare dodatki, których autorzy nie przerejestrowali. Od wersji Firefox 127, wszystkie dodatki stworzone przed kwietniem 2019 roku muszą być przerejestrowane nowym certyfikatem (certyfikat używany przed 2019 rokiem korzystał z algorytmów, które nie są już wystarczająco wiarygodne):
- Jeśli dodatek został stworzony po kwietniu 2019 roku, to już jest podpisany wiarygodnym certyfikatem i nie trzeba nic robić.
- Dodatki umieszczone w oficjalnym katalogu będą przerejestrowane automatycznie, więc nie trzeba z nimi nic robić.
- Jeśli dodatek został stworzony po kwietniu 2019 roku i nie ma go w oficjalnym katalogu dodatków (na przykład jest dystrybuowany przez własną stronę), to jego autor musi samodzielnie przerejestrować swój dodatek.
- Już zainstalowane dodatki będą działać w każdych warunkach, nawet jeśli nie są przerejestrowane, ale zainstalowanie takiego dodatku od podstaw będzie niemożliwe.
- Zapytania użytkowników z USA zostaną poddane analizie. Na przykład, jeśli użytkownik szukał „Hotele w Barcelonie”, przeglądarka zwiększy licznik „podróży” o jeden (łącznie przeglądarka rozpoznaje 20 różnych tematów (zwierzęta, sztuka, samochody, biznes, kariera, edukacja, moda, finanse, jedzenie, rząd, zdrowie, hobby, dom, niejasne, wiadomości, nieruchomości, społeczeństwo, sport, technologia, podróże). Zebrane dane będą przesyłane poprzez telemetrykę. Programiści podkreślają, że nie będą znać treści zapytań (tylko ogólną tematykę, na przykład „1 zapytanie o podróże, 3 zapytania o zwierzęta, 100 zapytań o rząd”), ani mieć możliwości powiązania tych danych z adresami IP (do anonimizacji używany jest OHTTP).
- macOS: na systemach z procesorem Apple M3 włączono sprzętowe przyspieszenie dekodowania AV1.
- Windows:
- Po naciśnięciu w ustawieniach przeglądarki przycisku „Ustaw przeglądarkę domyślną” Firefox teraz otwiera nie tylko ustawienia Windows, ale także pokazuje powiadomienie, które wyjaśnia, jakie przyciski należy nacisnąć.
- Rozpoczęto kompilacja oficjalnych pakietów MSIX dla architektury ARM64.
- CSS: Zrealizowano wsparcie właściwości zoom, które po raz pierwszy pojawiło się w IE 6 (powiększanie lub pomniejszanie rozmiaru elementu i jego zawartości). Firefox pozostawał jedyną dużą przeglądarką, która nie obsługiwała tej właściwości.
- API:
- Zrealizowano wsparcie IDBFactory.databases.
- Pojawiło się wsparcie IDBTransaction.durability.
- Dodano wsparcie URL.parse() (w przeciwieństwie do konstruktora URL, który zwraca błąd podczas nieudanej analizy, ta metoda zwraca null).
- Zrealizowano wsparcie API Zablokowanie ekranu (pozwala aplikacji internetowej wyłączyć wygaszacz ekranu, co jest przydatne, na przykład w aplikacjach, w których użytkownik nie wchodzi w interakcje z elementami wejściowymi, takich jak aplikacje nawigacyjne).
- Wszystkie właściwości i metody RTCIceCandidate są teraz obsługiwane i zgodne ze specyfikacją (z wyjątkiem właściwości relayProtocol i url, które nie zostały zaimplementowane).
- Do odczytu stały się dostępne właściwości candidate, sdpMid, sdpMLineIndex, usernameFragment,
- Stały się dostępne właściwości foundation, component, priority, address, protocol, port, type, tcpType, relatedAddress, relatedPort, usernameFragment.
- Pojawiło się właściwość Element.currentCSSZoom.
- DOM:
- Włączona możliwość określania stanów dla elementów niestandardowych i ich porównywania przy użyciu selektorów CSS. Stany niestandardowe przedstawione są jako identyfikatory, które można dodawać lub usuwać z właściwości ElementInternals.states (CustomStateSet). Pseudoklas :state() przyjmuje identyfikator jako argument i porównuje elementy niestandardowe, jeśli identyfikator jest obecny w ich zestawie stanów.
- Dodano wsparcie właściwości Selection.direction (wskazuje kierunek zakresu).
- Z HTMLMarqueeElement zostały usunięte zdarzenia bounce, finish i start.
- Narzędzia dewelopera: Dodano ustawienie, które pozwala na wyłączenie podzielonej konsoli.
Źródło: linux.org.ru
