Skip to content

Bump guzzlehttp/guzzle from 7.15.5 to 8.2.0 - #14

Open
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/composer/guzzlehttp/guzzle-8.2.0
Open

dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/composer/guzzlehttp/guzzle-8.2.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 10, 2026

Copy link
Copy Markdown

Bumps guzzlehttp/guzzle from 7.15.5 to 8.2.0.

Release notes

Sourced from guzzlehttp/guzzle's releases.

8.2.0

Changed

  • Allow connection caps to be combined with persistent transport sharing on libcurl 8.22.0+

8.1.0

Added

  • Add PHP 8.6+ stream TLS session sharing, while persistent sharing remains cURL-only
  • Add support for PHP 8.6
  • Add in-transfer resends of seekable streamed uploads when PHP exposes CURLOPT_SEEKFUNCTION

Changed

  • Adjusted guzzlehttp/promises version constraint to ^3.0.2
  • Adjusted guzzlehttp/psr7 version constraint to ^3.1
  • Classify stream handler transport failures using PHP 8.6+ structured stream error codes
  • Hide URI credentials, queries, and fragments in automatic exception messages
  • Match no_proxy rules against IPv4 hosts written in the shorthand a transport reads as an address
  • Hold the cURL easy handle out of the reuse pool until a silent retry has been dispatched
  • Treat a deferred resolved with a pending retry promise as progress when waiting on cURL transfers

8.0.3

Changed

  • Adjusted guzzlehttp/psr7 version constraint to ^3.0.1

8.0.2

Changed

  • Adjusted guzzlehttp/promises version constraint to ^3.0.1

Fixed

  • Fail a cURL multi handler wait with an attributable error when the transfer is no longer tracked
  • Fix StreamHandler resolving numeric IPv4 hosts differently from cURL handlers on macOS and Windows
  • Fix StreamHandler TLS peer names and proxy authorities for numeric IPv4 hosts on all platforms
  • Settle a cURL multi handler transfer displaced by a request reusing its native handle ID

8.0.1

Security

8.0.0

Added

... (truncated)

Changelog

Sourced from guzzlehttp/guzzle's changelog.

8.2.0 - 2026-09-06

Changed

  • Allow connection caps to be combined with persistent transport sharing on libcurl 8.22.0+

8.1.0 - 2026-08-24

Added

  • Add PHP 8.6+ stream TLS session sharing, while persistent sharing remains cURL-only
  • Add support for PHP 8.6
  • Add in-transfer resends of seekable streamed uploads when PHP exposes CURLOPT_SEEKFUNCTION

Changed

  • Adjusted guzzlehttp/promises version constraint to ^3.0.2
  • Adjusted guzzlehttp/psr7 version constraint to ^3.1
  • Classify stream handler transport failures using PHP 8.6+ structured stream error codes
  • Hide URI credentials, queries, and fragments in automatic exception messages
  • Match no_proxy rules against IPv4 hosts written in the shorthand a transport reads as an address
  • Hold the cURL easy handle out of the reuse pool until a silent retry has been dispatched
  • Treat a deferred resolved with a pending retry promise as progress when waiting on cURL transfers

8.0.3 - 2026-08-24

Changed

  • Adjusted guzzlehttp/psr7 version constraint to ^3.0.1

8.0.2 - 2026-08-05

Changed

  • Adjusted guzzlehttp/promises version constraint to ^3.0.1

Fixed

  • Fail a cURL multi handler wait with an attributable error when the transfer is no longer tracked
  • Fix StreamHandler resolving numeric IPv4 hosts differently from cURL handlers on macOS and Windows
  • Fix StreamHandler TLS peer names and proxy authorities for numeric IPv4 hosts on all platforms
  • Settle a cURL multi handler transfer displaced by a request reusing its native handle ID

8.0.1 - 2026-07-26

