Firefox 147 har slĂ€ppts och uppdateringar för tidigare versioner med lĂ„ngsiktig support har skapats â 140.7.0 och 115.32.0. Betatestning av Firefox 148 har pĂ„börjats, vars release Ă€r planerad till 24 februari.
Huvudnyheterna i Firefox 147 (1, 2, 3):
- Stöd för Freedesktop.org:s XDG Base Directory-specifikation har lagts till och möjligheten att anvÀnda katalogen «~/.config/mozilla» för lagring av profiler, tillÀgg, instÀllningar och interna databaser. Stödet för lagring av data i den gamla katalogen «~/.mozilla» kvarstÄr som ett alternativ, som aktiveras vid start med miljövariabeln «MOZ_LEGACY_HOME=1».
- Stöd för mekanismen «Compression Dictionary Transport» (RFC 9842) har lagts till, vilket gör det möjligt att minska storleken pĂ„ data som skickas mellan klienten och servern, genom att anvĂ€nda komprimeringsalgoritmerna Zstandard (Content-Encoding: dcz) och Brotli (Content-Encoding: dcb) i kombination med komprimering av typiska konstruktioner med hjĂ€lp av ordböcker. TvĂ„ anvĂ€ndarscenarier för Compression Dictionary Transport Ă€r tillgĂ€ngliga â komprimering av innehĂ„ll baserat pĂ„ ordböcker som skickats av servern och anvĂ€ndning av tidigare skickat innehĂ„ll som ordbok för komprimering av en ny version (delta-kompression, dĂ€r endast förĂ€ndringarna i förhĂ„llande till den existerande versionen skickas).
Till exempel, nĂ€r en begĂ€ran om «GET /index.html» görs kan servern skicka information om att en ordbok Ă€r tillgĂ€nglig genom att returnera sökvĂ€gen till den i rubriken 'Link: ; rel="compression-dictionary"'. NĂ€r klienten laddar ordboken «âŠ/dict» kommer servern att ge information om dess tillĂ€mpning pĂ„ HTML-filer, med rubriken 'Use-As-Dictionary: match="/*html"'. Vid nĂ€sta begĂ€ran om en HTML-resurs, till exempel «GET /index2.html», kommer klienten att ange att den har en ordbok via rubriken 'Available-Dictionary: hash_orboken'. Om servern har en ordbok med den angivna hash-koden, kommer den att returnera innehĂ„llet i index2.html, komprimerat med hjĂ€lp av den ordboken.
För delta-komprimering av olika versioner av JavaScript-filer som svar pÄ begÀran «GET /app.v1.js» kan servern stÀlla in rubriken 'Use-As-Dictionary: match="/app*js"', vilket informerar om att det returnerade innehÄllet i framtiden kan anvÀndas som ordbok för vÀgarna «/app*js». Vid följande begÀran om en fil som matchar detta mönster, exempelvis «GET /app.v2.js», kommer klienten att överföra hash-koden för den befintliga ordboken via rubriken 'Available-Dictionary:', och servern kommer endast att returnera förÀndringarna mellan filerna app.v1.js och app.v2.js.
- En sida om: tangentbord har lagts till för att konfigurera tangentkombinationer och överskrida befintliga kortkommandon, till exempel för att stÀlla in mer bekanta alternativ eller för att undvika konflikter med andra program.

