Finagle v19.9.0 Release Notes

Release Date: 2019-09-10 // over 4 years ago
  • ๐Ÿ†• New Features

    • ๐Ÿ— finagle-{core,init,toggle,netty4}: Enables cross-build for 2.13.0. f21a54e0
    • finagle-base-http: Add None as a valid SameSite header value. 0c43561a

    ๐Ÿ’ฅ Breaking API Changes

    • โœ… finagle-core: The constructor on c.t.f.filter.NackAdmissionFilter used for testing that
      ๐Ÿšš took an Ema.Monotime has been removed. 38fae802
    • finagle-core: The Adddress.ServiceFactory variant has been promoted from experimental
      ๐Ÿšš status and moved to be properly part of c.t.f.Address. 68cf34b8
    • ๐ŸŽ finagle-http: improve performance of c.t.f.http.filter.StatsFilter. This results in two notable
      API changes: 1. There is a private[filter] constructor which can take a () => Long for
      determining the current time in milliseconds (the existing StatsFilter(StatsReceiver)
      0๏ธโƒฃ constructor defaults to using Stopwatch.systemMillis for determining the current time in
      milliseconds. 2. The protected count(Duration, Response) method has been changed to
      private[this] count(Long, Response) and is no longer part of the public API.
      f6ce4529
    • finagle-partitioning: the hash-based routing that memcached uses has been relocated to a new
      top-level module so that it can be used more broadly across protocols. This results
      ๐Ÿ“ฆ in several classes moving to the c.t.f.partitioning package: 1. The Memcached.param.EjectFailedHost, KeyHasher, and NumReps parameters are now
      available under c.t.f.partitioning.param 2. The FailureAccrualException and CacheNode definitions are now in the c.t.f.paritioning
      ๐Ÿ“‡ package. 3. The ZkMetadata class has moved to c.t.f.p.zk and the finagle-serverset module now depends
      on finagle-partitioning.
      f27073dc

    โš™ Runtime Behavior Changes

    • finagle-http: c.t.f.http.service.NotFoundService has been changed to no longer
      ๐Ÿ—„ use Request.response. Use of Request.response is deprecated and discouraged.
      acac9c38
    • finagle-mysql: Handshaking for the MySQL 'Connection Phase' now occurs as part of session
      acquisition. As part of this change, the
      com.twitter.finagle.mysql.IncludeHandshakeInServiceAcquisition toggle
      ๐Ÿšš has been removed and it no longer applies. cd4877c1
    • โฌ†๏ธ finagle: Upgrade to Netty 4.1.39.Final. 001b0940
    • finagle-http: Enable Ping Failure Detection for MultiplexHandler based HTTP/2 clients. Note that
      ๐Ÿšš the Ping Failure Detection implementation has been removed completely from the
      non-MultiplexHandler based HTTP/2 client. 8af32742
    • finagle: Added a dependency on Scala Collections Compat 2.1.2. f21a54e0

    ๐Ÿ› Bug Fixes

    • ๐Ÿšš finagle-base-http: Removes the Cookie header of a c.t.f.http.Message whenever its cookie map
      becomes empty. f9b76a0f