Releases: amphp/http-client
Releases · amphp/http-client
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
5.0.0 Beta 14
What's Changed
New event system by @kelunik in #334:
The EventListener
interface has been reworked and event listeners can be registered with HttpClientBuilder::listen()
now to automatically apply to each request instead of only being registered on specific requests.
Request phases are now rather strict and checks are in place to ensure the correct order of events. Should you notice any issues with that, please open an issue!
The two remaining issues we want to solve before the stable release are:
Full Changelog: v5.0.0-beta.13...v5.0.0-beta.14
5.0.0 Beta 13
- Add
league/uri
^7 support, resulting inpsr/http-message
^2 support - Clone requests before processing them in
FollowRedirects
to avoid headers of later interceptors being copied to the new request, fixing e.g. raw GZip response bodies on double redirects (#341)
Full Changelog: v5.0.0-beta.12...v5.0.0-beta.13
4.6.3
What's Changed
- Allow
psr/http-message
^2 by @drealecs in #328 - Allow
league/uri
^7 by @nicolas-grekas in #335 - Fix HTTP/2 cancellation while receiving the response
New Contributors
Full Changelog: v4.6.2...v4.6.3
5.0.0 Beta 12
- Fixed form content encoding of reserved characters (#333)
- Fixed gzip bodies not being decompressed after redirects by cloning request headers before sending in
FollowRedirects
(#332) - Fixed connection / memory leak (#324)
- Fixed stream reservations not being freed (#329)
- Copy timeouts when following redirects (#326)
- Do not require filename for streams in
Form
- Renamed methods on
Form
, see 69fc084
5.0.0 Beta 11
- Removed cloning of requests – Requests are no longer clonable and no longer cloned when passed to
HttpClient
and in other locations. - Removed cloning of request attributes – You can use any value in attributes now.
- Following redirects creates a new request now instead of cloning the original request (therefore resetting attributes)
- 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
- Fixed potential HPack concurrency issue on HTTP/2 connections
5.0.0 Beta 10
Updated for compatibility with amphp/[email protected]
5.0.0 Beta 9
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()
5.0.0 Beta 8
- Updated for compatibility with
2.0
ofamphp/socket
. - Changed dependency on
amphp/http
to2.0
.
5.0.0 Beta 7
- Fixed compatibility with
v2.0
ofamphp/byte-stream
by updatingReadableStream
implementations to also implementTraversable
. - Fixed assigning the stream ID to HTTP/2 streams to guarantee stream IDs are sent sequentially to the server
- Fixed
CancelledException
being wrapped in anHttpException
when a request is cancelled