Apple platform
iOS, macOS, Mac Catalyst, tvOS
Framework version
net8.0-, net9.0-
Affected platform version
.NET 9 RC1
Description
Last week iOS workload on .NET 8 was updated to support iOS 18 / Xcode 16. The unfortunate consequence of that is that net8.0-ios now implicitly means net8.0-ios18.0 when you recompile with this version. The workload manifest for .NET 9 RC 1 was not updated though, so if you have both SDKs installed, then compiling with .NET 9 SDK means that net8.0-ios still means net8.0-ios17.5 and that the iOS 18 workloads are not used even if they are installed.
CommunityToolkit.Maui update was released last week. It was recompiled with the latest .NET 8 SDK at that time, so the NuGet was produced with net8.0-ios18.0 assets. Now if you try to use it with .NET 9 SDK installed it will fail to compile (NativeAOT) or run (MonoVM) because it will pick the net8.0 asset instead of the net8.0-ios18.0 asset since it only understands net8.0-ios17.5 and thus does a fallback...
Steps to Reproduce
- Create app with
net8.0-ios18.0 TFM.
- Try to build the app with .NET 9 RC 1 SDK on the machine.
Did you find any workaround?
No response
Relevant log output
No response