CARVIEW |
Select Language
HTTP/2 301
date: Tue, 29 Jul 2025 05:16:29 GMT
content-type: text/html; charset=utf-8
content-length: 0
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
location: https://github.com/dotnet/yarp/releases/tag/v2.0.0-rc.1
cache-control: no-cache
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: origin-when-cross-origin, strict-origin-when-cross-origin
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
set-cookie: _gh_sess=%2F0%2Fly2MmCENqqP7%2Blsu7XAV%2BTLtDBDP0P9%2B8Q4Fx8PlMvhZjq4%2FZlGa2AjA22AP56xfXv5g%2Bo2tKRH9XfQnzmsP2rUdFOI2z60axkWE%2Ferewseex3105OpQkNbfYdGgk1rLicJQkyGRZ%2FG7VoIsNCuJuXMzzm832Kq3tBmKUinZUv%2FjrMjsNWvvmP9T3xDq2BOJBXM8p2OM8XaY9%2F%2F%2FryS9ioTzAOuzG9osCDs5K7ckzh8%2FQ0IJH6zLDj07DPrO8kITURRPTO%2Bpb6dXsO%2Frzxg%3D%3D--MNeUfEGah3wBFDCR--8cmq7CAEyJlXFCQMypI1Sw%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.1758629133.1753766189; Path=/; Domain=github.com; Expires=Wed, 29 Jul 2026 05:16:29 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Wed, 29 Jul 2026 05:16:29 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: E036:1FE4B6:3440CF:47A7BA:6888592D
HTTP/2 200
date: Tue, 29 Jul 2025 05:16:30 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
etag: W/"2a33f0e78cc8e75f38f112cbecb96ba8"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
x-github-request-id: E036:1FE4B6:344122:47A81A:6888592D
Release 2.0.0-RC.1 · dotnet/yarp · GitHub
Loading
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 883
2.0.0-RC.1
Pre-release
Pre-release
Compare
50919f1
This commit was created on GitHub.com and signed with GitHub’s verified signature.
The key has expired.
This release supports .NET 6.0 and .NET 7.0. See Getting Started.
The Yarp.ReverseProxy packages are available on NuGet.org.
Breaking changes
- We dropped support for .NET Core 3.1 and .NET 5.0 as they are no longer supported.
- YARP 2.0 targets .NET 6 and .NET 7.
- The default session affinity policy has been changed from
Cookie
toHashCookie
(#1989).- This policy provides fewer security guarantees about the protection level of the key data - the destination ids. On the other hand, it allows for multiple YARP instances to share session affinity cookies without the need to configure ASP.NET Core Data Protection.
- For more details, see the Session Affinity documentation.
- YARP now sets the
SocketsHttpHandler.ConnectTimeout
by default (#1991). You may observe different exceptions being reported by the proxy in failure scenarios when destination servers aren't responding. See #1678 for more context on this change. - The name of the enum value
TlsHandshakeType.KeyEpdate
has been corrected toKeyUpdate
(#1614).
Major changes
- Added support for WebSockets over HTTP/2 (#1978).
- Protocol upgrades and downgrades are automatic. You can mix different protocol versions on both incoming and outgoing sides.
- This feature is available on .NET 7.0 and newer only. To accept HTTP/2 WebSockets, you must use Kestrel.
- See the YARP WebSockets documentation for more details.
- Request transforms can now short-circuit requests and avoid proxying (#1923).
- If you set the status code on the response to something other than 200 OK, or if you start writing to the response body, forwarding will be skipped.
- See the Request Transforms documentation for more details.
Other changes
- You can specify the
RateLimiterPolicy
on a route from the configuration (#1967). See the Rate Limiting documentation for more details. - You can specify the
MaxRequestBodySize
on a route from the configuration (#1947). - We exposed the
InMemoryConfigProvider
as a built-in API (#1732). You no longer have to copy the implementation from the samples :) - Added an
IConfigChangeListener
interface you can implement to receive notifications when and if configuration has been applied (#1734). - Added an
IHttpForwarder.SendAsync
overload that accepts a cancellation token (#1985). - Added async APIs to
ISessionAffinityPolicy
(#1990). - Added an overload of
ReassignProxyRequest
that also accepts a route (#1760). - Added a
HeaderMatchMode.NotExists
mode to header routing (#1806). - Added an
AddMetricsConsumer
helper method to make it easier to register a consumer with multipleIMetricsConsumer
s (#1899). - We report a warning early if you define multiple routes with the same ID (#1831).
- We throw if you use a custom
IForwarderHttpClientFactory
and also callConfigureHttpClient
as the two are mutually exclusive (#1805). - We no longer restore the Upgrade response header unless there is a matching entry in the Connection header (#1731).
- We remove the
Content-Length: 0
header on responses that don't allow bodies (#1813). - We no longer proxy the
Strict-Transport-Security
header (#1984).
For a full list of changes see here.
Assets 2
13 people reacted
You can’t perform that action at this time.