Finagle v20.2.1 Release Notes

  • ๐Ÿ†• New Features

    
    * ๐Ÿ‘ finagle-opencensus-tracing: Add support for providing a custom TextFormat for header
      propagation. ``PHAB_ID=D432003``
    
    โš™ Runtime Behavior Changes
    
    • 0๏ธโƒฃ finagle-base-http: Support for the SameSite cookie attribute is now on by default. This can be manipulated via the com.twitter.finagle.http.cookie.supportSameSiteCodec flag. This means that cookies that have a value other than Unset for the sameSite field will have the attribute encoded (by servers) and decoded (by clients). See this Chromium blog post for more information about the SameSite attribute. PHAB_ID=D426349

    • ๐Ÿšš finagle-core: The default NullTracer for ClientBuilder has been removed. Affected clients may now see tracing enabled by default via the Java ServiceLoader, as described in the Finagle User's Guide. PHAB_ID=D437948

    • ๐ŸŒฒ finagle-http2: The HTTP/2 frame logging tools now log at level INFO. This is symmetric with the behavior of the ChannelSnooper tooling which serves a similar purpose which is to aid in debugging data flow and isn't intended to be enabled in production. PHAB_ID=D441876

    ๐Ÿ› Bug Fixes

    
    * finagle-http2: Initialize state in H2Pool before use in the gauge to avoid a
      NullPointerException. ``PHAB_ID=D428272``
    
    * finagle-http2: HTTP/2 server pipeline now traps close calls to ensure that
      events from the initial HTTP/1.x pipeline don't close the HTTP/2 session. For
      example, the initial pipeline was subject to session timeouts even though the
      tail of the socket pipeline was effectively dead. Closing of HTTP/2 server
      pipelines is now handled through the `H2ServerFilter`. ``PHAB_ID=D429554``
    
    * โฌ†๏ธ finagle-http2: HTTP/2 servers clean out unused channel handlers when upgrading
      from a HTTP/1.x pipeline, removing some traps such as unintended timeouts.
      ``PHAB_ID=D429416``
    
    * ๐Ÿ›  finagle-opencensus-tracing: Fixed internal server error when invalid or no propagation headers
      are provided. ``PHAB_ID=D432003``
    
    * finagle-zipkin-scribe: export application metrics under a consistent `zipkin-scribe` scope. Finagle client
      stats under `clnt/zipkin-scribe` ``PHAB_ID=D432274``
    
    ๐Ÿ’ฅ Breaking API Changes
    
    • finagle-zipkin-scribe: Coalesce ScribeRawZipkinTracer apply methods into two simple ones. PHAB_ID=D432274

    • ๐Ÿšš finagle-zipkin-scribe: DefaultSampler moved to c.t.f.zipkin.core in finagle-zipkin-core. PHAB_ID=D439456

    • ๐Ÿ“ฆ finagle-zipkin-scribe: initialSampleRate GlobalFlag is moved to finagle-zipkin-core, under the same package scope c.t.f.zipkin. PHAB_ID=D439456