Finagle v18.11.0 Release Notes
Release Date: 2018-11-12 // over 5 years ago-
🆕 New Features
- finagle-base-http: Add Message.httpDateFormat(millis) to format the epoch millis into
an RFC 7231 formatted String representation. eb9bec0e - finagle-core: Introduce an StackClient.withStack overload that
👉 makes modifying the existing Stack easier when using method chaining.
8f69e833 - finagle-mysql: Introduce session to be able to perform multiple operations that require
session state on a guaranteed single connection. a06f7d67 - finagle-netty4: When using the native epoll transport, finagle now publishes the TCP window size
and number of retransmits based on the tcpInfo provided by from the channel. These stats are
published with a debug verbosity level. 16071088 - 🛠 finagle-http: HTTP clients and servers now accept fixedLengthStreamedAfter param in their
🔧 withStreaming configuration (default: 5 MB when streaming is enabled). This new parameter
controls the limit after which Finagle will stop aggregating messages with known Content-Length
🛰 (payload will be available at .content) and switch into a streaming mode (payload will be
available at .reader). Note messages with Transfer-Encoding: chunked never aggregated.
842e5e1a
💥 Breaking API Changes
- 🚚 finagle-http: c.t.f.http.param.MaxChunkSize has been removed. There is no good reason to
🔧 configure it with anything but Int.MaxValue (unlimited). 990c8650 - ⚡️ finagle-exp: Update DarkTrafficFilter#handleFailedInvocation to accept the request type
for more fidelity in handling the failure. b247f941
⚙ Runtime Behavior Changes
- finagle-http: Unset maxChunkSize limit in Netty HTTP codecs. Now both clients and servers
emit all available data as a single chunk so we can put it into use quicker.
990c8650 - finagle-http: Streaming clients (withStreaming(true)) now aggregate inbound messages with known
🛰 Content-Length if their payloads are less than 5mb (8k before). Use withStreaming(true, 32.kb)
to override it with a different value. 24271b29 - finagle-http2: HTTP/2 servers perform a more graceful shutdown where an initial
GOAWAY is sent with the maximum possible stream id and waits for either the client
to hang up or for the close deadline, at which time a second GOAWAY is sent with
the true last processed stream and the connection is then closed.
93fee499
🗄 Deprecations
- 🗄 finagle-core: Deprecate
EndpointerStackClient.transformed(Stack[ServiceFactory[Req, Rep]] => Stack[ServiceFactory[Req, Rep]])
in favor of the withStack variant. 8f69e833
- finagle-base-http: Add Message.httpDateFormat(millis) to format the epoch millis into