Hier erfahren Sie, wie Chrome Funktionen entfernt, die nicht gut funktionieren, und dabei Unterbrechungen für Endnutzer und Entwickler minimiert.
Chrome erhält ständig neue Funktionen, aber manchmal müssen Funktionen entfernt werden.
Durch das Entfernen von Funktionen kann die Komplexität des Browser-Quellcodes verringert werden. Außerdem können Browser sicherer gemacht werden, indem potenzielle Angriffsvektoren reduziert werden. Ein sorgfältig koordinierter Ansatz auf der gesamten Webplattform sorgt dafür, dass Browseranbieter Plattformfunktionen entfernen können, die nicht gut funktionieren, und gleichzeitig Unterbrechungen für Endnutzer und Entwickler minimieren.
Entfernung von Browserfunktionen
Wenn Browser Funktionen ohne Vorwarnung entfernen würden, würden Websites nicht mehr funktionieren und es wäre für Entwickler schwierig, die Migration zu alternativen Technologien zu planen. Stattdessen gehen Browseranbieter systematisch vor und stellen Warnungen, Supportressourcen und detaillierte Zeitpläne rechtzeitig vor der Entfernung von Funktionen bereit.
Einstellung und Entfernung
Das Entfernen einer Funktion aus Chrome erfolgt in zwei Hauptphasen:
- Einstellung:Entwickler werden darüber informiert, dass eine Funktion entfernt werden soll, und erhalten Ressourcen, die ihnen bei der Migration zu Alternativen helfen. Warnungen werden im Bereich „Probleme“ der Chrome-Entwicklertools angezeigt, wenn eingestellte Funktionen verwendet werden. Informationen zu Zeitplänen und Support für die Einstellung werden auf Chrome Platform Status sowie in Chrome for Developers-Artikeln und Blogposts veröffentlicht.
- Entfernung: Deaktivieren Sie die Funktion anfangs standardmäßig, erlauben Sie Entwicklern aber, sie vorübergehend weiter zu verwenden, indem sie ein Chrome-Flag festlegen oder an einem Test zur Einstellung teilnehmen. Sobald die Websites nicht mehr auf die deaktivierte Funktion angewiesen sind, entfernen Sie den Code.
Blink-Intents
Webbrowser, die auf Chromium basieren, z. B. Chrome, verwenden die Blink-Rendering-Engine, um Code und Ressourcen in Webseiten umzuwandeln, die Sie ansehen und mit denen Sie interagieren können. Wenn Entwickler eine Änderung an Blink vornehmen möchten, posten sie auf der Mailingliste blink-dev, um die Genehmigung für das weitere Vorgehen zu erhalten. Diese Mailinglistenbeiträge werden als Blink Intents bezeichnet.
Wenn Entwickler eine Funktion aus Blink einstellen und dann entfernen möchten, posten sie eine „Intent to Deprecate“-Nachricht auf der blink-dev-Mailingliste, gefolgt von einer „Intent to Remove“-Nachricht. Die beiden Intents werden oft als Intent to Deprecate and Remove (Absicht zur Einstellung und Entfernung) kombiniert.
Einstellung geplant
Eine Absicht zur Einstellung wird von Blink-Entwicklern veröffentlicht, wenn sie Entwickler darauf hinweisen möchten, dass eine Browserfunktion entfernt werden soll. Zu diesem Zeitpunkt ist die Funktion weiterhin verfügbar, aber Entwickler erhalten Unterstützung und Informationen von den Chrome-Entwicklertools sowie in Blogposts, auf chromestatus.com und in der Funktionsdokumentation auf MDN und an anderen Stellen.
Beispiel: Voraussichtliche Einstellung: Mutation Events
Absicht zur Entfernung
Eine „Intent to Remove“-Mitteilung wird veröffentlicht, wenn Blink-Entwickler eine Funktion deaktivieren und den zugehörigen Code entfernen möchten. Eine Absicht zur Entfernung wird oft mit einer Absicht zur Einstellung kombiniert, z. B. als „Absicht zur Einstellung und Entfernung“.
Beispiel: Einstellen und Entfernen geplant: Web SQL
Störungen für Nutzer und Entwickler minimieren
Chrome vermeidet es, Funktionen zu entfernen, wann immer möglich.
Chrome-Entwickler prüfen immer die Nutzungsraten von Funktionen und andere Daten, bevor sie mit der Einstellung fortfahren. Eine Funktion wird nur entfernt, wenn sie beispielsweise nur von einem sehr kleinen Teil der Nutzer verwendet wird und bessere Alternativen verfügbar sind oder wenn Ökosystemänderungen dazu führen, dass die Funktion jetzt schwerwiegende Sicherheitslücken aufweisen kann. Eine Funktion wird in der Regel nicht aus Chrome entfernt, wenn andere Browser sie weiterhin unterstützen: Die Entfernung von Funktionen muss zwischen Browser-Engines abgestimmt werden.
Neben den Intent-Beiträgen auf der blink-dev-Mailingliste werden Einstellungen auch im Chrome-Entwicklerblog angekündigt. Warnungen und Supportinformationen sind auch in den Chrome-Entwicklertools und in der Dokumentation zu den Funktionen verfügbar. Zeitpläne werden auch im chromestatus.com-Eintrag für eine eingestellte Funktion veröffentlicht.
Nicht mehr unterstützte Funktion vorübergehend wieder aktivieren
Deprecation Trials sind eine Art Origin Trial, mit der eine Funktion, die geändert oder vor dem Entfernen standardmäßig deaktiviert wurde, vorübergehend wieder aktiviert werden kann. Beispiel: Mutationsereignisse wurden entfernt, beginnend mit Chrome 127. Websites, die mehr Zeit für das Entfernen dieser Ereignisse benötigten, konnten sich für den Test zur Einstellung registrieren, um die Ereignisse auf bestimmten Websites vorübergehend wieder zu aktivieren und so mehr Zeit für die Migration zu alternativen Funktionen zu erhalten.
Für einige eingestellte Funktionen ist ein Chrome-Flag verfügbar, um einem einzelnen Nutzer vorübergehend Zugriff auf die Funktion zu gewähren, z. B. Entwicklern, die an der Migration zu Alternativen arbeiten.
Maßnahmen ergreifen
Als Entwickler müssen Sie auf Änderungen an der Webplattform vorbereitet sein.
Sie können die Versionshinweise für jede neue Version jedes Browsers lesen. Außerdem sollten Sie Vorabversionen von Browsern verwenden, um Ihre Websites zu testen und anzupassen, damit sie für anstehende Änderungen, einschließlich Entfernungen, bereit sind. Ihr Entwicklungsteam sollte mindestens sowohl den Chrome-Entwicklerkanal als auch die stabile Chrome-Version verwenden, um auf die Websites zuzugreifen, an denen Sie arbeiten. Als Entwickler können Sie mehrere Channels gleichzeitig ausführen. So können Sie Ihre Website mit zukünftigen Chrome-Versionen testen und sie in Chrome Stable aufrufen, dem Kanal, der wahrscheinlich von der überwiegenden Mehrheit Ihrer Nutzer verwendet wird.
Sehen Sie regelmäßig in der Chrome-Entwicklertools-Konsole nach, ob es Einstellungswarnungen gibt. DevTools bietet Informationen und Links zu Ressourcen, die Ihnen bei der Migration von eingestellten Funktionen helfen. Außerdem sollten Sie mehrere Chrome-Channels für automatisierte und manuelle Tests verwenden.