Zhvilluesit e Mozilla kanë përditësuar informacionin mbi planet që lidhen me mbështetjen në Firefox të versioneve të dytë dhe të tretë të manifestit Chrome. Google synon që në qershor të këtij viti të ndërpresë mbështetjen për shtesat që përdorin versionin e dytë të manifestit në publikimet testuese të Chrome 127 (Dev, Canary dhe Beta). Në degën stabile, mbështetja për versionin e dytë të manifestit nuk do të ndërpritet më herët se në korrik.
Nga ana e saj, Mozilla nuk do ta ndërpresë në një të ardhme të parashikueshme mbështetjen për versionin e dytë të manifestit dhe do të ruajë mundësinë për të ekzekutuar shtesa që përdorin funksionalitete të padisponueshme në versionin e tretë të manifestit. Mbetet në fuqi edhe vendimi për të mos ofruar në Firefox përputhshmëri të plotë me versionin e tretë të manifestit Chrome. Në Firefox do të ruhet API i plotë webRequest, i cili në Chrome do të kalojë në modalitet vetëm për lexim.
NĂ« Firefox gjithashtu do tĂ« ruhet, pĂ«rmes mekanizmit Event Pages, mbĂ«shtetja pĂ«r ekzekutimin e skripteve nĂ« sfond tĂ« bazuara nĂ« DOM, ndĂ«rsa nĂ« versionin e tretĂ« tĂ« manifestit nĂ« vend tĂ« tyre parashikohet pĂ«rdorimi i Service Workers. Skriptet nĂ« sfond tĂ« bazuara nĂ« Service Workers ende nuk mbĂ«shteten nĂ« Firefox, por zhvilluesve do tâu jepet mundĂ«sia tĂ« pĂ«rcaktojnĂ« nĂ« shtesĂ« si njĂ« pĂ«rpunues tĂ« bazuar nĂ« Event Pages, ashtu edhe skripte tĂ« bazuara nĂ« Service Workers, gjĂ« qĂ« do tĂ« lejojĂ« krijimin e shtesave qĂ« pĂ«rputhen me versionin e tretĂ« tĂ« manifestit dhe funksionojnĂ« si nĂ« Chrome ashtu edhe nĂ« Firefox.
Manifesti Chrome përcakton funksionalitetet dhe burimet e disponueshme për shtesat e shkruara duke përdorur API WebExtensions. Që nga versioni 57, Firefox ka kaluar plotësisht në përdorimin e API WebExtensions për zhvillimin e shtesave dhe ka ndërprerë mbështetjen për teknologjinë XUL. Kalimi te WebExtensions bëri të mundur unifikimin e zhvillimit të shtesave me platformat Chrome, Opera, Safari dhe Edge, thjeshtoi portimin e shtesave midis shfletuesve të ndryshëm web dhe ofroi mundësinë për të përdorur plotësisht mënyrën e punës me shumë procese (shtesat WebExtensions mund të ekzekutohen në procese të veçanta, të izoluara nga pjesët e tjera të shfletuesit). Për të unifikuar zhvillimin e shtesave me shfletuesit e tjerë, në Firefox sigurohet pothuajse përputhshmëri e plotë me versionin e dytë të manifestit Chrome.
Në kuadër të nismës për ta bërë më të thjeshtë krijimin e shtesave të sigurta dhe me performancë të lartë, si dhe për ta vështirësuar zhvillimin e shtesave të pasigurta dhe të ngadalta, Google ka zhvilluar versionin e tretë të manifestit. Pakënaqësia kryesore ndaj versionit të tretë të manifestit lidhet me kalimin e API webRequest në modalitet vetëm për lexim, i cili lejonte lidhjen e përpunuesve të vet me qasje të plotë në kërkesat e rrjetit dhe aftësi për të modifikuar trafikun në kohë reale. Në vend të API webRequest, në versionin e tretë të manifestit është shtuar API declarativeNetRequest, i kufizuar në funksionalitet, që ofron qasje në një motor të integruar filtrimi, i cili përpunon vetë rregullat e bllokimit dhe nuk lejon përdorimin e algoritmeve të personalizuara të filtrimit.
Ndër veçoritë e zbatimit të versionit të tretë të manifestit në Firefox:
- ĂshtĂ« shtuar njĂ« API i ri deklarativ pĂ«r filtrimin e pĂ«rmbajtjes, por ndryshe nga Chrome, nuk Ă«shtĂ« ndĂ«rprerĂ« mbĂ«shtetja pĂ«r mĂ«nyrĂ«n e vjetĂ«r bllokuese tĂ« funksionimit tĂ« API webRequest.
- ĂshtĂ« zbatuar mekanizmi Event Pages, mĂ« i njohur pĂ«r zhvilluesit web, i cili nuk kĂ«rkon ripĂ«rpunim tĂ« plotĂ« tĂ« shtesave dhe heq kufizimet qĂ« lidhen me pĂ«rdorimin e Service Workers. Event Pages do tĂ« mundĂ«sojĂ« pĂ«rshtatjen e shtesave ekzistuese me faqe nĂ« sfond me kĂ«rkesat e versionit tĂ« tretĂ« tĂ« manifestit, duke ruajtur njĂ«kohĂ«sisht qasjen nĂ« tĂ« gjitha mundĂ«sitĂ« e nevojshme pĂ«r punĂ«n me DOM.
- Modeli i ri i kĂ«rkesĂ«s pĂ«r autorizim me granuar â shtesa nuk do tĂ« aktivizohet menjĂ«herĂ« pĂ«r tĂ« gjitha faqet (uli autorizimin «all_urls»), por do tĂ« punojĂ« vetĂ«m nĂ« kontekstin e skedĂ«s aktive, domethĂ«nĂ«, pĂ«rdoruesi do tĂ« duhet tĂ« konfirmojĂ« funksionimin e shtesĂ«s pĂ«r çdo faqe. NĂ« Firefox, tĂ« gjitha kĂ«rkesat pĂ«r qasje nĂ« tĂ« dhĂ«nat e faqes do tĂ« shqyrtohen si tĂ« panevojshme, dhe vendimi pĂ«rfundimtar mbi dhĂ«nien e aksesit do tĂ« merret nga pĂ«rdoruesi, i cili do tĂ« mund tĂ« vendosĂ« nĂ« mĂ«nyrĂ« selektive se cilĂ«s shtesĂ« t'i jepet akses nĂ« tĂ« dhĂ«nat e tij nĂ« kĂ«tĂ« ose atĂ« faqe.
PĂ«r menaxhimin e lejeve, nĂ« ndĂ«rfaqe Ă«shtĂ« shtuar butoni «Unified Extensions», i cili lejon kontroll tĂ« drejtpĂ«rdrejtĂ« mbi faqet te tĂ« cilat ka qasje çdo shtesĂ« â pĂ«rdoruesi mund tâi japĂ« ose tâia heqĂ« qasjen njĂ« shtese pĂ«r çdo faqe. Menaxhimi i lejeve zbatohet vetĂ«m pĂ«r shtesat e bazuara nĂ« versionin e tretĂ« tĂ« manifestit; pĂ«r shtesat nĂ« versionin e dytĂ« tĂ« manifestit nuk ofrohet menaxhim i hollĂ«sishĂ«m i qasjes nĂ« faqe.

