diff --git a/.nuspec/Microsoft.Maui.Controls.targets b/.nuspec/Microsoft.Maui.Controls.targets index 46349bbe100e..3c4957e9fd41 100644 --- a/.nuspec/Microsoft.Maui.Controls.targets +++ b/.nuspec/Microsoft.Maui.Controls.targets @@ -3,7 +3,7 @@ - <_MinimumMauiWorkloadVersion>6.0.100-rc.2 + <_MinimumMauiWorkloadVersion>6.0.200 true True True @@ -20,7 +20,7 @@ - + diff --git a/src/Controls/src/Build.Tasks/Controls.Build.Tasks-net6.csproj b/src/Controls/src/Build.Tasks/Controls.Build.Tasks-net6.csproj index de8ba172c572..03214c213c24 100644 --- a/src/Controls/src/Build.Tasks/Controls.Build.Tasks-net6.csproj +++ b/src/Controls/src/Build.Tasks/Controls.Build.Tasks-net6.csproj @@ -8,48 +8,15 @@ .NET MAUI MSBuild tasks. Enabled via <UseMaui>true</UseMaui>. netstandard2.0 true - false - false - false - NU5128 + false - - + - - - - - <_Files Include="$(PkgMicrosoft_Maui_Graphics)\lib\netstandard2.0\Microsoft.Maui.Graphics.dll" /> - <_Files Include="$(PkgMicrosoft_Maui_Graphics)\lib\netstandard2.0\Microsoft.Maui.Graphics.pdb" /> - <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.dll" /> - <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.pdb" /> - <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.Mdb.dll" /> - <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.Mdb.pdb" /> - <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.Pdb.dll" /> - <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.Pdb.pdb" /> - <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.Rocks.dll" /> - <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.Rocks.pdb" /> - <_Files Include="$(PkgSystem_CodeDom)\lib\netstandard2.0\System.CodeDom.dll" /> - <_Files Include="..\Core\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.dll" /> - <_Files Include="..\Core\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.pdb" /> - <_Files Include="..\Core\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.Controls.dll" /> - <_Files Include="..\Core\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.Controls.pdb" /> - <_Files Include="..\Xaml\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.Controls.Xaml.dll" /> - <_Files Include="..\Xaml\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.Controls.Xaml.pdb" /> - <_Files Include="..\SourceGen\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.Controls.SourceGen.dll" /> - <_Files Include="..\SourceGen\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.Controls.SourceGen.pdb" /> - - - - - - @@ -76,17 +43,8 @@ - <_CopyItems Include="$(TargetDir)*.dll" Exclude="$(TargetDir)System.*.dll" /> - - - - - - - - diff --git a/src/SingleProject/Resizetizer/src/Resizetizer.csproj b/src/SingleProject/Resizetizer/src/Resizetizer.csproj index b2b73f8cd4d3..fc14e5b438f8 100644 --- a/src/SingleProject/Resizetizer/src/Resizetizer.csproj +++ b/src/SingleProject/Resizetizer/src/Resizetizer.csproj @@ -1,4 +1,3 @@ - @@ -8,9 +7,7 @@ Microsoft.Maui.Resizetizer.Sdk .NET MAUI SDK support for images, fonts, etc. Enabled via <UseMauiAssets>true</UseMauiAssets>. - false - false - NU5128 + false <_SkiaPackagePath>build\ @@ -37,7 +34,6 @@ - diff --git a/src/Workload/Microsoft.Maui.Resizetizer.Sdk/Microsoft.Maui.Resizetizer.Sdk.csproj b/src/Workload/Microsoft.Maui.Resizetizer.Sdk/Microsoft.Maui.Resizetizer.Sdk.csproj index f40caa9df9bc..11bba739d9e8 100644 --- a/src/Workload/Microsoft.Maui.Resizetizer.Sdk/Microsoft.Maui.Resizetizer.Sdk.csproj +++ b/src/Workload/Microsoft.Maui.Resizetizer.Sdk/Microsoft.Maui.Resizetizer.Sdk.csproj @@ -1,11 +1,9 @@ - - false .NET MAUI SDK support for images, fonts, etc. Enabled via <UseMauiAssets>true</UseMauiAssets>. $(DotNetPacksDirectory)$(PackageId)/$(PackageVersion)/ diff --git a/src/Workload/Microsoft.Maui.Sdk/Microsoft.Maui.Sdk.csproj b/src/Workload/Microsoft.Maui.Sdk/Microsoft.Maui.Sdk.csproj index b9a289934def..5db598c081d8 100644 --- a/src/Workload/Microsoft.Maui.Sdk/Microsoft.Maui.Sdk.csproj +++ b/src/Workload/Microsoft.Maui.Sdk/Microsoft.Maui.Sdk.csproj @@ -7,17 +7,42 @@ $(DotNetPacksDirectory)$(PackageId)/$(PackageVersion)/ - + <_Files Include="$(MauiNuSpecDirectory)Microsoft.Maui.Controls.props" /> + <_Files Include="$(MauiNuSpecDirectory)Microsoft.Maui.Controls.targets" /> <_Files Include="$(MauiNuSpecDirectory)Microsoft.Maui.Controls.SingleProject.targets" /> <_Files Include="$(MauiNuSpecDirectory)Microsoft.Maui.Controls.DefaultItems.targets" /> + <_Files Include="$(PkgMicrosoft_Maui_Graphics)\lib\netstandard2.0\Microsoft.Maui.Graphics.dll" /> + <_Files Include="$(PkgMicrosoft_Maui_Graphics)\lib\netstandard2.0\Microsoft.Maui.Graphics.pdb" /> + <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.dll" /> + <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.pdb" /> + <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.Mdb.dll" /> + <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.Mdb.pdb" /> + <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.Pdb.dll" /> + <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.Pdb.pdb" /> + <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.Rocks.dll" /> + <_Files Include="$(PkgMono_Cecil)\lib\netstandard2.0\Mono.Cecil.Rocks.pdb" /> + <_Files Include="$(PkgSystem_CodeDom)\lib\netstandard2.0\System.CodeDom.dll" /> + <_Files Include="$(MauiRootDirectory)src\Controls\src\Build.Tasks\bin\Debug\netstandard2.0\Microsoft.Maui.Controls.Build.Tasks.dll" /> + <_Files Include="$(MauiRootDirectory)src\Controls\src\Build.Tasks\bin\Debug\netstandard2.0\*\Microsoft.Maui.Controls.Build.Tasks.resources.dll" /> + <_Files Include="$(MauiRootDirectory)src\Controls\src\Core\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.dll" /> + <_Files Include="$(MauiRootDirectory)src\Controls\src\Core\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.pdb" /> + <_Files Include="$(MauiRootDirectory)src\Controls\src\Core\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.Controls.dll" /> + <_Files Include="$(MauiRootDirectory)src\Controls\src\Core\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.Controls.pdb" /> + <_Files Include="$(MauiRootDirectory)src\Controls\src\Xaml\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.Controls.Xaml.dll" /> + <_Files Include="$(MauiRootDirectory)src\Controls\src\Xaml\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.Controls.Xaml.pdb" /> + <_Files Include="$(MauiRootDirectory)src\Controls\src\SourceGen\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.Controls.SourceGen.dll" /> + <_Files Include="$(MauiRootDirectory)src\Controls\src\SourceGen\bin\$(Configuration)\netstandard2.0\Microsoft.Maui.Controls.SourceGen.pdb" /> + + + @@ -38,10 +63,10 @@ diff --git a/src/Workload/Microsoft.Maui.Sdk/Sdk/BundledVersions.in.targets b/src/Workload/Microsoft.Maui.Sdk/Sdk/BundledVersions.in.targets index b9b0f4049244..1bd4bc9b1726 100644 --- a/src/Workload/Microsoft.Maui.Sdk/Sdk/BundledVersions.in.targets +++ b/src/Workload/Microsoft.Maui.Sdk/Sdk/BundledVersions.in.targets @@ -65,12 +65,6 @@ - - - - - - diff --git a/src/Workload/Microsoft.Maui.Sdk/Sdk/Microsoft.Maui.Sdk.After.targets b/src/Workload/Microsoft.Maui.Sdk/Sdk/Microsoft.Maui.Sdk.After.targets index 00d637a4c414..8369971b0a7f 100644 --- a/src/Workload/Microsoft.Maui.Sdk/Sdk/Microsoft.Maui.Sdk.After.targets +++ b/src/Workload/Microsoft.Maui.Sdk/Sdk/Microsoft.Maui.Sdk.After.targets @@ -5,6 +5,7 @@ $(EnableDefaultMauiItems) $(EnableDefaultMauiItems) + diff --git a/src/Workload/Microsoft.Maui.Sdk/Sdk/Microsoft.Maui.Sdk.targets b/src/Workload/Microsoft.Maui.Sdk/Sdk/Microsoft.Maui.Sdk.targets index f51b5de96f09..903d92ed4fe7 100644 --- a/src/Workload/Microsoft.Maui.Sdk/Sdk/Microsoft.Maui.Sdk.targets +++ b/src/Workload/Microsoft.Maui.Sdk/Sdk/Microsoft.Maui.Sdk.targets @@ -4,6 +4,12 @@ true + + + $(AfterMicrosoftNETSdkTargets);$(MSBuildThisFileDirectory)Microsoft.Maui.Sdk.After.targets diff --git a/src/Workload/Microsoft.Maui.Sdk/Sdk/Sdk.targets b/src/Workload/Microsoft.Maui.Sdk/Sdk/Sdk.targets index d6c47e8263ec..a8ed13c97aed 100644 --- a/src/Workload/Microsoft.Maui.Sdk/Sdk/Sdk.targets +++ b/src/Workload/Microsoft.Maui.Sdk/Sdk/Sdk.targets @@ -24,7 +24,7 @@ /> - + \ No newline at end of file diff --git a/src/Controls/src/Build.Tasks/maui.aotprofile b/src/Workload/Microsoft.Maui.Sdk/Sdk/maui.aotprofile similarity index 100% rename from src/Controls/src/Build.Tasks/maui.aotprofile rename to src/Workload/Microsoft.Maui.Sdk/Sdk/maui.aotprofile diff --git a/src/Workload/Microsoft.NET.Sdk.Maui/Microsoft.NET.Sdk.Maui.csproj b/src/Workload/Microsoft.NET.Sdk.Maui/Microsoft.NET.Sdk.Maui.csproj index dfea817fc80a..9c3bb619f864 100644 --- a/src/Workload/Microsoft.NET.Sdk.Maui/Microsoft.NET.Sdk.Maui.csproj +++ b/src/Workload/Microsoft.NET.Sdk.Maui/Microsoft.NET.Sdk.Maui.csproj @@ -14,8 +14,7 @@ - - + diff --git a/src/Workload/Microsoft.NET.Sdk.Maui/WorkloadManifest.in.json b/src/Workload/Microsoft.NET.Sdk.Maui/WorkloadManifest.in.json index ac6f8f06ae63..023c655451df 100644 --- a/src/Workload/Microsoft.NET.Sdk.Maui/WorkloadManifest.in.json +++ b/src/Workload/Microsoft.NET.Sdk.Maui/WorkloadManifest.in.json @@ -27,7 +27,6 @@ "description": ".NET MAUI SDK Core Packages", "packs": [ "Microsoft.Maui.Dependencies", - "Microsoft.Maui.Controls.Build.Tasks", "Microsoft.Maui.Sdk", "Microsoft.Maui.Extensions", "Microsoft.Maui.Resizetizer.Sdk", @@ -243,12 +242,8 @@ "kind": "sdk", "version": "@VERSION@" }, - "Microsoft.Maui.Controls.Build.Tasks": { - "kind": "library", - "version": "@VERSION@" - }, "Microsoft.Maui.Resizetizer.Sdk": { - "kind": "library", + "kind": "sdk", "version": "@VERSION@" }, "Microsoft.Maui.Templates": { diff --git a/src/Workload/Microsoft.NET.Sdk.Maui/WorkloadManifest.targets b/src/Workload/Microsoft.NET.Sdk.Maui/WorkloadManifest.targets index 16b722295cd2..91f9663d8295 100644 --- a/src/Workload/Microsoft.NET.Sdk.Maui/WorkloadManifest.targets +++ b/src/Workload/Microsoft.NET.Sdk.Maui/WorkloadManifest.targets @@ -7,4 +7,8 @@ Condition=" '$(UseMaui)' == 'true' or '$(UseMauiCore)' == 'true' or '$(UseMauiEssentials)' == 'true' or '$(UseMauiAssets)' == 'true' " Project="Sdk.targets" Sdk="Microsoft.Maui.Sdk" /> + \ No newline at end of file diff --git a/src/Workload/README.md b/src/Workload/README.md index b63f13728a06..e3c96eb5e562 100644 --- a/src/Workload/README.md +++ b/src/Workload/README.md @@ -118,22 +118,19 @@ To give greater flexibility, you can specify in your `.csproj`: ``` Even if you have `6.0.100-rc.2.1000` installed system-wide, placing -this in your `.csproj` enables it to build with a newer version of -.NET MAUI. This will mostly continue working until there is a major -change in `Microsoft.Maui.Sdk`. We have a new -`$(_MinimumMauiWorkloadVersion)` property to fall back on if there is -a breaking change that requires a newer .NET MAUI system-wide install. +this in your `.csproj` enables it to build against newer MAUI +assemblies at build & runtime. Things might break if the version is +much different that what MAUI source generators or MSBuild tasks +expect. We have a `$(_MinimumMauiWorkloadVersion)` property to fall +back on if there is a breaking change that requires a newer .NET MAUI +system-wide install. - error MAUI004: At least version '6.0.100-preview.7' of the .NET MAUI workload is required to use 6.0.100-preview.8. + error MAUI004: At least version '6.0.200' of the .NET MAUI workload is required to use 6.0.200-preview.13. -To achieve this, we've moved MSBuild tasks to `library-packs`: +One issue is that any MSBuild tasks no longer update via `$(MauiVersion)`: -* `Microsoft.Maui.Controls.Build.Tasks` -* `Microsoft.Maui.Resizetizer.Sdk` - -This means these two packs are regular NuGet packages, that are -restores and used during .NET MAUI builds. `dotnet/library-packs` is -simply an implicit NuGet feed. +* `Microsoft.Maui.Sdk`: source generators and XamlC +* `Microsoft.Maui.Resizetizer.Sdk`: MSBuild tasks ## Using the .NET MAUI Workload