Skip to content

0.42.9

Compare
Choose a tag to compare
@chemicL chemicL released this 15 Apr 09:00
· 1005 commits to main since this release

Changes

This is a minor maintenance release appropriate for all ServiceTalk users that contains several useful new features, improvements, and bug fixes. This release is expected to be a "drop-in" replacement for all prior 0.42.X releases.

API Deprecations

  • d62bfd2 - Deprecate offloadNever() (#2133)
    • Users should migrate to offloadNone()
  • 4141e33 - LoadBalancer and ConnectionFactory: add a context of the caller (#2168)
    • Deprecate LoadBalancer#selectConnection(Predicate), users should migrate to the new method LoadBalancer#selectConnection(Predicate, ContextMap);
    • Deprecate ConnectionFactory#newConnection(Address, TransportObserver), users should migrate to the new method ConnectionFactory#newConnection(Address, ContextMap, TransportObserver);

New Features

  • 2ca7af2 - Make ServiceTalk protoc plugin extensible (#2160)
  • 071666f - Let ConnectionFactory see difference between proxied and direct connections (#2169)
  • 13107f8 - Introduce HttpProviders and GrpcProviders (#2137)
  • 0124d9f - Add [Single | Completable].cache(...) operators (#2162)
  • 1ab2b76 - Jersey Protobuf Serialization Support (#2159)
  • 0fae5cb - Expose SslConfig through ConnectionInfo (#2150)
  • b274746 - Add grpc-health service implementation (#2147)
  • cdc249e - Add Publisher.flatMapConcatSingle(...) (#2151)
  • c8d0139 - Let users move GrpcLifecycleObserver in the filter chain (#2171)

Improvements

  • 78d1186 - Use more specific ConcurrentMap methods (#2188)
  • 6edc415 - Implement ServiceDiscoverer#toString() for DefaultDnsServiceDiscoverer (#2149)
  • 998fd00 - Processors.newPublisherProcessor() simplify duplicate terminal check (#2148)
  • 125524c - RoundRobinLoadBalancer: better identify excess connections (#2173)
  • fce6b3e - RoundRobinLoadBalancer: increase visibility into health-checking (#2182)
  • d07605e - Always set default ServiceTalkSocketOptions#IDLE_TIMEOUT (5 minutes) (#2174)
  • fbd5cf5 - DNS ServiceDiscoverer: add jitter for the subsequent DNS queries (#2170)
  • c4df3a3 - Conditionally use IoExecutor timer for retry (#2134)

Bug Fixes

  • c08f21e - HTTP/1.x Client write explicit empty buffer fix (#2175)
  • f1a3581 - Update TextMapFormatter: default sampled to null rather than false when extracting trace context (#2177)
  • 3ae63a5 - fix: handle null parent spans in asChildOf calls (#2167)
  • 1c83856 - HTTP/2 handlers should throw Http2Exception and send RST_STREAM frame (#2146)
  • 99712d1 - Publisher.multicast(...) duplicate cancel IndexOutOfBounds exception (#2161)
  • bb0ed15 - Use filter strategy for streaming async server (#2156)
  • 40c3e3c - servicetalk-grpc-protoc name conflict fixes (#2157)

Dependency Updates

Documentation & Examples

  • 6620b3c - Enhance servicetalk-examples-grpc-observer (#2172)
  • 6586322 - CONTRIBUTING - Project Communication section (#2153)
  • 6f0c43a - Enhance javadoc for HttpSerializers.stringStreamingSerializer (#2164)
  • 17c2bb4 - Remove examples for multi-address client that similar to single-address (#2129)
  • bfc8183 - Update offloading documentation (#2039)

CI/Build


Thank you

Every idea, review, and bug-report counts and so we thought it is worth mentioning those who helped in this area. Please report any unintended omission.

@bondolo
@chemicL
@eddie4941
@idelpivnitskiy
@saturnism
@Scottmitch
@suman-ganta
@tkountis