A avut loc lansarea browser-ului web , precum și versiunea mobilă pentru platforma Android. În plus, a fost creată o actualizare cu termen lung de suport și . În curând va trece la etapa va trece pe ramura Firefox 80, lansarea căreia este planificată pentru 25 august.
:
- În managerul de parole a fost adăugată opțiunea de a exporta datele de autentificare în format CSV (câmpuri de text cu delimitatori, care pot fi importate într-un procesor de tabele). La export, parolele sunt plasate în fișier într-o formă deschisă. În viitor, se planifică, de asemenea, implementarea funcției de importare a parolelor dintr-un fișier CSV salvat anterior (se presupune că utilizatorului poate fi necesară copierea de rezervă și restaurarea parolelor salvate sau transferul parolelor din alt browser).
- setare pentru activarea izolării dinamice a Cookie-urilor pe baza domeniului afișat în bara de adrese („„, când inserțiile proprii și cele externe sunt determinate pe baza domeniului de bază al site-ului). Setarea a fost propusă în configurator în secțiunea de configurare a blocării urmăririi în meniul derulant al metodelor de blocare a Cookie-urilor.
- Au fost îmbunătățite măsurile de protecție împotriva urmăririi, care blochează automat Cookie-urile utilizate de contoare externe. Pentru site-urile care efectuează urmărirea, Firefox acum șterge zilnic Cookie-urile și datele din stocările interne, pe baza listelor de sisteme de urmărire din serviciul Disconnect.me.
- A fost adăugată o implementare preliminară a ecranului cu setări experimentale „about:preferences#experimental”, care oferă o interfață pentru activarea funcționalităților experimentale, similară cu about:flags în Chrome. În mod implicit, ecranul este momentan indisponibil și necesită activarea setării „browser.preferences.experimental” în about:config. Dintre funcționalitățile experimentale disponibile pentru activare, este propusă doar suportul pentru „«.
- Pentru laptopuri bazate pe cipuri AMD pe platforma Windows 10
sistemul de compunere WebRender. WebRender este scris în limbajul Rust și permite obținerea unei creșteri semnificative a vitezei de randare și o scădere a încărcării CPU prin mutarea pe GPU a operațiunilor de randare a conținutului paginii, realizate prin intermediul shaderelor executate pe GPU. Anterior, WebRender a fost activat pe platforma Windows 10 pentru GPU Intel, APU AMD Raven Ridge, AMD Evergreen și pe laptopuri cu plăci grafice NVIDIA. În Linux, WebRender este deocamdată pentru plăcile Intel și AMD doar în versiunile nocturne și nu este suportat pentru plăcile NVIDIA. Pentru activarea forțată în about:config, trebuie activate setările „gfx.webrender.all” și „gfx.webrender.enabled” sau să se pornească Firefox cu variabila de mediu MOZ_WEBRENDER=1. - Pentru utilizatorii din Germania, pe pagina noii file a fost adăugată o nouă secțiune cu articole recomandate de serviciul Pocket, care anterior fuseseră oferite utilizatorilor din SUA și Marea Britanie. Personalizarea legată de selecția de conținut se realizează pe partea clientului și fără transmiterea informațiilor despre utilizator către terți (în browser este încărcată întreaga listă de linkuri recomandate pentru ziua curentă, care este clasificată pe partea utilizatorului, bazându-se pe datele istoricului de vizionare). Pentru dezactivarea conținutului recomandat de Pocket, există o setare în configurator (Firefox Home Content/Recommended by Pocket) și opțiunea „browser.newtabpage.activity-stream.feeds.topsites” în about:config.
- Pentru sistemele Linux cu Wayland din cauza problemelor de stabilitate în mod implicit utilizarea mecanismului DMABUF pentru redarea video în texturi. Pentru activare în about:config este prevăzută variabila
„widget.wayland-dmabuf-video-textures.enabled”. - Pe pagina about:support a apărut un nou buton „Clear Startup cache” pentru a goli cache-urile care afectează încărcarea browserului. Butonul poate contribui la soluționarea unor probleme apărute la pornire.
- Linkuri cu atributul target="_blank" în etichete <a> și <area> acum în mod similar cu utilizarea atributului rel=„noopener”, adică sunt percepute ca pagini nesigure. Pentru paginile deschise prin aceste linkuri nu se setează proprietatea Window.opener și nu se deschide accesul la contextul din care a fost deschis linkul.
- Pentru iframe, în atributul sandbox a fost implementată opțiunea „allow-top-navigation-by-user-activation”, care permite navigarea pe pagina părinte din cadrul unui iframe izolat printr-un clic explicit al utilizatorului pe link, dar interzice redirecționarea automată. Opțiunea este utilă pentru plasarea bannerelor în iframe, permițând tranzitul către reclame de interes, dar blocând activitatea nedorită (de exemplu, redirecționarea automată către alte pagini).
- Au fost adăugate noi antete HTTP (COEP) și (COOP), permițând activarea unui mod de izolare cross-origin pentru utilizarea în siguranță a paginilor de operațiuni privilegiate, care poate fi folosit pentru a efectua atacuri pe canale externe, cum ar fi Spectre.
- S-a revenit la suportul pentru obiect (permite crearea de array-uri în memorie partajată), dezactivat după ce au fost descoperite atacuri de tip Spectre. Pentru a asigura protecția împotriva Spectre, obiectul SharedArrayBuffer este acum disponibil doar pe paginile care sunt procesate în modul de izolare cross-origin. De asemenea, în modul de izolare cross-origin, este permis acum să se folosească temporizatoare precise, neîngrădite, precum Performance.now().
Pentru a determina o astfel de izolare, trebuie folosite capetele menționate anterior Cross-Origin-Embedder-Policy și Cross-Origin-Opener-Policy. - A fost implementată metoda , care returnează primul Promise îndeplinit din listă.
- S-a implementat obiectul pentru a determina referințe slabe (weak reference) pentru obiectele JavaScript, permițând păstrarea unei referințe la un obiect, dar fără a bloca eliminarea obiectului aferent de către colectorul de gunoi.
- Au fost adăugate noi operatori de atribuire logică: „«, «” și „„. Operatorul „x ??= y” efectuează atribuirea doar dacă „x” ia valoarea null sau undefined. Operatorul „x ||= y” efectuează atribuirea doar dacă „x” are valoarea FALSE, iar în „x &&= y” — TRUE.
- Obiect , folosit pentru organizarea sincronizării blocărilor primordiale, poate fi aplicat acum nu doar la memorie partajată.
- În constructor s-a adăugat suport pentru opțiunile dateStyle și timeStyle.
- În WebAssembly s-a adăugat suport pentru (pentru o modelare mai eficientă a funcționării memcpy și memmove), (memorie partajată & Atomics) și (externref).
- În debugger-ul JavaScript stivă , permițând urmărirea evenimentelor executate asincron, timeout-urilor și promise-urilor. Lanțurile de apeluri asincrone sunt afișate în debugger împreună cu stiva obișnuită de apeluri, fiind de asemenea prezentate pentru erori în consola web și solicitări în interfața de inspectare a rețelei.
- În consola web, codurile de stare 4xx/5xx sunt afișate sub formă de erori, ceea ce facilitează evidențierea acestora pe un fundal comun. Pentru a facilita depanarea, cererea poate fi repetată sau pot fi vizualizate detaliile despre cerere și răspuns.
- Erorile JavaScript sunt acum afișate nu doar în consola web, ci și în debugger-ul JavaScript, cu evidențierea liniei aferente erorii în cod și afișarea unui tooltip cu informații suplimentare despre eroare.
- Fiabilitatea deschiderii codului sursă SCSS și CSS-in-JS în interfața de inspectare a fost îmbunătățită. Toate panourile au îmbunătățit procesarea corespondenței cu codul sursă original pe baza hărților sursă.
- În instrumentele pentru dezvoltatori web a fost adăugată o nouă panou Application, care oferă instrumente pentru inspectarea și depanarea service worker-ului și manifestelor aplicațiilor web.
- În sistemul de inspectare a rețelei s-au unit tab-urile Messages și Responses.
- În modul de design adaptiv (Responsive Design Mode), a fost asigurată simularea gesturilor tactile de tragere și alunecare prin mișcarea mouse-ului, dacă este activat modul de simulare pentru ecrane tactile.
- va fi ultima versiune din ramură. La începutul lunii august este planificat un transfer gradual al utilizatorilor către noua ediție, sub numele de cod Fenix și care a fost testată sub numele de Firefox Preview. Versiunile Firefox 79 pentru Android au fost bazate pe codul Fenix. Noua ediție motorul GeckoView, construit pe baza tehnologiilor Firefox Quantum, și un set de biblioteci , care sunt deja utilizate pentru construirea browserelor și . GeckoView este o variantă a motorului Gecko, prezentată ca o bibliotecă separată, care poate fi actualizată independent, iar Android Components include biblioteci cu componente standard care facilitează funcționarea tab-urilor, completarea automată a introducerii, sugestiile de căutare și alte funcționalități ale browser-ului. Pentru a funcționa, este necesară cel puțin Android 5.0 (suportul pentru Android 4.4.4 a fost întrerupt). Accesul la about:config este dezactivat din start.
Pe lângă noutăți și corectarea erorilor în Firefox 79 , dintre care 15 sunt etichetate ca fiind periculoase. 12 vulnerabilități (grupate sub ) sunt cauzate de probleme de gestionare a memoriei, cum ar fi depășiri de buffer și accesarea zonelor de memorie deja eliberate. Aceste probleme ar putea potențial permite executarea codului de către un atacator la deschiderea unor pagini special concepute.
Sursa: opennet.ro
