Skip to content

0.25 Release

Choose a tag to compare

@jentfoo jentfoo released this 23 Aug 20:13
· 12 commits to master since this release

Includes several bug fixes and API changes:

  • HTTPClient changes to allow streaming of the request body set in the HTTPRequestBuilder. A Supplier<ListenableFuture<ByteBuffer>> can provide sections (or chunks if chunk encoded) of the body to be streamed to the server. This has allowed us to also easily provide a body from an InputStream

  • HTTPClient changes to allow streaming of the response body. By default it will still buffer in memory and provide the result when the request completes. However this also allows you to specify a BodyConsumer to the request to be able to consume the body in chunks.

This change has resulted in an API breaking change. The maximum response size is no longer set on the HTTPClient constructor (and those constructors have since been removed). Instead the response size is set per-request, and handled by the set BodyConsumer if desired.

  • Performance improvements by reduced data copies and heap usage

  • Fix to large http chunk sections consuming large amounts of memory. Now more than 20KB per chunk wont be allocated.