]> git.mxchange.org Git - friendica.git/commitdiff
Deprecate providing LoggerInterface via addon strategies
authorArt4 <art4@wlabs.de>
Fri, 7 Feb 2025 14:50:56 +0000 (14:50 +0000)
committerArt4 <art4@wlabs.de>
Fri, 7 Feb 2025 14:50:56 +0000 (14:50 +0000)
src/Core/Addon/Model/AddonLoader.php

index 4686f7e74b0f1a6fb98d8b1769ce90591151d5bb..8ef27cb5a7083cce86463cd078292004ca13cecc 100644 (file)
@@ -10,7 +10,9 @@ namespace Friendica\Core\Addon\Model;
 use Friendica\Core\Addon\Capability\ICanLoadAddons;
 use Friendica\Core\Addon\Exception\AddonInvalidConfigFileException;
 use Friendica\Core\Config\Capability\IManageConfigValues;
+use Friendica\Core\Logger\Factory\LoggerFactory;
 use Friendica\Util\Strings;
+use Psr\Log\LoggerInterface;
 
 class AddonLoader implements ICanLoadAddons
 {
@@ -48,6 +50,19 @@ class AddonLoader implements ICanLoadAddons
                                throw new AddonInvalidConfigFileException('Error loading config file ' . $configFile);
                        }
 
+                       if ($configName === 'strategies') {
+                               foreach ($config as $classname => $rule) {
+                                       if ($classname === LoggerInterface::class) {
+                                               @trigger_error(sprintf(
+                                                       'Providing a strategy for `%s` is deprecated since 2025.02, please provide an implementation for `%s` via `dependency.config.php` instead in %s addon.',
+                                                       LoggerInterface::class,
+                                                       LoggerFactory::class,
+                                                       $addonName,
+                                               ), \E_USER_DEPRECATED);
+                                       }
+                               }
+                       }
+
                        $returnConfig = array_merge_recursive($returnConfig, $config);
                }