Preskoči na sadržaj
Webjak signalprovjerenopodrška provjerena 25. avgust 2026

Firefox će isporučiti JPEG XL, ali je dekoder prvo morao da se prepiše u Rustu

Mozilla je 24. avgusta objavila namjeru da ga isporuči. Uslov koji je postavila prije pet godina je ispunjen: Google Research je dekoder napravio iznova u Rustu, jer je 100.000 redova višenitnog C++-a bila prevelika površina za napad.

Potpisuje Redakcija WebAiRadarObjavljeno 2 min čitanjanapisao model
Slika: Mozilla Hacks

Izvor

Intent to Ship: JPEG XL

Mozilla Hacks · Original objavljen 24. avgust 2026

Firefox JPEG XL drži iza zastavice od 2021. i za sve to vrijeme ga nije isporučio. Razlog nikad nije bio format nego dekoder: 100.000 redova višenitnog C++-a, koji raščlanjuje datoteke s otvorenog interneta, unutar procesa pregledača. Mozilla na to nije odgovorila odbijanjem nego izazovom — napravite bezbjedan, brz, malen i saglasan dekoder u Rustu, pa ćemo ga isporučiti. Google Research je napravio jxl-rs, i on je sada srce podrške za JPEG XL u Firefoxu.

Šta se zapravo isporučuje

Namjera da se isporuči je javna obaveza, ne izdanje. Mozilla piše da i Chrome namjerava da ga isporuči i da Safari već nosi djelimičnu izvedbu — isporučio je JPEG XL 2023, ali bez postupnog iscrtavanja. Na osnovu toga Mozilla očekuje da format bude podržan u svim pregledačima prije kraja godine.

Uz dekoder je Mozilla tražila i provjere saglasnosti, kao oblast istraživanja u okviru Interopa 2026. To znači više nego što zvuči: format slike koji se u tri pregledača dekoduje različito je format koji niko ne može da koristi u produkciji.

Provjereno na webstatus.dev 25. avgusta 2026: JPEG XL je Baseline ograničeno. Safari i Safari na iOS-u ga isporučuju od 18. septembra 2023; Chrome i Firefox ne. AVIF je, nasuprot tome, Baseline široko dostupan od 25. januara 2024. Danas ta dva formata u produkciji nisu zamjenjiva, šta god pisalo u objavama o namjeri.

AVIF ili JPEG XL: brojke kažu da zavisi

Internet prvi put ima dva savremena formata koja oba vrijede, a pošten odgovor na pitanje koji od njih izabrati jeste da pobjeđuju na različitim mjestima. Mozilla je objavila mjerenja nad fotografijom, ocijenjena mjerom SSIMULACRA 2.

Pri srednje visokom kvalitetu (ocjena 62,8) AVIF je 116 kB, a JPEG XL 134 kB. Pri vrlo visokom (ocjena 80) odnos je 227 kB prema 264 kB. Bez gubitka se sve okreće: 1,76 MB za AVIF, 1,45 MB za JPEG XL i 1,55 MB za WebP bez gubitka. Na snimku ekrana je razlika još veća — pri ocjeni 78 AVIF je 11,6 kB, a JPEG XL 23,8 kB, ali bez gubitka je 164 kB prema 92 kB.

  • JPEG XL: slike bez gubitka, postupno iscrtavanje i ponovno sažimanje postojećih JPEG datoteka bez gubitka kvaliteta.
  • AVIF: fotografije u kvalitetu za internet i slike koje miješaju oštre ivice s ravnim površinama.

Postupno iscrtavanje je dio koji se vidi

Postupno iscrtavanje znači da se slika počinje crtati dok se još preuzima. U Mozillinom primjeru cijela slika je 135 kB, a poslije svega nekoliko kilobajta čitalac već razaznaje šta je na njoj. AVIF to podržava samo osnovno, i zato je Mozilla tražila da uđe u izvedbu u Rustu.

Kod vrlo velikih slika ta razlika zna da bude važnija od veličine datoteke. Savjet iz objave nije da se proglasi pobjednik nego da se mjeri na sopstvenom skupu slika, u kvalitetu koji čitaoci stvarno dobijaju, i da se računa na velike gustine ekrana.

Napravite bezbjedan, brz, malen i saglasan JPEG XL dekoder u Rustu, pa ćemo ga isporučiti.
Mozillin izazov timu za JPEG XL u Google Researchu

Povezano

Prefiksni selektor, crtica pa zvjezdica, između dvije uvećane vitičaste zagrade.
Websrednji signal

Selektor prefiksa klase sada je tekst specifikacije u nacrtu Selectors 5

Nacrt od 18. avgusta dodaje odjeljak 2.1, selektori prefiksa klase, i definiše .foo-* tako da pogađa svaku klasu koja počinje tim prefiksom. Zamjenjuje zaobilaznice s atributskim selektorom koje nosi svaki dizajn sistem. Nijedan pregledač to još ne podržava, a pravilo poklapanja ima ivicu na kojoj će se ljudi saplitati: .foo-* ne pogađa foo--bar.

CSS Working Groupprovjereno

Natpis Baseline uz znak s dvije kvačice, na blijedozelenoj podlozi.
Websrednji signal

Kako uvesti Baseline u CI, pa da pregledač prestane da odlučuje umjesto tebe

Trebaju ti tri paketa i dvadesetak minuta. Jedno podešavanje kaže gradnji koje pregledače gađaš, linter upozori kad stilski list pređe tu liniju, a CI to kaže na zahtjevu za spajanje umjesto da ti korisnik kaže u prijavi greške šest sedmica kasnije.

web.dev, npmprovjereno