Comments (22)
I don't see an easy way to fix this on our side. While waiting for the next patch PHP release, the workaround is to downgrade or recompile PHP with the fix.
from core.
So apparently the PHP fix won't appear until the following release, v8.3.9. Which means on an environment that auto-applies patch versions of PHP, there would be a period of APIP projects running into errors until PHP 8.3.9/8.2.21 are released. So it may still be worth working around the PHP bug from the APIP side?
Just lost an afternoon to debugging this (admittedly should have viewed the project issues page earlier) but agree with above, if there is anything we can do in the core code to mitigate this issue and make visibility paths a bit clearer (navigating all those traits isn't the easiest) and bulletproof then in my view we absolutely should.
from core.
So apparently the PHP fix won't appear until the following release, v8.3.9. Which means on an environment that auto-applies patch versions of PHP, there would be a period of APIP projects running into errors until PHP 8.3.9/8.2.21 are released. So it may still be worth working around the PHP bug from the APIP side?
from core.
If you are using PHP from ondrej sury, you might be lucky: php/php-src#14480 (comment)
from core.
Same here: PHP 8.2.20 - Api Platform 3.2.23. Reverting on PHP 8.2.19 and 8.3.7 fixed the issue.
from core.
Same here: after downgrading PHP to 8.2.19 everything worked.
from core.
As @macghriogair said, upgrading to the new 8.2.20-2
version from the ondrej ppa seemed to fix the issue.
from core.
Not sure if this is related, but since PHP 8.2.20, calling any endpoint of my API with a nested parameter (field.prop=
, order[field.prop]=
) lead a SIGSEGV from PHP and a 502 error.
Everything works fine after downgrading to 8.2.19.
from core.
It is still unclear to me, if this a PHP or a API-Platform issue?
Can someone from the core team pl. provide some comment here?
Will this be fixed in the next PHP-releases?
from core.
Ah I see someone opened an issue in php-src: php/php-src#14480
from core.
Hi,
we had the same Problem last week and today it is solved.
Its like magic :)
from core.
Same here - php 8.2.20
from core.
same here - php 8.8.20 / api platform 3.3.5
from core.
Same here: PHP 8.2.20
from core.
Same here: After upgrading from PHP 8.2.19 to 8.2.20, the error occured. The error seems to be due to importing multiple traits defining the same method:
The class ApiPlatform\Doctrine\Orm\Filter\AbstractFilter
uses the two traits:
- ApiPlatform\Doctrine\Orm\PropertyHelperTrait
- ApiPlatform\Doctrine\Common\PropertyHelperTrait
The method splitPropertyParts
is defined abstract in the first, but has a concrete implementation in the second class. Since 8.2.20 also the abstract method gets called from the class ApiPlatform\Doctrine\Orm\Filter\SearchFilter
resulting in the above error.
However, when changing the use-order in the AbstractFilter class from this original version
use OrmPropertyHelperTrait;
use PropertyHelperTrait;
to this:
use PropertyHelperTrait;
use OrmPropertyHelperTrait;
This specific error does not occur, but then another issue with the same cause follows. There might be a general solution needed for this.
from core.
On Symfony Docker I try to swicth version from dunglas/frankenphp:1-php8.3 to dunglas/frankenphp:1-php8.3.4-alpine.
It's working
from core.
is there a solution without downgrading php
from core.
It is still unclear to me, if this a PHP or a API-Platform issue? Can someone from the core team pl. provide some comment here?
Will this be fixed in the next PHP-releases?
This is definitely a PHP issue: php/php-src#14480
This will be fixed in PHP v8.3.9 and v8.2.21.
These versions are not released yet, but there are RC ongoing: https://hub.docker.com/_/php/tags?page=&page_size=&ordering=&name=8.3
For the moment, the easier fix is to downgrade to 8.3.7 and 8.2.19. If you are using docker base images, it's the easiest way.
from core.
Related Issues (20)
- Swagger Docs jsonopenapi format return HTML HOT 5
- Mixing IRIs between resources and sub-resources when using DTO HOT 2
- Doctrine ODM SearchFilter with embedded documents HOT 3
- Asset mapper warnings HOT 9
- Attempted to call an undefined method named "withParameterName" of class "ApiPlatform\Metadata\ApiProperty" HOT 1
- OpenAPI on calculated field add an extra `items` fields even if `openApiContext` define an object HOT 3
- Validation doesn't work proppperly with strict types HOT 1
- Add a way to configure default strategy mode for the SearchFilter
- Handle null request in ReadProvider HOT 1
- Upgrade to Symfony 7.1 seems to be breaking container linting
- Broken with symfony 7.1 HOT 2
- Unable to generate an IRI for the item of type App\ApiResource\*** with an UriTemplate HOT 1
- Support for JsonProblem (RFC 7807) Extension Member HOT 2
- Remove hydra prefix
- Implement getType for ODM DoctrineExtractor HOT 1
- Mixing REST and GraphQL operation names HOT 3
- Access checks for a DTO created through a resolver should happen after it was created HOT 2
- Doctrine ODM Documents return inconsistent data for GET Collection and Item Operations in Symfony production environment HOT 1
- Calling GraphQL DeleteMutation ignores serialization groups and causes error HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from core.