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

Laravel & PHP8 #18

Closed
jvobelnet opened this issue Jul 1, 2022 · 4 comments
Closed

Laravel & PHP8 #18

jvobelnet opened this issue Jul 1, 2022 · 4 comments

Comments

@jvobelnet
Copy link

jvobelnet commented Jul 1, 2022

We're moving our current IXPManager setup to a new one, and in the meantime, we're also upgrading the Ubuntu distrib we're running on. So the new server runs on Ubuntu 22.04, which comes with PHP8, and I have errors with birdseye on it.

2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:PHP Fatal error: During inheritance of ArrayAccess: Uncaught ErrorException: Return type of Illuminate\Http\Request::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /srv/birdseye/vendor/illuminate/http/Request.php:992
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:Stack trace:
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:0 /srv/birdseye/vendor/illuminate/http/Request.php(16): Laravel\Lumen\Application->Laravel\Lumen\Concerns{closure}()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:1 /srv/birdseye/vendor/composer/ClassLoader.php(444): include('...')
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:2 /srv/birdseye/vendor/composer/ClassLoader.php(322): Composer\Autoload\includeFile()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:3 /srv/birdseye/vendor/laravel/lumen-framework/src/Application.php(430): Composer\Autoload\ClassLoader->loadClass()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:4 /srv/birdseye/vendor/illuminate/container/Container.php(731): Laravel\Lumen\Application->Laravel\Lumen{closure}()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:5 /srv/birdseye/vendor/illuminate/container/Container.php(629): Illuminate\Container\Container->build()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:6 /srv/birdseye/vendor/laravel/lumen-framework/src/Application.php(206): Illuminate\Container\Container->make()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:7 /srv/birdseye/vendor/laravel/lumen-framework/src/Routing/UrlGenerator.php(310): Laravel\Lumen\Application->make()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:8 /srv/birdseye/vendor/laravel/lumen-framework/src/Routing/UrlGenerator.php(97): Laravel\Lumen\Routing\UrlGenerator->getRootUrl()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:9 /srv/birdseye/vendor/laravel/lumen-framework/src/helpers.php(311): Laravel\Lumen\Routing\UrlGenerator->to()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:10 /srv/birdseye/app/Http/routes.php(29): url()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:11 /srv/birdseye/bootstrap/app.php(142): require('...')
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:12 [internal function]: {closure}()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:13 /srv/birdseye/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(92): call_user_func()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:14 /srv/birdseye/bootstrap/app.php(143): Laravel\Lumen\Application->group()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:15 /srv/birdseye/public/index.php(14): require('...')
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:16 {main} in /srv/birdseye/vendor/illuminate/http/Request.php on line 16
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:PHP Warning: Uncaught ErrorException: Return type of Illuminate\Http\Request::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /srv/birdseye/vendor/illuminate/http/Request.php:992
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:Stack trace:
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:0 /srv/birdseye/vendor/composer/ClassLoader.php(444): Laravel\Lumen\Application->Laravel\Lumen\Concerns{closure}()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:1 /srv/birdseye/vendor/composer/ClassLoader.php(444): include()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:2 /srv/birdseye/vendor/composer/ClassLoader.php(322): Composer\Autoload\includeFile()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:3 /srv/birdseye/vendor/laravel/lumen-framework/src/Concerns/RegistersExceptionHandlers.php(67): Composer\Autoload\ClassLoader->loadClass()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:4 /srv/birdseye/vendor/laravel/lumen-framework/src/Concerns/RegistersExceptionHandlers.php(55): Laravel\Lumen\Application->handleShutdown()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:5 [internal function]: Laravel\Lumen\Application->Laravel\Lumen\Concerns{closure}()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:6 {main}
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr: thrown in /srv/birdseye/vendor/illuminate/http/Request.php on line 992
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:PHP Fatal error: During inheritance of ArrayAccess: Uncaught ErrorException: Return type of Illuminate\Http\Request::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /srv/birdseye/vendor/illuminate/http/Request.php:992
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:Stack trace:
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:0 /srv/birdseye/vendor/illuminate/http/Request.php(16): Laravel\Lumen\Application->Laravel\Lumen\Concerns{closure}()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:1 /srv/birdseye/vendor/composer/ClassLoader.php(444): include('...')
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:2 /srv/birdseye/vendor/composer/ClassLoader.php(322): Composer\Autoload\includeFile()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:3 /srv/birdseye/vendor/laravel/lumen-framework/src/Application.php(430): Composer\Autoload\ClassLoader->loadClass()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:4 /srv/birdseye/vendor/illuminate/container/Container.php(731): Laravel\Lumen\Application->Laravel\Lumen{closure}()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:5 /srv/birdseye/vendor/illuminate/container/Container.php(629): Illuminate\Container\Container->build()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:6 /srv/birdseye/vendor/laravel/lumen-framework/src/Application.php(206): Illuminate\Container\Container->make()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:7 /srv/birdseye/vendor/laravel/lumen-framework/src/Routing/UrlGenerator.php(310): Laravel\Lumen\Application->make()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:8 /srv/birdseye/vendor/laravel/lumen-framework/src/Routing/UrlGenerator.php(97): Laravel\Lumen\Routing\UrlGenerator->getRootUrl()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:9 /srv/birdseye/vendor/laravel/lumen-framework/src/helpers.php(311): Laravel\Lumen\Routing\UrlGenerator->to()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:10 /srv/birdseye/app/Http/routes.php(29): url()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:11 /srv/birdseye/bootstrap/app.php(142): require('...')
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:12 [internal function]: {closure}()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:13 /srv/birdseye/vendor/laravel/lumen-framework/src/Concerns/RoutesRequests.php(92): call_user_func()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:14 /srv/birdseye/bootstrap/app.php(143): Laravel\Lumen\Application->group()
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:15 /srv/birdseye/public/index.php(14): require('...')
2022-07-01 11:53:24: (mod_fastcgi.c.451) FastCGI-stderr:16 {main} in /srv/birdseye/vendor/illuminate/http/Request.php on line 16

I was able to setup PHP7.4 on the server and everything is running fine, but I'd suggest to make this compatible with PHP8. From what I understand, we need Laravel >6, but it's currently delivered with Laravel 5.x (see https://blog.laravel.com/laravel-php-8-support).

@pashdown
Copy link

PHP8.1 and 22.04 compatibility would be appreciated.

@barryo
Copy link
Member

barryo commented Feb 22, 2023

Hey @pashdown - checkout this branch https://github.com/inex/birdseye/tree/php81

Haven't had a chance to turn it into a release yet but works fine for us

@rlaager
Copy link

rlaager commented Apr 30, 2023

That gets me past the errors, and it is fine with CACHE_DRIVER=file, but with CACHE_DRIVER=memcached, I get an application level 500 error page:

Oops! An Error Occurred
The server returned a "500 Internal Server Error".
Something is broken. Please let us know what you were doing when this error occurred. We will fix it as soon as possible. Sorry for any inconvenience caused.

This is Ubuntu 22.04:
PHP 8.1.2-1ubuntu2.11 (cli) (built: Feb 22 2023 22:56:18) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.2, Copyright (c) Zend Technologies
with Zend OPcache v8.1.2-1ubuntu2.11, Copyright (c), by Zend Technologies

I'm not sure if I should care about using memcached.

@barryo
Copy link
Member

barryo commented May 30, 2023

I use file usually for this. You'll need to install php-memcahed for memcache support if I recall correctly.

@barryo barryo closed this as completed May 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants