Merge branch 'master' into merge/release/3.1-to-master
This commit is contained in:
commit
3bf5e207bc
|
|
@ -136,6 +136,7 @@ stages:
|
||||||
-pack
|
-pack
|
||||||
-noBuildDeps
|
-noBuildDeps
|
||||||
$(_BuildArgs)
|
$(_BuildArgs)
|
||||||
|
condition: ne(variables['Build.Reason'], 'PullRequest')
|
||||||
displayName: Build SiteExtension
|
displayName: Build SiteExtension
|
||||||
|
|
||||||
# This runs code-signing on all packages, zips, and jar files as defined in build/CodeSign.targets. If https://github.com/dotnet/arcade/issues/1957 is resolved,
|
# This runs code-signing on all packages, zips, and jar files as defined in build/CodeSign.targets. If https://github.com/dotnet/arcade/issues/1957 is resolved,
|
||||||
|
|
@ -453,7 +454,7 @@ stages:
|
||||||
- name: Windows_Test_Dumps
|
- name: Windows_Test_Dumps
|
||||||
path: artifacts/dumps/
|
path: artifacts/dumps/
|
||||||
publishOnError: true
|
publishOnError: true
|
||||||
includeForks: false
|
includeForks: true
|
||||||
- name: Windows_Test_Logs
|
- name: Windows_Test_Logs
|
||||||
path: artifacts/log/
|
path: artifacts/log/
|
||||||
publishOnError: true
|
publishOnError: true
|
||||||
|
|
@ -481,7 +482,7 @@ stages:
|
||||||
- name: Windows_Test_Templates_Dumps
|
- name: Windows_Test_Templates_Dumps
|
||||||
path: artifacts/dumps/
|
path: artifacts/dumps/
|
||||||
publishOnError: true
|
publishOnError: true
|
||||||
includeForks: false
|
includeForks: true
|
||||||
- name: Windows_Test_Templates_Logs
|
- name: Windows_Test_Templates_Logs
|
||||||
path: artifacts/log/
|
path: artifacts/log/
|
||||||
publishOnError: true
|
publishOnError: true
|
||||||
|
|
@ -563,6 +564,27 @@ stages:
|
||||||
publishOnError: true
|
publishOnError: true
|
||||||
includeForks: true
|
includeForks: true
|
||||||
|
|
||||||
|
# Helix ARM64
|
||||||
|
- template: jobs/default-build.yml
|
||||||
|
parameters:
|
||||||
|
jobName: Helix_arm64
|
||||||
|
jobDisplayName: "Tests: Helix ARM64"
|
||||||
|
agentOs: Linux
|
||||||
|
timeoutInMinutes: 240
|
||||||
|
steps:
|
||||||
|
- script: ./restore.sh -ci
|
||||||
|
displayName: Restore
|
||||||
|
- script: ./build.sh -ci --arch arm64 -test --no-build-nodejs -projects $(Build.SourcesDirectory)/eng/helix/helix.proj /p:IsHelixJob=true /p:BuildAllProjects=true /p:BuildNative=true -bl
|
||||||
|
displayName: Run build.sh helix arm64 target
|
||||||
|
env:
|
||||||
|
SYSTEM_ACCESSTOKEN: $(System.AccessToken) # We need to set this env var to publish helix results to Azure Dev Ops
|
||||||
|
installNodeJs: false
|
||||||
|
artifacts:
|
||||||
|
- name: Helix_arm64_logs
|
||||||
|
path: artifacts/log/
|
||||||
|
publishOnError: true
|
||||||
|
includeForks: true
|
||||||
|
|
||||||
# Source build
|
# Source build
|
||||||
- job: Source_Build
|
- job: Source_Build
|
||||||
displayName: 'Test: Linux Source Build'
|
displayName: 'Test: Linux Source Build'
|
||||||
|
|
|
||||||
|
|
@ -25,23 +25,3 @@ jobs:
|
||||||
- name: Helix_logs
|
- name: Helix_logs
|
||||||
path: artifacts/log/
|
path: artifacts/log/
|
||||||
publishOnError: true
|
publishOnError: true
|
||||||
|
|
||||||
# Build Helix ARM64
|
|
||||||
- template: jobs/default-build.yml
|
|
||||||
parameters:
|
|
||||||
jobName: Helix_arm64
|
|
||||||
jobDisplayName: "Tests: Helix ARM64"
|
|
||||||
agentOs: Linux
|
|
||||||
timeoutInMinutes: 240
|
|
||||||
steps:
|
|
||||||
- script: ./restore.sh -ci
|
|
||||||
displayName: Restore
|
|
||||||
- script: ./build.sh -ci --arch arm64 -test --no-build-nodejs -projects $(Build.SourcesDirectory)/eng/helix/helix.proj /p:IsHelixJob=true /p:BuildAllProjects=true /p:BuildNative=true -bl
|
|
||||||
displayName: Run build.sh helix arm64 target
|
|
||||||
env:
|
|
||||||
SYSTEM_ACCESSTOKEN: $(System.AccessToken) # We need to set this env var to publish helix results to Azure Dev Ops
|
|
||||||
installNodeJs: false
|
|
||||||
artifacts:
|
|
||||||
- name: Helix_arm64_logs
|
|
||||||
path: artifacts/logs/
|
|
||||||
publishOnError: true
|
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@
|
||||||
/src/Hosting/ @tratcher @anurse
|
/src/Hosting/ @tratcher @anurse
|
||||||
/src/Http/ @tratcher @jkotalik @anurse
|
/src/Http/ @tratcher @jkotalik @anurse
|
||||||
/src/Middleware/ @tratcher @anurse
|
/src/Middleware/ @tratcher @anurse
|
||||||
/src/ProjectTemplates/ @ryanbrandenburg
|
# /src/ProjectTemplates/ @ryanbrandenburg
|
||||||
/src/Security/ @tratcher @anurse
|
/src/Security/ @tratcher @anurse
|
||||||
/src/Servers/ @tratcher @jkotalik @anurse @halter73
|
/src/Servers/ @tratcher @jkotalik @anurse @halter73
|
||||||
/src/Middleware/Rewrite @jkotalik @anurse
|
/src/Middleware/Rewrite @jkotalik @anurse
|
||||||
|
|
|
||||||
|
|
@ -52,7 +52,7 @@
|
||||||
|
|
||||||
<IncludeSymbols>true</IncludeSymbols>
|
<IncludeSymbols>true</IncludeSymbols>
|
||||||
|
|
||||||
<DefaultNetCoreTargetFramework>netcoreapp3.1</DefaultNetCoreTargetFramework>
|
<DefaultNetCoreTargetFramework>netcoreapp5.0</DefaultNetCoreTargetFramework>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<!-- Warnings and errors -->
|
<!-- Warnings and errors -->
|
||||||
|
|
|
||||||
|
|
@ -9,408 +9,408 @@
|
||||||
-->
|
-->
|
||||||
<Dependencies>
|
<Dependencies>
|
||||||
<ProductDependencies>
|
<ProductDependencies>
|
||||||
<Dependency Name="Microsoft.AspNetCore.Blazor.Mono" Version="3.0.0-preview9.19462.2">
|
<Dependency Name="Microsoft.AspNetCore.Blazor.Mono" Version="5.0.0-alpha1.19463.2">
|
||||||
<Uri>https://github.com/aspnet/Blazor</Uri>
|
<Uri>https://github.com/aspnet/Blazor</Uri>
|
||||||
<Sha>348e050ecd9bd8924581afb677089ae5e2d5e508</Sha>
|
<Sha>f5d0da88db7b29207fc005a7478bf0b9b6fc9fc9</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.AspNetCore.Razor.Language" Version="3.1.0-preview1.19472.1">
|
<Dependency Name="Microsoft.AspNetCore.Razor.Language" Version="5.0.0-alpha1.19467.1">
|
||||||
<Uri>https://github.com/aspnet/AspNetCore-Tooling</Uri>
|
<Uri>https://github.com/aspnet/AspNetCore-Tooling</Uri>
|
||||||
<Sha>9dc38f98bd6eb330aa1463c38bb2f6c6eccdb309</Sha>
|
<Sha>01db467df0350147bbf04f80f8c16033c23a4b4a</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.AspNetCore.Mvc.Razor.Extensions" Version="3.1.0-preview1.19472.1">
|
<Dependency Name="Microsoft.AspNetCore.Mvc.Razor.Extensions" Version="5.0.0-alpha1.19467.1">
|
||||||
<Uri>https://github.com/aspnet/AspNetCore-Tooling</Uri>
|
<Uri>https://github.com/aspnet/AspNetCore-Tooling</Uri>
|
||||||
<Sha>9dc38f98bd6eb330aa1463c38bb2f6c6eccdb309</Sha>
|
<Sha>01db467df0350147bbf04f80f8c16033c23a4b4a</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.CodeAnalysis.Razor" Version="3.1.0-preview1.19472.1">
|
<Dependency Name="Microsoft.CodeAnalysis.Razor" Version="5.0.0-alpha1.19467.1">
|
||||||
<Uri>https://github.com/aspnet/AspNetCore-Tooling</Uri>
|
<Uri>https://github.com/aspnet/AspNetCore-Tooling</Uri>
|
||||||
<Sha>9dc38f98bd6eb330aa1463c38bb2f6c6eccdb309</Sha>
|
<Sha>01db467df0350147bbf04f80f8c16033c23a4b4a</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.NET.Sdk.Razor" Version="3.1.0-preview1.19472.1">
|
<Dependency Name="Microsoft.NET.Sdk.Razor" Version="5.0.0-alpha1.19467.1">
|
||||||
<Uri>https://github.com/aspnet/AspNetCore-Tooling</Uri>
|
<Uri>https://github.com/aspnet/AspNetCore-Tooling</Uri>
|
||||||
<Sha>9dc38f98bd6eb330aa1463c38bb2f6c6eccdb309</Sha>
|
<Sha>01db467df0350147bbf04f80f8c16033c23a4b4a</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="dotnet-ef" Version="3.1.0-preview1.19471.7">
|
<Dependency Name="dotnet-ef" Version="5.0.0-alpha1.19468.19">
|
||||||
<Uri>https://github.com/aspnet/EntityFrameworkCore</Uri>
|
<Uri>https://github.com/aspnet/EntityFrameworkCore</Uri>
|
||||||
<Sha>6cfdd4a9df8fa46ece6894541278b01b6411d273</Sha>
|
<Sha>423238a9c032044ade98f0723bf1113ef1e23949</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.EntityFrameworkCore.InMemory" Version="3.1.0-preview1.19471.7">
|
<Dependency Name="Microsoft.EntityFrameworkCore.InMemory" Version="5.0.0-alpha1.19468.19">
|
||||||
<Uri>https://github.com/aspnet/EntityFrameworkCore</Uri>
|
<Uri>https://github.com/aspnet/EntityFrameworkCore</Uri>
|
||||||
<Sha>6cfdd4a9df8fa46ece6894541278b01b6411d273</Sha>
|
<Sha>423238a9c032044ade98f0723bf1113ef1e23949</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.EntityFrameworkCore.Relational" Version="3.1.0-preview1.19471.7">
|
<Dependency Name="Microsoft.EntityFrameworkCore.Relational" Version="5.0.0-alpha1.19468.19">
|
||||||
<Uri>https://github.com/aspnet/EntityFrameworkCore</Uri>
|
<Uri>https://github.com/aspnet/EntityFrameworkCore</Uri>
|
||||||
<Sha>6cfdd4a9df8fa46ece6894541278b01b6411d273</Sha>
|
<Sha>423238a9c032044ade98f0723bf1113ef1e23949</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.EntityFrameworkCore.Sqlite" Version="3.1.0-preview1.19471.7">
|
<Dependency Name="Microsoft.EntityFrameworkCore.Sqlite" Version="5.0.0-alpha1.19468.19">
|
||||||
<Uri>https://github.com/aspnet/EntityFrameworkCore</Uri>
|
<Uri>https://github.com/aspnet/EntityFrameworkCore</Uri>
|
||||||
<Sha>6cfdd4a9df8fa46ece6894541278b01b6411d273</Sha>
|
<Sha>423238a9c032044ade98f0723bf1113ef1e23949</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.EntityFrameworkCore.SqlServer" Version="3.1.0-preview1.19471.7">
|
<Dependency Name="Microsoft.EntityFrameworkCore.SqlServer" Version="5.0.0-alpha1.19468.19">
|
||||||
<Uri>https://github.com/aspnet/EntityFrameworkCore</Uri>
|
<Uri>https://github.com/aspnet/EntityFrameworkCore</Uri>
|
||||||
<Sha>6cfdd4a9df8fa46ece6894541278b01b6411d273</Sha>
|
<Sha>423238a9c032044ade98f0723bf1113ef1e23949</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.EntityFrameworkCore.Tools" Version="3.1.0-preview1.19471.7">
|
<Dependency Name="Microsoft.EntityFrameworkCore.Tools" Version="5.0.0-alpha1.19468.19">
|
||||||
<Uri>https://github.com/aspnet/EntityFrameworkCore</Uri>
|
<Uri>https://github.com/aspnet/EntityFrameworkCore</Uri>
|
||||||
<Sha>6cfdd4a9df8fa46ece6894541278b01b6411d273</Sha>
|
<Sha>423238a9c032044ade98f0723bf1113ef1e23949</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.EntityFrameworkCore" Version="3.1.0-preview1.19471.7">
|
<Dependency Name="Microsoft.EntityFrameworkCore" Version="5.0.0-alpha1.19468.19">
|
||||||
<Uri>https://github.com/aspnet/EntityFrameworkCore</Uri>
|
<Uri>https://github.com/aspnet/EntityFrameworkCore</Uri>
|
||||||
<Sha>6cfdd4a9df8fa46ece6894541278b01b6411d273</Sha>
|
<Sha>423238a9c032044ade98f0723bf1113ef1e23949</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.AspNetCore.Analyzer.Testing" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.AspNetCore.Analyzer.Testing" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.AspNetCore.BenchmarkRunner.Sources" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.AspNetCore.BenchmarkRunner.Sources" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.ActivatorUtilities.Sources" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.ActivatorUtilities.Sources" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Caching.Abstractions" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Caching.Abstractions" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Caching.Memory" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Caching.Memory" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Caching.SqlServer" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Caching.SqlServer" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Caching.StackExchangeRedis" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Caching.StackExchangeRedis" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.CommandLineUtils.Sources" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.CommandLineUtils.Sources" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Configuration.Abstractions" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Configuration.Abstractions" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Configuration.AzureKeyVault" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Configuration.AzureKeyVault" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Configuration.Binder" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Configuration.Binder" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Configuration.CommandLine" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Configuration.CommandLine" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Configuration.FileExtensions" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Configuration.FileExtensions" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Configuration.Ini" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Configuration.Ini" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Configuration.Json" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Configuration.Json" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Configuration.KeyPerFile" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Configuration.KeyPerFile" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Configuration.UserSecrets" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Configuration.UserSecrets" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Configuration.Xml" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Configuration.Xml" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Configuration" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Configuration" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.DependencyInjection.Abstractions" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.DependencyInjection.Abstractions" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.DependencyInjection" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.DependencyInjection" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.DiagnosticAdapter" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.DiagnosticAdapter" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Diagnostics.HealthChecks" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Diagnostics.HealthChecks" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.FileProviders.Abstractions" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.FileProviders.Abstractions" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.FileProviders.Composite" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.FileProviders.Composite" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.FileProviders.Embedded" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.FileProviders.Embedded" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.FileProviders.Physical" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.FileProviders.Physical" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.FileSystemGlobbing" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.FileSystemGlobbing" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.HashCodeCombiner.Sources" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.HashCodeCombiner.Sources" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Hosting.Abstractions" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Hosting.Abstractions" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Hosting" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Hosting" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.HostFactoryResolver.Sources" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.HostFactoryResolver.Sources" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Http" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Http" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Localization.Abstractions" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Localization.Abstractions" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Localization" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Localization" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Logging.Abstractions" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Logging.Abstractions" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Logging.AzureAppServices" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Logging.AzureAppServices" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Logging.Configuration" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Logging.Configuration" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Logging.Console" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Logging.Console" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Logging.Debug" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Logging.Debug" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Logging.EventSource" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Logging.EventSource" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Logging.EventLog" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Logging.EventLog" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Logging.TraceSource" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Logging.TraceSource" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Logging.Testing" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Logging.Testing" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Logging" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Logging" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.ObjectPool" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.ObjectPool" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Options.ConfigurationExtensions" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Options.ConfigurationExtensions" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Options.DataAnnotations" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Options.DataAnnotations" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Options" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Options" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.ParameterDefaultValue.Sources" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.ParameterDefaultValue.Sources" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.Primitives" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.Primitives" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.TypeNameHelper.Sources" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.TypeNameHelper.Sources" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.ValueStopwatch.Sources" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.ValueStopwatch.Sources" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.WebEncoders" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Extensions.WebEncoders" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Internal.Extensions.Refs" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.Internal.Extensions.Refs" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.JSInterop" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.JSInterop" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Mono.WebAssembly.Interop" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Mono.WebAssembly.Interop" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Bcl.AsyncInterfaces" Version="1.1.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="Microsoft.Bcl.AsyncInterfaces" Version="1.2.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.CSharp" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="Microsoft.CSharp" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Win32.Registry" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="Microsoft.Win32.Registry" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Win32.SystemEvents" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="Microsoft.Win32.SystemEvents" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.ComponentModel.Annotations" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.ComponentModel.Annotations" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Diagnostics.EventLog" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Diagnostics.EventLog" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Drawing.Common" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Drawing.Common" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.IO.Pipelines" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.IO.Pipelines" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Net.Http.WinHttpHandler" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Net.Http.WinHttpHandler" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Net.WebSockets.WebSocketProtocol" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Net.WebSockets.WebSocketProtocol" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Reflection.Metadata" Version="1.8.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Reflection.Metadata" Version="1.9.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Runtime.CompilerServices.Unsafe" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Runtime.CompilerServices.Unsafe" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Security.Cryptography.Cng" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Security.Cryptography.Cng" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Security.Cryptography.Pkcs" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Security.Cryptography.Pkcs" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Security.Cryptography.Xml" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Security.Cryptography.Xml" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Security.Permissions" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Security.Permissions" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Security.Principal.Windows" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Security.Principal.Windows" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.ServiceProcess.ServiceController" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.ServiceProcess.ServiceController" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Text.Encodings.Web" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Text.Encodings.Web" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Text.Json" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Text.Json" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Threading.Channels" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Threading.Channels" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="System.Windows.Extensions" Version="4.7.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="System.Windows.Extensions" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Extensions.DependencyModel" Version="3.1.0-preview1.19470.5" CoherentParentDependency="Microsoft.Extensions.Logging">
|
<Dependency Name="Microsoft.Extensions.DependencyModel" Version="5.0.0-alpha1.19465.2" CoherentParentDependency="Microsoft.Extensions.Logging">
|
||||||
<Uri>https://github.com/dotnet/core-setup</Uri>
|
<Uri>https://github.com/dotnet/core-setup</Uri>
|
||||||
<Sha>b0ea03ec3af2a9c388f718fbb4978984ab339953</Sha>
|
<Sha>9042fe6c81aa3b47f58ccd94ff02e42f9f7a4e46</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.NETCore.App.Ref" Version="3.1.0-preview1.19470.5" CoherentParentDependency="Microsoft.Extensions.Logging">
|
<Dependency Name="Microsoft.NETCore.App.Ref" Version="5.0.0-alpha1.19465.2" CoherentParentDependency="Microsoft.Extensions.Logging">
|
||||||
<Uri>https://github.com/dotnet/core-setup</Uri>
|
<Uri>https://github.com/dotnet/core-setup</Uri>
|
||||||
<Sha>b0ea03ec3af2a9c388f718fbb4978984ab339953</Sha>
|
<Sha>9042fe6c81aa3b47f58ccd94ff02e42f9f7a4e46</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<!--
|
<!--
|
||||||
Win-x64 is used here because we have picked an arbitrary runtime identifier to flow the version of the latest NETCore.App runtime.
|
Win-x64 is used here because we have picked an arbitrary runtime identifier to flow the version of the latest NETCore.App runtime.
|
||||||
All Runtime.$rid packages should have the same version.
|
All Runtime.$rid packages should have the same version.
|
||||||
-->
|
-->
|
||||||
<Dependency Name="Microsoft.NETCore.App.Runtime.win-x64" Version="3.1.0-preview1.19470.5" CoherentParentDependency="Microsoft.Extensions.Logging">
|
<Dependency Name="Microsoft.NETCore.App.Runtime.win-x64" Version="5.0.0-alpha1.19465.2" CoherentParentDependency="Microsoft.Extensions.Logging">
|
||||||
<Uri>https://github.com/dotnet/core-setup</Uri>
|
<Uri>https://github.com/dotnet/core-setup</Uri>
|
||||||
<Sha>b0ea03ec3af2a9c388f718fbb4978984ab339953</Sha>
|
<Sha>9042fe6c81aa3b47f58ccd94ff02e42f9f7a4e46</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="NETStandard.Library.Ref" Version="2.1.0-preview1.19470.5" CoherentParentDependency="Microsoft.Extensions.Logging">
|
<Dependency Name="NETStandard.Library.Ref" Version="2.1.0-alpha1.19465.2" CoherentParentDependency="Microsoft.Extensions.Logging">
|
||||||
<Uri>https://github.com/dotnet/core-setup</Uri>
|
<Uri>https://github.com/dotnet/core-setup</Uri>
|
||||||
<Sha>b0ea03ec3af2a9c388f718fbb4978984ab339953</Sha>
|
<Sha>9042fe6c81aa3b47f58ccd94ff02e42f9f7a4e46</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
</ProductDependencies>
|
</ProductDependencies>
|
||||||
<ToolsetDependencies>
|
<ToolsetDependencies>
|
||||||
<!-- Listed explicitly to workaround https://github.com/dotnet/cli/issues/10528 -->
|
<!-- Listed explicitly to workaround https://github.com/dotnet/cli/issues/10528 -->
|
||||||
<Dependency Name="Microsoft.NETCore.Platforms" Version="3.1.0-preview1.19463.3" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
<Dependency Name="Microsoft.NETCore.Platforms" Version="5.0.0-alpha1.19462.7" CoherentParentDependency="Microsoft.NETCore.App.Runtime.win-x64">
|
||||||
<Uri>https://github.com/dotnet/corefx</Uri>
|
<Uri>https://github.com/dotnet/corefx</Uri>
|
||||||
<Sha>d0f0bfa5b123b4c1183c889cf4017bb529675502</Sha>
|
<Sha>be3d4bad4576eecda116d3e9a368cd6959ecf5ce</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Internal.AspNetCore.Analyzers" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Internal.AspNetCore.Analyzers" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.DotNet.GenAPI" Version="1.0.0-beta.19462.4">
|
<Dependency Name="Microsoft.DotNet.GenAPI" Version="1.0.0-beta.19462.4">
|
||||||
<Uri>https://github.com/dotnet/arcade</Uri>
|
<Uri>https://github.com/dotnet/arcade</Uri>
|
||||||
|
|
@ -424,13 +424,13 @@
|
||||||
<Uri>https://github.com/dotnet/arcade</Uri>
|
<Uri>https://github.com/dotnet/arcade</Uri>
|
||||||
<Sha>f8546fbab59a74a66c83b8cb76b3f6877ce1d374</Sha>
|
<Sha>f8546fbab59a74a66c83b8cb76b3f6877ce1d374</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.AspNetCore.Testing" Version="3.1.0-preview1.19470.1" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
<Dependency Name="Microsoft.AspNetCore.Testing" Version="5.0.0-alpha1.19467.2" CoherentParentDependency="Microsoft.EntityFrameworkCore">
|
||||||
<Uri>https://github.com/aspnet/Extensions</Uri>
|
<Uri>https://github.com/aspnet/Extensions</Uri>
|
||||||
<Sha>8b0d85434b8da04ab6395496803525db6003fa22</Sha>
|
<Sha>d15c5687db29e4e1f31a302fe243226b0a3a17e3</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
<Dependency Name="Microsoft.Net.Compilers.Toolset" Version="3.4.0-beta2-19462-08" CoherentParentDependency="Microsoft.Extensions.Logging">
|
<Dependency Name="Microsoft.Net.Compilers.Toolset" Version="3.4.0-beta1-19456-03" CoherentParentDependency="Microsoft.Extensions.Logging">
|
||||||
<Uri>https://github.com/dotnet/roslyn</Uri>
|
<Uri>https://github.com/dotnet/roslyn</Uri>
|
||||||
<Sha>cac1be1463d3b277184ed38115ae35b0cb236688</Sha>
|
<Sha>3c865821f2864393a0ff7fe22c92ded6d51a546c</Sha>
|
||||||
</Dependency>
|
</Dependency>
|
||||||
</ToolsetDependencies>
|
</ToolsetDependencies>
|
||||||
</Dependencies>
|
</Dependencies>
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,8 @@
|
||||||
-->
|
-->
|
||||||
<Project>
|
<Project>
|
||||||
<PropertyGroup Label="Version settings">
|
<PropertyGroup Label="Version settings">
|
||||||
<AspNetCoreMajorVersion>3</AspNetCoreMajorVersion>
|
<AspNetCoreMajorVersion>5</AspNetCoreMajorVersion>
|
||||||
<AspNetCoreMinorVersion>1</AspNetCoreMinorVersion>
|
<AspNetCoreMinorVersion>0</AspNetCoreMinorVersion>
|
||||||
<AspNetCorePatchVersion>0</AspNetCorePatchVersion>
|
<AspNetCorePatchVersion>0</AspNetCorePatchVersion>
|
||||||
<PreReleasePreviewNumber>1</PreReleasePreviewNumber>
|
<PreReleasePreviewNumber>1</PreReleasePreviewNumber>
|
||||||
<!--
|
<!--
|
||||||
|
|
@ -15,10 +15,8 @@
|
||||||
-->
|
-->
|
||||||
<StabilizePackageVersion Condition="'$(StabilizePackageVersion)' == ''">false</StabilizePackageVersion>
|
<StabilizePackageVersion Condition="'$(StabilizePackageVersion)' == ''">false</StabilizePackageVersion>
|
||||||
<DotNetFinalVersionKind Condition="'$(StabilizePackageVersion)' == 'true'">release</DotNetFinalVersionKind>
|
<DotNetFinalVersionKind Condition="'$(StabilizePackageVersion)' == 'true'">release</DotNetFinalVersionKind>
|
||||||
<IncludePreReleaseLabelInPackageVersion>true</IncludePreReleaseLabelInPackageVersion>
|
<PreReleaseVersionLabel>alpha$(PreReleasePreviewNumber)</PreReleaseVersionLabel>
|
||||||
<IncludePreReleaseLabelInPackageVersion Condition=" '$(DotNetFinalVersionKind)' == 'release' ">false</IncludePreReleaseLabelInPackageVersion>
|
<PreReleaseBrandingLabel>Alpha $(PreReleasePreviewNumber)</PreReleaseBrandingLabel>
|
||||||
<PreReleaseVersionLabel>preview$(PreReleasePreviewNumber)</PreReleaseVersionLabel>
|
|
||||||
<PreReleaseBrandingLabel>Preview $(PreReleasePreviewNumber)</PreReleaseBrandingLabel>
|
|
||||||
<AspNetCoreMajorMinorVersion>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion)</AspNetCoreMajorMinorVersion>
|
<AspNetCoreMajorMinorVersion>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion)</AspNetCoreMajorMinorVersion>
|
||||||
<!-- Additional assembly attributes are already configured to include the source revision ID. -->
|
<!-- Additional assembly attributes are already configured to include the source revision ID. -->
|
||||||
<IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
|
<IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
|
||||||
|
|
@ -59,114 +57,114 @@
|
||||||
<!-- Packages from dotnet/arcade -->
|
<!-- Packages from dotnet/arcade -->
|
||||||
<MicrosoftDotNetGenAPIPackageVersion>1.0.0-beta.19462.4</MicrosoftDotNetGenAPIPackageVersion>
|
<MicrosoftDotNetGenAPIPackageVersion>1.0.0-beta.19462.4</MicrosoftDotNetGenAPIPackageVersion>
|
||||||
<!-- Packages from dotnet/roslyn -->
|
<!-- Packages from dotnet/roslyn -->
|
||||||
<MicrosoftNetCompilersToolsetPackageVersion>3.4.0-beta2-19462-08</MicrosoftNetCompilersToolsetPackageVersion>
|
<MicrosoftNetCompilersToolsetPackageVersion>3.4.0-beta1-19456-03</MicrosoftNetCompilersToolsetPackageVersion>
|
||||||
<!-- Packages from dotnet/core-setup -->
|
<!-- Packages from dotnet/core-setup -->
|
||||||
<MicrosoftExtensionsDependencyModelPackageVersion>3.1.0-preview1.19470.5</MicrosoftExtensionsDependencyModelPackageVersion>
|
<MicrosoftExtensionsDependencyModelPackageVersion>5.0.0-alpha1.19465.2</MicrosoftExtensionsDependencyModelPackageVersion>
|
||||||
<MicrosoftNETCoreAppRefPackageVersion>3.1.0-preview1.19470.5</MicrosoftNETCoreAppRefPackageVersion>
|
<MicrosoftNETCoreAppRefPackageVersion>5.0.0-alpha1.19465.2</MicrosoftNETCoreAppRefPackageVersion>
|
||||||
<MicrosoftNETCoreAppRuntimewinx64PackageVersion>3.1.0-preview1.19470.5</MicrosoftNETCoreAppRuntimewinx64PackageVersion>
|
<MicrosoftNETCoreAppRuntimewinx64PackageVersion>5.0.0-alpha1.19465.2</MicrosoftNETCoreAppRuntimewinx64PackageVersion>
|
||||||
<NETStandardLibraryRefPackageVersion>2.1.0-preview1.19470.5</NETStandardLibraryRefPackageVersion>
|
<NETStandardLibraryRefPackageVersion>2.1.0-alpha1.19465.2</NETStandardLibraryRefPackageVersion>
|
||||||
<!-- Packages from dotnet/corefx -->
|
<!-- Packages from dotnet/corefx -->
|
||||||
<MicrosoftBclAsyncInterfacesPackageVersion>1.1.0-preview1.19463.3</MicrosoftBclAsyncInterfacesPackageVersion>
|
<MicrosoftBclAsyncInterfacesPackageVersion>1.2.0-alpha1.19462.7</MicrosoftBclAsyncInterfacesPackageVersion>
|
||||||
<MicrosoftCSharpPackageVersion>4.7.0-preview1.19463.3</MicrosoftCSharpPackageVersion>
|
<MicrosoftCSharpPackageVersion>5.0.0-alpha1.19462.7</MicrosoftCSharpPackageVersion>
|
||||||
<MicrosoftWin32RegistryPackageVersion>4.7.0-preview1.19463.3</MicrosoftWin32RegistryPackageVersion>
|
<MicrosoftWin32RegistryPackageVersion>5.0.0-alpha1.19462.7</MicrosoftWin32RegistryPackageVersion>
|
||||||
<MicrosoftWin32SystemEventsPackageVersion>4.7.0-preview1.19463.3</MicrosoftWin32SystemEventsPackageVersion>
|
<MicrosoftWin32SystemEventsPackageVersion>5.0.0-alpha1.19462.7</MicrosoftWin32SystemEventsPackageVersion>
|
||||||
<SystemComponentModelAnnotationsPackageVersion>4.7.0-preview1.19463.3</SystemComponentModelAnnotationsPackageVersion>
|
<SystemComponentModelAnnotationsPackageVersion>5.0.0-alpha1.19462.7</SystemComponentModelAnnotationsPackageVersion>
|
||||||
<SystemDiagnosticsEventLogPackageVersion>4.7.0-preview1.19463.3</SystemDiagnosticsEventLogPackageVersion>
|
<SystemDiagnosticsEventLogPackageVersion>5.0.0-alpha1.19462.7</SystemDiagnosticsEventLogPackageVersion>
|
||||||
<SystemDrawingCommonPackageVersion>4.7.0-preview1.19463.3</SystemDrawingCommonPackageVersion>
|
<SystemDrawingCommonPackageVersion>5.0.0-alpha1.19462.7</SystemDrawingCommonPackageVersion>
|
||||||
<SystemIOPipelinesPackageVersion>4.7.0-preview1.19463.3</SystemIOPipelinesPackageVersion>
|
<SystemIOPipelinesPackageVersion>5.0.0-alpha1.19462.7</SystemIOPipelinesPackageVersion>
|
||||||
<SystemNetHttpWinHttpHandlerPackageVersion>4.7.0-preview1.19463.3</SystemNetHttpWinHttpHandlerPackageVersion>
|
<SystemNetHttpWinHttpHandlerPackageVersion>5.0.0-alpha1.19462.7</SystemNetHttpWinHttpHandlerPackageVersion>
|
||||||
<SystemNetWebSocketsWebSocketProtocolPackageVersion>4.7.0-preview1.19463.3</SystemNetWebSocketsWebSocketProtocolPackageVersion>
|
<SystemNetWebSocketsWebSocketProtocolPackageVersion>5.0.0-alpha1.19462.7</SystemNetWebSocketsWebSocketProtocolPackageVersion>
|
||||||
<SystemReflectionMetadataPackageVersion>1.8.0-preview1.19463.3</SystemReflectionMetadataPackageVersion>
|
<SystemReflectionMetadataPackageVersion>1.9.0-alpha1.19462.7</SystemReflectionMetadataPackageVersion>
|
||||||
<SystemRuntimeCompilerServicesUnsafePackageVersion>4.7.0-preview1.19463.3</SystemRuntimeCompilerServicesUnsafePackageVersion>
|
<SystemRuntimeCompilerServicesUnsafePackageVersion>5.0.0-alpha1.19462.7</SystemRuntimeCompilerServicesUnsafePackageVersion>
|
||||||
<SystemSecurityCryptographyCngPackageVersion>4.7.0-preview1.19463.3</SystemSecurityCryptographyCngPackageVersion>
|
<SystemSecurityCryptographyCngPackageVersion>5.0.0-alpha1.19462.7</SystemSecurityCryptographyCngPackageVersion>
|
||||||
<SystemSecurityCryptographyPkcsPackageVersion>4.7.0-preview1.19463.3</SystemSecurityCryptographyPkcsPackageVersion>
|
<SystemSecurityCryptographyPkcsPackageVersion>5.0.0-alpha1.19462.7</SystemSecurityCryptographyPkcsPackageVersion>
|
||||||
<SystemSecurityCryptographyXmlPackageVersion>4.7.0-preview1.19463.3</SystemSecurityCryptographyXmlPackageVersion>
|
<SystemSecurityCryptographyXmlPackageVersion>5.0.0-alpha1.19462.7</SystemSecurityCryptographyXmlPackageVersion>
|
||||||
<SystemSecurityPermissionsPackageVersion>4.7.0-preview1.19463.3</SystemSecurityPermissionsPackageVersion>
|
<SystemSecurityPermissionsPackageVersion>5.0.0-alpha1.19462.7</SystemSecurityPermissionsPackageVersion>
|
||||||
<SystemSecurityPrincipalWindowsPackageVersion>4.7.0-preview1.19463.3</SystemSecurityPrincipalWindowsPackageVersion>
|
<SystemSecurityPrincipalWindowsPackageVersion>5.0.0-alpha1.19462.7</SystemSecurityPrincipalWindowsPackageVersion>
|
||||||
<SystemServiceProcessServiceControllerPackageVersion>4.7.0-preview1.19463.3</SystemServiceProcessServiceControllerPackageVersion>
|
<SystemServiceProcessServiceControllerPackageVersion>5.0.0-alpha1.19462.7</SystemServiceProcessServiceControllerPackageVersion>
|
||||||
<SystemTextEncodingsWebPackageVersion>4.7.0-preview1.19463.3</SystemTextEncodingsWebPackageVersion>
|
<SystemTextEncodingsWebPackageVersion>5.0.0-alpha1.19462.7</SystemTextEncodingsWebPackageVersion>
|
||||||
<SystemTextJsonPackageVersion>4.7.0-preview1.19463.3</SystemTextJsonPackageVersion>
|
<SystemTextJsonPackageVersion>5.0.0-alpha1.19462.7</SystemTextJsonPackageVersion>
|
||||||
<SystemThreadingChannelsPackageVersion>4.7.0-preview1.19463.3</SystemThreadingChannelsPackageVersion>
|
<SystemThreadingChannelsPackageVersion>5.0.0-alpha1.19462.7</SystemThreadingChannelsPackageVersion>
|
||||||
<SystemWindowsExtensionsPackageVersion>4.7.0-preview1.19463.3</SystemWindowsExtensionsPackageVersion>
|
<SystemWindowsExtensionsPackageVersion>5.0.0-alpha1.19462.7</SystemWindowsExtensionsPackageVersion>
|
||||||
<!-- Only listed explicitly to workaround https://github.com/dotnet/cli/issues/10528 -->
|
<!-- Only listed explicitly to workaround https://github.com/dotnet/cli/issues/10528 -->
|
||||||
<MicrosoftNETCorePlatformsPackageVersion>3.1.0-preview1.19463.3</MicrosoftNETCorePlatformsPackageVersion>
|
<MicrosoftNETCorePlatformsPackageVersion>5.0.0-alpha1.19462.7</MicrosoftNETCorePlatformsPackageVersion>
|
||||||
<!-- Packages from aspnet/Blazor -->
|
<!-- Packages from aspnet/Blazor -->
|
||||||
<MicrosoftAspNetCoreBlazorMonoPackageVersion>3.0.0-preview9.19462.2</MicrosoftAspNetCoreBlazorMonoPackageVersion>
|
<MicrosoftAspNetCoreBlazorMonoPackageVersion>5.0.0-alpha1.19463.2</MicrosoftAspNetCoreBlazorMonoPackageVersion>
|
||||||
<!-- Packages from aspnet/Extensions -->
|
<!-- Packages from aspnet/Extensions -->
|
||||||
<InternalAspNetCoreAnalyzersPackageVersion>3.1.0-preview1.19470.1</InternalAspNetCoreAnalyzersPackageVersion>
|
<InternalAspNetCoreAnalyzersPackageVersion>5.0.0-alpha1.19467.2</InternalAspNetCoreAnalyzersPackageVersion>
|
||||||
<MicrosoftAspNetCoreAnalyzerTestingPackageVersion>3.1.0-preview1.19470.1</MicrosoftAspNetCoreAnalyzerTestingPackageVersion>
|
<MicrosoftAspNetCoreAnalyzerTestingPackageVersion>5.0.0-alpha1.19467.2</MicrosoftAspNetCoreAnalyzerTestingPackageVersion>
|
||||||
<MicrosoftAspNetCoreBenchmarkRunnerSourcesPackageVersion>3.1.0-preview1.19470.1</MicrosoftAspNetCoreBenchmarkRunnerSourcesPackageVersion>
|
<MicrosoftAspNetCoreBenchmarkRunnerSourcesPackageVersion>5.0.0-alpha1.19467.2</MicrosoftAspNetCoreBenchmarkRunnerSourcesPackageVersion>
|
||||||
<MicrosoftAspNetCoreTestingPackageVersion>3.1.0-preview1.19470.1</MicrosoftAspNetCoreTestingPackageVersion>
|
<MicrosoftAspNetCoreTestingPackageVersion>5.0.0-alpha1.19467.2</MicrosoftAspNetCoreTestingPackageVersion>
|
||||||
<MicrosoftExtensionsActivatorUtilitiesSourcesPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsActivatorUtilitiesSourcesPackageVersion>
|
<MicrosoftExtensionsActivatorUtilitiesSourcesPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsActivatorUtilitiesSourcesPackageVersion>
|
||||||
<MicrosoftExtensionsCachingAbstractionsPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsCachingAbstractionsPackageVersion>
|
<MicrosoftExtensionsCachingAbstractionsPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsCachingAbstractionsPackageVersion>
|
||||||
<MicrosoftExtensionsCachingMemoryPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsCachingMemoryPackageVersion>
|
<MicrosoftExtensionsCachingMemoryPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsCachingMemoryPackageVersion>
|
||||||
<MicrosoftExtensionsCachingSqlServerPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsCachingSqlServerPackageVersion>
|
<MicrosoftExtensionsCachingSqlServerPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsCachingSqlServerPackageVersion>
|
||||||
<MicrosoftExtensionsCachingStackExchangeRedisPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsCachingStackExchangeRedisPackageVersion>
|
<MicrosoftExtensionsCachingStackExchangeRedisPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsCachingStackExchangeRedisPackageVersion>
|
||||||
<MicrosoftExtensionsCommandLineUtilsSourcesPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsCommandLineUtilsSourcesPackageVersion>
|
<MicrosoftExtensionsCommandLineUtilsSourcesPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsCommandLineUtilsSourcesPackageVersion>
|
||||||
<MicrosoftExtensionsConfigurationAbstractionsPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsConfigurationAbstractionsPackageVersion>
|
<MicrosoftExtensionsConfigurationAbstractionsPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsConfigurationAbstractionsPackageVersion>
|
||||||
<MicrosoftExtensionsConfigurationAzureKeyVaultPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsConfigurationAzureKeyVaultPackageVersion>
|
<MicrosoftExtensionsConfigurationAzureKeyVaultPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsConfigurationAzureKeyVaultPackageVersion>
|
||||||
<MicrosoftExtensionsConfigurationBinderPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsConfigurationBinderPackageVersion>
|
<MicrosoftExtensionsConfigurationBinderPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsConfigurationBinderPackageVersion>
|
||||||
<MicrosoftExtensionsConfigurationCommandLinePackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsConfigurationCommandLinePackageVersion>
|
<MicrosoftExtensionsConfigurationCommandLinePackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsConfigurationCommandLinePackageVersion>
|
||||||
<MicrosoftExtensionsConfigurationEnvironmentVariablesPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsConfigurationEnvironmentVariablesPackageVersion>
|
<MicrosoftExtensionsConfigurationEnvironmentVariablesPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsConfigurationEnvironmentVariablesPackageVersion>
|
||||||
<MicrosoftExtensionsConfigurationFileExtensionsPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsConfigurationFileExtensionsPackageVersion>
|
<MicrosoftExtensionsConfigurationFileExtensionsPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsConfigurationFileExtensionsPackageVersion>
|
||||||
<MicrosoftExtensionsConfigurationIniPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsConfigurationIniPackageVersion>
|
<MicrosoftExtensionsConfigurationIniPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsConfigurationIniPackageVersion>
|
||||||
<MicrosoftExtensionsConfigurationJsonPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsConfigurationJsonPackageVersion>
|
<MicrosoftExtensionsConfigurationJsonPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsConfigurationJsonPackageVersion>
|
||||||
<MicrosoftExtensionsConfigurationKeyPerFilePackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsConfigurationKeyPerFilePackageVersion>
|
<MicrosoftExtensionsConfigurationKeyPerFilePackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsConfigurationKeyPerFilePackageVersion>
|
||||||
<MicrosoftExtensionsConfigurationPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsConfigurationPackageVersion>
|
<MicrosoftExtensionsConfigurationPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsConfigurationPackageVersion>
|
||||||
<MicrosoftExtensionsConfigurationUserSecretsPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsConfigurationUserSecretsPackageVersion>
|
<MicrosoftExtensionsConfigurationUserSecretsPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsConfigurationUserSecretsPackageVersion>
|
||||||
<MicrosoftExtensionsConfigurationXmlPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsConfigurationXmlPackageVersion>
|
<MicrosoftExtensionsConfigurationXmlPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsConfigurationXmlPackageVersion>
|
||||||
<MicrosoftExtensionsDependencyInjectionAbstractionsPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsDependencyInjectionAbstractionsPackageVersion>
|
<MicrosoftExtensionsDependencyInjectionAbstractionsPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsDependencyInjectionAbstractionsPackageVersion>
|
||||||
<MicrosoftExtensionsDependencyInjectionPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsDependencyInjectionPackageVersion>
|
<MicrosoftExtensionsDependencyInjectionPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsDependencyInjectionPackageVersion>
|
||||||
<MicrosoftExtensionsDiagnosticAdapterPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsDiagnosticAdapterPackageVersion>
|
<MicrosoftExtensionsDiagnosticAdapterPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsDiagnosticAdapterPackageVersion>
|
||||||
<MicrosoftExtensionsDiagnosticsHealthChecksAbstractionsPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsDiagnosticsHealthChecksAbstractionsPackageVersion>
|
<MicrosoftExtensionsDiagnosticsHealthChecksAbstractionsPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsDiagnosticsHealthChecksAbstractionsPackageVersion>
|
||||||
<MicrosoftExtensionsDiagnosticsHealthChecksPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsDiagnosticsHealthChecksPackageVersion>
|
<MicrosoftExtensionsDiagnosticsHealthChecksPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsDiagnosticsHealthChecksPackageVersion>
|
||||||
<MicrosoftExtensionsFileProvidersAbstractionsPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsFileProvidersAbstractionsPackageVersion>
|
<MicrosoftExtensionsFileProvidersAbstractionsPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsFileProvidersAbstractionsPackageVersion>
|
||||||
<MicrosoftExtensionsFileProvidersCompositePackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsFileProvidersCompositePackageVersion>
|
<MicrosoftExtensionsFileProvidersCompositePackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsFileProvidersCompositePackageVersion>
|
||||||
<MicrosoftExtensionsFileProvidersEmbeddedPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsFileProvidersEmbeddedPackageVersion>
|
<MicrosoftExtensionsFileProvidersEmbeddedPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsFileProvidersEmbeddedPackageVersion>
|
||||||
<MicrosoftExtensionsFileProvidersPhysicalPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsFileProvidersPhysicalPackageVersion>
|
<MicrosoftExtensionsFileProvidersPhysicalPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsFileProvidersPhysicalPackageVersion>
|
||||||
<MicrosoftExtensionsFileSystemGlobbingPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsFileSystemGlobbingPackageVersion>
|
<MicrosoftExtensionsFileSystemGlobbingPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsFileSystemGlobbingPackageVersion>
|
||||||
<MicrosoftExtensionsHashCodeCombinerSourcesPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsHashCodeCombinerSourcesPackageVersion>
|
<MicrosoftExtensionsHashCodeCombinerSourcesPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsHashCodeCombinerSourcesPackageVersion>
|
||||||
<MicrosoftExtensionsHostingAbstractionsPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsHostingAbstractionsPackageVersion>
|
<MicrosoftExtensionsHostingAbstractionsPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsHostingAbstractionsPackageVersion>
|
||||||
<MicrosoftExtensionsHostingPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsHostingPackageVersion>
|
<MicrosoftExtensionsHostingPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsHostingPackageVersion>
|
||||||
<MicrosoftExtensionsHostFactoryResolverSourcesPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsHostFactoryResolverSourcesPackageVersion>
|
<MicrosoftExtensionsHostFactoryResolverSourcesPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsHostFactoryResolverSourcesPackageVersion>
|
||||||
<MicrosoftExtensionsHttpPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsHttpPackageVersion>
|
<MicrosoftExtensionsHttpPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsHttpPackageVersion>
|
||||||
<MicrosoftExtensionsLocalizationAbstractionsPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsLocalizationAbstractionsPackageVersion>
|
<MicrosoftExtensionsLocalizationAbstractionsPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsLocalizationAbstractionsPackageVersion>
|
||||||
<MicrosoftExtensionsLocalizationPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsLocalizationPackageVersion>
|
<MicrosoftExtensionsLocalizationPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsLocalizationPackageVersion>
|
||||||
<MicrosoftExtensionsLoggingAbstractionsPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsLoggingAbstractionsPackageVersion>
|
<MicrosoftExtensionsLoggingAbstractionsPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsLoggingAbstractionsPackageVersion>
|
||||||
<MicrosoftExtensionsLoggingAzureAppServicesPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsLoggingAzureAppServicesPackageVersion>
|
<MicrosoftExtensionsLoggingAzureAppServicesPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsLoggingAzureAppServicesPackageVersion>
|
||||||
<MicrosoftExtensionsLoggingConfigurationPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsLoggingConfigurationPackageVersion>
|
<MicrosoftExtensionsLoggingConfigurationPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsLoggingConfigurationPackageVersion>
|
||||||
<MicrosoftExtensionsLoggingConsolePackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsLoggingConsolePackageVersion>
|
<MicrosoftExtensionsLoggingConsolePackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsLoggingConsolePackageVersion>
|
||||||
<MicrosoftExtensionsLoggingDebugPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsLoggingDebugPackageVersion>
|
<MicrosoftExtensionsLoggingDebugPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsLoggingDebugPackageVersion>
|
||||||
<MicrosoftExtensionsLoggingEventSourcePackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsLoggingEventSourcePackageVersion>
|
<MicrosoftExtensionsLoggingEventSourcePackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsLoggingEventSourcePackageVersion>
|
||||||
<MicrosoftExtensionsLoggingEventLogPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsLoggingEventLogPackageVersion>
|
<MicrosoftExtensionsLoggingEventLogPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsLoggingEventLogPackageVersion>
|
||||||
<MicrosoftExtensionsLoggingPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsLoggingPackageVersion>
|
<MicrosoftExtensionsLoggingPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsLoggingPackageVersion>
|
||||||
<MicrosoftExtensionsLoggingTestingPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsLoggingTestingPackageVersion>
|
<MicrosoftExtensionsLoggingTestingPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsLoggingTestingPackageVersion>
|
||||||
<MicrosoftExtensionsLoggingTraceSourcePackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsLoggingTraceSourcePackageVersion>
|
<MicrosoftExtensionsLoggingTraceSourcePackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsLoggingTraceSourcePackageVersion>
|
||||||
<MicrosoftExtensionsObjectPoolPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsObjectPoolPackageVersion>
|
<MicrosoftExtensionsObjectPoolPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsObjectPoolPackageVersion>
|
||||||
<MicrosoftExtensionsOptionsConfigurationExtensionsPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsOptionsConfigurationExtensionsPackageVersion>
|
<MicrosoftExtensionsOptionsConfigurationExtensionsPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsOptionsConfigurationExtensionsPackageVersion>
|
||||||
<MicrosoftExtensionsOptionsDataAnnotationsPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsOptionsDataAnnotationsPackageVersion>
|
<MicrosoftExtensionsOptionsDataAnnotationsPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsOptionsDataAnnotationsPackageVersion>
|
||||||
<MicrosoftExtensionsOptionsPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsOptionsPackageVersion>
|
<MicrosoftExtensionsOptionsPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsOptionsPackageVersion>
|
||||||
<MicrosoftExtensionsParameterDefaultValueSourcesPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsParameterDefaultValueSourcesPackageVersion>
|
<MicrosoftExtensionsParameterDefaultValueSourcesPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsParameterDefaultValueSourcesPackageVersion>
|
||||||
<MicrosoftExtensionsPrimitivesPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsPrimitivesPackageVersion>
|
<MicrosoftExtensionsPrimitivesPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsPrimitivesPackageVersion>
|
||||||
<MicrosoftExtensionsTypeNameHelperSourcesPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsTypeNameHelperSourcesPackageVersion>
|
<MicrosoftExtensionsTypeNameHelperSourcesPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsTypeNameHelperSourcesPackageVersion>
|
||||||
<MicrosoftExtensionsValueStopwatchSourcesPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsValueStopwatchSourcesPackageVersion>
|
<MicrosoftExtensionsValueStopwatchSourcesPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsValueStopwatchSourcesPackageVersion>
|
||||||
<MicrosoftExtensionsWebEncodersPackageVersion>3.1.0-preview1.19470.1</MicrosoftExtensionsWebEncodersPackageVersion>
|
<MicrosoftExtensionsWebEncodersPackageVersion>5.0.0-alpha1.19467.2</MicrosoftExtensionsWebEncodersPackageVersion>
|
||||||
<MicrosoftInternalExtensionsRefsPackageVersion>3.1.0-preview1.19470.1</MicrosoftInternalExtensionsRefsPackageVersion>
|
<MicrosoftInternalExtensionsRefsPackageVersion>5.0.0-alpha1.19467.2</MicrosoftInternalExtensionsRefsPackageVersion>
|
||||||
<MicrosoftJSInteropPackageVersion>3.1.0-preview1.19470.1</MicrosoftJSInteropPackageVersion>
|
<MicrosoftJSInteropPackageVersion>5.0.0-alpha1.19467.2</MicrosoftJSInteropPackageVersion>
|
||||||
<MonoWebAssemblyInteropPackageVersion>3.1.0-preview1.19470.1</MonoWebAssemblyInteropPackageVersion>
|
<MonoWebAssemblyInteropPackageVersion>5.0.0-alpha1.19467.2</MonoWebAssemblyInteropPackageVersion>
|
||||||
<!-- Packages from aspnet/EntityFrameworkCore -->
|
<!-- Packages from aspnet/EntityFrameworkCore -->
|
||||||
<dotnetefPackageVersion>3.1.0-preview1.19471.7</dotnetefPackageVersion>
|
<dotnetefPackageVersion>5.0.0-alpha1.19468.19</dotnetefPackageVersion>
|
||||||
<MicrosoftEntityFrameworkCoreInMemoryPackageVersion>3.1.0-preview1.19471.7</MicrosoftEntityFrameworkCoreInMemoryPackageVersion>
|
<MicrosoftEntityFrameworkCoreInMemoryPackageVersion>5.0.0-alpha1.19468.19</MicrosoftEntityFrameworkCoreInMemoryPackageVersion>
|
||||||
<MicrosoftEntityFrameworkCoreRelationalPackageVersion>3.1.0-preview1.19471.7</MicrosoftEntityFrameworkCoreRelationalPackageVersion>
|
<MicrosoftEntityFrameworkCoreRelationalPackageVersion>5.0.0-alpha1.19468.19</MicrosoftEntityFrameworkCoreRelationalPackageVersion>
|
||||||
<MicrosoftEntityFrameworkCoreSqlitePackageVersion>3.1.0-preview1.19471.7</MicrosoftEntityFrameworkCoreSqlitePackageVersion>
|
<MicrosoftEntityFrameworkCoreSqlitePackageVersion>5.0.0-alpha1.19468.19</MicrosoftEntityFrameworkCoreSqlitePackageVersion>
|
||||||
<MicrosoftEntityFrameworkCoreSqlServerPackageVersion>3.1.0-preview1.19471.7</MicrosoftEntityFrameworkCoreSqlServerPackageVersion>
|
<MicrosoftEntityFrameworkCoreSqlServerPackageVersion>5.0.0-alpha1.19468.19</MicrosoftEntityFrameworkCoreSqlServerPackageVersion>
|
||||||
<MicrosoftEntityFrameworkCoreToolsPackageVersion>3.1.0-preview1.19471.7</MicrosoftEntityFrameworkCoreToolsPackageVersion>
|
<MicrosoftEntityFrameworkCoreToolsPackageVersion>5.0.0-alpha1.19468.19</MicrosoftEntityFrameworkCoreToolsPackageVersion>
|
||||||
<MicrosoftEntityFrameworkCorePackageVersion>3.1.0-preview1.19471.7</MicrosoftEntityFrameworkCorePackageVersion>
|
<MicrosoftEntityFrameworkCorePackageVersion>5.0.0-alpha1.19468.19</MicrosoftEntityFrameworkCorePackageVersion>
|
||||||
<!-- Packages from aspnet/AspNetCore-Tooling -->
|
<!-- Packages from aspnet/AspNetCore-Tooling -->
|
||||||
<MicrosoftAspNetCoreMvcRazorExtensionsPackageVersion>3.1.0-preview1.19472.1</MicrosoftAspNetCoreMvcRazorExtensionsPackageVersion>
|
<MicrosoftAspNetCoreMvcRazorExtensionsPackageVersion>5.0.0-alpha1.19467.1</MicrosoftAspNetCoreMvcRazorExtensionsPackageVersion>
|
||||||
<MicrosoftAspNetCoreRazorLanguagePackageVersion>3.1.0-preview1.19472.1</MicrosoftAspNetCoreRazorLanguagePackageVersion>
|
<MicrosoftAspNetCoreRazorLanguagePackageVersion>5.0.0-alpha1.19467.1</MicrosoftAspNetCoreRazorLanguagePackageVersion>
|
||||||
<MicrosoftCodeAnalysisRazorPackageVersion>3.1.0-preview1.19472.1</MicrosoftCodeAnalysisRazorPackageVersion>
|
<MicrosoftCodeAnalysisRazorPackageVersion>5.0.0-alpha1.19467.1</MicrosoftCodeAnalysisRazorPackageVersion>
|
||||||
<MicrosoftNETSdkRazorPackageVersion>3.1.0-preview1.19472.1</MicrosoftNETSdkRazorPackageVersion>
|
<MicrosoftNETSdkRazorPackageVersion>5.0.0-alpha1.19467.1</MicrosoftNETSdkRazorPackageVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<!--
|
<!--
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,15 @@
|
||||||
<!-- Use this file to workaround issues. List the issue tracking the item to fix so we can remove the workaround when the issue is resolved. -->
|
<!-- Use this file to workaround issues. List the issue tracking the item to fix so we can remove the workaround when the issue is resolved. -->
|
||||||
<Project>
|
<Project>
|
||||||
<!-- Workaround while there is no 3.1 SDK available, suppress unsupported version error -->
|
<!-- Workaround while there is no 5.0 SDK available, suppress unsupported version error -->
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<NETCoreAppMaximumVersion>3.1</NETCoreAppMaximumVersion>
|
<NETCoreAppMaximumVersion>5.0</NETCoreAppMaximumVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<!-- Reference base shared framework at incoming dependency flow version, not bundled sdk version. -->
|
<!-- Reference base shared framework at incoming dependency flow version, not bundled sdk version. -->
|
||||||
<FrameworkReference
|
<FrameworkReference
|
||||||
Update="Microsoft.NETCore.App"
|
Update="Microsoft.NETCore.App"
|
||||||
Condition="'$(TargetFramework)' == 'netcoreapp3.1'"
|
Condition="'$(TargetFramework)' == '$(DefaultNetCoreTargetFramework)'"
|
||||||
RuntimeFrameworkVersion="$(MicrosoftNETCoreAppRuntimeVersion)"
|
RuntimeFrameworkVersion="$(MicrosoftNETCoreAppRuntimeVersion)"
|
||||||
TargetingPackVersion="$(MicrosoftNETCoreAppRefPackageVersion)"
|
TargetingPackVersion="$(MicrosoftNETCoreAppRefPackageVersion)"
|
||||||
/>
|
/>
|
||||||
|
|
@ -25,11 +25,6 @@
|
||||||
<Reference Include="Microsoft.AspNetCore.Mvc" Condition="'$(UsingMicrosoftNETSdkWeb)' == 'true' AND '$(TargetFrameworkIdentifier)' == '.NETCoreApp' AND '$(GenerateRazorAssemblyInfo)' == 'true'" />
|
<Reference Include="Microsoft.AspNetCore.Mvc" Condition="'$(UsingMicrosoftNETSdkWeb)' == 'true' AND '$(TargetFrameworkIdentifier)' == '.NETCoreApp' AND '$(GenerateRazorAssemblyInfo)' == 'true'" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<!-- Workaround https://github.com/dotnet/cli/issues/10528 -->
|
|
||||||
<PropertyGroup>
|
|
||||||
<BundledNETCorePlatformsPackageVersion>$(MicrosoftNETCorePlatformsPackageVersion)</BundledNETCorePlatformsPackageVersion>
|
|
||||||
</PropertyGroup>
|
|
||||||
|
|
||||||
<!-- Workaround https://github.com/aspnet/AspNetCore/issues/7503. This chains GenerateSourceLinkFile before razor component targets run. -->
|
<!-- Workaround https://github.com/aspnet/AspNetCore/issues/7503. This chains GenerateSourceLinkFile before razor component targets run. -->
|
||||||
<!-- Workaround https://github.com/dotnet/source-build/issues/1112. Source link is currently disabled in source build so do not apply this worksaround. -->
|
<!-- Workaround https://github.com/dotnet/source-build/issues/1112. Source link is currently disabled in source build so do not apply this worksaround. -->
|
||||||
<Target Condition="'$(DotNetBuildFromSource)' != 'true'"
|
<Target Condition="'$(DotNetBuildFromSource)' != 'true'"
|
||||||
|
|
|
||||||
|
|
@ -48,9 +48,10 @@ Write-Host "Extracting to $tempDir"
|
||||||
|
|
||||||
if (Get-Command -Name 'Microsoft.PowerShell.Archive\Expand-Archive' -ErrorAction Ignore) {
|
if (Get-Command -Name 'Microsoft.PowerShell.Archive\Expand-Archive' -ErrorAction Ignore) {
|
||||||
# Use built-in commands where possible as they are cross-plat compatible
|
# Use built-in commands where possible as they are cross-plat compatible
|
||||||
Microsoft.PowerShell.Archive\Expand-Archive -Path "nodejs.zip" -DestinationPath $tempDir
|
Microsoft.PowerShell.Archive\Expand-Archive -Path "nodejs.zip" -DestinationPath $tempDir -Force
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
Remove-Item $tempDir -Recurse -ErrorAction Ignore
|
||||||
# Fallback to old approach for old installations of PowerShell
|
# Fallback to old approach for old installations of PowerShell
|
||||||
Add-Type -AssemblyName System.IO.Compression.FileSystem
|
Add-Type -AssemblyName System.IO.Compression.FileSystem
|
||||||
[System.IO.Compression.ZipFile]::ExtractToDirectory("nodejs.zip", $tempDir)
|
[System.IO.Compression.ZipFile]::ExtractToDirectory("nodejs.zip", $tempDir)
|
||||||
|
|
|
||||||
|
|
@ -169,7 +169,7 @@ try {
|
||||||
Write-Host "Run git diff to check for pending changes"
|
Write-Host "Run git diff to check for pending changes"
|
||||||
|
|
||||||
# Redirect stderr to stdout because PowerShell does not consistently handle output to stderr
|
# Redirect stderr to stdout because PowerShell does not consistently handle output to stderr
|
||||||
$changedFiles = & cmd /c 'git --no-pager diff --ignore-space-at-eol --name-only 2>nul'
|
$changedFiles = & cmd /c 'git --no-pager diff --ignore-space-change --name-only 2>nul'
|
||||||
|
|
||||||
# Temporary: Disable check for blazor js file
|
# Temporary: Disable check for blazor js file
|
||||||
$changedFilesExclusion = "src/Components/Web.JS/dist/Release/blazor.server.js"
|
$changedFilesExclusion = "src/Components/Web.JS/dist/Release/blazor.server.js"
|
||||||
|
|
@ -177,10 +177,9 @@ try {
|
||||||
if ($changedFiles) {
|
if ($changedFiles) {
|
||||||
foreach ($file in $changedFiles) {
|
foreach ($file in $changedFiles) {
|
||||||
if ($file -eq $changedFilesExclusion) {continue}
|
if ($file -eq $changedFilesExclusion) {continue}
|
||||||
|
|
||||||
$filePath = Resolve-Path "${repoRoot}/${file}"
|
$filePath = Resolve-Path "${repoRoot}/${file}"
|
||||||
LogError "Generated code is not up to date in $file. You might need to regenerate the reference assemblies or project list (see docs/ReferenceAssemblies.md and docs/ReferenceResolution.md)" -filepath $filePath
|
LogError "Generated code is not up to date in $file. You might need to regenerate the reference assemblies or project list (see docs/ReferenceAssemblies.md and docs/ReferenceResolution.md)" -filepath $filePath
|
||||||
& git --no-pager diff --ignore-space-at-eol $filePath
|
& git --no-pager diff --ignore-space-change $filePath
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,6 @@
|
||||||
<HelixAvailableTargetQueue Include="Windows.81.Amd64.Open" Platform="Windows" />
|
<HelixAvailableTargetQueue Include="Windows.81.Amd64.Open" Platform="Windows" />
|
||||||
<HelixAvailableTargetQueue Include="Windows.7.Amd64.Open" Platform="Windows" />
|
<HelixAvailableTargetQueue Include="Windows.7.Amd64.Open" Platform="Windows" />
|
||||||
<HelixAvailableTargetQueue Include="Windows.10.Amd64.EnterpriseRS3.ASPNET.Open" Platform="Windows" EnableByDefault="false" />
|
<HelixAvailableTargetQueue Include="Windows.10.Amd64.EnterpriseRS3.ASPNET.Open" Platform="Windows" EnableByDefault="false" />
|
||||||
<HelixAvailableTargetQueue Include="OSX.1013.Amd64.Open" Platform="OSX" />
|
|
||||||
<HelixAvailableTargetQueue Include="Ubuntu.1604.Amd64.Open" Platform="Linux" />
|
<HelixAvailableTargetQueue Include="Ubuntu.1604.Amd64.Open" Platform="Linux" />
|
||||||
<HelixAvailableTargetQueue Include="Ubuntu.1804.Amd64.Open" Platform="Linux" />
|
<HelixAvailableTargetQueue Include="Ubuntu.1804.Amd64.Open" Platform="Linux" />
|
||||||
<HelixAvailableTargetQueue Include="Centos.7.Amd64.Open" Platform="Linux" />
|
<HelixAvailableTargetQueue Include="Centos.7.Amd64.Open" Platform="Linux" />
|
||||||
|
|
|
||||||
|
|
@ -20,16 +20,20 @@
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<TSFiles Include="$(MSBuildProjectDirectory)\*\*.ts" />
|
<TSFiles Include="src\**\*.ts" />
|
||||||
<TSFiles Include="$(MSBuildProjectDirectory)\package.json" />
|
<TSFiles Include="test\**\*.ts" />
|
||||||
<TSFiles Include="$(MSBuildProjectDirectory)\*.npmproj" />
|
<TSFiles Include="package.json" />
|
||||||
|
<TSFiles Include="*.npmproj" />
|
||||||
|
|
||||||
|
<BuildOutputFiles Include="$(BaseIntermediateOutputPath)\build-sentinel" />
|
||||||
|
<BuildOutputFiles Include="dist\**\*.js" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<Target Name="_CheckForInvalidConfiguration">
|
<Target Name="_CheckForInvalidConfiguration">
|
||||||
<Error Text="Missing expected property: PackageId" Condition="'$(IsPackable)' != 'false' and '$(PackageId)' == ''" />
|
<Error Text="Missing expected property: PackageId" Condition="'$(IsPackable)' != 'false' and '$(PackageId)' == ''" />
|
||||||
|
|
||||||
<Exec ContinueOnError="true" Command="node -v">
|
<Exec ContinueOnError="true" Command="node -v" StandardOutputImportance="Low">
|
||||||
<Output TaskParameter="ExitCode" PropertyName="ErrorCode"/>
|
<Output TaskParameter="ExitCode" PropertyName="ErrorCode"/>
|
||||||
</Exec>
|
</Exec>
|
||||||
|
|
||||||
<Error Text="Building *.npmproj but NodeJS was not detected on path. Ensure NodeJS is on path or disable building NodeJS projects with /p:BuildNodeJs=false. Skipping NodeJS projects will also skip managed projects depending on them, including Components, Mvc and Analysers." Condition="'$(ErrorCode)' != '0'"/>
|
<Error Text="Building *.npmproj but NodeJS was not detected on path. Ensure NodeJS is on path or disable building NodeJS projects with /p:BuildNodeJs=false. Skipping NodeJS projects will also skip managed projects depending on them, including Components, Mvc and Analysers." Condition="'$(ErrorCode)' != '0'"/>
|
||||||
|
|
@ -53,12 +57,25 @@
|
||||||
<CallTarget Targets="_Pack" Condition="'$(PackOnBuild)' == 'true'" />
|
<CallTarget Targets="_Pack" Condition="'$(PackOnBuild)' == 'true'" />
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
|
<Target Name="GetBuildInputCacheFile">
|
||||||
|
<Hash ItemsToHash="@(TSFiles)">
|
||||||
|
<Output TaskParameter="HashResult" PropertyName="_TSFileHash" />
|
||||||
|
</Hash>
|
||||||
|
|
||||||
|
<WriteLinesToFile
|
||||||
|
Lines="$(_TSFileHash)"
|
||||||
|
File="$(BaseIntermediateOutputPath)tsfiles.cache"
|
||||||
|
Overwrite="True"
|
||||||
|
WriteOnlyWhenDifferent="True" />
|
||||||
|
</Target>
|
||||||
|
|
||||||
<Target Name="_Build"
|
<Target Name="_Build"
|
||||||
Condition="'$(IsBuildable)' != 'false'"
|
Condition="'$(IsBuildable)' != 'false'"
|
||||||
Inputs="@(TSFiles)"
|
DependsOnTargets="GetBuildInputCacheFile"
|
||||||
Outputs="$(BaseIntermediateOutputPath)\build-sentinel" >
|
Inputs="@(TSFiles);$(BaseIntermediateOutputPath)tsfiles.cache"
|
||||||
|
Outputs="@(BuildOutputFiles)">
|
||||||
<Yarn Command="$(NpmBuildArgs)" StandardOutputImportance="High" StandardErrorImportance="High" />
|
<Yarn Command="$(NpmBuildArgs)" StandardOutputImportance="High" StandardErrorImportance="High" />
|
||||||
<WriteLinesToFile Overwrite="true" File="$(BaseIntermediateOutputPath)\build-sentinel" />
|
<WriteLinesToFile Overwrite="true" File="$(BaseIntermediateOutputPath)build-sentinel" />
|
||||||
</Target>
|
</Target>
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
|
|
@ -73,7 +90,10 @@
|
||||||
</PackDependsOn>
|
</PackDependsOn>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<Target Name="_Pack" Condition="'$(IsPackable)' == 'true'" >
|
<Target Name="_Pack" Condition="'$(IsPackable)' == 'true'"
|
||||||
|
Inputs="@(TSFiles)"
|
||||||
|
Outputs="$(PackageOutputPath)\$(PackageFileName)">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<_PackageTargetPath>$(MSBuildProjectDirectory)\$(PackageFileName)</_PackageTargetPath>
|
<_PackageTargetPath>$(MSBuildProjectDirectory)\$(PackageFileName)</_PackageTargetPath>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<OutputType>Exe</OutputType>
|
<OutputType>Exe</OutputType>
|
||||||
<TargetFramework>netcoreapp3.1</TargetFramework>
|
<TargetFramework>$(DefaultNetCoreTargetFramework)</TargetFramework>
|
||||||
<StartArguments>-s https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json</StartArguments>
|
<StartArguments>-s https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json</StartArguments>
|
||||||
<StartWorkingDirectory>$(MSBuildThisFileDirectory)../../</StartWorkingDirectory>
|
<StartWorkingDirectory>$(MSBuildThisFileDirectory)../../</StartWorkingDirectory>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFrameworks>netcoreapp3.1</TargetFrameworks>
|
<TargetFrameworks>$(DefaultNetCoreTargetFramework)</TargetFrameworks>
|
||||||
<TargetFrameworks Condition="'$(OS)' == 'Windows_NT'">$(TargetFrameworks);net472</TargetFrameworks>
|
<TargetFrameworks Condition="'$(OS)' == 'Windows_NT'">$(TargetFrameworks);net472</TargetFrameworks>
|
||||||
<DefineConstants Condition="'$(TargetFramework)' == 'net472'">$(DefineConstants);BUILD_MSI_TASKS</DefineConstants>
|
<DefineConstants Condition="'$(TargetFramework)' == 'net472'">$(DefineConstants);BUILD_MSI_TASKS</DefineConstants>
|
||||||
<Optimize>false</Optimize>
|
<Optimize>false</Optimize>
|
||||||
|
|
@ -16,7 +16,7 @@
|
||||||
<PackageReference Include="Microsoft.Extensions.DependencyModel" Version="2.1.0" />
|
<PackageReference Include="Microsoft.Extensions.DependencyModel" Version="2.1.0" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp3.1'">
|
<ItemGroup Condition="'$(TargetFramework)' == '$(DefaultNetCoreTargetFramework)'">
|
||||||
<PackageReference Include="Microsoft.Build.Framework" Version="15.8.166" />
|
<PackageReference Include="Microsoft.Build.Framework" Version="15.8.166" />
|
||||||
<PackageReference Include="Microsoft.Build.Tasks.Core" Version="15.8.166" />
|
<PackageReference Include="Microsoft.Build.Tasks.Core" Version="15.8.166" />
|
||||||
<PackageReference Include="Microsoft.Build.Utilities.Core" Version="15.8.166" />
|
<PackageReference Include="Microsoft.Build.Utilities.Core" Version="15.8.166" />
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
<Project>
|
<Project>
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<_RepoTaskAssemblyFolder Condition="'$(MSBuildRuntimeType)' == 'core'">netcoreapp3.1</_RepoTaskAssemblyFolder>
|
<_RepoTaskAssemblyFolder Condition="'$(MSBuildRuntimeType)' == 'core'">netcoreapp5.0</_RepoTaskAssemblyFolder>
|
||||||
<_RepoTaskAssemblyFolder Condition="'$(MSBuildRuntimeType)' != 'core'">net472</_RepoTaskAssemblyFolder>
|
<_RepoTaskAssemblyFolder Condition="'$(MSBuildRuntimeType)' != 'core'">net472</_RepoTaskAssemblyFolder>
|
||||||
<_RepoTaskAssembly>$(ArtifactsBinDir)RepoTasks\Release\$(_RepoTaskAssemblyFolder)\RepoTasks.dll</_RepoTaskAssembly>
|
<_RepoTaskAssembly>$(ArtifactsBinDir)RepoTasks\Release\$(_RepoTaskAssemblyFolder)\RepoTasks.dll</_RepoTaskAssembly>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
{
|
{
|
||||||
"sdk": {
|
"sdk": {
|
||||||
"version": "3.1.100-preview1-014024"
|
"version": "5.0.100-alpha1-013788"
|
||||||
},
|
},
|
||||||
"tools": {
|
"tools": {
|
||||||
"dotnet": "3.1.100-preview1-014024",
|
"dotnet": "5.0.100-alpha1-013788",
|
||||||
"runtimes": {
|
"runtimes": {
|
||||||
"dotnet/x64": [
|
"dotnet/x64": [
|
||||||
"$(MicrosoftNETCoreAppRuntimeVersion)"
|
"$(MicrosoftNETCoreAppRuntimeVersion)"
|
||||||
|
|
|
||||||
|
|
@ -8,9 +8,9 @@ using Xunit;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Components.Analyzers
|
namespace Microsoft.AspNetCore.Components.Analyzers
|
||||||
{
|
{
|
||||||
public class ComponentInternalUsageDiagnoticsAnalyzerTest : AnalyzerTestBase
|
public class ComponentInternalUsageDiagnosticsAnalyzerTest : AnalyzerTestBase
|
||||||
{
|
{
|
||||||
public ComponentInternalUsageDiagnoticsAnalyzerTest()
|
public ComponentInternalUsageDiagnosticsAnalyzerTest()
|
||||||
{
|
{
|
||||||
Analyzer = new ComponentInternalUsageDiagnosticAnalyzer();
|
Analyzer = new ComponentInternalUsageDiagnosticAnalyzer();
|
||||||
Runner = new ComponentAnalyzerDiagnosticAnalyzerRunner(Analyzer);
|
Runner = new ComponentAnalyzerDiagnosticAnalyzerRunner(Analyzer);
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
using Microsoft.AspNetCore.Components.RenderTree;
|
using Microsoft.AspNetCore.Components.RenderTree;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Components.Analyzers.Tests.TestFiles.ComponentInternalUsageDiagnoticsAnalyzerTest
|
namespace Microsoft.AspNetCore.Components.Analyzers.Tests.TestFiles.ComponentInternalUsageDiagnosticsAnalyzerTest
|
||||||
{
|
{
|
||||||
class UsesRenderTreeFrameAsParameter
|
class UsesRenderTreeFrameAsParameter
|
||||||
{
|
{
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
using System;
|
using System;
|
||||||
using Microsoft.AspNetCore.Components.RenderTree;
|
using Microsoft.AspNetCore.Components.RenderTree;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Components.Analyzers.Tests.TestFiles.ComponentInternalUsageDiagnoticsAnalyzerTest
|
namespace Microsoft.AspNetCore.Components.Analyzers.Tests.TestFiles.ComponentInternalUsageDiagnosticsAnalyzerTest
|
||||||
{
|
{
|
||||||
class UsesRenderTreeFrameTypeAsLocal
|
class UsesRenderTreeFrameTypeAsLocal
|
||||||
{
|
{
|
||||||
|
|
@ -22,7 +22,7 @@ namespace Microsoft.AspNetCore.Blazor.Hosting
|
||||||
public static void Run(this IWebAssemblyHost host)
|
public static void Run(this IWebAssemblyHost host)
|
||||||
{
|
{
|
||||||
// Behave like async void, because we don't yet support async-main properly on WebAssembly.
|
// Behave like async void, because we don't yet support async-main properly on WebAssembly.
|
||||||
// However, don't actualy make this method async, because we rely on startup being synchronous
|
// However, don't actually make this method async, because we rely on startup being synchronous
|
||||||
// for things like attaching navigation event handlers.
|
// for things like attaching navigation event handlers.
|
||||||
host.StartAsync().ContinueWith(task =>
|
host.StartAsync().ContinueWith(task =>
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,11 @@ namespace Microsoft.AspNetCore.Blazor.Services
|
||||||
|
|
||||||
public void Log<TState>(LogLevel logLevel, EventId eventId, TState state, Exception exception, Func<TState, Exception, string> formatter)
|
public void Log<TState>(LogLevel logLevel, EventId eventId, TState state, Exception exception, Func<TState, Exception, string> formatter)
|
||||||
{
|
{
|
||||||
|
if (!IsEnabled(logLevel))
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
var formattedMessage = formatter(state, exception);
|
var formattedMessage = formatter(state, exception);
|
||||||
Console.WriteLine($"[{logLevel}] {formattedMessage}");
|
Console.WriteLine($"[{logLevel}] {formattedMessage}");
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -436,9 +436,15 @@
|
||||||
|
|
||||||
<!-- Clear the contents of /obj/<<configuration>>/<<targetframework>>/blazor/blazor/linker -->
|
<!-- Clear the contents of /obj/<<configuration>>/<<targetframework>>/blazor/blazor/linker -->
|
||||||
<Delete Files="$(BlazorIntermediateLinkerOutputPath)*.dll" />
|
<Delete Files="$(BlazorIntermediateLinkerOutputPath)*.dll" />
|
||||||
|
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<_MonoLinkerDotNetPath>$(DOTNET_HOST_PATH)</_MonoLinkerDotNetPath>
|
||||||
|
<_MonoLinkerDotNetPath Condition="'$(_MonoLinkerDotNetPath)' == ''">dotnet</_MonoLinkerDotNetPath>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
<!-- Run the linker and put the results in /obj/<<configuration>>/<<targetframework>>/blazor/blazor/linker -->
|
<!-- Run the linker and put the results in /obj/<<configuration>>/<<targetframework>>/blazor/blazor/linker -->
|
||||||
<Exec Command="dotnet "$(MonoLinkerPath)" $(_BlazorLinkerAdditionalOptions) @(_BlazorFolderLookupPaths, ' ') -o "$(BlazorIntermediateLinkerOutputPath)" @(_BlazorAssemblyDescriptorFiles, ' ') @(_BlazorAssembliesToLink, ' ')" />
|
<Exec Command="$(_MonoLinkerDotNetPath) "$(MonoLinkerPath)" $(_BlazorLinkerAdditionalOptions) @(_BlazorFolderLookupPaths, ' ') -o "$(BlazorIntermediateLinkerOutputPath)" @(_BlazorAssemblyDescriptorFiles, ' ') @(_BlazorAssembliesToLink, ' ')" />
|
||||||
|
|
||||||
<!-- Collect the contents of /obj/<<configuration>>/<<targetframework>>/blazor/blazor/linker/ -->
|
<!-- Collect the contents of /obj/<<configuration>>/<<targetframework>>/blazor/blazor/linker/ -->
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -96,7 +96,7 @@ namespace Test
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
public void Render_ChildComponent_TriesToSetNonParamter()
|
public void Render_ChildComponent_TriesToSetNonParameter()
|
||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
AdditionalSyntaxTrees.Add(Parse(@"
|
AdditionalSyntaxTrees.Add(Parse(@"
|
||||||
|
|
|
||||||
|
|
@ -100,7 +100,7 @@ namespace WsProxy {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case "Debugger.paused": {
|
case "Debugger.paused": {
|
||||||
//TODO figure out how to stich out more frames and, in particular what happens when real wasm is on the stack
|
//TODO figure out how to stitch out more frames and, in particular what happens when real wasm is on the stack
|
||||||
var top_func = args? ["callFrames"]? [0]? ["functionName"]?.Value<string> ();
|
var top_func = args? ["callFrames"]? [0]? ["functionName"]?.Value<string> ();
|
||||||
if (top_func == "mono_wasm_fire_bp" || top_func == "_mono_wasm_fire_bp") {
|
if (top_func == "mono_wasm_fire_bp" || top_func == "_mono_wasm_fire_bp") {
|
||||||
await OnBreakPointHit (args, token);
|
await OnBreakPointHit (args, token);
|
||||||
|
|
@ -419,7 +419,7 @@ namespace WsProxy {
|
||||||
|
|
||||||
var res = await SendCommand("Runtime.evaluate", o, token);
|
var res = await SendCommand("Runtime.evaluate", o, token);
|
||||||
|
|
||||||
//if we fail we just buble that to the IDE (and let it panic over it)
|
//if we fail we just bubble that to the IDE (and let it panic over it)
|
||||||
if (res.IsErr)
|
if (res.IsErr)
|
||||||
{
|
{
|
||||||
SendResponse(msg_id, res, token);
|
SendResponse(msg_id, res, token);
|
||||||
|
|
@ -475,7 +475,7 @@ namespace WsProxy {
|
||||||
|
|
||||||
var res = await SendCommand ("Runtime.evaluate", o, token);
|
var res = await SendCommand ("Runtime.evaluate", o, token);
|
||||||
|
|
||||||
//if we fail we just buble that to the IDE (and let it panic over it)
|
//if we fail we just bubble that to the IDE (and let it panic over it)
|
||||||
if (res.IsErr) {
|
if (res.IsErr) {
|
||||||
SendResponse (msg_id, res, token);
|
SendResponse (msg_id, res, token);
|
||||||
return;
|
return;
|
||||||
|
|
@ -594,7 +594,7 @@ namespace WsProxy {
|
||||||
var res = await EnableBreakPoint (bp, token);
|
var res = await EnableBreakPoint (bp, token);
|
||||||
var ret_code = res.Value? ["result"]? ["value"]?.Value<int> ();
|
var ret_code = res.Value? ["result"]? ["value"]?.Value<int> ();
|
||||||
|
|
||||||
//if we fail we just buble that to the IDE (and let it panic over it)
|
//if we fail we just bubble that to the IDE (and let it panic over it)
|
||||||
if (!ret_code.HasValue) {
|
if (!ret_code.HasValue) {
|
||||||
//FIXME figure out how to inform the IDE of that.
|
//FIXME figure out how to inform the IDE of that.
|
||||||
Info ($"FAILED TO ENABLE BP {bp.LocalId}");
|
Info ($"FAILED TO ENABLE BP {bp.LocalId}");
|
||||||
|
|
@ -668,7 +668,7 @@ namespace WsProxy {
|
||||||
var res = await EnableBreakPoint (bp, token);
|
var res = await EnableBreakPoint (bp, token);
|
||||||
var ret_code = res.Value? ["result"]? ["value"]?.Value<int> ();
|
var ret_code = res.Value? ["result"]? ["value"]?.Value<int> ();
|
||||||
|
|
||||||
//if we fail we just buble that to the IDE (and let it panic over it)
|
//if we fail we just bubble that to the IDE (and let it panic over it)
|
||||||
if (!ret_code.HasValue) {
|
if (!ret_code.HasValue) {
|
||||||
SendResponse (msg_id, res, token);
|
SendResponse (msg_id, res, token);
|
||||||
return;
|
return;
|
||||||
|
|
|
||||||
|
|
@ -83,12 +83,12 @@
|
||||||
"datatype": "choice",
|
"datatype": "choice",
|
||||||
"choices": [
|
"choices": [
|
||||||
{
|
{
|
||||||
"choice": "netcoreapp3.1",
|
"choice": "netcoreapp5.0",
|
||||||
"description": "Target netcoreapp3.1"
|
"description": "Target netcoreapp5.0"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"replaces": "netcoreapp3.1",
|
"replaces": "netcoreapp5.0",
|
||||||
"defaultValue": "netcoreapp3.1"
|
"defaultValue": "netcoreapp5.0"
|
||||||
},
|
},
|
||||||
"HostIdentifier": {
|
"HostIdentifier": {
|
||||||
"type": "bind",
|
"type": "bind",
|
||||||
|
|
|
||||||
|
|
@ -430,7 +430,7 @@ namespace Microsoft.AspNetCore.Components
|
||||||
|
|
||||||
private static string FormatEnumValueCore<T>(T value, CultureInfo culture) where T : struct, Enum
|
private static string FormatEnumValueCore<T>(T value, CultureInfo culture) where T : struct, Enum
|
||||||
{
|
{
|
||||||
return value.ToString(); // The overload that acccepts a culture is [Obsolete]
|
return value.ToString(); // The overload that accepts a culture is [Obsolete]
|
||||||
}
|
}
|
||||||
|
|
||||||
private static string FormatNullableEnumValueCore<T>(T? value, CultureInfo culture) where T : struct, Enum
|
private static string FormatNullableEnumValueCore<T>(T? value, CultureInfo culture) where T : struct, Enum
|
||||||
|
|
@ -440,7 +440,7 @@ namespace Microsoft.AspNetCore.Components
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
return value.Value.ToString(); // The overload that acccepts a culture is [Obsolete]
|
return value.Value.ToString(); // The overload that accepts a culture is [Obsolete]
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -1166,99 +1166,99 @@ namespace Microsoft.AspNetCore.Components
|
||||||
|
|
||||||
public static BindFormatter<T> Get<T>()
|
public static BindFormatter<T> Get<T>()
|
||||||
{
|
{
|
||||||
if (!_cache.TryGetValue(typeof(T), out var formattter))
|
if (!_cache.TryGetValue(typeof(T), out var formatter))
|
||||||
{
|
{
|
||||||
// We need to replicate all of the primitive cases that we handle here so that they will behave the same way.
|
// We need to replicate all of the primitive cases that we handle here so that they will behave the same way.
|
||||||
// The result will be cached.
|
// The result will be cached.
|
||||||
if (typeof(T) == typeof(string))
|
if (typeof(T) == typeof(string))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<string>)FormatStringValueCore;
|
formatter = (BindFormatter<string>)FormatStringValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(bool))
|
else if (typeof(T) == typeof(bool))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<bool>)FormatBoolValueCore;
|
formatter = (BindFormatter<bool>)FormatBoolValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(bool?))
|
else if (typeof(T) == typeof(bool?))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<bool?>)FormatNullableBoolValueCore;
|
formatter = (BindFormatter<bool?>)FormatNullableBoolValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(int))
|
else if (typeof(T) == typeof(int))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<int>)FormatIntValueCore;
|
formatter = (BindFormatter<int>)FormatIntValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(int?))
|
else if (typeof(T) == typeof(int?))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<int?>)FormatNullableIntValueCore;
|
formatter = (BindFormatter<int?>)FormatNullableIntValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(long))
|
else if (typeof(T) == typeof(long))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<long>)FormatLongValueCore;
|
formatter = (BindFormatter<long>)FormatLongValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(long?))
|
else if (typeof(T) == typeof(long?))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<long?>)FormatNullableLongValueCore;
|
formatter = (BindFormatter<long?>)FormatNullableLongValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(float))
|
else if (typeof(T) == typeof(float))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<float>)FormatFloatValueCore;
|
formatter = (BindFormatter<float>)FormatFloatValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(float?))
|
else if (typeof(T) == typeof(float?))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<float?>)FormatNullableFloatValueCore;
|
formatter = (BindFormatter<float?>)FormatNullableFloatValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(double))
|
else if (typeof(T) == typeof(double))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<double>)FormatDoubleValueCore;
|
formatter = (BindFormatter<double>)FormatDoubleValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(double?))
|
else if (typeof(T) == typeof(double?))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<double?>)FormatNullableDoubleValueCore;
|
formatter = (BindFormatter<double?>)FormatNullableDoubleValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(decimal))
|
else if (typeof(T) == typeof(decimal))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<decimal>)FormatDecimalValueCore;
|
formatter = (BindFormatter<decimal>)FormatDecimalValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(decimal?))
|
else if (typeof(T) == typeof(decimal?))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<decimal?>)FormatNullableDecimalValueCore;
|
formatter = (BindFormatter<decimal?>)FormatNullableDecimalValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(DateTime))
|
else if (typeof(T) == typeof(DateTime))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<DateTime>)FormatDateTimeValueCore;
|
formatter = (BindFormatter<DateTime>)FormatDateTimeValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(DateTime?))
|
else if (typeof(T) == typeof(DateTime?))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<DateTime?>)FormatNullableDateTimeValueCore;
|
formatter = (BindFormatter<DateTime?>)FormatNullableDateTimeValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(DateTimeOffset))
|
else if (typeof(T) == typeof(DateTimeOffset))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<DateTimeOffset>)FormatDateTimeOffsetValueCore;
|
formatter = (BindFormatter<DateTimeOffset>)FormatDateTimeOffsetValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T) == typeof(DateTimeOffset?))
|
else if (typeof(T) == typeof(DateTimeOffset?))
|
||||||
{
|
{
|
||||||
formattter = (BindFormatter<DateTimeOffset?>)FormatNullableDateTimeOffsetValueCore;
|
formatter = (BindFormatter<DateTimeOffset?>)FormatNullableDateTimeOffsetValueCore;
|
||||||
}
|
}
|
||||||
else if (typeof(T).IsEnum)
|
else if (typeof(T).IsEnum)
|
||||||
{
|
{
|
||||||
// We have to deal invoke this dynamically to work around the type constraint on Enum.TryParse.
|
// We have to deal invoke this dynamically to work around the type constraint on Enum.TryParse.
|
||||||
var method = _formatEnumValue ??= typeof(BindConverter).GetMethod(nameof(FormatEnumValueCore), BindingFlags.NonPublic | BindingFlags.Static);
|
var method = _formatEnumValue ??= typeof(BindConverter).GetMethod(nameof(FormatEnumValueCore), BindingFlags.NonPublic | BindingFlags.Static);
|
||||||
formattter = method.MakeGenericMethod(typeof(T)).CreateDelegate(typeof(BindFormatter<T>), target: null);
|
formatter = method.MakeGenericMethod(typeof(T)).CreateDelegate(typeof(BindFormatter<T>), target: null);
|
||||||
}
|
}
|
||||||
else if (Nullable.GetUnderlyingType(typeof(T)) is Type innerType && innerType.IsEnum)
|
else if (Nullable.GetUnderlyingType(typeof(T)) is Type innerType && innerType.IsEnum)
|
||||||
{
|
{
|
||||||
// We have to deal invoke this dynamically to work around the type constraint on Enum.TryParse.
|
// We have to deal invoke this dynamically to work around the type constraint on Enum.TryParse.
|
||||||
var method = _formatNullableEnumValue ??= typeof(BindConverter).GetMethod(nameof(FormatNullableEnumValueCore), BindingFlags.NonPublic | BindingFlags.Static);
|
var method = _formatNullableEnumValue ??= typeof(BindConverter).GetMethod(nameof(FormatNullableEnumValueCore), BindingFlags.NonPublic | BindingFlags.Static);
|
||||||
formattter = method.MakeGenericMethod(innerType).CreateDelegate(typeof(BindFormatter<T>), target: null);
|
formatter = method.MakeGenericMethod(innerType).CreateDelegate(typeof(BindFormatter<T>), target: null);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
formattter = MakeTypeConverterFormatter<T>();
|
formatter = MakeTypeConverterFormatter<T>();
|
||||||
}
|
}
|
||||||
|
|
||||||
_cache.TryAdd(typeof(T), formattter);
|
_cache.TryAdd(typeof(T), formatter);
|
||||||
}
|
}
|
||||||
|
|
||||||
return (BindFormatter<T>)formattter;
|
return (BindFormatter<T>)formatter;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static BindFormatter<T> MakeTypeConverterFormatter<T>()
|
private static BindFormatter<T> MakeTypeConverterFormatter<T>()
|
||||||
|
|
|
||||||
|
|
@ -105,7 +105,7 @@ namespace Microsoft.AspNetCore.Components
|
||||||
|
|
||||||
_hasSetParametersPreviously = true;
|
_hasSetParametersPreviously = true;
|
||||||
|
|
||||||
// It's OK for the value to be null, but some "Value" param must be suppled
|
// It's OK for the value to be null, but some "Value" param must be supplied
|
||||||
// because it serves no useful purpose to have a <CascadingValue> otherwise.
|
// because it serves no useful purpose to have a <CascadingValue> otherwise.
|
||||||
if (!hasSuppliedValue)
|
if (!hasSuppliedValue)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ namespace Microsoft.AspNetCore.Components
|
||||||
// about IComponent). This gives us flexibility to change the lifecycle concepts easily,
|
// about IComponent). This gives us flexibility to change the lifecycle concepts easily,
|
||||||
// or for developers to design their own lifecycles as different base classes.
|
// or for developers to design their own lifecycles as different base classes.
|
||||||
|
|
||||||
// TODO: When the component lifecycle design stabilises, add proper unit tests for ComponentBase.
|
// TODO: When the component lifecycle design stabilizes, add proper unit tests for ComponentBase.
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Optional base class for components. Alternatively, components may
|
/// Optional base class for components. Alternatively, components may
|
||||||
|
|
@ -136,7 +136,7 @@ namespace Microsoft.AspNetCore.Components
|
||||||
/// </param>
|
/// </param>
|
||||||
/// <remarks>
|
/// <remarks>
|
||||||
/// The <see cref="OnAfterRender(bool)"/> and <see cref="OnAfterRenderAsync(bool)"/> lifecycle methods
|
/// The <see cref="OnAfterRender(bool)"/> and <see cref="OnAfterRenderAsync(bool)"/> lifecycle methods
|
||||||
/// are useful for performing interop, or interacting with values recieved from <c>@ref</c>.
|
/// are useful for performing interop, or interacting with values received from <c>@ref</c>.
|
||||||
/// Use the <paramref name="firstRender"/> parameter to ensure that initialization work is only performed
|
/// Use the <paramref name="firstRender"/> parameter to ensure that initialization work is only performed
|
||||||
/// once.
|
/// once.
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
|
|
@ -156,7 +156,7 @@ namespace Microsoft.AspNetCore.Components
|
||||||
/// <returns>A <see cref="Task"/> representing any asynchronous operation.</returns>
|
/// <returns>A <see cref="Task"/> representing any asynchronous operation.</returns>
|
||||||
/// <remarks>
|
/// <remarks>
|
||||||
/// The <see cref="OnAfterRender(bool)"/> and <see cref="OnAfterRenderAsync(bool)"/> lifecycle methods
|
/// The <see cref="OnAfterRender(bool)"/> and <see cref="OnAfterRenderAsync(bool)"/> lifecycle methods
|
||||||
/// are useful for performing interop, or interacting with values recieved from <c>@ref</c>.
|
/// are useful for performing interop, or interacting with values received from <c>@ref</c>.
|
||||||
/// Use the <paramref name="firstRender"/> parameter to ensure that initialization work is only performed
|
/// Use the <paramref name="firstRender"/> parameter to ensure that initialization work is only performed
|
||||||
/// once.
|
/// once.
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
|
|
@ -246,7 +246,7 @@ namespace Microsoft.AspNetCore.Components
|
||||||
}
|
}
|
||||||
catch // avoiding exception filters for AOT runtime support
|
catch // avoiding exception filters for AOT runtime support
|
||||||
{
|
{
|
||||||
// Ignore exceptions from task cancelletions.
|
// Ignore exceptions from task cancellations.
|
||||||
// Awaiting a canceled task may produce either an OperationCanceledException (if produced as a consequence of
|
// Awaiting a canceled task may produce either an OperationCanceledException (if produced as a consequence of
|
||||||
// CancellationToken.ThrowIfCancellationRequested()) or a TaskCanceledException (produced as a consequence of awaiting Task.FromCanceled).
|
// CancellationToken.ThrowIfCancellationRequested()) or a TaskCanceledException (produced as a consequence of awaiting Task.FromCanceled).
|
||||||
// It's much easier to check the state of the Task (i.e. Task.IsCanceled) rather than catch two distinct exceptions.
|
// It's much easier to check the state of the Task (i.e. Task.IsCanceled) rather than catch two distinct exceptions.
|
||||||
|
|
@ -289,7 +289,7 @@ namespace Microsoft.AspNetCore.Components
|
||||||
}
|
}
|
||||||
catch // avoiding exception filters for AOT runtime support
|
catch // avoiding exception filters for AOT runtime support
|
||||||
{
|
{
|
||||||
// Ignore exceptions from task cancelletions, but don't bother issuing a state change.
|
// Ignore exceptions from task cancellations, but don't bother issuing a state change.
|
||||||
if (task.IsCanceled)
|
if (task.IsCanceled)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
|
|
|
||||||
|
|
@ -12,9 +12,9 @@ namespace Microsoft.AspNetCore.Components
|
||||||
/// </summary>
|
/// </summary>
|
||||||
//
|
//
|
||||||
// NOTE: for number parsing, the HTML5 spec dictates that <input type="number"> the DOM will represent
|
// NOTE: for number parsing, the HTML5 spec dictates that <input type="number"> the DOM will represent
|
||||||
// number values as floating point numbers using `.` as the period separator. This is NOT culture senstive.
|
// number values as floating point numbers using `.` as the period separator. This is NOT culture sensitive.
|
||||||
// Put another way, the user might see `,` as their decimal separator, but the value available in events
|
// Put another way, the user might see `,` as their decimal separator, but the value available in events
|
||||||
// to JS code is always simpilar to what .NET parses with InvariantCulture.
|
// to JS code is always similar to what .NET parses with InvariantCulture.
|
||||||
//
|
//
|
||||||
// See: https://www.w3.org/TR/html5/sec-forms.html#number-state-typenumber
|
// See: https://www.w3.org/TR/html5/sec-forms.html#number-state-typenumber
|
||||||
// See: https://www.w3.org/TR/html5/infrastructure.html#valid-floating-point-number
|
// See: https://www.w3.org/TR/html5/infrastructure.html#valid-floating-point-number
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@
|
||||||
<dependency id="Microsoft.JSInterop" version="$jsInteropPackageVersion$" exclude="Build,Analyzers" />
|
<dependency id="Microsoft.JSInterop" version="$jsInteropPackageVersion$" exclude="Build,Analyzers" />
|
||||||
<dependency id="System.ComponentModel.Annotations" version="$systemComponentModelAnnotationsPackageVersion$" exclude="Build,Analyzers" />
|
<dependency id="System.ComponentModel.Annotations" version="$systemComponentModelAnnotationsPackageVersion$" exclude="Build,Analyzers" />
|
||||||
</group>
|
</group>
|
||||||
<group targetFramework=".NETCoreApp3.1">
|
<group targetFramework=".NETCoreApp5.0">
|
||||||
<dependency id="Microsoft.AspNetCore.Components.Analyzers" version="$componentAnalyzerPackageVersion$" />
|
<dependency id="Microsoft.AspNetCore.Components.Analyzers" version="$componentAnalyzerPackageVersion$" />
|
||||||
<dependency id="Microsoft.AspNetCore.Authorization" version="$authorizationPackageVersion$" exclude="Build,Analyzers" />
|
<dependency id="Microsoft.AspNetCore.Authorization" version="$authorizationPackageVersion$" exclude="Build,Analyzers" />
|
||||||
<dependency id="Microsoft.JSInterop" version="$jsInteropPackageVersion$" exclude="Build,Analyzers" />
|
<dependency id="Microsoft.JSInterop" version="$jsInteropPackageVersion$" exclude="Build,Analyzers" />
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@
|
||||||
<metadata>
|
<metadata>
|
||||||
$CommonMetadataElements$
|
$CommonMetadataElements$
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<group targetFramework=".NETCoreApp3.1">
|
<group targetFramework=".NETCoreApp5.0">
|
||||||
<dependency id="Microsoft.AspNetCore.Components.Analyzers" version="$componentAnalyzerPackageVersion$" />
|
<dependency id="Microsoft.AspNetCore.Components.Analyzers" version="$componentAnalyzerPackageVersion$" />
|
||||||
<dependency id="Microsoft.AspNetCore.Authorization" version="$authorizationPackageVersion$" exclude="Build,Analyzers" />
|
<dependency id="Microsoft.AspNetCore.Authorization" version="$authorizationPackageVersion$" exclude="Build,Analyzers" />
|
||||||
<dependency id="Microsoft.JSInterop" version="$jsInteropPackageVersion$" exclude="Build,Analyzers" />
|
<dependency id="Microsoft.JSInterop" version="$jsInteropPackageVersion$" exclude="Build,Analyzers" />
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ using Microsoft.AspNetCore.Components.Routing;
|
||||||
namespace Microsoft.AspNetCore.Components
|
namespace Microsoft.AspNetCore.Components
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Provides an abstraction for querying and mananging URI navigation.
|
/// Provides an abstraction for querying and managing URI navigation.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public abstract class NavigationManager
|
public abstract class NavigationManager
|
||||||
{
|
{
|
||||||
|
|
@ -134,7 +134,7 @@ namespace Microsoft.AspNetCore.Components
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Allows derived classes to lazyly self-initialize. Implementations that support lazy-initialization should override
|
/// Allows derived classes to lazily self-initialize. Implementations that support lazy-initialization should override
|
||||||
/// this method and call <see cref="Initialize(string, string)" />.
|
/// this method and call <see cref="Initialize(string, string)" />.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
protected virtual void EnsureInitialized()
|
protected virtual void EnsureInitialized()
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,7 @@ namespace Microsoft.AspNetCore.Components.RenderTree
|
||||||
public enum RenderTreeFrameType: short
|
public enum RenderTreeFrameType: short
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Used only for unintialized frames.
|
/// Used only for uninitialized frames.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
None = 0,
|
None = 0,
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -142,7 +142,7 @@ namespace Microsoft.AspNetCore.Components.RenderTree
|
||||||
// remaining work.
|
// remaining work.
|
||||||
// During the synchronous rendering process we don't wait for the pending asynchronous
|
// During the synchronous rendering process we don't wait for the pending asynchronous
|
||||||
// work to finish as it will simply trigger new renders that will be handled afterwards.
|
// work to finish as it will simply trigger new renders that will be handled afterwards.
|
||||||
// During the asynchronous rendering process we want to wait up untill al components have
|
// During the asynchronous rendering process we want to wait up until all components have
|
||||||
// finished rendering so that we can produce the complete output.
|
// finished rendering so that we can produce the complete output.
|
||||||
var componentState = GetRequiredComponentState(componentId);
|
var componentState = GetRequiredComponentState(componentId);
|
||||||
componentState.SetDirectParameters(initialParameters);
|
componentState.SetDirectParameters(initialParameters);
|
||||||
|
|
@ -388,7 +388,7 @@ namespace Microsoft.AspNetCore.Components.RenderTree
|
||||||
: null;
|
: null;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Processses pending renders requests from components if there are any.
|
/// Processes pending renders requests from components if there are any.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
protected virtual void ProcessPendingRender()
|
protected virtual void ProcessPendingRender()
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -242,7 +242,7 @@ namespace Microsoft.AspNetCore.Components.Rendering
|
||||||
AssertCanAddAttribute();
|
AssertCanAddAttribute();
|
||||||
if (_lastNonAttributeFrameType == RenderTreeFrameType.Component)
|
if (_lastNonAttributeFrameType == RenderTreeFrameType.Component)
|
||||||
{
|
{
|
||||||
// Since this is a component, we need to preserve the type of the EventCallabck, so we have
|
// Since this is a component, we need to preserve the type of the EventCallback, so we have
|
||||||
// to box.
|
// to box.
|
||||||
Append(RenderTreeFrame.Attribute(sequence, name, (object)value));
|
Append(RenderTreeFrame.Attribute(sequence, name, (object)value));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -147,20 +147,20 @@ namespace Microsoft.AspNetCore.Components.Rendering
|
||||||
// synchronously runs the callback
|
// synchronously runs the callback
|
||||||
public override void Send(SendOrPostCallback d, object state)
|
public override void Send(SendOrPostCallback d, object state)
|
||||||
{
|
{
|
||||||
Task antecedant;
|
Task antecedent;
|
||||||
var completion = new TaskCompletionSource<object>();
|
var completion = new TaskCompletionSource<object>();
|
||||||
|
|
||||||
lock (_state.Lock)
|
lock (_state.Lock)
|
||||||
{
|
{
|
||||||
antecedant = _state.Task;
|
antecedent = _state.Task;
|
||||||
_state.Task = completion.Task;
|
_state.Task = completion.Task;
|
||||||
}
|
}
|
||||||
|
|
||||||
// We have to block. That's the contract of Send - we don't expect this to be used
|
// We have to block. That's the contract of Send - we don't expect this to be used
|
||||||
// in many scenarios in Components.
|
// in many scenarios in Components.
|
||||||
//
|
//
|
||||||
// Using Wait here is ok because the antecedant task will never throw.
|
// Using Wait here is ok because the antecedent task will never throw.
|
||||||
antecedant.Wait();
|
antecedent.Wait();
|
||||||
|
|
||||||
ExecuteSynchronously(completion, d, state);
|
ExecuteSynchronously(completion, d, state);
|
||||||
}
|
}
|
||||||
|
|
@ -195,7 +195,7 @@ namespace Microsoft.AspNetCore.Components.Rendering
|
||||||
ExecuteSynchronously(completion, d, state);
|
ExecuteSynchronously(completion, d, state);
|
||||||
}
|
}
|
||||||
|
|
||||||
private Task Enqueue(Task antecedant, SendOrPostCallback d, object state, bool forceAsync = false)
|
private Task Enqueue(Task antecedent, SendOrPostCallback d, object state, bool forceAsync = false)
|
||||||
{
|
{
|
||||||
// If we get here is means that a callback is being explicitly queued. Let's instead add it to the queue and yield.
|
// If we get here is means that a callback is being explicitly queued. Let's instead add it to the queue and yield.
|
||||||
//
|
//
|
||||||
|
|
@ -212,7 +212,7 @@ namespace Microsoft.AspNetCore.Components.Rendering
|
||||||
}
|
}
|
||||||
|
|
||||||
var flags = forceAsync ? TaskContinuationOptions.RunContinuationsAsynchronously : TaskContinuationOptions.None;
|
var flags = forceAsync ? TaskContinuationOptions.RunContinuationsAsynchronously : TaskContinuationOptions.None;
|
||||||
return antecedant.ContinueWith(BackgroundWorkThunk, new WorkItem()
|
return antecedent.ContinueWith(BackgroundWorkThunk, new WorkItem()
|
||||||
{
|
{
|
||||||
SynchronizationContext = this,
|
SynchronizationContext = this,
|
||||||
ExecutionContext = executionContext,
|
ExecutionContext = executionContext,
|
||||||
|
|
|
||||||
|
|
@ -222,7 +222,7 @@ namespace Microsoft.AspNetCore.Components.Test
|
||||||
|
|
||||||
// Act/Assert 2: Re-render the CascadingValue; observe nested component wasn't re-rendered
|
// Act/Assert 2: Re-render the CascadingValue; observe nested component wasn't re-rendered
|
||||||
providedValue = "Updated value";
|
providedValue = "Updated value";
|
||||||
displayNestedComponent = false; // Remove the nested componet
|
displayNestedComponent = false; // Remove the nested component
|
||||||
component.TriggerRender();
|
component.TriggerRender();
|
||||||
|
|
||||||
// Assert: We did not render the nested component now it's been removed
|
// Assert: We did not render the nested component now it's been removed
|
||||||
|
|
|
||||||
|
|
@ -366,7 +366,7 @@ namespace Microsoft.AspNetCore.Components
|
||||||
public void HasDuplicateCaptureUnmatchedValuesParameters_Throws()
|
public void HasDuplicateCaptureUnmatchedValuesParameters_Throws()
|
||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
var target = new HasDupliateCaptureUnmatchedValuesProperty();
|
var target = new HasDuplicateCaptureUnmatchedValuesProperty();
|
||||||
var parameters = new ParameterViewBuilder().Build();
|
var parameters = new ParameterViewBuilder().Build();
|
||||||
|
|
||||||
// Act
|
// Act
|
||||||
|
|
@ -374,17 +374,17 @@ namespace Microsoft.AspNetCore.Components
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
Assert.Equal(
|
Assert.Equal(
|
||||||
$"Multiple properties were found on component type '{typeof(HasDupliateCaptureUnmatchedValuesProperty).FullName}' " +
|
$"Multiple properties were found on component type '{typeof(HasDuplicateCaptureUnmatchedValuesProperty).FullName}' " +
|
||||||
$"with '{nameof(ParameterAttribute)}.{nameof(ParameterAttribute.CaptureUnmatchedValues)}'. " +
|
$"with '{nameof(ParameterAttribute)}.{nameof(ParameterAttribute.CaptureUnmatchedValues)}'. " +
|
||||||
$"Only a single property per type can use '{nameof(ParameterAttribute)}.{nameof(ParameterAttribute.CaptureUnmatchedValues)}'. " +
|
$"Only a single property per type can use '{nameof(ParameterAttribute)}.{nameof(ParameterAttribute.CaptureUnmatchedValues)}'. " +
|
||||||
$"Properties:" + Environment.NewLine +
|
$"Properties:" + Environment.NewLine +
|
||||||
$"{nameof(HasDupliateCaptureUnmatchedValuesProperty.CaptureUnmatchedValuesProp1)}" + Environment.NewLine +
|
$"{nameof(HasDuplicateCaptureUnmatchedValuesProperty.CaptureUnmatchedValuesProp1)}" + Environment.NewLine +
|
||||||
$"{nameof(HasDupliateCaptureUnmatchedValuesProperty.CaptureUnmatchedValuesProp2)}",
|
$"{nameof(HasDuplicateCaptureUnmatchedValuesProperty.CaptureUnmatchedValuesProp2)}",
|
||||||
ex.Message);
|
ex.Message);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
public void HasCaptureUnmatchedValuesParameteterWithWrongType_Throws()
|
public void HasCaptureUnmatchedValuesParameterWithWrongType_Throws()
|
||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
var target = new HasWrongTypeCaptureUnmatchedValuesProperty();
|
var target = new HasWrongTypeCaptureUnmatchedValuesProperty();
|
||||||
|
|
@ -630,7 +630,7 @@ namespace Microsoft.AspNetCore.Components
|
||||||
[Parameter(CaptureUnmatchedValues = true)] public IReadOnlyDictionary<string, object> CaptureUnmatchedValues { get; set; }
|
[Parameter(CaptureUnmatchedValues = true)] public IReadOnlyDictionary<string, object> CaptureUnmatchedValues { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
class HasDupliateCaptureUnmatchedValuesProperty
|
class HasDuplicateCaptureUnmatchedValuesProperty
|
||||||
{
|
{
|
||||||
[Parameter(CaptureUnmatchedValues = true)] public Dictionary<string, object> CaptureUnmatchedValuesProp1 { get; set; }
|
[Parameter(CaptureUnmatchedValues = true)] public Dictionary<string, object> CaptureUnmatchedValuesProp1 { get; set; }
|
||||||
[Parameter(CaptureUnmatchedValues = true)] public IDictionary<string, object> CaptureUnmatchedValuesProp2 { get; set; }
|
[Parameter(CaptureUnmatchedValues = true)] public IDictionary<string, object> CaptureUnmatchedValuesProp2 { get; set; }
|
||||||
|
|
|
||||||
|
|
@ -442,7 +442,7 @@ namespace Microsoft.AspNetCore.Components.Test
|
||||||
[Fact]
|
[Fact]
|
||||||
public void HandlesKeyBeingAdded()
|
public void HandlesKeyBeingAdded()
|
||||||
{
|
{
|
||||||
// This is an anomolous situation that can't occur with .razor components.
|
// This is an anomalous situation that can't occur with .razor components.
|
||||||
// It represents the case where, for the same sequence number, we have an
|
// It represents the case where, for the same sequence number, we have an
|
||||||
// old frame without a key and a new frame with a key.
|
// old frame without a key and a new frame with a key.
|
||||||
|
|
||||||
|
|
@ -472,7 +472,7 @@ namespace Microsoft.AspNetCore.Components.Test
|
||||||
[Fact]
|
[Fact]
|
||||||
public void HandlesKeyBeingRemoved()
|
public void HandlesKeyBeingRemoved()
|
||||||
{
|
{
|
||||||
// This is an anomolous situation that can't occur with .razor components.
|
// This is an anomalous situation that can't occur with .razor components.
|
||||||
// It represents the case where, for the same sequence number, we have an
|
// It represents the case where, for the same sequence number, we have an
|
||||||
// old frame with a key and a new frame without a key.
|
// old frame with a key and a new frame without a key.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3574,7 +3574,7 @@ namespace Microsoft.AspNetCore.Components.Test
|
||||||
// Act &A Assert
|
// Act &A Assert
|
||||||
renderer.Dispose();
|
renderer.Dispose();
|
||||||
|
|
||||||
// All components must be disposed even if some throw as part of being diposed.
|
// All components must be disposed even if some throw as part of being disposed.
|
||||||
Assert.True(component.Disposed);
|
Assert.True(component.Disposed);
|
||||||
var aex = Assert.IsType<AggregateException>(Assert.Single(renderer.HandledExceptions));
|
var aex = Assert.IsType<AggregateException>(Assert.Single(renderer.HandledExceptions));
|
||||||
Assert.Contains(exception1, aex.InnerExceptions);
|
Assert.Contains(exception1, aex.InnerExceptions);
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@ namespace Microsoft.AspNetCore.Components.Rendering
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
public void Post_RunsAynchronously_WhenNotBusy_Exception()
|
public void Post_RunsAsynchronously_WhenNotBusy_Exception()
|
||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
var context = new RendererSynchronizationContext();
|
var context = new RendererSynchronizationContext();
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ using Microsoft.Extensions.Logging;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Components.Server
|
namespace Microsoft.AspNetCore.Components.Server
|
||||||
{
|
{
|
||||||
// We use a middlware so that we can use DI.
|
// We use a middleware so that we can use DI.
|
||||||
internal class CircuitDisconnectMiddleware
|
internal class CircuitDisconnectMiddleware
|
||||||
{
|
{
|
||||||
private const string CircuitIdKey = "circuitId";
|
private const string CircuitIdKey = "circuitId";
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ namespace Microsoft.AspNetCore.Components.Server
|
||||||
/// without losing any state in the event of transient connection issues.
|
/// without losing any state in the event of transient connection issues.
|
||||||
/// </para>
|
/// </para>
|
||||||
/// <para>
|
/// <para>
|
||||||
/// This value determines the maximium number of circuit states retained by the server.
|
/// This value determines the maximum number of circuit states retained by the server.
|
||||||
/// <seealso cref="DisconnectedCircuitRetentionPeriod"/>
|
/// <seealso cref="DisconnectedCircuitRetentionPeriod"/>
|
||||||
/// </para>
|
/// </para>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
@ -37,7 +37,7 @@ namespace Microsoft.AspNetCore.Components.Server
|
||||||
/// without losing any state in the event of transient connection issues.
|
/// without losing any state in the event of transient connection issues.
|
||||||
/// </para>
|
/// </para>
|
||||||
/// <para>
|
/// <para>
|
||||||
/// This value determines the maximium duration circuit state is retained by the server before being evicted.
|
/// This value determines the maximum duration circuit state is retained by the server before being evicted.
|
||||||
/// <seealso cref="DisconnectedCircuitMaxRetained"/>
|
/// <seealso cref="DisconnectedCircuitMaxRetained"/>
|
||||||
/// </para>
|
/// </para>
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
||||||
|
|
@ -355,7 +355,7 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
|
|
||||||
// EndInvokeJSFromDotNet is used in a fire-and-forget context, so it's responsible for its own
|
// EndInvokeJSFromDotNet is used in a fire-and-forget context, so it's responsible for its own
|
||||||
// error handling.
|
// error handling.
|
||||||
public async Task EndInvokeJSFromDotNet(long asyncCall, bool succeded, string arguments)
|
public async Task EndInvokeJSFromDotNet(long asyncCall, bool succeeded, string arguments)
|
||||||
{
|
{
|
||||||
AssertInitialized();
|
AssertInitialized();
|
||||||
AssertNotDisposed();
|
AssertNotDisposed();
|
||||||
|
|
@ -364,7 +364,7 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
{
|
{
|
||||||
await Renderer.Dispatcher.InvokeAsync(() =>
|
await Renderer.Dispatcher.InvokeAsync(() =>
|
||||||
{
|
{
|
||||||
if (!succeded)
|
if (!succeeded)
|
||||||
{
|
{
|
||||||
// We can log the arguments here because it is simply the JS error with the call stack.
|
// We can log the arguments here because it is simply the JS error with the call stack.
|
||||||
Log.EndInvokeJSFailed(_logger, asyncCall, arguments);
|
Log.EndInvokeJSFailed(_logger, asyncCall, arguments);
|
||||||
|
|
@ -577,11 +577,11 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
|
|
||||||
private static class Log
|
private static class Log
|
||||||
{
|
{
|
||||||
private static readonly Action<ILogger, Exception> _intializationStarted;
|
private static readonly Action<ILogger, Exception> _initializationStarted;
|
||||||
private static readonly Action<ILogger, Exception> _intializationSucceded;
|
private static readonly Action<ILogger, Exception> _initializationSucceded;
|
||||||
private static readonly Action<ILogger, Exception> _intializationFailed;
|
private static readonly Action<ILogger, Exception> _initializationFailed;
|
||||||
private static readonly Action<ILogger, CircuitId, Exception> _disposeStarted;
|
private static readonly Action<ILogger, CircuitId, Exception> _disposeStarted;
|
||||||
private static readonly Action<ILogger, CircuitId, Exception> _disposeSucceded;
|
private static readonly Action<ILogger, CircuitId, Exception> _disposeSucceeded;
|
||||||
private static readonly Action<ILogger, CircuitId, Exception> _disposeFailed;
|
private static readonly Action<ILogger, CircuitId, Exception> _disposeFailed;
|
||||||
private static readonly Action<ILogger, CircuitId, Exception> _onCircuitOpened;
|
private static readonly Action<ILogger, CircuitId, Exception> _onCircuitOpened;
|
||||||
private static readonly Action<ILogger, CircuitId, string, Exception> _onConnectionUp;
|
private static readonly Action<ILogger, CircuitId, string, Exception> _onConnectionUp;
|
||||||
|
|
@ -639,7 +639,7 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
public static readonly EventId EndInvokeJSSucceeded = new EventId(206, "EndInvokeJSSucceeded");
|
public static readonly EventId EndInvokeJSSucceeded = new EventId(206, "EndInvokeJSSucceeded");
|
||||||
public static readonly EventId DispatchEventThroughJSInterop = new EventId(207, "DispatchEventThroughJSInterop");
|
public static readonly EventId DispatchEventThroughJSInterop = new EventId(207, "DispatchEventThroughJSInterop");
|
||||||
public static readonly EventId LocationChange = new EventId(208, "LocationChange");
|
public static readonly EventId LocationChange = new EventId(208, "LocationChange");
|
||||||
public static readonly EventId LocationChangeSucceded = new EventId(209, "LocationChangeSucceeded");
|
public static readonly EventId LocationChangeSucceeded = new EventId(209, "LocationChangeSucceeded");
|
||||||
public static readonly EventId LocationChangeFailed = new EventId(210, "LocationChangeFailed");
|
public static readonly EventId LocationChangeFailed = new EventId(210, "LocationChangeFailed");
|
||||||
public static readonly EventId LocationChangeFailedInCircuit = new EventId(211, "LocationChangeFailedInCircuit");
|
public static readonly EventId LocationChangeFailedInCircuit = new EventId(211, "LocationChangeFailedInCircuit");
|
||||||
public static readonly EventId OnRenderCompletedFailed = new EventId(212, "OnRenderCompletedFailed");
|
public static readonly EventId OnRenderCompletedFailed = new EventId(212, "OnRenderCompletedFailed");
|
||||||
|
|
@ -647,17 +647,17 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
|
|
||||||
static Log()
|
static Log()
|
||||||
{
|
{
|
||||||
_intializationStarted = LoggerMessage.Define(
|
_initializationStarted = LoggerMessage.Define(
|
||||||
LogLevel.Debug,
|
LogLevel.Debug,
|
||||||
EventIds.InitializationStarted,
|
EventIds.InitializationStarted,
|
||||||
"Circuit initialization started.");
|
"Circuit initialization started.");
|
||||||
|
|
||||||
_intializationSucceded = LoggerMessage.Define(
|
_initializationSucceded = LoggerMessage.Define(
|
||||||
LogLevel.Debug,
|
LogLevel.Debug,
|
||||||
EventIds.InitializationSucceeded,
|
EventIds.InitializationSucceeded,
|
||||||
"Circuit initialization succeeded.");
|
"Circuit initialization succeeded.");
|
||||||
|
|
||||||
_intializationFailed = LoggerMessage.Define(
|
_initializationFailed = LoggerMessage.Define(
|
||||||
LogLevel.Debug,
|
LogLevel.Debug,
|
||||||
EventIds.InitializationFailed,
|
EventIds.InitializationFailed,
|
||||||
"Circuit initialization failed.");
|
"Circuit initialization failed.");
|
||||||
|
|
@ -667,10 +667,10 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
EventIds.DisposeStarted,
|
EventIds.DisposeStarted,
|
||||||
"Disposing circuit '{CircuitId}' started.");
|
"Disposing circuit '{CircuitId}' started.");
|
||||||
|
|
||||||
_disposeSucceded = LoggerMessage.Define<CircuitId>(
|
_disposeSucceeded = LoggerMessage.Define<CircuitId>(
|
||||||
LogLevel.Debug,
|
LogLevel.Debug,
|
||||||
EventIds.DisposeSucceeded,
|
EventIds.DisposeSucceeded,
|
||||||
"Disposing circuit '{CircuitId}' succeded.");
|
"Disposing circuit '{CircuitId}' succeeded.");
|
||||||
|
|
||||||
_disposeFailed = LoggerMessage.Define<CircuitId>(
|
_disposeFailed = LoggerMessage.Define<CircuitId>(
|
||||||
LogLevel.Debug,
|
LogLevel.Debug,
|
||||||
|
|
@ -725,7 +725,7 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
_unhandledExceptionClientDisconnected = LoggerMessage.Define<CircuitId>(
|
_unhandledExceptionClientDisconnected = LoggerMessage.Define<CircuitId>(
|
||||||
LogLevel.Debug,
|
LogLevel.Debug,
|
||||||
EventIds.UnhandledExceptionClientDisconnected,
|
EventIds.UnhandledExceptionClientDisconnected,
|
||||||
"An exception ocurred on the circuit host '{CircuitId}' while the client is disconnected.");
|
"An exception occurred on the circuit host '{CircuitId}' while the client is disconnected.");
|
||||||
|
|
||||||
_beginInvokeDotNetStatic = LoggerMessage.Define<string, string, string>(
|
_beginInvokeDotNetStatic = LoggerMessage.Define<string, string, string>(
|
||||||
LogLevel.Debug,
|
LogLevel.Debug,
|
||||||
|
|
@ -779,8 +779,8 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
|
|
||||||
_locationChangeSucceeded = LoggerMessage.Define<string, CircuitId>(
|
_locationChangeSucceeded = LoggerMessage.Define<string, CircuitId>(
|
||||||
LogLevel.Debug,
|
LogLevel.Debug,
|
||||||
EventIds.LocationChangeSucceded,
|
EventIds.LocationChangeSucceeded,
|
||||||
"Location change to '{URI}' in circuit '{CircuitId}' succeded.");
|
"Location change to '{URI}' in circuit '{CircuitId}' succeeded.");
|
||||||
|
|
||||||
_locationChangeFailed = LoggerMessage.Define<string, CircuitId>(
|
_locationChangeFailed = LoggerMessage.Define<string, CircuitId>(
|
||||||
LogLevel.Debug,
|
LogLevel.Debug,
|
||||||
|
|
@ -798,11 +798,11 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
"Failed to complete render batch '{RenderId}' in circuit host '{CircuitId}'.");
|
"Failed to complete render batch '{RenderId}' in circuit host '{CircuitId}'.");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void InitializationStarted(ILogger logger) => _intializationStarted(logger, null);
|
public static void InitializationStarted(ILogger logger) => _initializationStarted(logger, null);
|
||||||
public static void InitializationSucceeded(ILogger logger) => _intializationSucceded(logger, null);
|
public static void InitializationSucceeded(ILogger logger) => _initializationSucceded(logger, null);
|
||||||
public static void InitializationFailed(ILogger logger, Exception exception) => _intializationFailed(logger, exception);
|
public static void InitializationFailed(ILogger logger, Exception exception) => _initializationFailed(logger, exception);
|
||||||
public static void DisposeStarted(ILogger logger, CircuitId circuitId) => _disposeStarted(logger, circuitId, null);
|
public static void DisposeStarted(ILogger logger, CircuitId circuitId) => _disposeStarted(logger, circuitId, null);
|
||||||
public static void DisposeSucceeded(ILogger logger, CircuitId circuitId) => _disposeSucceded(logger, circuitId, null);
|
public static void DisposeSucceeded(ILogger logger, CircuitId circuitId) => _disposeSucceeded(logger, circuitId, null);
|
||||||
public static void DisposeFailed(ILogger logger, CircuitId circuitId, Exception exception) => _disposeFailed(logger, circuitId, exception);
|
public static void DisposeFailed(ILogger logger, CircuitId circuitId, Exception exception) => _disposeFailed(logger, circuitId, exception);
|
||||||
public static void CircuitOpened(ILogger logger, CircuitId circuitId) => _onCircuitOpened(logger, circuitId, null);
|
public static void CircuitOpened(ILogger logger, CircuitId circuitId) => _onCircuitOpened(logger, circuitId, null);
|
||||||
public static void ConnectionUp(ILogger logger, CircuitId circuitId, string connectionId) => _onConnectionUp(logger, circuitId, connectionId, null);
|
public static void ConnectionUp(ILogger logger, CircuitId circuitId, string connectionId) => _onConnectionUp(logger, circuitId, connectionId, null);
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,7 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
/// the <see cref="CircuitClientProxy"/> to use the new client instance that attempted to reconnect to the server. Removing the entry from
|
/// the <see cref="CircuitClientProxy"/> to use the new client instance that attempted to reconnect to the server. Removing the entry from
|
||||||
/// <see cref="DisconnectedCircuits"/> should ensure we no longer have to concern ourselves with entry expiration.
|
/// <see cref="DisconnectedCircuits"/> should ensure we no longer have to concern ourselves with entry expiration.
|
||||||
///
|
///
|
||||||
/// Knowing when a client disconnected is not an exact science. There's a fair possiblity that a client may reconnect before the server realizes.
|
/// Knowing when a client disconnected is not an exact science. There's a fair possibility that a client may reconnect before the server realizes.
|
||||||
/// Consequently, we have to account for reconnects and disconnects occuring simultaneously as well as appearing out of order.
|
/// Consequently, we have to account for reconnects and disconnects occuring simultaneously as well as appearing out of order.
|
||||||
/// To manage this, we use a critical section to manage all state transitions.
|
/// To manage this, we use a critical section to manage all state transitions.
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
|
|
@ -99,7 +99,7 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
// DisconnectCore may fail to disconnect the circuit if it was previously marked inactive or
|
// DisconnectCore may fail to disconnect the circuit if it was previously marked inactive or
|
||||||
// has been transfered to a new connection. Do not invoke the circuit handlers in this instance.
|
// has been transferred to a new connection. Do not invoke the circuit handlers in this instance.
|
||||||
|
|
||||||
// We have to do in this instance.
|
// We have to do in this instance.
|
||||||
return Task.CompletedTask;
|
return Task.CompletedTask;
|
||||||
|
|
@ -181,7 +181,7 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
{
|
{
|
||||||
// Transition the host from disconnected to connected if it's available. In this critical section, we return
|
// Transition the host from disconnected to connected if it's available. In this critical section, we return
|
||||||
// an existing host if it's currently considered connected or transition a disconnected host to connected.
|
// an existing host if it's currently considered connected or transition a disconnected host to connected.
|
||||||
// Transfering also wires up the client to the new set.
|
// Transferring also wires up the client to the new set.
|
||||||
(circuitHost, previouslyConnected) = ConnectCore(circuitId, clientProxy, connectionId);
|
(circuitHost, previouslyConnected) = ConnectCore(circuitId, clientProxy, connectionId);
|
||||||
|
|
||||||
if (circuitHost == null)
|
if (circuitHost == null)
|
||||||
|
|
@ -428,7 +428,7 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
_connectingToDisconnectedCircuit = LoggerMessage.Define<CircuitId, string>(
|
_connectingToDisconnectedCircuit = LoggerMessage.Define<CircuitId, string>(
|
||||||
LogLevel.Debug,
|
LogLevel.Debug,
|
||||||
EventIds.ConnectingToDisconnectedCircuit,
|
EventIds.ConnectingToDisconnectedCircuit,
|
||||||
"Transfering disconnected circuit {CircuitId} to connection {ConnectionId}.");
|
"Transferring disconnected circuit {CircuitId} to connection {ConnectionId}.");
|
||||||
|
|
||||||
_failedToReconnectToCircuit = LoggerMessage.Define<CircuitId>(
|
_failedToReconnectToCircuit = LoggerMessage.Define<CircuitId>(
|
||||||
LogLevel.Debug,
|
LogLevel.Debug,
|
||||||
|
|
|
||||||
|
|
@ -72,14 +72,14 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
// as we have a client that is not acknowledging render batches fast enough (something we consider needs
|
// as we have a client that is not acknowledging render batches fast enough (something we consider needs
|
||||||
// to be fast).
|
// to be fast).
|
||||||
// The result is something as follows:
|
// The result is something as follows:
|
||||||
// Lets imagine an extreme case where the server produces a new batch every milisecond.
|
// Lets imagine an extreme case where the server produces a new batch every millisecond.
|
||||||
// Lets say the client is able to ACK a batch every 100 miliseconds.
|
// Lets say the client is able to ACK a batch every 100 milliseconds.
|
||||||
// When the app starts the client might see the sequence 0->(MaxUnacknowledgedRenderBatches-1) and then
|
// When the app starts the client might see the sequence 0->(MaxUnacknowledgedRenderBatches-1) and then
|
||||||
// after 100 miliseconds it sees it jump to 1xx, then to 2xx where xx is something between {0..99} the
|
// after 100 milliseconds it sees it jump to 1xx, then to 2xx where xx is something between {0..99} the
|
||||||
// reason for this is that the server slows down rendering new batches to as fast as the client can consume
|
// reason for this is that the server slows down rendering new batches to as fast as the client can consume
|
||||||
// them.
|
// them.
|
||||||
// Similarly, if a client were to send events at a faster pace than the server can consume them, the server
|
// Similarly, if a client were to send events at a faster pace than the server can consume them, the server
|
||||||
// would still proces the events, but would not produce new renders until it gets an ack that frees up space
|
// would still process the events, but would not produce new renders until it gets an ack that frees up space
|
||||||
// for a new render.
|
// for a new render.
|
||||||
// We should never see UnacknowledgedRenderBatches.Count > _options.MaxBufferedUnacknowledgedRenderBatches
|
// We should never see UnacknowledgedRenderBatches.Count > _options.MaxBufferedUnacknowledgedRenderBatches
|
||||||
|
|
||||||
|
|
@ -184,7 +184,7 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
{
|
{
|
||||||
// Send the render batch to the client
|
// Send the render batch to the client
|
||||||
// If the "send" operation fails (synchronously or asynchronously) or the client
|
// If the "send" operation fails (synchronously or asynchronously) or the client
|
||||||
// gets disconected simply give up. This likely means that
|
// gets disconnected simply give up. This likely means that
|
||||||
// the circuit went offline while sending the data, so simply wait until the
|
// the circuit went offline while sending the data, so simply wait until the
|
||||||
// client reconnects back or the circuit gets evicted because it stayed
|
// client reconnects back or the circuit gets evicted because it stayed
|
||||||
// disconnected for too long.
|
// disconnected for too long.
|
||||||
|
|
@ -229,7 +229,7 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
// from the client that it has received and successfully applied all batches up to that point).
|
// from the client that it has received and successfully applied all batches up to that point).
|
||||||
|
|
||||||
// If receive an ack for a previously acknowledged batch, its an error, as the messages are
|
// If receive an ack for a previously acknowledged batch, its an error, as the messages are
|
||||||
// guranteed to be delivered in order, so a message for a render batch of 2 will never arrive
|
// guaranteed to be delivered in order, so a message for a render batch of 2 will never arrive
|
||||||
// after a message for a render batch for 3.
|
// after a message for a render batch for 3.
|
||||||
// If that were to be the case, it would just be enough to relax the checks here and simply skip
|
// If that were to be the case, it would just be enough to relax the checks here and simply skip
|
||||||
// the message.
|
// the message.
|
||||||
|
|
@ -264,7 +264,7 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
|
|
||||||
if (lastBatchId < incomingBatchId)
|
if (lastBatchId < incomingBatchId)
|
||||||
{
|
{
|
||||||
// This exception is due to a bad client input, so we mark it as such to prevent loging it as a warning and
|
// This exception is due to a bad client input, so we mark it as such to prevent logging it as a warning and
|
||||||
// flooding the logs with warnings.
|
// flooding the logs with warnings.
|
||||||
throw new InvalidOperationException($"Received an acknowledgement for batch with id '{incomingBatchId}' when the last batch produced was '{lastBatchId}'.");
|
throw new InvalidOperationException($"Received an acknowledgement for batch with id '{incomingBatchId}' when the last batch produced was '{lastBatchId}'.");
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,7 @@ namespace Microsoft.AspNetCore.Components.Server.Circuits
|
||||||
}
|
}
|
||||||
|
|
||||||
[Fact]
|
[Fact]
|
||||||
public void CreateCircuitId_Generates_GeneratesDifferentIds_ForSuccesiveCalls()
|
public void CreateCircuitId_Generates_GeneratesDifferentIds_ForSuccessiveCalls()
|
||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
var factory = TestCircuitIdFactory.CreateTestFactory();
|
var factory = TestCircuitIdFactory.CreateTestFactory();
|
||||||
|
|
|
||||||
|
|
@ -179,7 +179,7 @@ namespace Microsoft.AspNetCore.Components.Web.Rendering
|
||||||
|
|
||||||
// Assert
|
// Assert
|
||||||
Assert.Equal(new long[] { 2, 3, 4 }, renderIds);
|
Assert.Equal(new long[] { 2, 3, 4 }, renderIds);
|
||||||
Assert.True(task.Wait(3000), "One or more render batches werent acknowledged");
|
Assert.True(task.Wait(3000), "One or more render batches weren't acknowledged");
|
||||||
|
|
||||||
await task;
|
await task;
|
||||||
}
|
}
|
||||||
|
|
@ -233,7 +233,7 @@ namespace Microsoft.AspNetCore.Components.Web.Rendering
|
||||||
exceptions.Add(e);
|
exceptions.Add(e);
|
||||||
};
|
};
|
||||||
|
|
||||||
// Receive the ack for the intial batch
|
// Receive the ack for the initial batch
|
||||||
_ = renderer.OnRenderCompletedAsync(2, null);
|
_ = renderer.OnRenderCompletedAsync(2, null);
|
||||||
// Receive the ack for the second batch
|
// Receive the ack for the second batch
|
||||||
_ = renderer.OnRenderCompletedAsync(3, null);
|
_ = renderer.OnRenderCompletedAsync(3, null);
|
||||||
|
|
|
||||||
|
|
@ -66,9 +66,9 @@ namespace Microsoft.AspNetCore.Components.Server.Tests
|
||||||
services.AddServerSideBlazor();
|
services.AddServerSideBlazor();
|
||||||
services.AddSingleton<IConfiguration>(new ConfigurationBuilder().Build());
|
services.AddSingleton<IConfiguration>(new ConfigurationBuilder().Build());
|
||||||
|
|
||||||
var serviceProvder = services.BuildServiceProvider();
|
var serviceProvider = services.BuildServiceProvider();
|
||||||
|
|
||||||
return new ApplicationBuilder(serviceProvder);
|
return new ApplicationBuilder(serviceProvider);
|
||||||
}
|
}
|
||||||
|
|
||||||
private class MyComponent : IComponent
|
private class MyComponent : IComponent
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ namespace Microsoft.AspNetCore.Components
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
throw new JsonException($"Unexcepted JSON Token {reader.TokenType}.");
|
throw new JsonException($"Unexpected JSON Token {reader.TokenType}.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -49,4 +49,4 @@ namespace Microsoft.AspNetCore.Components
|
||||||
writer.WriteEndObject();
|
writer.WriteEndObject();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,11 @@
|
||||||
<IsPackable>false</IsPackable>
|
<IsPackable>false</IsPackable>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<BuildOutputFiles Include="dist\release\blazor.server.js" />
|
||||||
|
<BuildOutputFiles Include="dist\release\blazor.webassembly.js" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference
|
<ProjectReference
|
||||||
Include="..\..\SignalR\clients\ts\signalr\signalr.npmproj"
|
Include="..\..\SignalR\clients\ts\signalr\signalr.npmproj"
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
|
|
@ -122,7 +122,7 @@ namespace Microsoft.AspNetCore.Components.Forms
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Formats the value as a string. Derived classes can override this to determine the formating used for <see cref="CurrentValueAsString"/>.
|
/// Formats the value as a string. Derived classes can override this to determine the formatting used for <see cref="CurrentValueAsString"/>.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="value">The value to format.</param>
|
/// <param name="value">The value to format.</param>
|
||||||
/// <returns>A string representation of the value.</returns>
|
/// <returns>A string representation of the value.</returns>
|
||||||
|
|
|
||||||
|
|
@ -67,7 +67,7 @@ namespace Microsoft.AspNetCore.Components.Forms
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Formats the value as a string. Derived classes can override this to determine the formating used for <c>CurrentValueAsString</c>.
|
/// Formats the value as a string. Derived classes can override this to determine the formatting used for <c>CurrentValueAsString</c>.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="value">The value to format.</param>
|
/// <param name="value">The value to format.</param>
|
||||||
/// <returns>A string representation of the value.</returns>
|
/// <returns>A string representation of the value.</returns>
|
||||||
|
|
|
||||||
|
|
@ -212,7 +212,7 @@ namespace Microsoft.AspNetCore.Components.Forms
|
||||||
};
|
};
|
||||||
var fieldIdentifier = FieldIdentifier.Create(() => model.StringProperty);
|
var fieldIdentifier = FieldIdentifier.Create(() => model.StringProperty);
|
||||||
|
|
||||||
// Act/Assert: Initally, it's valid and unmodified
|
// Act/Assert: Initially, it's valid and unmodified
|
||||||
var inputComponent = await RenderAndGetTestInputComponentAsync(rootComponent);
|
var inputComponent = await RenderAndGetTestInputComponentAsync(rootComponent);
|
||||||
Assert.Equal("valid", inputComponent.CssClass); // no Class was specified
|
Assert.Equal("valid", inputComponent.CssClass); // no Class was specified
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,7 @@ namespace Microsoft.AspNetCore.Components.E2ETest.ServerExecutionTests
|
||||||
[Theory]
|
[Theory]
|
||||||
[InlineData("en-US")]
|
[InlineData("en-US")]
|
||||||
[InlineData("fr-FR")]
|
[InlineData("fr-FR")]
|
||||||
public void CanSetCultureAndParseCultueSensitiveNumbersAndDates(string culture)
|
public void CanSetCultureAndParseCultureSensitiveNumbersAndDates(string culture)
|
||||||
{
|
{
|
||||||
var cultureInfo = CultureInfo.GetCultureInfo(culture);
|
var cultureInfo = CultureInfo.GetCultureInfo(culture);
|
||||||
SetCulture(culture);
|
SetCulture(culture);
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@
|
||||||
<p id="errormessage-failure">Error = @errorFailure</p>
|
<p id="errormessage-failure">Error = @errorFailure</p>
|
||||||
|
|
||||||
<button id="triggerjsinterop-malformed" @onclick="@TriggerJSInterop">Trigger malformed JS interop callback</button>
|
<button id="triggerjsinterop-malformed" @onclick="@TriggerJSInterop">Trigger malformed JS interop callback</button>
|
||||||
<button id="triggerjsinterop-success" @onclick="@TriggerJSInteropSuccess">Trigger successfull JS interop callback</button>
|
<button id="triggerjsinterop-success" @onclick="@TriggerJSInteropSuccess">Trigger successful JS interop callback</button>
|
||||||
<button id="triggerjsinterop-failure" @onclick="@TriggerJSInteropFailure">Trigger error JS interop callback</button>
|
<button id="triggerjsinterop-failure" @onclick="@TriggerJSInteropFailure">Trigger error JS interop callback</button>
|
||||||
|
|
||||||
<button id="event-handler-throw-sync" @onclick="@TriggerSyncException">Trigger sync exception</button>
|
<button id="event-handler-throw-sync" @onclick="@TriggerSyncException">Trigger sync exception</button>
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@
|
||||||
<Reference Include="Microsoft.Azure.Storage.Blob" />
|
<Reference Include="Microsoft.Azure.Storage.Blob" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup Condition="'$(AspNetCoreMajorMinorVersion)' == '3.1'">
|
<ItemGroup Condition="'$(AspNetCoreMajorMinorVersion)' == '5.0'">
|
||||||
<!-- This dependency was replaced by Microsoft.Azure.Storage.Blob between 3.0 and 2.2. This suppression can be removed after 3.0 is complete. -->
|
<!-- This dependency was replaced by Microsoft.Azure.Storage.Blob between 3.0 and 2.2. This suppression can be removed after 3.0 is complete. -->
|
||||||
<SuppressBaselineReference Include="WindowsAzure.Storage" />
|
<SuppressBaselineReference Include="WindowsAzure.Storage" />
|
||||||
<Reference Include="Microsoft.Data.OData" />
|
<Reference Include="Microsoft.Data.OData" />
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
DataProtection
|
DataProtection
|
||||||
==============
|
==============
|
||||||
|
|
||||||
Data Protection APIs for protecting and unprotecting data. You can find documentation for Data Protection in the [ASP.NET Core Documentation](https://docs.microsoft.com/en-us/aspnet/core/security/data-protection/).
|
Data Protection APIs for protecting and unprotecting data. You can find documentation for Data Protection in the [ASP.NET Core Documentation](https://docs.microsoft.com/aspnet/core/security/data-protection/).
|
||||||
|
|
||||||
## Community Maintained Data Protection Providers & Projects
|
## Community Maintained Data Protection Providers & Projects
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -158,7 +158,7 @@ namespace Microsoft.AspNetCore.Tests
|
||||||
var applicationName = "CreateDefaultBuilderApp";
|
var applicationName = "CreateDefaultBuilderApp";
|
||||||
var deploymentParameters = new DeploymentParameters(Path.Combine(GetTestSitesPath(), applicationName), ServerType.IISExpress, RuntimeFlavor.CoreClr, RuntimeArchitecture.x64)
|
var deploymentParameters = new DeploymentParameters(Path.Combine(GetTestSitesPath(), applicationName), ServerType.IISExpress, RuntimeFlavor.CoreClr, RuntimeArchitecture.x64)
|
||||||
{
|
{
|
||||||
TargetFramework = "netcoreapp3.1",
|
TargetFramework = "netcoreapp5.0",
|
||||||
HostingModel = HostingModel.InProcess
|
HostingModel = HostingModel.InProcess
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -213,7 +213,7 @@ namespace Microsoft.AspNetCore.Tests
|
||||||
{
|
{
|
||||||
var deploymentParameters = new DeploymentParameters(Path.Combine(GetTestSitesPath(), applicationName), ServerType.Kestrel, RuntimeFlavor.CoreClr, RuntimeArchitecture.x64)
|
var deploymentParameters = new DeploymentParameters(Path.Combine(GetTestSitesPath(), applicationName), ServerType.Kestrel, RuntimeFlavor.CoreClr, RuntimeArchitecture.x64)
|
||||||
{
|
{
|
||||||
TargetFramework = "netcoreapp3.1",
|
TargetFramework = "netcoreapp5.0",
|
||||||
};
|
};
|
||||||
|
|
||||||
if (setTestEnvVars)
|
if (setTestEnvVars)
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,7 @@ This package is an internal implementation of the .NET Core SDK and is not meant
|
||||||
<BaseRuntimeVersionFileName>aspnetcore_base_runtime.version</BaseRuntimeVersionFileName>
|
<BaseRuntimeVersionFileName>aspnetcore_base_runtime.version</BaseRuntimeVersionFileName>
|
||||||
<BaseRuntimeVersionFileOutputPath>$(InstallersOutputPath)$(BaseRuntimeVersionFileName)</BaseRuntimeVersionFileOutputPath>
|
<BaseRuntimeVersionFileOutputPath>$(InstallersOutputPath)$(BaseRuntimeVersionFileName)</BaseRuntimeVersionFileOutputPath>
|
||||||
|
|
||||||
<!-- NuGet appends target framework to this value. Example: runtimes/win-x64/lib/netcoreapp3.1/ -->
|
<!-- NuGet appends target framework to this value. Example: runtimes/win-x64/lib/netcoreapp5.0/ -->
|
||||||
<BuildOutputTargetFolder>runtimes/$(RuntimeIdentifier)/lib/</BuildOutputTargetFolder>
|
<BuildOutputTargetFolder>runtimes/$(RuntimeIdentifier)/lib/</BuildOutputTargetFolder>
|
||||||
<!-- We still need the native path to these assets though for the RuntimeList.xml manifest -->
|
<!-- We still need the native path to these assets though for the RuntimeList.xml manifest -->
|
||||||
<ManagedAssetsPackagePath>$(BuildOutputTargetFolder)$(DefaultNetCoreTargetFramework)</ManagedAssetsPackagePath>
|
<ManagedAssetsPackagePath>$(BuildOutputTargetFolder)$(DefaultNetCoreTargetFramework)</ManagedAssetsPackagePath>
|
||||||
|
|
|
||||||
|
|
@ -114,6 +114,7 @@ namespace Microsoft.AspNetCore.Hosting
|
||||||
public HttpContext HttpContext { get; set; }
|
public HttpContext HttpContext { get; set; }
|
||||||
public IDisposable Scope { get; set; }
|
public IDisposable Scope { get; set; }
|
||||||
public Activity Activity { get; set; }
|
public Activity Activity { get; set; }
|
||||||
|
internal HostingRequestStartingLog StartLog { get; set; }
|
||||||
|
|
||||||
public long StartTimestamp { get; set; }
|
public long StartTimestamp { get; set; }
|
||||||
internal bool HasDiagnosticListener { get; set; }
|
internal bool HasDiagnosticListener { get; set; }
|
||||||
|
|
@ -125,6 +126,7 @@ namespace Microsoft.AspNetCore.Hosting
|
||||||
|
|
||||||
Scope = null;
|
Scope = null;
|
||||||
Activity = null;
|
Activity = null;
|
||||||
|
StartLog = null;
|
||||||
|
|
||||||
StartTimestamp = 0;
|
StartTimestamp = 0;
|
||||||
HasDiagnosticListener = false;
|
HasDiagnosticListener = false;
|
||||||
|
|
|
||||||
|
|
@ -78,7 +78,7 @@ namespace Microsoft.AspNetCore.Hosting
|
||||||
}
|
}
|
||||||
|
|
||||||
// Non-inline
|
// Non-inline
|
||||||
LogRequestStarting(httpContext);
|
LogRequestStarting(context);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
context.StartTimestamp = startTimestamp;
|
context.StartTimestamp = startTimestamp;
|
||||||
|
|
@ -97,7 +97,7 @@ namespace Microsoft.AspNetCore.Hosting
|
||||||
{
|
{
|
||||||
currentTimestamp = Stopwatch.GetTimestamp();
|
currentTimestamp = Stopwatch.GetTimestamp();
|
||||||
// Non-inline
|
// Non-inline
|
||||||
LogRequestFinished(httpContext, startTimestamp, currentTimestamp);
|
LogRequestFinished(context, startTimestamp, currentTimestamp);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_diagnosticListener.IsEnabled())
|
if (_diagnosticListener.IsEnabled())
|
||||||
|
|
@ -167,30 +167,34 @@ namespace Microsoft.AspNetCore.Hosting
|
||||||
}
|
}
|
||||||
|
|
||||||
[MethodImpl(MethodImplOptions.NoInlining)]
|
[MethodImpl(MethodImplOptions.NoInlining)]
|
||||||
private void LogRequestStarting(HttpContext httpContext)
|
private void LogRequestStarting(HostingApplication.Context context)
|
||||||
{
|
{
|
||||||
// IsEnabled is checked in the caller, so if we are here just log
|
// IsEnabled is checked in the caller, so if we are here just log
|
||||||
|
var startLog = new HostingRequestStartingLog(context.HttpContext);
|
||||||
|
context.StartLog = startLog;
|
||||||
|
|
||||||
_logger.Log(
|
_logger.Log(
|
||||||
logLevel: LogLevel.Information,
|
logLevel: LogLevel.Information,
|
||||||
eventId: LoggerEventIds.RequestStarting,
|
eventId: LoggerEventIds.RequestStarting,
|
||||||
state: new HostingRequestStartingLog(httpContext),
|
state: startLog,
|
||||||
exception: null,
|
exception: null,
|
||||||
formatter: HostingRequestStartingLog.Callback);
|
formatter: HostingRequestStartingLog.Callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
[MethodImpl(MethodImplOptions.NoInlining)]
|
[MethodImpl(MethodImplOptions.NoInlining)]
|
||||||
private void LogRequestFinished(HttpContext httpContext, long startTimestamp, long currentTimestamp)
|
private void LogRequestFinished(HostingApplication.Context context, long startTimestamp, long currentTimestamp)
|
||||||
{
|
{
|
||||||
// IsEnabled isn't checked in the caller, startTimestamp > 0 is used as a fast proxy check
|
// IsEnabled isn't checked in the caller, startTimestamp > 0 is used as a fast proxy check
|
||||||
// but that may be because diagnostics are enabled, which also uses startTimestamp, so check here
|
// but that may be because diagnostics are enabled, which also uses startTimestamp,
|
||||||
if (_logger.IsEnabled(LogLevel.Information))
|
// so check if we logged the start event
|
||||||
|
if (context.StartLog != null)
|
||||||
{
|
{
|
||||||
var elapsed = new TimeSpan((long)(TimestampToTicks * (currentTimestamp - startTimestamp)));
|
var elapsed = new TimeSpan((long)(TimestampToTicks * (currentTimestamp - startTimestamp)));
|
||||||
|
|
||||||
_logger.Log(
|
_logger.Log(
|
||||||
logLevel: LogLevel.Information,
|
logLevel: LogLevel.Information,
|
||||||
eventId: LoggerEventIds.RequestFinished,
|
eventId: LoggerEventIds.RequestFinished,
|
||||||
state: new HostingRequestFinishedLog(httpContext, elapsed),
|
state: new HostingRequestFinishedLog(context, elapsed),
|
||||||
exception: null,
|
exception: null,
|
||||||
formatter: HostingRequestFinishedLog.Callback);
|
formatter: HostingRequestFinishedLog.Callback);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -9,51 +9,56 @@ using Microsoft.AspNetCore.Http;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Hosting
|
namespace Microsoft.AspNetCore.Hosting
|
||||||
{
|
{
|
||||||
|
using static HostingRequestStartingLog;
|
||||||
|
|
||||||
internal class HostingRequestFinishedLog : IReadOnlyList<KeyValuePair<string, object>>
|
internal class HostingRequestFinishedLog : IReadOnlyList<KeyValuePair<string, object>>
|
||||||
{
|
{
|
||||||
internal static readonly Func<object, Exception, string> Callback = (state, exception) => ((HostingRequestFinishedLog)state).ToString();
|
internal static readonly Func<object, Exception, string> Callback = (state, exception) => ((HostingRequestFinishedLog)state).ToString();
|
||||||
|
|
||||||
private readonly HttpContext _httpContext;
|
private readonly HostingApplication.Context _context;
|
||||||
private readonly TimeSpan _elapsed;
|
|
||||||
|
|
||||||
private string _cachedToString;
|
private string _cachedToString;
|
||||||
|
public TimeSpan Elapsed { get; }
|
||||||
|
|
||||||
public int Count => 3;
|
public int Count => 11;
|
||||||
|
|
||||||
public KeyValuePair<string, object> this[int index]
|
public KeyValuePair<string, object> this[int index]
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
switch (index)
|
var request = _context.HttpContext.Request;
|
||||||
|
var response = _context.HttpContext.Response;
|
||||||
|
|
||||||
|
return index switch
|
||||||
{
|
{
|
||||||
case 0:
|
0 => new KeyValuePair<string, object>("ElapsedMilliseconds", Elapsed.TotalMilliseconds),
|
||||||
return new KeyValuePair<string, object>("ElapsedMilliseconds", _elapsed.TotalMilliseconds);
|
1 => new KeyValuePair<string, object>(nameof(response.StatusCode), response.StatusCode),
|
||||||
case 1:
|
2 => new KeyValuePair<string, object>(nameof(response.ContentType), response.ContentType),
|
||||||
return new KeyValuePair<string, object>("StatusCode", _httpContext.Response.StatusCode);
|
3 => new KeyValuePair<string, object>(nameof(response.ContentLength), response.ContentLength),
|
||||||
case 2:
|
4 => new KeyValuePair<string, object>(nameof(request.Protocol), request.Protocol),
|
||||||
return new KeyValuePair<string, object>("ContentType", _httpContext.Response.ContentType);
|
5 => new KeyValuePair<string, object>(nameof(request.Method), request.Method),
|
||||||
default:
|
6 => new KeyValuePair<string, object>(nameof(request.Scheme), request.Scheme),
|
||||||
throw new IndexOutOfRangeException(nameof(index));
|
7 => new KeyValuePair<string, object>(nameof(request.Host), request.Host.Value),
|
||||||
}
|
8 => new KeyValuePair<string, object>(nameof(request.PathBase), request.PathBase.Value),
|
||||||
|
9 => new KeyValuePair<string, object>(nameof(request.Path), request.Path.Value),
|
||||||
|
10 => new KeyValuePair<string, object>(nameof(request.QueryString), request.QueryString.Value),
|
||||||
|
_ => throw new IndexOutOfRangeException(nameof(index)),
|
||||||
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public HostingRequestFinishedLog(HttpContext httpContext, TimeSpan elapsed)
|
public HostingRequestFinishedLog(HostingApplication.Context context, TimeSpan elapsed)
|
||||||
{
|
{
|
||||||
_httpContext = httpContext;
|
_context = context;
|
||||||
_elapsed = elapsed;
|
Elapsed = elapsed;
|
||||||
}
|
}
|
||||||
|
|
||||||
public override string ToString()
|
public override string ToString()
|
||||||
{
|
{
|
||||||
if (_cachedToString == null)
|
if (_cachedToString == null)
|
||||||
{
|
{
|
||||||
_cachedToString = string.Format(
|
var response = _context.HttpContext.Response;
|
||||||
CultureInfo.InvariantCulture,
|
_cachedToString = $"Request finished {_context.StartLog.ToStringWithoutPreamble()} - {response.StatusCode.ToString(CultureInfo.InvariantCulture)} {ValueOrEmptyMarker(response.ContentLength)} {EscapedValueOrEmptyMarker(response.ContentType)} {Elapsed.TotalMilliseconds.ToString("0.0000", CultureInfo.InvariantCulture)}ms";
|
||||||
"Request finished in {0}ms {1} {2}",
|
|
||||||
_elapsed.TotalMilliseconds,
|
|
||||||
_httpContext.Response.StatusCode,
|
|
||||||
_httpContext.Response.ContentType);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return _cachedToString;
|
return _cachedToString;
|
||||||
|
|
|
||||||
|
|
@ -5,12 +5,16 @@ using System;
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Globalization;
|
using System.Globalization;
|
||||||
|
using System.Net;
|
||||||
using Microsoft.AspNetCore.Http;
|
using Microsoft.AspNetCore.Http;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Hosting
|
namespace Microsoft.AspNetCore.Hosting
|
||||||
{
|
{
|
||||||
internal class HostingRequestStartingLog : IReadOnlyList<KeyValuePair<string, object>>
|
internal class HostingRequestStartingLog : IReadOnlyList<KeyValuePair<string, object>>
|
||||||
{
|
{
|
||||||
|
private const string LogPreamble = "Request starting ";
|
||||||
|
private const string EmptyEntry = "-";
|
||||||
|
|
||||||
internal static readonly Func<object, Exception, string> Callback = (state, exception) => ((HostingRequestStartingLog)state).ToString();
|
internal static readonly Func<object, Exception, string> Callback = (state, exception) => ((HostingRequestStartingLog)state).ToString();
|
||||||
|
|
||||||
private readonly HttpRequest _request;
|
private readonly HttpRequest _request;
|
||||||
|
|
@ -19,35 +23,19 @@ namespace Microsoft.AspNetCore.Hosting
|
||||||
|
|
||||||
public int Count => 9;
|
public int Count => 9;
|
||||||
|
|
||||||
public KeyValuePair<string, object> this[int index]
|
public KeyValuePair<string, object> this[int index] => index switch
|
||||||
{
|
{
|
||||||
get
|
0 => new KeyValuePair<string, object>(nameof(_request.Protocol), _request.Protocol),
|
||||||
{
|
1 => new KeyValuePair<string, object>(nameof(_request.Method), _request.Method),
|
||||||
switch (index)
|
2 => new KeyValuePair<string, object>(nameof(_request.ContentType), _request.ContentType),
|
||||||
{
|
3 => new KeyValuePair<string, object>(nameof(_request.ContentLength), _request.ContentLength),
|
||||||
case 0:
|
4 => new KeyValuePair<string, object>(nameof(_request.Scheme), _request.Scheme),
|
||||||
return new KeyValuePair<string, object>("Protocol", _request.Protocol);
|
5 => new KeyValuePair<string, object>(nameof(_request.Host), _request.Host.Value),
|
||||||
case 1:
|
6 => new KeyValuePair<string, object>(nameof(_request.PathBase), _request.PathBase.Value),
|
||||||
return new KeyValuePair<string, object>("Method", _request.Method);
|
7 => new KeyValuePair<string, object>(nameof(_request.Path), _request.Path.Value),
|
||||||
case 2:
|
8 => new KeyValuePair<string, object>(nameof(_request.QueryString), _request.QueryString.Value),
|
||||||
return new KeyValuePair<string, object>("ContentType", _request.ContentType);
|
_ => throw new IndexOutOfRangeException(nameof(index)),
|
||||||
case 3:
|
};
|
||||||
return new KeyValuePair<string, object>("ContentLength", _request.ContentLength);
|
|
||||||
case 4:
|
|
||||||
return new KeyValuePair<string, object>("Scheme", _request.Scheme);
|
|
||||||
case 5:
|
|
||||||
return new KeyValuePair<string, object>("Host", _request.Host.ToString());
|
|
||||||
case 6:
|
|
||||||
return new KeyValuePair<string, object>("PathBase", _request.PathBase.ToString());
|
|
||||||
case 7:
|
|
||||||
return new KeyValuePair<string, object>("Path", _request.Path.ToString());
|
|
||||||
case 8:
|
|
||||||
return new KeyValuePair<string, object>("QueryString", _request.QueryString.ToString());
|
|
||||||
default:
|
|
||||||
throw new IndexOutOfRangeException(nameof(index));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public HostingRequestStartingLog(HttpContext httpContext)
|
public HostingRequestStartingLog(HttpContext httpContext)
|
||||||
{
|
{
|
||||||
|
|
@ -58,18 +46,8 @@ namespace Microsoft.AspNetCore.Hosting
|
||||||
{
|
{
|
||||||
if (_cachedToString == null)
|
if (_cachedToString == null)
|
||||||
{
|
{
|
||||||
_cachedToString = string.Format(
|
var request = _request;
|
||||||
CultureInfo.InvariantCulture,
|
_cachedToString = $"{LogPreamble}{request.Protocol} {request.Method} {request.Scheme}://{request.Host.Value}{request.PathBase.Value}{request.Path.Value}{request.QueryString.Value} {EscapedValueOrEmptyMarker(request.ContentType)} {ValueOrEmptyMarker(request.ContentLength)}"; ;
|
||||||
"Request starting {0} {1} {2}://{3}{4}{5}{6} {7} {8}",
|
|
||||||
_request.Protocol,
|
|
||||||
_request.Method,
|
|
||||||
_request.Scheme,
|
|
||||||
_request.Host.Value,
|
|
||||||
_request.PathBase.Value,
|
|
||||||
_request.Path.Value,
|
|
||||||
_request.QueryString.Value,
|
|
||||||
_request.ContentType,
|
|
||||||
_request.ContentLength);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return _cachedToString;
|
return _cachedToString;
|
||||||
|
|
@ -87,5 +65,15 @@ namespace Microsoft.AspNetCore.Hosting
|
||||||
{
|
{
|
||||||
return GetEnumerator();
|
return GetEnumerator();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
internal string ToStringWithoutPreamble()
|
||||||
|
=> ToString().Substring(LogPreamble.Length);
|
||||||
|
|
||||||
|
internal static string EscapedValueOrEmptyMarker(string potentialValue)
|
||||||
|
// Encode space as +
|
||||||
|
=> potentialValue?.Length > 0 ? potentialValue.Replace(' ', '+') : EmptyEntry;
|
||||||
|
|
||||||
|
internal static string ValueOrEmptyMarker<T>(T? potentialValue) where T : struct, IFormattable
|
||||||
|
=> potentialValue?.ToString(null, CultureInfo.InvariantCulture) ?? EmptyEntry;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -355,7 +355,7 @@ namespace Microsoft.AspNetCore.Hosting
|
||||||
|
|
||||||
public void Dispose()
|
public void Dispose()
|
||||||
{
|
{
|
||||||
DisposeAsync().ConfigureAwait(false).GetAwaiter().GetResult();
|
DisposeAsync().GetAwaiter().GetResult();
|
||||||
}
|
}
|
||||||
|
|
||||||
public async ValueTask DisposeAsync()
|
public async ValueTask DisposeAsync()
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
// Copyright (c) .NET Foundation. All rights reserved.
|
// Copyright (c) .NET Foundation. All rights reserved.
|
||||||
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Server.IntegrationTesting
|
namespace Microsoft.AspNetCore.Server.IntegrationTesting
|
||||||
|
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
||||||
using Microsoft.AspNetCore.Hosting.Server.Features;
|
|
||||||
using System.Linq;
|
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Hosting
|
|
||||||
{
|
|
||||||
public static class IWebHostExtensions
|
|
||||||
{
|
|
||||||
public static string GetAddress(this IWebHost host)
|
|
||||||
{
|
|
||||||
return host.ServerFeatures.Get<IServerAddressesFeature>().Addresses.First();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -56,34 +56,5 @@ namespace Microsoft.AspNetCore.Server.IntegrationTesting.Common
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private const int BasePort = 5001;
|
|
||||||
private const int MaxPort = 8000;
|
|
||||||
private static int NextPort = BasePort;
|
|
||||||
|
|
||||||
// GetNextPort doesn't check for HttpSys urlacls.
|
|
||||||
public static int GetNextHttpSysPort(string scheme)
|
|
||||||
{
|
|
||||||
while (NextPort < MaxPort)
|
|
||||||
{
|
|
||||||
var port = NextPort++;
|
|
||||||
|
|
||||||
using (var server = new HttpListener())
|
|
||||||
{
|
|
||||||
server.Prefixes.Add($"{scheme}://localhost:{port}/");
|
|
||||||
try
|
|
||||||
{
|
|
||||||
server.Start();
|
|
||||||
server.Stop();
|
|
||||||
return port;
|
|
||||||
}
|
|
||||||
catch (HttpListenerException)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
NextPort = BasePort;
|
|
||||||
throw new Exception("Failed to locate a free port.");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,9 @@
|
||||||
// Copyright (c) .NET Foundation. All rights reserved.
|
// Copyright (c) .NET Foundation. All rights reserved.
|
||||||
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
|
using System.Diagnostics;
|
||||||
|
|
||||||
namespace Microsoft.AspNetCore.Server.IntegrationTesting.Common
|
namespace Microsoft.AspNetCore.Server.IntegrationTesting.Common
|
||||||
{
|
{
|
||||||
public static class TestUriHelper
|
public static class TestUriHelper
|
||||||
|
|
@ -34,7 +36,8 @@ namespace Microsoft.AspNetCore.Server.IntegrationTesting.Common
|
||||||
}
|
}
|
||||||
else if (serverType == ServerType.HttpSys)
|
else if (serverType == ServerType.HttpSys)
|
||||||
{
|
{
|
||||||
return new UriBuilder(scheme, "localhost", TestPortHelper.GetNextHttpSysPort(scheme)).Uri;
|
Debug.Assert(scheme == "http", "Https not supported");
|
||||||
|
return new UriBuilder(scheme, "localhost", 0).Uri;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@ namespace Microsoft.AspNetCore.Server.IntegrationTesting
|
||||||
public const string NetCoreApp22 = "netcoreapp2.2";
|
public const string NetCoreApp22 = "netcoreapp2.2";
|
||||||
public const string NetCoreApp30 = "netcoreapp3.0";
|
public const string NetCoreApp30 = "netcoreapp3.0";
|
||||||
public const string NetCoreApp31 = "netcoreapp3.1";
|
public const string NetCoreApp31 = "netcoreapp3.1";
|
||||||
|
public const string NetCoreApp50 = "netcoreapp5.0";
|
||||||
|
|
||||||
public static bool Matches(string tfm1, string tfm2)
|
public static bool Matches(string tfm1, string tfm2)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
// Copyright (c) .NET Foundation. All rights reserved.
|
// Copyright (c) .NET Foundation. All rights reserved.
|
||||||
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,6 @@ namespace Microsoft.AspNetCore.Server.IntegrationTesting
|
||||||
private static readonly Regex NowListeningRegex = new Regex(@"^\s*Now listening on: (?<url>.*)$");
|
private static readonly Regex NowListeningRegex = new Regex(@"^\s*Now listening on: (?<url>.*)$");
|
||||||
private const string ApplicationStartedMessage = "Application started. Press Ctrl+C to shut down.";
|
private const string ApplicationStartedMessage = "Application started. Press Ctrl+C to shut down.";
|
||||||
|
|
||||||
private const int RetryCount = 5;
|
|
||||||
public Process HostProcess { get; private set; }
|
public Process HostProcess { get; private set; }
|
||||||
|
|
||||||
public SelfHostDeployer(DeploymentParameters deploymentParameters, ILoggerFactory loggerFactory)
|
public SelfHostDeployer(DeploymentParameters deploymentParameters, ILoggerFactory loggerFactory)
|
||||||
|
|
@ -56,33 +55,23 @@ namespace Microsoft.AspNetCore.Server.IntegrationTesting
|
||||||
DotnetPublish();
|
DotnetPublish();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var hintUrl = TestUriHelper.BuildTestUri(
|
||||||
|
DeploymentParameters.ServerType,
|
||||||
|
DeploymentParameters.Scheme,
|
||||||
|
DeploymentParameters.ApplicationBaseUriHint,
|
||||||
|
DeploymentParameters.StatusMessagesEnabled);
|
||||||
|
|
||||||
// Launch the host process.
|
// Launch the host process.
|
||||||
for (var i = 0; i < RetryCount; i++)
|
var (actualUrl, hostExitToken) = await StartSelfHostAsync(hintUrl);
|
||||||
{
|
|
||||||
var hintUrl = TestUriHelper.BuildTestUri(
|
|
||||||
DeploymentParameters.ServerType,
|
|
||||||
DeploymentParameters.Scheme,
|
|
||||||
DeploymentParameters.ApplicationBaseUriHint,
|
|
||||||
DeploymentParameters.StatusMessagesEnabled);
|
|
||||||
var (actualUrl, hostExitToken) = await StartSelfHostAsync(hintUrl);
|
|
||||||
|
|
||||||
if (DeploymentParameters.ServerType == ServerType.HttpSys && hostExitToken.IsCancellationRequested)
|
Logger.LogInformation("Application ready at URL: {appUrl}", actualUrl);
|
||||||
{
|
|
||||||
// Retry HttpSys deployments due to port conflicts.
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
Logger.LogInformation("Application ready at URL: {appUrl}", actualUrl);
|
return new DeploymentResult(
|
||||||
|
LoggerFactory,
|
||||||
return new DeploymentResult(
|
DeploymentParameters,
|
||||||
LoggerFactory,
|
applicationBaseUri: actualUrl.ToString(),
|
||||||
DeploymentParameters,
|
contentRoot: DeploymentParameters.PublishApplicationBeforeDeployment ? DeploymentParameters.PublishedApplicationRootPath : DeploymentParameters.ApplicationPath,
|
||||||
applicationBaseUri: actualUrl.ToString(),
|
hostShutdownToken: hostExitToken);
|
||||||
contentRoot: DeploymentParameters.PublishApplicationBeforeDeployment ? DeploymentParameters.PublishedApplicationRootPath : DeploymentParameters.ApplicationPath,
|
|
||||||
hostShutdownToken: hostExitToken);
|
|
||||||
}
|
|
||||||
|
|
||||||
throw new Exception($"Failed to start Self hosted application after {RetryCount} retries.");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -176,6 +165,8 @@ namespace Microsoft.AspNetCore.Server.IntegrationTesting
|
||||||
Logger.LogInformation("host process ID {pid} shut down", HostProcess.Id);
|
Logger.LogInformation("host process ID {pid} shut down", HostProcess.Id);
|
||||||
|
|
||||||
// If TrySetResult was called above, this will just silently fail to set the new state, which is what we want
|
// If TrySetResult was called above, this will just silently fail to set the new state, which is what we want
|
||||||
|
started.TrySetException(new Exception($"Command exited unexpectedly with exit code: {HostProcess.ExitCode}"));
|
||||||
|
|
||||||
TriggerHostShutdown(hostExitTokenSource);
|
TriggerHostShutdown(hostExitTokenSource);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -187,6 +178,7 @@ namespace Microsoft.AspNetCore.Server.IntegrationTesting
|
||||||
{
|
{
|
||||||
Logger.LogError("Error occurred while starting the process. Exception: {exception}", ex.ToString());
|
Logger.LogError("Error occurred while starting the process. Exception: {exception}", ex.ToString());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (HostProcess.HasExited)
|
if (HostProcess.HasExited)
|
||||||
{
|
{
|
||||||
Logger.LogError("Host process {processName} {pid} exited with code {exitCode} or failed to start.", startInfo.FileName, HostProcess.Id, HostProcess.ExitCode);
|
Logger.LogError("Host process {processName} {pid} exited with code {exitCode} or failed to start.", startInfo.FileName, HostProcess.Id, HostProcess.ExitCode);
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
<Project Sdk="Microsoft.NET.Sdk">
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<Description>ASP.NET Core helpers to deploy applications to IIS Express, IIS, WebListener and Kestrel for testing.</Description>
|
<Description>ASP.NET Core helpers to deploy applications to IIS Express, IIS, WebListener and Kestrel for testing.</Description>
|
||||||
|
|
@ -19,7 +19,6 @@
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="Microsoft.AspNetCore.Hosting.Abstractions" />
|
|
||||||
<Reference Include="Microsoft.AspNetCore.Testing" />
|
<Reference Include="Microsoft.AspNetCore.Testing" />
|
||||||
<Reference Include="Microsoft.Extensions.FileProviders.Embedded" />
|
<Reference Include="Microsoft.Extensions.FileProviders.Embedded" />
|
||||||
<Reference Include="Microsoft.Extensions.Logging" />
|
<Reference Include="Microsoft.Extensions.Logging" />
|
||||||
|
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
||||||
@ECHO OFF
|
|
||||||
SET RepoRoot=%~dp0..\..
|
|
||||||
%RepoRoot%\build.cmd -projects %~dp0**\*.*proj %*
|
|
||||||
|
|
@ -61,7 +61,7 @@ namespace Microsoft.AspNetCore.Hosting.FunctionalTests
|
||||||
RuntimeArchitecture.x64)
|
RuntimeArchitecture.x64)
|
||||||
{
|
{
|
||||||
EnvironmentName = "Shutdown",
|
EnvironmentName = "Shutdown",
|
||||||
TargetFramework = Tfm.NetCoreApp31,
|
TargetFramework = Tfm.NetCoreApp50,
|
||||||
ApplicationType = ApplicationType.Portable,
|
ApplicationType = ApplicationType.Portable,
|
||||||
PublishApplicationBeforeDeployment = true,
|
PublishApplicationBeforeDeployment = true,
|
||||||
StatusMessagesEnabled = false
|
StatusMessagesEnabled = false
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ namespace Microsoft.AspNetCore.Hosting.FunctionalTests
|
||||||
public WebHostBuilderTests(ITestOutputHelper output) : base(output) { }
|
public WebHostBuilderTests(ITestOutputHelper output) : base(output) { }
|
||||||
|
|
||||||
public static TestMatrix TestVariants => TestMatrix.ForServers(ServerType.Kestrel)
|
public static TestMatrix TestVariants => TestMatrix.ForServers(ServerType.Kestrel)
|
||||||
.WithTfms(Tfm.NetCoreApp31);
|
.WithTfms(Tfm.NetCoreApp50);
|
||||||
|
|
||||||
[ConditionalTheory]
|
[ConditionalTheory]
|
||||||
[MemberData(nameof(TestVariants))]
|
[MemberData(nameof(TestVariants))]
|
||||||
|
|
|
||||||
|
|
@ -253,7 +253,7 @@ namespace Microsoft.AspNetCore.Authentication
|
||||||
var schemes = await GetAllSignInSchemeNames();
|
var schemes = await GetAllSignInSchemeNames();
|
||||||
|
|
||||||
// CookieAuth is the only implementation of sign-in.
|
// CookieAuth is the only implementation of sign-in.
|
||||||
var footer = $" Did you forget to call AddAuthentication().AddCookies(\"{scheme}\",...)?";
|
var footer = $" Did you forget to call AddAuthentication().AddCookie(\"{scheme}\",...)?";
|
||||||
|
|
||||||
if (string.IsNullOrEmpty(schemes))
|
if (string.IsNullOrEmpty(schemes))
|
||||||
{
|
{
|
||||||
|
|
@ -275,7 +275,7 @@ namespace Microsoft.AspNetCore.Authentication
|
||||||
{
|
{
|
||||||
// CookieAuth is the only implementation of sign-in.
|
// CookieAuth is the only implementation of sign-in.
|
||||||
return new InvalidOperationException(mismatchError
|
return new InvalidOperationException(mismatchError
|
||||||
+ $"Did you forget to call AddAuthentication().AddCookies(\"Cookies\") and SignInAsync(\"Cookies\",...)?");
|
+ $"Did you forget to call AddAuthentication().AddCookie(\"Cookies\") and SignInAsync(\"Cookies\",...)?");
|
||||||
}
|
}
|
||||||
|
|
||||||
return new InvalidOperationException(mismatchError + $"The registered sign-in schemes are: {schemes}.");
|
return new InvalidOperationException(mismatchError + $"The registered sign-in schemes are: {schemes}.");
|
||||||
|
|
@ -292,7 +292,7 @@ namespace Microsoft.AspNetCore.Authentication
|
||||||
{
|
{
|
||||||
var schemes = await GetAllSignOutSchemeNames();
|
var schemes = await GetAllSignOutSchemeNames();
|
||||||
|
|
||||||
var footer = $" Did you forget to call AddAuthentication().AddCookies(\"{scheme}\",...)?";
|
var footer = $" Did you forget to call AddAuthentication().AddCookie(\"{scheme}\",...)?";
|
||||||
|
|
||||||
if (string.IsNullOrEmpty(schemes))
|
if (string.IsNullOrEmpty(schemes))
|
||||||
{
|
{
|
||||||
|
|
@ -314,7 +314,7 @@ namespace Microsoft.AspNetCore.Authentication
|
||||||
{
|
{
|
||||||
// CookieAuth is the most common implementation of sign-out, but OpenIdConnect and WsFederation also support it.
|
// CookieAuth is the most common implementation of sign-out, but OpenIdConnect and WsFederation also support it.
|
||||||
return new InvalidOperationException(mismatchError
|
return new InvalidOperationException(mismatchError
|
||||||
+ $"Did you forget to call AddAuthentication().AddCookies(\"Cookies\") and {nameof(SignOutAsync)}(\"Cookies\",...)?");
|
+ $"Did you forget to call AddAuthentication().AddCookie(\"Cookies\") and {nameof(SignOutAsync)}(\"Cookies\",...)?");
|
||||||
}
|
}
|
||||||
|
|
||||||
return new InvalidOperationException(mismatchError + $"The registered sign-out schemes are: {schemes}.");
|
return new InvalidOperationException(mismatchError + $"The registered sign-out schemes are: {schemes}.");
|
||||||
|
|
|
||||||
|
|
@ -76,7 +76,7 @@ namespace Microsoft.AspNetCore.Http.Features
|
||||||
|
|
||||||
public void Dispose()
|
public void Dispose()
|
||||||
{
|
{
|
||||||
DisposeAsync().ConfigureAwait(false).GetAwaiter().GetResult();
|
DisposeAsync().GetAwaiter().GetResult();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -238,7 +238,7 @@ namespace Microsoft.AspNetCore.WebUtilities
|
||||||
{
|
{
|
||||||
if (Disposed)
|
if (Disposed)
|
||||||
{
|
{
|
||||||
throw new ObjectDisposedException(nameof(FileBufferingReadStream));
|
throw new ObjectDisposedException(nameof(FileBufferingWriteStream));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<form asp-page-handler="Confirmation" asp-route-returnUrl="@Model.ReturnUrl" method="post">
|
<form asp-page-handler="Confirmation" asp-route-returnUrl="@Model.ReturnUrl" method="post">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.Email"></label>
|
<label asp-for="Input.Email"></label>
|
||||||
<input asp-for="Input.Email" class="form-control" />
|
<input asp-for="Input.Email" class="form-control" />
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<form method="post">
|
<form method="post">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.Email"></label>
|
<label asp-for="Input.Email"></label>
|
||||||
<input asp-for="Input.Email" class="form-control" />
|
<input asp-for="Input.Email" class="form-control" />
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@
|
||||||
<form id="account" method="post">
|
<form id="account" method="post">
|
||||||
<h4>Use a local account to log in.</h4>
|
<h4>Use a local account to log in.</h4>
|
||||||
<hr />
|
<hr />
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.Email"></label>
|
<label asp-for="Input.Email"></label>
|
||||||
<input asp-for="Input.Email" class="form-control" />
|
<input asp-for="Input.Email" class="form-control" />
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<form method="post" asp-route-returnUrl="@Model.ReturnUrl">
|
<form method="post" asp-route-returnUrl="@Model.ReturnUrl">
|
||||||
<input asp-for="RememberMe" type="hidden" />
|
<input asp-for="RememberMe" type="hidden" />
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.TwoFactorCode"></label>
|
<label asp-for="Input.TwoFactorCode"></label>
|
||||||
<input asp-for="Input.TwoFactorCode" class="form-control" autocomplete="off" />
|
<input asp-for="Input.TwoFactorCode" class="form-control" autocomplete="off" />
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<form method="post">
|
<form method="post">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.RecoveryCode"></label>
|
<label asp-for="Input.RecoveryCode"></label>
|
||||||
<input asp-for="Input.RecoveryCode" class="form-control" autocomplete="off" />
|
<input asp-for="Input.RecoveryCode" class="form-control" autocomplete="off" />
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<form id="change-password-form" method="post">
|
<form id="change-password-form" method="post">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.OldPassword"></label>
|
<label asp-for="Input.OldPassword"></label>
|
||||||
<input asp-for="Input.OldPassword" class="form-control" />
|
<input asp-for="Input.OldPassword" class="form-control" />
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,7 @@
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<form id="delete-user" method="post" class="form-group">
|
<form id="delete-user" method="post" class="form-group">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
@if (Model.RequirePassword)
|
@if (Model.RequirePassword)
|
||||||
{
|
{
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<form id="profile-form" method="post">
|
<form id="profile-form" method="post">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Username"></label>
|
<label asp-for="Username"></label>
|
||||||
<input asp-for="Username" class="form-control" disabled />
|
<input asp-for="Username" class="form-control" disabled />
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<form id="set-password-form" method="post">
|
<form id="set-password-form" method="post">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.NewPassword"></label>
|
<label asp-for="Input.NewPassword"></label>
|
||||||
<input asp-for="Input.NewPassword" class="form-control" />
|
<input asp-for="Input.NewPassword" class="form-control" />
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@
|
||||||
<form id="registerForm" asp-route-returnUrl="@Model.ReturnUrl" method="post">
|
<form id="registerForm" asp-route-returnUrl="@Model.ReturnUrl" method="post">
|
||||||
<h4>Create a new account.</h4>
|
<h4>Create a new account.</h4>
|
||||||
<hr />
|
<hr />
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.Email"></label>
|
<label asp-for="Input.Email"></label>
|
||||||
<input asp-for="Input.Email" class="form-control" />
|
<input asp-for="Input.Email" class="form-control" />
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<form method="post">
|
<form method="post">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<input asp-for="Input.Code" type="hidden" />
|
<input asp-for="Input.Code" type="hidden" />
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.Email"></label>
|
<label asp-for="Input.Email"></label>
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<form asp-page-handler="Confirmation" asp-route-returnUrl="@Model.ReturnUrl" method="post">
|
<form asp-page-handler="Confirmation" asp-route-returnUrl="@Model.ReturnUrl" method="post">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.Email"></label>
|
<label asp-for="Input.Email"></label>
|
||||||
<input asp-for="Input.Email" class="form-control" />
|
<input asp-for="Input.Email" class="form-control" />
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<form method="post">
|
<form method="post">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.Email"></label>
|
<label asp-for="Input.Email"></label>
|
||||||
<input asp-for="Input.Email" class="form-control" />
|
<input asp-for="Input.Email" class="form-control" />
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@
|
||||||
<form id="account" method="post">
|
<form id="account" method="post">
|
||||||
<h4>Use a local account to log in.</h4>
|
<h4>Use a local account to log in.</h4>
|
||||||
<hr />
|
<hr />
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.Email"></label>
|
<label asp-for="Input.Email"></label>
|
||||||
<input asp-for="Input.Email" class="form-control" />
|
<input asp-for="Input.Email" class="form-control" />
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<form method="post" asp-route-returnUrl="@Model.ReturnUrl">
|
<form method="post" asp-route-returnUrl="@Model.ReturnUrl">
|
||||||
<input asp-for="RememberMe" type="hidden" />
|
<input asp-for="RememberMe" type="hidden" />
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.TwoFactorCode"></label>
|
<label asp-for="Input.TwoFactorCode"></label>
|
||||||
<input asp-for="Input.TwoFactorCode" class="form-control" autocomplete="off" />
|
<input asp-for="Input.TwoFactorCode" class="form-control" autocomplete="off" />
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<form method="post">
|
<form method="post">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.RecoveryCode"></label>
|
<label asp-for="Input.RecoveryCode"></label>
|
||||||
<input asp-for="Input.RecoveryCode" class="form-control" autocomplete="off" />
|
<input asp-for="Input.RecoveryCode" class="form-control" autocomplete="off" />
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<form id="change-password-form" method="post">
|
<form id="change-password-form" method="post">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.OldPassword"></label>
|
<label asp-for="Input.OldPassword"></label>
|
||||||
<input asp-for="Input.OldPassword" class="form-control" />
|
<input asp-for="Input.OldPassword" class="form-control" />
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<form id="delete-user" method="post" class="form-group">
|
<form id="delete-user" method="post" class="form-group">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
@if (Model.RequirePassword)
|
@if (Model.RequirePassword)
|
||||||
{
|
{
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<form id="profile-form" method="post">
|
<form id="profile-form" method="post">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Username"></label>
|
<label asp-for="Username"></label>
|
||||||
<input asp-for="Username" class="form-control" disabled />
|
<input asp-for="Username" class="form-control" disabled />
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<form id="set-password-form" method="post">
|
<form id="set-password-form" method="post">
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.NewPassword"></label>
|
<label asp-for="Input.NewPassword"></label>
|
||||||
<input asp-for="Input.NewPassword" class="form-control" />
|
<input asp-for="Input.NewPassword" class="form-control" />
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@
|
||||||
<form id="registerForm" asp-route-returnUrl="@Model.ReturnUrl" method="post">
|
<form id="registerForm" asp-route-returnUrl="@Model.ReturnUrl" method="post">
|
||||||
<h4>Create a new account.</h4>
|
<h4>Create a new account.</h4>
|
||||||
<hr />
|
<hr />
|
||||||
<div asp-validation-summary="All" class="text-danger"></div>
|
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label asp-for="Input.Email"></label>
|
<label asp-for="Input.Email"></label>
|
||||||
<input asp-for="Input.Email" class="form-control" />
|
<input asp-for="Input.Email" class="form-control" />
|
||||||
|
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue