Finagle 18.9.0
finaglehelper
released this
12 Sep 00:06
·
1855 commits
to develop
since this release
18.9.0
New Features
- finagle-core: c.t.f.FailureFlags is now a public API. This is
Finagle's API for attaching metadata to an exception. As an example
this is used to check if an exception is known to be safe to retry.
Java compatibility has also been added.
e6389831 - finagle-core: Introducing StackTransformer, a consistent mechanism
for accessing and transforming the default ServerStack.
0b6844cd - finagle-netty4: Allow sockets to be configured with the
[SO_REUSEPORT](http://lwn.net/Articles/542629/) option when
using native epoll, which allows multiple processes to bind and
accept connections from the same port.
Breaking API Changes
- finagle: c.t.io.Reader and c.t.io.Writer are now abstracted over the
type they produce/consume (Reader[A] and Writer[A]) and are no
longer fixed to Buf.
5242d49d - finagle-core: Address.hashOrdering now takes a seed parameter and
PeerCoordinate.setCoordinate does not take a peerOffset any longer.
9e6734b2 - finagle-core: Removed deprecated members
c.t.f.Failure.{Interrupted, Ignorable, DeadlineExceeded,
Rejected, NonRetryable, flagsOf}.
54435221 - finagle-core: SingletonPool now takes an additional parameter which
indicates if interrupts should propagate to the underlying resource.
c83ad5d1 - finagle-core: Remove TimeoutFactory.Role in favor of passing a role
to the module function. Since this module is a re-used within the
client stack, it needs unique identifiers for each distinct module.
4c46b80d - finagle-core: the valid range for the argument to
WindowedPercentileHistogram.percentile is now [0.0..1.0], e.g.,
0.95 means 95th percentile.
8ad96f96 - finagle-mux: The old pull-based mux implementations have been
removed.
d1baeff9 - finagle-netty3: The type of context of a ChannelTransport has been
changed from a LegacyContext to a ChannelTransportContext.
4cdd15d9 - finagle-netty4: The type of context of a ChannelTransport has been
changed from a Netty4Context to a ChannelTransportContext.
edce8093 - finagle-netty4: c.t.f.netty4.param.useUnpoolledByteBufAllocator flag
has been removed. There is no good reason to opt-out of a more
efficient, pooled allocator.
07495a14 - finagle-thrift: DeserializeCtx became ClientDeserializeCtx for
client side response classification, add ServerDeserializeCtx to
handle server side response classification.
a8be34bd - finagle-serversets: ZkMetadata.shardHashOrdering now takes a seed
parameter.
9e6734b2
Bug Fixes
- finagle-thrift: Thrift clients created via .servicePerEndpoint now
propagate exceptions appropriately when the method return type is
void.
bb2654e1 - finagle-thrift, finagle-thriftmux: Response classification is
enabled in server side.
a8be34bd
Runtime Behavior Changes
- finagle-memcached: A Memcached client (c.t.f.Memcached.Client) is
now backed by a more efficient, push-based implementation.
c0a1f295 - finagle-netty4: Finagle's Netty 4 implementation now defaults to use
Linux's native epoll transport, when available. Run with
-com.twitter.finagle.netty4.useNativeEpoll=false to opt out.
137f5672