Es hört sich so an, als hätte das Original-Poster die API bereits effektiv, aber informell abgelehnt (alles, was als "alte API" bezeichnet wird). Bis es jedoch angekündigt wird und Benutzer benachrichtigt werden, dass eine API veraltet ist, wird sie nicht offiziell veraltet.
Veraltete API ist eine inaktive Zwischenstufe des Codes. Es sind die letzten Riten. Dies ist der Zeitraum, in dem Anwender / Verbraucher ihre Apps für eine neuere API neu konfigurieren und sich von dieser API verabschieden können, um Frieden mit ihr zu schließen. Einige APIs verweilen möglicherweise länger als andere, aber zu diesem Zeitpunkt wissen wir, dass ihre Zeit nicht lange ist.
Gelöschte API ist eine Code-Beerdigung. Es gibt nichts mehr, was es tun kann, als richtig angeordnet und angemessen erinnert.
Viele API- und Service-Entwickler entscheiden sich für Code-Beerdigungen, anstatt die letzten Riten durchzuführen. Ich halte das jedoch für etwas riskant. Wenn bei der erstmaligen Einführung der API / des Service oder durch Erneuerung irgendeine Art von Service oder Supportzusage gemacht wurde, möchten Sie diese Zusage möglicherweise für einen angemessenen Zeitraum einhalten, bevor Sie die Beerdigung durchführen.
Für Nicht-Service-Bibliotheken denke ich, dass eine Hauptversionsversion, unabhängig vom Zeitraum, wahrscheinlich eine mehr als akzeptable und faire Periode garantierter Abwärtskompatibilität ist. Darüber hinaus hängt es vom Einfluss und der Lobbyarbeit der Benutzer ab, die Lebensdauer über diesen Zeitraum hinaus zu verlängern. Und wundern Sie sich nicht, wenn es von Zeit zu Zeit Einwände gibt, weil unersetzliche Abhängigkeiten von Drittanbietern in der Schwebe liegen und an bestimmte Versionen bestimmter Plattformen gebunden sind.
Ich vermute, dass Sie sich für Services entweder einen Zeitraum von sechs Monaten oder einem Jahr ansehen möchten, einfach aufgrund der Abweichung, von wem und wie ein Service konsumiert werden kann, und der entsprechenden Abweichung im Entwicklungszyklus von konsumierendem Projekt zu konsumierendem Projekt. Viele Projekte, die Ihren Service in Anspruch nehmen könnten, könnten noch im Vorfeld umfangreich gestaltet werden und einen Veröffentlichungszyklus von mehr als einem Jahr einplanen. Die meisten Meinungen der Entwickler von außen legen nahe, dass diejenigen mit langen Zeitplänen für die Einhaltung Ihrer Zykluszeiten verantwortlich sind, und diese Projekte, die lange Zyklen in Anspruch nehmen, sollten einen schnelleren Release-Zyklus einführen, und das mag zutreffen. Letztendlich ist das Datum des Löschens jedoch etwas, über das Sie mit den Benutzern verhandeln müssen.
Eine gute, aber nicht kugelsichere Strategie für die Nichtbeachtung könnte darin bestehen, die Nichtbeachtung zu melden, den Zeitrahmen für die beabsichtigte Löschung zusammen mit einer Aufforderung zur Abgabe eines Kommentars oder Widerspruchs in einem Umfrageformat der betreffenden API-Abschnitte hervorzuheben. Wenn Sie keine Kontaktliste mit Benutzern haben, da Ihr Dienst mit [halb] anonymem Zugriff betrieben wird, sollten Sie die Protokolle nach häufigen und aktiven Benutzern durchsuchen und die Benachrichtigung an den Host- oder Domänenadministrator senden, um sie nach eigenem Ermessen weiterzuleiten.