Skip to content

2.3.0

Latest

Choose a tag to compare

@MihaZupan MihaZupan released this 27 Feb 16:52
· 102 commits to main since this release

This release supports .NET 8.0 and newer. See Getting Started.
Note that while this version also includes targets for .NET 6 and .NET 7, those runtimes are no longer supported.

The Yarp.ReverseProxy packages are available on NuGet.org.

Breaking changes

  • More errors triggered by the client disconnecting are now logged under a Debug severity (#2765 by @MihaZupan).
    • ForwarderError.ResponseBodyCanceled and UpgradeResponseCanceled are no longer logged with a Warning severity.
    • This is a continuation of a change we've made in 2.2 where we've done the same with RequestCanceled, RequestBodyCanceled, and UpgradeRequestCanceled.
  • Replacing the HttpRequestMessage.Content property in a request transform will throw an exception (#2722 by @MihaZupan).
    • While setting the property may have appeared to work during limited testing, it could lead to various issues as YARP internally relies on the property remaining unchanged. See the pull request for more context on this change.
  • We now always enforce the HttpVersionPolicy during HTTP version negotiation (#2729 by @MihaZupan).
    • It was previously possible for YARP to initiate HTTP/1.1 connections for WebSocket and SPDY requests even if the specified HttpVersionPolicy disallowed it. This was breaking scenarios such as outgoing HTTP/2 WebSockets without TLS.
    • If the policy disallows the use of outbound HTTP/1.1, SPDY requests will not be proxied and will instead return a RequestCreation error.
    • This does not affect the default YARP configuration, which is Version=2.0, Policy=RequestVersionOrLower.

Major changes

Other changes

  • We've added optional parameters to AddForwarded and AddXForwarded request transforms that allow you to opt-out of removing the other variant of the header (#2728 by @rkargMsft).
    ctx.AddForwarded(removeAllXForwardedHeaders: false);
    ctx.AddXForwarded(removeForwardedHeader: false);
  • Improved HttpSysDelegator logging and retry logic (#2671 by @NGloreous).
  • YARP can now be published with NativeAOT when targetting .NET 8.0 again (#2759 by @MihaZupan).
  • We've added a workaround for an error in .NET builds from the Ubuntu package feed (#2673 by @MihaZupan).

New Contributors

For a full list of changes see here.