Skip to content

[Discussion] Obsoleting Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv and Libuv packages #23409

@Pilchie

Description

@Pilchie

Obsoleting Microsoft.AspNetCore.Server.Kestrel.Transport.Libuv and Libuv packages

Earlier versions of ASP.NET Core used libuv as an implementation detail of how asynchronous IO was performed. In ASP.NET Core 2.0, an alternative transport was developed based on sockets. In ASP.NET Core 2.1 we switched to using the socket transport by default, but kept libuv support around for compatibility reasons.

At this point, use of the sockets transport is far more common than the libuv transport, so we're planning on obsoleting the libuv support in .NET 5.0, with a plan to remove it entirely in .NET 6.0.

As part of this, we will also plan not to add support for new OS platforms (like Windows ARM64) in the .NET 5.0 timeframe.

If you have a blocking issue that requires the use of the libuv transport, we would love to hear about it in the comments below.

Metadata

Metadata

Assignees

Labels

affected-very-fewThis issue impacts very few customersarea-networkingIncludes servers, yarp, json patch, bedrock, websockets, http client factory, and http abstractionsbreaking-changeThis issue / pr will introduce a breaking change, when resolved / merged.severity-nice-to-haveThis label is used by an internal tooltask

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions