-
Notifications
You must be signed in to change notification settings - Fork 318
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Deprecate log::add methode #3003
Conversation
Salut, Quel est l'intérêt, l'avantage ? Ça ne me paraît pas dingue de forcer les changements dans tous le core et surtout tous les plugins. C'est une écriture plus courte aussi donc plus simple à l'usage. Je ne suis pas en faveur de ce PR. |
En fait je comprend pas l’intérêt de ta PR si l'objectif n'est pas de migrer vers la PSR-3 (ce qui serait une très bonne chose). On ne force rien pour le moment, la migration peut être progressive, et c'est bien tout l'intérêt ici. Ca reste fonctionnel tant qu’on ne supprime pas la méthode add(). Cette modication devrait être faite sur le passage a une version majeur. La migration du core n'a pas été faite ici pour éviter de surcharger la PR inutilement. J'ai volontairement ajouter un trigger_error pour indiquer aux développeurs le futur changement. La syntaxe est plus longue, mais c'est facilement géré avec un IDE via des snippets et la clarté et la standardisation apportent plus de valeur que la concision. self::$cmdLogger = log::getLogger('cmd');
// ...
self::$cmdLogger->info('Mon message'); On peut utiliser directement les fonctions rajoutées par ta PR (debug, notice, info...) ce qui permet aussi de raccourcir le code en supprimant le premier paramètre. |
L'intérêt de mon code c'est de pouvoir utiliser des class externes qui demandent une compatibilité avec cette interface (je l'ai fait avec succès dans plusieurs plugins) la question n'était pas de savoir si une compatibilité / implémentation standard est intéressante (ca c'était l'objet de ma PR) mais de savoir en quoi supprimer l'implémentation historique apporte un avantage? que va-t-on gagner? Même ne faire que flag ceci en deprecated avec un trigger_error va avoir des conséquences désastreuses en nombres de questions sur community, et je me répète, quasi jamais il ne sera possible de supprimer cette implémentation. Je confirme que je suis toujours contre. |
Merci pour ces éclaicissements, je comprend mieux ce que tu souhaitais faire et ton opposition à déprecier cette methode. Rien n'empeche d'avoir ces 2 méthodes en paralléle. Je vais donc fermer cette PR. Pour le besoin que tu avais, il me semble qu'un pattern adapter aurait été plus approprié. Cela aurait permis, en premier lieu, d'éviter cette incompréhension, d'avoir une classe dédié à ce besoin spécifique de brancher du psr-3 a d'autre classes, et d'éviter la pollution de la classe log historique avec du code spécifique. |
Pour info, j'ai créé une nouvelle PR sur mon fork (https://github.com/kwizer15/core/pull/2/files) qui propose l'implémentation du pattern adapter dont je parlais. Cette approche permet d'avoir une meilleure séparation des responsabilités tout en gardant intacte la classe historique. |
Description
Faisant suite la PR #2892
Cette PR déprécié la méthode statique
log::add()
au profit de la méthode standardisée PSR-3log::getLogger()->log()
.Changements
@deprecated
sur la méthodeadd()
trigger_error()
add()
versgetLogger()->log()
Migration
Pour mettre à jour votre code, remplacez :
par :
Suggested changelog entry
Deprecate: mark log::add() method as deprecated
Related issues/external references
Fixes #
Types of changes
PR checklist