cloudinary / cloudinary/cloudinary_php

Drop Guzzle requirement and replace with any PSR-18 HttpClient

Open
#396 0 comments 1 reaction 0 assignees View on GitHub
Dominant language
PHP
Stars
399
Forks
151
PR merge metrics
No merged PRs in 30d

Description

The current version of this SDK requires Guzzle. My application uses Symfony's HttpClient (which allows for automatic retries and integration with the debug toolbar, compelling reasons for me to use it).

Rather than recommending this library switch, better would be use only require that any PSR-18 http client be installed, and use it.

Here's an article about how and why: https://medium.com/php-fig/psr-18-the-php-standard-for-http-clients-3254c58752bb

At a minimum, even if Guzzle is installed, the developer should be able to choose what client they want to use for the requests.

Thanks!

Contributor guide

Open the contributing guide

Research direction

Review the dependency configuration and the SDK's request path to identify where Guzzle is required and how an HTTP client is selected. Done means the SDK can use any PSR-18 client, including Symfony's HttpClient, while preserving a way to choose the client when Guzzle is installed.

Written by the indexing model from the issue text.

Assessment

Tech stack
php, symfony
Domain
api, backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.