diff --git a/Directory.Build.targets b/Directory.Build.targets
index 880125934a..47fc0c1fb9 100644
--- a/Directory.Build.targets
+++ b/Directory.Build.targets
@@ -9,7 +9,7 @@
- true
+ true
$(PackagesInPatch.Contains(' $(PackageId);'))
diff --git a/THIRD-PARTY-NOTICES.txt b/THIRD-PARTY-NOTICES.txt
index d1bf499032..5e6431e7c6 100644
--- a/THIRD-PARTY-NOTICES.txt
+++ b/THIRD-PARTY-NOTICES.txt
@@ -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.
diff --git a/build/PackageArchive.targets b/build/PackageArchive.targets
index 0eea5b6c15..a660b6c317 100644
--- a/build/PackageArchive.targets
+++ b/build/PackageArchive.targets
@@ -8,7 +8,7 @@
-
+
DotNetRestoreSourcePropsPath=$(GeneratedRestoreSourcesPropsPath);
diff --git a/build/Publish.targets b/build/Publish.targets
index ffb4352ef7..19d87fb73f 100644
--- a/build/Publish.targets
+++ b/build/Publish.targets
@@ -73,11 +73,15 @@
$(BlobBasePath)nuGetPackagesArchive-ci-server-$(PackageVersion).zip
-
+
+
$(BlobBasePath)nuGetPackagesArchive-ci-server-$(PackageVersion).patch.zip
-
+
+
$(BlobBasePath)nuGetPackagesArchive-ci-server-compat-$(PackageVersion).patch.zip
diff --git a/build/RepositoryBuild.targets b/build/RepositoryBuild.targets
index 422f764372..ebddfae39d 100644
--- a/build/RepositoryBuild.targets
+++ b/build/RepositoryBuild.targets
@@ -87,6 +87,8 @@
$(RepositoryBuildArguments) /p:BuildNumberSuffix=$(BuildNumberSuffix)
$(RepositoryBuildArguments) /p:Configuration=$(Configuration)
$(RepositoryBuildArguments) /p:IsFinalBuild=$(IsFinalBuild)
+
+ $(RepositoryBuildArguments) /p:DisableCodeSigning=true
$(RepositoryBuildArguments) '/p:DotNetAssetRootAccessTokenSuffix=$(DotNetAssetRootAccessTokenSuffix)'
$(RepositoryBuildArguments) '/p:DotNetAssetRootUrl=$(DotNetAssetRootUrl)'
$(RepositoryBuildArguments) /p:SkipAspNetCoreRuntimeInstall=true
diff --git a/build/SharedFx.targets b/build/SharedFx.targets
index 3ee7a60b28..d5439003ac 100644
--- a/build/SharedFx.targets
+++ b/build/SharedFx.targets
@@ -55,7 +55,7 @@
-
diff --git a/build/artifacts.props b/build/artifacts.props
index 981b91d9e7..99da02a39d 100644
--- a/build/artifacts.props
+++ b/build/artifacts.props
@@ -78,8 +78,6 @@
-
-
@@ -119,7 +117,6 @@
-
@@ -145,7 +142,6 @@
-
@@ -165,9 +161,8 @@
-
-
+
diff --git a/build/buildorder.props b/build/buildorder.props
index 0788b3bc30..60ed7c44db 100644
--- a/build/buildorder.props
+++ b/build/buildorder.props
@@ -8,7 +8,6 @@
-
@@ -16,7 +15,6 @@
-
diff --git a/build/lineups/Internal.AspNetCore.Universe.Lineup.nuspec b/build/lineups/Internal.AspNetCore.Universe.Lineup.nuspec
deleted file mode 100644
index 1209016b04..0000000000
--- a/build/lineups/Internal.AspNetCore.Universe.Lineup.nuspec
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
- Internal.AspNetCore.Universe.Lineup
- $version$
- Microsoft
- This package used to unify ASP.NET Core package versions across all ASP.NET Core repos. Internal use only.
-
-
-
-
-
-
-
-
-
diff --git a/build/repo.props b/build/repo.props
index a2ae65522d..d7723d4658 100644
--- a/build/repo.props
+++ b/build/repo.props
@@ -17,15 +17,11 @@
$(RepositoryRoot).deps\build\
$(RepositoryRoot).deps\Signed\Packages\
$(RepositoryRoot)eng\signcheck.exclusions.txt
-
- true
-
$(RepositoryRoot)src\Shared\
-
-
+
@@ -65,7 +61,7 @@
+ Exclude="
+ @(ProjectToExclude);
+ $(RepositoryRoot)**\bin\**\*;
+ $(RepositoryRoot)**\obj\**\*;
+ $(RepositoryRoot)**\AutobahnTestApp\**\*;" />
diff --git a/build/repo.targets b/build/repo.targets
index 23a5943ee1..633e318b71 100644
--- a/build/repo.targets
+++ b/build/repo.targets
@@ -72,7 +72,7 @@
-
+
$(BuildProperties);MicrosoftNETCoreAppPackageVersion=$(MicrosoftNETCoreAppPackageVersion);
@@ -178,19 +178,6 @@
-
-
-
- NuGetPackage
- Internal.AspNetCore.Universe.Lineup
- $(PackageVersion)
- noship
- true
-
-
-
-
-
<_LineupPackages Include="@(ExternalDependency)" />
@@ -234,13 +221,6 @@
-
-
-
-
@@ -248,26 +228,6 @@
-
- <_RepositoriesToInclude Include="$(KOREBUILD_REPOSITORY_INCLUDE)" />
-
-
-
-
-
- <_RepositoriesToExclude Include="$(KOREBUILD_REPOSITORY_EXCLUDE)" />
-
-
-
-
-
@@ -282,7 +242,7 @@
-
+
diff --git a/build/submodules.props b/build/submodules.props
index e99d2a76da..bffb2ef118 100644
--- a/build/submodules.props
+++ b/build/submodules.props
@@ -41,7 +41,6 @@
-
@@ -49,7 +48,6 @@
-
diff --git a/build/tasks/RemoveSharedFrameworkDependencies.cs b/build/tasks/RemoveSharedFrameworkDependencies.cs
index 59373f8067..415a3c8c58 100644
--- a/build/tasks/RemoveSharedFrameworkDependencies.cs
+++ b/build/tasks/RemoveSharedFrameworkDependencies.cs
@@ -24,7 +24,8 @@ namespace RepoTasks
public override bool Execute()
{
- var dependencyToRemove = FrameworkOnlyPackages.Select(p => p.ItemSpec).ToHashSet(StringComparer.OrdinalIgnoreCase);
+ Log.LogMessage("NuGet version = " + typeof(PackageArchiveReader).Assembly.GetName().Version);
+ var dependencyToRemove = new HashSet(FrameworkOnlyPackages.Select(p => p.ItemSpec), StringComparer.OrdinalIgnoreCase);
foreach (var file in Files)
{
diff --git a/build/tasks/RepoTasks.csproj b/build/tasks/RepoTasks.csproj
index 887291b2a0..ec31af49fe 100644
--- a/build/tasks/RepoTasks.csproj
+++ b/build/tasks/RepoTasks.csproj
@@ -2,14 +2,15 @@
- netcoreapp2.1
+ netcoreapp2.1
+ net461
-
-
+
+
diff --git a/eng/Baseline.Designer.props b/eng/Baseline.Designer.props
index ee790f3217..a826c49d88 100644
--- a/eng/Baseline.Designer.props
+++ b/eng/Baseline.Designer.props
@@ -345,6 +345,42 @@
+
+
+ 2.2.0
+
+
+
+
+
+
+ 2.2.0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 2.2.0
+
+
+
+
+
+
+
+
2.2.0
diff --git a/eng/Baseline.xml b/eng/Baseline.xml
index 8de4176b96..215d8a4170 100644
--- a/eng/Baseline.xml
+++ b/eng/Baseline.xml
@@ -39,6 +39,9 @@
+
+
+
diff --git a/eng/Dependencies.props b/eng/Dependencies.props
index 8b94c38a8d..6c24b72cae 100644
--- a/eng/Dependencies.props
+++ b/eng/Dependencies.props
@@ -19,7 +19,6 @@
-
@@ -29,11 +28,16 @@
+
+
+
+
+
@@ -42,24 +46,21 @@
-
-
-
+
-
+
-
-
+
diff --git a/eng/ProjectReferences.props b/eng/ProjectReferences.props
index a985da4c37..c98a2fe57e 100644
--- a/eng/ProjectReferences.props
+++ b/eng/ProjectReferences.props
@@ -26,9 +26,12 @@
+
+
+
diff --git a/eng/dependencies.temp.props b/eng/dependencies.temp.props
index aa54a0b4dc..fa03a64a8f 100644
--- a/eng/dependencies.temp.props
+++ b/eng/dependencies.temp.props
@@ -6,7 +6,5 @@ This is required to provide dependencies for samples and tests.
-
-
diff --git a/eng/targets/CSharp.Common.props b/eng/targets/CSharp.Common.props
index dacb5c2ab5..fe72087c07 100644
--- a/eng/targets/CSharp.Common.props
+++ b/eng/targets/CSharp.Common.props
@@ -11,4 +11,8 @@
+
+
+
+
diff --git a/eng/targets/ResolveReferences.targets b/eng/targets/ResolveReferences.targets
index caf44207ee..897a906869 100644
--- a/eng/targets/ResolveReferences.targets
+++ b/eng/targets/ResolveReferences.targets
@@ -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" />
diff --git a/global.json b/global.json
index bdcca8e1ad..5db9ff96a9 100644
--- a/global.json
+++ b/global.json
@@ -3,6 +3,6 @@
"version": "3.0.100-preview-009750"
},
"msbuild-sdks": {
- "Internal.AspNetCore.Sdk": "3.0.0-build-20181120.4"
+ "Internal.AspNetCore.Sdk": "3.0.0-build-20181206.3"
}
}
diff --git a/korebuild-lock.txt b/korebuild-lock.txt
index 0970da4378..817bd1a035 100644
--- a/korebuild-lock.txt
+++ b/korebuild-lock.txt
@@ -1,2 +1,2 @@
-version:3.0.0-build-20181120.4
-commithash:84dcc6f0eb5455a3c0305d6d238926defb050889
+version:3.0.0-build-20181206.3
+commithash:96a199c48729398e013355167c21dd61ff0c574c
diff --git a/korebuild.json b/korebuild.json
index 2a75c43d76..5b5fdb21dd 100644
--- a/korebuild.json
+++ b/korebuild.json
@@ -1,10 +1,24 @@
{
"$schema": "https://raw.githubusercontent.com/aspnet/BuildTools/master/tools/korebuild.schema.json",
"channel": "master",
+ "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"
+ ]
}
}
}
diff --git a/scripts/GenerateTags.ps1 b/scripts/GenerateTags.ps1
deleted file mode 100755
index bc57cd8cbe..0000000000
--- a/scripts/GenerateTags.ps1
+++ /dev/null
@@ -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
-}
diff --git a/scripts/GetPackageVersion.targets b/scripts/GetPackageVersion.targets
deleted file mode 100644
index 061c114027..0000000000
--- a/scripts/GetPackageVersion.targets
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
diff --git a/scripts/ListRepoVersions.ps1 b/scripts/ListRepoVersions.ps1
deleted file mode 100644
index 06ba399166..0000000000
--- a/scripts/ListRepoVersions.ps1
+++ /dev/null
@@ -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'
diff --git a/scripts/PatchVersionPrefix.ps1 b/scripts/PatchVersionPrefix.ps1
deleted file mode 100755
index d8cce86487..0000000000
--- a/scripts/PatchVersionPrefix.ps1
+++ /dev/null
@@ -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
- }
-}
-
diff --git a/scripts/TagRepos.ps1 b/scripts/TagRepos.ps1
deleted file mode 100644
index 2bb595027c..0000000000
--- a/scripts/TagRepos.ps1
+++ /dev/null
@@ -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
- }
-}
-
-
diff --git a/scripts/UpdateDependenciesCoreFx.ps1 b/scripts/UpdateDependenciesCoreFx.ps1
deleted file mode 100644
index 03be551f8a..0000000000
--- a/scripts/UpdateDependenciesCoreFx.ps1
+++ /dev/null
@@ -1,134 +0,0 @@
-
-[CmdletBinding()]
-param(
- [switch]$NoCommit,
- [string]$GithubEmail,
- [string]$GithubUsername,
- [string]$GithubToken
-)
-# This script only works against master at the moment because only master prod-con builds allow you to access their results before the entire chain is finished.
-
-$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 = "master"
- 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 }
- }
-}
diff --git a/scripts/UpdateRepos.ps1 b/scripts/UpdateRepos.ps1
deleted file mode 100755
index 6db78658b2..0000000000
--- a/scripts/UpdateRepos.ps1
+++ /dev/null
@@ -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
-}
diff --git a/scripts/requirements.txt b/scripts/requirements.txt
deleted file mode 100644
index a550da3e64..0000000000
--- a/scripts/requirements.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-PyYAML==3.12
-termcolor==1.1.0
diff --git a/scripts/update_travis_appveyor_yml.py b/scripts/update_travis_appveyor_yml.py
deleted file mode 100755
index 07fde1a9bf..0000000000
--- a/scripts/update_travis_appveyor_yml.py
+++ /dev/null
@@ -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'] = [
- 'master', '/^release\/.*$/', '/^(.*\/)?ci-.*$/']
- return document
-
-update(".travis.yml", transform_yaml_doc)
-update(".appveyor.yml", transform_yaml_doc)
diff --git a/src/AADIntegration/build/repo.props b/src/AADIntegration/build/repo.props
index 4402da1d0d..00a0c65cc2 100644
--- a/src/AADIntegration/build/repo.props
+++ b/src/AADIntegration/build/repo.props
@@ -1,12 +1,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/Antiforgery/build/repo.props b/src/Antiforgery/build/repo.props
index 08097e1589..e3e0fa123b 100644
--- a/src/Antiforgery/build/repo.props
+++ b/src/Antiforgery/build/repo.props
@@ -1,11 +1,6 @@
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/AuthSamples/build/repo.props b/src/AuthSamples/build/repo.props
index d6552727a6..aa7e07e780 100644
--- a/src/AuthSamples/build/repo.props
+++ b/src/AuthSamples/build/repo.props
@@ -1,12 +1,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/AzureIntegration/build/repo.props b/src/AzureIntegration/build/repo.props
index a8505ea0f4..f3a8446fbb 100644
--- a/src/AzureIntegration/build/repo.props
+++ b/src/AzureIntegration/build/repo.props
@@ -3,10 +3,6 @@
$(RepositoryRoot)test\Microsoft.AspNetCore.AzureAppServices.FunctionalTests\Microsoft.AspNetCore.AzureAppServices.FunctionalTests.csproj
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
diff --git a/src/CORS/build/repo.props b/src/CORS/build/repo.props
index 4402da1d0d..00a0c65cc2 100644
--- a/src/CORS/build/repo.props
+++ b/src/CORS/build/repo.props
@@ -1,12 +1,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/CORS/test/FunctionalTests/package-lock.json b/src/CORS/test/FunctionalTests/package-lock.json
index d9ea7ae2f6..c2a6f2c7d6 100644
--- a/src/CORS/test/FunctionalTests/package-lock.json
+++ b/src/CORS/test/FunctionalTests/package-lock.json
@@ -1668,7 +1668,8 @@
"ansi-regex": {
"version": "2.1.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"aproba": {
"version": "1.2.0",
@@ -2083,7 +2084,8 @@
"safe-buffer": {
"version": "5.1.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"safer-buffer": {
"version": "2.1.2",
@@ -2139,6 +2141,7 @@
"version": "3.0.1",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@@ -2182,12 +2185,14 @@
"wrappy": {
"version": "1.0.2",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"yallist": {
"version": "3.0.2",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
}
}
},
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/IOutboundParameterTransformer.cs b/src/Http/Routing.Abstractions/src/IOutboundParameterTransformer.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/IOutboundParameterTransformer.cs
rename to src/Http/Routing.Abstractions/src/IOutboundParameterTransformer.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/IParameterPolicy.cs b/src/Http/Routing.Abstractions/src/IParameterPolicy.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/IParameterPolicy.cs
rename to src/Http/Routing.Abstractions/src/IParameterPolicy.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/IRouteConstraint.cs b/src/Http/Routing.Abstractions/src/IRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/IRouteConstraint.cs
rename to src/Http/Routing.Abstractions/src/IRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/IRouteHandler.cs b/src/Http/Routing.Abstractions/src/IRouteHandler.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/IRouteHandler.cs
rename to src/Http/Routing.Abstractions/src/IRouteHandler.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/IRouter.cs b/src/Http/Routing.Abstractions/src/IRouter.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/IRouter.cs
rename to src/Http/Routing.Abstractions/src/IRouter.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/IRoutingFeature.cs b/src/Http/Routing.Abstractions/src/IRoutingFeature.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/IRoutingFeature.cs
rename to src/Http/Routing.Abstractions/src/IRoutingFeature.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/LinkGenerator.cs b/src/Http/Routing.Abstractions/src/LinkGenerator.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/LinkGenerator.cs
rename to src/Http/Routing.Abstractions/src/LinkGenerator.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/LinkOptions.cs b/src/Http/Routing.Abstractions/src/LinkOptions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/LinkOptions.cs
rename to src/Http/Routing.Abstractions/src/LinkOptions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/Microsoft.AspNetCore.Routing.Abstractions.csproj b/src/Http/Routing.Abstractions/src/Microsoft.AspNetCore.Routing.Abstractions.csproj
similarity index 64%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/Microsoft.AspNetCore.Routing.Abstractions.csproj
rename to src/Http/Routing.Abstractions/src/Microsoft.AspNetCore.Routing.Abstractions.csproj
index 559550f7ed..d1bdb37d78 100644
--- a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/Microsoft.AspNetCore.Routing.Abstractions.csproj
+++ b/src/Http/Routing.Abstractions/src/Microsoft.AspNetCore.Routing.Abstractions.csproj
@@ -12,7 +12,7 @@ Microsoft.AspNetCore.Routing.RouteData
-
-
+
+
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/Properties/AssemblyInfo.cs b/src/Http/Routing.Abstractions/src/Properties/AssemblyInfo.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/Properties/AssemblyInfo.cs
rename to src/Http/Routing.Abstractions/src/Properties/AssemblyInfo.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/RouteContext.cs b/src/Http/Routing.Abstractions/src/RouteContext.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/RouteContext.cs
rename to src/Http/Routing.Abstractions/src/RouteContext.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/RouteData.cs b/src/Http/Routing.Abstractions/src/RouteData.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/RouteData.cs
rename to src/Http/Routing.Abstractions/src/RouteData.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/RouteDirection.cs b/src/Http/Routing.Abstractions/src/RouteDirection.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/RouteDirection.cs
rename to src/Http/Routing.Abstractions/src/RouteDirection.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/RoutingHttpContextExtensions.cs b/src/Http/Routing.Abstractions/src/RoutingHttpContextExtensions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/RoutingHttpContextExtensions.cs
rename to src/Http/Routing.Abstractions/src/RoutingHttpContextExtensions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/VirtualPathContext.cs b/src/Http/Routing.Abstractions/src/VirtualPathContext.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/VirtualPathContext.cs
rename to src/Http/Routing.Abstractions/src/VirtualPathContext.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/VirtualPathData.cs b/src/Http/Routing.Abstractions/src/VirtualPathData.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/VirtualPathData.cs
rename to src/Http/Routing.Abstractions/src/VirtualPathData.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/baseline.netcore.json b/src/Http/Routing.Abstractions/src/baseline.netcore.json
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing.Abstractions/baseline.netcore.json
rename to src/Http/Routing.Abstractions/src/baseline.netcore.json
diff --git a/src/Http/Routing.Abstractions/test/Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests.csproj b/src/Http/Routing.Abstractions/test/Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests.csproj
new file mode 100644
index 0000000000..d760821d8f
--- /dev/null
+++ b/src/Http/Routing.Abstractions/test/Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests.csproj
@@ -0,0 +1,11 @@
+
+
+
+ netcoreapp3.0
+
+
+
+
+
+
+
diff --git a/src/Routing/test/Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests/RouteDataTest.cs b/src/Http/Routing.Abstractions/test/RouteDataTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests/RouteDataTest.cs
rename to src/Http/Routing.Abstractions/test/RouteDataTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests/VirtualPathDataTests.cs b/src/Http/Routing.Abstractions/test/VirtualPathDataTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests/VirtualPathDataTests.cs
rename to src/Http/Routing.Abstractions/test/VirtualPathDataTests.cs
diff --git a/src/Http/Routing.sln b/src/Http/Routing.sln
new file mode 100644
index 0000000000..6de5d61b43
--- /dev/null
+++ b/src/Http/Routing.sln
@@ -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
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/EndpointMetadataCollectionBenchmark.cs b/src/Http/Routing/perf/EndpointMetadataCollectionBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/EndpointMetadataCollectionBenchmark.cs
rename to src/Http/Routing/perf/EndpointMetadataCollectionBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/EndpointRoutingBenchmarkBase.cs b/src/Http/Routing/perf/EndpointRoutingBenchmarkBase.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/EndpointRoutingBenchmarkBase.cs
rename to src/Http/Routing/perf/EndpointRoutingBenchmarkBase.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/LinkGeneration/LinkGenerationGithubBenchmark.cs b/src/Http/Routing/perf/LinkGeneration/LinkGenerationGithubBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/LinkGeneration/LinkGenerationGithubBenchmark.cs
rename to src/Http/Routing/perf/LinkGeneration/LinkGenerationGithubBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/LinkGeneration/LinkGenerationGithubBenchmark.generated.cs b/src/Http/Routing/perf/LinkGeneration/LinkGenerationGithubBenchmark.generated.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/LinkGeneration/LinkGenerationGithubBenchmark.generated.cs
rename to src/Http/Routing/perf/LinkGeneration/LinkGenerationGithubBenchmark.generated.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/LinkGeneration/SingleRouteRouteValuesAddressSchemeBenchmark.cs b/src/Http/Routing/perf/LinkGeneration/SingleRouteRouteValuesAddressSchemeBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/LinkGeneration/SingleRouteRouteValuesAddressSchemeBenchmark.cs
rename to src/Http/Routing/perf/LinkGeneration/SingleRouteRouteValuesAddressSchemeBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/LinkGeneration/SingleRouteWithConstraintsBenchmark.cs b/src/Http/Routing/perf/LinkGeneration/SingleRouteWithConstraintsBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/LinkGeneration/SingleRouteWithConstraintsBenchmark.cs
rename to src/Http/Routing/perf/LinkGeneration/SingleRouteWithConstraintsBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/LinkGeneration/SingleRouteWithNoParametersBenchmark.cs b/src/Http/Routing/perf/LinkGeneration/SingleRouteWithNoParametersBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/LinkGeneration/SingleRouteWithNoParametersBenchmark.cs
rename to src/Http/Routing/perf/LinkGeneration/SingleRouteWithNoParametersBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/LinkGeneration/SingleRouteWithParametersBenchmark.cs b/src/Http/Routing/perf/LinkGeneration/SingleRouteWithParametersBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/LinkGeneration/SingleRouteWithParametersBenchmark.cs
rename to src/Http/Routing/perf/LinkGeneration/SingleRouteWithParametersBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/FastPathTokenizerBenchmarkBase.cs b/src/Http/Routing/perf/Matching/FastPathTokenizerBenchmarkBase.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/FastPathTokenizerBenchmarkBase.cs
rename to src/Http/Routing/perf/Matching/FastPathTokenizerBenchmarkBase.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/FastPathTokenizerEmptyBenchmark.cs b/src/Http/Routing/perf/Matching/FastPathTokenizerEmptyBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/FastPathTokenizerEmptyBenchmark.cs
rename to src/Http/Routing/perf/Matching/FastPathTokenizerEmptyBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/FastPathTokenizerLargeBenchmark.cs b/src/Http/Routing/perf/Matching/FastPathTokenizerLargeBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/FastPathTokenizerLargeBenchmark.cs
rename to src/Http/Routing/perf/Matching/FastPathTokenizerLargeBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/FastPathTokenizerPlaintextBenchmark.cs b/src/Http/Routing/perf/Matching/FastPathTokenizerPlaintextBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/FastPathTokenizerPlaintextBenchmark.cs
rename to src/Http/Routing/perf/Matching/FastPathTokenizerPlaintextBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/FastPathTokenizerSmallBenchmark.cs b/src/Http/Routing/perf/Matching/FastPathTokenizerSmallBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/FastPathTokenizerSmallBenchmark.cs
rename to src/Http/Routing/perf/Matching/FastPathTokenizerSmallBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/JumpTableMultipleEntryBenchmark.cs b/src/Http/Routing/perf/Matching/JumpTableMultipleEntryBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/JumpTableMultipleEntryBenchmark.cs
rename to src/Http/Routing/perf/Matching/JumpTableMultipleEntryBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/JumpTableSingleEntryBenchmark.cs b/src/Http/Routing/perf/Matching/JumpTableSingleEntryBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/JumpTableSingleEntryBenchmark.cs
rename to src/Http/Routing/perf/Matching/JumpTableSingleEntryBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/JumpTableZeroEntryBenchmark.cs b/src/Http/Routing/perf/Matching/JumpTableZeroEntryBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/JumpTableZeroEntryBenchmark.cs
rename to src/Http/Routing/perf/Matching/JumpTableZeroEntryBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherAzureBenchmark.cs b/src/Http/Routing/perf/Matching/MatcherAzureBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherAzureBenchmark.cs
rename to src/Http/Routing/perf/Matching/MatcherAzureBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherAzureBenchmarkBase.generated.cs b/src/Http/Routing/perf/Matching/MatcherAzureBenchmarkBase.generated.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherAzureBenchmarkBase.generated.cs
rename to src/Http/Routing/perf/Matching/MatcherAzureBenchmarkBase.generated.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherBuilderAzureBenchmark.cs b/src/Http/Routing/perf/Matching/MatcherBuilderAzureBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherBuilderAzureBenchmark.cs
rename to src/Http/Routing/perf/Matching/MatcherBuilderAzureBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherBuilderGithubBenchmark.cs b/src/Http/Routing/perf/Matching/MatcherBuilderGithubBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherBuilderGithubBenchmark.cs
rename to src/Http/Routing/perf/Matching/MatcherBuilderGithubBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherBuilderMultipleEntryBenchmark.cs b/src/Http/Routing/perf/Matching/MatcherBuilderMultipleEntryBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherBuilderMultipleEntryBenchmark.cs
rename to src/Http/Routing/perf/Matching/MatcherBuilderMultipleEntryBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherGithubBenchmark.cs b/src/Http/Routing/perf/Matching/MatcherGithubBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherGithubBenchmark.cs
rename to src/Http/Routing/perf/Matching/MatcherGithubBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherGithubBenchmarkBase.generated.cs b/src/Http/Routing/perf/Matching/MatcherGithubBenchmarkBase.generated.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherGithubBenchmarkBase.generated.cs
rename to src/Http/Routing/perf/Matching/MatcherGithubBenchmarkBase.generated.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherSingleEntryBenchmark.cs b/src/Http/Routing/perf/Matching/MatcherSingleEntryBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/MatcherSingleEntryBenchmark.cs
rename to src/Http/Routing/perf/Matching/MatcherSingleEntryBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/RouteEndpointAzureBenchmark.cs b/src/Http/Routing/perf/Matching/RouteEndpointAzureBenchmark.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/RouteEndpointAzureBenchmark.cs
rename to src/Http/Routing/perf/Matching/RouteEndpointAzureBenchmark.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/TrivialMatcher.cs b/src/Http/Routing/perf/Matching/TrivialMatcher.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/TrivialMatcher.cs
rename to src/Http/Routing/perf/Matching/TrivialMatcher.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/TrivialMatcherBuilder.cs b/src/Http/Routing/perf/Matching/TrivialMatcherBuilder.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Matching/TrivialMatcherBuilder.cs
rename to src/Http/Routing/perf/Matching/TrivialMatcherBuilder.cs
diff --git a/src/Http/Routing/perf/Microsoft.AspNetCore.Routing.Performance.csproj b/src/Http/Routing/perf/Microsoft.AspNetCore.Routing.Performance.csproj
new file mode 100644
index 0000000000..18e7f59325
--- /dev/null
+++ b/src/Http/Routing/perf/Microsoft.AspNetCore.Routing.Performance.csproj
@@ -0,0 +1,47 @@
+
+
+
+ netcoreapp3.0
+ Exe
+ true
+ true
+ false
+ Microsoft.AspNetCore.Routing
+
+
+
+
+
+ Matching\BarebonesMatcher.cs
+
+
+ Matching\BarebonesMatcherBuilder.cs
+
+
+ Matching\RouteMatcher.cs
+
+
+ Matching\RouteMatcherBuilder.cs
+
+
+ Matching\TreeRouterMatcher.cs
+
+
+ Matching\TreeRouterMatcherBuilder.cs
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Properties/AssemblyInfo.cs b/src/Http/Routing/perf/Properties/AssemblyInfo.cs
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Properties/AssemblyInfo.cs
rename to src/Http/Routing/perf/Properties/AssemblyInfo.cs
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/readme.md b/src/Http/Routing/perf/readme.md
similarity index 100%
rename from src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/readme.md
rename to src/Http/Routing/perf/readme.md
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Builder/EndpointRouteBuilderExtensions.cs b/src/Http/Routing/src/Builder/EndpointRouteBuilderExtensions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Builder/EndpointRouteBuilderExtensions.cs
rename to src/Http/Routing/src/Builder/EndpointRouteBuilderExtensions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Builder/EndpointRoutingApplicationBuilderExtensions.cs b/src/Http/Routing/src/Builder/EndpointRoutingApplicationBuilderExtensions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Builder/EndpointRoutingApplicationBuilderExtensions.cs
rename to src/Http/Routing/src/Builder/EndpointRoutingApplicationBuilderExtensions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Builder/RoutingBuilderExtensions.cs b/src/Http/Routing/src/Builder/RoutingBuilderExtensions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Builder/RoutingBuilderExtensions.cs
rename to src/Http/Routing/src/Builder/RoutingBuilderExtensions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/CompositeEndpointDataSource.cs b/src/Http/Routing/src/CompositeEndpointDataSource.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/CompositeEndpointDataSource.cs
rename to src/Http/Routing/src/CompositeEndpointDataSource.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/ConfigureRouteOptions.cs b/src/Http/Routing/src/ConfigureRouteOptions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/ConfigureRouteOptions.cs
rename to src/Http/Routing/src/ConfigureRouteOptions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/AlphaRouteConstraint.cs b/src/Http/Routing/src/Constraints/AlphaRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/AlphaRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/AlphaRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/BoolRouteConstraint.cs b/src/Http/Routing/src/Constraints/BoolRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/BoolRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/BoolRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/CompositeRouteConstraint.cs b/src/Http/Routing/src/Constraints/CompositeRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/CompositeRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/CompositeRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/DateTimeRouteConstraint.cs b/src/Http/Routing/src/Constraints/DateTimeRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/DateTimeRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/DateTimeRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/DecimalRouteConstraint.cs b/src/Http/Routing/src/Constraints/DecimalRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/DecimalRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/DecimalRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/DoubleRouteConstraint.cs b/src/Http/Routing/src/Constraints/DoubleRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/DoubleRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/DoubleRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/FloatRouteConstraint.cs b/src/Http/Routing/src/Constraints/FloatRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/FloatRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/FloatRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/GuidRouteConstraint.cs b/src/Http/Routing/src/Constraints/GuidRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/GuidRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/GuidRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/HttpMethodRouteConstraint.cs b/src/Http/Routing/src/Constraints/HttpMethodRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/HttpMethodRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/HttpMethodRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/IntRouteConstraint.cs b/src/Http/Routing/src/Constraints/IntRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/IntRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/IntRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/LengthRouteConstraint.cs b/src/Http/Routing/src/Constraints/LengthRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/LengthRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/LengthRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/LongRouteConstraint.cs b/src/Http/Routing/src/Constraints/LongRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/LongRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/LongRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/MaxLengthRouteConstraint.cs b/src/Http/Routing/src/Constraints/MaxLengthRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/MaxLengthRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/MaxLengthRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/MaxRouteConstraint.cs b/src/Http/Routing/src/Constraints/MaxRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/MaxRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/MaxRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/MinLengthRouteConstraint.cs b/src/Http/Routing/src/Constraints/MinLengthRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/MinLengthRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/MinLengthRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/MinRouteConstraint.cs b/src/Http/Routing/src/Constraints/MinRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/MinRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/MinRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/NullRouteConstraint.cs b/src/Http/Routing/src/Constraints/NullRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/NullRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/NullRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/OptionalRouteConstraint.cs b/src/Http/Routing/src/Constraints/OptionalRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/OptionalRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/OptionalRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/RangeRouteConstraint.cs b/src/Http/Routing/src/Constraints/RangeRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/RangeRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/RangeRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/RegexInlineRouteConstraint.cs b/src/Http/Routing/src/Constraints/RegexInlineRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/RegexInlineRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/RegexInlineRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/RegexRouteConstraint.cs b/src/Http/Routing/src/Constraints/RegexRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/RegexRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/RegexRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/RequiredRouteConstraint.cs b/src/Http/Routing/src/Constraints/RequiredRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/RequiredRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/RequiredRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/StringRouteConstraint.cs b/src/Http/Routing/src/Constraints/StringRouteConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Constraints/StringRouteConstraint.cs
rename to src/Http/Routing/src/Constraints/StringRouteConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/DataSourceDependentCache.cs b/src/Http/Routing/src/DataSourceDependentCache.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/DataSourceDependentCache.cs
rename to src/Http/Routing/src/DataSourceDependentCache.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/DataTokensMetadata.cs b/src/Http/Routing/src/DataTokensMetadata.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/DataTokensMetadata.cs
rename to src/Http/Routing/src/DataTokensMetadata.cs
diff --git a/src/Routing/shared/Microsoft.AspNetCore.Routing.DecisionTree.Sources/DecisionCriterion.cs b/src/Http/Routing/src/DecisionTree/DecisionCriterion.cs
similarity index 100%
rename from src/Routing/shared/Microsoft.AspNetCore.Routing.DecisionTree.Sources/DecisionCriterion.cs
rename to src/Http/Routing/src/DecisionTree/DecisionCriterion.cs
diff --git a/src/Routing/shared/Microsoft.AspNetCore.Routing.DecisionTree.Sources/DecisionCriterionValue.cs b/src/Http/Routing/src/DecisionTree/DecisionCriterionValue.cs
similarity index 100%
rename from src/Routing/shared/Microsoft.AspNetCore.Routing.DecisionTree.Sources/DecisionCriterionValue.cs
rename to src/Http/Routing/src/DecisionTree/DecisionCriterionValue.cs
diff --git a/src/Routing/shared/Microsoft.AspNetCore.Routing.DecisionTree.Sources/DecisionCriterionValueEqualityComparer.cs b/src/Http/Routing/src/DecisionTree/DecisionCriterionValueEqualityComparer.cs
similarity index 100%
rename from src/Routing/shared/Microsoft.AspNetCore.Routing.DecisionTree.Sources/DecisionCriterionValueEqualityComparer.cs
rename to src/Http/Routing/src/DecisionTree/DecisionCriterionValueEqualityComparer.cs
diff --git a/src/Routing/shared/Microsoft.AspNetCore.Routing.DecisionTree.Sources/DecisionTreeBuilder.cs b/src/Http/Routing/src/DecisionTree/DecisionTreeBuilder.cs
similarity index 100%
rename from src/Routing/shared/Microsoft.AspNetCore.Routing.DecisionTree.Sources/DecisionTreeBuilder.cs
rename to src/Http/Routing/src/DecisionTree/DecisionTreeBuilder.cs
diff --git a/src/Routing/shared/Microsoft.AspNetCore.Routing.DecisionTree.Sources/DecisionTreeNode.cs b/src/Http/Routing/src/DecisionTree/DecisionTreeNode.cs
similarity index 100%
rename from src/Routing/shared/Microsoft.AspNetCore.Routing.DecisionTree.Sources/DecisionTreeNode.cs
rename to src/Http/Routing/src/DecisionTree/DecisionTreeNode.cs
diff --git a/src/Routing/shared/Microsoft.AspNetCore.Routing.DecisionTree.Sources/IClassifier.cs b/src/Http/Routing/src/DecisionTree/IClassifier.cs
similarity index 100%
rename from src/Routing/shared/Microsoft.AspNetCore.Routing.DecisionTree.Sources/IClassifier.cs
rename to src/Http/Routing/src/DecisionTree/IClassifier.cs
diff --git a/src/Routing/shared/Microsoft.AspNetCore.Routing.DecisionTree.Sources/ItemDescriptor.cs b/src/Http/Routing/src/DecisionTree/ItemDescriptor.cs
similarity index 100%
rename from src/Routing/shared/Microsoft.AspNetCore.Routing.DecisionTree.Sources/ItemDescriptor.cs
rename to src/Http/Routing/src/DecisionTree/ItemDescriptor.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/DefaultEndpointDataSource.cs b/src/Http/Routing/src/DefaultEndpointDataSource.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/DefaultEndpointDataSource.cs
rename to src/Http/Routing/src/DefaultEndpointDataSource.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/DefaultEndpointRouteBuilder.cs b/src/Http/Routing/src/DefaultEndpointRouteBuilder.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/DefaultEndpointRouteBuilder.cs
rename to src/Http/Routing/src/DefaultEndpointRouteBuilder.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/DefaultInlineConstraintResolver.cs b/src/Http/Routing/src/DefaultInlineConstraintResolver.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/DefaultInlineConstraintResolver.cs
rename to src/Http/Routing/src/DefaultInlineConstraintResolver.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/DefaultLinkGenerator.cs b/src/Http/Routing/src/DefaultLinkGenerator.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/DefaultLinkGenerator.cs
rename to src/Http/Routing/src/DefaultLinkGenerator.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/DefaultParameterPolicyFactory.cs b/src/Http/Routing/src/DefaultParameterPolicyFactory.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/DefaultParameterPolicyFactory.cs
rename to src/Http/Routing/src/DefaultParameterPolicyFactory.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/DependencyInjection/RoutingServiceCollectionExtensions.cs b/src/Http/Routing/src/DependencyInjection/RoutingServiceCollectionExtensions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/DependencyInjection/RoutingServiceCollectionExtensions.cs
rename to src/Http/Routing/src/DependencyInjection/RoutingServiceCollectionExtensions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/EndpointDataSource.cs b/src/Http/Routing/src/EndpointDataSource.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/EndpointDataSource.cs
rename to src/Http/Routing/src/EndpointDataSource.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/EndpointMiddleware.cs b/src/Http/Routing/src/EndpointMiddleware.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/EndpointMiddleware.cs
rename to src/Http/Routing/src/EndpointMiddleware.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/EndpointModel.cs b/src/Http/Routing/src/EndpointModel.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/EndpointModel.cs
rename to src/Http/Routing/src/EndpointModel.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/EndpointNameAddressScheme.cs b/src/Http/Routing/src/EndpointNameAddressScheme.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/EndpointNameAddressScheme.cs
rename to src/Http/Routing/src/EndpointNameAddressScheme.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/EndpointNameMetadata.cs b/src/Http/Routing/src/EndpointNameMetadata.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/EndpointNameMetadata.cs
rename to src/Http/Routing/src/EndpointNameMetadata.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/EndpointRoutingMiddleware.cs b/src/Http/Routing/src/EndpointRoutingMiddleware.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/EndpointRoutingMiddleware.cs
rename to src/Http/Routing/src/EndpointRoutingMiddleware.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/EndpointSelectorContext.cs b/src/Http/Routing/src/EndpointSelectorContext.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/EndpointSelectorContext.cs
rename to src/Http/Routing/src/EndpointSelectorContext.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/HttpMethodMetadata.cs b/src/Http/Routing/src/HttpMethodMetadata.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/HttpMethodMetadata.cs
rename to src/Http/Routing/src/HttpMethodMetadata.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/IDataTokenMetadata.cs b/src/Http/Routing/src/IDataTokenMetadata.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/IDataTokenMetadata.cs
rename to src/Http/Routing/src/IDataTokenMetadata.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/IEndpointAddressScheme.cs b/src/Http/Routing/src/IEndpointAddressScheme.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/IEndpointAddressScheme.cs
rename to src/Http/Routing/src/IEndpointAddressScheme.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/IEndpointModelConvention.cs b/src/Http/Routing/src/IEndpointModelConvention.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/IEndpointModelConvention.cs
rename to src/Http/Routing/src/IEndpointModelConvention.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/IEndpointNameMetadata.cs b/src/Http/Routing/src/IEndpointNameMetadata.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/IEndpointNameMetadata.cs
rename to src/Http/Routing/src/IEndpointNameMetadata.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/IEndpointRouteBuilder.cs b/src/Http/Routing/src/IEndpointRouteBuilder.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/IEndpointRouteBuilder.cs
rename to src/Http/Routing/src/IEndpointRouteBuilder.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/IHttpMethodMetadata.cs b/src/Http/Routing/src/IHttpMethodMetadata.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/IHttpMethodMetadata.cs
rename to src/Http/Routing/src/IHttpMethodMetadata.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/IInlineConstraintResolver.cs b/src/Http/Routing/src/IInlineConstraintResolver.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/IInlineConstraintResolver.cs
rename to src/Http/Routing/src/IInlineConstraintResolver.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/INamedRouter.cs b/src/Http/Routing/src/INamedRouter.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/INamedRouter.cs
rename to src/Http/Routing/src/INamedRouter.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/IRouteBuilder.cs b/src/Http/Routing/src/IRouteBuilder.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/IRouteBuilder.cs
rename to src/Http/Routing/src/IRouteBuilder.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/IRouteCollection.cs b/src/Http/Routing/src/IRouteCollection.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/IRouteCollection.cs
rename to src/Http/Routing/src/IRouteCollection.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/IRouteNameMetadata.cs b/src/Http/Routing/src/IRouteNameMetadata.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/IRouteNameMetadata.cs
rename to src/Http/Routing/src/IRouteNameMetadata.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/IRouteValuesAddressMetadata.cs b/src/Http/Routing/src/IRouteValuesAddressMetadata.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/IRouteValuesAddressMetadata.cs
rename to src/Http/Routing/src/IRouteValuesAddressMetadata.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/ISuppressLinkGenerationMetadata.cs b/src/Http/Routing/src/ISuppressLinkGenerationMetadata.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/ISuppressLinkGenerationMetadata.cs
rename to src/Http/Routing/src/ISuppressLinkGenerationMetadata.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/ISuppressMatchingMetadata.cs b/src/Http/Routing/src/ISuppressMatchingMetadata.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/ISuppressMatchingMetadata.cs
rename to src/Http/Routing/src/ISuppressMatchingMetadata.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/InlineRouteParameterParser.cs b/src/Http/Routing/src/InlineRouteParameterParser.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/InlineRouteParameterParser.cs
rename to src/Http/Routing/src/InlineRouteParameterParser.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Internal/ArrayBuilder.cs b/src/Http/Routing/src/Internal/ArrayBuilder.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Internal/ArrayBuilder.cs
rename to src/Http/Routing/src/Internal/ArrayBuilder.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Internal/BufferValue.cs b/src/Http/Routing/src/Internal/BufferValue.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Internal/BufferValue.cs
rename to src/Http/Routing/src/Internal/BufferValue.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Internal/DfaGraphWriter.cs b/src/Http/Routing/src/Internal/DfaGraphWriter.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Internal/DfaGraphWriter.cs
rename to src/Http/Routing/src/Internal/DfaGraphWriter.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Internal/LinkGenerationDecisionTree.cs b/src/Http/Routing/src/Internal/LinkGenerationDecisionTree.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Internal/LinkGenerationDecisionTree.cs
rename to src/Http/Routing/src/Internal/LinkGenerationDecisionTree.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Internal/NullRouter.cs b/src/Http/Routing/src/Internal/NullRouter.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Internal/NullRouter.cs
rename to src/Http/Routing/src/Internal/NullRouter.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Internal/OutboundMatchResult.cs b/src/Http/Routing/src/Internal/OutboundMatchResult.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Internal/OutboundMatchResult.cs
rename to src/Http/Routing/src/Internal/OutboundMatchResult.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Internal/ParameterPolicyActivator.cs b/src/Http/Routing/src/Internal/ParameterPolicyActivator.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Internal/ParameterPolicyActivator.cs
rename to src/Http/Routing/src/Internal/ParameterPolicyActivator.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Internal/PathTokenizer.cs b/src/Http/Routing/src/Internal/PathTokenizer.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Internal/PathTokenizer.cs
rename to src/Http/Routing/src/Internal/PathTokenizer.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Internal/RoutingMarkerService.cs b/src/Http/Routing/src/Internal/RoutingMarkerService.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Internal/RoutingMarkerService.cs
rename to src/Http/Routing/src/Internal/RoutingMarkerService.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Internal/SegmentState.cs b/src/Http/Routing/src/Internal/SegmentState.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Internal/SegmentState.cs
rename to src/Http/Routing/src/Internal/SegmentState.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Internal/UriBuilderContextPooledObjectPolicy.cs b/src/Http/Routing/src/Internal/UriBuilderContextPooledObjectPolicy.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Internal/UriBuilderContextPooledObjectPolicy.cs
rename to src/Http/Routing/src/Internal/UriBuilderContextPooledObjectPolicy.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Internal/UriBuildingContext.cs b/src/Http/Routing/src/Internal/UriBuildingContext.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Internal/UriBuildingContext.cs
rename to src/Http/Routing/src/Internal/UriBuildingContext.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/LinkGeneratorEndpointNameAddressExtensions.cs b/src/Http/Routing/src/LinkGeneratorEndpointNameAddressExtensions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/LinkGeneratorEndpointNameAddressExtensions.cs
rename to src/Http/Routing/src/LinkGeneratorEndpointNameAddressExtensions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/LinkGeneratorRouteValuesAddressExtensions.cs b/src/Http/Routing/src/LinkGeneratorRouteValuesAddressExtensions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/LinkGeneratorRouteValuesAddressExtensions.cs
rename to src/Http/Routing/src/LinkGeneratorRouteValuesAddressExtensions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Logging/RouteConstraintMatcherExtensions.cs b/src/Http/Routing/src/Logging/RouteConstraintMatcherExtensions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Logging/RouteConstraintMatcherExtensions.cs
rename to src/Http/Routing/src/Logging/RouteConstraintMatcherExtensions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Logging/RouterMiddlewareLoggerExtensions.cs b/src/Http/Routing/src/Logging/RouterMiddlewareLoggerExtensions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Logging/RouterMiddlewareLoggerExtensions.cs
rename to src/Http/Routing/src/Logging/RouterMiddlewareLoggerExtensions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Logging/TreeRouterLoggerExtensions.cs b/src/Http/Routing/src/Logging/TreeRouterLoggerExtensions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Logging/TreeRouterLoggerExtensions.cs
rename to src/Http/Routing/src/Logging/TreeRouterLoggerExtensions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/MapRouteRouteBuilderExtensions.cs b/src/Http/Routing/src/MapRouteRouteBuilderExtensions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/MapRouteRouteBuilderExtensions.cs
rename to src/Http/Routing/src/MapRouteRouteBuilderExtensions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/AmbiguousMatchException.cs b/src/Http/Routing/src/Matching/AmbiguousMatchException.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/AmbiguousMatchException.cs
rename to src/Http/Routing/src/Matching/AmbiguousMatchException.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/Ascii.cs b/src/Http/Routing/src/Matching/Ascii.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/Ascii.cs
rename to src/Http/Routing/src/Matching/Ascii.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/Candidate.cs b/src/Http/Routing/src/Matching/Candidate.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/Candidate.cs
rename to src/Http/Routing/src/Matching/Candidate.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/CandidateSet.cs b/src/Http/Routing/src/Matching/CandidateSet.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/CandidateSet.cs
rename to src/Http/Routing/src/Matching/CandidateSet.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/CandidateState.cs b/src/Http/Routing/src/Matching/CandidateState.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/CandidateState.cs
rename to src/Http/Routing/src/Matching/CandidateState.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DataSourceDependentMatcher.cs b/src/Http/Routing/src/Matching/DataSourceDependentMatcher.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DataSourceDependentMatcher.cs
rename to src/Http/Routing/src/Matching/DataSourceDependentMatcher.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DefaultEndpointSelector.cs b/src/Http/Routing/src/Matching/DefaultEndpointSelector.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DefaultEndpointSelector.cs
rename to src/Http/Routing/src/Matching/DefaultEndpointSelector.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DfaMatcher.cs b/src/Http/Routing/src/Matching/DfaMatcher.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DfaMatcher.cs
rename to src/Http/Routing/src/Matching/DfaMatcher.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DfaMatcherBuilder.cs b/src/Http/Routing/src/Matching/DfaMatcherBuilder.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DfaMatcherBuilder.cs
rename to src/Http/Routing/src/Matching/DfaMatcherBuilder.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DfaMatcherFactory.cs b/src/Http/Routing/src/Matching/DfaMatcherFactory.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DfaMatcherFactory.cs
rename to src/Http/Routing/src/Matching/DfaMatcherFactory.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DfaNode.cs b/src/Http/Routing/src/Matching/DfaNode.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DfaNode.cs
rename to src/Http/Routing/src/Matching/DfaNode.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DfaState.cs b/src/Http/Routing/src/Matching/DfaState.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DfaState.cs
rename to src/Http/Routing/src/Matching/DfaState.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DictionaryJumpTable.cs b/src/Http/Routing/src/Matching/DictionaryJumpTable.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/DictionaryJumpTable.cs
rename to src/Http/Routing/src/Matching/DictionaryJumpTable.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/EndpointComparer.cs b/src/Http/Routing/src/Matching/EndpointComparer.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/EndpointComparer.cs
rename to src/Http/Routing/src/Matching/EndpointComparer.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/EndpointMetadataComparer.cs b/src/Http/Routing/src/Matching/EndpointMetadataComparer.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/EndpointMetadataComparer.cs
rename to src/Http/Routing/src/Matching/EndpointMetadataComparer.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/EndpointSelector.cs b/src/Http/Routing/src/Matching/EndpointSelector.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/EndpointSelector.cs
rename to src/Http/Routing/src/Matching/EndpointSelector.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/FastPathTokenizer.cs b/src/Http/Routing/src/Matching/FastPathTokenizer.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/FastPathTokenizer.cs
rename to src/Http/Routing/src/Matching/FastPathTokenizer.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/HttpMethodMatcherPolicy.cs b/src/Http/Routing/src/Matching/HttpMethodMatcherPolicy.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/HttpMethodMatcherPolicy.cs
rename to src/Http/Routing/src/Matching/HttpMethodMatcherPolicy.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/IEndpointComparerPolicy.cs b/src/Http/Routing/src/Matching/IEndpointComparerPolicy.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/IEndpointComparerPolicy.cs
rename to src/Http/Routing/src/Matching/IEndpointComparerPolicy.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/IEndpointSelectorPolicy.cs b/src/Http/Routing/src/Matching/IEndpointSelectorPolicy.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/IEndpointSelectorPolicy.cs
rename to src/Http/Routing/src/Matching/IEndpointSelectorPolicy.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/ILEmitTrieFactory.cs b/src/Http/Routing/src/Matching/ILEmitTrieFactory.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/ILEmitTrieFactory.cs
rename to src/Http/Routing/src/Matching/ILEmitTrieFactory.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/ILEmitTrieJumpTable.cs b/src/Http/Routing/src/Matching/ILEmitTrieJumpTable.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/ILEmitTrieJumpTable.cs
rename to src/Http/Routing/src/Matching/ILEmitTrieJumpTable.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/INodeBuilderPolicy.cs b/src/Http/Routing/src/Matching/INodeBuilderPolicy.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/INodeBuilderPolicy.cs
rename to src/Http/Routing/src/Matching/INodeBuilderPolicy.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/JumpTable.cs b/src/Http/Routing/src/Matching/JumpTable.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/JumpTable.cs
rename to src/Http/Routing/src/Matching/JumpTable.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/JumpTableBuilder.cs b/src/Http/Routing/src/Matching/JumpTableBuilder.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/JumpTableBuilder.cs
rename to src/Http/Routing/src/Matching/JumpTableBuilder.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/LinearSearchJumpTable.cs b/src/Http/Routing/src/Matching/LinearSearchJumpTable.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/LinearSearchJumpTable.cs
rename to src/Http/Routing/src/Matching/LinearSearchJumpTable.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/Matcher.cs b/src/Http/Routing/src/Matching/Matcher.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/Matcher.cs
rename to src/Http/Routing/src/Matching/Matcher.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/MatcherBuilder.cs b/src/Http/Routing/src/Matching/MatcherBuilder.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/MatcherBuilder.cs
rename to src/Http/Routing/src/Matching/MatcherBuilder.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/MatcherFactory.cs b/src/Http/Routing/src/Matching/MatcherFactory.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/MatcherFactory.cs
rename to src/Http/Routing/src/Matching/MatcherFactory.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/MatcherPolicy.cs b/src/Http/Routing/src/Matching/MatcherPolicy.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/MatcherPolicy.cs
rename to src/Http/Routing/src/Matching/MatcherPolicy.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/PathSegment.cs b/src/Http/Routing/src/Matching/PathSegment.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/PathSegment.cs
rename to src/Http/Routing/src/Matching/PathSegment.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/PolicyJumpTable.cs b/src/Http/Routing/src/Matching/PolicyJumpTable.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/PolicyJumpTable.cs
rename to src/Http/Routing/src/Matching/PolicyJumpTable.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/PolicyJumpTableEdge.cs b/src/Http/Routing/src/Matching/PolicyJumpTableEdge.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/PolicyJumpTableEdge.cs
rename to src/Http/Routing/src/Matching/PolicyJumpTableEdge.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/PolicyNodeEdge.cs b/src/Http/Routing/src/Matching/PolicyNodeEdge.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/PolicyNodeEdge.cs
rename to src/Http/Routing/src/Matching/PolicyNodeEdge.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/SingleEntryAsciiJumpTable.cs b/src/Http/Routing/src/Matching/SingleEntryAsciiJumpTable.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/SingleEntryAsciiJumpTable.cs
rename to src/Http/Routing/src/Matching/SingleEntryAsciiJumpTable.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/SingleEntryJumpTable.cs b/src/Http/Routing/src/Matching/SingleEntryJumpTable.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/SingleEntryJumpTable.cs
rename to src/Http/Routing/src/Matching/SingleEntryJumpTable.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Matching/ZeroEntryJumpTable.cs b/src/Http/Routing/src/Matching/ZeroEntryJumpTable.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Matching/ZeroEntryJumpTable.cs
rename to src/Http/Routing/src/Matching/ZeroEntryJumpTable.cs
diff --git a/src/Http/Routing/src/Microsoft.AspNetCore.Routing.csproj b/src/Http/Routing/src/Microsoft.AspNetCore.Routing.csproj
new file mode 100644
index 0000000000..79ae66b7fa
--- /dev/null
+++ b/src/Http/Routing/src/Microsoft.AspNetCore.Routing.csproj
@@ -0,0 +1,32 @@
+
+
+ ASP.NET Core middleware for routing requests to application logic and for generating links.
+Commonly used types:
+Microsoft.AspNetCore.Routing.Route
+Microsoft.AspNetCore.Routing.RouteCollection
+ netcoreapp3.0
+ $(NoWarn);CS1591
+ true
+ aspnetcore;routing
+ true
+
+
+
+
+ false
+ IL_EMIT_SAVE_ASSEMBLIES;$(DefineConstants)
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/ModelEndpointDataSource.cs b/src/Http/Routing/src/ModelEndpointDataSource.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/ModelEndpointDataSource.cs
rename to src/Http/Routing/src/ModelEndpointDataSource.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/ParameterPolicyFactory.cs b/src/Http/Routing/src/ParameterPolicyFactory.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/ParameterPolicyFactory.cs
rename to src/Http/Routing/src/ParameterPolicyFactory.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/DefaultRoutePatternTransformer.cs b/src/Http/Routing/src/Patterns/DefaultRoutePatternTransformer.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/DefaultRoutePatternTransformer.cs
rename to src/Http/Routing/src/Patterns/DefaultRoutePatternTransformer.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RouteParameterParser.cs b/src/Http/Routing/src/Patterns/RouteParameterParser.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RouteParameterParser.cs
rename to src/Http/Routing/src/Patterns/RouteParameterParser.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePattern.cs b/src/Http/Routing/src/Patterns/RoutePattern.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePattern.cs
rename to src/Http/Routing/src/Patterns/RoutePattern.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternException.cs b/src/Http/Routing/src/Patterns/RoutePatternException.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternException.cs
rename to src/Http/Routing/src/Patterns/RoutePatternException.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternFactory.cs b/src/Http/Routing/src/Patterns/RoutePatternFactory.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternFactory.cs
rename to src/Http/Routing/src/Patterns/RoutePatternFactory.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternLiteralPart.cs b/src/Http/Routing/src/Patterns/RoutePatternLiteralPart.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternLiteralPart.cs
rename to src/Http/Routing/src/Patterns/RoutePatternLiteralPart.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternMatcher.cs b/src/Http/Routing/src/Patterns/RoutePatternMatcher.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternMatcher.cs
rename to src/Http/Routing/src/Patterns/RoutePatternMatcher.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternParameterKind.cs b/src/Http/Routing/src/Patterns/RoutePatternParameterKind.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternParameterKind.cs
rename to src/Http/Routing/src/Patterns/RoutePatternParameterKind.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternParameterPart.cs b/src/Http/Routing/src/Patterns/RoutePatternParameterPart.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternParameterPart.cs
rename to src/Http/Routing/src/Patterns/RoutePatternParameterPart.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternParameterPolicyReference.cs b/src/Http/Routing/src/Patterns/RoutePatternParameterPolicyReference.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternParameterPolicyReference.cs
rename to src/Http/Routing/src/Patterns/RoutePatternParameterPolicyReference.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternParser.cs b/src/Http/Routing/src/Patterns/RoutePatternParser.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternParser.cs
rename to src/Http/Routing/src/Patterns/RoutePatternParser.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternPart.cs b/src/Http/Routing/src/Patterns/RoutePatternPart.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternPart.cs
rename to src/Http/Routing/src/Patterns/RoutePatternPart.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternPartKind.cs b/src/Http/Routing/src/Patterns/RoutePatternPartKind.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternPartKind.cs
rename to src/Http/Routing/src/Patterns/RoutePatternPartKind.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternPathSegment.cs b/src/Http/Routing/src/Patterns/RoutePatternPathSegment.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternPathSegment.cs
rename to src/Http/Routing/src/Patterns/RoutePatternPathSegment.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternSeparatorPart.cs b/src/Http/Routing/src/Patterns/RoutePatternSeparatorPart.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternSeparatorPart.cs
rename to src/Http/Routing/src/Patterns/RoutePatternSeparatorPart.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternTransformer.cs b/src/Http/Routing/src/Patterns/RoutePatternTransformer.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Patterns/RoutePatternTransformer.cs
rename to src/Http/Routing/src/Patterns/RoutePatternTransformer.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Properties/AssemblyInfo.cs b/src/Http/Routing/src/Properties/AssemblyInfo.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Properties/AssemblyInfo.cs
rename to src/Http/Routing/src/Properties/AssemblyInfo.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Properties/Resources.Designer.cs b/src/Http/Routing/src/Properties/Resources.Designer.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Properties/Resources.Designer.cs
rename to src/Http/Routing/src/Properties/Resources.Designer.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RequestDelegateRouteBuilderExtensions.cs b/src/Http/Routing/src/RequestDelegateRouteBuilderExtensions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RequestDelegateRouteBuilderExtensions.cs
rename to src/Http/Routing/src/RequestDelegateRouteBuilderExtensions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Resources.resx b/src/Http/Routing/src/Resources.resx
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Resources.resx
rename to src/Http/Routing/src/Resources.resx
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Route.cs b/src/Http/Routing/src/Route.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Route.cs
rename to src/Http/Routing/src/Route.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteBase.cs b/src/Http/Routing/src/RouteBase.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteBase.cs
rename to src/Http/Routing/src/RouteBase.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteBuilder.cs b/src/Http/Routing/src/RouteBuilder.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteBuilder.cs
rename to src/Http/Routing/src/RouteBuilder.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteCollection.cs b/src/Http/Routing/src/RouteCollection.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteCollection.cs
rename to src/Http/Routing/src/RouteCollection.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteConstraintBuilder.cs b/src/Http/Routing/src/RouteConstraintBuilder.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteConstraintBuilder.cs
rename to src/Http/Routing/src/RouteConstraintBuilder.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteConstraintMatcher.cs b/src/Http/Routing/src/RouteConstraintMatcher.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteConstraintMatcher.cs
rename to src/Http/Routing/src/RouteConstraintMatcher.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteCreationException.cs b/src/Http/Routing/src/RouteCreationException.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteCreationException.cs
rename to src/Http/Routing/src/RouteCreationException.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteEndpoint.cs b/src/Http/Routing/src/RouteEndpoint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteEndpoint.cs
rename to src/Http/Routing/src/RouteEndpoint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteEndpointModel.cs b/src/Http/Routing/src/RouteEndpointModel.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteEndpointModel.cs
rename to src/Http/Routing/src/RouteEndpointModel.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteHandler.cs b/src/Http/Routing/src/RouteHandler.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteHandler.cs
rename to src/Http/Routing/src/RouteHandler.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteNameMetadata.cs b/src/Http/Routing/src/RouteNameMetadata.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteNameMetadata.cs
rename to src/Http/Routing/src/RouteNameMetadata.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteOptions.cs b/src/Http/Routing/src/RouteOptions.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteOptions.cs
rename to src/Http/Routing/src/RouteOptions.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteValueEqualityComparer.cs b/src/Http/Routing/src/RouteValueEqualityComparer.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteValueEqualityComparer.cs
rename to src/Http/Routing/src/RouteValueEqualityComparer.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteValuesAddress.cs b/src/Http/Routing/src/RouteValuesAddress.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteValuesAddress.cs
rename to src/Http/Routing/src/RouteValuesAddress.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteValuesAddressMetadata.cs b/src/Http/Routing/src/RouteValuesAddressMetadata.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteValuesAddressMetadata.cs
rename to src/Http/Routing/src/RouteValuesAddressMetadata.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouteValuesAddressScheme.cs b/src/Http/Routing/src/RouteValuesAddressScheme.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouteValuesAddressScheme.cs
rename to src/Http/Routing/src/RouteValuesAddressScheme.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RouterMiddleware.cs b/src/Http/Routing/src/RouterMiddleware.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RouterMiddleware.cs
rename to src/Http/Routing/src/RouterMiddleware.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/RoutingFeature.cs b/src/Http/Routing/src/RoutingFeature.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/RoutingFeature.cs
rename to src/Http/Routing/src/RoutingFeature.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/SuppressLinkGenerationMetadata.cs b/src/Http/Routing/src/SuppressLinkGenerationMetadata.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/SuppressLinkGenerationMetadata.cs
rename to src/Http/Routing/src/SuppressLinkGenerationMetadata.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/SuppressMatchingMetadata.cs b/src/Http/Routing/src/SuppressMatchingMetadata.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/SuppressMatchingMetadata.cs
rename to src/Http/Routing/src/SuppressMatchingMetadata.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Template/InlineConstraint.cs b/src/Http/Routing/src/Template/InlineConstraint.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Template/InlineConstraint.cs
rename to src/Http/Routing/src/Template/InlineConstraint.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Template/RoutePrecedence.cs b/src/Http/Routing/src/Template/RoutePrecedence.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Template/RoutePrecedence.cs
rename to src/Http/Routing/src/Template/RoutePrecedence.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Template/RouteTemplate.cs b/src/Http/Routing/src/Template/RouteTemplate.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Template/RouteTemplate.cs
rename to src/Http/Routing/src/Template/RouteTemplate.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Template/TemplateBinder.cs b/src/Http/Routing/src/Template/TemplateBinder.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Template/TemplateBinder.cs
rename to src/Http/Routing/src/Template/TemplateBinder.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Template/TemplateMatcher.cs b/src/Http/Routing/src/Template/TemplateMatcher.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Template/TemplateMatcher.cs
rename to src/Http/Routing/src/Template/TemplateMatcher.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Template/TemplateParser.cs b/src/Http/Routing/src/Template/TemplateParser.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Template/TemplateParser.cs
rename to src/Http/Routing/src/Template/TemplateParser.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Template/TemplatePart.cs b/src/Http/Routing/src/Template/TemplatePart.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Template/TemplatePart.cs
rename to src/Http/Routing/src/Template/TemplatePart.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Template/TemplateSegment.cs b/src/Http/Routing/src/Template/TemplateSegment.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Template/TemplateSegment.cs
rename to src/Http/Routing/src/Template/TemplateSegment.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Template/TemplateValuesResult.cs b/src/Http/Routing/src/Template/TemplateValuesResult.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Template/TemplateValuesResult.cs
rename to src/Http/Routing/src/Template/TemplateValuesResult.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Tree/InboundMatch.cs b/src/Http/Routing/src/Tree/InboundMatch.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Tree/InboundMatch.cs
rename to src/Http/Routing/src/Tree/InboundMatch.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Tree/InboundRouteEntry.cs b/src/Http/Routing/src/Tree/InboundRouteEntry.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Tree/InboundRouteEntry.cs
rename to src/Http/Routing/src/Tree/InboundRouteEntry.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Tree/OutboundMatch.cs b/src/Http/Routing/src/Tree/OutboundMatch.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Tree/OutboundMatch.cs
rename to src/Http/Routing/src/Tree/OutboundMatch.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Tree/OutboundRouteEntry.cs b/src/Http/Routing/src/Tree/OutboundRouteEntry.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Tree/OutboundRouteEntry.cs
rename to src/Http/Routing/src/Tree/OutboundRouteEntry.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Tree/TreeEnumerator.cs b/src/Http/Routing/src/Tree/TreeEnumerator.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Tree/TreeEnumerator.cs
rename to src/Http/Routing/src/Tree/TreeEnumerator.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Tree/TreeRouteBuilder.cs b/src/Http/Routing/src/Tree/TreeRouteBuilder.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Tree/TreeRouteBuilder.cs
rename to src/Http/Routing/src/Tree/TreeRouteBuilder.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Tree/TreeRouter.cs b/src/Http/Routing/src/Tree/TreeRouter.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Tree/TreeRouter.cs
rename to src/Http/Routing/src/Tree/TreeRouter.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Tree/UrlMatchingNode.cs b/src/Http/Routing/src/Tree/UrlMatchingNode.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Tree/UrlMatchingNode.cs
rename to src/Http/Routing/src/Tree/UrlMatchingNode.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Tree/UrlMatchingTree.cs b/src/Http/Routing/src/Tree/UrlMatchingTree.cs
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/Tree/UrlMatchingTree.cs
rename to src/Http/Routing/src/Tree/UrlMatchingTree.cs
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/baseline.netcore.json b/src/Http/Routing/src/baseline.netcore.json
similarity index 100%
rename from src/Routing/src/Microsoft.AspNetCore.Routing/baseline.netcore.json
rename to src/Http/Routing/src/baseline.netcore.json
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/Benchmarks/EndpointRoutingBenchmarkTest.cs b/src/Http/Routing/test/FunctionalTests/Benchmarks/EndpointRoutingBenchmarkTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/Benchmarks/EndpointRoutingBenchmarkTest.cs
rename to src/Http/Routing/test/FunctionalTests/Benchmarks/EndpointRoutingBenchmarkTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/Benchmarks/RouterBenchmarkTest.cs b/src/Http/Routing/test/FunctionalTests/Benchmarks/RouterBenchmarkTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/Benchmarks/RouterBenchmarkTest.cs
rename to src/Http/Routing/test/FunctionalTests/Benchmarks/RouterBenchmarkTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/EndpointRoutingSampleTest.cs b/src/Http/Routing/test/FunctionalTests/EndpointRoutingSampleTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/EndpointRoutingSampleTest.cs
rename to src/Http/Routing/test/FunctionalTests/EndpointRoutingSampleTest.cs
diff --git a/src/Http/Routing/test/FunctionalTests/Microsoft.AspNetCore.Routing.FunctionalTests.csproj b/src/Http/Routing/test/FunctionalTests/Microsoft.AspNetCore.Routing.FunctionalTests.csproj
new file mode 100644
index 0000000000..badadf1fe6
--- /dev/null
+++ b/src/Http/Routing/test/FunctionalTests/Microsoft.AspNetCore.Routing.FunctionalTests.csproj
@@ -0,0 +1,17 @@
+
+
+
+ netcoreapp3.0
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/RouterSampleTest.cs b/src/Http/Routing/test/FunctionalTests/RouterSampleTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/RouterSampleTest.cs
rename to src/Http/Routing/test/FunctionalTests/RouterSampleTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/RoutingTestFixture.cs b/src/Http/Routing/test/FunctionalTests/RoutingTestFixture.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/RoutingTestFixture.cs
rename to src/Http/Routing/test/FunctionalTests/RoutingTestFixture.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/WebHostBuilderExtensionsTest.cs b/src/Http/Routing/test/FunctionalTests/WebHostBuilderExtensionsTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/WebHostBuilderExtensionsTest.cs
rename to src/Http/Routing/test/FunctionalTests/WebHostBuilderExtensionsTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Builder/EndpointRoutingApplicationBuilderExtensionsTest.cs b/src/Http/Routing/test/UnitTests/Builder/EndpointRoutingApplicationBuilderExtensionsTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Builder/EndpointRoutingApplicationBuilderExtensionsTest.cs
rename to src/Http/Routing/test/UnitTests/Builder/EndpointRoutingApplicationBuilderExtensionsTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Builder/MapEndpointEndpointDataSourceBuilderExtensionsTest.cs b/src/Http/Routing/test/UnitTests/Builder/MapEndpointEndpointDataSourceBuilderExtensionsTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Builder/MapEndpointEndpointDataSourceBuilderExtensionsTest.cs
rename to src/Http/Routing/test/UnitTests/Builder/MapEndpointEndpointDataSourceBuilderExtensionsTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Builder/RoutingBuilderExtensionsTest.cs b/src/Http/Routing/test/UnitTests/Builder/RoutingBuilderExtensionsTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Builder/RoutingBuilderExtensionsTest.cs
rename to src/Http/Routing/test/UnitTests/Builder/RoutingBuilderExtensionsTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/CompositeEndpointDataSourceTest.cs b/src/Http/Routing/test/UnitTests/CompositeEndpointDataSourceTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/CompositeEndpointDataSourceTest.cs
rename to src/Http/Routing/test/UnitTests/CompositeEndpointDataSourceTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/ConstraintMatcherTest.cs b/src/Http/Routing/test/UnitTests/ConstraintMatcherTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/ConstraintMatcherTest.cs
rename to src/Http/Routing/test/UnitTests/ConstraintMatcherTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/AlphaRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/AlphaRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/AlphaRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/AlphaRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/BoolRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/BoolRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/BoolRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/BoolRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/CompositeRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/CompositeRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/CompositeRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/CompositeRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/ConstraintsTestHelper.cs b/src/Http/Routing/test/UnitTests/Constraints/ConstraintsTestHelper.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/ConstraintsTestHelper.cs
rename to src/Http/Routing/test/UnitTests/Constraints/ConstraintsTestHelper.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/DateTimeRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/DateTimeRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/DateTimeRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/DateTimeRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/DecimalRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/DecimalRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/DecimalRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/DecimalRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/DoubleRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/DoubleRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/DoubleRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/DoubleRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/FloatRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/FloatRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/FloatRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/FloatRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/GuidRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/GuidRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/GuidRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/GuidRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/HttpMethodRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/HttpMethodRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/HttpMethodRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/HttpMethodRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/IntRouteConstraintsTests.cs b/src/Http/Routing/test/UnitTests/Constraints/IntRouteConstraintsTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/IntRouteConstraintsTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/IntRouteConstraintsTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/LengthRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/LengthRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/LengthRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/LengthRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/LongRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/LongRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/LongRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/LongRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/MaxLengthRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/MaxLengthRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/MaxLengthRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/MaxLengthRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/MaxRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/MaxRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/MaxRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/MaxRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/MinLengthRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/MinLengthRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/MinLengthRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/MinLengthRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/MinRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/MinRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/MinRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/MinRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/RangeRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/RangeRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/RangeRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/RangeRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/RegexInlineRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/RegexInlineRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/RegexInlineRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/RegexInlineRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/RegexRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/RegexRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/RegexRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/RegexRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/RequiredRouteConstraintTests.cs b/src/Http/Routing/test/UnitTests/Constraints/RequiredRouteConstraintTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/RequiredRouteConstraintTests.cs
rename to src/Http/Routing/test/UnitTests/Constraints/RequiredRouteConstraintTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/StringRouteConstraintTest.cs b/src/Http/Routing/test/UnitTests/Constraints/StringRouteConstraintTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Constraints/StringRouteConstraintTest.cs
rename to src/Http/Routing/test/UnitTests/Constraints/StringRouteConstraintTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/DataSourceDependentCacheTest.cs b/src/Http/Routing/test/UnitTests/DataSourceDependentCacheTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/DataSourceDependentCacheTest.cs
rename to src/Http/Routing/test/UnitTests/DataSourceDependentCacheTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.DecisionTree.Sources.Tests/DecisionTreeBuilderTest.cs b/src/Http/Routing/test/UnitTests/DecisionTreeBuilderTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.DecisionTree.Sources.Tests/DecisionTreeBuilderTest.cs
rename to src/Http/Routing/test/UnitTests/DecisionTreeBuilderTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/DefaultEndpointDataSourceTests.cs b/src/Http/Routing/test/UnitTests/DefaultEndpointDataSourceTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/DefaultEndpointDataSourceTests.cs
rename to src/Http/Routing/test/UnitTests/DefaultEndpointDataSourceTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/DefaultInlineConstraintResolverTest.cs b/src/Http/Routing/test/UnitTests/DefaultInlineConstraintResolverTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/DefaultInlineConstraintResolverTest.cs
rename to src/Http/Routing/test/UnitTests/DefaultInlineConstraintResolverTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/DefaultLinkGeneratorProcessTemplateTest.cs b/src/Http/Routing/test/UnitTests/DefaultLinkGeneratorProcessTemplateTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/DefaultLinkGeneratorProcessTemplateTest.cs
rename to src/Http/Routing/test/UnitTests/DefaultLinkGeneratorProcessTemplateTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/DefaultLinkGeneratorTest.cs b/src/Http/Routing/test/UnitTests/DefaultLinkGeneratorTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/DefaultLinkGeneratorTest.cs
rename to src/Http/Routing/test/UnitTests/DefaultLinkGeneratorTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/DefaultParameterPolicyFactoryTest.cs b/src/Http/Routing/test/UnitTests/DefaultParameterPolicyFactoryTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/DefaultParameterPolicyFactoryTest.cs
rename to src/Http/Routing/test/UnitTests/DefaultParameterPolicyFactoryTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/EndpointFactory.cs b/src/Http/Routing/test/UnitTests/EndpointFactory.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/EndpointFactory.cs
rename to src/Http/Routing/test/UnitTests/EndpointFactory.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/EndpointMiddlewareTest.cs b/src/Http/Routing/test/UnitTests/EndpointMiddlewareTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/EndpointMiddlewareTest.cs
rename to src/Http/Routing/test/UnitTests/EndpointMiddlewareTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/EndpointNameAddressSchemeTest.cs b/src/Http/Routing/test/UnitTests/EndpointNameAddressSchemeTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/EndpointNameAddressSchemeTest.cs
rename to src/Http/Routing/test/UnitTests/EndpointNameAddressSchemeTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/EndpointRoutingMiddlewareTest.cs b/src/Http/Routing/test/UnitTests/EndpointRoutingMiddlewareTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/EndpointRoutingMiddlewareTest.cs
rename to src/Http/Routing/test/UnitTests/EndpointRoutingMiddlewareTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/EndpointSelectorContextTest.cs b/src/Http/Routing/test/UnitTests/EndpointSelectorContextTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/EndpointSelectorContextTest.cs
rename to src/Http/Routing/test/UnitTests/EndpointSelectorContextTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/InlineRouteParameterParserTests.cs b/src/Http/Routing/test/UnitTests/InlineRouteParameterParserTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/InlineRouteParameterParserTests.cs
rename to src/Http/Routing/test/UnitTests/InlineRouteParameterParserTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Internal/DfaGraphWriterTest.cs b/src/Http/Routing/test/UnitTests/Internal/DfaGraphWriterTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Internal/DfaGraphWriterTest.cs
rename to src/Http/Routing/test/UnitTests/Internal/DfaGraphWriterTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Internal/LinkGenerationDecisionTreeTest.cs b/src/Http/Routing/test/UnitTests/Internal/LinkGenerationDecisionTreeTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Internal/LinkGenerationDecisionTreeTest.cs
rename to src/Http/Routing/test/UnitTests/Internal/LinkGenerationDecisionTreeTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Internal/PathTokenizerTest.cs b/src/Http/Routing/test/UnitTests/Internal/PathTokenizerTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Internal/PathTokenizerTest.cs
rename to src/Http/Routing/test/UnitTests/Internal/PathTokenizerTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Internal/UriBuildingContextTest.cs b/src/Http/Routing/test/UnitTests/Internal/UriBuildingContextTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Internal/UriBuildingContextTest.cs
rename to src/Http/Routing/test/UnitTests/Internal/UriBuildingContextTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/LinkGeneratorEndpointNameExtensionsTest.cs b/src/Http/Routing/test/UnitTests/LinkGeneratorEndpointNameExtensionsTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/LinkGeneratorEndpointNameExtensionsTest.cs
rename to src/Http/Routing/test/UnitTests/LinkGeneratorEndpointNameExtensionsTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/LinkGeneratorRouteValuesAddressExtensionsTest.cs b/src/Http/Routing/test/UnitTests/LinkGeneratorRouteValuesAddressExtensionsTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/LinkGeneratorRouteValuesAddressExtensionsTest.cs
rename to src/Http/Routing/test/UnitTests/LinkGeneratorRouteValuesAddressExtensionsTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/LinkGeneratorTestBase.cs b/src/Http/Routing/test/UnitTests/LinkGeneratorTestBase.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/LinkGeneratorTestBase.cs
rename to src/Http/Routing/test/UnitTests/LinkGeneratorTestBase.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Logging/WriteContext.cs b/src/Http/Routing/test/UnitTests/Logging/WriteContext.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Logging/WriteContext.cs
rename to src/Http/Routing/test/UnitTests/Logging/WriteContext.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/AsciiTest.cs b/src/Http/Routing/test/UnitTests/Matching/AsciiTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/AsciiTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/AsciiTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/BarebonesMatcher.cs b/src/Http/Routing/test/UnitTests/Matching/BarebonesMatcher.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/BarebonesMatcher.cs
rename to src/Http/Routing/test/UnitTests/Matching/BarebonesMatcher.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/BarebonesMatcherBuilder.cs b/src/Http/Routing/test/UnitTests/Matching/BarebonesMatcherBuilder.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/BarebonesMatcherBuilder.cs
rename to src/Http/Routing/test/UnitTests/Matching/BarebonesMatcherBuilder.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/BarebonesMatcherConformanceTest.cs b/src/Http/Routing/test/UnitTests/Matching/BarebonesMatcherConformanceTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/BarebonesMatcherConformanceTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/BarebonesMatcherConformanceTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/CandidateSetTest.cs b/src/Http/Routing/test/UnitTests/Matching/CandidateSetTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/CandidateSetTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/CandidateSetTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/DataSourceDependentMatcherTest.cs b/src/Http/Routing/test/UnitTests/Matching/DataSourceDependentMatcherTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/DataSourceDependentMatcherTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/DataSourceDependentMatcherTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/DefaultEndpointSelectorTest.cs b/src/Http/Routing/test/UnitTests/Matching/DefaultEndpointSelectorTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/DefaultEndpointSelectorTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/DefaultEndpointSelectorTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/DfaMatcherBuilderTest.cs b/src/Http/Routing/test/UnitTests/Matching/DfaMatcherBuilderTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/DfaMatcherBuilderTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/DfaMatcherBuilderTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/DfaMatcherConformanceTest.cs b/src/Http/Routing/test/UnitTests/Matching/DfaMatcherConformanceTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/DfaMatcherConformanceTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/DfaMatcherConformanceTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/DfaMatcherTest.cs b/src/Http/Routing/test/UnitTests/Matching/DfaMatcherTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/DfaMatcherTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/DfaMatcherTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/DictionaryJumpTableTest.cs b/src/Http/Routing/test/UnitTests/Matching/DictionaryJumpTableTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/DictionaryJumpTableTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/DictionaryJumpTableTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/EndpointMetadataComparerTest.cs b/src/Http/Routing/test/UnitTests/Matching/EndpointMetadataComparerTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/EndpointMetadataComparerTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/EndpointMetadataComparerTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/FastPathTokenizerTest.cs b/src/Http/Routing/test/UnitTests/Matching/FastPathTokenizerTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/FastPathTokenizerTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/FastPathTokenizerTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/FullFeaturedMatcherConformanceTest.cs b/src/Http/Routing/test/UnitTests/Matching/FullFeaturedMatcherConformanceTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/FullFeaturedMatcherConformanceTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/FullFeaturedMatcherConformanceTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/HttpMethodMatcherPolicyIntegrationTest.cs b/src/Http/Routing/test/UnitTests/Matching/HttpMethodMatcherPolicyIntegrationTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/HttpMethodMatcherPolicyIntegrationTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/HttpMethodMatcherPolicyIntegrationTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/HttpMethodMatcherPolicyTest.cs b/src/Http/Routing/test/UnitTests/Matching/HttpMethodMatcherPolicyTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/HttpMethodMatcherPolicyTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/HttpMethodMatcherPolicyTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/ILEmitTrieFactoryTest.cs b/src/Http/Routing/test/UnitTests/Matching/ILEmitTrieFactoryTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/ILEmitTrieFactoryTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/ILEmitTrieFactoryTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/ILEmitTrieJumpTableTest.cs b/src/Http/Routing/test/UnitTests/Matching/ILEmitTrieJumpTableTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/ILEmitTrieJumpTableTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/ILEmitTrieJumpTableTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/LinearSearchJumpTableTest.cs b/src/Http/Routing/test/UnitTests/Matching/LinearSearchJumpTableTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/LinearSearchJumpTableTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/LinearSearchJumpTableTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/MatcherAssert.cs b/src/Http/Routing/test/UnitTests/Matching/MatcherAssert.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/MatcherAssert.cs
rename to src/Http/Routing/test/UnitTests/Matching/MatcherAssert.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/MatcherConformanceTest.MultipleEndpoint.cs b/src/Http/Routing/test/UnitTests/Matching/MatcherConformanceTest.MultipleEndpoint.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/MatcherConformanceTest.MultipleEndpoint.cs
rename to src/Http/Routing/test/UnitTests/Matching/MatcherConformanceTest.MultipleEndpoint.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/MatcherConformanceTest.SingleEndpoint.cs b/src/Http/Routing/test/UnitTests/Matching/MatcherConformanceTest.SingleEndpoint.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/MatcherConformanceTest.SingleEndpoint.cs
rename to src/Http/Routing/test/UnitTests/Matching/MatcherConformanceTest.SingleEndpoint.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/MatcherConformanceTest.cs b/src/Http/Routing/test/UnitTests/Matching/MatcherConformanceTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/MatcherConformanceTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/MatcherConformanceTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/MultipleEntryJumpTableTest.cs b/src/Http/Routing/test/UnitTests/Matching/MultipleEntryJumpTableTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/MultipleEntryJumpTableTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/MultipleEntryJumpTableTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/NonVectorizedILEmitTrieJumpTableTest.cs b/src/Http/Routing/test/UnitTests/Matching/NonVectorizedILEmitTrieJumpTableTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/NonVectorizedILEmitTrieJumpTableTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/NonVectorizedILEmitTrieJumpTableTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/RouteEndpointComparerTest.cs b/src/Http/Routing/test/UnitTests/Matching/RouteEndpointComparerTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/RouteEndpointComparerTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/RouteEndpointComparerTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/RouteMatcher.cs b/src/Http/Routing/test/UnitTests/Matching/RouteMatcher.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/RouteMatcher.cs
rename to src/Http/Routing/test/UnitTests/Matching/RouteMatcher.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/RouteMatcherBuilder.cs b/src/Http/Routing/test/UnitTests/Matching/RouteMatcherBuilder.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/RouteMatcherBuilder.cs
rename to src/Http/Routing/test/UnitTests/Matching/RouteMatcherBuilder.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/RouteMatcherConformanceTest.cs b/src/Http/Routing/test/UnitTests/Matching/RouteMatcherConformanceTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/RouteMatcherConformanceTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/RouteMatcherConformanceTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/SingleEntryAsciiJumpTableTest.cs b/src/Http/Routing/test/UnitTests/Matching/SingleEntryAsciiJumpTableTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/SingleEntryAsciiJumpTableTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/SingleEntryAsciiJumpTableTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/SingleEntryJumpTableTest.cs b/src/Http/Routing/test/UnitTests/Matching/SingleEntryJumpTableTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/SingleEntryJumpTableTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/SingleEntryJumpTableTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/SingleEntryJumpTableTestBase.cs b/src/Http/Routing/test/UnitTests/Matching/SingleEntryJumpTableTestBase.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/SingleEntryJumpTableTestBase.cs
rename to src/Http/Routing/test/UnitTests/Matching/SingleEntryJumpTableTestBase.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/TreeRouterMatcher.cs b/src/Http/Routing/test/UnitTests/Matching/TreeRouterMatcher.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/TreeRouterMatcher.cs
rename to src/Http/Routing/test/UnitTests/Matching/TreeRouterMatcher.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/TreeRouterMatcherBuilder.cs b/src/Http/Routing/test/UnitTests/Matching/TreeRouterMatcherBuilder.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/TreeRouterMatcherBuilder.cs
rename to src/Http/Routing/test/UnitTests/Matching/TreeRouterMatcherBuilder.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/TreeRouterMatcherConformanceTest.cs b/src/Http/Routing/test/UnitTests/Matching/TreeRouterMatcherConformanceTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/TreeRouterMatcherConformanceTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/TreeRouterMatcherConformanceTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/VectorizedILEmitTrieJumpTableTest.cs b/src/Http/Routing/test/UnitTests/Matching/VectorizedILEmitTrieJumpTableTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/VectorizedILEmitTrieJumpTableTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/VectorizedILEmitTrieJumpTableTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/ZeroEntryJumpTableTest.cs b/src/Http/Routing/test/UnitTests/Matching/ZeroEntryJumpTableTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Matching/ZeroEntryJumpTableTest.cs
rename to src/Http/Routing/test/UnitTests/Matching/ZeroEntryJumpTableTest.cs
diff --git a/src/Http/Routing/test/UnitTests/Microsoft.AspNetCore.Routing.Tests.csproj b/src/Http/Routing/test/UnitTests/Microsoft.AspNetCore.Routing.Tests.csproj
new file mode 100644
index 0000000000..198d7624c3
--- /dev/null
+++ b/src/Http/Routing/test/UnitTests/Microsoft.AspNetCore.Routing.Tests.csproj
@@ -0,0 +1,18 @@
+
+
+
+ netcoreapp3.0
+ Microsoft.AspNetCore.Routing
+ true
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Patterns/DefaultRoutePatternTransformerTest.cs b/src/Http/Routing/test/UnitTests/Patterns/DefaultRoutePatternTransformerTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Patterns/DefaultRoutePatternTransformerTest.cs
rename to src/Http/Routing/test/UnitTests/Patterns/DefaultRoutePatternTransformerTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Patterns/InlineRouteParameterParserTest.cs b/src/Http/Routing/test/UnitTests/Patterns/InlineRouteParameterParserTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Patterns/InlineRouteParameterParserTest.cs
rename to src/Http/Routing/test/UnitTests/Patterns/InlineRouteParameterParserTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Patterns/RoutePatternFactoryTest.cs b/src/Http/Routing/test/UnitTests/Patterns/RoutePatternFactoryTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Patterns/RoutePatternFactoryTest.cs
rename to src/Http/Routing/test/UnitTests/Patterns/RoutePatternFactoryTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Patterns/RoutePatternMatcherTest.cs b/src/Http/Routing/test/UnitTests/Patterns/RoutePatternMatcherTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Patterns/RoutePatternMatcherTest.cs
rename to src/Http/Routing/test/UnitTests/Patterns/RoutePatternMatcherTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Patterns/RoutePatternParserTest.cs b/src/Http/Routing/test/UnitTests/Patterns/RoutePatternParserTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Patterns/RoutePatternParserTest.cs
rename to src/Http/Routing/test/UnitTests/Patterns/RoutePatternParserTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RequestDelegateRouteBuilderExtensionsTest.cs b/src/Http/Routing/test/UnitTests/RequestDelegateRouteBuilderExtensionsTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RequestDelegateRouteBuilderExtensionsTest.cs
rename to src/Http/Routing/test/UnitTests/RequestDelegateRouteBuilderExtensionsTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteBuilderTest.cs b/src/Http/Routing/test/UnitTests/RouteBuilderTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteBuilderTest.cs
rename to src/Http/Routing/test/UnitTests/RouteBuilderTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteCollectionTest.cs b/src/Http/Routing/test/UnitTests/RouteCollectionTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteCollectionTest.cs
rename to src/Http/Routing/test/UnitTests/RouteCollectionTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteConstraintBuilderTest.cs b/src/Http/Routing/test/UnitTests/RouteConstraintBuilderTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteConstraintBuilderTest.cs
rename to src/Http/Routing/test/UnitTests/RouteConstraintBuilderTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteEndpointModelTest.cs b/src/Http/Routing/test/UnitTests/RouteEndpointModelTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteEndpointModelTest.cs
rename to src/Http/Routing/test/UnitTests/RouteEndpointModelTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteOptionsTests.cs b/src/Http/Routing/test/UnitTests/RouteOptionsTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteOptionsTests.cs
rename to src/Http/Routing/test/UnitTests/RouteOptionsTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteTest.cs b/src/Http/Routing/test/UnitTests/RouteTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteTest.cs
rename to src/Http/Routing/test/UnitTests/RouteTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteValueEqualityComparerTest.cs b/src/Http/Routing/test/UnitTests/RouteValueEqualityComparerTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteValueEqualityComparerTest.cs
rename to src/Http/Routing/test/UnitTests/RouteValueEqualityComparerTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteValuesAddressMetadataTests.cs b/src/Http/Routing/test/UnitTests/RouteValuesAddressMetadataTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteValuesAddressMetadataTests.cs
rename to src/Http/Routing/test/UnitTests/RouteValuesAddressMetadataTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteValuesAddressSchemeTest.cs b/src/Http/Routing/test/UnitTests/RouteValuesAddressSchemeTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouteValuesAddressSchemeTest.cs
rename to src/Http/Routing/test/UnitTests/RouteValuesAddressSchemeTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouterMiddlewareTest.cs b/src/Http/Routing/test/UnitTests/RouterMiddlewareTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/RouterMiddlewareTest.cs
rename to src/Http/Routing/test/UnitTests/RouterMiddlewareTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Template/RoutePatternPrecedenceTests.cs b/src/Http/Routing/test/UnitTests/Template/RoutePatternPrecedenceTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Template/RoutePatternPrecedenceTests.cs
rename to src/Http/Routing/test/UnitTests/Template/RoutePatternPrecedenceTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Template/RoutePrecedenceTestsBase.cs b/src/Http/Routing/test/UnitTests/Template/RoutePrecedenceTestsBase.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Template/RoutePrecedenceTestsBase.cs
rename to src/Http/Routing/test/UnitTests/Template/RoutePrecedenceTestsBase.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Template/RouteTemplatePrecedenceTests.cs b/src/Http/Routing/test/UnitTests/Template/RouteTemplatePrecedenceTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Template/RouteTemplatePrecedenceTests.cs
rename to src/Http/Routing/test/UnitTests/Template/RouteTemplatePrecedenceTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Template/TemplateBinderTests.cs b/src/Http/Routing/test/UnitTests/Template/TemplateBinderTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Template/TemplateBinderTests.cs
rename to src/Http/Routing/test/UnitTests/Template/TemplateBinderTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Template/TemplateMatcherTests.cs b/src/Http/Routing/test/UnitTests/Template/TemplateMatcherTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Template/TemplateMatcherTests.cs
rename to src/Http/Routing/test/UnitTests/Template/TemplateMatcherTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Template/TemplateParserTests.cs b/src/Http/Routing/test/UnitTests/Template/TemplateParserTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Template/TemplateParserTests.cs
rename to src/Http/Routing/test/UnitTests/Template/TemplateParserTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Template/TemplateSegmentTest.cs b/src/Http/Routing/test/UnitTests/Template/TemplateSegmentTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Template/TemplateSegmentTest.cs
rename to src/Http/Routing/test/UnitTests/Template/TemplateSegmentTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TemplateParserDefaultValuesTests.cs b/src/Http/Routing/test/UnitTests/TemplateParserDefaultValuesTests.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TemplateParserDefaultValuesTests.cs
rename to src/Http/Routing/test/UnitTests/TemplateParserDefaultValuesTests.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestConstants.cs b/src/Http/Routing/test/UnitTests/TestConstants.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestConstants.cs
rename to src/Http/Routing/test/UnitTests/TestConstants.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestObjects/CapturingConstraint.cs b/src/Http/Routing/test/UnitTests/TestObjects/CapturingConstraint.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestObjects/CapturingConstraint.cs
rename to src/Http/Routing/test/UnitTests/TestObjects/CapturingConstraint.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestObjects/DynamicEndpointDataSource.cs b/src/Http/Routing/test/UnitTests/TestObjects/DynamicEndpointDataSource.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestObjects/DynamicEndpointDataSource.cs
rename to src/Http/Routing/test/UnitTests/TestObjects/DynamicEndpointDataSource.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestObjects/SlugifyParameterTransformer.cs b/src/Http/Routing/test/UnitTests/TestObjects/SlugifyParameterTransformer.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestObjects/SlugifyParameterTransformer.cs
rename to src/Http/Routing/test/UnitTests/TestObjects/SlugifyParameterTransformer.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestObjects/TestMatcher.cs b/src/Http/Routing/test/UnitTests/TestObjects/TestMatcher.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestObjects/TestMatcher.cs
rename to src/Http/Routing/test/UnitTests/TestObjects/TestMatcher.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestObjects/TestMatcherFactory.cs b/src/Http/Routing/test/UnitTests/TestObjects/TestMatcherFactory.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestObjects/TestMatcherFactory.cs
rename to src/Http/Routing/test/UnitTests/TestObjects/TestMatcherFactory.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestObjects/TestServiceProvider.cs b/src/Http/Routing/test/UnitTests/TestObjects/TestServiceProvider.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestObjects/TestServiceProvider.cs
rename to src/Http/Routing/test/UnitTests/TestObjects/TestServiceProvider.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestObjects/UpperCaseParameterTransform.cs b/src/Http/Routing/test/UnitTests/TestObjects/UpperCaseParameterTransform.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/TestObjects/UpperCaseParameterTransform.cs
rename to src/Http/Routing/test/UnitTests/TestObjects/UpperCaseParameterTransform.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Tree/TreeRouteBuilderTest.cs b/src/Http/Routing/test/UnitTests/Tree/TreeRouteBuilderTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Tree/TreeRouteBuilderTest.cs
rename to src/Http/Routing/test/UnitTests/Tree/TreeRouteBuilderTest.cs
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Tree/TreeRouterTest.cs b/src/Http/Routing/test/UnitTests/Tree/TreeRouterTest.cs
similarity index 100%
rename from src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Tree/TreeRouterTest.cs
rename to src/Http/Routing/test/UnitTests/Tree/TreeRouterTest.cs
diff --git a/src/Routing/benchmarkapps/Benchmarks/Benchmarks.csproj b/src/Http/Routing/test/testassets/Benchmarks/Benchmarks.csproj
similarity index 56%
rename from src/Routing/benchmarkapps/Benchmarks/Benchmarks.csproj
rename to src/Http/Routing/test/testassets/Benchmarks/Benchmarks.csproj
index eacd72f704..76b49714d4 100644
--- a/src/Routing/benchmarkapps/Benchmarks/Benchmarks.csproj
+++ b/src/Http/Routing/test/testassets/Benchmarks/Benchmarks.csproj
@@ -6,17 +6,17 @@
true
-
+
-
-
-
-
+
+
+
+
-
+
-
+
+
+ netcoreapp3.0
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Routing/samples/RoutingSandbox/SlugifyParameterTransformer.cs b/src/Http/Routing/test/testassets/RoutingSandbox/SlugifyParameterTransformer.cs
similarity index 100%
rename from src/Routing/samples/RoutingSandbox/SlugifyParameterTransformer.cs
rename to src/Http/Routing/test/testassets/RoutingSandbox/SlugifyParameterTransformer.cs
diff --git a/src/Routing/samples/RoutingSandbox/UseEndpointRoutingStartup.cs b/src/Http/Routing/test/testassets/RoutingSandbox/UseEndpointRoutingStartup.cs
similarity index 100%
rename from src/Routing/samples/RoutingSandbox/UseEndpointRoutingStartup.cs
rename to src/Http/Routing/test/testassets/RoutingSandbox/UseEndpointRoutingStartup.cs
diff --git a/src/Routing/samples/RoutingSandbox/UseRouterStartup.cs b/src/Http/Routing/test/testassets/RoutingSandbox/UseRouterStartup.cs
similarity index 100%
rename from src/Routing/samples/RoutingSandbox/UseRouterStartup.cs
rename to src/Http/Routing/test/testassets/RoutingSandbox/UseRouterStartup.cs
diff --git a/src/Routing/samples/RoutingSandbox/wwwroot/full.render.js b/src/Http/Routing/test/testassets/RoutingSandbox/wwwroot/full.render.js
similarity index 100%
rename from src/Routing/samples/RoutingSandbox/wwwroot/full.render.js
rename to src/Http/Routing/test/testassets/RoutingSandbox/wwwroot/full.render.js
diff --git a/src/Routing/samples/RoutingSandbox/wwwroot/graph-ui.html b/src/Http/Routing/test/testassets/RoutingSandbox/wwwroot/graph-ui.html
similarity index 100%
rename from src/Routing/samples/RoutingSandbox/wwwroot/graph-ui.html
rename to src/Http/Routing/test/testassets/RoutingSandbox/wwwroot/graph-ui.html
diff --git a/src/Routing/samples/RoutingSandbox/wwwroot/viz.js b/src/Http/Routing/test/testassets/RoutingSandbox/wwwroot/viz.js
similarity index 100%
rename from src/Routing/samples/RoutingSandbox/wwwroot/viz.js
rename to src/Http/Routing/test/testassets/RoutingSandbox/wwwroot/viz.js
diff --git a/src/Routing/test/WebSites/RoutingWebSite/EndsWithStringRouteConstraint.cs b/src/Http/Routing/test/testassets/RoutingWebSite/EndsWithStringRouteConstraint.cs
similarity index 100%
rename from src/Routing/test/WebSites/RoutingWebSite/EndsWithStringRouteConstraint.cs
rename to src/Http/Routing/test/testassets/RoutingWebSite/EndsWithStringRouteConstraint.cs
diff --git a/src/Routing/test/WebSites/RoutingWebSite/HelloExtension/EndpointRouteBuilderExtensions.cs b/src/Http/Routing/test/testassets/RoutingWebSite/HelloExtension/EndpointRouteBuilderExtensions.cs
similarity index 100%
rename from src/Routing/test/WebSites/RoutingWebSite/HelloExtension/EndpointRouteBuilderExtensions.cs
rename to src/Http/Routing/test/testassets/RoutingWebSite/HelloExtension/EndpointRouteBuilderExtensions.cs
diff --git a/src/Routing/test/WebSites/RoutingWebSite/HelloExtension/HelloAppBuilderExtensions.cs b/src/Http/Routing/test/testassets/RoutingWebSite/HelloExtension/HelloAppBuilderExtensions.cs
similarity index 100%
rename from src/Routing/test/WebSites/RoutingWebSite/HelloExtension/HelloAppBuilderExtensions.cs
rename to src/Http/Routing/test/testassets/RoutingWebSite/HelloExtension/HelloAppBuilderExtensions.cs
diff --git a/src/Routing/test/WebSites/RoutingWebSite/HelloExtension/HelloMiddleware.cs b/src/Http/Routing/test/testassets/RoutingWebSite/HelloExtension/HelloMiddleware.cs
similarity index 100%
rename from src/Routing/test/WebSites/RoutingWebSite/HelloExtension/HelloMiddleware.cs
rename to src/Http/Routing/test/testassets/RoutingWebSite/HelloExtension/HelloMiddleware.cs
diff --git a/src/Routing/test/WebSites/RoutingWebSite/HelloExtension/HelloOptions.cs b/src/Http/Routing/test/testassets/RoutingWebSite/HelloExtension/HelloOptions.cs
similarity index 100%
rename from src/Routing/test/WebSites/RoutingWebSite/HelloExtension/HelloOptions.cs
rename to src/Http/Routing/test/testassets/RoutingWebSite/HelloExtension/HelloOptions.cs
diff --git a/src/Routing/test/WebSites/RoutingWebSite/Program.cs b/src/Http/Routing/test/testassets/RoutingWebSite/Program.cs
similarity index 100%
rename from src/Routing/test/WebSites/RoutingWebSite/Program.cs
rename to src/Http/Routing/test/testassets/RoutingWebSite/Program.cs
diff --git a/src/Http/Routing/test/testassets/RoutingWebSite/RoutingWebSite.csproj b/src/Http/Routing/test/testassets/RoutingWebSite/RoutingWebSite.csproj
new file mode 100644
index 0000000000..36f27b2b9c
--- /dev/null
+++ b/src/Http/Routing/test/testassets/RoutingWebSite/RoutingWebSite.csproj
@@ -0,0 +1,15 @@
+
+
+
+ netcoreapp3.0
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Routing/test/WebSites/RoutingWebSite/UseEndpointRoutingStartup.cs b/src/Http/Routing/test/testassets/RoutingWebSite/UseEndpointRoutingStartup.cs
similarity index 100%
rename from src/Routing/test/WebSites/RoutingWebSite/UseEndpointRoutingStartup.cs
rename to src/Http/Routing/test/testassets/RoutingWebSite/UseEndpointRoutingStartup.cs
diff --git a/src/Routing/test/WebSites/RoutingWebSite/UseRouterStartup.cs b/src/Http/Routing/test/testassets/RoutingWebSite/UseRouterStartup.cs
similarity index 100%
rename from src/Routing/test/WebSites/RoutingWebSite/UseRouterStartup.cs
rename to src/Http/Routing/test/testassets/RoutingWebSite/UseRouterStartup.cs
diff --git a/src/Routing/tools/Swaggatherer/Program.cs b/src/Http/Routing/tools/Swaggatherer/Program.cs
similarity index 100%
rename from src/Routing/tools/Swaggatherer/Program.cs
rename to src/Http/Routing/tools/Swaggatherer/Program.cs
diff --git a/src/Routing/tools/Swaggatherer/README.md b/src/Http/Routing/tools/Swaggatherer/README.md
similarity index 100%
rename from src/Routing/tools/Swaggatherer/README.md
rename to src/Http/Routing/tools/Swaggatherer/README.md
diff --git a/src/Routing/tools/Swaggatherer/RouteEntry.cs b/src/Http/Routing/tools/Swaggatherer/RouteEntry.cs
similarity index 100%
rename from src/Routing/tools/Swaggatherer/RouteEntry.cs
rename to src/Http/Routing/tools/Swaggatherer/RouteEntry.cs
diff --git a/src/Http/Routing/tools/Swaggatherer/Swaggatherer.csproj b/src/Http/Routing/tools/Swaggatherer/Swaggatherer.csproj
new file mode 100644
index 0000000000..b87254ef23
--- /dev/null
+++ b/src/Http/Routing/tools/Swaggatherer/Swaggatherer.csproj
@@ -0,0 +1,15 @@
+
+
+
+ Exe
+ netcoreapp3.0
+ true
+
+
+
+
+
+
+
+
+
diff --git a/src/Routing/tools/Swaggatherer/SwaggathererApplication.cs b/src/Http/Routing/tools/Swaggatherer/SwaggathererApplication.cs
similarity index 100%
rename from src/Routing/tools/Swaggatherer/SwaggathererApplication.cs
rename to src/Http/Routing/tools/Swaggatherer/SwaggathererApplication.cs
diff --git a/src/Routing/tools/Swaggatherer/Template.cs b/src/Http/Routing/tools/Swaggatherer/Template.cs
similarity index 100%
rename from src/Routing/tools/Swaggatherer/Template.cs
rename to src/Http/Routing/tools/Swaggatherer/Template.cs
diff --git a/src/HttpSysServer/.gitignore b/src/HttpSysServer/.gitignore
deleted file mode 100644
index e062ff6d76..0000000000
--- a/src/HttpSysServer/.gitignore
+++ /dev/null
@@ -1,32 +0,0 @@
-[Oo]bj/
-[Bb]in/
-TestResults/
-.nuget/
-_ReSharper.*/
-packages/
-artifacts/
-PublishProfiles/
-*.user
-*.suo
-*.cache
-*.docstates
-_ReSharper.*
-nuget.exe
-*net45.csproj
-*net451.csproj
-*k10.csproj
-*.psess
-*.vsp
-*.pidb
-*.userprefs
-*DS_Store
-*.ncrunchsolution
-*.*sdf
-*.ipch
-*.sln.ide
-project.lock.json
-/.vs
-.vscode/
-.build/
-.testPublish/
-global.json
diff --git a/src/HttpSysServer/Directory.Build.props b/src/HttpSysServer/Directory.Build.props
deleted file mode 100644
index a73e31b984..0000000000
--- a/src/HttpSysServer/Directory.Build.props
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
-
-
-
-
- Microsoft ASP.NET Core
- https://github.com/aspnet/AspNetCore
- git
- $(MSBuildThisFileDirectory)
- $(MSBuildThisFileDirectory)build\Key.snk
- true
- true
-
-
diff --git a/src/HttpSysServer/Directory.Build.targets b/src/HttpSysServer/Directory.Build.targets
deleted file mode 100644
index 7a09b207eb..0000000000
--- a/src/HttpSysServer/Directory.Build.targets
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
- $(MicrosoftNETCoreAppPackageVersion)
-
-
diff --git a/src/HttpSysServer/HttpSysServer.sln b/src/HttpSysServer/HttpSysServer.sln
deleted file mode 100644
index d0b62c0c4f..0000000000
--- a/src/HttpSysServer/HttpSysServer.sln
+++ /dev/null
@@ -1,178 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 15
-VisualStudioVersion = 15.0.26730.10
-MinimumVisualStudioVersion = 15.0.26730.03
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{99D5E5F3-88F5-4CCF-8D8C-717C8925DF09}"
- ProjectSection(SolutionItems) = preProject
- src\Directory.Build.props = src\Directory.Build.props
- EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{E183C826-1360-4DFF-9994-F33CED5C8525}"
- ProjectSection(SolutionItems) = preProject
- test\Directory.Build.props = test\Directory.Build.props
- EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{3A1E31E3-2794-4CA3-B8E2-253E96BDE514}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{5E9B546C-17AC-4BDF-BCB3-5955D4755ED8}"
- ProjectSection(SolutionItems) = preProject
- .appveyor.yml = .appveyor.yml
- .travis.yml = .travis.yml
- build.cmd = build.cmd
- build.ps1 = build.ps1
- build.sh = build.sh
- Directory.Build.props = Directory.Build.props
- Directory.Build.targets = Directory.Build.targets
- NuGet.config = NuGet.config
- version.xml = version.xml
- EndProjectSection
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestClient", "samples\TestClient\TestClient.csproj", "{8B828433-B333-4C19-96AE-00BFFF9D8841}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SelfHostServer", "samples\SelfHostServer\SelfHostServer.csproj", "{1236F93A-AC5C-4A77-9477-C88F040151CA}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Server.HttpSys.FunctionalTests", "test\Microsoft.AspNetCore.Server.HttpSys.FunctionalTests\Microsoft.AspNetCore.Server.HttpSys.FunctionalTests.csproj", "{4492FF4C-9032-411D-853F-46B01755E504}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Server.HttpSys", "src\Microsoft.AspNetCore.Server.HttpSys\Microsoft.AspNetCore.Server.HttpSys.csproj", "{B9F45F9D-D206-47F0-8E5F-54CE2F0BDF92}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HotAddSample", "samples\HotAddSample\HotAddSample.csproj", "{8BFA392A-8B67-4454-916B-67C545EDFAEF}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Server.HttpSys.Tests", "test\Microsoft.AspNetCore.Server.HttpSys.Tests\Microsoft.AspNetCore.Server.HttpSys.Tests.csproj", "{E837249E-E666-4DF2-AFC3-7A4D70234F9F}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{85914BA9-4168-48C5-9C3F-E2E8B1479A6E}"
- ProjectSection(SolutionItems) = preProject
- build\dependencies.props = build\dependencies.props
- build\Key.snk = build\Key.snk
- build\repo.props = build\repo.props
- build\sources.props = build\sources.props
- EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "shared", "shared", "{AB6964C9-A7AF-4FAC-BEA1-C8A538EC989E}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Microsoft.AspNetCore.HttpSys.Sources", "Microsoft.AspNetCore.HttpSys.Sources", "{4AB1E069-2A8A-4D46-98AE-CC82E3497038}"
- ProjectSection(SolutionItems) = preProject
- shared\Microsoft.AspNetCore.HttpSys.Sources\Constants.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\Constants.cs
- EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NativeInterop", "NativeInterop", "{94AD33C9-1BDD-4385-A850-4B24FD5D5012}"
- ProjectSection(SolutionItems) = preProject
- shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\CookedUrl.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\CookedUrl.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\HeapAllocHandle.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\HeapAllocHandle.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\HttpApiTypes.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\HttpApiTypes.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\HttpSysRequestHeader.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\HttpSysRequestHeader.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\HttpSysResponseHeader.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\HttpSysResponseHeader.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\NativeRequestInput.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\NativeRequestInput.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\NclUtilities.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\NclUtilities.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\SafeLocalFreeChannelBinding.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\SafeLocalFreeChannelBinding.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\SafeLocalMemHandle.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\SafeLocalMemHandle.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\SafeNativeOverlapped.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\SafeNativeOverlapped.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\SocketAddress.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\SocketAddress.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\UnsafeNativeMethods.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\NativeInterop\UnsafeNativeMethods.cs
- EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "RequestProcessing", "RequestProcessing", "{AA8C91BD-D558-468B-9258-1E186884F78D}"
- ProjectSection(SolutionItems) = preProject
- shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\HeaderCollection.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\HeaderCollection.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\HeaderEncoding.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\HeaderEncoding.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\HeaderParser.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\HeaderParser.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\HttpKnownHeaderNames.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\HttpKnownHeaderNames.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\NativeRequestContext.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\NativeRequestContext.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\RequestHeaders.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\RequestHeaders.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\RequestHeaders.Generated.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\RequestHeaders.Generated.cs
- shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\SslStatus.cs = shared\Microsoft.AspNetCore.HttpSys.Sources\RequestProcessing\SslStatus.cs
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Debug|Mixed Platforms = Debug|Mixed Platforms
- Debug|x86 = Debug|x86
- Release|Any CPU = Release|Any CPU
- Release|Mixed Platforms = Release|Mixed Platforms
- Release|x86 = Release|x86
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {8B828433-B333-4C19-96AE-00BFFF9D8841}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {8B828433-B333-4C19-96AE-00BFFF9D8841}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {8B828433-B333-4C19-96AE-00BFFF9D8841}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {8B828433-B333-4C19-96AE-00BFFF9D8841}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {8B828433-B333-4C19-96AE-00BFFF9D8841}.Debug|x86.ActiveCfg = Debug|Any CPU
- {8B828433-B333-4C19-96AE-00BFFF9D8841}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {8B828433-B333-4C19-96AE-00BFFF9D8841}.Release|Any CPU.Build.0 = Release|Any CPU
- {8B828433-B333-4C19-96AE-00BFFF9D8841}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {8B828433-B333-4C19-96AE-00BFFF9D8841}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {8B828433-B333-4C19-96AE-00BFFF9D8841}.Release|x86.ActiveCfg = Release|Any CPU
- {1236F93A-AC5C-4A77-9477-C88F040151CA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {1236F93A-AC5C-4A77-9477-C88F040151CA}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {1236F93A-AC5C-4A77-9477-C88F040151CA}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {1236F93A-AC5C-4A77-9477-C88F040151CA}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {1236F93A-AC5C-4A77-9477-C88F040151CA}.Debug|x86.ActiveCfg = Debug|Any CPU
- {1236F93A-AC5C-4A77-9477-C88F040151CA}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {1236F93A-AC5C-4A77-9477-C88F040151CA}.Release|Any CPU.Build.0 = Release|Any CPU
- {1236F93A-AC5C-4A77-9477-C88F040151CA}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {1236F93A-AC5C-4A77-9477-C88F040151CA}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {1236F93A-AC5C-4A77-9477-C88F040151CA}.Release|x86.ActiveCfg = Release|Any CPU
- {4492FF4C-9032-411D-853F-46B01755E504}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {4492FF4C-9032-411D-853F-46B01755E504}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {4492FF4C-9032-411D-853F-46B01755E504}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {4492FF4C-9032-411D-853F-46B01755E504}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {4492FF4C-9032-411D-853F-46B01755E504}.Debug|x86.ActiveCfg = Debug|Any CPU
- {4492FF4C-9032-411D-853F-46B01755E504}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {4492FF4C-9032-411D-853F-46B01755E504}.Release|Any CPU.Build.0 = Release|Any CPU
- {4492FF4C-9032-411D-853F-46B01755E504}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {4492FF4C-9032-411D-853F-46B01755E504}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {4492FF4C-9032-411D-853F-46B01755E504}.Release|x86.ActiveCfg = Release|Any CPU
- {B9F45F9D-D206-47F0-8E5F-54CE2F0BDF92}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {B9F45F9D-D206-47F0-8E5F-54CE2F0BDF92}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {B9F45F9D-D206-47F0-8E5F-54CE2F0BDF92}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {B9F45F9D-D206-47F0-8E5F-54CE2F0BDF92}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {B9F45F9D-D206-47F0-8E5F-54CE2F0BDF92}.Debug|x86.ActiveCfg = Debug|Any CPU
- {B9F45F9D-D206-47F0-8E5F-54CE2F0BDF92}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {B9F45F9D-D206-47F0-8E5F-54CE2F0BDF92}.Release|Any CPU.Build.0 = Release|Any CPU
- {B9F45F9D-D206-47F0-8E5F-54CE2F0BDF92}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {B9F45F9D-D206-47F0-8E5F-54CE2F0BDF92}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {B9F45F9D-D206-47F0-8E5F-54CE2F0BDF92}.Release|x86.ActiveCfg = Release|Any CPU
- {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Debug|x86.ActiveCfg = Debug|Any CPU
- {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Debug|x86.Build.0 = Debug|Any CPU
- {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Release|Any CPU.Build.0 = Release|Any CPU
- {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Release|x86.ActiveCfg = Release|Any CPU
- {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Release|x86.Build.0 = Release|Any CPU
- {E837249E-E666-4DF2-AFC3-7A4D70234F9F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {E837249E-E666-4DF2-AFC3-7A4D70234F9F}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {E837249E-E666-4DF2-AFC3-7A4D70234F9F}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {E837249E-E666-4DF2-AFC3-7A4D70234F9F}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {E837249E-E666-4DF2-AFC3-7A4D70234F9F}.Debug|x86.ActiveCfg = Debug|Any CPU
- {E837249E-E666-4DF2-AFC3-7A4D70234F9F}.Debug|x86.Build.0 = Debug|Any CPU
- {E837249E-E666-4DF2-AFC3-7A4D70234F9F}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {E837249E-E666-4DF2-AFC3-7A4D70234F9F}.Release|Any CPU.Build.0 = Release|Any CPU
- {E837249E-E666-4DF2-AFC3-7A4D70234F9F}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {E837249E-E666-4DF2-AFC3-7A4D70234F9F}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {E837249E-E666-4DF2-AFC3-7A4D70234F9F}.Release|x86.ActiveCfg = Release|Any CPU
- {E837249E-E666-4DF2-AFC3-7A4D70234F9F}.Release|x86.Build.0 = Release|Any CPU
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
- GlobalSection(NestedProjects) = preSolution
- {8B828433-B333-4C19-96AE-00BFFF9D8841} = {3A1E31E3-2794-4CA3-B8E2-253E96BDE514}
- {1236F93A-AC5C-4A77-9477-C88F040151CA} = {3A1E31E3-2794-4CA3-B8E2-253E96BDE514}
- {4492FF4C-9032-411D-853F-46B01755E504} = {E183C826-1360-4DFF-9994-F33CED5C8525}
- {B9F45F9D-D206-47F0-8E5F-54CE2F0BDF92} = {99D5E5F3-88F5-4CCF-8D8C-717C8925DF09}
- {8BFA392A-8B67-4454-916B-67C545EDFAEF} = {3A1E31E3-2794-4CA3-B8E2-253E96BDE514}
- {E837249E-E666-4DF2-AFC3-7A4D70234F9F} = {E183C826-1360-4DFF-9994-F33CED5C8525}
- {85914BA9-4168-48C5-9C3F-E2E8B1479A6E} = {5E9B546C-17AC-4BDF-BCB3-5955D4755ED8}
- {4AB1E069-2A8A-4D46-98AE-CC82E3497038} = {AB6964C9-A7AF-4FAC-BEA1-C8A538EC989E}
- {94AD33C9-1BDD-4385-A850-4B24FD5D5012} = {4AB1E069-2A8A-4D46-98AE-CC82E3497038}
- {AA8C91BD-D558-468B-9258-1E186884F78D} = {4AB1E069-2A8A-4D46-98AE-CC82E3497038}
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- SolutionGuid = {34B42B42-FA09-41AB-9216-14073990C504}
- EndGlobalSection
-EndGlobal
diff --git a/src/HttpSysServer/build/Key.snk b/src/HttpSysServer/build/Key.snk
deleted file mode 100644
index e10e4889c1..0000000000
Binary files a/src/HttpSysServer/build/Key.snk and /dev/null differ
diff --git a/src/HttpSysServer/build/dependencies.props b/src/HttpSysServer/build/dependencies.props
deleted file mode 100644
index 7f8eb26051..0000000000
--- a/src/HttpSysServer/build/dependencies.props
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
- $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
-
-
- 3.0.0-alpha1-20181011.3
- 3.0.0-alpha1-10653
- 3.0.0-alpha1-10653
- 3.0.0-alpha1-10653
- 3.0.0-alpha1-10653
- 3.0.0-preview-27122-01
- 3.0.0-alpha1-10653
- 15.6.1
- 4.6.0-preview1-26907-04
- 4.6.0-preview1-26907-04
- 4.6.0-preview1-26907-04
- 2.3.1
- 2.4.0
-
-
-
-
diff --git a/src/HttpSysServer/build/repo.props b/src/HttpSysServer/build/repo.props
deleted file mode 100644
index 4402da1d0d..0000000000
--- a/src/HttpSysServer/build/repo.props
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
-
-
-
-
diff --git a/src/HttpSysServer/build/sources.props b/src/HttpSysServer/build/sources.props
deleted file mode 100644
index 9215df9751..0000000000
--- a/src/HttpSysServer/build/sources.props
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
- $(DotNetRestoreSources)
-
- $(RestoreSources);
- https://dotnet.myget.org/F/dotnet-core/api/v3/index.json;
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json;
- https://dotnet.myget.org/F/aspnetcore-tools/api/v3/index.json;
-
-
- $(RestoreSources);
- https://api.nuget.org/v3/index.json;
-
-
-
diff --git a/src/HttpSysServer/samples/HotAddSample/HotAddSample.csproj b/src/HttpSysServer/samples/HotAddSample/HotAddSample.csproj
deleted file mode 100644
index 8d66eb779b..0000000000
--- a/src/HttpSysServer/samples/HotAddSample/HotAddSample.csproj
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
- netcoreapp3.0
- Exe
- true
-
-
-
-
-
-
-
-
-
-
diff --git a/src/HttpSysServer/samples/HotAddSample/Properties/launchSettings.json b/src/HttpSysServer/samples/HotAddSample/Properties/launchSettings.json
deleted file mode 100644
index 5df19c1327..0000000000
--- a/src/HttpSysServer/samples/HotAddSample/Properties/launchSettings.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "profiles": {
- "HotAddSample": {
- "commandName": "Project",
- "launchBrowser": true,
- "launchUrl": "http://localhost:12345",
- "environmentVariables": {
- "ASPNETCORE_URLS": "http://localhost:12345",
- "ASPNETCORE_ENVIRONMENT": "Development"
- }
- }
- }
-}
\ No newline at end of file
diff --git a/src/HttpSysServer/samples/SelfHostServer/Properties/launchSettings.json b/src/HttpSysServer/samples/SelfHostServer/Properties/launchSettings.json
deleted file mode 100644
index 54fa816762..0000000000
--- a/src/HttpSysServer/samples/SelfHostServer/Properties/launchSettings.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "profiles": {
- "SelfHostServer": {
- "commandName": "Project",
- "launchBrowser": true,
- "launchUrl": "http://localhost:5000/",
- "environmentVariables": {
- "ASPNETCORE_ENVIRONMENT": "Development"
- }
- }
- }
-}
\ No newline at end of file
diff --git a/src/HttpSysServer/samples/SelfHostServer/SelfHostServer.csproj b/src/HttpSysServer/samples/SelfHostServer/SelfHostServer.csproj
deleted file mode 100644
index 8d66eb779b..0000000000
--- a/src/HttpSysServer/samples/SelfHostServer/SelfHostServer.csproj
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
- netcoreapp3.0
- Exe
- true
-
-
-
-
-
-
-
-
-
-
diff --git a/src/HttpSysServer/src/Directory.Build.props b/src/HttpSysServer/src/Directory.Build.props
deleted file mode 100644
index 4b89a431e7..0000000000
--- a/src/HttpSysServer/src/Directory.Build.props
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
diff --git a/src/HttpSysServer/src/Microsoft.AspNetCore.Server.HttpSys/Microsoft.AspNetCore.Server.HttpSys.csproj b/src/HttpSysServer/src/Microsoft.AspNetCore.Server.HttpSys/Microsoft.AspNetCore.Server.HttpSys.csproj
deleted file mode 100644
index 37e82db51d..0000000000
--- a/src/HttpSysServer/src/Microsoft.AspNetCore.Server.HttpSys/Microsoft.AspNetCore.Server.HttpSys.csproj
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
-
- ASP.NET Core HTTP server that uses the Windows HTTP Server API.
- netcoreapp3.0
- $(NoWarn);CS1591
- true
- true
- aspnetcore;weblistener;httpsys
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/HttpSysServer/test/Directory.Build.props b/src/HttpSysServer/test/Directory.Build.props
deleted file mode 100644
index e6a8743f92..0000000000
--- a/src/HttpSysServer/test/Directory.Build.props
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/HttpSysServer/test/Microsoft.AspNetCore.Server.HttpSys.FunctionalTests/Microsoft.AspNetCore.Server.HttpSys.FunctionalTests.csproj b/src/HttpSysServer/test/Microsoft.AspNetCore.Server.HttpSys.FunctionalTests/Microsoft.AspNetCore.Server.HttpSys.FunctionalTests.csproj
deleted file mode 100644
index 9f9f62b8b8..0000000000
--- a/src/HttpSysServer/test/Microsoft.AspNetCore.Server.HttpSys.FunctionalTests/Microsoft.AspNetCore.Server.HttpSys.FunctionalTests.csproj
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
- netcoreapp3.0
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/HttpSysServer/version.props b/src/HttpSysServer/version.props
deleted file mode 100644
index 71a78cddd8..0000000000
--- a/src/HttpSysServer/version.props
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
- 3.0.0
- alpha1
- $(VersionPrefix)
- $(VersionPrefix)-$(VersionSuffix)-final
- t000
- a-
- $(FeatureBranchVersionPrefix)$(VersionSuffix)-$([System.Text.RegularExpressions.Regex]::Replace('$(FeatureBranchVersionSuffix)', '[^\w-]', '-'))
- $(VersionSuffix)-$(BuildNumber)
-
-
diff --git a/src/IISIntegration/IISIntegration.NoV1.sln b/src/IISIntegration/IISIntegration.NoV1.sln
index e0e3d4967e..c0985af555 100644
--- a/src/IISIntegration/IISIntegration.NoV1.sln
+++ b/src/IISIntegration/IISIntegration.NoV1.sln
@@ -38,7 +38,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{7E80C58E
build\applicationhost.iis.config = build\applicationhost.iis.config
build\Build.Settings = build\Build.Settings
build\Config.Definitions.Props = build\Config.Definitions.Props
- build\dependencies.props = build\dependencies.props
build\functional-test-assets.targets = build\functional-test-assets.targets
build\Key.snk = build\Key.snk
build\launchSettings.json = build\launchSettings.json
@@ -116,7 +115,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "IIS.BackwardsCompatibility.
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "IIS.ForwardsCompatibility.FunctionalTests", "test\IIS.ForwardsCompatibility.FunctionalTests\IIS.ForwardsCompatibility.FunctionalTests.csproj", "{D1EA5D99-28FD-4197-81DE-17098846B38B}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "InProcessForwardsCompatWebSite", "test\WebSites\InProcessForwardsCompatWebSite\InProcessWebSite.csproj", "{BBBC85B2-5D7A-4D09-90B1-8DBCC9059493}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "InProcessWebSite", "test\WebSites\InProcessForwardsCompatWebSite\InProcessWebSite.csproj", "{BBBC85B2-5D7A-4D09-90B1-8DBCC9059493}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
diff --git a/src/IISIntegration/korebuild-lock.txt b/src/IISIntegration/korebuild-lock.txt
deleted file mode 100644
index b7cdcc0ea5..0000000000
--- a/src/IISIntegration/korebuild-lock.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-version:2.2.1-build-20181203.2
-commithash:b60a287e73c8564f2919f9612abca953b740a0f9
diff --git a/src/IISIntegration/src/AspNetCoreModuleV2/InProcessRequestHandler/managedexports.cpp b/src/IISIntegration/src/AspNetCoreModuleV2/InProcessRequestHandler/managedexports.cpp
index 2185f975a4..6085f65877 100644
--- a/src/IISIntegration/src/AspNetCoreModuleV2/InProcessRequestHandler/managedexports.cpp
+++ b/src/IISIntegration/src/AspNetCoreModuleV2/InProcessRequestHandler/managedexports.cpp
@@ -288,13 +288,13 @@ EXTERN_C __MIDL_DECLSPEC_DLLEXPORT
HRESULT
http_flush_response_bytes(
_In_ IN_PROCESS_HANDLER* pInProcessHandler,
+ _In_ BOOL fMoreData,
_Out_ BOOL* pfCompletionExpected
)
{
IHttpResponse *pHttpResponse = (IHttpResponse*)pInProcessHandler->QueryHttpContext()->GetResponse();
BOOL fAsync = TRUE;
- BOOL fMoreData = TRUE;
DWORD dwBytesSent = 0;
HRESULT hr = pHttpResponse->Flush(
diff --git a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IISHttpContext.IO.cs b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IISHttpContext.IO.cs
index e945500672..119cac01e3 100644
--- a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IISHttpContext.IO.cs
+++ b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IISHttpContext.IO.cs
@@ -158,7 +158,7 @@ namespace Microsoft.AspNetCore.Server.IIS.Core
if (flush)
{
- await AsyncIO.FlushAsync();
+ await AsyncIO.FlushAsync(moreData: true);
flush = false;
}
}
diff --git a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IISHttpContext.cs b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IISHttpContext.cs
index 09e478a989..a0d28247f5 100644
--- a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IISHttpContext.cs
+++ b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IISHttpContext.cs
@@ -243,12 +243,12 @@ namespace Microsoft.AspNetCore.Server.IIS.Core
SetResponseHeaders();
EnsureIOInitialized();
-
+ var canHaveNonEmptyBody = StatusCodeCanHaveBody();
if (flushHeaders)
{
try
{
- await AsyncIO.FlushAsync();
+ await AsyncIO.FlushAsync(canHaveNonEmptyBody);
}
// Client might be disconnected at this point
// don't leak the exception
@@ -258,7 +258,20 @@ namespace Microsoft.AspNetCore.Server.IIS.Core
}
}
- _writeBodyTask = WriteBody(!flushHeaders);
+ if (!canHaveNonEmptyBody)
+ {
+ _bodyOutput.Dispose();
+ }
+ else
+ {
+ _writeBodyTask = WriteBody(!flushHeaders);
+ }
+ }
+
+ private bool StatusCodeCanHaveBody()
+ {
+ return StatusCode != 204
+ && StatusCode != 304;
}
private void InitializeRequestIO()
diff --git a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/AsyncIOEngine.Flush.cs b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/AsyncIOEngine.Flush.cs
index 1187c5b3f2..c83cbf3106 100644
--- a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/AsyncIOEngine.Flush.cs
+++ b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/AsyncIOEngine.Flush.cs
@@ -12,21 +12,23 @@ namespace Microsoft.AspNetCore.Server.IIS.Core.IO
private readonly AsyncIOEngine _engine;
private IntPtr _requestHandler;
+ private bool _moreData;
public AsyncFlushOperation(AsyncIOEngine engine)
{
_engine = engine;
}
- public void Initialize(IntPtr requestHandler)
+ public void Initialize(IntPtr requestHandler, bool moreData)
{
_requestHandler = requestHandler;
+ _moreData = moreData;
}
protected override bool InvokeOperation(out int hr, out int bytes)
{
bytes = 0;
- hr = NativeMethods.HttpFlushResponseBytes(_requestHandler, out var fCompletionExpected);
+ hr = NativeMethods.HttpFlushResponseBytes(_requestHandler, _moreData, out var fCompletionExpected);
return !fCompletionExpected;
}
@@ -36,6 +38,7 @@ namespace Microsoft.AspNetCore.Server.IIS.Core.IO
base.ResetOperation();
_requestHandler = default;
+ _moreData = false;
_engine.ReturnOperation(this);
}
}
diff --git a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/AsyncIOEngine.cs b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/AsyncIOEngine.cs
index f169cebf77..12f980248e 100644
--- a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/AsyncIOEngine.cs
+++ b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/AsyncIOEngine.cs
@@ -90,10 +90,10 @@ namespace Microsoft.AspNetCore.Server.IIS.Core.IO
}
- public ValueTask FlushAsync()
+ public ValueTask FlushAsync(bool moreData)
{
var flush = GetFlushOperation();
- flush.Initialize(_handler);
+ flush.Initialize(_handler, moreData);
Run(flush);
return new ValueTask(flush, 0);
}
diff --git a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/IAsyncIOEngine.cs b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/IAsyncIOEngine.cs
index 6e6896b8c4..295b4c0e7c 100644
--- a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/IAsyncIOEngine.cs
+++ b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/IAsyncIOEngine.cs
@@ -11,7 +11,7 @@ namespace Microsoft.AspNetCore.Server.IIS.Core.IO
{
ValueTask ReadAsync(Memory memory);
ValueTask WriteAsync(ReadOnlySequence data);
- ValueTask FlushAsync();
+ ValueTask FlushAsync(bool moreData);
void NotifyCompletion(int hr, int bytes);
}
}
diff --git a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/WebSocketsAsyncIOEngine.Initialize.cs b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/WebSocketsAsyncIOEngine.Initialize.cs
index 10e1f0da7d..6abd79de8e 100644
--- a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/WebSocketsAsyncIOEngine.Initialize.cs
+++ b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/WebSocketsAsyncIOEngine.Initialize.cs
@@ -25,7 +25,7 @@ namespace Microsoft.AspNetCore.Server.IIS.Core.IO
protected override bool InvokeOperation(out int hr, out int bytes)
{
- hr = NativeMethods.HttpFlushResponseBytes(_requestHandler, out var completionExpected);
+ hr = NativeMethods.HttpFlushResponseBytes(_requestHandler, fMoreData: true, out var completionExpected);
bytes = 0;
return !completionExpected;
}
diff --git a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/WebSocketsAsyncIOEngine.cs b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/WebSocketsAsyncIOEngine.cs
index 38c737dbce..a796af23b3 100644
--- a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/WebSocketsAsyncIOEngine.cs
+++ b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Core/IO/WebSocketsAsyncIOEngine.cs
@@ -56,7 +56,7 @@ namespace Microsoft.AspNetCore.Server.IIS.Core.IO
}
}
- public ValueTask FlushAsync()
+ public ValueTask FlushAsync(bool moreData)
{
lock (_contextLock)
{
diff --git a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Microsoft.AspNetCore.Server.IIS.csproj b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Microsoft.AspNetCore.Server.IIS.csproj
index 53145c2b29..3c72060591 100644
--- a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Microsoft.AspNetCore.Server.IIS.csproj
+++ b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/Microsoft.AspNetCore.Server.IIS.csproj
@@ -16,8 +16,9 @@
-
-
+
+
+
diff --git a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/NativeMethods.cs b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/NativeMethods.cs
index 4d24b3dd77..8e5e484edd 100644
--- a/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/NativeMethods.cs
+++ b/src/IISIntegration/src/Microsoft.AspNetCore.Server.IIS/NativeMethods.cs
@@ -67,7 +67,7 @@ namespace Microsoft.AspNetCore.Server.IIS
private static extern unsafe int http_write_response_bytes(IntPtr pInProcessHandler, HttpApiTypes.HTTP_DATA_CHUNK* pDataChunks, int nChunks, out bool fCompletionExpected);
[DllImport(AspNetCoreModuleDll)]
- private static extern int http_flush_response_bytes(IntPtr pInProcessHandler, out bool fCompletionExpected);
+ private static extern int http_flush_response_bytes(IntPtr pInProcessHandler, bool fMoreData, out bool fCompletionExpected);
[DllImport(AspNetCoreModuleDll)]
private static extern unsafe HttpApiTypes.HTTP_REQUEST_V2* http_get_raw_request(IntPtr pInProcessHandler);
@@ -171,9 +171,9 @@ namespace Microsoft.AspNetCore.Server.IIS
return http_write_response_bytes(pInProcessHandler, pDataChunks, nChunks, out fCompletionExpected);
}
- public static int HttpFlushResponseBytes(IntPtr pInProcessHandler, out bool fCompletionExpected)
+ public static int HttpFlushResponseBytes(IntPtr pInProcessHandler, bool fMoreData, out bool fCompletionExpected)
{
- return http_flush_response_bytes(pInProcessHandler, out fCompletionExpected);
+ return http_flush_response_bytes(pInProcessHandler, fMoreData, out fCompletionExpected);
}
public static unsafe HttpApiTypes.HTTP_REQUEST_V2* HttpGetRawRequest(IntPtr pInProcessHandler)
diff --git a/src/IISIntegration/test/Common.FunctionalTests/Inprocess/ResponseHeaderTests.cs b/src/IISIntegration/test/Common.FunctionalTests/Inprocess/ResponseHeaderTests.cs
index fec5c227ec..a779f73585 100644
--- a/src/IISIntegration/test/Common.FunctionalTests/Inprocess/ResponseHeaderTests.cs
+++ b/src/IISIntegration/test/Common.FunctionalTests/Inprocess/ResponseHeaderTests.cs
@@ -1,8 +1,10 @@
// 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 System.Net;
+using System.Net.Http;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Testing.xunit;
using Microsoft.Net.Http.Headers;
@@ -75,6 +77,18 @@ namespace Microsoft.AspNetCore.Server.IISIntegration.FunctionalTests
Assert.Equal(body ?? string.Empty, await response.Content.ReadAsStringAsync());
}
+ [ConditionalTheory]
+ [RequiresNewHandler]
+ [InlineData(204, "GET")]
+ [InlineData(304, "GET")]
+ public async Task TransferEncodingNotSetForStatusCodes(int code, string method)
+ {
+ var request = new HttpRequestMessage(new HttpMethod(method), _fixture.Client.BaseAddress + $"SetCustomErorCode?code={code}");
+ var response = await _fixture.Client.SendAsync(request);
+ Assert.Equal((HttpStatusCode)code, response.StatusCode);
+ Assert.DoesNotContain(response.Headers, h => h.Key.Equals("transfer-encoding", StringComparison.InvariantCultureIgnoreCase));
+ }
+
[ConditionalFact]
public async Task ServerHeaderIsOverriden()
{
diff --git a/src/Identity/build/repo.props b/src/Identity/build/repo.props
index 4402da1d0d..00a0c65cc2 100644
--- a/src/Identity/build/repo.props
+++ b/src/Identity/build/repo.props
@@ -1,12 +1,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/JavaScriptServices/build/repo.props b/src/JavaScriptServices/build/repo.props
index 4402da1d0d..00a0c65cc2 100644
--- a/src/JavaScriptServices/build/repo.props
+++ b/src/JavaScriptServices/build/repo.props
@@ -1,12 +1,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/MetaPackages/build/repo.props b/src/MetaPackages/build/repo.props
index 4402da1d0d..00a0c65cc2 100644
--- a/src/MetaPackages/build/repo.props
+++ b/src/MetaPackages/build/repo.props
@@ -1,12 +1,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/MusicStore/build/repo.props b/src/MusicStore/build/repo.props
index 8b2cf368dc..6b9aec60b8 100644
--- a/src/MusicStore/build/repo.props
+++ b/src/MusicStore/build/repo.props
@@ -1,12 +1,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/Mvc/build/repo.props b/src/Mvc/build/repo.props
index 4ec5530115..8ed774df90 100644
--- a/src/Mvc/build/repo.props
+++ b/src/Mvc/build/repo.props
@@ -12,11 +12,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
diff --git a/src/MvcPrecompilation/build/repo.props b/src/MvcPrecompilation/build/repo.props
index 17a98ac7e7..e3e0fa123b 100644
--- a/src/MvcPrecompilation/build/repo.props
+++ b/src/MvcPrecompilation/build/repo.props
@@ -1,12 +1,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/PackageArchive/Directory.Build.props b/src/PackageArchive/Directory.Build.props
index 3a70818a8d..4539ef2079 100644
--- a/src/PackageArchive/Directory.Build.props
+++ b/src/PackageArchive/Directory.Build.props
@@ -1,6 +1,11 @@
+
+
+
+
+
true
diff --git a/src/Razor/build/repo.props b/src/Razor/build/repo.props
index 693905497a..58a02ecf2f 100644
--- a/src/Razor/build/repo.props
+++ b/src/Razor/build/repo.props
@@ -1,12 +1,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/ResponseCaching/build/repo.props b/src/ResponseCaching/build/repo.props
index 17a98ac7e7..e3e0fa123b 100644
--- a/src/ResponseCaching/build/repo.props
+++ b/src/ResponseCaching/build/repo.props
@@ -1,12 +1,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/Routing/.gitignore b/src/Routing/.gitignore
deleted file mode 100644
index 74fb35463f..0000000000
--- a/src/Routing/.gitignore
+++ /dev/null
@@ -1,44 +0,0 @@
-[Oo]bj/
-[Bb]in/
-TestResults/
-.nuget/
-*.sln.ide/
-_ReSharper.*/
-packages/
-artifacts/
-PublishProfiles/
-.vs/
-.vscode/
-.build/
-.testPublish/
-bower_components/
-node_modules/
-**/wwwroot/lib/
-debugSettings.json
-project.lock.json
-*.user
-*.suo
-*.cache
-*.docstates
-_ReSharper.*
-nuget.exe
-*net45.csproj
-*net451.csproj
-*k10.csproj
-*.psess
-*.vsp
-*.pidb
-*.userprefs
-*DS_Store
-*.ncrunchsolution
-*.*sdf
-*.ipch
-.settings
-*.sln.ide
-node_modules
-**/[Cc]ompiler/[Rr]esources/**/*.js
-*launchSettings.json
-global.json
-BenchmarkDotNet.Artifacts/
-*.etl.zip
-*.etl
\ No newline at end of file
diff --git a/src/Routing/Directory.Build.props b/src/Routing/Directory.Build.props
deleted file mode 100644
index 2755b484ef..0000000000
--- a/src/Routing/Directory.Build.props
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
-
-
- Microsoft ASP.NET Core
- https://github.com/aspnet/AspNetCore
- git
- $(MSBuildThisFileDirectory)
- $(MSBuildThisFileDirectory)build\Key.snk
- true
- true
- 7.3
-
-
diff --git a/src/Routing/Directory.Build.targets b/src/Routing/Directory.Build.targets
deleted file mode 100644
index 7e3f8df92e..0000000000
--- a/src/Routing/Directory.Build.targets
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
- $(MicrosoftNETCoreAppPackageVersion)
- $(NETStandardLibrary20PackageVersion)
-
-
diff --git a/src/Routing/NuGetPackageVerifier.json b/src/Routing/NuGetPackageVerifier.json
deleted file mode 100644
index 9ed455034c..0000000000
--- a/src/Routing/NuGetPackageVerifier.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "adx-nonshipping": {
- "rules": [],
- "packages": {
- "Microsoft.AspNetCore.Routing.DecisionTree.Sources": {}
- }
- },
- "Default": {
- "rules": [
- "DefaultCompositeRule"
- ]
- }
-}
\ No newline at end of file
diff --git a/src/Routing/README.md b/src/Routing/README.md
deleted file mode 100644
index 1f66dfdd7f..0000000000
--- a/src/Routing/README.md
+++ /dev/null
@@ -1,8 +0,0 @@
-ASP.NET Routing [Archived]
-===========================
-
-**This GitHub project has been archived.** Ongoing development on this project can be found in .
-
-Contains routing middleware for routing requests to application logic.
-
-This project is part of ASP.NET Core. You can find samples, documentation and getting started instructions for ASP.NET Core at the [AspNetCore](https://github.com/aspnet/AspNetCore) repo.
diff --git a/src/Routing/Routing.sln b/src/Routing/Routing.sln
deleted file mode 100644
index e66b8e858f..0000000000
--- a/src/Routing/Routing.sln
+++ /dev/null
@@ -1,224 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 15
-VisualStudioVersion = 15.0.27106.3000
-MinimumVisualStudioVersion = 15.0.26730.03
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{0E966C37-7334-4D96-AAF6-9F49FBD166E3}"
- ProjectSection(SolutionItems) = preProject
- src\Directory.Build.props = src\Directory.Build.props
- EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{C3ADD55B-B9C7-4061-8AD4-6A70D1AE3B2E}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{95359B4B-4C85-4B44-A75B-0621905C4CF6}"
- ProjectSection(SolutionItems) = preProject
- test\Directory.Build.props = test\Directory.Build.props
- EndProjectSection
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Routing", "src\Microsoft.AspNetCore.Routing\Microsoft.AspNetCore.Routing.csproj", "{1EE54D32-6CED-4206-ACF5-3DC1DD39D228}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Routing.Tests", "test\Microsoft.AspNetCore.Routing.Tests\Microsoft.AspNetCore.Routing.Tests.csproj", "{636D79ED-7B32-487C-BDA5-D2A1AAA97371}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{C430C499-382D-47BD-B351-CF8F89C08CD2}"
- ProjectSection(SolutionItems) = preProject
- build\dependencies.props = build\dependencies.props
- global.json = global.json
- NuGet.config = NuGet.config
- EndProjectSection
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Routing.DecisionTree.Sources.Tests", "test\Microsoft.AspNetCore.Routing.DecisionTree.Sources.Tests\Microsoft.AspNetCore.Routing.DecisionTree.Sources.Tests.csproj", "{09C2933C-23AC-41B7-994D-E8A5184A629C}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Routing.Abstractions", "src\Microsoft.AspNetCore.Routing.Abstractions\Microsoft.AspNetCore.Routing.Abstractions.csproj", "{ED253B01-24F1-43D1-AA0B-079391E105A9}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests", "test\Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests\Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests.csproj", "{741B0B05-CE96-473B-B962-6B0A347DF79A}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Routing.FunctionalTests", "test\Microsoft.AspNetCore.Routing.FunctionalTests\Microsoft.AspNetCore.Routing.FunctionalTests.csproj", "{5C73140B-41F3-466F-A07B-3614E4D80DF9}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{6DC6B416-C8C4-4BFA-8C1E-A55A6D7EFD08}"
- ProjectSection(SolutionItems) = preProject
- build\dependencies.props = build\dependencies.props
- build\Key.snk = build\Key.snk
- build\repo.props = build\repo.props
- EndProjectSection
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Routing.Performance", "benchmarks\Microsoft.AspNetCore.Routing.Performance\Microsoft.AspNetCore.Routing.Performance.csproj", "{F3D86714-4E64-41A6-9B36-A47B3683CF5D}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "benchmarks", "benchmarks", "{D5F39F59-5725-4127-82E7-67028D006185}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "benchmarkapps", "benchmarkapps", "{7F5914E2-C63F-4759-898E-462804357C90}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Benchmarks", "benchmarkapps\Benchmarks\Benchmarks.csproj", "{91F47A60-9A78-4968-B10D-157D9BFAC37F}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tools", "tools", "{6824486A-3EFF-45D1-BEE8-8B137639C890}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Swaggatherer", "tools\Swaggatherer\Swaggatherer.csproj", "{B8516771-E850-4724-BEC3-63FC00C2AE57}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WebSites", "WebSites", "{8E5E51D4-6B03-4FC6-9F34-6E9FA24702BD}"
- ProjectSection(SolutionItems) = preProject
- test\WebSites\Directory.Build.props = test\WebSites\Directory.Build.props
- EndProjectSection
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "RoutingWebSite", "test\WebSites\RoutingWebSite\RoutingWebSite.csproj", "{E91EC5EC-30A8-45EC-9B2F-67E2D6C39D74}"
-EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "RoutingSandbox", "samples\RoutingSandbox\RoutingSandbox.csproj", "{89317AF8-1893-4F40-BCE2-7FB52E5A5033}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Debug|Mixed Platforms = Debug|Mixed Platforms
- Debug|x86 = Debug|x86
- Release|Any CPU = Release|Any CPU
- Release|Mixed Platforms = Release|Mixed Platforms
- Release|x86 = Release|x86
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {1EE54D32-6CED-4206-ACF5-3DC1DD39D228}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {1EE54D32-6CED-4206-ACF5-3DC1DD39D228}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {1EE54D32-6CED-4206-ACF5-3DC1DD39D228}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {1EE54D32-6CED-4206-ACF5-3DC1DD39D228}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {1EE54D32-6CED-4206-ACF5-3DC1DD39D228}.Debug|x86.ActiveCfg = Debug|Any CPU
- {1EE54D32-6CED-4206-ACF5-3DC1DD39D228}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {1EE54D32-6CED-4206-ACF5-3DC1DD39D228}.Release|Any CPU.Build.0 = Release|Any CPU
- {1EE54D32-6CED-4206-ACF5-3DC1DD39D228}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {1EE54D32-6CED-4206-ACF5-3DC1DD39D228}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {1EE54D32-6CED-4206-ACF5-3DC1DD39D228}.Release|x86.ActiveCfg = Release|Any CPU
- {636D79ED-7B32-487C-BDA5-D2A1AAA97371}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {636D79ED-7B32-487C-BDA5-D2A1AAA97371}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {636D79ED-7B32-487C-BDA5-D2A1AAA97371}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {636D79ED-7B32-487C-BDA5-D2A1AAA97371}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {636D79ED-7B32-487C-BDA5-D2A1AAA97371}.Debug|x86.ActiveCfg = Debug|Any CPU
- {636D79ED-7B32-487C-BDA5-D2A1AAA97371}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {636D79ED-7B32-487C-BDA5-D2A1AAA97371}.Release|Any CPU.Build.0 = Release|Any CPU
- {636D79ED-7B32-487C-BDA5-D2A1AAA97371}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {636D79ED-7B32-487C-BDA5-D2A1AAA97371}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {636D79ED-7B32-487C-BDA5-D2A1AAA97371}.Release|x86.ActiveCfg = Release|Any CPU
- {09C2933C-23AC-41B7-994D-E8A5184A629C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {09C2933C-23AC-41B7-994D-E8A5184A629C}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {09C2933C-23AC-41B7-994D-E8A5184A629C}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {09C2933C-23AC-41B7-994D-E8A5184A629C}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {09C2933C-23AC-41B7-994D-E8A5184A629C}.Debug|x86.ActiveCfg = Debug|Any CPU
- {09C2933C-23AC-41B7-994D-E8A5184A629C}.Debug|x86.Build.0 = Debug|Any CPU
- {09C2933C-23AC-41B7-994D-E8A5184A629C}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {09C2933C-23AC-41B7-994D-E8A5184A629C}.Release|Any CPU.Build.0 = Release|Any CPU
- {09C2933C-23AC-41B7-994D-E8A5184A629C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {09C2933C-23AC-41B7-994D-E8A5184A629C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {09C2933C-23AC-41B7-994D-E8A5184A629C}.Release|x86.ActiveCfg = Release|Any CPU
- {09C2933C-23AC-41B7-994D-E8A5184A629C}.Release|x86.Build.0 = Release|Any CPU
- {ED253B01-24F1-43D1-AA0B-079391E105A9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {ED253B01-24F1-43D1-AA0B-079391E105A9}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {ED253B01-24F1-43D1-AA0B-079391E105A9}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {ED253B01-24F1-43D1-AA0B-079391E105A9}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {ED253B01-24F1-43D1-AA0B-079391E105A9}.Debug|x86.ActiveCfg = Debug|Any CPU
- {ED253B01-24F1-43D1-AA0B-079391E105A9}.Debug|x86.Build.0 = Debug|Any CPU
- {ED253B01-24F1-43D1-AA0B-079391E105A9}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {ED253B01-24F1-43D1-AA0B-079391E105A9}.Release|Any CPU.Build.0 = Release|Any CPU
- {ED253B01-24F1-43D1-AA0B-079391E105A9}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {ED253B01-24F1-43D1-AA0B-079391E105A9}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {ED253B01-24F1-43D1-AA0B-079391E105A9}.Release|x86.ActiveCfg = Release|Any CPU
- {ED253B01-24F1-43D1-AA0B-079391E105A9}.Release|x86.Build.0 = Release|Any CPU
- {741B0B05-CE96-473B-B962-6B0A347DF79A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {741B0B05-CE96-473B-B962-6B0A347DF79A}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {741B0B05-CE96-473B-B962-6B0A347DF79A}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {741B0B05-CE96-473B-B962-6B0A347DF79A}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {741B0B05-CE96-473B-B962-6B0A347DF79A}.Debug|x86.ActiveCfg = Debug|Any CPU
- {741B0B05-CE96-473B-B962-6B0A347DF79A}.Debug|x86.Build.0 = Debug|Any CPU
- {741B0B05-CE96-473B-B962-6B0A347DF79A}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {741B0B05-CE96-473B-B962-6B0A347DF79A}.Release|Any CPU.Build.0 = Release|Any CPU
- {741B0B05-CE96-473B-B962-6B0A347DF79A}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {741B0B05-CE96-473B-B962-6B0A347DF79A}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {741B0B05-CE96-473B-B962-6B0A347DF79A}.Release|x86.ActiveCfg = Release|Any CPU
- {741B0B05-CE96-473B-B962-6B0A347DF79A}.Release|x86.Build.0 = Release|Any CPU
- {5C73140B-41F3-466F-A07B-3614E4D80DF9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {5C73140B-41F3-466F-A07B-3614E4D80DF9}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {5C73140B-41F3-466F-A07B-3614E4D80DF9}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {5C73140B-41F3-466F-A07B-3614E4D80DF9}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {5C73140B-41F3-466F-A07B-3614E4D80DF9}.Debug|x86.ActiveCfg = Debug|Any CPU
- {5C73140B-41F3-466F-A07B-3614E4D80DF9}.Debug|x86.Build.0 = Debug|Any CPU
- {5C73140B-41F3-466F-A07B-3614E4D80DF9}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {5C73140B-41F3-466F-A07B-3614E4D80DF9}.Release|Any CPU.Build.0 = Release|Any CPU
- {5C73140B-41F3-466F-A07B-3614E4D80DF9}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {5C73140B-41F3-466F-A07B-3614E4D80DF9}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {5C73140B-41F3-466F-A07B-3614E4D80DF9}.Release|x86.ActiveCfg = Release|Any CPU
- {5C73140B-41F3-466F-A07B-3614E4D80DF9}.Release|x86.Build.0 = Release|Any CPU
- {F3D86714-4E64-41A6-9B36-A47B3683CF5D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {F3D86714-4E64-41A6-9B36-A47B3683CF5D}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {F3D86714-4E64-41A6-9B36-A47B3683CF5D}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {F3D86714-4E64-41A6-9B36-A47B3683CF5D}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {F3D86714-4E64-41A6-9B36-A47B3683CF5D}.Debug|x86.ActiveCfg = Debug|Any CPU
- {F3D86714-4E64-41A6-9B36-A47B3683CF5D}.Debug|x86.Build.0 = Debug|Any CPU
- {F3D86714-4E64-41A6-9B36-A47B3683CF5D}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {F3D86714-4E64-41A6-9B36-A47B3683CF5D}.Release|Any CPU.Build.0 = Release|Any CPU
- {F3D86714-4E64-41A6-9B36-A47B3683CF5D}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {F3D86714-4E64-41A6-9B36-A47B3683CF5D}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {F3D86714-4E64-41A6-9B36-A47B3683CF5D}.Release|x86.ActiveCfg = Release|Any CPU
- {F3D86714-4E64-41A6-9B36-A47B3683CF5D}.Release|x86.Build.0 = Release|Any CPU
- {91F47A60-9A78-4968-B10D-157D9BFAC37F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {91F47A60-9A78-4968-B10D-157D9BFAC37F}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {91F47A60-9A78-4968-B10D-157D9BFAC37F}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {91F47A60-9A78-4968-B10D-157D9BFAC37F}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {91F47A60-9A78-4968-B10D-157D9BFAC37F}.Debug|x86.ActiveCfg = Debug|Any CPU
- {91F47A60-9A78-4968-B10D-157D9BFAC37F}.Debug|x86.Build.0 = Debug|Any CPU
- {91F47A60-9A78-4968-B10D-157D9BFAC37F}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {91F47A60-9A78-4968-B10D-157D9BFAC37F}.Release|Any CPU.Build.0 = Release|Any CPU
- {91F47A60-9A78-4968-B10D-157D9BFAC37F}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {91F47A60-9A78-4968-B10D-157D9BFAC37F}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {91F47A60-9A78-4968-B10D-157D9BFAC37F}.Release|x86.ActiveCfg = Release|Any CPU
- {91F47A60-9A78-4968-B10D-157D9BFAC37F}.Release|x86.Build.0 = Release|Any CPU
- {B8516771-E850-4724-BEC3-63FC00C2AE57}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {B8516771-E850-4724-BEC3-63FC00C2AE57}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {B8516771-E850-4724-BEC3-63FC00C2AE57}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {B8516771-E850-4724-BEC3-63FC00C2AE57}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {B8516771-E850-4724-BEC3-63FC00C2AE57}.Debug|x86.ActiveCfg = Debug|Any CPU
- {B8516771-E850-4724-BEC3-63FC00C2AE57}.Debug|x86.Build.0 = Debug|Any CPU
- {B8516771-E850-4724-BEC3-63FC00C2AE57}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {B8516771-E850-4724-BEC3-63FC00C2AE57}.Release|Any CPU.Build.0 = Release|Any CPU
- {B8516771-E850-4724-BEC3-63FC00C2AE57}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {B8516771-E850-4724-BEC3-63FC00C2AE57}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {B8516771-E850-4724-BEC3-63FC00C2AE57}.Release|x86.ActiveCfg = Release|Any CPU
- {B8516771-E850-4724-BEC3-63FC00C2AE57}.Release|x86.Build.0 = Release|Any CPU
- {E91EC5EC-30A8-45EC-9B2F-67E2D6C39D74}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {E91EC5EC-30A8-45EC-9B2F-67E2D6C39D74}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {E91EC5EC-30A8-45EC-9B2F-67E2D6C39D74}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {E91EC5EC-30A8-45EC-9B2F-67E2D6C39D74}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {E91EC5EC-30A8-45EC-9B2F-67E2D6C39D74}.Debug|x86.ActiveCfg = Debug|Any CPU
- {E91EC5EC-30A8-45EC-9B2F-67E2D6C39D74}.Debug|x86.Build.0 = Debug|Any CPU
- {E91EC5EC-30A8-45EC-9B2F-67E2D6C39D74}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {E91EC5EC-30A8-45EC-9B2F-67E2D6C39D74}.Release|Any CPU.Build.0 = Release|Any CPU
- {E91EC5EC-30A8-45EC-9B2F-67E2D6C39D74}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {E91EC5EC-30A8-45EC-9B2F-67E2D6C39D74}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {E91EC5EC-30A8-45EC-9B2F-67E2D6C39D74}.Release|x86.ActiveCfg = Release|Any CPU
- {E91EC5EC-30A8-45EC-9B2F-67E2D6C39D74}.Release|x86.Build.0 = Release|Any CPU
- {89317AF8-1893-4F40-BCE2-7FB52E5A5033}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {89317AF8-1893-4F40-BCE2-7FB52E5A5033}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {89317AF8-1893-4F40-BCE2-7FB52E5A5033}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {89317AF8-1893-4F40-BCE2-7FB52E5A5033}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {89317AF8-1893-4F40-BCE2-7FB52E5A5033}.Debug|x86.ActiveCfg = Debug|Any CPU
- {89317AF8-1893-4F40-BCE2-7FB52E5A5033}.Debug|x86.Build.0 = Debug|Any CPU
- {89317AF8-1893-4F40-BCE2-7FB52E5A5033}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {89317AF8-1893-4F40-BCE2-7FB52E5A5033}.Release|Any CPU.Build.0 = Release|Any CPU
- {89317AF8-1893-4F40-BCE2-7FB52E5A5033}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {89317AF8-1893-4F40-BCE2-7FB52E5A5033}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {89317AF8-1893-4F40-BCE2-7FB52E5A5033}.Release|x86.ActiveCfg = Release|Any CPU
- {89317AF8-1893-4F40-BCE2-7FB52E5A5033}.Release|x86.Build.0 = Release|Any CPU
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
- GlobalSection(NestedProjects) = preSolution
- {1EE54D32-6CED-4206-ACF5-3DC1DD39D228} = {0E966C37-7334-4D96-AAF6-9F49FBD166E3}
- {636D79ED-7B32-487C-BDA5-D2A1AAA97371} = {95359B4B-4C85-4B44-A75B-0621905C4CF6}
- {09C2933C-23AC-41B7-994D-E8A5184A629C} = {95359B4B-4C85-4B44-A75B-0621905C4CF6}
- {ED253B01-24F1-43D1-AA0B-079391E105A9} = {0E966C37-7334-4D96-AAF6-9F49FBD166E3}
- {741B0B05-CE96-473B-B962-6B0A347DF79A} = {95359B4B-4C85-4B44-A75B-0621905C4CF6}
- {5C73140B-41F3-466F-A07B-3614E4D80DF9} = {95359B4B-4C85-4B44-A75B-0621905C4CF6}
- {F3D86714-4E64-41A6-9B36-A47B3683CF5D} = {D5F39F59-5725-4127-82E7-67028D006185}
- {91F47A60-9A78-4968-B10D-157D9BFAC37F} = {7F5914E2-C63F-4759-898E-462804357C90}
- {B8516771-E850-4724-BEC3-63FC00C2AE57} = {6824486A-3EFF-45D1-BEE8-8B137639C890}
- {8E5E51D4-6B03-4FC6-9F34-6E9FA24702BD} = {95359B4B-4C85-4B44-A75B-0621905C4CF6}
- {E91EC5EC-30A8-45EC-9B2F-67E2D6C39D74} = {8E5E51D4-6B03-4FC6-9F34-6E9FA24702BD}
- {89317AF8-1893-4F40-BCE2-7FB52E5A5033} = {C3ADD55B-B9C7-4061-8AD4-6A70D1AE3B2E}
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- SolutionGuid = {36C8D815-B7F1-479D-894B-E606FB8DECDA}
- EndGlobalSection
-EndGlobal
diff --git a/src/Routing/Settings.StyleCop b/src/Routing/Settings.StyleCop
deleted file mode 100644
index fc82ca344b..0000000000
--- a/src/Routing/Settings.StyleCop
+++ /dev/null
@@ -1,430 +0,0 @@
-
-
- NoMerge
-
-
-
-
- False
-
-
-
-
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
-
- as
- db
- dc
- do
- ef
- id
- if
- in
- is
- my
- no
- on
- sl
- to
- ui
- vs
-
-
-
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- True
- True
-
-
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
-
-
-
- Copyright (c) .NET Foundation. All rights reserved. See License.txt in the project root for license information.
-
-
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
-
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
-
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
-
-
-
-
-
- False
-
-
-
-
-
-
- False
-
-
-
-
- False
-
-
-
-
-
-
-
-
- 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.
-
-
-
-
-
- 120
-
-
-
-
\ No newline at end of file
diff --git a/src/Routing/THIRD-PARTY-NOTICES b/src/Routing/THIRD-PARTY-NOTICES
deleted file mode 100644
index 3a984c8673..0000000000
--- a/src/Routing/THIRD-PARTY-NOTICES
+++ /dev/null
@@ -1,21 +0,0 @@
-.NET Core uses third-party libraries or other resources that may be
-distributed under licenses different than the .NET Core software.
-
-In the event that we accidentally failed to list a required notice, please
-bring it to our attention. Post an issue or email us:
-
- dotnet@microsoft.com
-
-The attached notices are provided for information only.
-
-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.
-
diff --git a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Microsoft.AspNetCore.Routing.Performance.csproj b/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Microsoft.AspNetCore.Routing.Performance.csproj
deleted file mode 100644
index ebe8f50b50..0000000000
--- a/src/Routing/benchmarks/Microsoft.AspNetCore.Routing.Performance/Microsoft.AspNetCore.Routing.Performance.csproj
+++ /dev/null
@@ -1,50 +0,0 @@
-
-
-
- netcoreapp3.0
- Exe
- true
- true
- false
- Microsoft.AspNetCore.Routing
-
-
-
-
-
-
-
-
-
- Matching\BarebonesMatcher.cs
-
-
- Matching\BarebonesMatcherBuilder.cs
-
-
- Matching\RouteMatcher.cs
-
-
- Matching\RouteMatcherBuilder.cs
-
-
- Matching\TreeRouterMatcher.cs
-
-
- Matching\TreeRouterMatcherBuilder.cs
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Routing/build/Key.snk b/src/Routing/build/Key.snk
deleted file mode 100644
index e10e4889c1..0000000000
Binary files a/src/Routing/build/Key.snk and /dev/null differ
diff --git a/src/Routing/build/dependencies.props b/src/Routing/build/dependencies.props
deleted file mode 100644
index 8b949c60f5..0000000000
--- a/src/Routing/build/dependencies.props
+++ /dev/null
@@ -1,46 +0,0 @@
-
-
- $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
-
-
- 0.10.13
- 3.0.0-build-20181114.5
- 3.0.0-alpha1-10742
- 3.0.0-preview-181113-11
- 3.0.0-alpha1-10742
- 3.0.0-alpha1-10742
- 3.0.0-alpha1-10742
- 3.0.0-alpha1-10742
- 3.0.0-alpha1-10742
- 3.0.0-alpha1-10742
- 3.0.0-alpha1-10742
- 3.0.0-alpha1-10742
- 3.0.0-alpha1-10742
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview-181113-11
- 3.0.0-preview1-26907-05
- 15.6.1
- 4.10.0
- 2.0.3
- 11.0.2
- 0.10.0
- 2.3.1
- 2.4.0
-
-
-
-
\ No newline at end of file
diff --git a/src/Routing/build/repo.props b/src/Routing/build/repo.props
deleted file mode 100644
index 157a311580..0000000000
--- a/src/Routing/build/repo.props
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
-
-
-
-
-
- true
-
-
diff --git a/src/Routing/build/sources.props b/src/Routing/build/sources.props
deleted file mode 100644
index 9215df9751..0000000000
--- a/src/Routing/build/sources.props
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
- $(DotNetRestoreSources)
-
- $(RestoreSources);
- https://dotnet.myget.org/F/dotnet-core/api/v3/index.json;
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json;
- https://dotnet.myget.org/F/aspnetcore-tools/api/v3/index.json;
-
-
- $(RestoreSources);
- https://api.nuget.org/v3/index.json;
-
-
-
diff --git a/src/Routing/samples/RoutingSandbox/RoutingSandbox.csproj b/src/Routing/samples/RoutingSandbox/RoutingSandbox.csproj
deleted file mode 100644
index bf55c4e2a0..0000000000
--- a/src/Routing/samples/RoutingSandbox/RoutingSandbox.csproj
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
- netcoreapp3.0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Routing/src/Directory.Build.props b/src/Routing/src/Directory.Build.props
deleted file mode 100644
index 1e0980f663..0000000000
--- a/src/Routing/src/Directory.Build.props
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
diff --git a/src/Routing/src/Microsoft.AspNetCore.Routing/Microsoft.AspNetCore.Routing.csproj b/src/Routing/src/Microsoft.AspNetCore.Routing/Microsoft.AspNetCore.Routing.csproj
deleted file mode 100644
index c76afe42c6..0000000000
--- a/src/Routing/src/Microsoft.AspNetCore.Routing/Microsoft.AspNetCore.Routing.csproj
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
- ASP.NET Core middleware for routing requests to application logic and for generating links.
-Commonly used types:
-Microsoft.AspNetCore.Routing.Route
-Microsoft.AspNetCore.Routing.RouteCollection
- netcoreapp3.0
- $(NoWarn);CS1591
- true
- aspnetcore;routing
- true
-
-
-
-
- false
- IL_EMIT_SAVE_ASSEMBLIES;$(DefineConstants)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Routing/test/Directory.Build.props b/src/Routing/test/Directory.Build.props
deleted file mode 100644
index 20029dfa54..0000000000
--- a/src/Routing/test/Directory.Build.props
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
-
- false
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Routing/test/Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests/Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests.csproj b/src/Routing/test/Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests/Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests.csproj
deleted file mode 100644
index c6388013e4..0000000000
--- a/src/Routing/test/Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests/Microsoft.AspNetCore.Mvc.Routing.Abstractions.Tests.csproj
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
- netcoreapp3.0
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.DecisionTree.Sources.Tests/Microsoft.AspNetCore.Routing.DecisionTree.Sources.Tests.csproj b/src/Routing/test/Microsoft.AspNetCore.Routing.DecisionTree.Sources.Tests/Microsoft.AspNetCore.Routing.DecisionTree.Sources.Tests.csproj
deleted file mode 100644
index 21fee51bbf..0000000000
--- a/src/Routing/test/Microsoft.AspNetCore.Routing.DecisionTree.Sources.Tests/Microsoft.AspNetCore.Routing.DecisionTree.Sources.Tests.csproj
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
- netcoreapp3.0
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/Microsoft.AspNetCore.Routing.FunctionalTests.csproj b/src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/Microsoft.AspNetCore.Routing.FunctionalTests.csproj
deleted file mode 100644
index 79adee4f98..0000000000
--- a/src/Routing/test/Microsoft.AspNetCore.Routing.FunctionalTests/Microsoft.AspNetCore.Routing.FunctionalTests.csproj
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
- netcoreapp3.0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Microsoft.AspNetCore.Routing.Tests.csproj b/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Microsoft.AspNetCore.Routing.Tests.csproj
deleted file mode 100644
index 035506e996..0000000000
--- a/src/Routing/test/Microsoft.AspNetCore.Routing.Tests/Microsoft.AspNetCore.Routing.Tests.csproj
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
- netcoreapp3.0
- Microsoft.AspNetCore.Routing
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Routing/test/WebSites/Directory.Build.props b/src/Routing/test/WebSites/Directory.Build.props
deleted file mode 100644
index c1b2f8c824..0000000000
--- a/src/Routing/test/WebSites/Directory.Build.props
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
diff --git a/src/Routing/test/WebSites/RoutingWebSite/RoutingWebSite.csproj b/src/Routing/test/WebSites/RoutingWebSite/RoutingWebSite.csproj
deleted file mode 100644
index 35ac135e33..0000000000
--- a/src/Routing/test/WebSites/RoutingWebSite/RoutingWebSite.csproj
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
- netcoreapp3.0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Routing/tools/Swaggatherer/Swaggatherer.csproj b/src/Routing/tools/Swaggatherer/Swaggatherer.csproj
deleted file mode 100644
index 35103913f2..0000000000
--- a/src/Routing/tools/Swaggatherer/Swaggatherer.csproj
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
- Exe
- netcoreapp3.0
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/Routing/version.props b/src/Routing/version.props
deleted file mode 100644
index d977b437b6..0000000000
--- a/src/Routing/version.props
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
- 3.0.0
- dev
-
-
diff --git a/src/Security/build/repo.props b/src/Security/build/repo.props
index 4402da1d0d..00a0c65cc2 100644
--- a/src/Security/build/repo.props
+++ b/src/Security/build/repo.props
@@ -1,12 +1,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/ServerTests/build/repo.props b/src/ServerTests/build/repo.props
index 164db6503f..9cfb4ee513 100644
--- a/src/ServerTests/build/repo.props
+++ b/src/ServerTests/build/repo.props
@@ -1,12 +1,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/Servers/HttpSys/HttpSysServer.sln b/src/Servers/HttpSys/HttpSysServer.sln
new file mode 100644
index 0000000000..00d95c3e60
--- /dev/null
+++ b/src/Servers/HttpSys/HttpSysServer.sln
@@ -0,0 +1,139 @@
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 15
+VisualStudioVersion = 15.0.26730.10
+MinimumVisualStudioVersion = 15.0.26730.03
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{99D5E5F3-88F5-4CCF-8D8C-717C8925DF09}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{E183C826-1360-4DFF-9994-F33CED5C8525}"
+ ProjectSection(SolutionItems) = preProject
+ test\Directory.Build.props = test\Directory.Build.props
+ EndProjectSection
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{3A1E31E3-2794-4CA3-B8E2-253E96BDE514}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{5E9B546C-17AC-4BDF-BCB3-5955D4755ED8}"
+ ProjectSection(SolutionItems) = preProject
+ .appveyor.yml = .appveyor.yml
+ .travis.yml = .travis.yml
+ build.cmd = build.cmd
+ build.ps1 = build.ps1
+ build.sh = build.sh
+ Directory.Build.props = Directory.Build.props
+ Directory.Build.targets = Directory.Build.targets
+ NuGet.config = NuGet.config
+ version.xml = version.xml
+ EndProjectSection
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestClient", "samples\TestClient\TestClient.csproj", "{8B828433-B333-4C19-96AE-00BFFF9D8841}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SelfHostServer", "samples\SelfHostServer\SelfHostServer.csproj", "{1236F93A-AC5C-4A77-9477-C88F040151CA}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "HotAddSample", "samples\HotAddSample\HotAddSample.csproj", "{8BFA392A-8B67-4454-916B-67C545EDFAEF}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{85914BA9-4168-48C5-9C3F-E2E8B1479A6E}"
+ ProjectSection(SolutionItems) = preProject
+ build\dependencies.props = build\dependencies.props
+ build\Key.snk = build\Key.snk
+ EndProjectSection
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Server.HttpSys.FunctionalTests", "test\FunctionalTests\Microsoft.AspNetCore.Server.HttpSys.FunctionalTests.csproj", "{E6EA8535-BC62-49F2-960F-4FDB9FF37B9A}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Server.HttpSys.Tests", "test\Tests\Microsoft.AspNetCore.Server.HttpSys.Tests.csproj", "{4F202E87-2496-471C-8161-CFB7446EB96F}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Server.HttpSys", "src\Microsoft.AspNetCore.Server.HttpSys.csproj", "{339FECED-134D-4222-9876-C78B1CA4428A}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Debug|Mixed Platforms = Debug|Mixed Platforms
+ Debug|x86 = Debug|x86
+ Release|Any CPU = Release|Any CPU
+ Release|Mixed Platforms = Release|Mixed Platforms
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {8B828433-B333-4C19-96AE-00BFFF9D8841}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8B828433-B333-4C19-96AE-00BFFF9D8841}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8B828433-B333-4C19-96AE-00BFFF9D8841}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {8B828433-B333-4C19-96AE-00BFFF9D8841}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {8B828433-B333-4C19-96AE-00BFFF9D8841}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {8B828433-B333-4C19-96AE-00BFFF9D8841}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8B828433-B333-4C19-96AE-00BFFF9D8841}.Release|Any CPU.Build.0 = Release|Any CPU
+ {8B828433-B333-4C19-96AE-00BFFF9D8841}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {8B828433-B333-4C19-96AE-00BFFF9D8841}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {8B828433-B333-4C19-96AE-00BFFF9D8841}.Release|x86.ActiveCfg = Release|Any CPU
+ {1236F93A-AC5C-4A77-9477-C88F040151CA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1236F93A-AC5C-4A77-9477-C88F040151CA}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1236F93A-AC5C-4A77-9477-C88F040151CA}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {1236F93A-AC5C-4A77-9477-C88F040151CA}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {1236F93A-AC5C-4A77-9477-C88F040151CA}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {1236F93A-AC5C-4A77-9477-C88F040151CA}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1236F93A-AC5C-4A77-9477-C88F040151CA}.Release|Any CPU.Build.0 = Release|Any CPU
+ {1236F93A-AC5C-4A77-9477-C88F040151CA}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {1236F93A-AC5C-4A77-9477-C88F040151CA}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {1236F93A-AC5C-4A77-9477-C88F040151CA}.Release|x86.ActiveCfg = Release|Any CPU
+ {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Debug|x86.Build.0 = Debug|Any CPU
+ {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Release|Any CPU.Build.0 = Release|Any CPU
+ {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Release|x86.ActiveCfg = Release|Any CPU
+ {8BFA392A-8B67-4454-916B-67C545EDFAEF}.Release|x86.Build.0 = Release|Any CPU
+ {E6EA8535-BC62-49F2-960F-4FDB9FF37B9A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {E6EA8535-BC62-49F2-960F-4FDB9FF37B9A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {E6EA8535-BC62-49F2-960F-4FDB9FF37B9A}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {E6EA8535-BC62-49F2-960F-4FDB9FF37B9A}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {E6EA8535-BC62-49F2-960F-4FDB9FF37B9A}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {E6EA8535-BC62-49F2-960F-4FDB9FF37B9A}.Debug|x86.Build.0 = Debug|Any CPU
+ {E6EA8535-BC62-49F2-960F-4FDB9FF37B9A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {E6EA8535-BC62-49F2-960F-4FDB9FF37B9A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {E6EA8535-BC62-49F2-960F-4FDB9FF37B9A}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {E6EA8535-BC62-49F2-960F-4FDB9FF37B9A}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {E6EA8535-BC62-49F2-960F-4FDB9FF37B9A}.Release|x86.ActiveCfg = Release|Any CPU
+ {E6EA8535-BC62-49F2-960F-4FDB9FF37B9A}.Release|x86.Build.0 = Release|Any CPU
+ {4F202E87-2496-471C-8161-CFB7446EB96F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {4F202E87-2496-471C-8161-CFB7446EB96F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {4F202E87-2496-471C-8161-CFB7446EB96F}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {4F202E87-2496-471C-8161-CFB7446EB96F}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {4F202E87-2496-471C-8161-CFB7446EB96F}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {4F202E87-2496-471C-8161-CFB7446EB96F}.Debug|x86.Build.0 = Debug|Any CPU
+ {4F202E87-2496-471C-8161-CFB7446EB96F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {4F202E87-2496-471C-8161-CFB7446EB96F}.Release|Any CPU.Build.0 = Release|Any CPU
+ {4F202E87-2496-471C-8161-CFB7446EB96F}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {4F202E87-2496-471C-8161-CFB7446EB96F}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {4F202E87-2496-471C-8161-CFB7446EB96F}.Release|x86.ActiveCfg = Release|Any CPU
+ {4F202E87-2496-471C-8161-CFB7446EB96F}.Release|x86.Build.0 = Release|Any CPU
+ {339FECED-134D-4222-9876-C78B1CA4428A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {339FECED-134D-4222-9876-C78B1CA4428A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {339FECED-134D-4222-9876-C78B1CA4428A}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+ {339FECED-134D-4222-9876-C78B1CA4428A}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+ {339FECED-134D-4222-9876-C78B1CA4428A}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {339FECED-134D-4222-9876-C78B1CA4428A}.Debug|x86.Build.0 = Debug|Any CPU
+ {339FECED-134D-4222-9876-C78B1CA4428A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {339FECED-134D-4222-9876-C78B1CA4428A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {339FECED-134D-4222-9876-C78B1CA4428A}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+ {339FECED-134D-4222-9876-C78B1CA4428A}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+ {339FECED-134D-4222-9876-C78B1CA4428A}.Release|x86.ActiveCfg = Release|Any CPU
+ {339FECED-134D-4222-9876-C78B1CA4428A}.Release|x86.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {8B828433-B333-4C19-96AE-00BFFF9D8841} = {3A1E31E3-2794-4CA3-B8E2-253E96BDE514}
+ {1236F93A-AC5C-4A77-9477-C88F040151CA} = {3A1E31E3-2794-4CA3-B8E2-253E96BDE514}
+ {8BFA392A-8B67-4454-916B-67C545EDFAEF} = {3A1E31E3-2794-4CA3-B8E2-253E96BDE514}
+ {85914BA9-4168-48C5-9C3F-E2E8B1479A6E} = {5E9B546C-17AC-4BDF-BCB3-5955D4755ED8}
+ {E6EA8535-BC62-49F2-960F-4FDB9FF37B9A} = {E183C826-1360-4DFF-9994-F33CED5C8525}
+ {4F202E87-2496-471C-8161-CFB7446EB96F} = {E183C826-1360-4DFF-9994-F33CED5C8525}
+ {339FECED-134D-4222-9876-C78B1CA4428A} = {99D5E5F3-88F5-4CCF-8D8C-717C8925DF09}
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {34B42B42-FA09-41AB-9216-14073990C504}
+ EndGlobalSection
+EndGlobal
diff --git a/src/HttpSysServer/NuGetPackageVerifier.json b/src/Servers/HttpSys/NuGetPackageVerifier.json
similarity index 100%
rename from src/HttpSysServer/NuGetPackageVerifier.json
rename to src/Servers/HttpSys/NuGetPackageVerifier.json
diff --git a/src/HttpSysServer/README.md b/src/Servers/HttpSys/README.md
similarity index 100%
rename from src/HttpSysServer/README.md
rename to src/Servers/HttpSys/README.md
diff --git a/src/Servers/HttpSys/samples/HotAddSample/HotAddSample.csproj b/src/Servers/HttpSys/samples/HotAddSample/HotAddSample.csproj
new file mode 100644
index 0000000000..60cad7d163
--- /dev/null
+++ b/src/Servers/HttpSys/samples/HotAddSample/HotAddSample.csproj
@@ -0,0 +1,13 @@
+
+
+
+ netcoreapp3.0
+ Exe
+ true
+
+
+
+
+
+
+
diff --git a/src/HttpSysServer/samples/HotAddSample/Startup.cs b/src/Servers/HttpSys/samples/HotAddSample/Startup.cs
similarity index 100%
rename from src/HttpSysServer/samples/HotAddSample/Startup.cs
rename to src/Servers/HttpSys/samples/HotAddSample/Startup.cs
diff --git a/src/HttpSysServer/samples/SelfHostServer/App.config b/src/Servers/HttpSys/samples/SelfHostServer/App.config
similarity index 100%
rename from src/HttpSysServer/samples/SelfHostServer/App.config
rename to src/Servers/HttpSys/samples/SelfHostServer/App.config
diff --git a/src/HttpSysServer/samples/SelfHostServer/Public/1kb.txt b/src/Servers/HttpSys/samples/SelfHostServer/Public/1kb.txt
similarity index 100%
rename from src/HttpSysServer/samples/SelfHostServer/Public/1kb.txt
rename to src/Servers/HttpSys/samples/SelfHostServer/Public/1kb.txt
diff --git a/src/Servers/HttpSys/samples/SelfHostServer/SelfHostServer.csproj b/src/Servers/HttpSys/samples/SelfHostServer/SelfHostServer.csproj
new file mode 100644
index 0000000000..60cad7d163
--- /dev/null
+++ b/src/Servers/HttpSys/samples/SelfHostServer/SelfHostServer.csproj
@@ -0,0 +1,13 @@
+
+
+
+ netcoreapp3.0
+ Exe
+ true
+
+
+
+
+
+
+
diff --git a/src/HttpSysServer/samples/SelfHostServer/Startup.cs b/src/Servers/HttpSys/samples/SelfHostServer/Startup.cs
similarity index 100%
rename from src/HttpSysServer/samples/SelfHostServer/Startup.cs
rename to src/Servers/HttpSys/samples/SelfHostServer/Startup.cs
diff --git a/src/HttpSysServer/samples/TestClient/App.config b/src/Servers/HttpSys/samples/TestClient/App.config
similarity index 100%
rename from src/HttpSysServer/samples/TestClient/App.config
rename to src/Servers/HttpSys/samples/TestClient/App.config
diff --git a/src/HttpSysServer/samples/TestClient/Program.cs b/src/Servers/HttpSys/samples/TestClient/Program.cs
similarity index 100%
rename from src/HttpSysServer/samples/TestClient/Program.cs
rename to src/Servers/HttpSys/samples/TestClient/Program.cs
diff --git a/src/HttpSysServer/samples/TestClient/Properties/AssemblyInfo.cs b/src/Servers/HttpSys/samples/TestClient/Properties/AssemblyInfo.cs
similarity index 100%
rename from src/HttpSysServer/samples/TestClient/Properties/AssemblyInfo.cs
rename to src/Servers/HttpSys/samples/TestClient/Properties/AssemblyInfo.cs
diff --git a/src/HttpSysServer/samples/TestClient/TestClient.csproj b/src/Servers/HttpSys/samples/TestClient/TestClient.csproj
similarity index 96%
rename from src/HttpSysServer/samples/TestClient/TestClient.csproj
rename to src/Servers/HttpSys/samples/TestClient/TestClient.csproj
index 781a187052..c92be92bc8 100644
--- a/src/HttpSysServer/samples/TestClient/TestClient.csproj
+++ b/src/Servers/HttpSys/samples/TestClient/TestClient.csproj
@@ -1,4 +1,4 @@
-
+
@@ -53,7 +53,8 @@
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/Shared/Diagnostics/Directory.Build.props b/src/Shared/Diagnostics/Directory.Build.props
deleted file mode 100644
index 446e684185..0000000000
--- a/src/Shared/Diagnostics/Directory.Build.props
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
- false
-
-
\ No newline at end of file
diff --git a/src/Shared/Hosting.WebHostBuilderFactory/Directory.Build.props b/src/Shared/Hosting.WebHostBuilderFactory/Directory.Build.props
index 1a3340a2be..29e5392951 100644
--- a/src/Shared/Hosting.WebHostBuilderFactory/Directory.Build.props
+++ b/src/Shared/Hosting.WebHostBuilderFactory/Directory.Build.props
@@ -1,8 +1,8 @@
-
-
-
-
+
+
Internal.WebHostBuilderFactory.Sources
+ true
+ false
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/Constants.cs b/src/Shared/HttpSys/Constants.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/Constants.cs
rename to src/Shared/HttpSys/Constants.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/CookedUrl.cs b/src/Shared/HttpSys/NativeInterop/CookedUrl.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/CookedUrl.cs
rename to src/Shared/HttpSys/NativeInterop/CookedUrl.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/HeapAllocHandle.cs b/src/Shared/HttpSys/NativeInterop/HeapAllocHandle.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/HeapAllocHandle.cs
rename to src/Shared/HttpSys/NativeInterop/HeapAllocHandle.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/HttpApiTypes.cs b/src/Shared/HttpSys/NativeInterop/HttpApiTypes.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/HttpApiTypes.cs
rename to src/Shared/HttpSys/NativeInterop/HttpApiTypes.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/HttpSysRequestHeader.cs b/src/Shared/HttpSys/NativeInterop/HttpSysRequestHeader.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/HttpSysRequestHeader.cs
rename to src/Shared/HttpSys/NativeInterop/HttpSysRequestHeader.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/HttpSysResponseHeader.cs b/src/Shared/HttpSys/NativeInterop/HttpSysResponseHeader.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/HttpSysResponseHeader.cs
rename to src/Shared/HttpSys/NativeInterop/HttpSysResponseHeader.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/NclUtilities.cs b/src/Shared/HttpSys/NativeInterop/NclUtilities.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/NclUtilities.cs
rename to src/Shared/HttpSys/NativeInterop/NclUtilities.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/SafeLocalFreeChannelBinding.cs b/src/Shared/HttpSys/NativeInterop/SafeLocalFreeChannelBinding.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/SafeLocalFreeChannelBinding.cs
rename to src/Shared/HttpSys/NativeInterop/SafeLocalFreeChannelBinding.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/SafeLocalMemHandle.cs b/src/Shared/HttpSys/NativeInterop/SafeLocalMemHandle.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/SafeLocalMemHandle.cs
rename to src/Shared/HttpSys/NativeInterop/SafeLocalMemHandle.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/SafeNativeOverlapped.cs b/src/Shared/HttpSys/NativeInterop/SafeNativeOverlapped.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/SafeNativeOverlapped.cs
rename to src/Shared/HttpSys/NativeInterop/SafeNativeOverlapped.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/SocketAddress.cs b/src/Shared/HttpSys/NativeInterop/SocketAddress.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/SocketAddress.cs
rename to src/Shared/HttpSys/NativeInterop/SocketAddress.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/UnsafeNativeMethods.cs b/src/Shared/HttpSys/NativeInterop/UnsafeNativeMethods.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/NativeInterop/UnsafeNativeMethods.cs
rename to src/Shared/HttpSys/NativeInterop/UnsafeNativeMethods.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/HeaderCollection.cs b/src/Shared/HttpSys/RequestProcessing/HeaderCollection.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/HeaderCollection.cs
rename to src/Shared/HttpSys/RequestProcessing/HeaderCollection.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/HeaderEncoding.cs b/src/Shared/HttpSys/RequestProcessing/HeaderEncoding.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/HeaderEncoding.cs
rename to src/Shared/HttpSys/RequestProcessing/HeaderEncoding.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/HeaderParser.cs b/src/Shared/HttpSys/RequestProcessing/HeaderParser.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/HeaderParser.cs
rename to src/Shared/HttpSys/RequestProcessing/HeaderParser.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/HttpKnownHeaderNames.cs b/src/Shared/HttpSys/RequestProcessing/HttpKnownHeaderNames.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/HttpKnownHeaderNames.cs
rename to src/Shared/HttpSys/RequestProcessing/HttpKnownHeaderNames.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/NativeRequestContext.cs b/src/Shared/HttpSys/RequestProcessing/NativeRequestContext.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/NativeRequestContext.cs
rename to src/Shared/HttpSys/RequestProcessing/NativeRequestContext.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/RawUrlHelper.cs b/src/Shared/HttpSys/RequestProcessing/RawUrlHelper.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/RawUrlHelper.cs
rename to src/Shared/HttpSys/RequestProcessing/RawUrlHelper.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/RequestHeaders.Generated.cs b/src/Shared/HttpSys/RequestProcessing/RequestHeaders.Generated.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/RequestHeaders.Generated.cs
rename to src/Shared/HttpSys/RequestProcessing/RequestHeaders.Generated.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/RequestHeaders.cs b/src/Shared/HttpSys/RequestProcessing/RequestHeaders.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/RequestHeaders.cs
rename to src/Shared/HttpSys/RequestProcessing/RequestHeaders.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/RequestUriBuilder.cs b/src/Shared/HttpSys/RequestProcessing/RequestUriBuilder.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/RequestUriBuilder.cs
rename to src/Shared/HttpSys/RequestProcessing/RequestUriBuilder.cs
diff --git a/src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/SslStatus.cs b/src/Shared/HttpSys/RequestProcessing/SslStatus.cs
similarity index 100%
rename from src/HttpSysServer/shared/Microsoft.AspNetCore.HttpSys.Sources/RequestProcessing/SslStatus.cs
rename to src/Shared/HttpSys/RequestProcessing/SslStatus.cs
diff --git a/src/SignalR/build/repo.props b/src/SignalR/build/repo.props
index 16207d928b..6bc7995c6f 100644
--- a/src/SignalR/build/repo.props
+++ b/src/SignalR/build/repo.props
@@ -12,11 +12,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
diff --git a/src/SignalR/clients/ts/FunctionalTests/package-lock.json b/src/SignalR/clients/ts/FunctionalTests/package-lock.json
index e3a4aa8f71..10f4596b38 100644
--- a/src/SignalR/clients/ts/FunctionalTests/package-lock.json
+++ b/src/SignalR/clients/ts/FunctionalTests/package-lock.json
@@ -1827,12 +1827,14 @@
"balanced-match": {
"version": "1.0.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -1847,17 +1849,20 @@
"code-point-at": {
"version": "1.1.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"core-util-is": {
"version": "1.0.2",
@@ -1974,7 +1979,8 @@
"inherits": {
"version": "2.0.3",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"ini": {
"version": "1.3.5",
@@ -1986,6 +1992,7 @@
"version": "1.0.0",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@@ -2000,6 +2007,7 @@
"version": "3.0.4",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@@ -2007,12 +2015,14 @@
"minimist": {
"version": "0.0.8",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"minipass": {
"version": "2.2.4",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"safe-buffer": "^5.1.1",
"yallist": "^3.0.0"
@@ -2031,6 +2041,7 @@
"version": "0.5.1",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"minimist": "0.0.8"
}
@@ -2111,7 +2122,8 @@
"number-is-nan": {
"version": "1.0.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"object-assign": {
"version": "4.1.1",
@@ -2123,6 +2135,7 @@
"version": "1.4.0",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"wrappy": "1"
}
@@ -2244,6 +2257,7 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
diff --git a/src/SignalR/clients/ts/common/package-lock.json b/src/SignalR/clients/ts/common/package-lock.json
index 64f49215ce..8b3564efc7 100644
--- a/src/SignalR/clients/ts/common/package-lock.json
+++ b/src/SignalR/clients/ts/common/package-lock.json
@@ -2622,12 +2622,14 @@
"balanced-match": {
"version": "1.0.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -2642,17 +2644,20 @@
"code-point-at": {
"version": "1.1.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"core-util-is": {
"version": "1.0.2",
@@ -2769,7 +2774,8 @@
"inherits": {
"version": "2.0.3",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"ini": {
"version": "1.3.5",
@@ -2781,6 +2787,7 @@
"version": "1.0.0",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@@ -2795,6 +2802,7 @@
"version": "3.0.4",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@@ -2802,12 +2810,14 @@
"minimist": {
"version": "0.0.8",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"minipass": {
"version": "2.2.4",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"safe-buffer": "^5.1.1",
"yallist": "^3.0.0"
@@ -2826,6 +2836,7 @@
"version": "0.5.1",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"minimist": "0.0.8"
}
@@ -2906,7 +2917,8 @@
"number-is-nan": {
"version": "1.0.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"object-assign": {
"version": "4.1.1",
@@ -2918,6 +2930,7 @@
"version": "1.4.0",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"wrappy": "1"
}
@@ -3039,6 +3052,7 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
diff --git a/src/SignalR/clients/ts/signalr-protocol-msgpack/package-lock.json b/src/SignalR/clients/ts/signalr-protocol-msgpack/package-lock.json
index 565f657642..e34ee88f8c 100644
--- a/src/SignalR/clients/ts/signalr-protocol-msgpack/package-lock.json
+++ b/src/SignalR/clients/ts/signalr-protocol-msgpack/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "@aspnet/signalr-protocol-msgpack",
- "version": "3.0.0-dev",
+ "version": "3.0.0-preview-19000-00",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
diff --git a/src/SignalR/clients/ts/signalr/package-lock.json b/src/SignalR/clients/ts/signalr/package-lock.json
index a7d4e4a695..6c549a7c91 100644
--- a/src/SignalR/clients/ts/signalr/package-lock.json
+++ b/src/SignalR/clients/ts/signalr/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "@aspnet/signalr",
- "version": "3.0.0-dev",
+ "version": "3.0.0-preview-19000-00",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
diff --git a/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/Microsoft.AspNetCore.Http.Connections.Tests.csproj b/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/Microsoft.AspNetCore.Http.Connections.Tests.csproj
index 2b4c82d26b..24e8d2dc64 100644
--- a/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/Microsoft.AspNetCore.Http.Connections.Tests.csproj
+++ b/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/Microsoft.AspNetCore.Http.Connections.Tests.csproj
@@ -5,6 +5,7 @@
+
PreserveNewest
@@ -18,7 +19,6 @@
-
diff --git a/src/StaticFiles/build/repo.props b/src/StaticFiles/build/repo.props
index 17a98ac7e7..e3e0fa123b 100644
--- a/src/StaticFiles/build/repo.props
+++ b/src/StaticFiles/build/repo.props
@@ -1,12 +1,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-
diff --git a/src/Templating/build/repo.props b/src/Templating/build/repo.props
index 167382eba7..9fce48972f 100644
--- a/src/Templating/build/repo.props
+++ b/src/Templating/build/repo.props
@@ -1,12 +1,6 @@
-
-
- Internal.AspNetCore.Universe.Lineup
- https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
-
-