Skip to content
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

Argument 2 passed to Illuminate\View\Compilers\ComponentTagCompiler::__construct() must be of type array, object given #36816

Closed
romansorin opened this issue Mar 30, 2021 · 6 comments

Comments

@romansorin
Copy link

  • Laravel Version: 8.35.0
  • PHP Version: 7.4.7
  • Database Driver & Version: MySQL, 5.7.12

Description:

After updating Laravel, Horizon, and Telescope to their new respective major version, I am no longer able to access the Telescope or Horizon dashboards (/telescope, /horizon). I published the vendor files/views after updating Telescope to 4.4.6 and Horizon to 5.7.3. When trying to access these endpoints, I receive the following error:

[2021-03-30 16:22:57] production.ERROR: Argument 2 passed to Illuminate\View\Compilers\ComponentTagCompiler::__construct() must be of the type array, object given, called in /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/View/Compilers/BladeCompiler.php on line 321 {"userId":1,"exception":"[object] (TypeError(code: 0): Argument 2 passed to Illuminate\\View\\Compilers\\ComponentTagCompiler::__construct() must be of the type array, object given, called in /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/View/Compilers/BladeCompiler.php on line 321 at /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/View/Compilers/ComponentTagCompiler.php:58)
[stacktrace]
#0 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/View/Compilers/BladeCompiler.php(321): Illuminate\\View\\Compilers\\ComponentTagCompiler->__construct()
#1 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/View/Compilers/BladeCompiler.php(222): Illuminate\\View\\Compilers\\BladeCompiler->compileComponentTags()
#2 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/View/Compilers/BladeCompiler.php(143): Illuminate\\View\\Compilers\\BladeCompiler->compileString()
#3 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(51): Illuminate\\View\\Compilers\\BladeCompiler->compile()
#4 /var/www/laravel-swoole/vendor/facade/ignition/src/Views/Engines/CompilerEngine.php(37): Illuminate\\View\\Engines\\CompilerEngine->get()
#5 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/View/View.php(139): Facade\\Ignition\\Views\\Engines\\CompilerEngine->get()
#6 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/View/View.php(122): Illuminate\\View\\View->getContents()
#7 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/View/View.php(91): Illuminate\\View\\View->renderContents()
#8 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Http/Response.php(62): Illuminate\\View\\View->render()
#9 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate\\Http\\Response->setContent()
#10 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Routing/Router.php(759): Illuminate\\Http\\Response->__construct()
#11 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Routing/Router.php(731): Illuminate\\Routing\\Router::toResponse()
#12 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Routing/Router.php(685): Illuminate\\Routing\\Router->prepareResponse()
#13 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#14 /var/www/laravel-swoole/vendor/laravel/telescope/src/Http/Middleware/Authorize.php(18): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#15 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Laravel\\Telescope\\Http\\Middleware\\Authorize->handle()
#16 /var/www/laravel-swoole/vendor/laravel/passport/src/Http/Middleware/CreateFreshApiToken.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#17 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Laravel\\Passport\\Http\\Middleware\\CreateFreshApiToken->handle()
#18 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(41): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#19 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#20 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(78): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#21 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#22 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#24 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(116): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(62): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#26 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Session\\Middleware\\StartSession->handle()
#27 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#29 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(67): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#31 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Routing/Router.php(687): Illuminate\\Pipeline\\Pipeline->then()
#33 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Routing/Router.php(662): Illuminate\\Routing\\Router->runRouteWithinStack()
#34 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Routing/Router.php(628): Illuminate\\Routing\\Router->runRoute()
#35 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Routing/Router.php(617): Illuminate\\Routing\\Router->dispatchToRoute()
#36 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(165): Illuminate\\Routing\\Router->dispatch()
#37 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#38 /var/www/laravel-swoole/vendor/beyondcode/laravel-query-detector/src/QueryDetectorMiddleware.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#39 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): BeyondCode\\QueryDetector\\QueryDetectorMiddleware->handle()
#40 /var/www/laravel-swoole/vendor/barryvdh/laravel-debugbar/src/Middleware/InjectDebugbar.php(60): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#41 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Barryvdh\\Debugbar\\Middleware\\InjectDebugbar->handle()
#42 /var/www/laravel-swoole/vendor/akaunting/setting/src/Middleware/AutoSaveSetting.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#43 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Akaunting\\Setting\\Middleware\\AutoSaveSetting->handle()
#44 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#45 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#46 /var/www/laravel-swoole/app/Http/Middleware/Firewall.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): App\\Http\\Middleware\\Firewall->handle()
#48 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#50 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#51 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize->handle()
#52 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#53 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\\Foundation\\Http\\Middleware\\CheckForMaintenanceMode->handle()
#54 /var/www/laravel-swoole/vendor/fideloper/proxy/src/TrustProxies.php(57): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#55 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Fideloper\\Proxy\\TrustProxies->handle()
#56 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#57 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(140): Illuminate\\Pipeline\\Pipeline->then()
#58 /var/www/laravel-swoole/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(109): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#59 /var/www/laravel-swoole/vendor/hhxsv5/laravel-s/src/Illuminate/Laravel.php(153): Illuminate\\Foundation\\Http\\Kernel->handle()
#60 /var/www/laravel-swoole/vendor/hhxsv5/laravel-s/src/LaravelS.php(209): Hhxsv5\\LaravelS\\Illuminate\\Laravel->handleDynamic()
#61 /var/www/laravel-swoole/vendor/hhxsv5/laravel-s/src/LaravelS.php(155): Hhxsv5\\LaravelS\\LaravelS->handleDynamicResource()
#62 [internal function]: Hhxsv5\\LaravelS\\LaravelS->onRequest()
#63 /var/www/laravel-swoole/vendor/hhxsv5/laravel-s/src/Swoole/Server.php(347): Swoole\\Server->start()
#64 /var/www/laravel-swoole/vendor/hhxsv5/laravel-s/src/Console/Portal.php(158): Hhxsv5\\LaravelS\\Swoole\\Server->run()
#65 /var/www/laravel-swoole/vendor/hhxsv5/laravel-s/src/Console/Portal.php(59): Hhxsv5\\LaravelS\\Console\\Portal->start()
#66 /var/www/laravel-swoole/vendor/symfony/console/Command/Command.php(258): Hhxsv5\\LaravelS\\Console\\Portal->execute()
#67 /var/www/laravel-swoole/bin/laravels(164): Symfony\\Component\\Console\\Command\\Command->run()
#68 {main}
"}

I do not believe that this is an issue with Horizon/Telescope, but I'm lost in where to approach this, and cannot seem to find anyone else experiencing this issue through SO/Google.

Steps To Reproduce:

  1. Installation of Laravel 8
  2. Install new versions of Telescope and Horizon, follow installation guides.
  3. Attempt to reach /telescope and /horizon.
@driesvints
Copy link
Member

Did you clear your views? views:clear

@romansorin
Copy link
Author

Did you clear your views? views:clear

Yes, I ran both view:clear and view:cache. Running view:clear returns "Oops! An unexpected error occurred" in the response, whereas view:cache returns the Blade templated "Server Error".

@driesvints
Copy link
Member

Are you sure you're not forgetting to reload php-fpm or something? It seems to me that opcache or something might be a culprit here. We haven't had any reports from other people. This should be a fairly recognizable problem if it was really a bug.

@romansorin
Copy link
Author

Yeah, I've reloaded/restarted it, and unfortunately, the issue persists. This was my worry -- it seems very obscure and specific to my case :(

The issue occurred following the upgrading of Laravel, Horizon, Telescope, etc. so I might just downgrade back a couple of major versions and work up from there. I appreciate the help thus far.

@selcukcukur
Copy link
Contributor

I have performed the necessary tests now and I did not encounter the problem you mentioned. There is probably a problem caused by a mistake you made. I tried it by installing one by one in order to test it and I did not encounter any problems.

@romansorin I think review your actions again.

@driesvints
Copy link
Member

@romansorin seems it's indeed specific to your use case so we can't help out here. Please try a support channel instead:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants