Ritiro e rimozione di funzionalità in Chrome

Scopri come Chrome rimuove le funzionalità che non funzionano bene, riducendo al minimo le interruzioni per gli utenti finali e gli sviluppatori.

Chrome aggiunge continuamente nuove funzionalità, ma a volte è necessario rimuovere alcune funzionalità.

La rimozione delle funzionalità può ridurre la complessità del codice base del browser e contribuire a mantenere i browser sicuri riducendo i potenziali vettori di attacco. Un approccio attentamente coordinato sulla piattaforma web garantisce che i fornitori di browser possano rimuovere le funzionalità della piattaforma che non funzionano bene, riducendo al minimo le interruzioni per gli utenti finali e gli sviluppatori.

Rimozione delle funzionalità del browser

Se i browser rimuovessero le funzionalità senza preavviso, i siti web smetterebbero di funzionare e gli sviluppatori avrebbero difficoltà a pianificare la migrazione a tecnologie alternative. I fornitori di browser adottano invece un approccio sistematico, fornendo avvisi, risorse di supporto e cronologie dettagliate con largo anticipo rispetto alla rimozione delle funzionalità.

Ritiro e rimozione

La rimozione di una funzionalità da Chrome avviene in due fasi principali:

  • Ritiro:avvisa gli sviluppatori che una funzionalità verrà rimossa e fornisci risorse per aiutare i siti a eseguire la migrazione ad alternative. Gli avvisi vengono visualizzati nel riquadro Problemi di Chrome DevTools quando vengono utilizzate funzionalità deprecate e le informazioni su tempistiche e assistenza per il ritiro vengono pubblicate su Stato della piattaforma Chrome e negli articoli e nei post del blog Chrome for Developers.
  • Rimozione: inizialmente, disattiva la funzionalità per impostazione predefinita, ma consenti agli sviluppatori di continuare a utilizzarla temporaneamente impostando un flag di Chrome o partecipando a una prova di ritiro. Una volta che i siti non si basano più sulla funzionalità disattivata, rimuovi il codice.

I browser web basati su Chromium, come Chrome, utilizzano il motore di rendering Blink per trasformare il codice e le risorse in pagine web che puoi visualizzare e con cui puoi interagire. Quando gli ingegneri vogliono apportare una modifica a Blink, pubblicano un post nella mailing list blink-dev per ottenere l'approvazione per procedere. Questi post delle mailing list sono chiamati Blink Intents.

Quando gli ingegneri intendono ritirare e poi rimuovere una funzionalità da Blink, pubblicano un avviso di ritiro nell'elenco di distribuzione blink-dev, seguito da un avviso di rimozione. I due intent vengono spesso combinati come Intent to Deprecate and Remove.

Intenzione di ritiro

Un Intent to Deprecate viene pubblicato dagli ingegneri di Blink quando vogliono iniziare ad avvisare gli sviluppatori che è prevista la rimozione di una funzionalità del browser. A questo punto, la funzionalità continuerà a essere disponibile, ma gli sviluppatori riceveranno assistenza e informazioni da Chrome DevTools, nonché in post del blog, su chromestatus.com e nella documentazione delle funzionalità su MDN e altrove.

Esempio: Intenzione di ritiro: eventi di mutazione

Intenzione di rimozione

Un Intent to Remove viene pubblicato quando gli ingegneri di Blink intendono disattivare una funzionalità e rimuovere il codice corrispondente. Un avviso di rimozione viene spesso combinato con un avviso di ritiro, come avviso di ritiro e rimozione.

Esempio: Intent to Deprecate and Remove: Web SQL

Ridurre al minimo le interruzioni per utenti e sviluppatori

Chrome evita di rimuovere funzionalità quando possibile.

Gli ingegneri di Chrome esaminano sempre i tassi di utilizzo delle funzionalità e altri dati prima di procedere con le deprecazioni. Una funzionalità verrà rimossa solo se, ad esempio, viene utilizzata solo da una percentuale molto ridotta di utenti e sono disponibili alternative migliori oppure se le modifiche all'ecosistema comportano la possibilità che la funzionalità possa ora presentare gravi vulnerabilità di sicurezza. Una funzionalità non viene in genere rimossa da Chrome se altri browser prevedono di continuare a supportarla: la rimozione della funzionalità deve essere coordinata tra i motori dei browser.

Oltre ai post Intent nella mailing list blink-dev, i ritiri vengono annunciati sul blog per sviluppatori di Chrome. Avvisi e informazioni di assistenza sono disponibili anche in Chrome DevTools e nella documentazione delle funzionalità. Le tempistiche vengono pubblicate anche nella voce chromestatus.com per una funzionalità ritirata.

Riattivare temporaneamente una funzionalità ritirata

Le prove di ritiro sono un tipo di prova dell'origine che consente di riattivare temporaneamente una funzionalità che è stata modificata o disattivata per impostazione predefinita prima della rimozione. Ad esempio, a partire da Chrome 127 sono stati rimossi i mutation event. I siti che necessitavano di tempo aggiuntivo prima di rimuovere questi eventi potevano registrarsi alla prova di ritiro per riattivare temporaneamente gli eventi su siti specifici, in modo da avere più tempo per eseguire la migrazione a funzionalità alternative.

Per alcune funzionalità ritirate, viene reso disponibile un flag di Chrome per fornire l'accesso temporaneo alla funzionalità a un singolo utente, ad esempio gli sviluppatori che lavorano alla migrazione ad alternative.

Intervieni

In qualità di sviluppatore, devi prepararti alle modifiche della piattaforma web.

Puoi controllare le note di rilascio di ogni nuova versione di ogni browser, ma devi anche utilizzare i canali di browser pre-stabili per testare e adattare i tuoi siti in modo che siano pronti per le modifiche imminenti, comprese le rimozioni. Come minimo, assicurati che il tuo team di sviluppo utilizzi sia il canale Dev di Chrome sia Chrome stabile per accedere ai siti su cui lavora. In qualità di sviluppatore, puoi eseguire più canali contemporaneamente. In questo modo puoi testare le versioni future di Chrome, nonché visualizzare il tuo sito in Chrome Stable, che è probabilmente il canale utilizzato dalla maggior parte degli utenti.

Controlla regolarmente la console Chrome DevTools per verificare la presenza di avvisi di ritiro. DevTools fornisce informazioni e link a risorse per aiutarti a eseguire la migrazione dalle funzionalità ritirate. Devi anche utilizzare più canali Chrome per i test automatici e manuali.

Scopri di più