Skip to content

Add support for Guzzle 8#3294

Merged
stobrien89 merged 2 commits into
aws:masterfrom
GrahamCampbell:guzzle-8
Jul 24, 2026
Merged

Add support for Guzzle 8#3294
stobrien89 merged 2 commits into
aws:masterfrom
GrahamCampbell:guzzle-8

Conversation

@GrahamCampbell

@GrahamCampbell GrahamCampbell commented May 29, 2026

Copy link
Copy Markdown
Contributor

Guzzle 8 is not yet released, but once it is, getting support in the AWS SDK is important, because it would otherwise block many other projects including Laravel from supporting Guzzle 8.

#3289 already makes a forward-compatible change that makes the SDK compatible with Guzzle 8's stricter requirement that headers be strings or lists of strings. The next change to be aware of is Guzzle 8's changes to the exceptions. The ResponseTransferException exception was added specifically to accommodate the needs of the AWS SDK to want to retry this sub-class of failures, without needing to look at the handler context which is a leaky abstraction that was removed in Guzzle 8.

This PR makes changes to support the old and new exception design, and adjusts version constraints to support both Guzzle 7 and Guzzle 8. By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@stobrien89

Copy link
Copy Markdown
Member

Thanks for the work on this @GrahamCampbell. When is the release date for 8?

@GrahamCampbell

Copy link
Copy Markdown
Contributor Author

I did the 7.11.0 release today, along with 6 releases in the other first-party packages with a bunch of deprecations. I'll see how that goes with feedback, and I'll be doing more evaluation of the upgrading of the most popular packages to Guzzle 8. I don't yet have a an exact release date to share. I am hoping it'll be ready early Q3.

@GrahamCampbell
GrahamCampbell force-pushed the guzzle-8 branch 2 times, most recently from 9e054a2 to 1dd0756 Compare June 4, 2026 19:28
@GrahamCampbell
GrahamCampbell force-pushed the guzzle-8 branch 2 times, most recently from 90e0fd2 to 8b55587 Compare July 12, 2026 00:51
@GrahamCampbell
GrahamCampbell marked this pull request as ready for review July 21, 2026 00:28
@GrahamCampbell

Copy link
Copy Markdown
Contributor Author

Guzzle 8 has now been released, and this PR is ready for review. :)

@GrahamCampbell

Copy link
Copy Markdown
Contributor Author

There is actually a further deprecation introduced in Guzzle 7.15.0, which I extracted to a separate PR if we want to merge that one first: #3327.

@GrahamCampbell
GrahamCampbell force-pushed the guzzle-8 branch 2 times, most recently from 07c68a0 to 7c15ba9 Compare July 22, 2026 21:00
@GrahamCampbell

Copy link
Copy Markdown
Contributor Author

Rebased on master master. Ready for the final review. ☕

@stobrien89

Copy link
Copy Markdown
Member

@GrahamCampbell working on those test failures now. I'll add another commit when done

@stobrien89 stobrien89 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

:shipit:

@stobrien89
stobrien89 merged commit 6ecd74f into aws:master Jul 24, 2026
17 checks passed
@GrahamCampbell
GrahamCampbell deleted the guzzle-8 branch July 24, 2026 16:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants