Merge branch 'release/2.1' into release/2.2

This commit is contained in:
Nate McMaster 2018-12-06 15:08:04 -08:00
commit 569a14ecb8
No known key found for this signature in database
GPG Key ID: A778D9601BD78810
595 changed files with 746 additions and 2582 deletions

View File

@ -1,19 +1,17 @@
# Don't run CI for this config yet. We're not ready to move official builds on to Azure Pipelines
trigger: none
trigger:
- master
- release/*
# Run PR validation on all branches
pr:
branches:
include:
- '*'
jobs:
- template: jobs/default-build.yml
parameters:
jobName: PR_FastCheck
jobDisplayName: Fast Check
agentOs: Windows
buildArgs: "/t:FastCheck"
- template: jobs/default-build.yml
parameters:
jobName: Windows_Build
jobDisplayName: "Build: Windows"
jobDisplayName: "Build and test: Windows"
agentOs: Windows
beforeBuild:
- powershell: "& ./src/IISIntegration/tools/UpdateIISExpressCertificate.ps1; & ./src/IISIntegration/tools/update_schema.ps1"

View File

@ -63,7 +63,7 @@ jobs:
- job: ${{ coalesce(parameters.jobName, parameters.agentOs) }}
displayName: ${{ coalesce(parameters.jobDisplayName, parameters.agentOs) }}
dependsOn: ${{ parameters.dependsOn }}
timeoutInMinutes: 90
timeoutInMinutes: 120
workspace:
clean: all
strategy:
@ -103,6 +103,9 @@ jobs:
steps:
- checkout: self
clean: true
- task: NodeTool@0
inputs:
versionSpec: 10.x
- ${{ if and(eq(parameters.agentOs, 'Windows'), eq(parameters.codeSign, 'true')) }}:
- task: MicroBuildSigningPlugin@1
displayName: Install MicroBuild Signing plugin
@ -123,7 +126,7 @@ jobs:
inputs:
testRunTitle: $(AgentOsName)-$(BuildConfiguration)
testRunner: vstest
testResultsFiles: 'artifacts/logs/**/*.trx'
testResultsFiles: '**/artifacts/**/*.trx'
mergeTestResults: true
- ${{ if eq(parameters.artifacts.publish, 'true') }}:
- task: PublishBuildArtifacts@1

View File

@ -0,0 +1,30 @@
# This configuration is temporary while we work on getting all unit tests to pass on PR checks
# Don't run CI for this config
trigger: none
# Run PR validation on all branches
pr:
branches:
include:
- '*'
jobs:
- template: jobs/default-build.yml
parameters:
jobName: Windows_Build
jobDisplayName: "Build only : Windows"
agentOs: Windows
buildArgs: '/p:SkipTests=true'
- template: jobs/default-build.yml
parameters:
jobName: macOs_Build
jobDisplayName: "Build only : macOS"
agentOs: macOS
buildArgs: '/p:SkipTests=true'
- template: jobs/default-build.yml
parameters:
jobName: Linux_Build
jobDisplayName: "Build only : Linux"
agentOs: Linux
buildArgs: '/p:SkipTests=true'

View File

@ -9,7 +9,7 @@
<PropertyGroup Condition=" '$(IsPackable)' != 'false' AND '$(AspNetCorePatchVersion)' != '0' ">
<!-- Always include framework metapackages in patch updates. -->
<IsPackageInThisPatch Condition="'$(IsFrameworkMetapackage)' == 'true'">true</IsPackageInThisPatch>
<IsPackageInThisPatch Condition="'$(IsFrameworkMetapackage)' == 'true' OR '$(IsSharedSourcePackage)' == 'true' ">true</IsPackageInThisPatch>
<IsPackageInThisPatch Condition="'$(IsPackageInThisPatch)' == ''">$(PackagesInPatch.Contains(' $(PackageId);'))</IsPackageInThisPatch>
</PropertyGroup>

View File

@ -84,3 +84,14 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE
License notice for viz.js
------------------------------------
Copyright (c) 2014-2018 Michael Daines
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@ -8,7 +8,7 @@
<ArchiveProjects Include="$(RepositoryRoot)src\PackageArchive\Archive.*\*.*proj" />
</ItemGroup>
<Target Name="BuildFallbackArchive" DependsOnTargets="GetProjectArtifactInfo;GetFxProjectArtifactInfo;ResolveRepoInfo;GeneratePropsFiles">
<Target Name="BuildFallbackArchive" DependsOnTargets="ResolveSharedSourcesPackageInfo;GetProjectArtifactInfo;GetFxProjectArtifactInfo;ResolveRepoInfo;GeneratePropsFiles">
<PropertyGroup>
<ArchiveBuildProps>
DotNetRestoreSourcePropsPath=$(GeneratedRestoreSourcesPropsPath);

View File

@ -83,12 +83,16 @@
<ManifestArtifactData>ShipInstaller=dotnetcli</ManifestArtifactData>
</FilesToPublish>
<FilesToPublish Include="$(DependencyAssetsDir)nuGetPackagesArchive-ci-server-$(PackageVersion).patch.zip" >
<!-- This file is conditionally included because it may not exist in servicing builds -->
<FilesToPublish Include="$(DependencyAssetsDir)nuGetPackagesArchive-ci-server-$(PackageVersion).patch.zip"
Condition="Exists('$(DependencyAssetsDir)nuGetPackagesArchive-ci-server-$(PackageVersion).patch.zip')" >
<RelativeBlobPath>$(BlobBasePath)nuGetPackagesArchive-ci-server-$(PackageVersion).patch.zip</RelativeBlobPath>
<ManifestArtifactData>ShipInstaller=dotnetcli</ManifestArtifactData>
</FilesToPublish>
<FilesToPublish Include="$(DependencyAssetsDir)nuGetPackagesArchive-ci-server-compat-$(PackageVersion).patch.zip" >
<!-- This file is conditionally included because it may not exist in servicing builds -->
<FilesToPublish Include="$(DependencyAssetsDir)nuGetPackagesArchive-ci-server-compat-$(PackageVersion).patch.zip"
Condition="Exists('$(DependencyAssetsDir)nuGetPackagesArchive-ci-server-compat-$(PackageVersion).patch.zip')">
<RelativeBlobPath>$(BlobBasePath)nuGetPackagesArchive-ci-server-compat-$(PackageVersion).patch.zip</RelativeBlobPath>
<ManifestArtifactData>ShipInstaller=dotnetcli</ManifestArtifactData>
</FilesToPublish>

View File

@ -87,7 +87,8 @@
<RepositoryBuildArguments>$(RepositoryBuildArguments) /p:BuildNumber=$(BuildNumber)</RepositoryBuildArguments>
<RepositoryBuildArguments>$(RepositoryBuildArguments) /p:Configuration=$(Configuration)</RepositoryBuildArguments>
<RepositoryBuildArguments>$(RepositoryBuildArguments) /p:IsFinalBuild=$(IsFinalBuild)</RepositoryBuildArguments>
<RepositoryBuildArguments>$(RepositoryBuildArguments) /noconsolelogger '/l:RepoTasks.FlowLogger,$(MSBuildThisFileDirectory)tasks\bin\publish\RepoTasks.dll;Summary;FlowId=$(RepositoryToBuild)'</RepositoryBuildArguments>
<!-- We collect all output and code sign at the end. We don't need to code sign when we build each submodule. -->
<RepositoryBuildArguments>$(RepositoryBuildArguments) /p:DisableCodeSigning=true</RepositoryBuildArguments>
<RepositoryBuildArguments>$(RepositoryBuildArguments) '/p:DotNetAssetRootAccessTokenSuffix=$(DotNetAssetRootAccessTokenSuffix)'</RepositoryBuildArguments>
<RepositoryBuildArguments>$(RepositoryBuildArguments) '/p:DotNetAssetRootUrl=$(DotNetAssetRootUrl)'</RepositoryBuildArguments>
<RepositoryBuildArguments Condition=" '$(SkipTestsDueToMissingSharedFx)' == 'true' ">$(RepositoryBuildArguments) /p:SkipAspNetCoreRuntimeInstall=true</RepositoryBuildArguments>

View File

@ -53,7 +53,7 @@
</SharedFxBuildProperties>
</PropertyGroup>
<MSBuild Projects="$(MSBuildToolsPath)\NuGet.targets"
<MSBuild Projects="$(NuGetRestoreTargets)"
Targets="Restore"
Properties="$(SharedFxBuildProperties);RestoreGraphProjectInput=$(_RestoreGraphProjectInput);_DummyTarget=Restore" />

View File

@ -19,7 +19,6 @@
<PackageArtifact Include="dotnet-sql-cache" Category="ship" />
<PackageArtifact Include="dotnet-user-secrets" Category="ship" />
<PackageArtifact Include="dotnet-watch" Category="ship" />
<PackageArtifact Include="Internal.AspNetCore.Universe.Lineup" Category="noship" />
<PackageArtifact Include="Microsoft.AspNet.Identity.AspNetCoreCompat" Category="noship" />
<PackageArtifact Include="Microsoft.AspNetCore.All" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.ApiAuthorization.IdentityServer" Category="noship" />
@ -82,7 +81,6 @@
<PackageArtifact Include="Microsoft.AspNetCore.Http" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.HttpOverrides" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.HttpsPolicy" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.HttpSys.Sources" Category="noship" />
<PackageArtifact Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.Identity.Specification.Tests" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.Identity.UI" Category="ship" />
@ -125,7 +123,6 @@
<PackageArtifact Include="Microsoft.AspNetCore.ResponseCompression" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.Rewrite" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.Routing.Abstractions" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.Routing.DecisionTree.Sources" Category="noship" />
<PackageArtifact Include="Microsoft.AspNetCore.Routing" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.Server.HttpSys" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.Server.IIS" Category="ship" />
@ -201,5 +198,7 @@
<PackageArtifact Include="Microsoft.VisualStudio.Web.CodeGenerators.Mvc" Category="ship" />
<PackageArtifact Include="Microsoft.Web.Xdt.Extensions" Category="shipoob" />
<PackageArtifact Include="RazorPageGenerator" Category="noship" />
<PackageArtifact Include="Internal.WebHostBuilderFactory.Sources" Category="noship"/>
</ItemGroup>
</Project>

View File

@ -9,12 +9,10 @@
<ItemGroup>
<RepositoryBuildOrder Include="Razor" Order="6" RootPath="$(RepositoryRoot)src\Razor\" />
<RepositoryBuildOrder Include="EntityFrameworkCore" Order="8" />
<RepositoryBuildOrder Include="HttpSysServer" Order="8" RootPath="$(RepositoryRoot)src\HttpSysServer\" />
<RepositoryBuildOrder Include="Antiforgery" Order="9" RootPath="$(RepositoryRoot)src\Antiforgery\" />
<RepositoryBuildOrder Include="IISIntegration" Order="10" RootPath="$(RepositoryRoot)src\IISIntegration\" />
<RepositoryBuildOrder Include="CORS" Order="11" RootPath="$(RepositoryRoot)src\CORS\" />
<RepositoryBuildOrder Include="StaticFiles" Order="11" RootPath="$(RepositoryRoot)src\StaticFiles\" />
<RepositoryBuildOrder Include="Routing" Order="11" RootPath="$(RepositoryRoot)src\Routing\" />
<RepositoryBuildOrder Include="ResponseCaching" Order="11" RootPath="$(RepositoryRoot)src\ResponseCaching\" />
<RepositoryBuildOrder Include="Session" Order="11" RootPath="$(RepositoryRoot)src\Session\" />
<RepositoryBuildOrder Include="ServerTests" Order="11" RootPath="$(RepositoryRoot)src\ServerTests\" />

View File

@ -81,9 +81,6 @@
<ExternalDependency Include="Microsoft.Extensions.WebEncoders.Sources" Version="$(MicrosoftExtensionsWebEncodersSourcesPackageVersion)" />
<ExternalDependency Include="Microsoft.Extensions.WebEncoders" Version="$(MicrosoftExtensionsWebEncodersPackageVersion)" />
<!-- These dependencies are temporary while we refactor package refs into project refs. -->
<ExternalDependency Include="Microsoft.Extensions.Buffers.Testing.Sources" Version="$(MicrosoftExtensionsBuffersTestingSourcesPackageVersion)" />
<ExternalDependency Include="Microsoft.Extensions.Buffers.MemoryPool.Sources" Version="$(MicrosoftExtensionsBuffersMemoryPoolSourcesPackageVersion)" />
<ExternalDependency Include="Internal.WebHostBuilderFactory.Sources" Version="$(InternalWebHostBuilderFactorySourcesPackageVersion)" />
<ExternalDependency Include="Microsoft.AspNetCore.Server.IntegrationTesting" Version="$(MicrosoftAspNetCoreServerIntegrationTestingPackageVersion)" />
</ItemGroup>

View File

@ -1,16 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
<metadata>
<id>Internal.AspNetCore.Universe.Lineup</id>
<version>$version$</version>
<authors>Microsoft</authors>
<description>This package used to unify ASP.NET Core package versions across all ASP.NET Core repos. Internal use only.</description>
<packageTypes>
<packageType name="lineup" />
</packageTypes>
</metadata>
<files>
<file src="$dependenciesPropsFile$" target="build/dependencies.props" />
<file src="$brandingPropsFile$" target="build/branding.props" />
</files>
</package>

View File

@ -16,10 +16,13 @@
<DependencyPackageDir>$(RepositoryRoot).deps\build\</DependencyPackageDir>
<SignedDependencyPackageDir>$(RepositoryRoot).deps\Signed\Packages\</SignedDependencyPackageDir>
<SignCheckExclusionsFile>$(RepositoryRoot)eng\signcheck.exclusions.txt</SignCheckExclusionsFile>
<!-- This creates false-positives on many of the native .dll's we produce or re-distribute from other teams. -->
<DisableSignCheckStrongName>true</DisableSignCheckStrongName>
<SharedSourcesFolder>$(RepositoryRoot)src\Shared\</SharedSourcesFolder>
</PropertyGroup>
<ItemGroup>
<SharedSourceDirectories Include="$(SharedSourcesFolder)Hosting.WebHostBuilderFactory\" />
</ItemGroup>
<ItemGroup>
<IntermediateInstaller Include="win-x86" FileExt=".zip" />
<IntermediateInstaller Include="win-x86" FileExt=".wixlib" />
@ -56,7 +59,7 @@
<!-- Exclude the websockets samples for now because they use classic .csproj, which is not yet supported in our build. -->
<ProjectToExclude Include="
$(RepositoryRoot)src\Middleware\WebSockets\samples\**\*.csproj;
$(RepositoryRoot)src\Tools\dotnet-watch\test\TestProjects\**\*.csproj;
$(RepositoryRoot)src\Tools\dotnet-watch\test\TestProjects\**\*.csproj
" />
<ProjectToBuild Include="
@ -69,7 +72,11 @@
$(RepositoryRoot)src\Tools\**\*.*proj;
$(RepositoryRoot)src\Middleware\**\*.*proj;
"
Exclude="@(ProjectToExclude)" />
Exclude="
@(ProjectToExclude);
$(RepositoryRoot)**\bin\**\*;
$(RepositoryRoot)**\obj\**\*;
$(RepositoryRoot)**\AutobahnTestApp\**\*;" />
</ItemGroup>
<!-- Properties for publishing -->

View File

@ -19,7 +19,7 @@
<PrepareDependsOn Condition="'$(_ProjectsOnly)' != 'true'">$(PrepareDependsOn);VerifyPackageArtifactConfig;VerifyExternalDependencyConfig;PrepareOutputPaths</PrepareDependsOn>
<CleanDependsOn>$(CleanDependsOn);CleanArtifacts;CleanRepoArtifacts</CleanDependsOn>
<RestoreDependsOn>$(RestoreDependsOn);InstallDotNet;RestoreProjects</RestoreDependsOn>
<CompileDependsOn>$(CompileDependsOn);BuildProjects</CompileDependsOn>
<CompileDependsOn>$(CompileDependsOn);BuildProjects;PackSharedSources</CompileDependsOn>
<CompileDependsOn Condition="'$(_ProjectsOnly)' != 'true'">$(CompileDependsOn);PackProjects;BuildRepositories;BuildSharedFx</CompileDependsOn>
<PackageDependsOn Condition=" '$(_ProjectsOnly)' == 'true'">$(PackageDependsOn);PackProjects</PackageDependsOn>
<PackageDependsOn Condition="'$(TestOnly)' != 'true' AND '$(_ProjectsOnly)' != 'true'">$(PackageDependsOn);CheckExpectedPackagesExist</PackageDependsOn>
@ -27,6 +27,7 @@
<TestDependsOn>$(TestDependsOn);TestProjects</TestDependsOn>
<TestDependsOn Condition="'$(_ProjectsOnly)' != 'true'">$(TestDependsOn);_TestRepositories</TestDependsOn>
<GetArtifactInfoDependsOn>$(GetArtifactInfoDependsOn);GetProjectArtifactInfo</GetArtifactInfoDependsOn>
<GetArtifactInfoDependsOn>$(GetArtifactInfoDependsOn);ResolveSharedSourcesPackageInfo</GetArtifactInfoDependsOn>
<GetArtifactInfoDependsOn Condition="'$(_ProjectsOnly)' != 'true'">$(GetArtifactInfoDependsOn);ResolveRepoInfo</GetArtifactInfoDependsOn>
</PropertyGroup>
@ -68,7 +69,7 @@
</ItemGroup>
</Target>
<Target Name="ResolveRepoInfo" DependsOnTargets="_ResolveProjectArtifactsInfoShipped;_PrepareRepositories;GetLineupPackageInfo">
<Target Name="ResolveRepoInfo" DependsOnTargets="_ResolveProjectArtifactsInfoShipped;_PrepareRepositories">
<!-- We need to pass the NETCoreApp package versions to msbuild so that it doesn't complain about us using a different one than it was restored against. -->
<PropertyGroup>
<DesignTimeBuildProps>$(BuildProperties);MicrosoftNETCoreAppPackageVersion=$(MicrosoftNETCoreAppPackageVersion);</DesignTimeBuildProps>
@ -173,19 +174,6 @@
<Error Text="No solutions were found in '$(SubmoduleRoot)'. Did you forget to clone the submodules? Run `git submodule update --init`." Condition="@(Solution->Count()) == 0" />
</Target>
<Target Name="GetLineupPackageInfo">
<ItemGroup>
<ArtifactInfo Include="$(BuildDir)Internal.AspNetCore.Universe.Lineup.$(PackageVersion).nupkg">
<ArtifactType>NuGetPackage</ArtifactType>
<PackageId>Internal.AspNetCore.Universe.Lineup</PackageId>
<Version>$(PackageVersion)</Version>
<Category>noship</Category>
<IsLineup>true</IsLineup>
</ArtifactInfo>
<FilesToSign Include="$(BuildDir)Internal.AspNetCore.Universe.Lineup.$(PackageVersion).nupkg" Certificate="$(PackageSigningCertName)" />
</ItemGroup>
</Target>
<Target Name="GeneratePropsFiles" DependsOnTargets="PrepareOutputPaths;GetArtifactInfo">
<ItemGroup>
<_LineupPackages Include="@(ExternalDependency)" />
@ -229,13 +217,6 @@
<WriteLinesToFile File="$(GeneratedBrandingPropsPath)" Overwrite="true" Lines="$(BrandingPropsContent)"/>
<Copy SourceFiles="$(GeneratedPackageVersionPropsPath);$(GeneratedBrandingPropsPath)" DestinationFolder="$(ArtifactsDir)" />
<PackNuSpec NuSpecPath="$(MSBuildThisFileDirectory)lineups\Internal.AspNetCore.Universe.Lineup.nuspec"
DestinationFolder="$(BuildDir)"
Overwrite="true"
Properties="version=$(PackageVersion);dependenciesPropsFile=$(GeneratedPackageVersionPropsPath);brandingPropsFile=$(GeneratedBrandingPropsPath)">
<Output TaskParameter="Packages" ItemName="LineupPackage" />
</PackNuSpec>
</Target>
<Target Name="CleanRepoArtifacts">
@ -243,26 +224,6 @@
</Target>
<Target Name="_PrepareRepositories">
<ItemGroup Condition="'$(KOREBUILD_REPOSITORY_INCLUDE)'!=''">
<_RepositoriesToInclude Include="$(KOREBUILD_REPOSITORY_INCLUDE)" />
<Repository Update="@(Repository)" Build="false" />
<Repository
Update="@(Repository)"
Condition="'@(Repository)'=='@(_RepositoriesToInclude)' AND '%(Identity)'!=''"
Build="true" />
</ItemGroup>
<ItemGroup Condition="'$(KOREBUILD_REPOSITORY_EXCLUDE)'!=''">
<_RepositoriesToExclude Include="$(KOREBUILD_REPOSITORY_EXCLUDE)" />
<Repository
Update="@(Repository)"
Condition="'@(Repository)'=='@(_RepositoriesToExclude)' AND '%(Identity)'!=''"
Build="false" />
</ItemGroup>
<Error Text="KOREBUILD_REPOSITORY_EXCLUDE AND KOREBUILD_REPOSITORY_INCLUDE are specified."
Condition="'$(KOREBUILD_REPOSITORY_INCLUDE)' != '' AND '$(KOREBUILD_REPOSITORY_EXCLUDE)' != ''" />
<ItemGroup>
<Repository Update="%(Identity)" RootPath="$(SubmoduleRoot)%(Identity)\" Condition="'%(Identity)' != '' AND '%(RootPath)' == ''" />
<ShippedRepository Update="%(Identity)" RootPath="$(SubmoduleRoot)%(Identity)\" Condition="'%(Identity)' != '' AND '%(RootPath)' == ''" />
@ -277,11 +238,11 @@
<Target Name="BuildRepositories"
DependsOnTargets="_PrepareRepositories;GeneratePropsFiles;ComputeGraph;_BuildRepositories" />
<Target Name="ListExpectedPackages" DependsOnTargets="GetProjectArtifactInfo;GetFxProjectArtifactInfo;ResolveRepoInfo">
<Target Name="ListExpectedPackages" DependsOnTargets="ResolveSharedSourcesPackageInfo;GetProjectArtifactInfo;ResolveRepoInfo">
<WriteLinesToFile File="$(RepositoryRoot)artifacts\packages.csv" Lines="PackageId,Version;@(ArtifactInfo->WithMetadataValue('ArtifactType', 'NuGetPackage')->'%(PackageId),%(Version)')" Overwrite="true" />
</Target>
<Target Name="ComputeGraph" DependsOnTargets="GetProjectArtifactInfo;GetFxProjectArtifactInfo;ResolveRepoInfo;GeneratePropsFiles">
<Target Name="ComputeGraph" DependsOnTargets="ResolveSharedSourcesPackageInfo;GetProjectArtifactInfo;GetFxProjectArtifactInfo;ResolveRepoInfo;GeneratePropsFiles">
<ItemGroup>
<_UndeclaredPackageArtifact Include="%(ArtifactInfo.PackageId)" Condition="'%(ArtifactInfo.ArtifactType)' == 'NuGetPackage'" />
<_UndeclaredPackageArtifact Remove="@(PackageArtifact)" />

