Finagle v6.23.0 Release Notes

  • 💥 Breaking API Changes

    
    * finagle-core: `c.t.f.Stackable`s maintained state about which parameters were
      accessed via `get`. This was error prone and violated the assumption that `Stack`s
      are immutable data structures. We removed this in favor of annotating modules with
      parameters. The abstract classes for Stackables were also simplified. Now we only have
      `Module` and `ModuleN` variants which are more convenient for most definitions.
      Since this is an advanced API, it should not impact standard usage of finagle.
    * ⚡️ finagle-core: Update ConcurrentRingBuffer to use ClassTag instead of ClassManifest;
      rename size argument to capacity.
    
    🗄 Deprecations
    ~~~~~~~~~~~~
    
    * `ServerBuilder.stack[Req1, Rep1](mk: Stack.Params => Server[Req1, Rep1])` is
      deprecated in favor of
      `ServerBuilder.stack[Req1, Rep1](server: Stack.Parameterized[Server[Req1, Rep1]])`
    
    ⚙ Runtime Behavior Changes
    
    • finagle: Improve allocation semantics for uses of Buf.