Open Perksey opened 12 months ago
The error I'm thinking of is NETSDK1138 - the EOL TFM warning. This does not break downstream consumers when a framework goes out-of-support as it is not an error.
@Perksey both 1138 and 1202 appear to be warnings: https://github.com/dotnet/sdk/blob/release/8.0.1xx/src/Tasks/Microsoft.NET.Build.Tasks/targets/Microsoft.NET.EolTargetFrameworks.targets
You can set CheckEolWorkloads to false to avoid this particular check .
@jonathanpeppers did a breaking change document get created for this to cover that workaround if customers didn't want to get the warning?
@Perksey if you have a .NET 7 SDK, it is still just a warning. It is not possible to build net6.0-ios
or net6.0-android
apps with the .NET 8 SDK, however.
This is due to the MAUI support policy having a shorter timeline. It is basically the same policy Xamarin had:
@marcpopMSFT I don't know if this qualifies as a breaking change -- or not, but I'm willing to document this somewhere if it makes sense. This is the first time a MAUI target framework has gone out of support.
Pinging @PriyaPurkayastha as she owns compat in case she has an opinion on where and how to document this.
Just chatted with @gewarren and she mentioned that an article can be created for the warning(NETSDK1202) describing the workaround to use CheckEolWorkloads if the warning needs to be suppressed for this scenario. Editing since I noticed NETSDK1138 already has the workaround listed. The description would look something similar to it.
Sounds good, I added NETSDK1202: https://github.com/dotnet/docs/pull/37422
Interesting, I'm not entirely sure why we're seeing this as an error - believe me I don't have warnings as errors on, but happy with this behaviour being documented.
We set <WarningsAsErrors>NETSDK1202</WarningsAsErrors>
in the .NET 8 workloads when targeting net6.0
, because we don't actually support building net6.0
projects at all with those versions.
Makes sense! Did not know that!
Describe the bug
dotnet/Silk.NET is investigating upgrading to .NET 8
We support multiple out-of-support TFMs just like the BCL's extension packages do (they weren't out-of-support when we added them, but now they're added we can't remove them). We're not prepared to start removing support for older TFMs because our users are using them. It is our end user's responsibility to not use out-of-support TFMs.
Similar diagnostics, such as the warning you get when targeting .NET 5, are warnings and not errors.
To Reproduce
net8.0
andnet6.0-android
dotnet build
Error