View File

@ -52,7 +52,6 @@
<ShippedRepository Include="Antiforgery" RootPath="$(RepositoryRoot)src\Antiforgery\" />
<ShippedRepository Include="AzureIntegration" RootPath="$(RepositoryRoot)src\AzureIntegration\" />
<ShippedRepository Include="CORS" RootPath="$(RepositoryRoot)src\CORS\" />
<ShippedRepository Include="HttpSysServer" RootPath="$(RepositoryRoot)src\HttpSysServer\" />
<ShippedRepository Include="Identity" RootPath="$(RepositoryRoot)src\Identity\" />
<ShippedRepository Include="JavaScriptServices" RootPath="$(RepositoryRoot)src\JavaScriptServices\" />
<ShippedRepository Include="MetaPackages" RootPath="$(RepositoryRoot)src\MetaPackages\" PatchPolicy="CascadeVersions" />
@ -60,7 +59,6 @@
<ShippedRepository Include="MvcPrecompilation" RootPath="$(RepositoryRoot)src\MvcPrecompilation\" />
<ShippedRepository Include="Razor" RootPath="$(RepositoryRoot)src\Razor\" />
<ShippedRepository Include="ResponseCaching" RootPath="$(RepositoryRoot)src\ResponseCaching\" />
<ShippedRepository Include="Routing" RootPath="$(RepositoryRoot)src\Routing\" />
<ShippedRepository Include="Security" RootPath="$(RepositoryRoot)src\Security\" />
<ShippedRepository Include="Session" RootPath="$(RepositoryRoot)src\Session\" />
<ShippedRepository Include="SignalR" RootPath="$(RepositoryRoot)src\SignalR\" />

View File

@ -1,61 +0,0 @@
// 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.
using System;
using System.Linq;
using Microsoft.Build.Framework;
using Microsoft.Build.Logging;
namespace RepoTasks
{
public class FlowLogger : ConsoleLogger
{
private volatile bool _initialized;
public FlowLogger()
{
}
public override void Initialize(IEventSource eventSource, int nodeCount)
{
PreInit(eventSource);
base.Initialize(eventSource, nodeCount);
}
public override void Initialize(IEventSource eventSource)
{
PreInit(eventSource);
base.Initialize(eventSource);
}
private void PreInit(IEventSource eventSource)
{
if (_initialized) return;
_initialized = true;
var flowId = GetFlowId();
var prefix = $"{flowId,-22}| ";
var write = WriteHandler;
WriteHandler = msg => write(prefix + msg);
eventSource.BuildStarted += (o, e) =>
{
WriteHandler(e.Message + Environment.NewLine);
};
}
private string GetFlowId()
{
var parameters = Parameters?.Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
if (parameters == null || parameters.Length == 0)
{
return null;
}
const string flowIdParamName = "FlowId=";
return parameters
.FirstOrDefault(p => p.StartsWith(flowIdParamName, StringComparison.Ordinal))
?.Substring(flowIdParamName.Length);
}
}
}

View File

@ -2,14 +2,15 @@
<Import Project="$(RepoTasksSdkPath)\Sdk.props" Condition="'$(RepoTasksSdkPath)' != '' "/>
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
<TargetFramework Condition="'$(MSBuildRuntimeType)' == 'Core' ">netcoreapp2.0</TargetFramework>
<TargetFramework Condition="'$(MSBuildRuntimeType)' != 'Core' ">net461</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Remove="Internal.AspNetCore.Sdk" />
<PackageReference Include="Microsoft.DotNet.Archive" Version="$(MicrosoftDotNetArchivePackageVersion)" />
<PackageReference Include="NuGet.Build.Tasks" Version="$(NuGetInMSBuildVersion)" PrivateAssets="All" />
<PackageReference Include="Microsoft.Extensions.DependencyModel" Version="$(DevDependency_MicrosoftExtensionsDependencyModelPackageVersion)" PrivateAssets="All" />
<PackageReference Include="NuGet.Build.Tasks" Version="$(NuGetInMSBuildVersion)" />
<PackageReference Include="Microsoft.Extensions.DependencyModel" Version="$(DevDependency_MicrosoftExtensionsDependencyModelPackageVersion)" />
<PackageReference Include="WindowsAzure.Storage" Version="$(DevDependency_WindowsAzureStoragePackageVersion)" />
<PackageReference Include="Microsoft.DotNet.Build.Tasks.Feed" Version="$(DevDependency_MicrosoftDotNetBuildTasksFeedPackageVersion)" ExcludeAssets="Build" />
</ItemGroup>

View File

@ -345,6 +345,42 @@
<BaselinePackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="[2.2.0, )" />
<BaselinePackageReference Include="Microsoft.Extensions.Options" Version="[2.2.0, )" />
</ItemGroup>
<!-- Package: Microsoft.AspNetCore.Routing.Abstractions-->
<PropertyGroup Condition=" '$(PackageId)' == 'Microsoft.AspNetCore.Routing.Abstractions' ">
<BaselinePackageVersion>2.2.0</BaselinePackageVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(PackageId)' == 'Microsoft.AspNetCore.Routing.Abstractions' AND '$(TargetFramework)' == 'netstandard2.0' ">
<BaselinePackageReference Include="Microsoft.AspNetCore.Http.Abstractions" Version="[2.2.0, )" />
</ItemGroup>
<!-- Package: Microsoft.AspNetCore.Routing-->
<PropertyGroup Condition=" '$(PackageId)' == 'Microsoft.AspNetCore.Routing' ">
<BaselinePackageVersion>2.2.0</BaselinePackageVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(PackageId)' == 'Microsoft.AspNetCore.Routing' AND '$(TargetFramework)' == 'netcoreapp2.2' ">
<BaselinePackageReference Include="Microsoft.AspNetCore.Routing.Abstractions" Version="[2.2.0, )" />
<BaselinePackageReference Include="Microsoft.AspNetCore.Http.Extensions" Version="[2.2.0, )" />
<BaselinePackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="[2.2.0, )" />
<BaselinePackageReference Include="Microsoft.Extensions.ObjectPool" Version="[2.2.0, )" />
<BaselinePackageReference Include="Microsoft.Extensions.Options" Version="[2.2.0, )" />
</ItemGroup>
<ItemGroup Condition=" '$(PackageId)' == 'Microsoft.AspNetCore.Routing' AND '$(TargetFramework)' == 'netstandard2.0' ">
<BaselinePackageReference Include="Microsoft.AspNetCore.Routing.Abstractions" Version="[2.2.0, )" />
<BaselinePackageReference Include="Microsoft.AspNetCore.Http.Extensions" Version="[2.2.0, )" />
<BaselinePackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="[2.2.0, )" />
<BaselinePackageReference Include="Microsoft.Extensions.ObjectPool" Version="[2.2.0, )" />
<BaselinePackageReference Include="Microsoft.Extensions.Options" Version="[2.2.0, )" />
</ItemGroup>
<!-- Package: Microsoft.AspNetCore.Server.HttpSys-->
<PropertyGroup Condition=" '$(PackageId)' == 'Microsoft.AspNetCore.Server.HttpSys' ">
<BaselinePackageVersion>2.2.0</BaselinePackageVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(PackageId)' == 'Microsoft.AspNetCore.Server.HttpSys' AND '$(TargetFramework)' == 'netstandard2.0' ">
<BaselinePackageReference Include="Microsoft.AspNetCore.Authentication.Core" Version="[2.2.0, )" />
<BaselinePackageReference Include="Microsoft.AspNetCore.Hosting" Version="[2.2.0, )" />
<BaselinePackageReference Include="Microsoft.Net.Http.Headers" Version="[2.2.0, )" />
<BaselinePackageReference Include="Microsoft.Win32.Registry" Version="[4.5.0, )" />
<BaselinePackageReference Include="System.Security.Principal.Windows" Version="[4.5.0, )" />
</ItemGroup>
<!-- Package: Microsoft.AspNetCore.Server.Kestrel.Core-->
<PropertyGroup Condition=" '$(PackageId)' == 'Microsoft.AspNetCore.Server.Kestrel.Core' ">
<BaselinePackageVersion>2.2.0</BaselinePackageVersion>

View File

@ -39,6 +39,9 @@
<Package Id="Microsoft.AspNetCore.Owin" Version="2.2.0" />
<Package Id="Microsoft.AspNetCore.ResponseCompression" Version="2.2.0" />
<Package Id="Microsoft.AspNetCore.Rewrite" Version="2.2.0" />
<Package Id="Microsoft.AspNetCore.Routing.Abstractions" Version="2.2.0" />
<Package Id="Microsoft.AspNetCore.Routing" Version="2.2.0" />
<Package Id="Microsoft.AspNetCore.Server.HttpSys" Version="2.2.0" />
<Package Id="Microsoft.AspNetCore.Server.Kestrel.Core" Version="2.2.0" />
<Package Id="Microsoft.AspNetCore.Server.Kestrel.Https" Version="2.2.0" />
<Package Id="Microsoft.AspNetCore.Server.Kestrel.Transport.Abstractions" Version="2.2.0" />

View File

