googleapis / google-api-php-client

A PHP client library for accessing Google APIs
http://googleapis.github.io/google-api-php-client/
Apache License 2.0
9.27k stars 3.53k forks source link

PSR 17-18 compliance #1776

Open ChargemapHakan opened 4 years ago

ChargemapHakan commented 4 years ago

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.

jdpedrie commented 4 years ago

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

tacman commented 3 months ago

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.