google-api-php-client icon indicating copy to clipboard operation
google-api-php-client copied to clipboard

PSR 17-18 compliance

Open ChargemapHakan opened this issue 5 years ago • 2 comments

Is your feature request related to a problem? Please describe. It may cause transitivity issues when the project using / requiring this library also needs another version of Guzzle Http Client.

Describe the solution you'd like It would be awesome to use PSR 17 HttpClientInterface instead of the concrete Guzzle Client class. Also, using RequestInterfaces, StreamInterfaces and their respective factories for payload would make sense IMHO.

Injecting the Client and Request factories (DIP) would be awesome but using discovery mechanism can also be something we can imagine.

More context For instance, this library : https://packagist.org/packages/aporat/store-receipt-validator depends on Guzzle as well and we may have transitivity issues.

ChargemapHakan avatar Jan 25 '20 09:01 ChargemapHakan

Thank you for the suggestion. We will consider it along with other planned changes!

jdpedrie avatar Jan 28 '20 18:01 jdpedrie

Hi, I see you just dropped support for Guzzle 6 and PHP 7.4 -- great! Perhaps that opens up an opportunity for using other http clients.

I'm a fan of the Symfony http client, because the requests are automatically logged in the debugger. Plus, it's already installed in my project, I'd prefer not to also download Guzzle.

tacman avatar May 20 '24 12:05 tacman