NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #497 most downloaded on Packagist
An advanced async HTTP client library for PHP, enabling efficient, non-blocking, and concurrent requests and responses.
Last release 4 months ago
15 May 2026
Release timing varies
gaps range from 3 weeks to 9 months
Some releases are documented
notes for 26 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
14 years old
113 releases · first in 2012
Fix idle HTTP/1 connection GC leak by @danog in #400
Use str_increment() to fix PHP 8.5+ deprecation
One column per quarter.
Fixed an issue where an HTTP/2 connection was closed unexpectedly, on rare occasions an exception was being thrown to the event-loop error handler
Full Changelog: v5.3.3...v5.3.4
Provided a better fix for #390 , restoring back-pressure on the connection as the response body is consumed
Full Changelog: v5.3.2...v5.3.3
Fixed HTTP/1.x connections remaining open if the response body was not fully consumed
Full Changelog: v5.3.1...v5.3.2
Fixed setting the stream "ended" flag on HTTP/2 streams for requests which have no body (regression in 5.3.0). Without this flag, an empty data frame
Full Changelog: v5.3.0...v5.3.1
Enhance TLS handshake error message with additional details from previous exception by @luzrain in #385
Full Changelog: v5.2.2...v5.3.0
Changed the default User-Agent header to contain only characters which should be accepted by all HTTP servers ( #371 ).
User-Agent header to contain only characters which should be accepted by all HTTP servers (#371).END_STREAM flag set (#373).HttpException to be thrown instead of returning the response.Full Changelog: v5.2.1...v5.2.2
Replaced deprecated method calls from league/uri v6 by @Bilge in #372
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Use str_increment() to fix PHP 8.5+ deprecation
str_increment() to fix PHP 8.5+ deprecationleague/uri on PHP 8.4+Full Changelog: v4.6.5...v4.6.6
Nothing published for this version
Nothing published for this version
Nothing published for this version
Fixed setBodySizeLimit(0) with HTTP/2 protocol
setBodySizeLimit(0) with HTTP/2 protocol (#297)Fixed te request header fields being sent via HTTP/2 instead of being stripped (unless the value is trailers)
te request header fields being sent via HTTP/2 instead of being stripped (unless the value is trailers)amphp/file v2 (#295)Nothing published for this version
Fixed ALPN setting if unsupported
Avoid increasing HTTP/2 window size if too many bytes are buffered locally, avoiding exploding buffers if the consumer is slow.
Account for server window changes when discarding data frames If streams are cancelled, this might result in hanging connections, because the client t
Fixed ConnectionLimitingPool closing non-idle connections
ConnectionLimitingPool closing non-idle connections (#278)Retry idempotent requests on Http2ConnectionException
Http2ConnectionExceptionAdded support for resolving protocol relative URLs
FormBody::addFileFromString()Reject pushes with invalid stream ID
This version fixes a security weakness that might leak sensitive request headers from the initial request to the redirected host on cross-domain redir
This version fixes a security weakness that might leak sensitive request headers from the initial request to the redirected host on cross-domain redirects, which were not removed correctly. Message::setHeaders does not replace the entire set of headers, but only operates on the headers matching the given array keys, see fa79253.
Relax "conflict" rule with amphp/file to allow dev-master installations with Composer v1.x (#267, composer/composer#8856)
"conflict" rule with amphp/file to allow dev-master installations with Composer v1.x (#267, composer/composer#8856)Added inactivity timeout (#263) This provides a separate timeout while waiting for the response or streaming the body. If no data is received for the
Fixed transfer timeout enforcement for HTTP/2
Fixed HTTP/2 on 32 bit platforms
Add improved ConnectionLimitingPool The new ConnectionLimitingPool limits connections instead of streams. In addition, it has improved connection hand
Fix possible double resolution of promises
accept, accept-encoding and user-agent headers (#238)startReceiveResponse event listeners on HTTP/2 before resolving the response promise (#254)startReceiveResponse event until the final response is started to be received, instead of calling it for the first byte or multiple times for HTTP/2 (#254)amphp/httpInitial release of amphp/http-client, the successor of amphp/artax.
This is a major rewrite to support interceptors and HTTP/2.
Major Changes
Request / Response API, because streams are never immutableamphp/socket@^1amphp/file@^1league/uri@^6Please refer to CHANGELOD.md in amphp/artax.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →