dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
15.06k stars 4.69k forks source link

Investigate System.Lazy<,> type not found when comparing netstandard2.0 against NetCoreAppCurrent #106628

Open ViktorHofer opened 1 month ago

ViktorHofer commented 1 month ago

https://github.com/dotnet/runtime/blob/15cc21af90a7109f9c9157b87987d24db70741a9/src/libraries/apicompat/ApiCompatBaseline.netstandard2.0.xml#L4-L9

The "right" entry means that the type couldn't be found on the right side (NetCoreAppCurrent). We should investigate why.

cc @dotnet/area-infrastructure-libraries

dotnet-policy-service[bot] commented 1 month ago

Tagging subscribers to this area: @dotnet/area-infrastructure-libraries See info in area-owners.md if you want to be subscribed.

ericstj commented 1 month ago

It should have a typeforward for this: https://github.com/dotnet/runtime/blob/b1908e291f8b3c48572507419be0f0b5c9f5c9f6/src/libraries/System.ComponentModel.Composition/src/TypeForwards.cs#L4

I double checked that the preview 7 package has this typeforward for all target frameworks. netstandard2.0 version points to netstandard, net*.0 points to System.Runtime. Seems to me like this might be either an APIcompat bug, or we're not giving all the references for comparison.