Remove Guzzle 3.x dependency (without BC) #223
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Replaced by #224 for the 1.0 branch
Greetings!
The changes in this PR enable developers to override the Guzzle 3.x dependency with any library supported by the Ivory HTTP adapter (which, as a bonus point, implements PSR-7).
I lied in the PR title :) - in order not to introduce breaking changes for existing users, the default HTTP adapter is still using the Guzzle ~3.7 dependency. This is to address the possible use cases where projects rely on
thephpleague/oauth2-client
to require"guzzle/guzzle": "~3.7"
and use it for their own needs.However, if a project is using another HTTP client, it can be configured like this:
You can find a list of supported adapters and a full usage documentation in the Ivory HTTP Adapter README.
I hope this PR receives your approval, and your feedback would be highly appreciated.
Cheers
Jérôme
PS: If breaking changes are okay (as the oauth2-client library is at a 0.x release), we could also replace the default HTTP adapter to the Curl Adapter and completely remove the Guzzle 3.x dependency.