kreait / firebase-php

Unofficial Firebase Admin SDK for PHP
https://firebase-php.readthedocs.io/
MIT License
2.27k stars 431 forks source link

Add PHP 8.3 support for Firebase Admin SDK 7.6.* #912

Closed rhoman closed 3 months ago

rhoman commented 3 months ago

Describe the feature you would like to see

Hello,

I'm currently using SDK 7.6.0, and I'd like to update my project to use PHP 8.3, which is supported by SDK >= 7.9.0. The problem is that I must use Guzzle 7.5.3 which requires guzzlehttp/promises": "^1.5.3 and SDK > 7.6 allows guzzle ^7.5 but requires guzzlehttp/promises": "^2.0 which is a conflict.

Would it be possible to either:

Best, Marcin

jeromegamez commented 3 months ago

If you do a composer why guzzlehttp/promises, you'll see that the SDK is not the only dependency requiring ^2.0of the library, butgoogle/cloud-coreandgoogle/gax` as well.

You can see in the jobs of #913 (https://github.com/kreait/firebase-php/actions/runs/10047310336/job/27768720975?pr=913#step:6:134) that this is the case, even with ^1.5.3 explicitly enabled in the composer.json.

Release 7.9 adds support for PHP 8.3 - even if I wanted to go back to 7.6 and create a 7.6.1 with PHP 8.3 support, this would mean that I'd also have to do a 7.7.1 and a 7.8.1. Finally, it would be a patch release for a new feature, which isn't SemVer anymore.

If you must use Guzzle 7.5.3, try if you can upgrade to version 7.9 of the SDK (I don't know if this will help). Otherwise I'd suggest checking which library forces you to stay with guzzlehttp/promises ^1.5.3 (composer why guzzlehttp/promises) and ask the maintainer(s) of the library/libraries to update their projects.