diff --git a/src/mono/nuget/Microsoft.NET.Workload.Mono.Toolchain.Current.Manifest/WorkloadManifest.targets.in b/src/mono/nuget/Microsoft.NET.Workload.Mono.Toolchain.Current.Manifest/WorkloadManifest.targets.in index 953ca2b03351af..061fea9acaa14c 100644 --- a/src/mono/nuget/Microsoft.NET.Workload.Mono.Toolchain.Current.Manifest/WorkloadManifest.targets.in +++ b/src/mono/nuget/Microsoft.NET.Workload.Mono.Toolchain.Current.Manifest/WorkloadManifest.targets.in @@ -6,13 +6,16 @@ <_RuntimePackInWorkloadVersion7>${PackageVersionNet7} <_RuntimePackInWorkloadVersion6>${PackageVersionNet6} - true + true + + true + true + + true true true - true - $(WasmNativeWorkload8) @@ -24,17 +27,11 @@ <_BrowserWorkloadDisabled>$(_BrowserWorkloadNotSupportedForTFM) <_UsingBlazorOrWasmSdk Condition="'$(UsingMicrosoftNETSdkBlazorWebAssembly)' == 'true' or '$(UsingMicrosoftNETSdkWebAssembly)' == 'true'">true - - - - - - true - $(WasmNativeWorkload9) + $(WasmNativeWorkload9) $(WasmNativeWorkload8) $(WasmNativeWorkload7) $(WasmNativeWorkload) @@ -181,12 +178,13 @@ %(RuntimePackRuntimeIdentifiers);wasi-wasm - $(_MonoWorkloadRuntimePackPackageVersion) + $(_MonoWorkloadRuntimePackPackageVersion) Microsoft.NETCore.App.Runtime.Mono.multithread.**RID** $(_KnownWebAssemblySdkPackVersion) + $(_KnownWebAssemblySdkPackVersion) diff --git a/src/mono/wasm/Wasm.Build.Tests/Blazor/BlazorWasmTestBase.cs b/src/mono/wasm/Wasm.Build.Tests/Blazor/BlazorWasmTestBase.cs index 376df6d082a62e..316aa2f019d1ae 100644 --- a/src/mono/wasm/Wasm.Build.Tests/Blazor/BlazorWasmTestBase.cs +++ b/src/mono/wasm/Wasm.Build.Tests/Blazor/BlazorWasmTestBase.cs @@ -39,7 +39,8 @@ public void InitBlazorWasmProjectDir(string id, string targetFramework = Default File.Copy(Path.Combine(BuildEnvironment.TestDataPath, "Blazor.Directory.Build.props"), Path.Combine(_projectDir, "Directory.Build.props")); File.Copy(Path.Combine(BuildEnvironment.TestDataPath, "Blazor.Directory.Build.targets"), Path.Combine(_projectDir, "Directory.Build.targets")); - File.Copy(BuildEnvironment.WasmOverridePacksTargetsPath, Path.Combine(_projectDir, Path.GetFileName(BuildEnvironment.WasmOverridePacksTargetsPath)), overwrite: true); + if (BuildEnvironment.UseWBTOverridePackTargets) + File.Copy(BuildEnvironment.WasmOverridePacksTargetsPath, Path.Combine(_projectDir, Path.GetFileName(BuildEnvironment.WasmOverridePacksTargetsPath)), overwrite: true); } public string CreateBlazorWasmTemplateProject(string id) diff --git a/src/mono/wasm/Wasm.Build.Tests/BuildTestBase.cs b/src/mono/wasm/Wasm.Build.Tests/BuildTestBase.cs index a4d0470ef17e2b..82bb029fdac7e5 100644 --- a/src/mono/wasm/Wasm.Build.Tests/BuildTestBase.cs +++ b/src/mono/wasm/Wasm.Build.Tests/BuildTestBase.cs @@ -339,7 +339,8 @@ protected void InitProjectDir(string dir, bool addNuGetSourceForLocalPackages = Directory.CreateDirectory(dir); File.WriteAllText(Path.Combine(dir, "Directory.Build.props"), s_buildEnv.DirectoryBuildPropsContents); File.WriteAllText(Path.Combine(dir, "Directory.Build.targets"), s_buildEnv.DirectoryBuildTargetsContents); - File.Copy(BuildEnvironment.WasmOverridePacksTargetsPath, Path.Combine(dir, Path.GetFileName(BuildEnvironment.WasmOverridePacksTargetsPath)), overwrite: true); + if (BuildEnvironment.UseWBTOverridePackTargets) + File.Copy(BuildEnvironment.WasmOverridePacksTargetsPath, Path.Combine(dir, Path.GetFileName(BuildEnvironment.WasmOverridePacksTargetsPath)), overwrite: true); string targetNuGetConfigPath = Path.Combine(dir, "nuget.config"); if (addNuGetSourceForLocalPackages) diff --git a/src/mono/wasm/Wasm.Build.Tests/Common/BuildEnvironment.cs b/src/mono/wasm/Wasm.Build.Tests/Common/BuildEnvironment.cs index 5180c6e77bc3a4..37a7668b5d099a 100644 --- a/src/mono/wasm/Wasm.Build.Tests/Common/BuildEnvironment.cs +++ b/src/mono/wasm/Wasm.Build.Tests/Common/BuildEnvironment.cs @@ -27,6 +27,13 @@ public class BuildEnvironment public bool IsWorkloadWithMultiThreadingForDefaultFramework { get; init; } public bool IsRunningOnCI => EnvironmentVariables.IsRunningOnCI; + /* This will trigger importing WasmOverridePacks.targets for the tests, + * which will override the runtime pack with with the locally built one. + * But note that this only partially helps with "switching workloads" because + * the tasks/targets, aot compiler, etc would still be from the old version + */ + public static readonly bool UseWBTOverridePackTargets = false; + public static readonly string RelativeTestAssetsPath = @"..\testassets\"; public static readonly string TestAssetsPath = Path.Combine(AppContext.BaseDirectory, "testassets"); public static readonly string TestDataPath = Path.Combine(AppContext.BaseDirectory, "data"); @@ -121,7 +128,7 @@ public BuildEnvironment() EnvVars["DOTNET_SKIP_FIRST_TIME_EXPERIENCE"] = "1"; EnvVars["PATH"] = $"{sdkForWorkloadPath}{Path.PathSeparator}{Environment.GetEnvironmentVariable("PATH")}"; EnvVars["EM_WORKAROUND_PYTHON_BUG_34780"] = "1"; - if (IsWorkload) + if (UseWBTOverridePackTargets && IsWorkload) EnvVars["WBTOverrideRuntimePack"] = "true"; if (!UseWebcil) diff --git a/src/mono/wasm/Wasm.Build.Tests/SatelliteAssembliesTests.cs b/src/mono/wasm/Wasm.Build.Tests/SatelliteAssembliesTests.cs index 8f6ae7fc13e863..713841e92262a8 100644 --- a/src/mono/wasm/Wasm.Build.Tests/SatelliteAssembliesTests.cs +++ b/src/mono/wasm/Wasm.Build.Tests/SatelliteAssembliesTests.cs @@ -110,7 +110,8 @@ public void ResourcesFromProjectReference(BuildArgs buildArgs, // affect the non-wasm library project File.Move(Path.Combine(rootDir, "Directory.Build.props"), Path.Combine(_projectDir, "Directory.Build.props")); File.Move(Path.Combine(rootDir, "Directory.Build.targets"), Path.Combine(_projectDir, "Directory.Build.targets")); - File.Move(Path.Combine(rootDir, "WasmOverridePacks.targets"), Path.Combine(_projectDir, "WasmOverridePacks.targets")); + if (BuildEnvironment.UseWBTOverridePackTargets) + File.Move(Path.Combine(rootDir, "WasmOverridePacks.targets"), Path.Combine(_projectDir, "WasmOverridePacks.targets")); CreateProgramForCultureTest(_projectDir, "LibraryWithResources.resx.words", "LibraryWithResources.Class1"); diff --git a/src/mono/wasm/Wasm.Build.Tests/WasmTemplateTestBase.cs b/src/mono/wasm/Wasm.Build.Tests/WasmTemplateTestBase.cs index c7392f3dbece93..e58e7002a368bd 100644 --- a/src/mono/wasm/Wasm.Build.Tests/WasmTemplateTestBase.cs +++ b/src/mono/wasm/Wasm.Build.Tests/WasmTemplateTestBase.cs @@ -37,7 +37,8 @@ public string CreateWasmTemplateProject(string id, string template = "wasmbrowse """); - File.Copy(BuildEnvironment.WasmOverridePacksTargetsPath, Path.Combine(_projectDir, Path.GetFileName(BuildEnvironment.WasmOverridePacksTargetsPath)), overwrite: true); + if (BuildEnvironment.UseWBTOverridePackTargets) + File.Copy(BuildEnvironment.WasmOverridePacksTargetsPath, Path.Combine(_projectDir, Path.GetFileName(BuildEnvironment.WasmOverridePacksTargetsPath)), overwrite: true); if (addFrameworkArg) extraArgs += $" -f {DefaultTargetFramework}";