Fixes https://github.com/dotnet/aspnetcore/issues/19117
This commit is contained in:
Pranav K 2020-02-18 14:40:51 -08:00 коммит произвёл GitHub
Родитель 63c3aa1e27
Коммит d7c7fef6d1
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
185 изменённых файлов: 71 добавлений и 74 удалений

Просмотреть файл

@ -7,7 +7,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{B867E038-B3C
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Blazor.BuildTools", "src\Microsoft.AspNetCore.Blazor.BuildTools\Microsoft.AspNetCore.Blazor.BuildTools.csproj", "{AC3B5C2C-B935-4A64-8CDB-B8217EE26DC6}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Blazor.Mono", "src\Microsoft.AspNetCore.Blazor.Mono\Microsoft.AspNetCore.Blazor.Mono.csproj", "{E74CC0F5-876C-4DB3-A01F-5D81D5772440}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Components.WebAssembly.Runtime", "src\Microsoft.AspNetCore.Components.WebAssembly.Runtime\Microsoft.AspNetCore.Components.WebAssembly.Runtime.csproj", "{E74CC0F5-876C-4DB3-A01F-5D81D5772440}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution

Просмотреть файл

@ -17,7 +17,7 @@ foreach ($dirToCheck in ($MonoRootDir, $inputWasmDir, $inputBclDir, $inputBclFac
}
# Delete old binaries
$outputRoot = Join-Path -Path $PSScriptRoot -ChildPath "src\Microsoft.AspNetCore.Blazor.Mono\incoming"
$outputRoot = Join-Path -Path $PSScriptRoot -ChildPath "src\Microsoft.AspNetCore.Components.WebAssembly.Runtime\incoming"
if (-not (Test-Path -LiteralPath $outputRoot)) {
Write-Error -Message "Directory '$outputRoot' not found." -ErrorAction Stop
}

Просмотреть файл

@ -1,6 +1,6 @@
<Project>
<PropertyGroup>
<VersionPrefix>3.2.0</VersionPrefix>
<PreReleaseVersionLabel>preview1</PreReleaseVersionLabel>
<PreReleaseVersionLabel>preview2</PreReleaseVersionLabel>
</PropertyGroup>
</Project>

Просмотреть файл

@ -1,10 +0,0 @@
<Project>
<PropertyGroup>
<BlazorMonoRuntimeBasePath>$(MSBuildThisFileDirectory)../../</BlazorMonoRuntimeBasePath>
<MonoLinkerPath>$(BlazorMonoRuntimeBasePath)tools/monolinker/monolinker.exe</MonoLinkerPath>
<MonoBaseClassLibraryPath>$(BlazorMonoRuntimeBasePath)tools/mono/bcl/</MonoBaseClassLibraryPath>
<MonoBaseClassLibraryFacadesPath>$(BlazorMonoRuntimeBasePath)tools/mono/bcl/Facades/</MonoBaseClassLibraryFacadesPath>
<MonoWasmRuntimePath>$(BlazorMonoRuntimeBasePath)tools/mono/wasm/</MonoWasmRuntimePath>
<MonoWasmFrameworkPath>$(BlazorMonoRuntimeBasePath)tools/mono/framework/</MonoWasmFrameworkPath>
</PropertyGroup>
</Project>

Просмотреть файл

@ -1,3 +0,0 @@
<Project>
<!-- Nothing needed here yet -->
</Project>

Просмотреть файл

@ -10,7 +10,7 @@
1. Now on the sidebar, navigate to *Azure Artifacts*.
1. Download the .zip file. Note that the commit's SHA hash is in the filename - you'll need that later to track which Mono version we're using in Blazor.
1. Download the .zip file. Note that the commit's SHA hash is in the filename - you'll need that later to track which Mono version we're using in Blazor.
**NOTE**: The Jenkins UI may show some errors when opening a specific build. The `Shortcut` below is most probably still accessible, so move forward with it.
**Shortcut:** Browse directly to https://jenkins.mono-project.com/job/test-mono-mainline-wasm/255/label=ubuntu-1804-amd64/Azure/, replacing the number 255 with the desired build number.
@ -42,17 +42,17 @@ At this stage, make a Git commit with a message similar to `Upgrade Mono binarie
## Verifying
Push your change as a PR to the `blazor` repo. Once the CI system has built the resulting package, download it. It usually has a name like `Microsoft.AspNetCore.Blazor.Mono.3.2.0-ci.nupkg`.
Push your change as a PR to the `blazor` repo. Once the CI system has built the resulting package, download it. It usually has a name like `Microsoft.AspNetCore.Components.WebAssembly.Runtime.3.2.0-ci.nupkg`.
Switch over to the `aspnetcore` repo and modify the `eng\Versions.props` file to use your new version (e.g., `3.2.0-ci`). Locate the `MicrosoftAspNetCoreComponentsWebAssemblyRuntimePackageVersion` property and update the version to the desired version:
```<MicrosoftAspNetCoreComponentsWebAssemblyRuntimePackageVersion>3.2.0-CI</MicrosoftAspNetCoreComponentsWebAssemblyRuntimePackageVersion>```
Switch over to the `aspnetcore` repo and modify the `eng\Versions.props` file to use your new version (e.g., `3.2.0-ci`). Locate the `MicrosoftAspNetCoreBlazorMonoPackageVersion` property and update the version to the desired version:
```<MicrosoftAspNetCoreBlazorMonoPackageVersion>3.2.0-CI</MicrosoftAspNetCoreBlazorMonoPackageVersion>```
To restore this correctly:
* Make sure you don't already have a `-ci` version of that package in your NuGet package cache
* Run a `dotnet restore` with `-s <directory_containing_the_download>`
Now try running the StandaloneApp and perf benchmarks to be sure the apps still work, and the size and perf numbers haven't regressed badly.
Now try running the StandaloneApp and perf benchmarks to be sure the apps still work, and the size and perf numbers haven't regressed badly.
After running the above checks, also run all the E2E tests:
- switch to the `src\Components\test\E2ETest`

Просмотреть файл

@ -1,50 +1,50 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard1.0</TargetFramework>
<PackageDescription>Binaries for the Mono WebAssembly runtime and build tools used in Blazor applications.</PackageDescription>
<IsPackable>true</IsPackable>
<IsShipping>true</IsShipping>
<NoPackageAnalysis>true</NoPackageAnalysis>
<NuspecFile>Microsoft.AspNetCore.Blazor.Mono.nuspec</NuspecFile>
</PropertyGroup>
<PropertyGroup>
<BlazorBuildToolsExe>$(ArtifactsBinDir)Microsoft.AspNetCore.Blazor.BuildTools/$(Configuration)/netcoreapp2.1/Microsoft.AspNetCore.Blazor.BuildTools.dll</BlazorBuildToolsExe>
<MonoIncomingDir>$(MSBuildThisFileDirectory)incoming\</MonoIncomingDir>
<MonoDistDir>$(MSBuildThisFileDirectory)dist\</MonoDistDir>
<BclWipeSpecDir>$(MSBuildThisFileDirectory)bclwipe\</BclWipeSpecDir>
</PropertyGroup>
<ItemGroup>
<WasmItemsToCopy Include="$(MonoIncomingDir)wasm\**" />
<BclItemsToCopy Include="$(MonoIncomingDir)bcl\**" />
<FrameworkItemsToCopy Include="$(MonoIncomingDir)framework\**" />
<BclWipeSpecFiles Include="$(BclWipeSpecDir)**" />
</ItemGroup>
<Target Name="OptimizeMono" DependsOnTargets="OptimizeMonoWasm; OptimizeBcl" BeforeTargets="Build" />
<Target Name="OptimizeMonoWasm" Inputs="@(WasmItemsToCopy)" Outputs="@(WasmItemsToCopy->'$(MonoDistDir)wasm\%(RecursiveDir)%(FileName)%(Extension)')">
<!-- TODO: Implement WASM code stripping like in prototype -->
<Message Importance="High" Text="Creating optimized Mono WebAssembly build" />
<Copy SourceFiles="@(WasmItemsToCopy)" DestinationFiles="@(WasmItemsToCopy->'$(MonoDistDir)wasm\%(RecursiveDir)%(FileName)%(Extension)')" />
</Target>
<Target Name="OptimizeBcl" Inputs="@(BclItemsToCopy);@(BclWipeSpecFiles)" Outputs="@(BclItemsToCopy->'$(MonoDistDir)bcl\%(RecursiveDir)%(FileName)%(Extension)')">
<!-- Ensure the buildtools project builds first so we can use the resulting executable -->
<MSBuild Projects="..\Microsoft.AspNetCore.Blazor.BuildTools\Microsoft.AspNetCore.Blazor.BuildTools.csproj" />
<Message Importance="High" Text="Creating optimized BCL build" />
<Copy SourceFiles="@(BclItemsToCopy)" DestinationFiles="@(BclItemsToCopy->'$(MonoDistDir)bcl\%(RecursiveDir)%(FileName)%(Extension)')">
<Output TaskParameter="CopiedFiles" ItemName="_BclFilesCopied" />
</Copy>
<Copy SourceFiles="@(FrameworkItemsToCopy)" DestinationFiles="@(FrameworkItemsToCopy->'$(MonoDistDir)framework\%(RecursiveDir)%(FileName)%(Extension)')">
<Output TaskParameter="CopiedFiles" ItemName="_FrameworkFilesCopied" />
</Copy>
<Exec Command="&quot;$(DotNetTool)&quot; &quot;$(BlazorBuildToolsExe)&quot; ilwipe -s &quot;$(BclWipeSpecDir.TrimEnd('\'))&quot; -i &quot;$(MonoIncomingDir)bcl&quot; -o &quot;$(MonoDistDir)bcl&quot;" />
<Touch Files="@(_BclFilesCopied)" /> <!-- Make incremental builds work -->
<Touch Files="@(_FrameworkFilesCopied)" /> <!-- Make incremental builds work -->
</Target>
</Project>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard1.0</TargetFramework>
<PackageDescription>Binaries for the Mono WebAssembly runtime and build tools used in Blazor applications.</PackageDescription>
<IsPackable>true</IsPackable>
<IsShipping>true</IsShipping>
<NoPackageAnalysis>true</NoPackageAnalysis>
<NuspecFile>Microsoft.AspNetCore.Components.WebAssembly.Runtime.nuspec</NuspecFile>
</PropertyGroup>
<PropertyGroup>
<BlazorBuildToolsExe>$(ArtifactsBinDir)Microsoft.AspNetCore.Blazor.BuildTools/$(Configuration)/netcoreapp2.1/Microsoft.AspNetCore.Blazor.BuildTools.dll</BlazorBuildToolsExe>
<MonoIncomingDir>$(MSBuildThisFileDirectory)incoming\</MonoIncomingDir>
<MonoDistDir>$(MSBuildThisFileDirectory)dist\</MonoDistDir>
<BclWipeSpecDir>$(MSBuildThisFileDirectory)bclwipe\</BclWipeSpecDir>
</PropertyGroup>
<ItemGroup>
<WasmItemsToCopy Include="$(MonoIncomingDir)wasm\**" />
<BclItemsToCopy Include="$(MonoIncomingDir)bcl\**" />
<FrameworkItemsToCopy Include="$(MonoIncomingDir)framework\**" />
<BclWipeSpecFiles Include="$(BclWipeSpecDir)**" />
</ItemGroup>
<Target Name="OptimizeMono" DependsOnTargets="OptimizeMonoWasm; OptimizeBcl" BeforeTargets="Build" />
<Target Name="OptimizeMonoWasm" Inputs="@(WasmItemsToCopy)" Outputs="@(WasmItemsToCopy->'$(MonoDistDir)wasm\%(RecursiveDir)%(FileName)%(Extension)')">
<!-- TODO: Implement WASM code stripping like in prototype -->
<Message Importance="High" Text="Creating optimized Mono WebAssembly build" />
<Copy SourceFiles="@(WasmItemsToCopy)" DestinationFiles="@(WasmItemsToCopy->'$(MonoDistDir)wasm\%(RecursiveDir)%(FileName)%(Extension)')" />
</Target>
<Target Name="OptimizeBcl" Inputs="@(BclItemsToCopy);@(BclWipeSpecFiles)" Outputs="@(BclItemsToCopy->'$(MonoDistDir)bcl\%(RecursiveDir)%(FileName)%(Extension)')">
<!-- Ensure the buildtools project builds first so we can use the resulting executable -->
<MSBuild Projects="..\Microsoft.AspNetCore.Blazor.BuildTools\Microsoft.AspNetCore.Blazor.BuildTools.csproj" />
<Message Importance="High" Text="Creating optimized BCL build" />
<Copy SourceFiles="@(BclItemsToCopy)" DestinationFiles="@(BclItemsToCopy->'$(MonoDistDir)bcl\%(RecursiveDir)%(FileName)%(Extension)')">
<Output TaskParameter="CopiedFiles" ItemName="_BclFilesCopied" />
</Copy>
<Copy SourceFiles="@(FrameworkItemsToCopy)" DestinationFiles="@(FrameworkItemsToCopy->'$(MonoDistDir)framework\%(RecursiveDir)%(FileName)%(Extension)')">
<Output TaskParameter="CopiedFiles" ItemName="_FrameworkFilesCopied" />
</Copy>
<Exec Command="&quot;$(DotNetTool)&quot; &quot;$(BlazorBuildToolsExe)&quot; ilwipe -s &quot;$(BclWipeSpecDir.TrimEnd('\'))&quot; -i &quot;$(MonoIncomingDir)bcl&quot; -o &quot;$(MonoDistDir)bcl&quot;" />
<Touch Files="@(_BclFilesCopied)" /> <!-- Make incremental builds work -->
<Touch Files="@(_FrameworkFilesCopied)" /> <!-- Make incremental builds work -->
</Target>
</Project>

Просмотреть файл

@ -7,7 +7,7 @@
$CommonFileElements$
<file src="..\..\THIRD-PARTY-NOTICES.txt" />
<file src="build\**" target="build" />
<file src="dist\**\*" target="tools\mono" />
<file src="dist\**\*" target="tools\dotnetwasm" />
<file src="tools\binaries\monolinker\**\*.*" target="tools\monolinker" />
</files>
</package>

Просмотреть файл

@ -0,0 +1,10 @@
<Project>
<PropertyGroup>
<ComponentsWebAssemblyRuntimeBasePath>$(MSBuildThisFileDirectory)../../</ComponentsWebAssemblyRuntimeBasePath>
<ComponentsWebAssemblyLinkerPath>$(ComponentsWebAssemblyRuntimeBasePath)tools/monolinker/monolinker.exe</ComponentsWebAssemblyLinkerPath>
<ComponentsWebAssemblyBaseClassLibraryPath>$(ComponentsWebAssemblyRuntimeBasePath)tools/dotnetwasm/bcl/</ComponentsWebAssemblyBaseClassLibraryPath>
<ComponentsWebAssemblyBaseClassLibraryFacadesPath>$(ComponentsWebAssemblyRuntimeBasePath)tools/dotnetwasm/bcl/Facades/</ComponentsWebAssemblyBaseClassLibraryFacadesPath>
<ComponentsWebAssemblyFrameworkPath>$(ComponentsWebAssemblyRuntimeBasePath)tools/dotnetwasm/framework/</ComponentsWebAssemblyFrameworkPath>
<ComponentsWebAssemblyRuntimePath>$(ComponentsWebAssemblyRuntimeBasePath)tools/dotnetwasm/wasm/</ComponentsWebAssemblyRuntimePath>
</PropertyGroup>
</Project>

Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше