-
Notifications
You must be signed in to change notification settings - Fork 407
Description
Following the discussion here #470 (comment)
I'm trying to use frankenphp php-cli to run composer commands.
I just ran ./frankenphp php-cli ./composer.phar create-project laravel/laravel example-app In an Empty Folder.
And get the following error. This is a composer command to install laravel project.
Edit 1
Very strange behavior just unfolded.
Note: I've system-level composer & php8.3 already installedI renamed php folder /etc/php/8.3 to
8.3.offto be sure it is using Franky's build-in php
Hence the error after the above command. BUT If I keep the system php as it is (not renamed off), then
the installer worked fine.
To me this feels like the composer or franken php-cli used system's php somehow, maybe?
Edit 2
I ran php version and path in a file and here's the output.
$ ./frankenphp php-cli info.php
PHP Version: 8.3.1
PHP Path: /var/www/html/test/./frankenphp$ php info.php
PHP Version: 8.3.1
PHP Path: /usr/bin/php
Edit 3
/frankenphp php-cliuses Web SAPI
phpuses CLI
That difference is the cause maybe?
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Fatal error: Uncaught ReflectionException: Class "config" does not exist in /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Container/Container.php:912
Stack trace:
#0 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Container/Container.php(912): ReflectionClass->__construct('config')
#1 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Container/Container.php(795): Illuminate\Container\Container->build('config')
#2 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(957): Illuminate\Container\Container->resolve('config', Array, true)
#3 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Container/Container.php(731): Illuminate\Foundation\Application->resolve('config', Array)
#4 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(942): Illuminate\Container\Container->make('config', Array)
#5 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Container/Container.php(1454): Illuminate\Foundation\Application->make('config')
#6 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Log/LogManager.php(560): Illuminate\Container\Container->offsetGet('config')
#7 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Log/LogManager.php(611): Illuminate\Log\LogManager->getDefaultDriver()
#8 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Log/LogManager.php(124): Illuminate\Log\LogManager->parseDriver(NULL)
#9 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Log/LogManager.php(681): Illuminate\Log\LogManager->driver()
#10 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(317): Illuminate\Log\LogManager->error('Call to undefin...', Array)
#11 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(278): Illuminate\Foundation\Exceptions\Handler->reportThrowable(Object(Error))
#12 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(523): Illuminate\Foundation\Exceptions\Handler->report(Object(Error))
#13 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(203): Illuminate\Foundation\Console\Kernel->reportException(Object(Error))
#14 /var/www/html/test/example-app/artisan(35): Illuminate\Foundation\Console\Kernel->handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#15 {main}
Next Illuminate\Contracts\Container\BindingResolutionException: Target class [config] does not exist. in /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Container/Container.php:914
Stack trace:
#0 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Container/Container.php(795): Illuminate\Container\Container->build('config')
#1 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(957): Illuminate\Container\Container->resolve('config', Array, true)
#2 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Container/Container.php(731): Illuminate\Foundation\Application->resolve('config', Array)
#3 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(942): Illuminate\Container\Container->make('config', Array)
#4 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Container/Container.php(1454): Illuminate\Foundation\Application->make('config')
#5 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Log/LogManager.php(560): Illuminate\Container\Container->offsetGet('config')
#6 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Log/LogManager.php(611): Illuminate\Log\LogManager->getDefaultDriver()
#7 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Log/LogManager.php(124): Illuminate\Log\LogManager->parseDriver(NULL)
#8 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Log/LogManager.php(681): Illuminate\Log\LogManager->driver()
#9 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(317): Illuminate\Log\LogManager->error('Call to undefin...', Array)
#10 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(278): Illuminate\Foundation\Exceptions\Handler->reportThrowable(Object(Error))
#11 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(523): Illuminate\Foundation\Exceptions\Handler->report(Object(Error))
#12 /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(203): Illuminate\Foundation\Console\Kernel->reportException(Object(Error))
#13 /var/www/html/test/example-app/artisan(35): Illuminate\Foundation\Console\Kernel->handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#14 {main}
thrown in /var/www/html/test/example-app/vendor/laravel/framework/src/Illuminate/Container/Container.php on line 914
Script @php artisan package:discover --ansi handling the post-autoload-dump event returned with error code 255
composer.phar
Downloaded from the site directly.
frankenphp v1.0.3
Downloaded from the git directly.
How to reproduce on Ubuntu 22.04
$ mkdir test
$ cd test
# copy composer.phar & frankenphp here
$ ls > composer.phar frankenphp
$ ./frankenphp php-cli ./composer.phar create-project laravel/laravel example-app
Laravel installer runs fine untill it reaches pro-install script and error outs
This also happens on an existing project.
Using system-level php with composer works fine so it seems to be frankenphp php-cli's issue maybe.