Finagle v18.9.1 Release Notes

  • 💥 Breaking API Changes

    
    * 0️⃣ finagle-base-http: `DefaultHeaderMap` now validates HTTP Header names and
      values in `add` and `set`. `addUnsafe` and `setUnsafe` have been created to
      allow adding and setting headers without validation. ``PHAB_ID=D217035``
    
    * 🚚 finagle-core: Remove slow host detection from `ThresholdFailureDetector`.
      ``PHAB_ID=D210015``
    
    ⚙ Runtime Behavior Changes
    
    • 👻 finagle-core: When Finagle would exhaust a retry budget with an exception that was not a FailureFlags, previously it would wrap that exception with a non-retryable failure. This lead to surprising behavior for users. Those exceptions will no longer be wrapped. PHAB_ID=D216281

    • finagle-http: The finagle HTTP clients and servers now consider a Retry-After: 0 header to be a retryable nack. Servers will set this header when the response is a retryable failure, and clients will interpret responses with this header as a Failure.RetryableNackFailure. PHAB_ID=D216539