Byl vydán webový prohlížeč Firefox 129 a byly vytvořeny aktualizace pro předchozí verze s dlouhodobou podporou — 115.14.0 a 128.1.0. Do fáze beta testování byla převedena verze Firefox 130, jejíž vydání je plánováno na 3. září.
Hlavní novinky ve Firefoxu 129:
- Ve výchozím nastavení je aktivován režim HTTPS-First, který při pokusu o otevření stránky přes HTTP bez šifrování nejprve zkusí přistupovat na stránku přes HTTPS ("http://" je nahrazeno "https://") a pokud se pokus nezdaří, automaticky se přepne na stránku bez šifrování. Pro vypnutí režimu v about:config byste měli použít možnost "dom.security.https_first". Na rozdíl od volitelného režimu "HTTPS Only" aktivovaného v nastavení, režim HTTPS-First se nepoužívá pro načítání subzdrojů, jako jsou obrázky, skripty a stylové tabulky, a funguje pouze při pokusu o otevření webu po kliknutí na odkaz nebo zadání URL do adresního řádku.
- Na platformách Linux, Windows 11 a Android 10+ byla zavedena možnost použití systémového rozlišení pro určení DNS záznamů, přes které je předávána informace o veřejném klíči pro mechanismus ECH (Encrypted Client Hello), který pokračuje ve vývoji technologie ESNI (Encrypted Server Name Indication) a zajišťuje šifrování informací o parametrech TLS relací, jako je požadované doménové jméno. Klíčový rozdíl mezi ECH a ESNI spočívá v tom, že v ECH je místo šifrování jednotlivých polí šifrována celá TLS zpráva ClientHello, což umožňuje blokovat úniky přes pole, která ESNI nekryje, například pole PSK (Pre-Shared Key). Tato změna také umožňuje použít protokol HTTP/3 bez použití hlavičky Alt-Svc. Dříve bylo nutné pro získání klíče k ECH aktivovat "DNS over HTTPS". domény Skrytí
- v HTTPS provozu vedlo v některých případech k vyřešení problémů s poklesem rychlosti při sledování YouTube, což si uživatelé ruských poskytovatelů v poslední době stěžovali. V režimu čtenáře (Reader View) byly rozšířeny možnosti menu pro nastavení zobrazení textu a rozložení stránky — byla přidána možnost regulace mezer mezi znaky a slovy, stejně jako výběr metody vyrovnání textu.

- Do režimu čtenáře bylo přidáno nové menu „Téma“ pro nastavení barev pozadí, textu a odkazů během prohlížení, jakož i pro výběr základních režimů zobrazení (tmavý, odstíny šedé, světlý, kontrastní, sepiový).

- Zobrazování náhledů obsahu karet při najetí myší na tlačítka karet bylo zapnuto. Kromě náhledu byl do informačního bloku o kartě přidán také odkaz zobrazený na kartě. Předpokládá se, že tato změna usnadní určení hledané karty, čímž se vyloučí potřeba přepínání mezi kartami. Pro ty, které obtěžují zbytečná automaticky zobrazovaná okna, je možné tuto novou funkci vypnout pomocí nastavení „browser.tabs.hoverPreview.enabled“ v about:config.

- Pro uživatele z Francie a Německa bylo ve výchozím nastavení zapnuto automatické vyplňování polí s adresami ve webových formulářích. Dříve byla tato funkce zapnuta pouze pro uživatele z USA a Kanady. Pro zapnutí režimu v jiných zemích lze použít nastavení „extensions.formautofill.addresses.supportedCountries“ na stránce about:config. Pro úpravu adresy, která bude přidána do formulářů, lze v sekci Automatické vyplňování v nastavení „Ochrana soukromí a zabezpečení“ použít tlačítko pro úpravu uložených adres.

- Byla přidána experimentální implementace bočního panelu a možnost vertikálního umístění karet, což umožňuje vyčlenit další obrazový prostor pro prohlížení obsahu webových stránek na širokoúhlých obrazovkách. Pro zapnutí vertikálních karet je třeba aktivovat možnosti sidebar.revamp a sidebar.verticalTabs na stránce about:config. Boční panel může být zobrazen jak v rozbaleném, tak ve zmenšeném stavu. V rozbaleném stavu zobrazuje část názvů stránek na kartách a názvy operací vyvedených do bočního panelu, zatímco ve zmenšeném jsou viditelné pouze ikony webů a operací.

- Do CSS bylo přidáno @-pravidlo „@starting-style“ pro aplikaci stylu na prvek při jeho prvním vykreslení, což lze použít pro vytvoření přechodové animace v období před otevřením prvku na stránce (ve stavu „display: none“) nebo při přidání prvku do DOM.
- Bylo přidáno CSS-vlastnost „transition-behavior“ pro aplikaci přechodové animace k diskrétním vlastnostem, jako je „display“.
- Bylo implementováno událost textInput, které není definováno ve standardu, ale používá se namísto události „beforeinput“ v některých webových aplikacích založených na starých framworkech.
- JavaScript přidal podporu pro typizované pole Float16Array, stejně jako metody DataView pro čtení a nastavování hodnot s typem Float16, a metodu Math.f16round() pro zaokrouhlení čísel na přesnost 16 bitů. Typ Float16 může být užitečný při práci s GPU pro snížení spotřeby paměti ve srovnání s typy Float32 a Float64.
- V API mediaCapabilities.decodingInfo() byla implementována možnost dekódování konfigurace přehrávaného šifrovaného obsahu a získání informací o systémových klíčích použitých pro šifrování.
- V API Web Crypto byla přidána podpora digitálních podpisů na základě algoritmu Ed25519, který lze použít v metodách SubtleCrypto methods: sign(), verify(), generateKey(), importKey() a exportKey().
- Nástroje pro webové vývojáře nyní mají nové varování o problémech s CSS, zobrazené při nesprávném použití vlastností resize a float, při použití vlastnosti box-sizing s prvky ignorujícími změny výšky a šířky, stejně jako při aplikaci specifických pro tabulky CSS vlastností s prvky, které nejsou tabulkami.
V panelu analýzy síťové aktivity funkce blokování (Network Blocking) nyní platí nejen pro HTTP odpovědi, ale i pro HTTP požadavky. V režimu inspekce v postranním panelu Rules byl přidán náhled pravidel „@starting-style“ a implementovány tooltips pro funkci var(), zobrazující hodnoty vlastních CSS vlastností „@starting-style“.
- Verze pro platformu Android poskytla možnost stahování jazykových balíčků pro překlad textu v offline režimu.
Kromě novinek a oprav chyb v prohlížeči Firefox 129 bylo odstraněno 14 zranitelností. 11 zranitelností je označeno jako nebezpečné, z nichž 6 bylo způsobeno problémy s pamětí, jako jsou přetečení bufferu a přístup k již uvolněným oblastem paměti. Tyto problémy mohou potenciálně vést k provedení kódu útočníka při otevření speciálně vytvořených stránek.
Zdroj: opennet.ru





