LĂ«shimi i shfletuesit web Firefox 147 dhe janĂ« formuar pĂ«rmirĂ«simet e degevĂ«ve tĂ« kaluara me mbĂ«shtetje tĂ« gjatĂ« â 140.7.0 dhe 115.32.0. Degja Firefox 148 Ă«shtĂ« çuar nĂ« fazĂ«n e testimit beta, lĂ«shimi i tĂ« cilĂ«s Ă«shtĂ« parashikuar pĂ«r 24 shkurt.
Novitetet kryesore në Firefox 147 (1, 2, 3):
- Shtuar përkrahja për specifikimin Freedesktop.org XDG Base Directory dhe mundësia e përdorimit të direktorisë «~/.config/mozilla» për ruajtjen e profileve, shtesave, konfigurimeve dhe bazave të dhënash të brendshme. Përkrahja për vendosjen e të dhënave në direktorinë e vjetër «~/.mozilla» është ruajtur si një opsion, që mund të activohet gjatë nisjes me variablin e ambientit «MOZ_LEGACY_HOME=1».
- Shtuar pĂ«rkrahja pĂ«r mekanizmin «Compression Dictionary Transport» (RFC 9842), qĂ« lejon tĂ« zvogĂ«lohet madhĂ«sia e tĂ« dhĂ«nave tĂ« dĂ«rguara midis klientit dhe server, pĂ«rmes pĂ«rdorimit tĂ« algoritmeve tĂ« kompresimit Zstandard (Content-Encoding: dcz) dhe Brotli (Content-Encoding: dcb) nĂ« kombinim me kompresimin e struktura tipike duke pĂ«rdorur fjalorĂ«. Disponohen dy skenarĂ« pĂ«r pĂ«rdorimin e Compression Dictionary Transport â kompresimi i pĂ«rmbajtjes sipas fjalorĂ«ve tĂ« dĂ«rguar paraprakisht nga serveri dhe pĂ«rdorimi i pĂ«rmbajtjes sĂ« dĂ«rguar mĂ« parĂ« si fjalor pĂ«r kompresimin e versionit tĂ« tij tĂ« ri (kompresim delta, ku dĂ«rgohen vetĂ«m ndryshimet nĂ« krahasim me versionin ekzistues).
PĂ«r shembull, me kĂ«rkesĂ«n «GET /index.html» serveri mund tĂ« dĂ«rgojĂ« informacione mbi ekzistencĂ«n e fjalorit, duke kthyer rrugĂ«n pĂ«r tĂ« nĂ« headerin âLink: ; rel="compression-dictionary"â. Kur klienti tĂ« ngarkojĂ« fjalorin «âŠ/dict», serveri do tĂ« nxjerrĂ« informacionin pĂ«r pĂ«rdorimin e tij pĂ«r skedarĂ«t HTML, duke vendosur headerin âUse-As-Dictionary: match="/*html"â. NĂ« kĂ«rkesĂ«n e ardhshme pĂ«r njĂ« burim html, pĂ«r shembull, «GET /index2.html», klienti do tĂ« tregojĂ« informacionin mbi qenien e fjalorit tĂ« tij pĂ«rmes headerit âAvailable-Dictionary: hash_fjaloriâ. NĂ«se serveri ka nĂ« anĂ«n e tij njĂ« fjalor me kĂ«tĂ« hash, atĂ«herĂ« do tĂ« kthejĂ« pĂ«rmbajtjen e index2.html, e kompresuar duke pĂ«rdorur kĂ«tĂ« fjalor.
PĂ«r kompresimin delta tĂ« versioneve tĂ« ndryshme tĂ« skedarĂ«ve JavaScript nĂ« pĂ«rgjigje tĂ« kĂ«rkesĂ«s «GET /app.v1.js», serveri mund tĂ« vendosĂ« headerin âUse-As-Dictionary: match="/app*js"â, duke informuar se pĂ«rmbajtja e kthyer mund tĂ« pĂ«rdoret mĂ« vonĂ« si fjalor pĂ«r rrugĂ«t «/app*js». NĂ« kĂ«rkesĂ«n e ardhshme pĂ«r njĂ« skedar qĂ« i pĂ«rket kĂ«tij maskimi, pĂ«r shembull, «GET /app.v2.js», klienti do tĂ« dĂ«rgojĂ« hash-in e fjalorit ekzistues pĂ«rmes headerit «Available-Dictionary:», ndĂ«rsa serveri do tĂ« kthejĂ« vetĂ«m ndryshimet midis skedarĂ«ve app.v1.js dhe app.v2.js.
- ĂshtĂ« shtuar faqja about:keyboard pĂ«r konfigurimin e kombinimeve tĂ« çelĂ«save dhe rivenosjen e çelĂ«save ekzistues, pĂ«r shembull, pĂ«r tĂ« caktuar variante mĂ« tĂ« njohura pĂ«r vete ose pĂ«r tĂ« eliminuar konfliktet me programe tĂ« tjera.

