L'azienda Mozilla , nonostante l'uso di Firefox del sistema di componenti basato sull'API WebExtensions, gli sviluppatori non intendono seguire completamente la futura terza versione del manifesto delle estensioni Chrome. In particolare, in Firefox sarà mantenuto il supporto della modalità bloccante dell'API , che consente di modificare i contenuti ricevuti al volo ed è richiesto nei bloccatori di annunci e nei sistemi di filtraggio dei contenuti.
L'idea principale del passaggio all'API WebExtensions era l'unificazione della tecnologia di sviluppo delle estensioni per Firefox e Chrome, quindi nella sua attuale versione Firefox garantisce quasi al 100% la compatibilità con l'attuale seconda versione del manifesto di Chrome. Il manifesto definisce l'elenco delle funzionalità e delle risorse fornite alle estensioni. A causa delle misure restrittive introdotte nella terza versione del manifesto, percepite negativamente dagli sviluppatori di estensioni, Mozilla si allontanerà dalla pratica di seguire completamente il manifesto e non porterà in Firefox modifiche che violano la compatibilità con le estensioni.
Ricordiamo che , l'azienda Google intende interrompere il supporto in Chrome alla modalità di blocco dell'API webRequest, limitando la sua funzionalità a sola lettura e offrendo un nuovo API dichiarativo per la filtrazione dei contenuti . Se l'API webRequest permetteva di collegare gestori personalizzati con accesso completo alle richieste di rete e capaci di modificare al volo il traffico, la nuova API declarativeNetRequest fornisce accesso a un motore integrato universale per la filtrazione, che gestisce autonomamente le regole di blocco, senza consentire l'uso di algoritmi di filtrazione personalizzati e non permettendo di definire regole complesse che si sovrappongono a seconda delle condizioni.
Anche Mozilla sta valutando la possibilità di trasferire in Firefox il supporto per alcune delle altre modifiche dalla terza versione del manifesto di Chrome, che compromettono la compatibilità con le estensioni:
- Transizione all'esecuzione dei Service workers sotto forma di processi in background, il che richiederà agli sviluppatori di modificare il codice di alcune estensioni. Anche se il nuovo metodo è più ottimale dal punto di vista delle prestazioni, Mozilla sta considerando la possibilità di mantenere il supporto per l'esecuzione di pagine in background.
- Nuovo modello di richiesta di autorizzazioni granulari — un'estensione non potrà attivarsi immediatamente per tutte le pagine (rimossa l'autorizzazione «all_urls»), ma funzionerà solo nel contesto della scheda attiva, ossia l'utente dovrà confermare il funzionamento dell'estensione per ogni sito. Mozilla sta esplorando modi per rafforzare il controllo degli accessi senza distrarre continuamente l'utente.
- Modifica della gestione delle richieste Cross-origin — in base al nuovo manifesto, le autorizzazioni per gli script di elaborazione dei contenuti saranno sottoposte agli stessi vincoli di autorizzazione previste per la pagina principale in cui questi script sono integrati (ad esempio, se la pagina non ha accesso all'API di determinazione della posizione, anche lo script dell'estensione non otterrà questo accesso). La modifica è prevista per l'implementazione in Firefox.
- Divieto di eseguire codice caricato da server esterni (riferito a situazioni in cui un'estensione carica ed esegue codice esterno). Firefox già applica il blocco del codice esterno e gli sviluppatori di Mozilla non sono contrari a rafforzare tale protezione, applicando tecniche aggiuntive di tracciamento per il caricamento del codice proposte nella terza versione del manifesto.
Fonte: opennet.ru