@ -19,25 +19,28 @@
<LatestPackageReference Include="Microsoft.EntityFrameworkCore" Version="$(MicrosoftEntityFrameworkCorePackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.ActivatorUtilities.Sources" Version="$(MicrosoftExtensionsActivatorUtilitiesSourcesPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.ClosedGenericMatcher.Sources" Version="$(MicrosoftExtensionsClosedGenericMatcherSourcesPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.CopyOnWriteDictionary.Sources" Version="$(MicrosoftExtensionsCopyOnWriteDictionarySourcesPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.CommandLineUtils.Sources" Version="$(MicrosoftExtensionsCommandLineUtilsSourcesPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Configuration.CommandLine" Version="$(MicrosoftExtensionsConfigurationCommandLinePackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="$(MicrosoftExtensionsConfigurationEnvironmentVariablesPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Configuration.Json" Version="$(MicrosoftExtensionsConfigurationJsonPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Configuration.UserSecrets" Version="$(MicrosoftExtensionsConfigurationUserSecretsPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Configuration" Version="$(MicrosoftExtensionsConfigurationPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.CopyOnWriteDictionary.Sources" Version="$(MicrosoftExtensionsCopyOnWriteDictionarySourcesPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.DependencyInjection" Version="$(MicrosoftExtensionsDependencyInjectionPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.DiagnosticAdapter" Version="$(MicrosoftExtensionsDiagnosticAdapterPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="$(MicrosoftExtensionsFileProvidersEmbeddedPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.HashCodeCombiner.Sources" Version="$(MicrosoftExtensionsHashCodeCombinerSourcesPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Hosting" Version="$(MicrosoftExtensionsHostingPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Localization.Abstractions" Version="$(MicrosoftExtensionsLocalizationAbstractionsPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Localization" Version="$(MicrosoftExtensionsLocalizationPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="$(MicrosoftExtensionsLoggingAbstractionsPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Logging.Console" Version="$(MicrosoftExtensionsLoggingConsolePackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Logging.Testing" Version="$(MicrosoftExtensionsLoggingTestingPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Logging" Version="$(MicrosoftExtensionsLoggingPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.FileProviders.Embedded" Version="$(MicrosoftExtensionsFileProvidersEmbeddedPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="$(MicrosoftExtensionsOptionsConfigurationExtensionsPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Options" Version="$(MicrosoftExtensionsOptionsPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.Process.Sources" Version="$(MicrosoftExtensionsProcessSourcesPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.PropertyHelper.Sources" Version="$(MicrosoftExtensionsPropertyHelperSourcesPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.RazorViews.Sources" Version="$(MicrosoftExtensionsRazorViewsSourcesPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.StackTrace.Sources" Version="$(MicrosoftExtensionsStackTraceSourcesPackageVersion)" />
<LatestPackageReference Include="Microsoft.Extensions.TypeNameHelper.Sources" Version="$(MicrosoftExtensionsTypeNameHelperSourcesPackageVersion)" />
@ -47,6 +50,7 @@
<LatestPackageReference Include="Microsoft.NETCore.Windows.ApiSets" Version="$(MicrosoftNETCoreWindowsApiSetsPackageVersion)" />
<LatestPackageReference Include="System.Data.SqlClient" Version="$(SystemDataSqlClientPackageVersion)" />
<LatestPackageReference Include="System.Memory" Version="$(SystemMemoryPackageVersion)" />
<LatestPackageReference Include="System.Net.Http.WinHttpHandler" Version="$(SystemNetHttpWinHttpHandlerPackageVersion)" />
<LatestPackageReference Include="System.Net.WebSockets.WebSocketProtocol" Version="$(SystemNetWebSocketsWebSocketProtocolPackageVersion)" />
<LatestPackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="$(SystemRuntimeCompilerServicesUnsafePackageVersion)" />
<LatestPackageReference Include="System.Security.Cryptography.Cng" Version="$(SystemSecurityCryptographyCngPackageVersion)" />

View File

@ -26,9 +26,12 @@
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Http.Features" ProjectPath="$(RepositoryRoot)src\Http\Http.Features\src\Microsoft.AspNetCore.Http.Features.csproj" />
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Http" ProjectPath="$(RepositoryRoot)src\Http\Http\src\Microsoft.AspNetCore.Http.csproj" />
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Owin" ProjectPath="$(RepositoryRoot)src\Http\Owin\src\Microsoft.AspNetCore.Owin.csproj" />
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Routing.Abstractions" ProjectPath="$(RepositoryRoot)src\Http\Routing.Abstractions\src\Microsoft.AspNetCore.Routing.Abstractions.csproj" />
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Routing" ProjectPath="$(RepositoryRoot)src\Http\Routing\src\Microsoft.AspNetCore.Routing.csproj" />
<ProjectReferenceProvider Include="Microsoft.AspNetCore.WebUtilities" ProjectPath="$(RepositoryRoot)src\Http\WebUtilities\src\Microsoft.AspNetCore.WebUtilities.csproj" />
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Html.Abstractions" ProjectPath="$(RepositoryRoot)src\Html\Abstractions\src\Microsoft.AspNetCore.Html.Abstractions.csproj" />
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Connections.Abstractions" ProjectPath="$(RepositoryRoot)src\Servers\Connections.Abstractions\src\Microsoft.AspNetCore.Connections.Abstractions.csproj" />
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Server.HttpSys" ProjectPath="$(RepositoryRoot)src\Servers\HttpSys\src\Microsoft.AspNetCore.Server.HttpSys.csproj" />
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Server.Kestrel.Core" ProjectPath="$(RepositoryRoot)src\Servers\Kestrel\Core\src\Microsoft.AspNetCore.Server.Kestrel.Core.csproj" />
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Server.Kestrel.Https" ProjectPath="$(RepositoryRoot)src\Servers\Kestrel\Https\src\Microsoft.AspNetCore.Server.Kestrel.Https.csproj" />
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Server.Kestrel" ProjectPath="$(RepositoryRoot)src\Servers\Kestrel\Kestrel\src\Microsoft.AspNetCore.Server.Kestrel.csproj" />

View File

@ -6,6 +6,5 @@ This is required to provide dependencies for samples and tests.
<ItemGroup>
<LatestPackageReference Include="Microsoft.AspNetCore.Server.IISIntegration" Version="2.2.0" />
<LatestPackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="2.2.0" />
<LatestPackageReference Include="Microsoft.AspNetCore.Routing" Version="2.2.0" />
</ItemGroup>
</Project>

View File

@ -11,4 +11,8 @@
<PackageReference Include="Internal.AspNetCore.Sdk" PrivateAssets="All" Version="$(InternalAspNetCoreSdkPackageVersion)" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework' ">
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="$(MicrosoftNETFrameworkReferenceAssembliesPackageVersion)" PrivateAssets="All" />
</ItemGroup>
</Project>

View File

@ -34,6 +34,7 @@
<_ImplicitPackageReference Include="@(PackageReference->WithMetadataValue('IsImplicitlyDefined', 'true'))" />
<_ExplicitPackageReference Include="@(PackageReference)" Exclude="@(_ImplicitPackageReference)" />
<_ExplicitPackageReference Remove="Internal.AspNetCore.Sdk" />
<_ExplicitPackageReference Remove="Microsoft.NETFramework.ReferenceAssemblies" />
<UnusedProjectReferenceProvider Include="@(ProjectReferenceProvider)" Exclude="@(Reference)" />

View File

@ -3,6 +3,6 @@
"version": "2.2.100"
},
"msbuild-sdks": {
"Internal.AspNetCore.Sdk": "2.2.1-build-20181205.2"
"Internal.AspNetCore.Sdk": "2.2.1-build-20181206.2"
}
}

View File

@ -1,2 +1,2 @@
version:2.2.1-build-20181205.2
commithash:73f2bfbafd4024d2a644c813d7de9116797b6e9c
version:2.2.1-build-20181206.2
commithash:e55df7ec43bfd6db8c8c81e38bf3fc25ef19e081

View File

@ -1,10 +1,24 @@
{
"$schema": "https://raw.githubusercontent.com/aspnet/BuildTools/release/2.2/tools/korebuild.schema.json",
"channel": "release/2.2",
"msbuildType": "full",
"toolsets": {
"nodejs": {
"minVersion": "8.0",
"required": true
},
"visualstudio": {
"required": [
"Windows"
],
"includePrerelease": true,
"versionRange": "[15.8, 16.0)",
"requiredWorkloads": [
"Microsoft.VisualStudio.ComponentGroup.NativeDesktop.Win81",
"Microsoft.VisualStudio.Component.VC.Tools.x86.x64",
"Microsoft.VisualStudio.Component.VC.ATL",
"Microsoft.VisualStudio.Component.Windows10SDK.15063.Desktop"
]
}
}
}

View File

@ -1,130 +0,0 @@
#!/usr/bin/env pwsh
<#
.SYNOPSIS
Generates a tag on this repo and adds a tag for each submodule that corresponds
to the value in version.props
.PARAMETER Push
Push the tag to origin
.PARAMETER OutFile
When specified, generate a .csv with repo names and tags
.PARAMETER WhatIf
Dry run
#>
[cmdletbinding(PositionalBinding = $false, SupportsShouldProcess = $true)]
param(
[switch]$Push,
[string]$OutFile
)
$ErrorActionPreference = 'Stop'
Import-Module -Scope Local -Force "$PSScriptRoot/common.psm1"
Set-StrictMode -Version 1
function New-GitTag {
[cmdletbinding(SupportsShouldProcess = $true)]
param(
[Parameter(Mandatory = $true)]
[string]$Repo,
[Parameter(Mandatory = $true)]
[string]$Tag
)
Push-Location $Repo
try {
git show-ref --tags --verify "refs/tags/$Tag" -q
$existingTag = $?
if ($existingTag) {
Write-Warning "${Repo}: Tag '$Tag' already exists. Skipped adding tag"
}
else {
if ($PSCmdlet.ShouldProcess($Repo, "Tag $Tag")) {
Invoke-Block { & git tag -m "v$Tag" $Tag HEAD }
Write-Host -f Magenta "${Repo}: added tag '$Tag'"
}
if ($Push -and $PSCmdlet.ShouldProcess($Repo, "Push tag $Tag to origin")) {
Invoke-Block { & git push origin refs/tags/$Tag }
}
}
}
finally {
Pop-Location
}
}
#
# Gets the package version by invoking KoreBuild on a repo with a custom target that spits out the package version
#
function Get-PackageVersion([string]$repoRoot) {
$buildScript = if (-not $IsCoreCLR -or $IsWindows) { 'build.ps1' } else { 'build.sh' }
$inspectTarget = "/p:CustomAfterKoreBuildTargets=$PSScriptRoot/GetPackageVersion.targets"
Write-Verbose "Running `"$repoRoot/$buildScript`" $inspectTarget /v:m /p:IsFinalBuild=true /t:Noop /t:GetPackageVersion /p:BuildNumber=t000"
# Add the /t:Noop target which may be used by the bootstrapper to skip unimportant initialization
$output = & "$repoRoot/$buildScript" $inspectTarget /v:m /p:IsFinalBuild=true /t:Noop /t:GetPackageVersion /p:BuildNumber=t000
$output | out-string | Write-Verbose
if (-not $? -or $LASTEXITCODE -ne 0) {
throw "$buildScript failed on $repoRoot. Exit code $LASTEXITCODE"
}
$packageVersion = $output | where-object { $_ -like '*PackageVersion=*' } | select-object -first 1
$packageVersion = $packageVersion -replace 'PackageVersion=', ''
$packageVersion = $packageVersion -replace '-final', ''
$packageVersion = $packageVersion -replace '-t000', ''
if ($packageVersion) { $packageVersion = $packageVersion.Trim() }
if (-not $packageVersion) {
throw "Could not determine final package version for $repoRoot"
}
return $packageVersion.Trim()
}
$repoRoot = Resolve-Path "$PSScriptRoot/../"
Write-Warning "Make sure you have run ``git submodule update`` first to pin the submodules to the correct commit"
if (-not $PSCmdlet.ShouldContinue("Continue?", "This will apply tags to all submodules")) {
Write-Host "Exiting"
exit 1
}
$repoTag = Get-PackageVersion $repoRoot
New-GitTag $repoRoot $repoTag -WhatIf:$WhatIfPreference
$tags = @([pscustomobject] @{
repo = $(git config remote.origin.url)
tag = $repoTag
commit = $(git rev-parse HEAD)
})
Get-Submodules $repoRoot | ForEach-Object {
$modPath = $_.path
$module = $_.module
if (-not (Test-Path (Join-Path $_.path 'version.props'))) {
Write-Warning "$module does not have a version.props file. Skipping"
return
}
try {
$tag = Get-PackageVersion $_.path
if ($tag -ne $repoTag) {
Write-Warning "${module}: version ($tag) does not match repo ($repoTag)"
}
$tags += [pscustomobject] @{
repo = $_.remote
tag = $tag
commit = $_.commit
}
}
catch {
Write-Warning "${module}: Could not automatically determine tag for $modPath. Skipping"
return
}
New-GitTag $_.path $tag -WhatIf:$WhatIfPreference
}
$tags | Format-Table
if ($OutFile) {
$tags | Select-Object -Property * | Export-Csv -Path $OutFile -WhatIf:$false -NoTypeInformation
}

View File

@ -1,5 +0,0 @@
<Project>
<Target Name="GetPackageVersion">
<Message Importance="high" Text="PackageVersion=$(PackageVersion)" />
</Target>
</Project>

View File

@ -1,23 +0,0 @@
#!/usr/bin/env pwsh
<#
.SYNOPSIS
Lists the version of all submodules and this repo
.PARAMETER Shipping
Only list repos that are shipping
#>
[cmdletbinding(SupportsShouldProcess = $true)]
param(
[switch]$Shipping = $false
)
Set-StrictMode -Version 2
$ErrorActionPreference = 'Stop'
Import-Module -Scope Local -Force "$PSScriptRoot/common.psm1"
Assert-Git
$RepoRoot = Resolve-Path "$PSScriptRoot/../"
Get-Submodules $RepoRoot -Shipping:$Shipping | Format-Table -Property 'module','versionPrefix'

View File

@ -1,111 +0,0 @@
#!/usr/bin/env pwsh -c
<#
.SYNOPSIS
Updates the version.props file in repos to a newer patch version
.PARAMETER Repos
A list of the repositories that should be patched
.PARAMETER Mode
Version bump options: Major, Minor, Patch
.PARAMETER VersionSuffix
The version suffix to use
#>
[cmdletbinding(SupportsShouldProcess = $true)]
param(
[Parameter(Mandatory = $true)]
[string[]]$Repos,
[Parameter(Mandatory = $true)]
[ValidateSet('Major', 'Minor', 'Patch')]
[string]$Mode,
[string]$VersionSuffix = $null,
[switch]$NoCommit
)
$ErrorActionPreference = 'Stop'
Import-Module -Scope Local -Force "$PSScriptRoot/common.psm1"
function SetVersionSuffix([System.Xml.XmlNode]$node) {
if (-not $node) {
return
}
$node.InnerText = $VersionSuffix
return "Setting $($node.Name) to $VersionSuffix"
}
function BumpVersion([System.Xml.XmlNode]$node) {
if (-not $node) {
return
}
[version] $version = $node.InnerText
$experimental = $version.Major -eq 0
switch ($mode) {
{ ($_ -ne 'Patch') -and $experimental} {
$node.InnerText = "{0}.{1}.{2}" -f $version.Major, ($version.Minor + 1), 0
}
{ ($_ -eq 'Major') -and -not $experimental } {
$node.InnerText = "{0}.{1}.{2}" -f ($version.Major + 1), 0, 0
}
{ ($_ -eq 'Minor') -and -not $experimental } {
$node.InnerText = "{0}.{1}.{2}" -f $version.Major, ($version.Minor + 1), 0
}
'Patch' {
$node.InnerText = "{0}.{1}.{2}" -f $version.Major, $version.Minor, ($version.Build + 1)
}
default {
throw "Could not figure out how to apply patch policy $mode"
}
}
return "Bumping version from $version to $($node.InnerText)"
}
foreach ($repo in $Repos) {
$repoPath = "$PSScriptRoot/../modules/$repo"
Push-Location $repoPath
try
{
$path = "$repoPath/version.props"
Write-Host -ForegroundColor Magenta "Updating $repo"
if (-not (Test-Path $path)) {
Write-Warning "$path does not exist"
continue
}
$path = Resolve-Path $path
Write-Verbose "$path"
[xml] $xml = LoadXml $path
$suffix = $xml.SelectSingleNode('/Project/PropertyGroup/VersionSuffix')
if (-not $suffix) {
write-error "$path does not have VersionSuffix"
}
if ($VersionSuffix) {
SetVersionSuffix $xml.SelectSingleNode('/Project/PropertyGroup/VersionSuffix') | write-host
SetVersionSuffix $xml.SelectSingleNode('/Project/PropertyGroup/ExperimentalProjectVersionSuffix') | write-host
SetVersionSuffix $xml.SelectSingleNode('/Project/PropertyGroup/ExperimentalVersionSuffix') | write-host
}
$versionPrefix = $xml.SelectSingleNode('/Project/PropertyGroup/VersionPrefix')
$epxVersionPrefix = $xml.SelectSingleNode('/Project/PropertyGroup/ExperimentalProjectVersionPrefix')
$exVersionPrefix = $xml.SelectSingleNode('/Project/PropertyGroup/ExperimentalVersionPrefix')
BumpVersion $epxVersionPrefix | write-host
BumpVersion $exVersionPrefix | write-host
$message = BumpVersion $versionPrefix
Write-Host $message
if ($PSCmdlet.ShouldProcess("Update $path")) {
SaveXml $xml $path
if (-not $NoCommit) {
Invoke-Block { & git add $path }
Invoke-Block { & git commit -m $message }
}
}
}
finally
{
Pop-Location
}
}

View File

@ -1,66 +0,0 @@
#!/usr/bin/env pwsh
<#
.SYNOPSIS
Tags each repo according to VersionPrefix in version.props of that repo
.PARAMETER Push
Push all updated tags
.PARAMETER ForceUpdateTag
This will call git tag --force
#>
[cmdletbinding(SupportsShouldProcess = $true)]
param(
[switch]$Push = $false,
[switch]$ForceUpdateTag = $false
)
Set-StrictMode -Version 2
$ErrorActionPreference = 'Stop'
Import-Module -Scope Local -Force "$PSScriptRoot/common.psm1"
Assert-Git
$RepoRoot = Resolve-Path "$PSScriptRoot/../"
Get-Submodules $RepoRoot -Shipping | % {
Push-Location $_.path | Out-Null
try {
if (-not $_.versionPrefix) {
Write-Warning "Could not determine tag version for $(_.path)"
}
else {
$tag = $_.versionPrefix
Write-Host "$($_.module) => $tag"
$gitTagArgs = @()
if ($ForceUpdateTag) {
$gitTagArgs += '--force'
}
Invoke-Block { & git tag @gitTagArgs $tag }
if ($Push) {
$gitPushArgs = @()
if ($WhatIfPreference) {
$gitPushArgs += '--dry-run'
}
Invoke-Block { & git push @gitPushArgs origin "refs/tags/${tag}" }
}
if ($WhatIfPreference) {
Invoke-Block { & git tag -d $tag } | Out-Null
}
}
}
catch {
Write-Host -ForegroundColor Red "Could not update $_"
throw
}
finally {
Pop-Location
}
}

View File

@ -1,133 +0,0 @@
[CmdletBinding()]
param(
[switch]$NoCommit,
[string]$GithubEmail,
[string]$GithubUsername,
[string]$GithubToken
)
$ErrorActionPreference = 'Stop'
Import-Module -Scope Local -Force "$PSScriptRoot/common.psm1"
Set-StrictMode -Version 1
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
$githubRaw = "https://raw.githubusercontent.com"
$versionsRepo = "dotnet/versions"
$versionsBranch = "master"
$coreSetupRepo = "dotnet/core-setup"
$coreFxRepo = "dotnet/corefx"
$coreSetupVersions = "$githubRaw/$versionsRepo/$versionsBranch/build-info/$coreSetupRepo/master/Latest_Packages.txt"
$tempDir = "$PSScriptRoot/../obj"
mkdir -Path $tempDir -ErrorAction Ignore
$localCoreSetupVersions = "$tempDir/coresetup.packages"
Write-Host "Downloading $coreSetupVersions to $localCoreSetupVersions"
Invoke-WebRequest -OutFile $localCoreSetupVersions -Uri $coreSetupVersions
$msNetCoreAppPackageVersion = $null
$msNetCoreAppPackageName = "Microsoft.NETCore.App"
Set-GitHubInfo $GithubToken $GithubUsername $GithubEmail
$variables = @{}
foreach ($line in Get-Content $localCoreSetupVersions) {
if ($line.StartsWith("$msNetCoreAppPackageName ")) {
$msNetCoreAppPackageVersion = $line.Trim("$msNetCoreAppPackageName ")
}
$parts = $line.Split(' ')
$packageName = $parts[0]
$varName = "$packageName" + "PackageVersion"
$varName = $varName.Replace('.', '')
$packageVersion = $parts[1]
if ($variables[$varName]) {
if ($variables[$varName].Where( {$_ -eq $packageVersion}, 'First').Count -eq 0) {
$variables[$varName] += $packageVersion
}
}
else {
$variables[$varName] = @($packageVersion)
}
}
if (!$msNetCoreAppPackageVersion) {
throw "$msNetCoreAppPackageName was not in $coreSetupVersions"
}
$coreAppDownloadLink = "https://dotnet.myget.org/F/dotnet-core/api/v2/package/$msNetCoreAppPackageName/$msNetCoreAppPackageVersion"
$netCoreAppNupkg = "$tempDir/microsoft.netcore.app.zip"
Invoke-WebRequest -OutFile $netCoreAppNupkg -Uri $coreAppDownloadLink
$expandedNetCoreApp = "$tempDir/microsoft.netcore.app/"
Expand-Archive -Path $netCoreAppNupkg -DestinationPath $expandedNetCoreApp -Force
$versionsTxt = "$expandedNetCoreApp/$msNetCoreAppPackageName.versions.txt"
$versionsCoreFxCommit = $null
foreach ($line in Get-Content $versionsTxt) {
if ($line.StartsWith("dotnet/versions/corefx")) {
$versionsCoreFxCommit = $line.Split(' ')[1]
break
}
}
if (!$versionsCoreFxCommit) {
Throw "no 'dotnet/versions/corefx' in versions.txt of Microsoft.NETCore.App"
}
$coreFxVersionsUrl = "$githubRaw/$versionsRepo/$versionsCoreFxCommit/build-info/$coreFxRepo/$versionsBranch/Latest_Packages.txt"
$localCoreFxVersions = "$tempDir/$corefx.packages"
Invoke-WebRequest -OutFile $localCoreFxVersions -Uri $coreFxVersionsUrl
foreach ($line in Get-Content $localCoreFxVersions) {
$parts = $line.Split(' ')
$packageName = $parts[0]
$varName = "$packageName" + "PackageVersion"
$varName = $varName.Replace('.', '')
$packageVersion = $parts[1]
if ($variables[$varName]) {
if ($variables[$varName].Where( {$_ -eq $packageVersion}, 'First').Count -eq 0) {
$variables[$varName] += $packageVersion
}
}
else {
$variables[$varName] = @($packageVersion)
}
}
$depsPath = Resolve-Path "$PSScriptRoot/../build/dependencies.props"
Write-Host "Loading deps from $depsPath"
[xml] $dependencies = LoadXml $depsPath
if (-not $NoCommit) {
$baseBranch = "release/2.2"
Invoke-Block { & git fetch origin }
$currentBranch = Invoke-Block { & git rev-parse --abbrev-ref HEAD }
$destinationBranch = "upgrade-netcore-deps"
Invoke-Block { & git checkout -tb $destinationBranch "origin/$baseBranch" }
}
try {
$updatedVars = UpdateVersions $variables $dependencies $depsPath
if (-not $NoCommit) {
$body = CommitUpdatedVersions $updatedVars $dependencies $depsPath "Upgrade to .NET Core $msNetCoreAppPackageVersion"
if ($body) {
CreatePR "aspnet" $GithubUsername $baseBranch $destinationBranch $body $GithubToken
}
}
}
finally {
if (-not $NoCommit) {
Invoke-Block { & git checkout $currentBranch }
}
}

View File

@ -1,148 +0,0 @@
#!/usr/bin/env pwsh
<#
.SYNOPSIS
Updates each submodule this repo builds to new dependencies.props.
.PARAMETER Source
The NuGet package source to find the lineup on.
.PARAMETER LineupID
The ID of the Lineup to determine which versions to use.
.PARAMETER LineupVersion
The version of the Lineup to be used.
.PARAMETER NoPush
Make commits without pusing.
.PARAMETER GitAuthorName
The author name to use in the commit message. (Optional)
.PARAMETER GitAuthorEmail
The author email to use in the commit message. (Optional)
.PARAMETER Force
Specified this to push commits without prompting.
.PARAMETER GitCommitArgs
Any remaining arguments are passed as arguments to 'git commit' actions in each repo.
#>
[cmdletbinding(SupportsShouldProcess = $true)]
param(
[Parameter(Mandatory = $true)]
[string]$Source,
[Parameter(Mandatory = $true)]
[string]$LineupID,
[Parameter(Mandatory = $true)]
[string]$LineupVersion,
[switch]$NoPush,
[string]$GitAuthorName = $null,
[string]$GitAuthorEmail = $null,
[switch]$Force,
[string[]]$GitCommitArgs = @()
)
$ErrorActionPreference = 'Stop'
Set-StrictMode -Version 2
Import-Module "$PSScriptRoot/common.psm1" -Scope Local -Force
$RepoRoot = Resolve-Path "$PSScriptRoot\.."
$ModuleDirectory = Join-Path $RepoRoot "modules"
$gitConfigArgs = @()
if ($GitAuthorName) {
$gitConfigArgs += '-c', "user.name=$GitAuthorName"
}
if ($GitAuthorEmail) {
$gitConfigArgs += '-c', "user.email=$GitAuthorEmail"
}
Push-Location $ModuleDirectory
try {
$build_errors = @()
$submodules = Get-Submodules $RepoRoot
foreach ($submodule in $submodules) {
Push-Location $submodule.path
try {
Invoke-Block { & git fetch }
Invoke-Block { & git checkout origin/$($submodule.branch) }
$depsFile = Join-Path (Join-Path $($submodule.path) "build") "dependencies.props"
if (!(Test-Path $depsFile)) {
Write-Warning "No build\dependencies.props file exists for '$($submodule.module)'."
continue
}
$koreBuildLock = "korebuild-lock.txt"
$repoKoreBuildLock = (Join-Path $RepoRoot $koreBuildLock)
$submoduleKoreBuildLock = (Join-Path $submodule.path $koreBuildLock)
Copy-Item $repoKoreBuildLock $submoduleKoreBuildLock -Force
Write-Verbose "About to update dependencies.props for $($submodule.module)"
& .\run.ps1 upgrade deps --source $Source --id $LineupID --version $LineupVersion --deps-file $depsFile
Invoke-Block { & git @gitConfigArgs add $depsFile $koreBuildLock }
# If there were any changes test and push.
& git diff --cached --quiet ./
if ($LASTEXITCODE -ne 0) {
Invoke-Block { & git @gitConfigArgs commit --quiet -m "Update dependencies.props`n`n[auto-updated: dependencies]" @GitCommitArgs }
# Prepare this submodule for push
$sshUrl = "git@github.com:aspnet/$($submodule.module)"
Invoke-Block { & git remote set-url --push origin $sshUrl }
# Test the submodule
try {
Invoke-Block { & .\run.ps1 default-build /p:SkipTests=true }
}
catch {
Write-Warning "Error in $($submodule.module): $_"
$build_errors += @{
Repo = $submodule.module
Message = $_
}
continue
}
# Push the changes
if (-not $NoPush -and ($Force -or ($PSCmdlet.ShouldContinue("Pushing updates to repos.", 'Push the changes to these repos?')))) {
try {
$newBranch = "maestro/$($submodule.branch)"
Invoke-Block { & git @gitConfigArgs push origin HEAD:refs/heads/$newBranch}
}
catch {
Write-Warning "Error in pushing $($newBranch): $_"
$build_errors += @{
Repo = $submodule.module
Message = $_
}
continue
}
}
}
else {
Write-Host "No changes in $($submodule.module)"
}
}
catch {
Write-Warning "Error in $($submodule.module): $_"
$build_errors += @{
Repo = $submodule.module
Message = $_
}
}
finally {
Pop-Location
}
}
if ($build_errors.Count -gt 0 ) {
Write-Warning "The following repos failed:"
foreach ($error in $build_errors) {
Write-Warning " - $($error.Repo)"
}
throw "Failed to build"
}
}
finally {
Pop-Location
}

View File

@ -1,2 +0,0 @@
PyYAML==3.12
termcolor==1.1.0

View File

@ -1,100 +0,0 @@
#!/usr/bin/env python3
import collections
import glob
import yaml
from os import path
from termcolor import colored, cprint
from yaml.constructor import Constructor
def dump_format(dump, tag, mapping, flow_style=None):
"""
Better output formatting for YAML dictionaries
"""
value = []
node = yaml.MappingNode(tag, value, flow_style=flow_style)
if dump.alias_key is not None:
dump.represented_objects[dump.alias_key] = node
best_style = True
if hasattr(mapping, 'items'):
mapping = mapping.items()
for item_key, item_value in mapping:
node_key = dump.represent_data(item_key)
node_value = dump.represent_data(item_value)
if not (isinstance(node_key, yaml.ScalarNode) and not node_key.style):
best_style = False
if not (isinstance(node_value, yaml.ScalarNode) and not node_value.style):
best_style = False
value.append((node_key, node_value))
if flow_style is None:
if dump.default_flow_style is not None:
node.flow_style = dump.default_flow_style
else:
node.flow_style = best_style
return node
def add_bool_as_scalar(self, node):
"""
Don't auto-parse boolean values
"""
if node.value == 'true' or node.value == 'false' :
return self.construct_yaml_bool(node)
return self.construct_scalar(node)
_mapping_tag = yaml.resolver.BaseResolver.DEFAULT_MAPPING_TAG
def dict_representer(dumper, data):
return dumper.represent_mapping(_mapping_tag, data.iteritems())
def dict_constructor(loader, node):
return collections.OrderedDict(loader.construct_pairs(node))
def update(pattern, updater):
print('\n\n\n')
cprint(pattern, 'magenta')
for f in glob.glob(path.join(repo_root, "modules", "*", pattern)):
yml = path.join(repo_root, f)
if not path.exists(yml):
cprint("File does not exist: {}".format(yml), 'red')
continue
print("Updating {}".format(yml))
document = yaml.load(open(yml, 'r'))
document = updater(document)
yml_file = open(yml, 'w')
yml_file.write(yaml.safe_dump(document, default_flow_style=False, indent=2))
yml_file.close()
#
# Config yaml parser
#
# Do not reorder keys in yaml file
yaml.add_representer(collections.OrderedDict, dict_representer)
yaml.add_constructor(_mapping_tag, dict_constructor)
# Pretty print dictionaries
yaml.SafeDumper.add_representer(collections.OrderedDict,
lambda dumper, value: dump_format(dumper, u'tag:yaml.org,2002:map', value))
# Don't parse booleans - treat them as scalars
yaml.Loader.add_constructor(u'tag:yaml.org,2002:bool', add_bool_as_scalar)
yaml.SafeLoader.add_constructor(u'tag:yaml.org,2002:bool', add_bool_as_scalar)
#
# Main
#
repo_root = path.dirname(path.dirname(path.abspath(__file__)))
def transform_yaml_doc(document):
if not 'branches' in document:
document['branches'] = {}
document['branches']['only'] = [
'dev', '/^release\/.*$/', '/^(.*\/)?ci-.*$/']
return document
update(".travis.yml", transform_yaml_doc)
update(".appveyor.yml", transform_yaml_doc)

View File

@ -1,13 +1,6 @@
<Project>
<Import Project="dependencies.props" />
<PropertyGroup>
<!-- These properties are use by the automation that updates dependencies.props -->
<LineupPackageId>Internal.AspNetCore.Universe.Lineup</LineupPackageId>
<LineupPackageVersion>2.2.0-*</LineupPackageVersion>
<LineupPackageRestoreSource>https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json</LineupPackageRestoreSource>
</PropertyGroup>
<ItemGroup>
<DotNetCoreRuntime Include="$(MicrosoftNETCoreApp20PackageVersion)" />
<DotNetCoreRuntime Include="$(MicrosoftNETCoreApp21PackageVersion)" />

View File

@ -1,12 +1,6 @@
<Project>
<Import Project="dependencies.props" />
<PropertyGroup>
<LineupPackageId>Internal.AspNetCore.Universe.Lineup</LineupPackageId>
<LineupPackageVersion>2.2.0-*</LineupPackageVersion>
<LineupPackageRestoreSource>https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json</LineupPackageRestoreSource>
</PropertyGroup>
<ItemGroup>
<DotNetCoreRuntime Include="$(MicrosoftNETCoreApp20PackageVersion)" />
<DotNetCoreRuntime Include="$(MicrosoftNETCoreApp21PackageVersion)" />

View File

@ -1,13 +1,6 @@
<Project>
<Import Project="dependencies.props" />
<PropertyGroup>
<!-- These properties are use by the automation that updates dependencies.props -->
<LineupPackageId>Internal.AspNetCore.Universe.Lineup</LineupPackageId>
<LineupPackageVersion>2.2.0-*</LineupPackageVersion>
<LineupPackageRestoreSource>https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json</LineupPackageRestoreSource>
</PropertyGroup>
<ItemGroup>
<DotNetCoreRuntime Include="$(MicrosoftNETCoreApp22PackageVersion)" />
</ItemGroup>

View File

@ -3,11 +3,6 @@
<PropertyGroup>
<FunctionalTestsProject>$(RepositoryRoot)test\Microsoft.AspNetCore.AzureAppServices.FunctionalTests\Microsoft.AspNetCore.AzureAppServices.FunctionalTests.csproj</FunctionalTestsProject>
<!-- These properties are use by the automation that updates dependencies.props -->
<LineupPackageId>Internal.AspNetCore.Universe.Lineup</LineupPackageId>
<LineupPackageVersion>2.2.0-*</LineupPackageVersion>
<LineupPackageRestoreSource>https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json</LineupPackageRestoreSource>
</PropertyGroup>
<ItemGroup>

View File

@ -1,13 +1,6 @@
<Project>
<Import Project="dependencies.props" />
<PropertyGroup>
<!-- These properties are use by the automation that updates dependencies.props -->
<LineupPackageId>Internal.AspNetCore.Universe.Lineup</LineupPackageId>
<LineupPackageVersion>2.2.0-*</LineupPackageVersion>
<LineupPackageRestoreSource>https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json</LineupPackageRestoreSource>
</PropertyGroup>
<ItemGroup>
<DotNetCoreRuntime Include="$(MicrosoftNETCoreApp20PackageVersion)" />
<DotNetCoreRuntime Include="$(MicrosoftNETCoreApp21PackageVersion)" />

View File

@ -12,7 +12,7 @@ Microsoft.AspNetCore.Routing.RouteData</Description>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Http.Abstractions" Version="$(MicrosoftAspNetCoreHttpAbstractionsPackageVersion)" />
<PackageReference Include="Microsoft.Extensions.PropertyHelper.Sources" Version="$(MicrosoftExtensionsPropertyHelperSourcesPackageVersion)" PrivateAssets="All" />
<Reference Include="Microsoft.AspNetCore.Http.Abstractions" />
<Reference Include="Microsoft.Extensions.PropertyHelper.Sources" PrivateAssets="All" />
</ItemGroup>
</Project>

View File

@ -0,0 +1,11 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>$(StandardTestTfms)</TargetFrameworks>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.AspNetCore.Routing.Abstractions" />
</ItemGroup>
</Project>

185
src/Http/Routing.sln Normal file
View File

@ -0,0 +1,185 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.26124.0
MinimumVisualStudioVersion = 15.0.26124.0
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Routing", "Routing", "{240298B6-6729-4844-9B30-B8BC0CD12772}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AspNetCore.Routing.Performance", "Routing\perf\Microsoft.AspNetCore.Routing.Performance.csproj", "{D9A5185A-1697-4B6B-B845-C13AE6DA6D3F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AspNetCore.Routing", "Routing\src\Microsoft.AspNetCore.Routing.csproj", "{A69248B5-2ACE-4B52-B0B0-63AD54D52543}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{8B2D195B-4997-4CCE-9846-4A848A6F258D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AspNetCore.Routing.FunctionalTests", "Routing\test\FunctionalTests\Microsoft.AspNetCore.Routing.FunctionalTests.csproj", "{5BD1EBCE-E05E-41FC-A1A8-BF36FA096F22}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AspNetCore.Routing.Tests", "Routing\test\UnitTests\Microsoft.AspNetCore.Routing.Tests.csproj", "{3F9CEBB1-A50D-4869-B555-81E572E62D18}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Routing.Abstractions", "Routing.Abstractions", "{485B8E11-FC7C-464F-8CB2-A164DAB30D58}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AspNetCore.Routing.Abstractions", "Routing.Abstractions\src\Microsoft.AspNetCore.Routing.Abstractions.csproj", "{C9C9FAB5-0A0D-4334-9A7D-C83C38EB29B0}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests", "Routing.Abstractions\test\Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests.csproj", "{32C5C558-E104-4DC4-9311-890697DE8D65}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "testassets", "testassets", "{EDF2E5EF-EAEC-4B51-8473-857531557DAE}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Benchmarks", "Routing\test\testassets\Benchmarks\Benchmarks.csproj", "{490C00C6-4B63-4E1B-95AB-EDEB7532D4B2}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RoutingWebSite", "Routing\test\testassets\RoutingWebSite\RoutingWebSite.csproj", "{3A05A5F5-78AD-440F-9795-A8432718CB63}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tools", "tools", "{6E739429-4F29-4694-93D8-8F7F42C9C6DC}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Swaggatherer", "Routing\tools\Swaggatherer\Swaggatherer.csproj", "{A1B3C84D-206C-439D-8821-416D935CFCB5}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RoutingSandbox", "Routing\test\testassets\RoutingSandbox\RoutingSandbox.csproj", "{4F51F949-DCC3-433E-981E-0F84E7CA9D61}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{D9A5185A-1697-4B6B-B845-C13AE6DA6D3F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D9A5185A-1697-4B6B-B845-C13AE6DA6D3F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D9A5185A-1697-4B6B-B845-C13AE6DA6D3F}.Debug|x64.ActiveCfg = Debug|Any CPU
{D9A5185A-1697-4B6B-B845-C13AE6DA6D3F}.Debug|x64.Build.0 = Debug|Any CPU
{D9A5185A-1697-4B6B-B845-C13AE6DA6D3F}.Debug|x86.ActiveCfg = Debug|Any CPU
{D9A5185A-1697-4B6B-B845-C13AE6DA6D3F}.Debug|x86.Build.0 = Debug|Any CPU
{D9A5185A-1697-4B6B-B845-C13AE6DA6D3F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D9A5185A-1697-4B6B-B845-C13AE6DA6D3F}.Release|Any CPU.Build.0 = Release|Any CPU
{D9A5185A-1697-4B6B-B845-C13AE6DA6D3F}.Release|x64.ActiveCfg = Release|Any CPU
{D9A5185A-1697-4B6B-B845-C13AE6DA6D3F}.Release|x64.Build.0 = Release|Any CPU
{D9A5185A-1697-4B6B-B845-C13AE6DA6D3F}.Release|x86.ActiveCfg = Release|Any CPU
{D9A5185A-1697-4B6B-B845-C13AE6DA6D3F}.Release|x86.Build.0 = Release|Any CPU
{A69248B5-2ACE-4B52-B0B0-63AD54D52543}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A69248B5-2ACE-4B52-B0B0-63AD54D52543}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A69248B5-2ACE-4B52-B0B0-63AD54D52543}.Debug|x64.ActiveCfg = Debug|Any CPU
{A69248B5-2ACE-4B52-B0B0-63AD54D52543}.Debug|x64.Build.0 = Debug|Any CPU
{A69248B5-2ACE-4B52-B0B0-63AD54D52543}.Debug|x86.ActiveCfg = Debug|Any CPU
{A69248B5-2ACE-4B52-B0B0-63AD54D52543}.Debug|x86.Build.0 = Debug|Any CPU
{A69248B5-2ACE-4B52-B0B0-63AD54D52543}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A69248B5-2ACE-4B52-B0B0-63AD54D52543}.Release|Any CPU.Build.0 = Release|Any CPU
{A69248B5-2ACE-4B52-B0B0-63AD54D52543}.Release|x64.ActiveCfg = Release|Any CPU
{A69248B5-2ACE-4B52-B0B0-63AD54D52543}.Release|x64.Build.0 = Release|Any CPU
{A69248B5-2ACE-4B52-B0B0-63AD54D52543}.Release|x86.ActiveCfg = Release|Any CPU
{A69248B5-2ACE-4B52-B0B0-63AD54D52543}.Release|x86.Build.0 = Release|Any CPU
{5BD1EBCE-E05E-41FC-A1A8-BF36FA096F22}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5BD1EBCE-E05E-41FC-A1A8-BF36FA096F22}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5BD1EBCE-E05E-41FC-A1A8-BF36FA096F22}.Debug|x64.ActiveCfg = Debug|Any CPU
{5BD1EBCE-E05E-41FC-A1A8-BF36FA096F22}.Debug|x64.Build.0 = Debug|Any CPU
{5BD1EBCE-E05E-41FC-A1A8-BF36FA096F22}.Debug|x86.ActiveCfg = Debug|Any CPU
{5BD1EBCE-E05E-41FC-A1A8-BF36FA096F22}.Debug|x86.Build.0 = Debug|Any CPU
{5BD1EBCE-E05E-41FC-A1A8-BF36FA096F22}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5BD1EBCE-E05E-41FC-A1A8-BF36FA096F22}.Release|Any CPU.Build.0 = Release|Any CPU
{5BD1EBCE-E05E-41FC-A1A8-BF36FA096F22}.Release|x64.ActiveCfg = Release|Any CPU
{5BD1EBCE-E05E-41FC-A1A8-BF36FA096F22}.Release|x64.Build.0 = Release|Any CPU
{5BD1EBCE-E05E-41FC-A1A8-BF36FA096F22}.Release|x86.ActiveCfg = Release|Any CPU
{5BD1EBCE-E05E-41FC-A1A8-BF36FA096F22}.Release|x86.Build.0 = Release|Any CPU
{3F9CEBB1-A50D-4869-B555-81E572E62D18}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3F9CEBB1-A50D-4869-B555-81E572E62D18}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3F9CEBB1-A50D-4869-B555-81E572E62D18}.Debug|x64.ActiveCfg = Debug|Any CPU
{3F9CEBB1-A50D-4869-B555-81E572E62D18}.Debug|x64.Build.0 = Debug|Any CPU
{3F9CEBB1-A50D-4869-B555-81E572E62D18}.Debug|x86.ActiveCfg = Debug|Any CPU
{3F9CEBB1-A50D-4869-B555-81E572E62D18}.Debug|x86.Build.0 = Debug|Any CPU
{3F9CEBB1-A50D-4869-B555-81E572E62D18}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3F9CEBB1-A50D-4869-B555-81E572E62D18}.Release|Any CPU.Build.0 = Release|Any CPU
{3F9CEBB1-A50D-4869-B555-81E572E62D18}.Release|x64.ActiveCfg = Release|Any CPU
{3F9CEBB1-A50D-4869-B555-81E572E62D18}.Release|x64.Build.0 = Release|Any CPU
{3F9CEBB1-A50D-4869-B555-81E572E62D18}.Release|x86.ActiveCfg = Release|Any CPU
{3F9CEBB1-A50D-4869-B555-81E572E62D18}.Release|x86.Build.0 = Release|Any CPU
{C9C9FAB5-0A0D-4334-9A7D-C83C38EB29B0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C9C9FAB5-0A0D-4334-9A7D-C83C38EB29B0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C9C9FAB5-0A0D-4334-9A7D-C83C38EB29B0}.Debug|x64.ActiveCfg = Debug|Any CPU
{C9C9FAB5-0A0D-4334-9A7D-C83C38EB29B0}.Debug|x64.Build.0 = Debug|Any CPU
{C9C9FAB5-0A0D-4334-9A7D-C83C38EB29B0}.Debug|x86.ActiveCfg = Debug|Any CPU
{C9C9FAB5-0A0D-4334-9A7D-C83C38EB29B0}.Debug|x86.Build.0 = Debug|Any CPU
{C9C9FAB5-0A0D-4334-9A7D-C83C38EB29B0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C9C9FAB5-0A0D-4334-9A7D-C83C38EB29B0}.Release|Any CPU.Build.0 = Release|Any CPU
{C9C9FAB5-0A0D-4334-9A7D-C83C38EB29B0}.Release|x64.ActiveCfg = Release|Any CPU
{C9C9FAB5-0A0D-4334-9A7D-C83C38EB29B0}.Release|x64.Build.0 = Release|Any CPU
{C9C9FAB5-0A0D-4334-9A7D-C83C38EB29B0}.Release|x86.ActiveCfg = Release|Any CPU
{C9C9FAB5-0A0D-4334-9A7D-C83C38EB29B0}.Release|x86.Build.0 = Release|Any CPU
{32C5C558-E104-4DC4-9311-890697DE8D65}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{32C5C558-E104-4DC4-9311-890697DE8D65}.Debug|Any CPU.Build.0 = Debug|Any CPU
{32C5C558-E104-4DC4-9311-890697DE8D65}.Debug|x64.ActiveCfg = Debug|Any CPU
{32C5C558-E104-4DC4-9311-890697DE8D65}.Debug|x64.Build.0 = Debug|Any CPU
{32C5C558-E104-4DC4-9311-890697DE8D65}.Debug|x86.ActiveCfg = Debug|Any CPU
{32C5C558-E104-4DC4-9311-890697DE8D65}.Debug|x86.Build.0 = Debug|Any CPU
{32C5C558-E104-4DC4-9311-890697DE8D65}.Release|Any CPU.ActiveCfg = Release|Any CPU
{32C5C558-E104-4DC4-9311-890697DE8D65}.Release|Any CPU.Build.0 = Release|Any CPU
{32C5C558-E104-4DC4-9311-890697DE8D65}.Release|x64.ActiveCfg = Release|Any CPU
{32C5C558-E104-4DC4-9311-890697DE8D65}.Release|x64.Build.0 = Release|Any CPU
{32C5C558-E104-4DC4-9311-890697DE8D65}.Release|x86.ActiveCfg = Release|Any CPU
{32C5C558-E104-4DC4-9311-890697DE8D65}.Release|x86.Build.0 = Release|Any CPU
{490C00C6-4B63-4E1B-95AB-EDEB7532D4B2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{490C00C6-4B63-4E1B-95AB-EDEB7532D4B2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{490C00C6-4B63-4E1B-95AB-EDEB7532D4B2}.Debug|x64.ActiveCfg = Debug|Any CPU
{490C00C6-4B63-4E1B-95AB-EDEB7532D4B2}.Debug|x64.Build.0 = Debug|Any CPU
{490C00C6-4B63-4E1B-95AB-EDEB7532D4B2}.Debug|x86.ActiveCfg = Debug|Any CPU
{490C00C6-4B63-4E1B-95AB-EDEB7532D4B2}.Debug|x86.Build.0 = Debug|Any CPU
{490C00C6-4B63-4E1B-95AB-EDEB7532D4B2}.Release|Any CPU.ActiveCfg = Release|Any CPU
{490C00C6-4B63-4E1B-95AB-EDEB7532D4B2}.Release|Any CPU.Build.0 = Release|Any CPU
{490C00C6-4B63-4E1B-95AB-EDEB7532D4B2}.Release|x64.ActiveCfg = Release|Any CPU
{490C00C6-4B63-4E1B-95AB-EDEB7532D4B2}.Release|x64.Build.0 = Release|Any CPU
{490C00C6-4B63-4E1B-95AB-EDEB7532D4B2}.Release|x86.ActiveCfg = Release|Any CPU
{490C00C6-4B63-4E1B-95AB-EDEB7532D4B2}.Release|x86.Build.0 = Release|Any CPU
{3A05A5F5-78AD-440F-9795-A8432718CB63}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3A05A5F5-78AD-440F-9795-A8432718CB63}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3A05A5F5-78AD-440F-9795-A8432718CB63}.Debug|x64.ActiveCfg = Debug|Any CPU
{3A05A5F5-78AD-440F-9795-A8432718CB63}.Debug|x64.Build.0 = Debug|Any CPU
{3A05A5F5-78AD-440F-9795-A8432718CB63}.Debug|x86.ActiveCfg = Debug|Any CPU
{3A05A5F5-78AD-440F-9795-A8432718CB63}.Debug|x86.Build.0 = Debug|Any CPU
{3A05A5F5-78AD-440F-9795-A8432718CB63}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3A05A5F5-78AD-440F-9795-A8432718CB63}.Release|Any CPU.Build.0 = Release|Any CPU
{3A05A5F5-78AD-440F-9795-A8432718CB63}.Release|x64.ActiveCfg = Release|Any CPU
{3A05A5F5-78AD-440F-9795-A8432718CB63}.Release|x64.Build.0 = Release|Any CPU
{3A05A5F5-78AD-440F-9795-A8432718CB63}.Release|x86.ActiveCfg = Release|Any CPU
{3A05A5F5-78AD-440F-9795-A8432718CB63}.Release|x86.Build.0 = Release|Any CPU
{A1B3C84D-206C-439D-8821-416D935CFCB5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A1B3C84D-206C-439D-8821-416D935CFCB5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A1B3C84D-206C-439D-8821-416D935CFCB5}.Debug|x64.ActiveCfg = Debug|Any CPU
{A1B3C84D-206C-439D-8821-416D935CFCB5}.Debug|x64.Build.0 = Debug|Any CPU
{A1B3C84D-206C-439D-8821-416D935CFCB5}.Debug|x86.ActiveCfg = Debug|Any CPU
{A1B3C84D-206C-439D-8821-416D935CFCB5}.Debug|x86.Build.0 = Debug|Any CPU
{A1B3C84D-206C-439D-8821-416D935CFCB5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A1B3C84D-206C-439D-8821-416D935CFCB5}.Release|Any CPU.Build.0 = Release|Any CPU
{A1B3C84D-206C-439D-8821-416D935CFCB5}.Release|x64.ActiveCfg = Release|Any CPU
{A1B3C84D-206C-439D-8821-416D935CFCB5}.Release|x64.Build.0 = Release|Any CPU
{A1B3C84D-206C-439D-8821-416D935CFCB5}.Release|x86.ActiveCfg = Release|Any CPU
{A1B3C84D-206C-439D-8821-416D935CFCB5}.Release|x86.Build.0 = Release|Any CPU
{4F51F949-DCC3-433E-981E-0F84E7CA9D61}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4F51F949-DCC3-433E-981E-0F84E7CA9D61}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4F51F949-DCC3-433E-981E-0F84E7CA9D61}.Debug|x64.ActiveCfg = Debug|Any CPU
{4F51F949-DCC3-433E-981E-0F84E7CA9D61}.Debug|x64.Build.0 = Debug|Any CPU
{4F51F949-DCC3-433E-981E-0F84E7CA9D61}.Debug|x86.ActiveCfg = Debug|Any CPU
{4F51F949-DCC3-433E-981E-0F84E7CA9D61}.Debug|x86.Build.0 = Debug|Any CPU
{4F51F949-DCC3-433E-981E-0F84E7CA9D61}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4F51F949-DCC3-433E-981E-0F84E7CA9D61}.Release|Any CPU.Build.0 = Release|Any CPU
{4F51F949-DCC3-433E-981E-0F84E7CA9D61}.Release|x64.ActiveCfg = Release|Any CPU
{4F51F949-DCC3-433E-981E-0F84E7CA9D61}.Release|x64.Build.0 = Release|Any CPU
{4F51F949-DCC3-433E-981E-0F84E7CA9D61}.Release|x86.ActiveCfg = Release|Any CPU
{4F51F949-DCC3-433E-981E-0F84E7CA9D61}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{D9A5185A-1697-4B6B-B845-C13AE6DA6D3F} = {240298B6-6729-4844-9B30-B8BC0CD12772}
{A69248B5-2ACE-4B52-B0B0-63AD54D52543} = {240298B6-6729-4844-9B30-B8BC0CD12772}
{8B2D195B-4997-4CCE-9846-4A848A6F258D} = {240298B6-6729-4844-9B30-B8BC0CD12772}
{5BD1EBCE-E05E-41FC-A1A8-BF36FA096F22} = {8B2D195B-4997-4CCE-9846-4A848A6F258D}
{3F9CEBB1-A50D-4869-B555-81E572E62D18} = {8B2D195B-4997-4CCE-9846-4A848A6F258D}
{C9C9FAB5-0A0D-4334-9A7D-C83C38EB29B0} = {485B8E11-FC7C-464F-8CB2-A164DAB30D58}
{32C5C558-E104-4DC4-9311-890697DE8D65} = {485B8E11-FC7C-464F-8CB2-A164DAB30D58}
{EDF2E5EF-EAEC-4B51-8473-857531557DAE} = {8B2D195B-4997-4CCE-9846-4A848A6F258D}
{490C00C6-4B63-4E1B-95AB-EDEB7532D4B2} = {EDF2E5EF-EAEC-4B51-8473-857531557DAE}
{3A05A5F5-78AD-440F-9795-A8432718CB63} = {EDF2E5EF-EAEC-4B51-8473-857531557DAE}
{6E739429-4F29-4694-93D8-8F7F42C9C6DC} = {240298B6-6729-4844-9B30-B8BC0CD12772}
{A1B3C84D-206C-439D-8821-416D935CFCB5} = {6E739429-4F29-4694-93D8-8F7F42C9C6DC}
{4F51F949-DCC3-433E-981E-0F84E7CA9D61} = {EDF2E5EF-EAEC-4B51-8473-857531557DAE}
EndGlobalSection
EndGlobal

View File

@ -0,0 +1,47 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp2.2</TargetFramework>
<OutputType>Exe</OutputType>
<ServerGarbageCollection>true</ServerGarbageCollection>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<IsPackable>false</IsPackable>
<RootNamespace>Microsoft.AspNetCore.Routing</RootNamespace>
</PropertyGroup>
<!--
Some sources are shared with the unit test so we can benchmark some 'test only' implementations
for perf comparisons.
-->
<ItemGroup>
<Compile Include="..\test\UnitTests\Matching\BarebonesMatcher.cs">
<Link>Matching\BarebonesMatcher.cs</Link>
</Compile>
<Compile Include="..\test\UnitTests\Matching\BarebonesMatcherBuilder.cs">
<Link>Matching\BarebonesMatcherBuilder.cs</Link>
</Compile>
<Compile Include="..\test\UnitTests\Matching\RouteMatcher.cs">
<Link>Matching\RouteMatcher.cs</Link>
</Compile>
<Compile Include="..\test\UnitTests\Matching\RouteMatcherBuilder.cs">
<Link>Matching\RouteMatcherBuilder.cs</Link>
</Compile>
<Compile Include="..\test\UnitTests\Matching\TreeRouterMatcher.cs">
<Link>Matching\TreeRouterMatcher.cs</Link>
</Compile>
<Compile Include="..\test\UnitTests\Matching\TreeRouterMatcherBuilder.cs">
<Link>Matching\TreeRouterMatcherBuilder.cs</Link>
</Compile>
<Compile Include="..\test\UnitTests\TestObjects\TestServiceProvider.cs" Link="Matching\TestServiceProvider.cs" />
</ItemGroup>
<ItemGroup>
<Reference Include="BenchmarkDotNet" />
<Reference Include="Microsoft.AspNetCore.BenchmarkRunner.Sources" PrivateAssets="All" />
<Reference Include="Microsoft.AspNetCore.Http" />
<Reference Include="Microsoft.AspNetCore.Routing" />
<Reference Include="Microsoft.Extensions.DependencyInjection" />
<Reference Include="Microsoft.Extensions.Logging" />
</ItemGroup>
</Project>

Some files were not shown because too many files have changed in this diff Show More