- ĂshtĂ« optimizuar riprodhimi i videos duke pĂ«rdorur pĂ«rshpejtimin harduerik pĂ«r dekodimin nĂ« GPU AMD. NĂ« sistemet me GPU AMD, videot e dekoduara harduerikisht tani riprodhohen pa kopjime tĂ« tjera tĂ« tĂ« dhĂ«nave (modaliteti zero-copy), ashtu siç ishte realizuar mĂ« parĂ« pĂ«r sistemet me GPU Intel dhe NVIDIA.
- Për versionin 5 është përmirësuar zbatimi i protokollit Safe Browsing, i përdorur për të kontrolluar URL-të për praninë në listat e burimeve të pasigurta (faqe phishing, faqe me malware etj.), të ofruara nga Google. Versioni i ri i protokollit lejon shkarkimin e listave të bllokimit për përdorim në sistemin lokal (DB me prefiks hash SHA256 të URL-ve problematike), të cilat tani aplikohen në Firefox.
- ĂshtĂ« shtuar opsioni pĂ«r vazhdimin automatik tĂ« riprodhimit tĂ« videos nĂ« modalitetin 'nĂ« imazh nĂ« imazh' nĂ« rast se ndĂ«rroni skedarin.
- Në modalitetin e mbrojtjes së përmirësuar nga ndjekja e lëvizjeve (ETP, Enhanced Tracking Protection => Strict) është e aktivizuar automatikisht zbatimi i specifikacionit LNA (Local Network Access) për të kufizuar kërkesat ndaj sistemit lokal (loopback, 127.0.0.0/8) ose rrjetit të brendshëm (192.168.0.0/16, 10.0.0.0/8 etj.) gjatë ndërveprimit me faqet publike. Kërkimi në burimet e brendshme përdoret nga sulmuesit për të kryer sulme CSRF ndaj routerave, pikave të qasjes, printerëve, ndërfaqeve web të korporatave dhe pajisjeve të tjera dhe shërbimeve që pranojnë kërkesat vetëm nga rrjeti lokal. Përveç kësaj, skanimi i burimeve të brendshme mund të përdoret për identifikimin e tërthortë ose mbledhjen e informacioneve mbi rrjetin lokal.
- Në sistemet Linux me GNOME dhe serverin e kompozitit Mutter është zgjidhur problemi me shfaqjen e paqartë të përmbajtjes gjatë përdorimit të shkallës së zmadhuar të saktë.
- Në kompjuterët Apple me çipet Apple Silicon dhe sistemin operativ macOS është aktivizuar mbështetja për API-në WebGPU.
- Prioritetet e gjuhës që përcaktohen në HTTP-në Accept-Language janë sinkronizuar me vlerat e vendosura nga shfletues të tjerë, duke zgjidhur disa probleme me transportueshmërinë. Për shembull, për gjuhën e dytë tani vendoset prioriteti q=0.9 në vend të q=0.5, ndërsa për çdo gjuhë që vjen më pas, prioriteti ulet me 0.1.
- Biblioteka ICU është azhurnuar në versionin 78 me mbështetje për Unicode 17 dhe azhurnim të të dhënave të lokaliteteve.
- ĂshtĂ« lejuar pĂ«rdorimi i moduleve JavaScript ESM (ECMAScript Module) nĂ« Service Worker, tĂ« importuara dhe eksportuara pĂ«rmes shprehjeve import dhe export.
- Shtuar mbështetje për specifikimin CSS Module Scripts, që lejon përdorimin e sistemit të moduleve JavaScript për importimin e burimeve CSS. Për shembull: import styles from './styles.css' with { type: 'css' };
- NĂ« pseudo-elementin â::markerâ, qĂ« lejon pĂ«rshtatjen e parametrave tĂ« numrave dhe pikĂ«vijave pĂ«r lista nĂ« blloqet
- dhe
- , është lejuar përdorimi i vetive CSS 'counter-*' dhe 'quotes'.
- Në API CompressionStream dhe DecompressionStream është shtuar mbështetje për formatin e kompresimit Brotli.
- NĂ« API View Transitions, i pĂ«rdorur pĂ«r tĂ« krijuar efekte animacioni gjatĂ« kalimeve midis gjendjeve tĂ« ndryshme tĂ« DOM, Ă«shtĂ« shtuar njĂ« pronĂ« 'type', qĂ« pĂ«rmban njĂ« varg me type-Ă«t e kalimeve. ĂshtĂ« shtuar gjithashtu selektori pĂ«rkatĂ«s CSS ':active-view-transition-type' dhe prona document.activeViewTransition, qĂ« kthen njĂ« instancĂ« tĂ« objektit ViewTransition aktiv pĂ«r dokumentin.
- Janë përfshirë një grup vetish CSS për të menaxhuar shfaqjen e elementeve të lidhura me pozitat e elementeve të tjera (CSS Anchor Positioning), pa përdorimin e JavaScript, për shembull, për të lidhur elemente të daljes (popover), që shfaqen ashtu si shpjegimet e daljes.
- Specifikimi âStorage Access Headersâ Ă«shtĂ« realizuar, qĂ« pĂ«rcakton titullin e kĂ«rkesĂ«s âSec-Fetch-Storage-Accessâ dhe titullin e pĂ«rgjigjes âActivate-Storage-Accessâ pĂ«r tĂ« fituar akses nĂ« Cookie-t e palĂ«ve tĂ« treta pa thirrjen e metodĂ«s document.requestStorageAccess(). Serveri mund tĂ« kĂ«rkojĂ« akses nĂ« Cookie pĂ«rmes titullit âActivate-Storage-Accessâ dhe ai do tĂ« dĂ«rgohet nga klienti, nĂ«se mĂ« parĂ« pĂ«rdoruesi e ka konfirmuar dhĂ«nien e aksesit nĂ« hapsirĂ«n e Cookie pĂ«rmes API Storage Access.
- Tek css-pronia 'root-font-relative' është shtuar mbështetje për njësitë e matjes relative rcap, rch, rex dhe ric.
- API Navigation është implementuar, duke lejuar aplikacionet web të kapin operacionet e navigimit në dritare, të iniciuar kalimin dhe të analizojnë historinë e veprimeve me aplikacionin. API ofron një alternativë për pronat window.history dhe window.location, optimizuar për aplikacionet web me një faqe.
- Në mjetet për zhvillimin e web-it në panelin me rregullat CSS, është realizuar mbështetje për redaktimin dhe shtimin e selektorëve të pseudo-elementeve. Në ndërfaqen për shikimin e të dhënave në formatin JSON është shtuar një buton për importimin e burimit në sistemin e profilizimit (Firefox Profiler) për të përcaktuar informacionin mbi madhësinë e tij. Në panelin e inspektimit të elementeve HTML dhe animacioneve është siguruar shfaqja e pseudo-elementeve të Kalimeve të Pamjes. Në panelin me rregullat CSS është realizuar shfaqja e rregullave @position-try, të aplikuara për të menaxhuar shfaqjen e elementeve të lidhura me pozitat e elementeve të tjera (CSS Anchor Positioning).
- Në versionin Firefox për Android është shtuar mbrojtjen nga sulmet përmes kanaleve të jashtme, si Spectre, që përdoren për të anashkaluar izolimin midis faqeve. Më parë, një mbrojtje e tillë ishte e aksesueshme vetëm në ndërtimet për sistemet desktop.
Përveç risive dhe korrigjimeve të gabimeve, në Firefox 147 janë eliminuar 23 vulnerabilitete. 10 vulnerabilitete janë shkaktuar nga probleme me memorie, si mbushjet e bufereve dhe qasjet në zona memorjeje që janë liruar tashmë. Problemet e mundshme mund të çojnë në ekzekutimin e kodit nga sulmuesi kur hapen faqe të dizajnuara veçanërisht. 3 vulnerabilitete lejojnë anashkalimin e izolimit sandbox për shkak të kontrollit të gabuar të kufijve dhe mbushjes integer në komponentin për punën me grafikën.
Burimi: opennet.ru

