wydanie przeglądarki internetowej , a także Firefox 68.2 dla platformy Android. Dodatkowo, przygotowano aktualizację z długoterminowym wsparciem (wsparcie dla poprzedniej gałęzi ESR 60.x zostało zakończone). Wkrótce na etapie przejdzie gałąź Firefox 71, zgodnie z którego wydanie zaplanowane jest na 3 grudnia.
:
- W rozszerzonym trybie ochrony przed śledzeniem ruchów blokowanie widgetów mediów społecznościowych, które śledzą ruch użytkowników na zewnętrznych stronach internetowych (np. przyciski Lubię to od Facebooka i wstawki wiadomości z Twittera). Dla formularzy uwierzytelniania przez konto w mediach społecznościowych przewidziano możliwość tymczasowego wyłączenia blokady;

- Dodano zbiorczy raport o dokonanych blokadach, w którym można śledzić liczbę blokad według dni tygodnia i typów;

- W skład wchodzi systemowe rozszerzenie (wcześniej rozszerzenie było dostarczane jako Lockbox), które zapewnia nowy interfejs „about:logins” do zarządzania zapisanymi hasłami. Rozszerzenie wyświetla na pasku przycisk, przez który można szybko przeglądać konta zapisane dla bieżącej strony, a także wykonywać operacje wyszukiwania i edytowania haseł. Istnieje możliwość dostępu do zapisanych haseł przez oddzielną aplikację mobilną , która wspiera automatyczne uzupełnianie haseł w formularzach uwierzytelniania jakichkolwiek aplikacji mobilnych;
- Zintegrowano systemowe rozszerzenie , który wyświetlające ostrzeżenie w przypadku kompromitacji konta (sprawdzanie przez email) lub próby zalogowania się na wcześniej zhakowaną stronę. Weryfikacja odbywa się poprzez integrację z bazą danych projektu haveibeenpwned.com;
- Domyślnie aktywowany jest generator haseł, który podczas wypełniania formularzy rejestracyjnych wyświetla podpowiedź z automatycznie wygenerowanym silnym hasłem. Podpowiedź pojawia się automatycznie dla pól ‹input type="password"› z atrybutem „autocomplete = new-password”. Bez tego atrybutu hasło można wygenerować przez menu kontekstowe;
- Zamiast przycisku „(i)” w pasku adresu umieszczony jest wskaźnik poziomu prywatności, który pozwala ocenić aktywację trybów blokowania śledzenia ruchów. Wskaźnik staje się szary, gdy w ustawieniach włączony jest tryb blokowania śledzenia ruchów i na stronie nie zarejestrowano elementów, które należy zablokować. Wskaźnik staje się niebieski, gdy na stronie zablokowane są różne elementy naruszające prywatność lub wykorzystywane do śledzenia ruchów. Wskaźnik jest przekreślony, gdy użytkownik wyłączył ochronę przed śledzeniem dla bieżącej witryny.
- Strony otwierane przez HTTP lub FTP są teraz oznaczane ikoną niebezpiecznego połączenia, która również pojawia się dla HTTPS w przypadku problemów z certyfikatami. Kolor symbolu kłódki dla HTTPS został zmieniony z zielonego na szary (można przywrócić kolor zielony za pomocą ustawienia security.secure_connection_icon_color_gray). Odejście od wskaźników zapewnienia bezpieczeństwa na rzecz ostrzeżeń o problemach z bezpieczeństwem jest spowodowane powszechnym zastosowaniem HTTPS, które już jest postrzegane jako standard, a nie dodatkowa ochrona.
- W pasku adresu przy wyświetlaniu nazwy firmy podczas korzystania z weryfikowanego certyfikatu EV na stronie. Informacja została usunięta, ponieważ mogła wprowadzać użytkownika w błąd i być wykorzystywana do phishingu (na przykład zarejestrowana była firma „Identity Verified”, której nazwa w pasku adresu była postrzegana jako wskaźnik weryfikacji). Informacje o certyfikacie EV można zobaczyć w menu rozwijanym po kliknięciu na ikonę z wizerunkiem kłódki. Można przywrócić wyświetlanie nazwy firmy z certyfikatu EV w pasku adresu za pomocą ustawienia „security.identityblock.show_extended_validation” w about:config.

