From 64fde5fd8c7372e4198e780408f84b5648bd5ce8 Mon Sep 17 00:00:00 2001 From: crazywhalecc Date: Thu, 4 Dec 2025 21:20:44 +0800 Subject: [PATCH] Allow loading config dir from registry --- src/StaticPHP/Registry/Registry.php | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/StaticPHP/Registry/Registry.php b/src/StaticPHP/Registry/Registry.php index 57ac82d1..1b579ef2 100644 --- a/src/StaticPHP/Registry/Registry.php +++ b/src/StaticPHP/Registry/Registry.php @@ -87,7 +87,11 @@ class Registry if (isset($data['package']['config']) && is_array($data['package']['config'])) { foreach ($data['package']['config'] as $path) { $path = self::fullpath($path, dirname($registry_file)); - PackageConfig::loadFromFile($path); + if (is_file($path)) { + PackageConfig::loadFromFile($path); + } elseif (is_dir($path)) { + PackageConfig::loadFromDir($path); + } } } @@ -95,7 +99,11 @@ class Registry if (isset($data['artifact']['config']) && is_array($data['artifact']['config'])) { foreach ($data['artifact']['config'] as $path) { $path = self::fullpath($path, dirname($registry_file)); - ArtifactConfig::loadFromFile($path); + if (is_file($path)) { + ArtifactConfig::loadFromFile($path); + } elseif (is_dir($path)) { + ArtifactConfig::loadFromDir($path); + } } } @@ -232,7 +240,7 @@ class Registry */ private static function requireClassFile(string $class, ?string $file_path, string $base_path, bool $auto_require): void { - if (!$auto_require || class_exists($class, true)) { + if (!$auto_require || class_exists($class)) { return; }