Releases: amphp/http-client
Releases · amphp/http-client
5.2.1
4.6.5
5.2.0
What's Changed
- Added inactivity timeout to SetRequestTimeout interceptor by @Nek- in #362
- Fixed the exception type thrown by
SizeLimitingReadableStream
, changing it toStreamException
to comply with theReadableStream
interface - Fixed body size limit of 0 (no limit) causing an exception when using
DecompressingReadableStream
- Fixed handling of GOAWAY frames from servers, allowing streams with an ID lower than that provided in the GOAWAY frame to complete before closing the connection (#366)
New Contributors
Full Changelog: v5.1.0...v5.2.0
5.1.0
4.6.4
What's Changed
- Make implicit nullable types explicit by @nicolas-grekas in #359
Full Changelog: v4.6.3...v4.6.4
5.0.1
5.0.0
Stable release compatible with AMPHP v3 and fibers! 🎉
As with other libraries compatible with AMPHP v3, most cases of parameters or returns of Promise<ResolutionType>
have been replaced with ResolutionType
.
Request
instances are mutable now and can no longer be reused.- Removed cloning of request attributes – You can use any value in attributes now.
Request
now extendsHttpRequest
fromamphp/http
, gaining methods to get and set query parameters on the request instead of needing to manipulate the URI object directly.- Renamed header methods using the term "raw" to use "pairs" instead, e.g.,
getRawHeaders()
→getHeaderPairs()
,parseRawHeaders()
→parseHeaderPairs()
- Changed timeout unit from milliseconds to seconds (like timers in the event loop)
- Removed
UnprocessedRequestException
, useRequest::isUnprocessed()
instead. - The
EventListener
interface has been reworked and event listeners can be registered withHttpClientBuilder::listen()
now to automatically apply to each request instead of only being registered on specific requests. - Replaced
FormBody
with newForm
API- Repeated form fields are no longer sent in PHP specific encoding, i.e.
appids=30&appids=20
instead ofappids%5B0%5D=30&appids%5B1%5D=20
(#340)
If you need the previous names, add[]
to the name of your field.
- Repeated form fields are no longer sent in PHP specific encoding, i.e.
- Replaced
RequestBody
with newHttpContent
API- Added
BufferedContent
- Added
StreamedContent
- Removed
Body\FileBody
- Removed
Body\FormBody
- Removed
Body\JsonBody
- Removed
Body\StreamBody
- Removed
Body\StringBody
- Added
There are no changes compared to 5.0.0 Beta 17.
5.0.0 Beta 17
What's Changed
- Fixed event transitions for
CONNECT
requests
Full Changelog: v5.0.0-beta.16...v5.0.0-beta.17
5.0.0 Beta 16
What's Changed
- Fixed HTTP/2 request bodies (regression introduced in 5.0.0 Beta 14)
- Fixed event phase issue for rejected requests (#351)
Full Changelog: v5.0.0-beta.15...v5.0.0-beta.16
5.0.0 Beta 15
What's Changed
- Fixed
Invalid request phase transition from Connect to RequestHeaders
(#347) - Replace
connect*
andtls*
events onEventListener
with newconnectionAcquired
event. Timings are exposed via methods onConnection
now. - Added
EventListener::push()
to indicate pushed responses to theEventListener
and copy event listeners to pushed requests from the parent request to ensure they're called. - Changed
EventListener::requestFailed
to accept anyThrowable
- Added clone support for
Request
- Fixed retries, which didn't clone requests before
- Remove
UnprocessedRequestException
by @kelunik in #349, useRequest::isUnprocessed()
instead. - Remove
Request::isStarted()
Full Changelog: v5.0.0-beta.14...v5.0.0-beta.15