dbalabka / php-enumeration

Implementation of enumeration classes in PHP. The better alternative for enums
MIT License
53 stars 4 forks source link

StaticConstructorLoader is not a correct decorator. #19

Closed oleg-andreyev closed 4 years ago

oleg-andreyev commented 4 years ago

StaticConstructorLoader is not the right decorator it does not provide the same interface/contract of target decorated class, it does not "proxy" all methods class to target

due to above, it's breaking

``` backend git:(master) ✗ XDEBUG_CONFIG="remote_host=127.0.0.1 remote_enable=0" ./bin/console make:migration -vvv 2020-02-08T20:26:59+00:00 [debug] Notified event "console.command" to listener "Symfony\Component\HttpKernel\EventListener\DebugHandlersListener::configure". 2020-02-08T20:26:59+00:00 [debug] Notified event "console.command" to listener "Sentry\SentryBundle\EventListener\ConsoleListener::onConsoleCommand". 2020-02-08T20:26:59+00:00 [error] Error thrown while running command "make:migration -vvv". Message: "Could not find a Composer autoloader that autoloads from 'App\'" 2020-02-08T20:26:59+00:00 [debug] Notified event "console.error" to listener "Sentry\SentryBundle\EventListener\ErrorListener::onConsoleError". 2020-02-08T20:26:59+00:00 [debug] Notified event "console.error" to listener "Symfony\Bundle\FrameworkBundle\EventListener\SuggestMissingPackageSubscriber::onConsoleError". 2020-02-08T20:26:59+00:00 [debug] Notified event "console.error" to listener "Symfony\Bundle\MakerBundle\Event\ConsoleErrorSubscriber::onConsoleError". 2020-02-08T20:26:59+00:00 [debug] Notified event "console.error" to listener "Symfony\Component\Console\EventListener\ErrorListener::onConsoleError". 2020-02-08T20:26:59+00:00 [debug] Command "make:migration -vvv" exited with code "1" 2020-02-08T20:26:59+00:00 [debug] Notified event "console.terminate" to listener "Symfony\Bundle\MakerBundle\Event\ConsoleErrorSubscriber::onConsoleTerminate". 2020-02-08T20:26:59+00:00 [debug] Notified event "console.terminate" to listener "Symfony\Component\Console\EventListener\ErrorListener::onConsoleTerminate". In ComposerAutoloaderFinder.php line 45: [Exception] Could not find a Composer autoloader that autoloads from 'App\' Exception trace: at /Users/oandreyev/Development/project/vendor/symfony/maker-bundle/src/Util/ComposerAutoloaderFinder.php:45 Symfony\Bundle\MakerBundle\Util\ComposerAutoloaderFinder->getClassLoader() at /Users/oandreyev/Development/project/vendor/symfony/maker-bundle/src/Util/AutoloaderUtil.php:106 Symfony\Bundle\MakerBundle\Util\AutoloaderUtil->getClassLoader() at /Users/oandreyev/Development/project/vendor/symfony/maker-bundle/src/Util/AutoloaderUtil.php:87 Symfony\Bundle\MakerBundle\Util\AutoloaderUtil->isNamespaceConfiguredToAutoload() at /Users/oandreyev/Development/project/vendor/symfony/maker-bundle/src/FileManager.php:171 Symfony\Bundle\MakerBundle\FileManager->isNamespaceConfiguredToAutoload() at /Users/oandreyev/Development/project/vendor/symfony/maker-bundle/src/Command/MakerCommand.php:79 Symfony\Bundle\MakerBundle\Command\MakerCommand->interact() at /Users/oandreyev/Development/project/vendor/symfony/console/Command/Command.php:240 Symfony\Component\Console\Command\Command->run() at /Users/oandreyev/Development/project/vendor/symfony/console/Application.php:1030 Symfony\Component\Console\Application->doRunCommand() at /Users/oandreyev/Development/project/vendor/symfony/framework-bundle/Console/Application.php:97 Symfony\Bundle\FrameworkBundle\Console\Application->doRunCommand() at /Users/oandreyev/Development/project/vendor/symfony/console/Application.php:272 Symfony\Component\Console\Application->doRun() at /Users/oandreyev/Development/project/vendor/symfony/framework-bundle/Console/Application.php:83 Symfony\Bundle\FrameworkBundle\Console\Application->doRun() at /Users/oandreyev/Development/project/vendor/symfony/console/Application.php:148 Symfony\Component\Console\Application->run() at /Users/oandreyev/Development/project/bin/console:42 make:migration [--db DB] [--em [EM]] [--shard SHARD] [-h|--help] [-q|--quiet] [-v|vv|vvv|--verbose] [-V|--version] [--ansi] [--no-ansi] [-n|--no-interaction] [-e|--env ENV] [--no-debug] [--] ➜ backend git:(master) ✗ ```

https://github.com/symfony/maker-bundle/blob/91fbc2d9423a1033021b54799e9b070540008733/src/Util/ComposerAutoloaderFinder.php#L86-L91