- Videouppspelning har optimerats med anvÀndning av hÄrdvaruaccelererad avkodning pÄ AMD GPU. PÄ system med AMD GPU spelas nu hÄrdvaruavkodad video upp utan extra dataöverföring (zero-copy-lÀge), som tidigare implementerades för system med Intel- och NVIDIA GPU.
- För version 5 har implementeringen av protokollet Safe Browsing uppdaterats, vilket anvÀnds för att kontrollera URL:er mot listor över osÀkra resurser (phishing-webbplatser, sidor med skadlig programvara etc.) som tillhandahÄlls av Google. Den nya versionen av protokoll tillÄter laddning av blockeringslistor för anvÀndning pÄ det lokala systemet (databas med SHA256-hashprefix för problematiska URL:er), som nu anvÀnds i Firefox.
- Ett alternativ för automatisk fortsÀttning av videouppspelning i lÀget "bild-i-bild" har lagts till nÀr fliken vÀxlas.
- I det förstÀrka spÄrningsskyddet (ETP, Enhanced Tracking Protection => Strict) Àr tillÀmpning av specifikationen LNA (Local Network Access) som standard aktiverad för att begrÀnsa Ätkomst till det lokala systemet (loopback, 127.0.0.0/8) eller interna nÀtverk (192.168.0.0/16, 10.0.0.0/8 etc.) vid interaktion med offentliga webbplatser. à tkomst till interna resurser anvÀnds av angripare för att genomföra CSRF-attacker pÄ routrar, Ätkomstpunkter, skrivare, företags webgrÀnssnitt och andra enheter och tjÀnster som endast tar emot förfrÄgningar frÄn det lokala nÀtverket. Dessutom kan skanning av interna resurser anvÀndas för indirekt identifiering eller insamling av information om det lokala nÀtverket.
- PÄ Linux-system med GNOME och kompositservern Mutter har ett problem med suddig visning av innehÄll vid anvÀndning av brÄkdelar av skala ÄtgÀrdats.
- PÄ Apple-datorer med Apple Silicon-chips och macOS har stöd för API WebGPU aktiverats.
- Prioriteringarna för sprÄkval i HTTP-headern Accept-Language (q-parametrar) Àr synkroniserade med vÀrdena som stÀlls in av andra webblÀsare, vilket har löst vissa portabilitetsproblem. Till exempel tilldelas nu det andra sprÄket en prioritet pÄ q=0.9 istÀllet för q=0.5, och för varje efterföljande sprÄk minskar prioriteten med 0.1.
- ICU-biblioteket har uppdaterats till version 78 med stöd för Unicode 17 och uppdaterade lokaldata.
- AnvÀndning av JavaScript-moduler ESM (ECMAScript Module) Àr tillÄten i Service Workers, och dessa moduler importeras och exporteras genom uttrycken import och export.
- Stöd för specifikationen CSS Module Scripts har lagts till, vilket möjliggör anvÀndningen av JavaScript-modulsystemet för att importera CSS-resurser. Till exempel: import styles from "./styles.css" with { type: "css" };
- I pseudo-elementet "::marker", som möjliggör anpassning av numrering och punkter för listor i <ul> och <ol>, Àr det nu tillÄtet att anvÀnda CSS-egenskaperna "counter-*" och "quotes".
- Stöd för Brotli-komprimeringsformatet har lagts till i API:erna CompressionStream och DecompressionStream.
- I API:et View Transitions, som anvÀnds för att skapa animeringseffekter vid övergÄng mellan olika DOM-tillstÄnd, har en egenskap vid namn "type" lagts till, som innehÄller en array med typer av övergÄngar. En motsvarande CSS-selektor "active-view-transition-type" har ocksÄ lagts till och egenskapen document.activeViewTransition, som returnerar en instans av det aktiva ViewTransition-objektet för dokumentet.
- Ett set av CSS-egenskaper för att styra visningen av element kopplade till platsen för andra element (CSS Anchor Positioning) har aktiverats, utan att anvÀnda JavaScript, till exempel för att fÀsta popover-element som kommmer fram pÄ liknande sÀtt som verktygstips.
- Specifikationen "Storage Access Headers" har implementerats, vilket definierar begÀrningshuvudet "Sec-Fetch-Storage-Access" och svars-huvudet "Activate-Storage-Access" för att fÄ tillgÄng till tredjeparts-cookies utan att anropa metoden document.requestStorageAccess(). Servern kan begÀra tillgÄng till cookies genom huvudet "Activate-Storage-Access" och det kommer att skickas av klienten om anvÀndaren tidigare har godkÀnt Ätkomst till cookie-lagringen via API Storage Access.
- I CSS-egenskapen "root-font-relative" har stöd för relativa mÀtenheter som rcap, rch, rex och ric lagts till.
- API Navigation har implementerats, vilket gör det möjligt för webbapplikationer att fÄnga navigeringsoperationer i fönstret, initiera övergÄngar och analysera historiken för ÄtgÀrder med applikationen. API:et erbjuder ett alternativ till egenskaperna window.history och window.location, optimerat för enstaka sidwebbapplikationer.
- I utvecklarverktygen för webben har stöd för redigering och tillÀgg av pseudo-elementets selektorer implementerats i CSS-regelpanelen. En importknapp för resursen har lagts till i grÀnssnittet för visning av data i JSON-formatet för att importera till profileringssystemet (Firefox Profiler) för att bestÀmma information om dess storlek. I HTML-elementinspektions- och animationspanelen har visning av pseudo-element i View Transitions sÀkerstÀllts. I CSS-regelpanelen har visning av @position-try-regler implementerats, som anvÀnds för att hantera visning av element kopplade till platsen för andra element (CSS Anchor Positioning).
- I Firefox-versionen för Android har skydd mot attacker genom tredjepartskanaler, sÄsom Spectre, tillÀmpat för att kringgÄ isoleringen mellan webbplatser. Tidigare var ett sÄdant skydd endast tillgÀngligt i versioner för skrivbordssystem.
Förutom nyheter och buggfixar har 23 sÄrbarheter ÄtgÀrdats i Firefox 147. 10 av sÄrbarheterna orsakades av minneshanteringsproblem, sÄsom buffertöverskridningar och Ätkomst till redan frigjorda minnesomrÄden. Dessa problem kan potentiellt leda till att angriparen exekverar kod vid öppnande av speciellt utformade sidor. 3 sÄrbarheter tillÄter att kringgÄ sandbox-isolering pÄ grund av felaktig grÀnskontroll och heltalsöverflöde i grafikkomponenten.
KĂ€lla: opennet.ru

