From 82a823d417c089207353db061d407c83525851b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Fi=C5=A1era?= Date: Mon, 17 Apr 2023 15:03:01 +0200 Subject: [PATCH 1/5] Disable dotnet.js fingerprinting for .NET 8 --- .../Targets/Microsoft.NET.Sdk.BlazorWebAssembly.6_0.targets | 1 + 1 file changed, 1 insertion(+) diff --git a/src/BlazorWasmSdk/Targets/Microsoft.NET.Sdk.BlazorWebAssembly.6_0.targets b/src/BlazorWasmSdk/Targets/Microsoft.NET.Sdk.BlazorWebAssembly.6_0.targets index 818af6b3f3fa..94052dc64eaf 100644 --- a/src/BlazorWasmSdk/Targets/Microsoft.NET.Sdk.BlazorWebAssembly.6_0.targets +++ b/src/BlazorWasmSdk/Targets/Microsoft.NET.Sdk.BlazorWebAssembly.6_0.targets @@ -51,6 +51,7 @@ Copyright (c) .NET Foundation. All rights reserved. false true true + false false From 79fc4d1c73bf268faaf2b85b62c7cd4ef6e51ade Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Fi=C5=A1era?= Date: Mon, 17 Apr 2023 18:08:38 +0200 Subject: [PATCH 2/5] Fix ComputeWasmBuildAssets for disabled fingerprinting dotnet.js --- src/WasmSdk/Tasks/ComputeWasmBuildAssets.cs | 44 +++++++++++++-------- 1 file changed, 27 insertions(+), 17 deletions(-) diff --git a/src/WasmSdk/Tasks/ComputeWasmBuildAssets.cs b/src/WasmSdk/Tasks/ComputeWasmBuildAssets.cs index 8d3464fdcaec..779fada4a7d4 100644 --- a/src/WasmSdk/Tasks/ComputeWasmBuildAssets.cs +++ b/src/WasmSdk/Tasks/ComputeWasmBuildAssets.cs @@ -106,34 +106,44 @@ public override bool Execute() continue; } - if (candidate.GetMetadata("FileName") == "dotnet" && candidate.GetMetadata("Extension") == ".js" && FingerprintDotNetJs) + if (candidate.GetMetadata("FileName") == "dotnet" && candidate.GetMetadata("Extension") == ".js") + { + string newDotnetJSFileName = null; + string newDotNetJSFullPath = null; + if (FingerprintDotNetJs) { var itemHash = FileHasher.GetFileHash(candidate.ItemSpec); - var cacheBustedDotNetJSFileName = $"dotnet.{candidate.GetMetadata("NuGetPackageVersion")}.{itemHash}.js"; + newDotnetJSFileName = $"dotnet.{candidate.GetMetadata("NuGetPackageVersion")}.{itemHash}.js"; var originalFileFullPath = Path.GetFullPath(candidate.ItemSpec); var originalFileDirectory = Path.GetDirectoryName(originalFileFullPath); - var cacheBustedDotNetJSFullPath = Path.Combine(originalFileDirectory, cacheBustedDotNetJSFileName); - - var newDotNetJs = new TaskItem(cacheBustedDotNetJSFullPath, candidate.CloneCustomMetadata()); - newDotNetJs.SetMetadata("OriginalItemSpec", candidate.ItemSpec); - - var newRelativePath = $"_framework/{cacheBustedDotNetJSFileName}"; - newDotNetJs.SetMetadata("RelativePath", newRelativePath); - - newDotNetJs.SetMetadata("AssetTraitName", "WasmResource"); - newDotNetJs.SetMetadata("AssetTraitValue", "native"); - - assetCandidates.Add(newDotNetJs); - continue; + newDotNetJSFullPath = Path.Combine(originalFileDirectory, newDotnetJSFileName); } else { - string relativePath = AssetsComputingHelper.GetCandidateRelativePath(candidate); - candidate.SetMetadata("RelativePath", relativePath); + newDotNetJSFullPath = candidate.ItemSpec; + newDotnetJSFileName = Path.GetFileName(newDotNetJSFullPath); } + var newDotNetJs = new TaskItem(newDotNetJSFullPath, candidate.CloneCustomMetadata()); + newDotNetJs.SetMetadata("OriginalItemSpec", candidate.ItemSpec); + + var newRelativePath = $"_framework/{newDotnetJSFileName}"; + newDotNetJs.SetMetadata("RelativePath", newRelativePath); + + newDotNetJs.SetMetadata("AssetTraitName", "WasmResource"); + newDotNetJs.SetMetadata("AssetTraitValue", "native"); + + assetCandidates.Add(newDotNetJs); + continue; + } + else + { + string relativePath = AssetsComputingHelper.GetCandidateRelativePath(candidate); + candidate.SetMetadata("RelativePath", relativePath); + } + // Workaround for https://github.com/dotnet/aspnetcore/issues/37574. // For items added as "Reference" in project references, the OriginalItemSpec is incorrect. // Ignore it, and use the FullPath instead. From c979d613611fc932fabbdd39674d2ca3ec5c455a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Fi=C5=A1era?= Date: Mon, 17 Apr 2023 22:43:02 +0200 Subject: [PATCH 3/5] Fix doubled dotnet.js in baseline --- .../StaticWebAssets_BuildMinimal_Works.Build.files.json | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/StaticWebAssetsBaselines/StaticWebAssets_BuildMinimal_Works.Build.files.json b/src/Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/StaticWebAssetsBaselines/StaticWebAssets_BuildMinimal_Works.Build.files.json index 4ddc3fa780c9..35db4903b2d3 100644 --- a/src/Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/StaticWebAssetsBaselines/StaticWebAssets_BuildMinimal_Works.Build.files.json +++ b/src/Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/StaticWebAssetsBaselines/StaticWebAssets_BuildMinimal_Works.Build.files.json @@ -791,8 +791,6 @@ "${OutputPath}\\wwwroot\\_framework\\blazorwasm-minimal.pdb.gz", "${OutputPath}\\wwwroot\\_framework\\dotnet.js", "${OutputPath}\\wwwroot\\_framework\\dotnet.js.gz", - "${OutputPath}\\wwwroot\\_framework\\dotnet.js", - "${OutputPath}\\wwwroot\\_framework\\dotnet.js.gz", "${OutputPath}\\wwwroot\\_framework\\dotnet.wasm", "${OutputPath}\\wwwroot\\_framework\\dotnet.wasm.gz", "${OutputPath}\\wwwroot\\_framework\\icudt.dat", From 776c287a29b8b3ef497a95f101a000fc174f2f8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Fi=C5=A1era?= Date: Tue, 18 Apr 2023 10:17:39 +0200 Subject: [PATCH 4/5] Fix doubled dotnet.js in baseline --- ...d_SatelliteAssembliesAreCopiedToBuildOutput.Build.files.json | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/StaticWebAssetsBaselines/Build_SatelliteAssembliesAreCopiedToBuildOutput.Build.files.json b/src/Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/StaticWebAssetsBaselines/Build_SatelliteAssembliesAreCopiedToBuildOutput.Build.files.json index 6d11e4ee7916..198c2ef065e0 100644 --- a/src/Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/StaticWebAssetsBaselines/Build_SatelliteAssembliesAreCopiedToBuildOutput.Build.files.json +++ b/src/Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/StaticWebAssetsBaselines/Build_SatelliteAssembliesAreCopiedToBuildOutput.Build.files.json @@ -879,8 +879,6 @@ "${OutputPath}\\wwwroot\\_framework\\de\\Microsoft.CodeAnalysis.resources.dll.gz", "${OutputPath}\\wwwroot\\_framework\\dotnet.js", "${OutputPath}\\wwwroot\\_framework\\dotnet.js.gz", - "${OutputPath}\\wwwroot\\_framework\\dotnet.js", - "${OutputPath}\\wwwroot\\_framework\\dotnet.js.gz", "${OutputPath}\\wwwroot\\_framework\\dotnet.wasm", "${OutputPath}\\wwwroot\\_framework\\dotnet.wasm.gz", "${OutputPath}\\wwwroot\\_framework\\es-ES\\classlibrarywithsatelliteassemblies.resources.dll", From e77197f8df671bba7ff39685a191f04b4059a7d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Fi=C5=A1era?= Date: Mon, 29 May 2023 14:29:36 +0200 Subject: [PATCH 5/5] Update baseline --- .../StaticWebAssets_BuildMinimal_Works.Build.files.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/StaticWebAssetsBaselines/StaticWebAssets_BuildMinimal_Works.Build.files.json b/src/Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/StaticWebAssetsBaselines/StaticWebAssets_BuildMinimal_Works.Build.files.json index 4166c6e0252b..99262770bf4c 100644 --- a/src/Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/StaticWebAssetsBaselines/StaticWebAssets_BuildMinimal_Works.Build.files.json +++ b/src/Tests/Microsoft.NET.Sdk.BlazorWebAssembly.Tests/StaticWebAssetsBaselines/StaticWebAssets_BuildMinimal_Works.Build.files.json @@ -791,8 +791,12 @@ "${OutputPath}\\wwwroot\\_framework\\blazorwasm-minimal.wasm.gz", "${OutputPath}\\wwwroot\\_framework\\dotnet.js", "${OutputPath}\\wwwroot\\_framework\\dotnet.js.gz", + "${OutputPath}\\wwwroot\\_framework\\dotnet.js", + "${OutputPath}\\wwwroot\\_framework\\dotnet.js.gz", "${OutputPath}\\wwwroot\\_framework\\dotnet.wasm", "${OutputPath}\\wwwroot\\_framework\\dotnet.wasm.gz", + "${OutputPath}\\wwwroot\\_framework\\dotnet.js", + "${OutputPath}\\wwwroot\\_framework\\dotnet.js.gz", "${OutputPath}\\wwwroot\\_framework\\dotnet.wasm", "${OutputPath}\\wwwroot\\_framework\\dotnet.wasm.gz", "${OutputPath}\\wwwroot\\_framework\\icudt.dat",