Kāpēc Firefox nācās nogalināt jūsu iecienītāko paplašinājumu
Firefox 57 vai Quantum ir šeit, un tas ir milzīgs uzlabojums. Firefox beidzot ir nokļuvis Chrome ātruma ziņā, interfeiss ir daudz tīrāks, un ir dažas lieliskas jaunas funkcijas, lai sāktu darbu. Šeit nav daudz sūdzību.
Tikai jokoju. Internetā vienmēr ir kaut kas par ko sūdzēties.
Ar Firefox Quantum sūdzība de jour ir tā, ka daži paplašinājumi vairs nedarbojas. Daudzi augsta profila paplašinājumi, tostarp DownThemAll un Greasemonkey, pašlaik nedarbojas ar Quantum. Citi, tostarp Firebug un ScrapBook, visticamāk, nekad vairs nedarbosies.
Tas ir neapmierinoši, ja jūs esat kāda no šiem pakalpojumiem, un jūs varētu domāt, ka tas ir nedaudz patvaļīgs. Tas nav. Patīk vai nē, Mozilla uzskatīja, ka viņiem nav izvēles, bet atteikties no tā, ko tā sauc par „mantojuma” papildinājumiem, lai virzītos uz priekšu. Lūk, kāpēc.
Kā darbojās Legacy Firefox paplašinājumi
Tradicionālie Firefox paplašinājumi parasti tika rakstīti XML lietotāja interfeisa valodā (XUL). Šī ir valoda Firefox lietotāja saskarne ir veidota, un XUL balstīti paplašinājumi var tieši mainīt šo saskarni. Šiem pievienojumprogrammām bija arī gandrīz pilnīga piekļuve XPCOM, spēcīgajam komponentu objekta modelim, ko lietoja Firefox.
Ja tas aizgāja virs galvas, vienkārši ziniet to: Firefox paplašinājumiem bija vairāk vai mazāk pilnīga iespēja mainīt pārlūkprogrammu, un tie veica šīs izmaiņas tieši. Tieši tāpēc šie paplašinājumi bija tik spēcīgi: nebija noteiktas lietas, ko viņi varēja un nevarēja mainīt. Tas ir iemesls, kāpēc šiem paplašinājumiem bija tendence pārtraukt ar jauniem Firefox izlaidumiem.
Chrome vai Safari paplašinājumi nedarbojas šādā veidā. Šīs pārlūkprogrammas piedāvā paplašinājumu izstrādātājiem specifiskas API, ko tās var izmantot, kas nozīmē, ka ir noteikts saraksts, ko var paplašināt un ko nevar kontrolēt. Divus gadus Firefox ir piedāvājis līdzīgu API, ko sauc par WebExtensions, ko tā ir veicinājusi izstrādātājiem.
Tradicionālie paplašinājumi ir uzlaboti Firefox
Firefox Quantam nav pirmais atjauninājums, lai pārtrauktu paplašinājumu: tas jau gadiem ilgi ir bijis problēma. Tā kā Firefox paplašinājumi var tieši ietekmēt Firefox, pat nelielas Firefox izmaiņas varēja pārtraukt pievienojumprogrammu pilnīgu pārtraukšanu vai vienkārši ieviest veiktspējas sapping bugs.
Firefox lietotāji, nezinot paplašinājumus, radīja problēmu, pieņem, ka jaunā Firefox versija ir buggy, un no tās viedokļa tas bija. Firefox komanda darīs visu iespējamo, lai nodrošinātu, ka pirms jaunās versijas stumšanas darbojās populāri paplašinājumi, taču ir viegli iedomāties visu šo palēnināšanos..
WebExtensions API to visu atvieglo, konkrēti definējot, ko var paplašināt un kā to izdarīt. Tas nozīmē, ka izstrādātājiem ir jāpārliecinās, ka API darbojas pareizi, un neuztraucieties, ka veiktspējas maiņa vai lietotāja interfeisa izmaiņas izjauc konkrētus paplašinājumus. Rezultātā ilgākā laika posmā būtu jāpalielina paplašinājumi, bet, lai tas būtu iespējams, Mozilla bija jāatsakās no vecās paplašināšanas ekosistēmas.
Izmaiņas arī padara dažas no Quantam labākajām iespējām. Piemēram, daudzprocesa iespējas ir liela daļa no Firefox Quantam ātruma palielināšanas. Četri atsevišķi procesi apstrādā Firefox saskarni un cilnes, kas nozīmē, ka Firefox var izmantot visus četrus procesora kodolus, nevis tikai vienu. Tā ir realitāte, ka tradicionālā paplašināšanas ekosistēma vienkārši netika uzbūvēta, un ir grūti iedomāties, ka tā darbosies bez daudzām abstrakcijas slāņiem, kas neizbēgami palēnina lietas. Daudzas jaunākās Firefox izmaiņas tika aizturētas ar mantojuma papildinājumiem, kas nozīmē, ka ekosistēmai bija jāmaina, lai Firefox attīstītos.
Pārrobežu platformas saderība bija problēma
Reiz, pievienojumprogrammas sniedza cilvēkiem pārliecinošu iemeslu, lai pārlūkā Chrome izmantotu Firefox. Šajās dienās Chrome ir līderis attiecībā uz pievienojumprogrammām, bet Firefox var justies kā kapsēta, kurā jau nav pagājuši pagarinājumi..
Protams, ir daži Firefox paplašinājumi, kurus nevarat izmantot pārlūkā Chrome, bet Chrome ir lielāks ekosistēmu. Jaunais WebExtensions API to nenovērš nakti, bet tas atvieglo Chrome paplašinājumu pārnešanu uz Firefox, jo valodu, ko izmanto paplašinājumu rakstīšanai, ir pietiekami līdzīgs, lai padarītu virspusēju pārnešanu. Daudzos gadījumos ir vajadzīgi tikai daži tweaks, lai Chrome paplašinājums darbotos Firefox, kas nozīmē, ka nav neviena iemesla, kādēļ jūsu iecienītākie Chrome paplašinājumi nevar nonākt Firefox tagad, ja pieprasāt attīstītājam labi. Tam vajadzētu novest pie jaunu paplašinājumu plūdiem ekosistēmā, kas to atklāti varētu izmantot.
Firefox jau zaudēja lietotājus
Daži var apgalvot, ka Firefox zaudēs lietotājus bojāto paplašinājumu dēļ, bet ir vērts atzīmēt, ka Firefox jau ir zaudējis lietotājus pārlūkā Chrome satraucošā ātrumā, un tas ir bijis gadiem ilgi. Salīdzinošais ātrums un atsevišķu papildinājumu trūkums nepalīdzēja, un Firefox Quantum mērķis ir noteikt abas šīs problēmas.
Vai pastāv iespēja, ka tas aizkavēsies? Protams. Daži cilvēki liks kuģim uz Chrome, bet citi var meklēt senos dakšas, kas uztur veco paplašināšanas ekosistēmu. Bet tas nav kā lietas, kas iet labi. Firefox bija jāattīsta, lai paliktu atbilstošs, un tas ir, kā viņi nolēma to darīt.
Izstrādātājiem bija laiks pāriet uz jauno API
Daži lietotāji nepamanīs, ka šis slēdzis ir noticis pat tāpēc, ka paplašinājumi, ko viņi izmanto, jau izmanto WebExtension API. Citi paplašinājumi nav pārslēgti.
Tas varētu būt tāpēc, ka attīstītājs jau sen atteicās no paplašinājuma vai nejūtas vēlreiz, lai to izmantotu, lai izmantotu API. Dažos gadījumos API nepiedāvā pietiekamu kontroli, lai atkārtoti izveidotu sākotnējo paplašinājumu, tāpēc izstrādātāji atsakās no saviem projektiem. Un daudzos gadījumos konvertēšana vienkārši vēl nav pabeigta.
Neatkarīgi no tā, paplašinājumi nav pārkāpj, jo Mozilla pēkšņi mainīja kaut ko. WebExtensions ir daļa no Firefox jau divus gadus, un pagarinājumu termiņš tika paziņots pirms gada:
Līdz 2017. gada beigām un, atlaižot Firefox 57, mēs pāriet tikai uz WebExtensions un pārtrauksim ielādēt citus paplašinājumu tipus darbvirsmā.
Joprojām trūkst paplašinājuma, no kura atkarīgs? Šis Google dokuments izseko vairākus populārus paplašinājumus un nodrošina alternatīvas vairākiem izplatītiem. Šis saraksts ir noderīgs.