Security

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [guzzlehttp/guzzle](https://github.com/guzzle/guzzle) from 7.15.5 to 8.2.0.
- [Release notes](https://github.com/guzzle/guzzle/releases)
- [Changelog](https://github.com/guzzle/guzzle/blob/8.2/CHANGELOG.md)
- [Commits](guzzle/guzzle@7.15.5...8.2.0)

---
updated-dependencies:
- dependency-name: guzzlehttp/guzzle
  dependency-version: 8.2.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file php Pull requests that update php code labels Sep 10, 2026
@coderabbitai

coderabbitai Bot commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 1438decd-6f19-45d6-8e8c-8cfd46f8ae7d

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

@genaromadrid

Copy link
Copy Markdown
Member

@coderabbitai, what do you think? its a mayor bump, please take a look

@coderabbitai

coderabbitai Bot commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Tip

For best results, initiate chat on the files or code changes.

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo '=== PR diff ==='
git diff --unified=80 HEAD^ HEAD -- composer.json composer.lock || true

echo '=== relevant files ==='
fd -a -t f '^(composer\.(json|lock)|.*\.php)$' . | sort

echo '=== Composer metadata ==='
if [ -f composer.json ]; then
  cat composer.json
fi

echo '=== PHP structure ==='
php_files=$(fd -a -t f -e php .)
if [ -n "$php_files" ]; then
  ast-grep outline $php_files --items all --type class,function,method --view compact || true
fi

echo '=== Direct Guzzle usage ==='
rg -n -i -C 5 \
  '(GuzzleHttp|ClientInterface|RequestOptions|HandlerStack|Middleware|Promise|->request\s*\(|->send\s*\(|->get\s*\(|->post\s*\()' \
  -g '*.php' . || true

echo '=== PHP version and Guzzle lock entries ==='
rg -n -C 8 '"php"|"guzzlehttp/guzzle"|"guzzlehttp/promises"|"guzzlehttp/psr7"' \
  composer.json composer.lock || true

Length of output: 101711


🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo '=== ApiClient integration ==='
nl -ba src/ApiClient.php | sed -n '1,210p'

echo '=== middleware integration ==='
nl -ba src/Http/HmacAuthMiddleware.php | sed -n '1,240p'

echo '=== Guzzle-focused tests ==='
nl -ba tests/ApiClientTest.php | sed -n '1,220p'
nl -ba tests/Http/HmacAuthMiddlewareTest.php | sed -n '1,220p'

echo '=== test and CI configuration ==='
fd -a -t f '^(phpunit.*\.xml(\.dist)?|\.github/workflows/.*\.(yml|yaml)|.*\.(yml|yaml))$' . \
  --exclude vendor \
  | sort \
  | while IFS= read -r file; do
      echo "--- $file"
      nl -ba "$file" | sed -n '1,260p'
    done

echo '=== Version-specific API references ==='
rg -n -C 3 \
  '(MAJOR_VERSION|GuzzleHttp\\functions|choose_handler|default_user_agent|PromiseInterface|Create::promiseFor|HandlerStack::create)' \
  -g '*.php' . || true

Length of output: 19321


🤖 web_search executed:

Guzzle 8 upgrading guide backwards incompatible changes ClientInterface MAJOR_VERSION HandlerStack middleware PromiseInterface GuzzleHttp promises 3 PSR-7 3

Length of output: 20623


@genaromadrid I reviewed the major-version changes.

The direct Guzzle integration is compatible with Guzzle 8. The client uses supported APIs only: Client::request(), HandlerStack::create(), PSR-7 requests, and the standard middleware promise contract. The PHP >=8.3 requirement also satisfies the updated dependency stack.

I found one compatibility risk before approval:

  • src/ApiClient.php, Line 81 passes ordinary multipart values to Guzzle without conversion. Guzzle PSR-7 3 validates multipart content types more strictly. Integer or float form fields can now fail instead of being implicitly converted. Convert non-resource, non-file multipart values to strings before assigning them to contents, and add a multipart test with a numeric field.

I did not find use of removed Guzzle 7 APIs, including request-level handler, Client::__call(), or removed Guzzle helper functions.

I would merge after the multipart normalization and its test are added.

You are interacting with an AI system.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file php Pull requests that update php code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant