Skip to content

Add support for Guzzle 8 - #1111

Merged
jeromegamez merged 1 commit into
beste:8.xfrom
GrahamCampbell:guzzle-8
Jul 28, 2026
Merged

Add support for Guzzle 8#1111
jeromegamez merged 1 commit into
beste:8.xfrom
GrahamCampbell:guzzle-8

Conversation

@GrahamCampbell

@GrahamCampbell GrahamCampbell commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

This adds Guzzle 8 support by widening the guzzlehttp/guzzle, guzzlehttp/psr7 and guzzlehttp/promises constraints to allow their new majors alongside the current ones. Guzzle 8 removed getResponse() from the base RequestException, where it now lives only on the ResponseException subclasses, and reclassified connection failures under Psr\Http\Client\NetworkExceptionInterface. The five API exception converters therefore guard the response lookup so it resolves on both majors, and the Remote Config converter catches the PSR-18 network interface for connection errors. The behaviour is unchanged on Guzzle 7.

Composer can only resolve Guzzle 8 here once this project's own dependencies allow it, so this PR depends on releases from beste/firebase-tokens-php#73 (kreait/firebase-tokens), googleapis/google-auth-library-php#677 (google/auth) and googleapis/google-cloud-php#9377 (google/cloud-storage). Until those ship, Composer keeps resolving Guzzle 7 and this branch stays fully compatible with it.

@jeromegamez

jeromegamez commented Jul 23, 2026

Copy link
Copy Markdown
Member

PR 1111, nice! Thank you for your work - I'm keeping track of the PRs in the other repos and will enable the workflows once they're all ready.

I believe https://github.com/googleapis/gax-php needs the same treatment, too. My mistake, it's been incorporated into the cloud core project since I last looked 😅

@codecov

codecov Bot commented Jul 28, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 66.66667% with 2 lines in your changes missing coverage. Please review.
✅ All tests successful. No failed tests found.

❗ There is a different number of reports uploaded between BASE (d8268a3) and HEAD (d7dc96c). Click for more details.

HEAD has 9 uploads less than BASE
Flag BASE (d8268a3) HEAD (d7dc96c)
grpc 3 0
emulator 3 0
integration 3 0

Impacted file tree graph

@@              Coverage Diff              @@
##                8.x    #1111       +/-   ##
=============================================
- Coverage     87.80%   40.10%   -47.70%     
- Complexity     1486     1491        +5     
=============================================
  Files           146      146               
  Lines          4189     4174       -15     
=============================================
- Hits           3678     1674     -2004     
- Misses          511     2500     +1989     

@jeromegamez
jeromegamez merged commit 4944761 into beste:8.x Jul 28, 2026
18 of 19 checks passed
@jeromegamez

Copy link
Copy Markdown
Member

Thanks again, much appreciated!

@GrahamCampbell
GrahamCampbell deleted the guzzle-8 branch July 28, 2026 22:36
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