- W silniku JavaScript nowy interpreter bajtkodu „baseline”, który zajmuje pośrednią niszę między zwykłym interpreterem a wstępnym kompilatorem JIT „baseline”. Nowy interpreter jest znacznie szybszy niż stary interpreter i wykorzystuje wspólne z kompilatorem JIT „baseline” procedury przetwarzania bajtkodu, pamięć podręczną oraz dane profilowania. Dodatkowy interpreter pozwala przyspieszyć działanie często używanych funkcji JavaScript po ich wycofaniu z uproszczonego JIT (Ion JIT) do etapu kompilacji dla nieoptymalizowanego JIT „baseline”, na przykład po wywołaniu funkcji z argumentami innych typów.
W złożonych aplikacjach internetowych kompilacja dla JIT „baseline” i wprowadzenie optymalizacji dla JIT Ion zajmuje dużo czasu, a dodatkowy szybki interpreter pozwala osiągnąć ogólny wzrost wydajności i nieznaczne zmniejszenie zużycia pamięci. W przeprowadzonych testach aktywacja dodatkowego interpretera, który wykorzystuje wspólną statystykę i inline-cache z JIT, prowadziła do zmniejszenia czasu ładowania stron o 2-8%, a wydajność narzędzi dla web-deweloperów wzrosła o 2-10%;


- W buildach dla systemu Linux domyślnie zastosowanie systemu kompozycji dla GPU AMD, Intel i NVIDIA (tylko dla sterownika Nouveau), przy użyciu w systemie pakietu Mesa 18.2 lub nowszej wersji. W buildach dla systemu Windows, poza wcześniej wspieranymi GPU AMD i NVIDIA, WebRender jest teraz aktywowany także dla GPU Intel. System kompozycji został napisany w języku Rust i przenosi na stronę GPU operacje rysowania zawartości strony.
Korzystając z WebRender zamiast wbudowanego w silnik Gecko systemu kompozycji, który przetwarza dane za pomocą CPU, do wykonywania operacji rysowania elementów strony używane są shadery, które działają w GPU, co pozwala znacząco zwiększyć szybkość rysowania i zmniejszyć obciążenie CPU. Aby wymusić włączenie WebRender w about:config, można zmienić ustawienia „gfx.webrender.all” i „gfx.webrender.enabled”;
- wsparcie dla trybu ścisłej izolacji stron, rozwijanego pod kodową nazwą . W trybie tym strony różnych witryn są zawsze umieszczane w pamięci różnych procesów, z których każdy używa własnego izolowanego piaskownicy (sandbox). Izolacja procesów odbywa się nie według kart, lecz według domen, co pozwala na dodatkową izolację treści zewnętrznych skryptów i bloków iframe. Zarządzanie trybem ścisłej izolacji odbywa się w about:config za pomocą opcji „fission.autostart” (włączenie w wydaniach jest obecnie zablokowane);
- logo, a nazwa została zmieniona z Firefox Quantum na Firefox Browser;
- wyświetlanie zapytań o potwierdzenie uprawnień, inicjowanych z bloków iframe, załadowanych z innej domeny (cross-origin). Zmiana ma na celu blokowanie pewnych nadużyć i przejście do modelu, w którym uprawnienia są wymagane tylko z domeny pierwotnej dokumentu, która jest wyświetlana w pasku adresu;
- wyświetlanie zawartości plików ładowanych przez ftp (na przykład przy otwieraniu przez ftp przestaną być widoczne obrazy, pliki README i pliki html). Przy otwieraniu zasobów przez FTP, teraz od razu będzie wywoływane okno dialogowe pobierania pliku na dysk, niezależnie od typu zawartości;
- W pasku adresu wskaźnik dostępu do lokalizacji, który umożliwi użytkownikowi ocenę aktywności API Geolocation i, w razie potrzeby, pozwoli na cofnięcie uprawnienia do jego użycia przez witrynę. Do tej pory wskaźnik był wyświetlany tylko przed przyznaniem uprawnień i w przypadku odrzucenia żądania, ale znikał po otwarciu dostępu do API Geolocation. Teraz wskaźnik będzie informować użytkownika o posiadaniu takiego dostępu;

- rozszerzony interfejs do wyświetlania certyfikatów TLS, dostępny przez stronę „about:certificate” (domyślnie jest używany stary interfejs, nowy włącza się przez security.aboutcertificate.enabled w about:config). Jeśli wcześniej do przeglądania certyfikatów otwierano osobne okno, to teraz informacje są wyświetlane na karcie w formie przypominającej dodatek . Realizacja interfejsu do przeglądania certyfikatów w całości z wykorzystaniem JavaScript i standardowych technologii webowych;
- W menu zarządzania kontem dodano sekcję dostępu do rozszerzonych usług Firefox, takich jak Monitor i Send;

- Do głównego menu i na pasek dodano nową ikonę „prezent”, przez którą można uzyskać informacje o nowych wydaniach i ich kluczowych funkcjach;

- Wbudowane strony Firefox (about:*) są dostosowane do wyświetlania zgodnie z ustawieniami ciemnego motywu.
- Poprawiona czytelność podkreślonego lub przekreślonego tekstu, w tym linków — linie teraz kończą się (obejmują) nie przecinając glifów.
- W motywach wizualnych wsparcie dla właściwości accentcolor, textcolor i headerURL, które były aliasami właściwości frame, tab_background_text i theme_frame (motywy znajdujące się w addons.mozilla.org zostały zaktualizowane automatycznie).
- Dodano właściwości CSS , i , umożliwiające dostosowanie grubości, odstępów i przerw dla linii, używanych do podkreślania i przekreślania tekstu.
- W właściwości CSS „dodana możliwość wskazania od razu dwóch atrybutów, na przykład „display: block flex” lub „display: inline flex”.
- Wartości przezroczystości w właściwościach CSS opacity i stop-opacity mogą teraz być określane w procentach.
- W właściwości CSS dodano wsparcie dla wartości xxx-large.
- W JavaScript możliwość wizualnego rozdzielania dużych liczb za pomocą znaków podkreślenia, na przykład „myNumber = 1_000_000_000_000”.
- Dodano nową metodę , która jest wariantem metody Intl.RelativeTimeFormat.format(), zwracającym tablicę obiektów, z których każdy element przedstawia swoją część sformatowanej wartości, zamiast zwracać sformatowany ciąg w całości.
- Rozmiar nagłówka HTTP „Referer” jest ograniczony do 4 KB, przy przekroczeniu tej wartości zawartość jest skracana do samej nazwy domeny.
- W narzędziach dla deweloperów w panelu Accessibility dodano środki do audytowania wygody nawigacji między elementami przy użyciu klawiatury, a także symulator tego, jak stronę widzą daltoniści.
- W narzędziu do wyboru koloru dla danego koloru teraz wyświetlany jest wskaźnik kontrastu w stosunku do koloru tła, aby ocenić percepcję przez osoby z osłabionym wzrokiem.
- W trybie inspekcji definicje CSS, które nie wpływają na wybrany element, są teraz podświetlane na szaro z informacją, dlaczego są ignorowane i możliwymi sposobami ich naprawy.
- W debuggerze dodano możliwość ustawiania punktów przerwania, które są wyzwalane przy zmianie elementów DOM () i pozwalają śledzić momenty, kiedy skrypt dodaje, usuwa lub aktualizuje zawartość strony.
- Dla deweloperów dodatków wprowadzono możliwość inspekcji danych w magazynie browser.storage.local;
- Tryb inspekcji aktywności sieciowej zyskał funkcję wyszukiwania, umożliwiającą szybkie znajdowanie elementów zapytań i odpowiedzi. Wyszukiwanie obejmuje również nagłówki HTTP, pliki cookie i treści zapytań/odpowiedzi;
- Optymalizacja kodu kompozycji stron na platformie macOS pozwoliła na zmniejszenie obciążenia CPU, przyspieszenie ładowania stron (przyspieszenie do 22%) oraz ograniczenie zużycia zasobów podczas odtwarzania wideo (o 37%). W wersjach dla macOS dodano również wsparcie dla importu haseł zapisanych w Chrome;
- Dla Androida przygotowano aktualizację poprawiającą Firefox 68.1. Przypominamy, że tworzenie nowych, znaczących wydań Firefox dla Androida zostało zakończone. W zamian wprowadzono Firefox dla Androida pod kodową nazwą Fenix (dystrybuowany jako ) nowa przeglądarka dla urządzeń mobilnych, korzystająca z silnika GeckoView oraz zestawu bibliotek Mozilla Android Components. Kilka dni temu wprowadzono nową wersję eksperymentalną Firefox Preview 2.2, w której rozwiązano kilka istotnych problemów z interfejsem i metodami interakcji z użytkownikiem. Zmiany w porównaniu z obejmują dodanie opcji do usunięcia wszystkich danych przy wyjściu oraz możliwość otwierania linków domyślnie w trybie prywatnym.
Oprócz nowości i poprawy błędów w Firefox 70 naprawiono , z czego 12 (zebrane pod jednym CVE-2019-11764) jako krytyczne i mogą potencjalnie prowadzić do wykonania kodu przez złośliwego użytkownika po otwarciu specjalnie przygotowanych stron.
Źródło: opennet.ru