- Ndryshimi i trajtimit tĂ« kĂ«rkesave Cross-origin â sipas manifestit tĂ« ri, pĂ«r skriptet e trajtimit tĂ« pĂ«rmbajtjes do tĂ« aplikohen tĂ« njĂ«jtat kufizime autorizimi si pĂ«r faqen kryesore, nĂ« tĂ« cilĂ«n integrohen kĂ«to skripte (pĂ«r shembull, nĂ«se faqja nuk ka akses nĂ« API-nĂ« pĂ«r pĂ«rcaktimin e vendit, atĂ«herĂ« skripti i shtesĂ«s nuk do ta ketĂ« kĂ«tĂ« akses gjithashtu). Ky ndryshim Ă«shtĂ« realizuar plotĂ«sisht nĂ« Firefox.
- API i bazuar në Promise. Firefox e mbështet këtë API edhe për versionin e tretë të manifestit.
- Ndalesa e ekzekutimit të kodit të ngarkuar nga burime të jashtme serverësh (bëhet fjalë për situatat kur shtesa ngarkon dhe ekzekuton kod të jashtëm). Në Firefox zbatohet bllokimi i kodit të jashtëm dhe zhvilluesit e Mozilla kanë shtuar teknika shtesë për gjurmimin e ngarkimeve të kodit. Për skriptet e përpunimit të përmbajtjes është paraqitur një politikë e veçantë për kufizimin e qasjes në përmbajtje (CSP, Content Security Policy).
Burimi: opennet.ru

