Skip to content

Deprecations (standardisiert) loggen

Wenn Funktionen in einem QUIQQER Paket aufgerufen werden, die deprecated sind, dann bekommt man das aktuell nur als Entwickler in seiner IDE mit, wenn man explizit danach "sucht".

Es wäre hilfreich, wenn die Verwendung von deprecated Funktionen mit dem Log-Level E_USER_DEPRECATED geloggt werden würden.

Damit die so generierten Log-Einträge leichter "analysiert" werden können, sollte ihr Format einem Standard folgen.
Dazu würde sich die Verwendung des Pakets symfony/deprecation-contracts anbieten, das standardmäßig bereits (durch andere Pakete) in einem QUIQQER System installiert ist.
Das Paket bietet die Funktion trigger_deprecation, das einen entsprechenden Error triggert.

Zusätzlich sollte die bereits existierende Methode \QUI\System\Log::addDeprecated dann so angepasst werden, dass sie den standardisierten Weg verwendet.

tl;dr

  1. Deprecated Funktionen nicht nur per @deprecated markieren sondern auch einen entsprechenden Error triggern bzw. Log-Eintrag schreiben
  2. Log-Einträge vom Typ "Deprecated" in einem standardisierten Format (bspw. per symfony/deprecation-contracts) loggen

Was ist eure Meinung dazu, @henbug @mor & @peat?