diff --git a/.azure/pipelines/jobs/default-build.yml b/.azure/pipelines/jobs/default-build.yml
index 065e4d177086..ff9e12135aeb 100644
--- a/.azure/pipelines/jobs/default-build.yml
+++ b/.azure/pipelines/jobs/default-build.yml
@@ -103,6 +103,10 @@ jobs:
steps:
- checkout: self
clean: true
+ - task: NodeTool@0
+ displayName: Install Node 10.x
+ inputs:
+ versionSpec: 10.x
- ${{ if and(eq(parameters.agentOs, 'Windows'), eq(parameters.codeSign, 'true')) }}:
- task: MicroBuildSigningPlugin@1
displayName: Install MicroBuild Signing plugin
diff --git a/.gitignore b/.gitignore
index d022b0a7dfbc..72ad16862567 100644
--- a/.gitignore
+++ b/.gitignore
@@ -28,3 +28,4 @@ scripts/tmp/
launchSettings.json
korebuild-lock.txt
.gradle/
+src/SignalR/clients/**/dist/
diff --git a/Directory.Build.props b/Directory.Build.props
index 4de102651c34..f1c513da69c3 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -23,7 +23,7 @@
$([MSBuild]::MakeRelative($(RepositoryRoot), $(MSBuildProjectDirectory)))
- true
+ true
true
true
true
@@ -48,5 +48,6 @@
+
diff --git a/Directory.Build.targets b/Directory.Build.targets
index 811b7b67c271..b0f161d1eda7 100644
--- a/Directory.Build.targets
+++ b/Directory.Build.targets
@@ -57,5 +57,6 @@
+
diff --git a/build/buildorder.props b/build/buildorder.props
index 83fb4146e722..095d895465fd 100644
--- a/build/buildorder.props
+++ b/build/buildorder.props
@@ -10,7 +10,6 @@
-
diff --git a/build/dependencies.props b/build/dependencies.props
index 8ed8d0dcedaf..dfe42b8b54b7 100644
--- a/build/dependencies.props
+++ b/build/dependencies.props
@@ -20,7 +20,7 @@
$(KoreBuildVersion)
$(KoreBuildVersion)
- 2.1.7-build-20190104.1
+ 2.1.7-build-20190109.2
@@ -137,7 +137,7 @@
1.1.8
2.0.7
1.0.1
- 15.6.1
+ 15.9.0
3.0.1
3.0.1
3.0.1
@@ -224,7 +224,7 @@
2.3.1
2.3.1
2.3.1
- 2.3.1
+ 2.4.0
2.4.0
diff --git a/build/repo.props b/build/repo.props
index 84a52a43ef14..58098b0ee551 100644
--- a/build/repo.props
+++ b/build/repo.props
@@ -46,6 +46,26 @@
+
+
+
+
+
+
+
+
@@ -59,23 +79,10 @@
-
-
-
-
-
+
-
diff --git a/build/repo.targets b/build/repo.targets
index 59785014b5b4..0a0393f6ded4 100644
--- a/build/repo.targets
+++ b/build/repo.targets
@@ -27,21 +27,6 @@
$(GetArtifactInfoDependsOn);ResolveRepoInfo
-
- $(RestoreDependsOn);RestoreNpm
-
-
-
-
-
-
- install --no-optional
- ci
-
-
-
-
-
diff --git a/build/submodules.props b/build/submodules.props
index 6b8f40910553..f7fff918435c 100644
--- a/build/submodules.props
+++ b/build/submodules.props
@@ -46,6 +46,5 @@
-
diff --git a/docs/BuildFromSource.md b/docs/BuildFromSource.md
index 06a901a91388..66dad1af765a 100644
--- a/docs/BuildFromSource.md
+++ b/docs/BuildFromSource.md
@@ -3,8 +3,6 @@ Build ASP.NET Core from Source
Building ASP.NET Core from source allows you tweak and customize ASP.NET Core, and to contribute your improvements back to the project.
-:warning: We are currently in the middle of restructing our source code. These instructions will likely change rapidly during November and December 2018.
-
See https://github.com/aspnet/AspNetCore/labels/area-infrastructure for known issues and to track ongoing work.
## Install pre-requistes
diff --git a/eng/Baseline.Designer.props b/eng/Baseline.Designer.props
index 7c4b8ae10570..0f5803e0f299 100644
--- a/eng/Baseline.Designer.props
+++ b/eng/Baseline.Designer.props
@@ -429,6 +429,49 @@
+
+
+ 1.0.4
+
+
+
+
+
+
+
+
+
+
+
+ 1.0.4
+
+
+
+
+
+
+
+
+ 1.0.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
2.1.1
@@ -968,6 +1011,88 @@
+
+
+ 1.0.4
+
+
+
+
+
+
+
+
+
+
+ 1.0.4
+
+
+
+
+
+
+
+ 1.0.4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1.0.4
+
+
+
+
+
+
+
+
+
+
+
+
+ 1.0.4
+
+
+
+
+
+
+
+ 1.0.4
+
+
+
+
+
+
+
+ 1.0.4
+
+
+
+
+
+
+
+
+
+ 1.0.4
+
+
+
+
+
2.1.1
diff --git a/eng/Baseline.xml b/eng/Baseline.xml
index 01206c392687..30847a3c3321 100644
--- a/eng/Baseline.xml
+++ b/eng/Baseline.xml
@@ -51,6 +51,9 @@ build of ASP.NET Core 2.1.x. Update this list when preparing for a new patch.
+
+
+
@@ -102,6 +105,14 @@ build of ASP.NET Core 2.1.x. Update this list when preparing for a new patch.
+
+
+
+
+
+
+
+
diff --git a/eng/Dependencies.props b/eng/Dependencies.props
index a137e1591d0f..42d66d41a8ec 100644
--- a/eng/Dependencies.props
+++ b/eng/Dependencies.props
@@ -48,6 +48,7 @@ and are generated based on the last package release.
+
@@ -86,30 +87,35 @@ and are generated based on the last package release.
+
+
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
diff --git a/eng/ProjectReferences.props b/eng/ProjectReferences.props
index 404a31c6b476..a3d3857bb167 100644
--- a/eng/ProjectReferences.props
+++ b/eng/ProjectReferences.props
@@ -124,5 +124,16 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/eng/scripts/CodeCheck.ps1 b/eng/scripts/CodeCheck.ps1
index 08e1902cbbe6..9e4077443eef 100644
--- a/eng/scripts/CodeCheck.ps1
+++ b/eng/scripts/CodeCheck.ps1
@@ -15,6 +15,11 @@ $repoRoot = Resolve-Path "$PSScriptRoot/../../"
[string[]] $errors = @()
+function LogError([string]$message) {
+ Write-Host -f Red "error: $messsage"
+ $errors += $message
+}
+
try {
#
# Solutions
@@ -31,7 +36,7 @@ try {
| % {
$proj = Join-Path $slnDir $_
if (-not (Test-Path $proj)) {
- $errors += "Missing project. Solution references a project which does not exist: $proj. [$sln] "
+ LogError "Missing project. Solution references a project which does not exist: $proj. [$sln] "
}
}
}
@@ -42,6 +47,7 @@ try {
Write-Host "Re-running code generation"
+ Write-Host "Re-generating ProjectReference.props"
Invoke-Block {
[string[]] $generateArgs = @()
if ($ci) {
@@ -50,16 +56,32 @@ try {
& $repoRoot/build.cmd /t:GenerateProjectList @generateArgs
}
+ Write-Host "Re-generating package baselines"
+ $dotnet = 'dotnet'
+ if ($ci) {
+ $dotnet = "$repoRoot/.dotnet/x64/dotnet.exe"
+ }
+ Invoke-Block {
+ & $dotnet run -p "$repoRoot/eng/tools/BaselineGenerator/"
+ }
+
Write-Host "git diff"
& git diff --ignore-space-at-eol --exit-code
if ($LastExitCode -ne 0) {
$status = git status -s | Out-String
$status = $status -replace "`n","`n "
- $errors += "Generated code is not up to date."
+ LogError "Generated code is not up to date."
}
}
finally {
+ Write-Host ""
+ Write-Host "Summary:"
+ Write-Host ""
+ Write-Host " $($errors.Length) error(s)"
+ Write-Host ""
+
foreach ($err in $errors) {
+
Write-Host -f Red "error : $err"
}
diff --git a/eng/targets/Npm.Common.props b/eng/targets/Npm.Common.props
new file mode 100644
index 000000000000..3308ca9ee034
--- /dev/null
+++ b/eng/targets/Npm.Common.props
@@ -0,0 +1,7 @@
+
+
+ test
+ Release
+ Debug
+
+
diff --git a/eng/targets/Npm.Common.targets b/eng/targets/Npm.Common.targets
new file mode 100644
index 000000000000..ea24357e50e3
--- /dev/null
+++ b/eng/targets/Npm.Common.targets
@@ -0,0 +1,83 @@
+
+
+
+ $(PackageId.Replace('@','').Replace('/','-'))
+ $(NormalizedPackageId)-$(PackageVersion).tgz
+ $(MSBuildProjectDirectory)\package.json
+ $(MSBuildProjectDirectory)\obj\
+ $([MSBuild]::NormalizeDirectory('$(BaseIntermediateOutputPath)'))$(Configuration)\
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(PackDependsOn);
+ PrepareForBuild
+
+
+ $(PackDependsOn);
+ Build
+
+
+
+
+
+ <_BackupPackageJson>$(IntermediateOutputPath)$(MSBuildProjectName).package.json.bak
+ <_PackageTargetPath>$(MSBuildProjectDirectory)\$(PackageFileName)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ NpmPackage
+ $(PackageId)
+ $(PackageVersion)
+
+
+
+
+
+
+
diff --git a/korebuild-lock.txt b/korebuild-lock.txt
index c40efa074663..054de6b7ba5c 100644
--- a/korebuild-lock.txt
+++ b/korebuild-lock.txt
@@ -1,2 +1,2 @@
-version:2.1.7-build-20190104.4
-commithash:8698fc7a305cbb97fcfa69e52323ee1b0c149165
+version:2.1.7-build-20190109.2
+commithash:ac3a3419fc03baebde26ce4ea3abc86fd701271c
diff --git a/src/Hosting/test/testassets/TestStartupAssembly1/TestStartupAssembly1.csproj b/src/Hosting/test/testassets/TestStartupAssembly1/TestStartupAssembly1.csproj
index 21048200b1c4..85d7032fa3fd 100644
--- a/src/Hosting/test/testassets/TestStartupAssembly1/TestStartupAssembly1.csproj
+++ b/src/Hosting/test/testassets/TestStartupAssembly1/TestStartupAssembly1.csproj
@@ -1,7 +1,7 @@
- netcoreapp21;net461
+ netcoreapp2.1;net461
diff --git a/src/Identity/samples/NativeWPFClient/NativeWPFClient.csproj b/src/Identity/samples/NativeWPFClient/NativeWPFClient.csproj
index 9eae188a2f57..23d8361dc66f 100644
--- a/src/Identity/samples/NativeWPFClient/NativeWPFClient.csproj
+++ b/src/Identity/samples/NativeWPFClient/NativeWPFClient.csproj
@@ -14,8 +14,10 @@
{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
4
true
-
false
+
+ false
+
$(BaseNuGetRuntimeIdentifier)
diff --git a/src/Shared/test/Shared.Tests/Microsoft.AspNetCore.Shared.Tests.csproj b/src/Shared/test/Shared.Tests/Microsoft.AspNetCore.Shared.Tests.csproj
index 48b2099db720..ba8919bf5e3a 100644
--- a/src/Shared/test/Shared.Tests/Microsoft.AspNetCore.Shared.Tests.csproj
+++ b/src/Shared/test/Shared.Tests/Microsoft.AspNetCore.Shared.Tests.csproj
@@ -19,6 +19,7 @@
+
diff --git a/src/SignalR/.gitignore b/src/SignalR/.gitignore
deleted file mode 100644
index 3f7de5f9d85c..000000000000
--- a/src/SignalR/.gitignore
+++ /dev/null
@@ -1,57 +0,0 @@
-[Oo]bj/
-[Bb]in/
-TestResults/
-.nuget/
-*.sln.ide/
-_ReSharper.*/
-packages/
-artifacts/
-PublishProfiles/
-.vs/
-*.user
-*.suo
-*.cache
-*.docstates
-_ReSharper.*
-nuget.exe
-*net45.csproj
-*net451.csproj
-*k10.csproj
-*.psess
-*.vsp
-*.pidb
-*.userprefs
-*DS_Store
-*.ncrunchsolution
-*.*sdf
-*.ipch
-project.lock.json
-runtimes/
-.build/
-.testPublish/
-launchSettings.json
-node_modules/
-npm-debug.log
-*.tmp
-*.nuget.props
-*.nuget.targets
-autobahnreports/
-site.min.css
-.idea/
-.vscode/
-dist/
-global.json
-BenchmarkDotNet.Artifacts/
-.rpt2_cache/
-*.orig
-*.vspscc
-*.vssscc
-*.opensdf
-Debug/
-Release/
-ipch/
-*.vcxproj.user
-*.exe
-*.aps
-*.opendb
-*.db
\ No newline at end of file
diff --git a/src/SignalR/Directory.Build.props b/src/SignalR/Directory.Build.props
index 19cc48835fc9..f79ff5c635d5 100644
--- a/src/SignalR/Directory.Build.props
+++ b/src/SignalR/Directory.Build.props
@@ -1,22 +1,30 @@
-
-
-
-
-
+
- Microsoft ASP.NET Core
- https://github.com/aspnet/SignalR
- git
- $(MSBuildThisFileDirectory)
- $(MSBuildThisFileDirectory)build\Key.snk
- true
- true
- true
- latest
- $(MSBuildThisFileDirectory)..\Shared\
+
+ 1.0.$(AspNetCorePatchVersion)
+ $(VersionPrefix)
+ $(VersionPrefix)-$(VersionSuffix)
+
+ false
+
+
+ SignalR
+
+ $(MSBuildThisFileDirectory)common\Shared\
+ $(MSBuildThisFileDirectory)common\testassets\Tests.Utils\Microsoft.AspNetCore.SignalR.Tests.Utils.csproj
+
+
+ $(NoWarn);CS1591
+ true
+ aspnetcore;signalr
+
+
+
+
+ PreserveNewest
+
+
diff --git a/src/SignalR/Directory.Build.targets b/src/SignalR/Directory.Build.targets
deleted file mode 100644
index 53b3f6e1daba..000000000000
--- a/src/SignalR/Directory.Build.targets
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
- $(MicrosoftNETCoreApp20PackageVersion)
- $(MicrosoftNETCoreApp21PackageVersion)
- $(NETStandardLibrary20PackageVersion)
-
-
diff --git a/src/SignalR/NuGetPackageVerifier.json b/src/SignalR/NuGetPackageVerifier.json
deleted file mode 100644
index c5f558299898..000000000000
--- a/src/SignalR/NuGetPackageVerifier.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "Default": {
- "rules": [
- "DefaultCompositeRule"
- ]
- }
-}
diff --git a/src/SignalR/README.md b/src/SignalR/README.md
index 75eb9b9701b0..d3fbee225db5 100644
--- a/src/SignalR/README.md
+++ b/src/SignalR/README.md
@@ -1,16 +1,10 @@
ASP.NET Core SignalR
-========
-
-AppVeyor: [![AppVeyor](https://ci.appveyor.com/api/projects/status/80sq517n7peiaxi9/branch/dev?svg=true)](https://ci.appveyor.com/project/aspnetci/signalr/branch/dev)
-
-Travis: [![Travis](https://travis-ci.org/aspnet/SignalR.svg?branch=dev)](https://travis-ci.org/aspnet/SignalR)
+====================
ASP.NET Core SignalR is a new library for ASP.NET Core developers that makes it incredibly simple to add real-time web functionality to your applications. What is "real-time web" functionality? It's the ability to have your server-side code push content to the connected clients as it happens, in real-time.
You can watch an introductory presentation here - [Introducing ASP.NET Core SignalR](https://www.youtube.com/watch?v=fgTu-xYFDdM)
-This project is part of ASP.NET Core. You can find samples, documentation and getting started instructions for ASP.NET Core at the [Home](https://github.com/aspnet/home) repo.
-
## TypeScript Version
If you are encountering TypeScript definition issues with SignalR, please ensure you are using the latest version of TypeScript to compile your application. If the issue occurs in the latest TypeScript, please let us know.
@@ -52,11 +46,3 @@ We also have a MsgPack protocol library which is installed via:
## Deploying
Once you've installed the NPM modules, they will be located in the `node_modules/@aspnet/signalr` and `node_modules/@aspnet/signalr-protocol-msgpack` folders. If you are building a NodeJS application or using an ECMAScript module loader/bundler (such as [webpack](https://webpack.js.org)), you can load them directly. If you are building a browser application without using a module bundler, you can find UMD-compatible bundles in the `dist/browser` folder; minified versions are provided as well. Simply copy these to your project as appropriate and use a build task to keep them up-to-date.
-
-## Building from source
-
-To run a complete build on command line only, execute `build.cmd` or `build.sh` without arguments.
-
-If this is your first time building *SignalR* please see the [Getting Started](docs/GettingStarted.md) for more information about project dependencies and other build-related information specific to *SignalR*.
-
-See [developer documentation](https://github.com/aspnet/Home/wiki) for general information on building and contributing to this and other [aspnet](https://github.com/aspnet) repositories.
diff --git a/src/SignalR/SignalR.sln b/src/SignalR/SignalR.sln
index 1d0387034942..cebc74330d68 100644
--- a/src/SignalR/SignalR.sln
+++ b/src/SignalR/SignalR.sln
@@ -3,91 +3,107 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.27110.0
MinimumVisualStudioVersion = 15.0.26730.03
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{DA69F624-5398-4884-87E4-B816698CDE65}"
- ProjectSection(SolutionItems) = preProject
- src\Directory.Build.props = src\Directory.Build.props
- EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{83B2C3EB-A3D8-4E6F-9A3C-A380B005EF31}"
- ProjectSection(SolutionItems) = preProject
- benchmarkapps\BenchmarkServer\BenchmarkServer.csproj = benchmarkapps\BenchmarkServer\BenchmarkServer.csproj
- build\dependencies.props = build\dependencies.props
- Directory.Build.props = Directory.Build.props
- Directory.Build.targets = Directory.Build.targets
- build\Key.snk = build\Key.snk
- NuGet.config = NuGet.config
- build\repo.props = build\repo.props
- build\repo.targets = build\repo.targets
- EndProjectSection
-EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "samples", "samples", "{C4BC9889-B49F-41B6-806B-F84941B2549B}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SignalRSamples", "samples\SignalRSamples\SignalRSamples.csproj", "{C4AEAB04-F341-4539-B6C0-52368FB4BF9E}"
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{6A35B453-52EC-48AF-89CA-D4A69800F131}"
- ProjectSection(SolutionItems) = preProject
- test\Directory.Build.props = test\Directory.Build.props
- EndProjectSection
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SocialWeather", "samples\SocialWeather\SocialWeather.csproj", "{8D789F94-CB74-45FD-ACE7-92AF6E55042E}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Http.Connections.Tests", "test\Microsoft.AspNetCore.Http.Connections.Tests\Microsoft.AspNetCore.Http.Connections.Tests.csproj", "{AAD719D5-5E31-4ED1-A60F-6EB92EFA66D9}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ClientSample", "samples\ClientSample\ClientSample.csproj", "{BA99C2A1-48F9-4FA5-B95A-9687A73B7CC9}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Core", "src\Microsoft.AspNetCore.SignalR.Core\Microsoft.AspNetCore.SignalR.Core.csproj", "{42E76F87-92B6-45AB-BF07-6B811C0F2CAC}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebSocketSample", "samples\WebSocketSample\WebSocketSample.csproj", "{EE790D50-C632-46B9-A430-06FA2F2FDCD7}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Redis", "src\Microsoft.AspNetCore.SignalR.Redis\Microsoft.AspNetCore.SignalR.Redis.csproj", "{59319B72-38BE-4041-8E5C-FF6938874CE8}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "clients", "clients", "{3A76C5A2-79ED-49BC-8BDC-6A3A766FFA1B}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SocialWeather", "samples\SocialWeather\SocialWeather.csproj", "{8D789F94-CB74-45FD-ACE7-92AF6E55042E}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JwtSample", "samples\JwtSample\JwtSample.csproj", "{6A7491D3-3C97-49BD-A71C-433AED657F30}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Tests", "test\Microsoft.AspNetCore.SignalR.Tests\Microsoft.AspNetCore.SignalR.Tests.csproj", "{1CE2B3BE-056C-41E3-A5F5-6A1EF1D288BA}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JwtClientSample", "samples\JwtClientSample\JwtClientSample.csproj", "{1A953296-E869-4DE2-A693-FD5FCDE27057}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ClientSample", "samples\ClientSample\ClientSample.csproj", "{BA99C2A1-48F9-4FA5-B95A-9687A73B7CC9}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FunctionalTests", "clients\ts\FunctionalTests\FunctionalTests.csproj", "{D0C7B22E-B0B6-4D62-BF7D-79EE4AAF1981}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebSocketSample", "samples\WebSocketSample\WebSocketSample.csproj", "{EE790D50-C632-46B9-A430-06FA2F2FDCD7}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Hosting", "..\Hosting\Hosting\src\Microsoft.AspNetCore.Hosting.csproj", "{3AC35C9A-3344-4BBB-B789-06CEE2CD093E}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Client.Tests", "test\Microsoft.AspNetCore.SignalR.Client.Tests\Microsoft.AspNetCore.SignalR.Client.Tests.csproj", "{B19C15A5-F5EA-4CA7-936B-1166ABEE35C4}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Server.IntegrationTesting", "..\Hosting\Server.IntegrationTesting\src\Microsoft.AspNetCore.Server.IntegrationTesting.csproj", "{8312A1B0-6FA8-47FE-9299-A76202AC920B}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Common", "src\Microsoft.AspNetCore.SignalR.Common\Microsoft.AspNetCore.SignalR.Common.csproj", "{E37324FF-6BAF-4243-BA80-7C024CF5F29D}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.TestHost", "..\Hosting\TestHost\src\Microsoft.AspNetCore.TestHost.csproj", "{3ACAB196-DD18-4AD0-87BE-2F4CB062D2F7}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Client.Core", "src\Microsoft.AspNetCore.SignalR.Client.Core\Microsoft.AspNetCore.SignalR.Client.Core.csproj", "{354335AB-CEE9-4434-A641-78058F6EFE56}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Authentication.Core", "..\Http\Authentication.Core\src\Microsoft.AspNetCore.Authentication.Core.csproj", "{9A9BE05B-1662-4A80-AE44-7D06071A1473}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Client.FunctionalTests", "test\Microsoft.AspNetCore.SignalR.Client.FunctionalTests\Microsoft.AspNetCore.SignalR.Client.FunctionalTests.csproj", "{455B68D2-C5B6-4BF4-A685-964B07AFAAF8}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Http.Abstractions", "..\Http\Http.Abstractions\src\Microsoft.AspNetCore.Http.Abstractions.csproj", "{1758768B-81BC-434D-A4E6-4C821436373E}"
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "clients", "clients", "{3A76C5A2-79ED-49BC-8BDC-6A3A766FFA1B}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Http", "..\Http\Http\src\Microsoft.AspNetCore.Http.csproj", "{07137BC8-F3D8-425E-8A7F-1AAA383EA845}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Microbenchmarks", "benchmarks\Microsoft.AspNetCore.SignalR.Microbenchmarks\Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj", "{96771B3F-4D18-41A7-A75B-FF38E76AAC89}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Cors", "..\Middleware\CORS\src\Microsoft.AspNetCore.Cors.csproj", "{9D500098-648F-4EC3-9B89-9BAB7278EDF1}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Common.Tests", "test\Microsoft.AspNetCore.SignalR.Common.Tests\Microsoft.AspNetCore.SignalR.Common.Tests.csproj", "{75E342F6-5445-4E7E-9143-6D9AE62C2B1E}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Diagnostics", "..\Middleware\Diagnostics\src\Microsoft.AspNetCore.Diagnostics.csproj", "{98B8D556-A024-42FA-B288-F6DA9EB2B338}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR", "src\Microsoft.AspNetCore.SignalR\Microsoft.AspNetCore.SignalR.csproj", "{FD80BB0F-0876-4F11-8D84-6657C8EF84CA}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.StaticFiles", "..\Middleware\StaticFiles\src\Microsoft.AspNetCore.StaticFiles.csproj", "{6818EAB6-8D81-4FE9-8E5F-44D7EF18FF74}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Http.Connections", "src\Microsoft.AspNetCore.Http.Connections\Microsoft.AspNetCore.Http.Connections.csproj", "{9E403E93-3284-486F-9A5F-1E15FCE426A5}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Authentication.Cookies", "..\Security\Authentication\Cookies\src\Microsoft.AspNetCore.Authentication.Cookies.csproj", "{73C9A9F6-4254-450B-9BD0-B665DE298D9D}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Http.Connections.Client", "src\Microsoft.AspNetCore.Http.Connections.Client\Microsoft.AspNetCore.Http.Connections.Client.csproj", "{B0243F99-2D3F-4CC6-AD71-E3F891B64724}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Authentication", "..\Security\Authentication\Core\src\Microsoft.AspNetCore.Authentication.csproj", "{EBE99AF6-6F53-49DE-9B6C-0BF03731CD91}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Http.Connections.Common", "src\Microsoft.AspNetCore.Http.Connections.Common\Microsoft.AspNetCore.Http.Connections.Common.csproj", "{E081EE41-D95F-4AD2-BC0B-4B562C0A2A47}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Authentication.JwtBearer", "..\Security\Authentication\JwtBearer\src\Microsoft.AspNetCore.Authentication.JwtBearer.csproj", "{2F1FA614-9257-405F-815A-97EE72E046F4}"
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "benchmarks", "benchmarks", "{8A4582C8-DC59-4B61-BCE7-119FBAA99EFB}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Server.IISIntegration", "..\Servers\IIS\IISIntegration\src\Microsoft.AspNetCore.Server.IISIntegration.csproj", "{39A4DA7A-6857-4594-8AE1-406F1F271B5C}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Client", "src\Microsoft.AspNetCore.SignalR.Client\Microsoft.AspNetCore.SignalR.Client.csproj", "{BE982591-F4BB-42D9-ABD4-A5D44C65971E}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Server.Kestrel", "..\Servers\Kestrel\Kestrel\src\Microsoft.AspNetCore.Server.Kestrel.csproj", "{356D6B62-1EDE-43F9-B78E-E160F4EC02E7}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Redis.Tests", "test\Microsoft.AspNetCore.SignalR.Redis.Tests\Microsoft.AspNetCore.SignalR.Redis.Tests.csproj", "{0B083AE6-86CA-4E0B-AE02-59154D1FD005}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Client.Core", "clients\csharp\Client.Core\src\Microsoft.AspNetCore.SignalR.Client.Core.csproj", "{1F83C880-645D-477B-A877-157F49660B0E}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JwtSample", "samples\JwtSample\JwtSample.csproj", "{6A7491D3-3C97-49BD-A71C-433AED657F30}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Client", "clients\csharp\Client\src\Microsoft.AspNetCore.SignalR.Client.csproj", "{903FDE03-F9A6-4969-9028-842A53580667}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "JwtClientSample", "samples\JwtClientSample\JwtClientSample.csproj", "{1A953296-E869-4DE2-A693-FD5FCDE27057}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Client.FunctionalTests", "clients\csharp\Client\test\FunctionalTests\Microsoft.AspNetCore.SignalR.Client.FunctionalTests.csproj", "{A7C2BC93-DFB9-45B3-8CD9-EBA940BC23D1}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Tests.Utils", "test\Microsoft.AspNetCore.SignalR.Tests.Utils\Microsoft.AspNetCore.SignalR.Tests.Utils.csproj", "{0A0A6135-EA24-4307-95C2-CE1B7E164A5E}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Client.Tests", "clients\csharp\Client\test\UnitTests\Microsoft.AspNetCore.SignalR.Client.Tests.csproj", "{3012F7C4-0181-40B8-9391-04EF794DE9A3}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Protocols.MessagePack", "src\Microsoft.AspNetCore.SignalR.Protocols.MessagePack\Microsoft.AspNetCore.SignalR.Protocols.MessagePack.csproj", "{55DB4B6F-12E5-4A27-97F4-E97E135470FF}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Http.Connections.Client", "clients\csharp\Http.Connections.Client\src\Microsoft.AspNetCore.Http.Connections.Client.csproj", "{EA5C411C-AC81-4C51-BB85-CBE8F0E7BE1E}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FunctionalTests", "clients\ts\FunctionalTests\FunctionalTests.csproj", "{D0C7B22E-B0B6-4D62-BF7D-79EE4AAF1981}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "common", "common", "{9FCD621E-E710-4991-B45C-1BABC977BEEC}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Http.Connections.Common", "common\Http.Connections.Common\src\Microsoft.AspNetCore.Http.Connections.Common.csproj", "{F3F532CF-BABD-4517-8C46-61869F814C58}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Http.Connections", "common\Http.Connections\src\Microsoft.AspNetCore.Http.Connections.csproj", "{9D9EAC92-0CDC-4648-BC14-E602BCDF71A3}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Http.Connections.Tests", "common\Http.Connections\test\Microsoft.AspNetCore.Http.Connections.Tests.csproj", "{126E8FB0-350D-4EA8-BDCD-708055112358}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Protocols.Json", "common\Protocols.Json\src\Microsoft.AspNetCore.SignalR.Protocols.Json.csproj", "{0CD3CCCE-45CD-4CB0-820E-D6964A410FB9}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Protocols.MessagePack", "common\Protocols.MessagePack\src\Microsoft.AspNetCore.SignalR.Protocols.MessagePack.csproj", "{0CD2E602-3B28-42DB-A71B-34C50E9663CE}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Common", "common\SignalR.Common\src\Microsoft.AspNetCore.SignalR.Common.csproj", "{CE635283-EE95-4F8E-B80A-2DF0E8E530AE}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Common.Tests", "common\SignalR.Common\test\Microsoft.AspNetCore.SignalR.Common.Tests.csproj", "{64D82C2D-4F93-4B4F-8FF5-5086C242F9D2}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "testassets", "testassets", "{6D9DF750-BA0D-4ED7-8137-732E52894B1C}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Tests.Utils", "common\testassets\Tests.Utils\Microsoft.AspNetCore.SignalR.Tests.Utils.csproj", "{21C71457-3910-4BC1-937F-57B0172004CA}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "perf", "perf", "{AC3CD0BA-DE19-4333-9A42-3CFCC9FF0332}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "benchmarkapps", "benchmarkapps", "{1AF35754-036E-4D19-BE71-6144CEC0E1D5}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BenchmarkServer", "perf\benchmarkapps\BenchmarkServer\BenchmarkServer.csproj", "{35C0D65F-643E-42FA-9177-2BFFDE9AFA14}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Crankier", "perf\benchmarkapps\Crankier\Crankier.csproj", "{56563C41-59EA-4B7F-94DC-ADD5923EC087}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Microbenchmarks", "perf\Microbenchmarks\Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj", "{B34D6810-1A95-462F-A8DD-76E2B7FC5CEE}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "server", "server", "{37DDE730-33D7-4400-9F12-84F0F2C0F319}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Core", "server\Core\src\Microsoft.AspNetCore.SignalR.Core.csproj", "{F7CF971E-4FD8-4E3C-9BA1-0A0C84E2E72A}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR", "server\SignalR\src\Microsoft.AspNetCore.SignalR.csproj", "{F98DC946-BB11-444E-BD87-13CB07E5E107}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Tests", "server\SignalR\test\Microsoft.AspNetCore.SignalR.Tests.csproj", "{6089F7BD-6A47-4C8F-A55F-5B813BECA763}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Protocols.Json", "src\Microsoft.AspNetCore.SignalR.Protocols.Json\Microsoft.AspNetCore.SignalR.Protocols.Json.csproj", "{896FA5EE-63A5-4EAC-9F09-346584BB4830}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Redis", "server\Redis\src\Microsoft.AspNetCore.SignalR.Redis.csproj", "{1C1556CC-A91E-4B69-A5E8-644052B1CB7B}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BenchmarkServer", "benchmarkapps\BenchmarkServer\BenchmarkServer.csproj", "{8C75AC94-C980-4FE1-9F79-6CED3C8665CE}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.SignalR.Redis.Tests", "server\Redis\test\Microsoft.AspNetCore.SignalR.Redis.Tests.csproj", "{44D6120C-A975-4551-9ED5-49A99047FEA8}"
EndProject
-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Crankier", "benchmarkapps\Crankier\Crankier.csproj", "{8D3E3E7D-452B-44F4-86CA-111003EA11ED}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "dependencies", "dependencies", "{EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}"
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "benchmarkapps", "benchmarkapps", "{43F352F3-4E2B-4ED7-901B-36E6671251F5}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "testassets", "testassets", "{F2AB9C8F-CC30-495D-ACF4-9E4715F46C90}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -99,26 +115,10 @@ Global
{C4AEAB04-F341-4539-B6C0-52368FB4BF9E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C4AEAB04-F341-4539-B6C0-52368FB4BF9E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C4AEAB04-F341-4539-B6C0-52368FB4BF9E}.Release|Any CPU.Build.0 = Release|Any CPU
- {AAD719D5-5E31-4ED1-A60F-6EB92EFA66D9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {AAD719D5-5E31-4ED1-A60F-6EB92EFA66D9}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {AAD719D5-5E31-4ED1-A60F-6EB92EFA66D9}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {AAD719D5-5E31-4ED1-A60F-6EB92EFA66D9}.Release|Any CPU.Build.0 = Release|Any CPU
- {42E76F87-92B6-45AB-BF07-6B811C0F2CAC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {42E76F87-92B6-45AB-BF07-6B811C0F2CAC}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {42E76F87-92B6-45AB-BF07-6B811C0F2CAC}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {42E76F87-92B6-45AB-BF07-6B811C0F2CAC}.Release|Any CPU.Build.0 = Release|Any CPU
- {59319B72-38BE-4041-8E5C-FF6938874CE8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {59319B72-38BE-4041-8E5C-FF6938874CE8}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {59319B72-38BE-4041-8E5C-FF6938874CE8}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {59319B72-38BE-4041-8E5C-FF6938874CE8}.Release|Any CPU.Build.0 = Release|Any CPU
{8D789F94-CB74-45FD-ACE7-92AF6E55042E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8D789F94-CB74-45FD-ACE7-92AF6E55042E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8D789F94-CB74-45FD-ACE7-92AF6E55042E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8D789F94-CB74-45FD-ACE7-92AF6E55042E}.Release|Any CPU.Build.0 = Release|Any CPU
- {1CE2B3BE-056C-41E3-A5F5-6A1EF1D288BA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {1CE2B3BE-056C-41E3-A5F5-6A1EF1D288BA}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {1CE2B3BE-056C-41E3-A5F5-6A1EF1D288BA}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {1CE2B3BE-056C-41E3-A5F5-6A1EF1D288BA}.Release|Any CPU.Build.0 = Release|Any CPU
{BA99C2A1-48F9-4FA5-B95A-9687A73B7CC9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{BA99C2A1-48F9-4FA5-B95A-9687A73B7CC9}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BA99C2A1-48F9-4FA5-B95A-9687A73B7CC9}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -127,54 +127,6 @@ Global
{EE790D50-C632-46B9-A430-06FA2F2FDCD7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EE790D50-C632-46B9-A430-06FA2F2FDCD7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EE790D50-C632-46B9-A430-06FA2F2FDCD7}.Release|Any CPU.Build.0 = Release|Any CPU
- {B19C15A5-F5EA-4CA7-936B-1166ABEE35C4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {B19C15A5-F5EA-4CA7-936B-1166ABEE35C4}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {B19C15A5-F5EA-4CA7-936B-1166ABEE35C4}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {B19C15A5-F5EA-4CA7-936B-1166ABEE35C4}.Release|Any CPU.Build.0 = Release|Any CPU
- {E37324FF-6BAF-4243-BA80-7C024CF5F29D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {E37324FF-6BAF-4243-BA80-7C024CF5F29D}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {E37324FF-6BAF-4243-BA80-7C024CF5F29D}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {E37324FF-6BAF-4243-BA80-7C024CF5F29D}.Release|Any CPU.Build.0 = Release|Any CPU
- {354335AB-CEE9-4434-A641-78058F6EFE56}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {354335AB-CEE9-4434-A641-78058F6EFE56}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {354335AB-CEE9-4434-A641-78058F6EFE56}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {354335AB-CEE9-4434-A641-78058F6EFE56}.Release|Any CPU.Build.0 = Release|Any CPU
- {455B68D2-C5B6-4BF4-A685-964B07AFAAF8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {455B68D2-C5B6-4BF4-A685-964B07AFAAF8}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {455B68D2-C5B6-4BF4-A685-964B07AFAAF8}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {455B68D2-C5B6-4BF4-A685-964B07AFAAF8}.Release|Any CPU.Build.0 = Release|Any CPU
- {96771B3F-4D18-41A7-A75B-FF38E76AAC89}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {96771B3F-4D18-41A7-A75B-FF38E76AAC89}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {96771B3F-4D18-41A7-A75B-FF38E76AAC89}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {96771B3F-4D18-41A7-A75B-FF38E76AAC89}.Release|Any CPU.Build.0 = Release|Any CPU
- {75E342F6-5445-4E7E-9143-6D9AE62C2B1E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {75E342F6-5445-4E7E-9143-6D9AE62C2B1E}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {75E342F6-5445-4E7E-9143-6D9AE62C2B1E}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {75E342F6-5445-4E7E-9143-6D9AE62C2B1E}.Release|Any CPU.Build.0 = Release|Any CPU
- {FD80BB0F-0876-4F11-8D84-6657C8EF84CA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {FD80BB0F-0876-4F11-8D84-6657C8EF84CA}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {FD80BB0F-0876-4F11-8D84-6657C8EF84CA}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {FD80BB0F-0876-4F11-8D84-6657C8EF84CA}.Release|Any CPU.Build.0 = Release|Any CPU
- {9E403E93-3284-486F-9A5F-1E15FCE426A5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {9E403E93-3284-486F-9A5F-1E15FCE426A5}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {9E403E93-3284-486F-9A5F-1E15FCE426A5}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {9E403E93-3284-486F-9A5F-1E15FCE426A5}.Release|Any CPU.Build.0 = Release|Any CPU
- {B0243F99-2D3F-4CC6-AD71-E3F891B64724}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {B0243F99-2D3F-4CC6-AD71-E3F891B64724}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {B0243F99-2D3F-4CC6-AD71-E3F891B64724}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {B0243F99-2D3F-4CC6-AD71-E3F891B64724}.Release|Any CPU.Build.0 = Release|Any CPU
- {E081EE41-D95F-4AD2-BC0B-4B562C0A2A47}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {E081EE41-D95F-4AD2-BC0B-4B562C0A2A47}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {E081EE41-D95F-4AD2-BC0B-4B562C0A2A47}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {E081EE41-D95F-4AD2-BC0B-4B562C0A2A47}.Release|Any CPU.Build.0 = Release|Any CPU
- {BE982591-F4BB-42D9-ABD4-A5D44C65971E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {BE982591-F4BB-42D9-ABD4-A5D44C65971E}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {BE982591-F4BB-42D9-ABD4-A5D44C65971E}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {BE982591-F4BB-42D9-ABD4-A5D44C65971E}.Release|Any CPU.Build.0 = Release|Any CPU
- {0B083AE6-86CA-4E0B-AE02-59154D1FD005}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {0B083AE6-86CA-4E0B-AE02-59154D1FD005}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {0B083AE6-86CA-4E0B-AE02-59154D1FD005}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {0B083AE6-86CA-4E0B-AE02-59154D1FD005}.Release|Any CPU.Build.0 = Release|Any CPU
{6A7491D3-3C97-49BD-A71C-433AED657F30}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6A7491D3-3C97-49BD-A71C-433AED657F30}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6A7491D3-3C97-49BD-A71C-433AED657F30}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -183,63 +135,200 @@ Global
{1A953296-E869-4DE2-A693-FD5FCDE27057}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1A953296-E869-4DE2-A693-FD5FCDE27057}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1A953296-E869-4DE2-A693-FD5FCDE27057}.Release|Any CPU.Build.0 = Release|Any CPU
- {0A0A6135-EA24-4307-95C2-CE1B7E164A5E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {0A0A6135-EA24-4307-95C2-CE1B7E164A5E}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {0A0A6135-EA24-4307-95C2-CE1B7E164A5E}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {0A0A6135-EA24-4307-95C2-CE1B7E164A5E}.Release|Any CPU.Build.0 = Release|Any CPU
- {55DB4B6F-12E5-4A27-97F4-E97E135470FF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {55DB4B6F-12E5-4A27-97F4-E97E135470FF}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {55DB4B6F-12E5-4A27-97F4-E97E135470FF}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {55DB4B6F-12E5-4A27-97F4-E97E135470FF}.Release|Any CPU.Build.0 = Release|Any CPU
{D0C7B22E-B0B6-4D62-BF7D-79EE4AAF1981}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D0C7B22E-B0B6-4D62-BF7D-79EE4AAF1981}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D0C7B22E-B0B6-4D62-BF7D-79EE4AAF1981}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D0C7B22E-B0B6-4D62-BF7D-79EE4AAF1981}.Release|Any CPU.Build.0 = Release|Any CPU
- {896FA5EE-63A5-4EAC-9F09-346584BB4830}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {896FA5EE-63A5-4EAC-9F09-346584BB4830}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {896FA5EE-63A5-4EAC-9F09-346584BB4830}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {896FA5EE-63A5-4EAC-9F09-346584BB4830}.Release|Any CPU.Build.0 = Release|Any CPU
- {8C75AC94-C980-4FE1-9F79-6CED3C8665CE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {8C75AC94-C980-4FE1-9F79-6CED3C8665CE}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {8C75AC94-C980-4FE1-9F79-6CED3C8665CE}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {8C75AC94-C980-4FE1-9F79-6CED3C8665CE}.Release|Any CPU.Build.0 = Release|Any CPU
- {8D3E3E7D-452B-44F4-86CA-111003EA11ED}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {8D3E3E7D-452B-44F4-86CA-111003EA11ED}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {8D3E3E7D-452B-44F4-86CA-111003EA11ED}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {8D3E3E7D-452B-44F4-86CA-111003EA11ED}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3AC35C9A-3344-4BBB-B789-06CEE2CD093E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3AC35C9A-3344-4BBB-B789-06CEE2CD093E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3AC35C9A-3344-4BBB-B789-06CEE2CD093E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3AC35C9A-3344-4BBB-B789-06CEE2CD093E}.Release|Any CPU.Build.0 = Release|Any CPU
+ {8312A1B0-6FA8-47FE-9299-A76202AC920B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8312A1B0-6FA8-47FE-9299-A76202AC920B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8312A1B0-6FA8-47FE-9299-A76202AC920B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8312A1B0-6FA8-47FE-9299-A76202AC920B}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3ACAB196-DD18-4AD0-87BE-2F4CB062D2F7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3ACAB196-DD18-4AD0-87BE-2F4CB062D2F7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3ACAB196-DD18-4AD0-87BE-2F4CB062D2F7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3ACAB196-DD18-4AD0-87BE-2F4CB062D2F7}.Release|Any CPU.Build.0 = Release|Any CPU
+ {9A9BE05B-1662-4A80-AE44-7D06071A1473}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {9A9BE05B-1662-4A80-AE44-7D06071A1473}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {9A9BE05B-1662-4A80-AE44-7D06071A1473}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {9A9BE05B-1662-4A80-AE44-7D06071A1473}.Release|Any CPU.Build.0 = Release|Any CPU
+ {1758768B-81BC-434D-A4E6-4C821436373E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1758768B-81BC-434D-A4E6-4C821436373E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1758768B-81BC-434D-A4E6-4C821436373E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1758768B-81BC-434D-A4E6-4C821436373E}.Release|Any CPU.Build.0 = Release|Any CPU
+ {07137BC8-F3D8-425E-8A7F-1AAA383EA845}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {07137BC8-F3D8-425E-8A7F-1AAA383EA845}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {07137BC8-F3D8-425E-8A7F-1AAA383EA845}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {07137BC8-F3D8-425E-8A7F-1AAA383EA845}.Release|Any CPU.Build.0 = Release|Any CPU
+ {9D500098-648F-4EC3-9B89-9BAB7278EDF1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {9D500098-648F-4EC3-9B89-9BAB7278EDF1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {9D500098-648F-4EC3-9B89-9BAB7278EDF1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {9D500098-648F-4EC3-9B89-9BAB7278EDF1}.Release|Any CPU.Build.0 = Release|Any CPU
+ {98B8D556-A024-42FA-B288-F6DA9EB2B338}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {98B8D556-A024-42FA-B288-F6DA9EB2B338}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {98B8D556-A024-42FA-B288-F6DA9EB2B338}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {98B8D556-A024-42FA-B288-F6DA9EB2B338}.Release|Any CPU.Build.0 = Release|Any CPU
+ {6818EAB6-8D81-4FE9-8E5F-44D7EF18FF74}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {6818EAB6-8D81-4FE9-8E5F-44D7EF18FF74}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {6818EAB6-8D81-4FE9-8E5F-44D7EF18FF74}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {6818EAB6-8D81-4FE9-8E5F-44D7EF18FF74}.Release|Any CPU.Build.0 = Release|Any CPU
+ {73C9A9F6-4254-450B-9BD0-B665DE298D9D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {73C9A9F6-4254-450B-9BD0-B665DE298D9D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {73C9A9F6-4254-450B-9BD0-B665DE298D9D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {73C9A9F6-4254-450B-9BD0-B665DE298D9D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {EBE99AF6-6F53-49DE-9B6C-0BF03731CD91}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {EBE99AF6-6F53-49DE-9B6C-0BF03731CD91}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {EBE99AF6-6F53-49DE-9B6C-0BF03731CD91}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {EBE99AF6-6F53-49DE-9B6C-0BF03731CD91}.Release|Any CPU.Build.0 = Release|Any CPU
+ {2F1FA614-9257-405F-815A-97EE72E046F4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {2F1FA614-9257-405F-815A-97EE72E046F4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2F1FA614-9257-405F-815A-97EE72E046F4}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {2F1FA614-9257-405F-815A-97EE72E046F4}.Release|Any CPU.Build.0 = Release|Any CPU
+ {39A4DA7A-6857-4594-8AE1-406F1F271B5C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {39A4DA7A-6857-4594-8AE1-406F1F271B5C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {39A4DA7A-6857-4594-8AE1-406F1F271B5C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {39A4DA7A-6857-4594-8AE1-406F1F271B5C}.Release|Any CPU.Build.0 = Release|Any CPU
+ {356D6B62-1EDE-43F9-B78E-E160F4EC02E7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {356D6B62-1EDE-43F9-B78E-E160F4EC02E7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {356D6B62-1EDE-43F9-B78E-E160F4EC02E7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {356D6B62-1EDE-43F9-B78E-E160F4EC02E7}.Release|Any CPU.Build.0 = Release|Any CPU
+ {1F83C880-645D-477B-A877-157F49660B0E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1F83C880-645D-477B-A877-157F49660B0E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1F83C880-645D-477B-A877-157F49660B0E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1F83C880-645D-477B-A877-157F49660B0E}.Release|Any CPU.Build.0 = Release|Any CPU
+ {903FDE03-F9A6-4969-9028-842A53580667}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {903FDE03-F9A6-4969-9028-842A53580667}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {903FDE03-F9A6-4969-9028-842A53580667}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {903FDE03-F9A6-4969-9028-842A53580667}.Release|Any CPU.Build.0 = Release|Any CPU
+ {A7C2BC93-DFB9-45B3-8CD9-EBA940BC23D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {A7C2BC93-DFB9-45B3-8CD9-EBA940BC23D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {A7C2BC93-DFB9-45B3-8CD9-EBA940BC23D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {A7C2BC93-DFB9-45B3-8CD9-EBA940BC23D1}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3012F7C4-0181-40B8-9391-04EF794DE9A3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3012F7C4-0181-40B8-9391-04EF794DE9A3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3012F7C4-0181-40B8-9391-04EF794DE9A3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3012F7C4-0181-40B8-9391-04EF794DE9A3}.Release|Any CPU.Build.0 = Release|Any CPU
+ {EA5C411C-AC81-4C51-BB85-CBE8F0E7BE1E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {EA5C411C-AC81-4C51-BB85-CBE8F0E7BE1E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {EA5C411C-AC81-4C51-BB85-CBE8F0E7BE1E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {EA5C411C-AC81-4C51-BB85-CBE8F0E7BE1E}.Release|Any CPU.Build.0 = Release|Any CPU
+ {F3F532CF-BABD-4517-8C46-61869F814C58}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {F3F532CF-BABD-4517-8C46-61869F814C58}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {F3F532CF-BABD-4517-8C46-61869F814C58}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {F3F532CF-BABD-4517-8C46-61869F814C58}.Release|Any CPU.Build.0 = Release|Any CPU
+ {9D9EAC92-0CDC-4648-BC14-E602BCDF71A3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {9D9EAC92-0CDC-4648-BC14-E602BCDF71A3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {9D9EAC92-0CDC-4648-BC14-E602BCDF71A3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {9D9EAC92-0CDC-4648-BC14-E602BCDF71A3}.Release|Any CPU.Build.0 = Release|Any CPU
+ {126E8FB0-350D-4EA8-BDCD-708055112358}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {126E8FB0-350D-4EA8-BDCD-708055112358}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {126E8FB0-350D-4EA8-BDCD-708055112358}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {126E8FB0-350D-4EA8-BDCD-708055112358}.Release|Any CPU.Build.0 = Release|Any CPU
+ {0CD3CCCE-45CD-4CB0-820E-D6964A410FB9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {0CD3CCCE-45CD-4CB0-820E-D6964A410FB9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {0CD3CCCE-45CD-4CB0-820E-D6964A410FB9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {0CD3CCCE-45CD-4CB0-820E-D6964A410FB9}.Release|Any CPU.Build.0 = Release|Any CPU
+ {0CD2E602-3B28-42DB-A71B-34C50E9663CE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {0CD2E602-3B28-42DB-A71B-34C50E9663CE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {0CD2E602-3B28-42DB-A71B-34C50E9663CE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {0CD2E602-3B28-42DB-A71B-34C50E9663CE}.Release|Any CPU.Build.0 = Release|Any CPU
+ {CE635283-EE95-4F8E-B80A-2DF0E8E530AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {CE635283-EE95-4F8E-B80A-2DF0E8E530AE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {CE635283-EE95-4F8E-B80A-2DF0E8E530AE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {CE635283-EE95-4F8E-B80A-2DF0E8E530AE}.Release|Any CPU.Build.0 = Release|Any CPU
+ {64D82C2D-4F93-4B4F-8FF5-5086C242F9D2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {64D82C2D-4F93-4B4F-8FF5-5086C242F9D2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {64D82C2D-4F93-4B4F-8FF5-5086C242F9D2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {64D82C2D-4F93-4B4F-8FF5-5086C242F9D2}.Release|Any CPU.Build.0 = Release|Any CPU
+ {21C71457-3910-4BC1-937F-57B0172004CA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {21C71457-3910-4BC1-937F-57B0172004CA}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {21C71457-3910-4BC1-937F-57B0172004CA}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {21C71457-3910-4BC1-937F-57B0172004CA}.Release|Any CPU.Build.0 = Release|Any CPU
+ {35C0D65F-643E-42FA-9177-2BFFDE9AFA14}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {35C0D65F-643E-42FA-9177-2BFFDE9AFA14}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {35C0D65F-643E-42FA-9177-2BFFDE9AFA14}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {35C0D65F-643E-42FA-9177-2BFFDE9AFA14}.Release|Any CPU.Build.0 = Release|Any CPU
+ {56563C41-59EA-4B7F-94DC-ADD5923EC087}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {56563C41-59EA-4B7F-94DC-ADD5923EC087}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {56563C41-59EA-4B7F-94DC-ADD5923EC087}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {56563C41-59EA-4B7F-94DC-ADD5923EC087}.Release|Any CPU.Build.0 = Release|Any CPU
+ {B34D6810-1A95-462F-A8DD-76E2B7FC5CEE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {B34D6810-1A95-462F-A8DD-76E2B7FC5CEE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {B34D6810-1A95-462F-A8DD-76E2B7FC5CEE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {B34D6810-1A95-462F-A8DD-76E2B7FC5CEE}.Release|Any CPU.Build.0 = Release|Any CPU
+ {F7CF971E-4FD8-4E3C-9BA1-0A0C84E2E72A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {F7CF971E-4FD8-4E3C-9BA1-0A0C84E2E72A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {F7CF971E-4FD8-4E3C-9BA1-0A0C84E2E72A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {F7CF971E-4FD8-4E3C-9BA1-0A0C84E2E72A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {F98DC946-BB11-444E-BD87-13CB07E5E107}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {F98DC946-BB11-444E-BD87-13CB07E5E107}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {F98DC946-BB11-444E-BD87-13CB07E5E107}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {F98DC946-BB11-444E-BD87-13CB07E5E107}.Release|Any CPU.Build.0 = Release|Any CPU
+ {6089F7BD-6A47-4C8F-A55F-5B813BECA763}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {6089F7BD-6A47-4C8F-A55F-5B813BECA763}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {6089F7BD-6A47-4C8F-A55F-5B813BECA763}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {6089F7BD-6A47-4C8F-A55F-5B813BECA763}.Release|Any CPU.Build.0 = Release|Any CPU
+ {1C1556CC-A91E-4B69-A5E8-644052B1CB7B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1C1556CC-A91E-4B69-A5E8-644052B1CB7B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1C1556CC-A91E-4B69-A5E8-644052B1CB7B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1C1556CC-A91E-4B69-A5E8-644052B1CB7B}.Release|Any CPU.Build.0 = Release|Any CPU
+ {44D6120C-A975-4551-9ED5-49A99047FEA8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {44D6120C-A975-4551-9ED5-49A99047FEA8}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {44D6120C-A975-4551-9ED5-49A99047FEA8}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {44D6120C-A975-4551-9ED5-49A99047FEA8}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{C4AEAB04-F341-4539-B6C0-52368FB4BF9E} = {C4BC9889-B49F-41B6-806B-F84941B2549B}
- {AAD719D5-5E31-4ED1-A60F-6EB92EFA66D9} = {6A35B453-52EC-48AF-89CA-D4A69800F131}
- {42E76F87-92B6-45AB-BF07-6B811C0F2CAC} = {DA69F624-5398-4884-87E4-B816698CDE65}
- {59319B72-38BE-4041-8E5C-FF6938874CE8} = {DA69F624-5398-4884-87E4-B816698CDE65}
{8D789F94-CB74-45FD-ACE7-92AF6E55042E} = {C4BC9889-B49F-41B6-806B-F84941B2549B}
- {1CE2B3BE-056C-41E3-A5F5-6A1EF1D288BA} = {6A35B453-52EC-48AF-89CA-D4A69800F131}
{BA99C2A1-48F9-4FA5-B95A-9687A73B7CC9} = {C4BC9889-B49F-41B6-806B-F84941B2549B}
{EE790D50-C632-46B9-A430-06FA2F2FDCD7} = {C4BC9889-B49F-41B6-806B-F84941B2549B}
- {B19C15A5-F5EA-4CA7-936B-1166ABEE35C4} = {6A35B453-52EC-48AF-89CA-D4A69800F131}
- {E37324FF-6BAF-4243-BA80-7C024CF5F29D} = {DA69F624-5398-4884-87E4-B816698CDE65}
- {354335AB-CEE9-4434-A641-78058F6EFE56} = {DA69F624-5398-4884-87E4-B816698CDE65}
- {455B68D2-C5B6-4BF4-A685-964B07AFAAF8} = {6A35B453-52EC-48AF-89CA-D4A69800F131}
- {96771B3F-4D18-41A7-A75B-FF38E76AAC89} = {8A4582C8-DC59-4B61-BCE7-119FBAA99EFB}
- {75E342F6-5445-4E7E-9143-6D9AE62C2B1E} = {6A35B453-52EC-48AF-89CA-D4A69800F131}
- {FD80BB0F-0876-4F11-8D84-6657C8EF84CA} = {DA69F624-5398-4884-87E4-B816698CDE65}
- {9E403E93-3284-486F-9A5F-1E15FCE426A5} = {DA69F624-5398-4884-87E4-B816698CDE65}
- {B0243F99-2D3F-4CC6-AD71-E3F891B64724} = {DA69F624-5398-4884-87E4-B816698CDE65}
- {E081EE41-D95F-4AD2-BC0B-4B562C0A2A47} = {DA69F624-5398-4884-87E4-B816698CDE65}
- {BE982591-F4BB-42D9-ABD4-A5D44C65971E} = {DA69F624-5398-4884-87E4-B816698CDE65}
- {0B083AE6-86CA-4E0B-AE02-59154D1FD005} = {6A35B453-52EC-48AF-89CA-D4A69800F131}
{6A7491D3-3C97-49BD-A71C-433AED657F30} = {C4BC9889-B49F-41B6-806B-F84941B2549B}
{1A953296-E869-4DE2-A693-FD5FCDE27057} = {C4BC9889-B49F-41B6-806B-F84941B2549B}
- {0A0A6135-EA24-4307-95C2-CE1B7E164A5E} = {6A35B453-52EC-48AF-89CA-D4A69800F131}
- {55DB4B6F-12E5-4A27-97F4-E97E135470FF} = {DA69F624-5398-4884-87E4-B816698CDE65}
- {D0C7B22E-B0B6-4D62-BF7D-79EE4AAF1981} = {3A76C5A2-79ED-49BC-8BDC-6A3A766FFA1B}
- {896FA5EE-63A5-4EAC-9F09-346584BB4830} = {DA69F624-5398-4884-87E4-B816698CDE65}
- {8C75AC94-C980-4FE1-9F79-6CED3C8665CE} = {43F352F3-4E2B-4ED7-901B-36E6671251F5}
- {8D3E3E7D-452B-44F4-86CA-111003EA11ED} = {43F352F3-4E2B-4ED7-901B-36E6671251F5}
+ {D0C7B22E-B0B6-4D62-BF7D-79EE4AAF1981} = {F2AB9C8F-CC30-495D-ACF4-9E4715F46C90}
+ {3AC35C9A-3344-4BBB-B789-06CEE2CD093E} = {EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}
+ {8312A1B0-6FA8-47FE-9299-A76202AC920B} = {EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}
+ {3ACAB196-DD18-4AD0-87BE-2F4CB062D2F7} = {EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}
+ {9A9BE05B-1662-4A80-AE44-7D06071A1473} = {EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}
+ {1758768B-81BC-434D-A4E6-4C821436373E} = {EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}
+ {07137BC8-F3D8-425E-8A7F-1AAA383EA845} = {EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}
+ {9D500098-648F-4EC3-9B89-9BAB7278EDF1} = {EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}
+ {98B8D556-A024-42FA-B288-F6DA9EB2B338} = {EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}
+ {6818EAB6-8D81-4FE9-8E5F-44D7EF18FF74} = {EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}
+ {73C9A9F6-4254-450B-9BD0-B665DE298D9D} = {EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}
+ {EBE99AF6-6F53-49DE-9B6C-0BF03731CD91} = {EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}
+ {2F1FA614-9257-405F-815A-97EE72E046F4} = {EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}
+ {39A4DA7A-6857-4594-8AE1-406F1F271B5C} = {EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}
+ {356D6B62-1EDE-43F9-B78E-E160F4EC02E7} = {EDE8E45E-A5D0-4F0E-B72C-7CC14146C60A}
+ {1F83C880-645D-477B-A877-157F49660B0E} = {3A76C5A2-79ED-49BC-8BDC-6A3A766FFA1B}
+ {903FDE03-F9A6-4969-9028-842A53580667} = {3A76C5A2-79ED-49BC-8BDC-6A3A766FFA1B}
+ {A7C2BC93-DFB9-45B3-8CD9-EBA940BC23D1} = {3A76C5A2-79ED-49BC-8BDC-6A3A766FFA1B}
+ {3012F7C4-0181-40B8-9391-04EF794DE9A3} = {3A76C5A2-79ED-49BC-8BDC-6A3A766FFA1B}
+ {EA5C411C-AC81-4C51-BB85-CBE8F0E7BE1E} = {3A76C5A2-79ED-49BC-8BDC-6A3A766FFA1B}
+ {F3F532CF-BABD-4517-8C46-61869F814C58} = {9FCD621E-E710-4991-B45C-1BABC977BEEC}
+ {9D9EAC92-0CDC-4648-BC14-E602BCDF71A3} = {9FCD621E-E710-4991-B45C-1BABC977BEEC}
+ {126E8FB0-350D-4EA8-BDCD-708055112358} = {9FCD621E-E710-4991-B45C-1BABC977BEEC}
+ {0CD3CCCE-45CD-4CB0-820E-D6964A410FB9} = {9FCD621E-E710-4991-B45C-1BABC977BEEC}
+ {0CD2E602-3B28-42DB-A71B-34C50E9663CE} = {9FCD621E-E710-4991-B45C-1BABC977BEEC}
+ {CE635283-EE95-4F8E-B80A-2DF0E8E530AE} = {9FCD621E-E710-4991-B45C-1BABC977BEEC}
+ {64D82C2D-4F93-4B4F-8FF5-5086C242F9D2} = {9FCD621E-E710-4991-B45C-1BABC977BEEC}
+ {6D9DF750-BA0D-4ED7-8137-732E52894B1C} = {9FCD621E-E710-4991-B45C-1BABC977BEEC}
+ {21C71457-3910-4BC1-937F-57B0172004CA} = {6D9DF750-BA0D-4ED7-8137-732E52894B1C}
+ {1AF35754-036E-4D19-BE71-6144CEC0E1D5} = {AC3CD0BA-DE19-4333-9A42-3CFCC9FF0332}
+ {35C0D65F-643E-42FA-9177-2BFFDE9AFA14} = {1AF35754-036E-4D19-BE71-6144CEC0E1D5}
+ {56563C41-59EA-4B7F-94DC-ADD5923EC087} = {1AF35754-036E-4D19-BE71-6144CEC0E1D5}
+ {B34D6810-1A95-462F-A8DD-76E2B7FC5CEE} = {AC3CD0BA-DE19-4333-9A42-3CFCC9FF0332}
+ {F7CF971E-4FD8-4E3C-9BA1-0A0C84E2E72A} = {37DDE730-33D7-4400-9F12-84F0F2C0F319}
+ {F98DC946-BB11-444E-BD87-13CB07E5E107} = {37DDE730-33D7-4400-9F12-84F0F2C0F319}
+ {6089F7BD-6A47-4C8F-A55F-5B813BECA763} = {37DDE730-33D7-4400-9F12-84F0F2C0F319}
+ {1C1556CC-A91E-4B69-A5E8-644052B1CB7B} = {37DDE730-33D7-4400-9F12-84F0F2C0F319}
+ {44D6120C-A975-4551-9ED5-49A99047FEA8} = {37DDE730-33D7-4400-9F12-84F0F2C0F319}
+ {F2AB9C8F-CC30-495D-ACF4-9E4715F46C90} = {3A76C5A2-79ED-49BC-8BDC-6A3A766FFA1B}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {7945A4E4-ACDB-4F6E-95CA-6AC6E7C2CD59}
diff --git a/src/SignalR/benchmarkapps/Crankier/Crankier.csproj b/src/SignalR/benchmarkapps/Crankier/Crankier.csproj
deleted file mode 100644
index b4f4eeb920b9..000000000000
--- a/src/SignalR/benchmarkapps/Crankier/Crankier.csproj
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
- Exe
- netcoreapp2.1
- Microsoft.AspNetCore.SignalR.CranksRevenge
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj
deleted file mode 100644
index 545d54f9b352..000000000000
--- a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
- Exe
- netcoreapp2.1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/build.cmd b/src/SignalR/build.cmd
new file mode 100644
index 000000000000..f22573197fe1
--- /dev/null
+++ b/src/SignalR/build.cmd
@@ -0,0 +1,3 @@
+@ECHO OFF
+SET RepoRoot=%~dp0..\..
+%RepoRoot%\build.cmd -LockFile %RepoRoot%\korebuild-lock.txt -projects %~dp0**\*.*proj %*
diff --git a/src/SignalR/build/Key.snk b/src/SignalR/build/Key.snk
deleted file mode 100644
index e10e4889c125..000000000000
Binary files a/src/SignalR/build/Key.snk and /dev/null differ
diff --git a/src/SignalR/build/buildpipeline/linux.groovy b/src/SignalR/build/buildpipeline/linux.groovy
deleted file mode 100644
index 791d923d0c2b..000000000000
--- a/src/SignalR/build/buildpipeline/linux.groovy
+++ /dev/null
@@ -1 +0,0 @@
-@Library('dotnet-ci') _
diff --git a/src/SignalR/build/buildpipeline/osx.groovy b/src/SignalR/build/buildpipeline/osx.groovy
deleted file mode 100644
index 4b0a9ec8f129..000000000000
--- a/src/SignalR/build/buildpipeline/osx.groovy
+++ /dev/null
@@ -1,2 +0,0 @@
-@Library('dotnet-ci') _
-
diff --git a/src/SignalR/build/buildpipeline/pipeline.groovy b/src/SignalR/build/buildpipeline/pipeline.groovy
deleted file mode 100644
index e915cadae124..000000000000
--- a/src/SignalR/build/buildpipeline/pipeline.groovy
+++ /dev/null
@@ -1,18 +0,0 @@
-import org.dotnet.ci.pipelines.Pipeline
-
-def windowsPipeline = Pipeline.createPipeline(this, 'build/buildpipeline/windows.groovy')
-def linuxPipeline = Pipeline.createPipeline(this, 'build/buildpipeline/linux.groovy')
-def osxPipeline = Pipeline.createPipeline(this, 'build/buildpipeline/osx.groovy')
-String configuration = 'Release'
-def parameters = [
- 'Configuration': configuration
-]
-
-windowsPipeline.triggerPipelineOnEveryGithubPR("Windows ${configuration} x64 Build", parameters)
-windowsPipeline.triggerPipelineOnGithubPush(parameters)
-
-linuxPipeline.triggerPipelineOnEveryGithubPR("Ubuntu 16.04 ${configuration} Build", parameters)
-linuxPipeline.triggerPipelineOnGithubPush(parameters)
-
-osxPipeline.triggerPipelineOnEveryGithubPR("OSX 10.12 ${configuration} Build", parameters)
-osxPipeline.triggerPipelineOnGithubPush(parameters)
diff --git a/src/SignalR/build/buildpipeline/windows.groovy b/src/SignalR/build/buildpipeline/windows.groovy
deleted file mode 100644
index 4b0a9ec8f129..000000000000
--- a/src/SignalR/build/buildpipeline/windows.groovy
+++ /dev/null
@@ -1,2 +0,0 @@
-@Library('dotnet-ci') _
-
diff --git a/src/SignalR/build/dependencies.props b/src/SignalR/build/dependencies.props
deleted file mode 100644
index c3d36120d3d2..000000000000
--- a/src/SignalR/build/dependencies.props
+++ /dev/null
@@ -1,83 +0,0 @@
-
-
- $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
-
-
-
-
- 0.10.13
- 3.1.0
- 2.1.3-rtm-15802
- 1.7.3.4
- 4.5.0
- 2.0.0
- 2.1.2
- 15.6.1
- 4.7.49
- 2.0.3
- 11.0.2
- 1.2.4
- 4.5.0
- 4.5.0
- 4.5.1
- 4.5.0
- 3.1.1
- 4.3.0
- 4.5.1
- 4.5.0
- 4.5.1
- 2.3.1
- 2.4.0-beta.1.build3945
-
-
-
-
-
-
-
- 2.1.2
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.2
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.2
- 2.1.1
- 2.1.1
- 2.1.1
- 0.5.1
- 2.1.2
- 2.1.1
- 2.1.1
- 2.1.0
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
- 2.1.1
-
-
diff --git a/src/SignalR/build/repo.props b/src/SignalR/build/repo.props
deleted file mode 100644
index f00e5ccca051..000000000000
--- a/src/SignalR/build/repo.props
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/build/repo.targets b/src/SignalR/build/repo.targets
deleted file mode 100644
index 5eeb47bac2fc..000000000000
--- a/src/SignalR/build/repo.targets
+++ /dev/null
@@ -1,86 +0,0 @@
-
-
-
- aspnet-signalr
- @aspnet/signalr
-
-
- aspnet-signalr-protocol-msgpack
- @aspnet/signalr-protocol-msgpack
-
-
-
-
- $(RestoreDependsOn);RestoreNpm
-
-
-
-
-
-
-
-
-
-
-
- $(TestDependsOn);RunTSClientNodeTests;RunBrowserTests
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $(GetArtifactInfoDependsOn);GetNpmArtifactInfo
- $(PrepareDependsOn);GetNpmArtifactInfo
-
-
-
-
-
- $([System.IO.Path]::Combine(%(NPMPackage.FullPath), 'package.json'))
- $([System.IO.Path]::Combine(%(NPMPackage.FullPath), '%(NPMPackage.TarName)-$(PackageVersion).tgz'))
- $([System.IO.Path]::Combine($(BuildDir), '%(NPMPackage.TarName)-$(PackageVersion).tgz'))
-
-
-
- NpmPackage
- %(NPMPackage.PackageId)
- $(PackageVersion)
- ship
-
-
-
-
-
-
-
-
-
- Restore;BuildNPMPackages;$(CompileDependsOn)
-
-
-
-
-
-
-
- Compile;PackNPMPackages;$(PackageDependsOn)
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/build/sources.props b/src/SignalR/build/sources.props
deleted file mode 100644
index 9215df9751b4..000000000000
--- a/src/SignalR/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/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnection.Log.cs b/src/SignalR/clients/csharp/Client.Core/src/HubConnection.Log.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnection.Log.cs
rename to src/SignalR/clients/csharp/Client.Core/src/HubConnection.Log.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnection.cs b/src/SignalR/clients/csharp/Client.Core/src/HubConnection.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnection.cs
rename to src/SignalR/clients/csharp/Client.Core/src/HubConnection.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionBuilder.cs b/src/SignalR/clients/csharp/Client.Core/src/HubConnectionBuilder.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionBuilder.cs
rename to src/SignalR/clients/csharp/Client.Core/src/HubConnectionBuilder.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionBuilderExtensions.cs b/src/SignalR/clients/csharp/Client.Core/src/HubConnectionBuilderExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionBuilderExtensions.cs
rename to src/SignalR/clients/csharp/Client.Core/src/HubConnectionBuilderExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.InvokeAsync.cs b/src/SignalR/clients/csharp/Client.Core/src/HubConnectionExtensions.InvokeAsync.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.InvokeAsync.cs
rename to src/SignalR/clients/csharp/Client.Core/src/HubConnectionExtensions.InvokeAsync.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.InvokeAsyncGeneric.cs b/src/SignalR/clients/csharp/Client.Core/src/HubConnectionExtensions.InvokeAsyncGeneric.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.InvokeAsyncGeneric.cs
rename to src/SignalR/clients/csharp/Client.Core/src/HubConnectionExtensions.InvokeAsyncGeneric.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.SendAsync.cs b/src/SignalR/clients/csharp/Client.Core/src/HubConnectionExtensions.SendAsync.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.SendAsync.cs
rename to src/SignalR/clients/csharp/Client.Core/src/HubConnectionExtensions.SendAsync.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.StreamAsChannelAsync.cs b/src/SignalR/clients/csharp/Client.Core/src/HubConnectionExtensions.StreamAsChannelAsync.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.StreamAsChannelAsync.cs
rename to src/SignalR/clients/csharp/Client.Core/src/HubConnectionExtensions.StreamAsChannelAsync.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.cs b/src/SignalR/clients/csharp/Client.Core/src/HubConnectionExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.cs
rename to src/SignalR/clients/csharp/Client.Core/src/HubConnectionExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/IConnectionFactory.cs b/src/SignalR/clients/csharp/Client.Core/src/IConnectionFactory.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/IConnectionFactory.cs
rename to src/SignalR/clients/csharp/Client.Core/src/IConnectionFactory.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/IHubConnectionBuilder.cs b/src/SignalR/clients/csharp/Client.Core/src/IHubConnectionBuilder.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/IHubConnectionBuilder.cs
rename to src/SignalR/clients/csharp/Client.Core/src/IHubConnectionBuilder.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/Internal/InvocationRequest.cs b/src/SignalR/clients/csharp/Client.Core/src/Internal/InvocationRequest.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/Internal/InvocationRequest.cs
rename to src/SignalR/clients/csharp/Client.Core/src/Internal/InvocationRequest.cs
diff --git a/src/SignalR/clients/csharp/Client.Core/src/Microsoft.AspNetCore.SignalR.Client.Core.csproj b/src/SignalR/clients/csharp/Client.Core/src/Microsoft.AspNetCore.SignalR.Client.Core.csproj
new file mode 100644
index 000000000000..fa2a789f4e5d
--- /dev/null
+++ b/src/SignalR/clients/csharp/Client.Core/src/Microsoft.AspNetCore.SignalR.Client.Core.csproj
@@ -0,0 +1,23 @@
+
+
+
+ Client for ASP.NET Core SignalR
+ netstandard2.0
+ Microsoft.AspNetCore.SignalR.Client
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/Properties/AssemblyInfo.cs b/src/SignalR/clients/csharp/Client.Core/src/Properties/AssemblyInfo.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/Properties/AssemblyInfo.cs
rename to src/SignalR/clients/csharp/Client.Core/src/Properties/AssemblyInfo.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/HttpConnectionFactory.cs b/src/SignalR/clients/csharp/Client/src/HttpConnectionFactory.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/HttpConnectionFactory.cs
rename to src/SignalR/clients/csharp/Client/src/HttpConnectionFactory.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/HubConnectionBuilderHttpExtensions.cs b/src/SignalR/clients/csharp/Client/src/HubConnectionBuilderHttpExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/HubConnectionBuilderHttpExtensions.cs
rename to src/SignalR/clients/csharp/Client/src/HubConnectionBuilderHttpExtensions.cs
diff --git a/src/SignalR/clients/csharp/Client/src/Microsoft.AspNetCore.SignalR.Client.csproj b/src/SignalR/clients/csharp/Client/src/Microsoft.AspNetCore.SignalR.Client.csproj
new file mode 100644
index 000000000000..7b3428fa49b9
--- /dev/null
+++ b/src/SignalR/clients/csharp/Client/src/Microsoft.AspNetCore.SignalR.Client.csproj
@@ -0,0 +1,13 @@
+
+
+
+ Client for ASP.NET Core SignalR
+ netstandard2.0
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HeaderUserIdProvider.cs b/src/SignalR/clients/csharp/Client/test/FunctionalTests/HeaderUserIdProvider.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HeaderUserIdProvider.cs
rename to src/SignalR/clients/csharp/Client/test/FunctionalTests/HeaderUserIdProvider.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HubConnectionTests.cs b/src/SignalR/clients/csharp/Client/test/FunctionalTests/HubConnectionTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HubConnectionTests.cs
rename to src/SignalR/clients/csharp/Client/test/FunctionalTests/HubConnectionTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Hubs.cs b/src/SignalR/clients/csharp/Client/test/FunctionalTests/Hubs.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Hubs.cs
rename to src/SignalR/clients/csharp/Client/test/FunctionalTests/Hubs.cs
diff --git a/src/SignalR/clients/csharp/Client/test/FunctionalTests/Microsoft.AspNetCore.SignalR.Client.FunctionalTests.csproj b/src/SignalR/clients/csharp/Client/test/FunctionalTests/Microsoft.AspNetCore.SignalR.Client.FunctionalTests.csproj
new file mode 100644
index 000000000000..6e1bc8c46be1
--- /dev/null
+++ b/src/SignalR/clients/csharp/Client/test/FunctionalTests/Microsoft.AspNetCore.SignalR.Client.FunctionalTests.csproj
@@ -0,0 +1,25 @@
+
+
+
+ netcoreapp2.1;net461
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Startup.cs b/src/SignalR/clients/csharp/Client/test/FunctionalTests/Startup.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Startup.cs
rename to src/SignalR/clients/csharp/Client/test/FunctionalTests/Startup.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionFactoryTests.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/HttpConnectionFactoryTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionFactoryTests.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/HttpConnectionFactoryTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.ConnectionLifecycle.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/HttpConnectionTests.ConnectionLifecycle.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.ConnectionLifecycle.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/HttpConnectionTests.ConnectionLifecycle.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Helpers.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/HttpConnectionTests.Helpers.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Helpers.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/HttpConnectionTests.Helpers.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Negotiate.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/HttpConnectionTests.Negotiate.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Negotiate.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/HttpConnectionTests.Negotiate.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Transport.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/HttpConnectionTests.Transport.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Transport.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/HttpConnectionTests.Transport.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/HttpConnectionTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/HttpConnectionTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionBuilderExtensionsTests.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/HubConnectionBuilderExtensionsTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionBuilderExtensionsTests.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/HubConnectionBuilderExtensionsTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionBuilderTests.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/HubConnectionBuilderTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionBuilderTests.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/HubConnectionBuilderTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.ConnectionLifecycle.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/HubConnectionTests.ConnectionLifecycle.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.ConnectionLifecycle.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/HubConnectionTests.ConnectionLifecycle.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Extensions.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/HubConnectionTests.Extensions.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Extensions.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/HubConnectionTests.Extensions.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Helpers.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/HubConnectionTests.Helpers.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Helpers.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/HubConnectionTests.Helpers.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Protocol.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/HubConnectionTests.Protocol.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Protocol.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/HubConnectionTests.Protocol.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/HubConnectionTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/HubConnectionTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/LongPollingTransportTests.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/LongPollingTransportTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/LongPollingTransportTests.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/LongPollingTransportTests.cs
diff --git a/src/SignalR/clients/csharp/Client/test/UnitTests/Microsoft.AspNetCore.SignalR.Client.Tests.csproj b/src/SignalR/clients/csharp/Client/test/UnitTests/Microsoft.AspNetCore.SignalR.Client.Tests.csproj
new file mode 100644
index 000000000000..4dccde46e7b8
--- /dev/null
+++ b/src/SignalR/clients/csharp/Client/test/UnitTests/Microsoft.AspNetCore.SignalR.Client.Tests.csproj
@@ -0,0 +1,22 @@
+
+
+
+ netcoreapp2.1;net461
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/ResponseUtils.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/ResponseUtils.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/ResponseUtils.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/ResponseUtils.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/ServerSentEventsParserTests.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/ServerSentEventsParserTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/ServerSentEventsParserTests.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/ServerSentEventsParserTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/ServerSentEventsTransportTests.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/ServerSentEventsTransportTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/ServerSentEventsTransportTests.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/ServerSentEventsTransportTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestConnection.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/TestConnection.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestConnection.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/TestConnection.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestHttpMessageHandler.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/TestHttpMessageHandler.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestHttpMessageHandler.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/TestHttpMessageHandler.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestTransport.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/TestTransport.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestTransport.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/TestTransport.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestTransportFactory.cs b/src/SignalR/clients/csharp/Client/test/UnitTests/TestTransportFactory.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestTransportFactory.cs
rename to src/SignalR/clients/csharp/Client/test/UnitTests/TestTransportFactory.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.Log.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/HttpConnection.Log.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.Log.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/HttpConnection.Log.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/HttpConnection.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/HttpConnection.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnectionOptions.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/HttpConnectionOptions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnectionOptions.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/HttpConnectionOptions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/AccessTokenHttpMessageHandler.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/AccessTokenHttpMessageHandler.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/AccessTokenHttpMessageHandler.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/AccessTokenHttpMessageHandler.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ClientPipeOptions.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/ClientPipeOptions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ClientPipeOptions.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/ClientPipeOptions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ConnectionLogScope.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/ConnectionLogScope.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ConnectionLogScope.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/ConnectionLogScope.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/Constants.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/Constants.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/Constants.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/Constants.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/DefaultTransportFactory.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/DefaultTransportFactory.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/DefaultTransportFactory.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/DefaultTransportFactory.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ITransport.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/ITransport.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ITransport.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/ITransport.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ITransportFactory.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/ITransportFactory.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ITransportFactory.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/ITransportFactory.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LoggingHttpMessageHandler.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/LoggingHttpMessageHandler.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LoggingHttpMessageHandler.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/LoggingHttpMessageHandler.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LongPollingTransport.Log.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/LongPollingTransport.Log.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LongPollingTransport.Log.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/LongPollingTransport.Log.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LongPollingTransport.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/LongPollingTransport.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LongPollingTransport.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/LongPollingTransport.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/PipeReaderFactory.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/PipeReaderFactory.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/PipeReaderFactory.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/PipeReaderFactory.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/SendUtils.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/SendUtils.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/SendUtils.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/SendUtils.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsMessageParser.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/ServerSentEventsMessageParser.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsMessageParser.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/ServerSentEventsMessageParser.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsTransport.Log.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/ServerSentEventsTransport.Log.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsTransport.Log.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/ServerSentEventsTransport.Log.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsTransport.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/ServerSentEventsTransport.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsTransport.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/ServerSentEventsTransport.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/TaskExtensions.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/TaskExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/TaskExtensions.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/TaskExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/Utils.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/Utils.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/Utils.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/Utils.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.Log.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/WebSocketsTransport.Log.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.Log.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/WebSocketsTransport.Log.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/WebSocketsTransport.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Internal/WebSocketsTransport.cs
diff --git a/src/SignalR/clients/csharp/Http.Connections.Client/src/Microsoft.AspNetCore.Http.Connections.Client.csproj b/src/SignalR/clients/csharp/Http.Connections.Client/src/Microsoft.AspNetCore.Http.Connections.Client.csproj
new file mode 100644
index 000000000000..bf0b84751d5f
--- /dev/null
+++ b/src/SignalR/clients/csharp/Http.Connections.Client/src/Microsoft.AspNetCore.Http.Connections.Client.csproj
@@ -0,0 +1,21 @@
+
+
+
+ Client for ASP.NET Core Connection Handlers
+ netstandard2.0;netcoreapp2.1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Properties/AssemblyInfo.cs b/src/SignalR/clients/csharp/Http.Connections.Client/src/Properties/AssemblyInfo.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Properties/AssemblyInfo.cs
rename to src/SignalR/clients/csharp/Http.Connections.Client/src/Properties/AssemblyInfo.cs
diff --git a/src/SignalR/clients/ts/FunctionalTests/FunctionalTests.csproj b/src/SignalR/clients/ts/FunctionalTests/FunctionalTests.csproj
index d9c7edd8f958..7d3c2607b089 100644
--- a/src/SignalR/clients/ts/FunctionalTests/FunctionalTests.csproj
+++ b/src/SignalR/clients/ts/FunctionalTests/FunctionalTests.csproj
@@ -3,6 +3,10 @@
netcoreapp2.1
True
+
+
+ true
+ false
@@ -19,19 +23,16 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/clients/ts/FunctionalTests/SignalR.Npm.FunctionalTests.npmproj b/src/SignalR/clients/ts/FunctionalTests/SignalR.Npm.FunctionalTests.npmproj
new file mode 100644
index 000000000000..bbdb8b23d809
--- /dev/null
+++ b/src/SignalR/clients/ts/FunctionalTests/SignalR.Npm.FunctionalTests.npmproj
@@ -0,0 +1,16 @@
+
+
+
+
+ false
+ true
+ run ci-test -- --configuration $(Configuration)
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/clients/ts/FunctionalTests/package.json b/src/SignalR/clients/ts/FunctionalTests/package.json
index 1a2ca10bcb7a..fa02bbfbdca8 100644
--- a/src/SignalR/clients/ts/FunctionalTests/package.json
+++ b/src/SignalR/clients/ts/FunctionalTests/package.json
@@ -26,7 +26,7 @@
"build:lint": "node ../common/node_modules/tslint/bin/tslint -c ../tslint.json -p ./tsconfig.json",
"build:webpack": "node ../common/node_modules/webpack-cli/bin/cli.js",
"pretest": "npm run build",
- "test": "dotnet build && npm run test-only",
+ "test": "dotnet build FunctionalTests.csproj && npm run test-only",
"test-only": "ts-node --project ./selenium/tsconfig-selenium.json ./selenium/run-tests.ts",
"ci-test": "ts-node --project ./selenium/tsconfig-selenium.json ./selenium/run-ci-tests.ts"
},
diff --git a/src/SignalR/clients/ts/client-ts.npmproj b/src/SignalR/clients/ts/client-ts.npmproj
new file mode 100644
index 000000000000..1e6bad50b1db
--- /dev/null
+++ b/src/SignalR/clients/ts/client-ts.npmproj
@@ -0,0 +1,10 @@
+
+
+
+
+ false
+ true
+
+
+
+
diff --git a/src/SignalR/clients/ts/common/common.npmproj b/src/SignalR/clients/ts/common/common.npmproj
new file mode 100644
index 000000000000..647ed15fb15c
--- /dev/null
+++ b/src/SignalR/clients/ts/common/common.npmproj
@@ -0,0 +1,11 @@
+
+
+
+
+ false
+ false
+ false
+
+
+
+
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 366fdca0d521..ecb963c2f2a5 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": "1.0.4-rtm-t000",
+ "version": "1.0.7-servicing-t000",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
diff --git a/src/SignalR/clients/ts/signalr-protocol-msgpack/package.json b/src/SignalR/clients/ts/signalr-protocol-msgpack/package.json
index 3633fa5f5d6b..93e683087ac3 100644
--- a/src/SignalR/clients/ts/signalr-protocol-msgpack/package.json
+++ b/src/SignalR/clients/ts/signalr-protocol-msgpack/package.json
@@ -1,6 +1,6 @@
{
"name": "@aspnet/signalr-protocol-msgpack",
- "version": "1.0.1-rtm-t000",
+ "version": "1.0.7-servicing-t000",
"description": "MsgPack Protocol support for ASP.NET Core SignalR",
"main": "./dist/cjs/index.js",
"module": "./dist/esm/index.js",
diff --git a/src/SignalR/clients/ts/signalr-protocol-msgpack/signalr-protocol-msgpack.npmproj b/src/SignalR/clients/ts/signalr-protocol-msgpack/signalr-protocol-msgpack.npmproj
new file mode 100644
index 000000000000..5862e1618dc0
--- /dev/null
+++ b/src/SignalR/clients/ts/signalr-protocol-msgpack/signalr-protocol-msgpack.npmproj
@@ -0,0 +1,15 @@
+
+
+
+
+ @aspnet/signalr-protocol-msgpack
+ true
+ false
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/clients/ts/signalr/package-lock.json b/src/SignalR/clients/ts/signalr/package-lock.json
index 8c2bfa71f143..f60e4bb5e8ed 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": "1.0.4-rtm-t000",
+ "version": "1.0.7-servicing-t000",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
diff --git a/src/SignalR/clients/ts/signalr/package.json b/src/SignalR/clients/ts/signalr/package.json
index 0ed401f84b1b..c8752a1cda31 100644
--- a/src/SignalR/clients/ts/signalr/package.json
+++ b/src/SignalR/clients/ts/signalr/package.json
@@ -1,6 +1,6 @@
{
"name": "@aspnet/signalr",
- "version": "1.0.1-rtm-t000",
+ "version": "1.0.7-servicing-t000",
"description": "ASP.NET Core SignalR Client",
"main": "./dist/cjs/index.js",
"module": "./dist/esm/index.js",
diff --git a/src/SignalR/clients/ts/signalr/signalr.npmproj b/src/SignalR/clients/ts/signalr/signalr.npmproj
new file mode 100644
index 000000000000..c97c514f412a
--- /dev/null
+++ b/src/SignalR/clients/ts/signalr/signalr.npmproj
@@ -0,0 +1,11 @@
+
+
+
+
+ @aspnet/signalr
+ true
+ false
+
+
+
+
diff --git a/src/SignalR/clients/ts/webdriver-tap-runner/webdriver-tap-runner.npmproj b/src/SignalR/clients/ts/webdriver-tap-runner/webdriver-tap-runner.npmproj
new file mode 100644
index 000000000000..647ed15fb15c
--- /dev/null
+++ b/src/SignalR/clients/ts/webdriver-tap-runner/webdriver-tap-runner.npmproj
@@ -0,0 +1,11 @@
+
+
+
+
+ false
+ false
+ false
+
+
+
+
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/AvailableTransport.cs b/src/SignalR/common/Http.Connections.Common/src/AvailableTransport.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/AvailableTransport.cs
rename to src/SignalR/common/Http.Connections.Common/src/AvailableTransport.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/HttpTransportType.cs b/src/SignalR/common/Http.Connections.Common/src/HttpTransportType.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/HttpTransportType.cs
rename to src/SignalR/common/Http.Connections.Common/src/HttpTransportType.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/HttpTransports.cs b/src/SignalR/common/Http.Connections.Common/src/HttpTransports.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/HttpTransports.cs
rename to src/SignalR/common/Http.Connections.Common/src/HttpTransports.cs
diff --git a/src/SignalR/common/Http.Connections.Common/src/Microsoft.AspNetCore.Http.Connections.Common.csproj b/src/SignalR/common/Http.Connections.Common/src/Microsoft.AspNetCore.Http.Connections.Common.csproj
new file mode 100644
index 000000000000..185ede533472
--- /dev/null
+++ b/src/SignalR/common/Http.Connections.Common/src/Microsoft.AspNetCore.Http.Connections.Common.csproj
@@ -0,0 +1,20 @@
+
+
+
+ Common primitives for ASP.NET Connection Handlers and clients
+ netstandard2.0
+ Microsoft.AspNetCore.Http.Connections
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/NegotiateProtocol.cs b/src/SignalR/common/Http.Connections.Common/src/NegotiateProtocol.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/NegotiateProtocol.cs
rename to src/SignalR/common/Http.Connections.Common/src/NegotiateProtocol.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/NegotiationResponse.cs b/src/SignalR/common/Http.Connections.Common/src/NegotiationResponse.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/NegotiationResponse.cs
rename to src/SignalR/common/Http.Connections.Common/src/NegotiationResponse.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/ConnectionsAppBuilderExtensions.cs b/src/SignalR/common/Http.Connections/src/ConnectionsAppBuilderExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/ConnectionsAppBuilderExtensions.cs
rename to src/SignalR/common/Http.Connections/src/ConnectionsAppBuilderExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/ConnectionsDependencyInjectionExtensions.cs b/src/SignalR/common/Http.Connections/src/ConnectionsDependencyInjectionExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/ConnectionsDependencyInjectionExtensions.cs
rename to src/SignalR/common/Http.Connections/src/ConnectionsDependencyInjectionExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/ConnectionsRouteBuilder.cs b/src/SignalR/common/Http.Connections/src/ConnectionsRouteBuilder.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/ConnectionsRouteBuilder.cs
rename to src/SignalR/common/Http.Connections/src/ConnectionsRouteBuilder.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Features/IHttpContextFeature.cs b/src/SignalR/common/Http.Connections/src/Features/IHttpContextFeature.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Features/IHttpContextFeature.cs
rename to src/SignalR/common/Http.Connections/src/Features/IHttpContextFeature.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Features/IHttpTransportFeature.cs b/src/SignalR/common/Http.Connections/src/Features/IHttpTransportFeature.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Features/IHttpTransportFeature.cs
rename to src/SignalR/common/Http.Connections/src/Features/IHttpTransportFeature.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/HttpConnectionContextExtensions.cs b/src/SignalR/common/Http.Connections/src/HttpConnectionContextExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/HttpConnectionContextExtensions.cs
rename to src/SignalR/common/Http.Connections/src/HttpConnectionContextExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/HttpConnectionDispatcherOptions.cs b/src/SignalR/common/Http.Connections/src/HttpConnectionDispatcherOptions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/HttpConnectionDispatcherOptions.cs
rename to src/SignalR/common/Http.Connections/src/HttpConnectionDispatcherOptions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/AuthorizeHelper.cs b/src/SignalR/common/Http.Connections/src/Internal/AuthorizeHelper.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/AuthorizeHelper.cs
rename to src/SignalR/common/Http.Connections/src/Internal/AuthorizeHelper.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/ConnectionLogScope.cs b/src/SignalR/common/Http.Connections/src/Internal/ConnectionLogScope.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/ConnectionLogScope.cs
rename to src/SignalR/common/Http.Connections/src/Internal/ConnectionLogScope.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionContext.cs b/src/SignalR/common/Http.Connections/src/Internal/HttpConnectionContext.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionContext.cs
rename to src/SignalR/common/Http.Connections/src/Internal/HttpConnectionContext.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionDispatcher.Log.cs b/src/SignalR/common/Http.Connections/src/Internal/HttpConnectionDispatcher.Log.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionDispatcher.Log.cs
rename to src/SignalR/common/Http.Connections/src/Internal/HttpConnectionDispatcher.Log.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionDispatcher.cs b/src/SignalR/common/Http.Connections/src/Internal/HttpConnectionDispatcher.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionDispatcher.cs
rename to src/SignalR/common/Http.Connections/src/Internal/HttpConnectionDispatcher.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionManager.Log.cs b/src/SignalR/common/Http.Connections/src/Internal/HttpConnectionManager.Log.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionManager.Log.cs
rename to src/SignalR/common/Http.Connections/src/Internal/HttpConnectionManager.Log.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionManager.cs b/src/SignalR/common/Http.Connections/src/Internal/HttpConnectionManager.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionManager.cs
rename to src/SignalR/common/Http.Connections/src/Internal/HttpConnectionManager.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionStatus.cs b/src/SignalR/common/Http.Connections/src/Internal/HttpConnectionStatus.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionStatus.cs
rename to src/SignalR/common/Http.Connections/src/Internal/HttpConnectionStatus.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionsEventSource.cs b/src/SignalR/common/Http.Connections/src/Internal/HttpConnectionsEventSource.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionsEventSource.cs
rename to src/SignalR/common/Http.Connections/src/Internal/HttpConnectionsEventSource.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/TimerAwaitable.cs b/src/SignalR/common/Http.Connections/src/Internal/TimerAwaitable.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/TimerAwaitable.cs
rename to src/SignalR/common/Http.Connections/src/Internal/TimerAwaitable.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/IHttpTransport.cs b/src/SignalR/common/Http.Connections/src/Internal/Transports/IHttpTransport.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/IHttpTransport.cs
rename to src/SignalR/common/Http.Connections/src/Internal/Transports/IHttpTransport.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/LongPollingTransport.cs b/src/SignalR/common/Http.Connections/src/Internal/Transports/LongPollingTransport.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/LongPollingTransport.cs
rename to src/SignalR/common/Http.Connections/src/Internal/Transports/LongPollingTransport.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/ServerSentEventsMessageFormatter.cs b/src/SignalR/common/Http.Connections/src/Internal/Transports/ServerSentEventsMessageFormatter.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/ServerSentEventsMessageFormatter.cs
rename to src/SignalR/common/Http.Connections/src/Internal/Transports/ServerSentEventsMessageFormatter.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/ServerSentEventsTransport.cs b/src/SignalR/common/Http.Connections/src/Internal/Transports/ServerSentEventsTransport.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/ServerSentEventsTransport.cs
rename to src/SignalR/common/Http.Connections/src/Internal/Transports/ServerSentEventsTransport.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.Log.cs b/src/SignalR/common/Http.Connections/src/Internal/Transports/WebSocketsTransport.Log.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.Log.cs
rename to src/SignalR/common/Http.Connections/src/Internal/Transports/WebSocketsTransport.Log.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.cs b/src/SignalR/common/Http.Connections/src/Internal/Transports/WebSocketsTransport.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.cs
rename to src/SignalR/common/Http.Connections/src/Internal/Transports/WebSocketsTransport.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/LongPollingOptions.cs b/src/SignalR/common/Http.Connections/src/LongPollingOptions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/LongPollingOptions.cs
rename to src/SignalR/common/Http.Connections/src/LongPollingOptions.cs
diff --git a/src/SignalR/common/Http.Connections/src/Microsoft.AspNetCore.Http.Connections.csproj b/src/SignalR/common/Http.Connections/src/Microsoft.AspNetCore.Http.Connections.csproj
new file mode 100644
index 000000000000..b8ded535e0fd
--- /dev/null
+++ b/src/SignalR/common/Http.Connections/src/Microsoft.AspNetCore.Http.Connections.csproj
@@ -0,0 +1,33 @@
+
+
+
+ Components for providing real-time bi-directional communication across the Web.
+ netstandard2.0;netcoreapp2.1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Properties/AssemblyInfo.cs b/src/SignalR/common/Http.Connections/src/Properties/AssemblyInfo.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Properties/AssemblyInfo.cs
rename to src/SignalR/common/Http.Connections/src/Properties/AssemblyInfo.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/WebSocketOptions.cs b/src/SignalR/common/Http.Connections/src/WebSocketOptions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.Http.Connections/WebSocketOptions.cs
rename to src/SignalR/common/Http.Connections/src/WebSocketOptions.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/ApplicationLifetime.cs b/src/SignalR/common/Http.Connections/test/ApplicationLifetime.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/ApplicationLifetime.cs
rename to src/SignalR/common/Http.Connections/test/ApplicationLifetime.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/HttpConnectionDispatcherTests.cs b/src/SignalR/common/Http.Connections/test/HttpConnectionDispatcherTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/HttpConnectionDispatcherTests.cs
rename to src/SignalR/common/Http.Connections/test/HttpConnectionDispatcherTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/HttpConnectionManagerTests.cs b/src/SignalR/common/Http.Connections/test/HttpConnectionManagerTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/HttpConnectionManagerTests.cs
rename to src/SignalR/common/Http.Connections/test/HttpConnectionManagerTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/LongPollingTests.cs b/src/SignalR/common/Http.Connections/test/LongPollingTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/LongPollingTests.cs
rename to src/SignalR/common/Http.Connections/test/LongPollingTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/MapConnectionHandlerTests.cs b/src/SignalR/common/Http.Connections/test/MapConnectionHandlerTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/MapConnectionHandlerTests.cs
rename to src/SignalR/common/Http.Connections/test/MapConnectionHandlerTests.cs
diff --git a/src/SignalR/common/Http.Connections/test/Microsoft.AspNetCore.Http.Connections.Tests.csproj b/src/SignalR/common/Http.Connections/test/Microsoft.AspNetCore.Http.Connections.Tests.csproj
new file mode 100644
index 000000000000..e1856d3525de
--- /dev/null
+++ b/src/SignalR/common/Http.Connections/test/Microsoft.AspNetCore.Http.Connections.Tests.csproj
@@ -0,0 +1,23 @@
+
+
+
+ netcoreapp2.1;net461
+ win7-x86
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/NegotiateProtocolTests.cs b/src/SignalR/common/Http.Connections/test/NegotiateProtocolTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/NegotiateProtocolTests.cs
rename to src/SignalR/common/Http.Connections/test/NegotiateProtocolTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/ServerSentEventsMessageFormatterTests.cs b/src/SignalR/common/Http.Connections/test/ServerSentEventsMessageFormatterTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/ServerSentEventsMessageFormatterTests.cs
rename to src/SignalR/common/Http.Connections/test/ServerSentEventsMessageFormatterTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/ServerSentEventsTests.cs b/src/SignalR/common/Http.Connections/test/ServerSentEventsTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/ServerSentEventsTests.cs
rename to src/SignalR/common/Http.Connections/test/ServerSentEventsTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/TestWebSocketConnectionFeature.cs b/src/SignalR/common/Http.Connections/test/TestWebSocketConnectionFeature.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/TestWebSocketConnectionFeature.cs
rename to src/SignalR/common/Http.Connections/test/TestWebSocketConnectionFeature.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/WebSocketsTests.cs b/src/SignalR/common/Http.Connections/test/WebSocketsTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/WebSocketsTests.cs
rename to src/SignalR/common/Http.Connections/test/WebSocketsTests.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/JsonHubProtocolOptions.cs b/src/SignalR/common/Protocols.Json/src/JsonHubProtocolOptions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/JsonHubProtocolOptions.cs
rename to src/SignalR/common/Protocols.Json/src/JsonHubProtocolOptions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/JsonProtocolDependencyInjectionExtensions.cs b/src/SignalR/common/Protocols.Json/src/JsonProtocolDependencyInjectionExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/JsonProtocolDependencyInjectionExtensions.cs
rename to src/SignalR/common/Protocols.Json/src/JsonProtocolDependencyInjectionExtensions.cs
diff --git a/src/SignalR/common/Protocols.Json/src/Microsoft.AspNetCore.SignalR.Protocols.Json.csproj b/src/SignalR/common/Protocols.Json/src/Microsoft.AspNetCore.SignalR.Protocols.Json.csproj
new file mode 100644
index 000000000000..5e9de5a7644b
--- /dev/null
+++ b/src/SignalR/common/Protocols.Json/src/Microsoft.AspNetCore.SignalR.Protocols.Json.csproj
@@ -0,0 +1,23 @@
+
+
+
+ Implements the SignalR Hub Protocol over JSON.
+ netstandard2.0
+ Microsoft.AspNetCore.SignalR
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/Protocol/JsonHubProtocol.cs b/src/SignalR/common/Protocols.Json/src/Protocol/JsonHubProtocol.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/Protocol/JsonHubProtocol.cs
rename to src/SignalR/common/Protocols.Json/src/Protocol/JsonHubProtocol.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/MessagePackHubProtocolOptions.cs b/src/SignalR/common/Protocols.MessagePack/src/MessagePackHubProtocolOptions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/MessagePackHubProtocolOptions.cs
rename to src/SignalR/common/Protocols.MessagePack/src/MessagePackHubProtocolOptions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/MessagePackProtocolDependencyInjectionExtensions.cs b/src/SignalR/common/Protocols.MessagePack/src/MessagePackProtocolDependencyInjectionExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/MessagePackProtocolDependencyInjectionExtensions.cs
rename to src/SignalR/common/Protocols.MessagePack/src/MessagePackProtocolDependencyInjectionExtensions.cs
diff --git a/src/SignalR/common/Protocols.MessagePack/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack.csproj b/src/SignalR/common/Protocols.MessagePack/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack.csproj
new file mode 100644
index 000000000000..db97623b10e6
--- /dev/null
+++ b/src/SignalR/common/Protocols.MessagePack/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack.csproj
@@ -0,0 +1,21 @@
+
+
+
+ Implements the SignalR Hub Protocol over MsgPack.
+ netstandard2.0
+ Microsoft.AspNetCore.SignalR
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/Protocol/MessagePackHubProtocol.cs b/src/SignalR/common/Protocols.MessagePack/src/Protocol/MessagePackHubProtocol.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/Protocol/MessagePackHubProtocol.cs
rename to src/SignalR/common/Protocols.MessagePack/src/Protocol/MessagePackHubProtocol.cs
diff --git a/src/SignalR/src/Common/AwaitableThreadPool.cs b/src/SignalR/common/Shared/AwaitableThreadPool.cs
similarity index 100%
rename from src/SignalR/src/Common/AwaitableThreadPool.cs
rename to src/SignalR/common/Shared/AwaitableThreadPool.cs
diff --git a/src/SignalR/src/Common/BinaryMessageFormatter.cs b/src/SignalR/common/Shared/BinaryMessageFormatter.cs
similarity index 100%
rename from src/SignalR/src/Common/BinaryMessageFormatter.cs
rename to src/SignalR/common/Shared/BinaryMessageFormatter.cs
diff --git a/src/SignalR/src/Common/BinaryMessageParser.cs b/src/SignalR/common/Shared/BinaryMessageParser.cs
similarity index 100%
rename from src/SignalR/src/Common/BinaryMessageParser.cs
rename to src/SignalR/common/Shared/BinaryMessageParser.cs
diff --git a/src/SignalR/src/Common/DuplexPipe.cs b/src/SignalR/common/Shared/DuplexPipe.cs
similarity index 100%
rename from src/SignalR/src/Common/DuplexPipe.cs
rename to src/SignalR/common/Shared/DuplexPipe.cs
diff --git a/src/SignalR/src/Common/ForceAsyncAwaiter.cs b/src/SignalR/common/Shared/ForceAsyncAwaiter.cs
similarity index 100%
rename from src/SignalR/src/Common/ForceAsyncAwaiter.cs
rename to src/SignalR/common/Shared/ForceAsyncAwaiter.cs
diff --git a/src/SignalR/src/Common/JsonUtils.cs b/src/SignalR/common/Shared/JsonUtils.cs
similarity index 100%
rename from src/SignalR/src/Common/JsonUtils.cs
rename to src/SignalR/common/Shared/JsonUtils.cs
diff --git a/src/SignalR/src/Common/MemoryBufferWriter.cs b/src/SignalR/common/Shared/MemoryBufferWriter.cs
similarity index 100%
rename from src/SignalR/src/Common/MemoryBufferWriter.cs
rename to src/SignalR/common/Shared/MemoryBufferWriter.cs
diff --git a/src/SignalR/src/Common/PipeWriterStream.cs b/src/SignalR/common/Shared/PipeWriterStream.cs
similarity index 100%
rename from src/SignalR/src/Common/PipeWriterStream.cs
rename to src/SignalR/common/Shared/PipeWriterStream.cs
diff --git a/src/SignalR/src/Common/StreamExtensions.cs b/src/SignalR/common/Shared/StreamExtensions.cs
similarity index 100%
rename from src/SignalR/src/Common/StreamExtensions.cs
rename to src/SignalR/common/Shared/StreamExtensions.cs
diff --git a/src/SignalR/src/Common/TextMessageFormatter.cs b/src/SignalR/common/Shared/TextMessageFormatter.cs
similarity index 100%
rename from src/SignalR/src/Common/TextMessageFormatter.cs
rename to src/SignalR/common/Shared/TextMessageFormatter.cs
diff --git a/src/SignalR/src/Common/TextMessageParser.cs b/src/SignalR/common/Shared/TextMessageParser.cs
similarity index 100%
rename from src/SignalR/src/Common/TextMessageParser.cs
rename to src/SignalR/common/Shared/TextMessageParser.cs
diff --git a/src/SignalR/src/Common/Utf8BufferTextReader.cs b/src/SignalR/common/Shared/Utf8BufferTextReader.cs
similarity index 100%
rename from src/SignalR/src/Common/Utf8BufferTextReader.cs
rename to src/SignalR/common/Shared/Utf8BufferTextReader.cs
diff --git a/src/SignalR/src/Common/Utf8BufferTextWriter.cs b/src/SignalR/common/Shared/Utf8BufferTextWriter.cs
similarity index 100%
rename from src/SignalR/src/Common/Utf8BufferTextWriter.cs
rename to src/SignalR/common/Shared/Utf8BufferTextWriter.cs
diff --git a/src/SignalR/src/Common/WebSocketExtensions.cs b/src/SignalR/common/Shared/WebSocketExtensions.cs
similarity index 100%
rename from src/SignalR/src/Common/WebSocketExtensions.cs
rename to src/SignalR/common/Shared/WebSocketExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/HubException.cs b/src/SignalR/common/SignalR.Common/src/HubException.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/HubException.cs
rename to src/SignalR/common/SignalR.Common/src/HubException.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/IInvocationBinder.cs b/src/SignalR/common/SignalR.Common/src/IInvocationBinder.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/IInvocationBinder.cs
rename to src/SignalR/common/SignalR.Common/src/IInvocationBinder.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/ISignalRBuilder.cs b/src/SignalR/common/SignalR.Common/src/ISignalRBuilder.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/ISignalRBuilder.cs
rename to src/SignalR/common/SignalR.Common/src/ISignalRBuilder.cs
diff --git a/src/SignalR/common/SignalR.Common/src/Microsoft.AspNetCore.SignalR.Common.csproj b/src/SignalR/common/SignalR.Common/src/Microsoft.AspNetCore.SignalR.Common.csproj
new file mode 100644
index 000000000000..d27c5a058946
--- /dev/null
+++ b/src/SignalR/common/SignalR.Common/src/Microsoft.AspNetCore.SignalR.Common.csproj
@@ -0,0 +1,26 @@
+
+
+
+ Common serialiation primitives for SignalR Clients Servers
+ netstandard2.0;netcoreapp2.1
+ Microsoft.AspNetCore.SignalR
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Properties/AssemblyInfo.cs b/src/SignalR/common/SignalR.Common/src/Properties/AssemblyInfo.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Properties/AssemblyInfo.cs
rename to src/SignalR/common/SignalR.Common/src/Properties/AssemblyInfo.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CancelInvocationMessage.cs b/src/SignalR/common/SignalR.Common/src/Protocol/CancelInvocationMessage.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CancelInvocationMessage.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/CancelInvocationMessage.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CloseMessage.cs b/src/SignalR/common/SignalR.Common/src/Protocol/CloseMessage.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CloseMessage.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/CloseMessage.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CompletionMessage.cs b/src/SignalR/common/SignalR.Common/src/Protocol/CompletionMessage.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CompletionMessage.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/CompletionMessage.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeProtocol.cs b/src/SignalR/common/SignalR.Common/src/Protocol/HandshakeProtocol.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeProtocol.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/HandshakeProtocol.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeRequestMessage.cs b/src/SignalR/common/SignalR.Common/src/Protocol/HandshakeRequestMessage.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeRequestMessage.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/HandshakeRequestMessage.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeResponseMessage.cs b/src/SignalR/common/SignalR.Common/src/Protocol/HandshakeResponseMessage.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeResponseMessage.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/HandshakeResponseMessage.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubInvocationMessage.cs b/src/SignalR/common/SignalR.Common/src/Protocol/HubInvocationMessage.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubInvocationMessage.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/HubInvocationMessage.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubMessage.cs b/src/SignalR/common/SignalR.Common/src/Protocol/HubMessage.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubMessage.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/HubMessage.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubMethodInvocationMessage.cs b/src/SignalR/common/SignalR.Common/src/Protocol/HubMethodInvocationMessage.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubMethodInvocationMessage.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/HubMethodInvocationMessage.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubProtocolConstants.cs b/src/SignalR/common/SignalR.Common/src/Protocol/HubProtocolConstants.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubProtocolConstants.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/HubProtocolConstants.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubProtocolExtensions.cs b/src/SignalR/common/SignalR.Common/src/Protocol/HubProtocolExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubProtocolExtensions.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/HubProtocolExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/IHubProtocol.cs b/src/SignalR/common/SignalR.Common/src/Protocol/IHubProtocol.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/IHubProtocol.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/IHubProtocol.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/InvocationBindingFailureMessage.cs b/src/SignalR/common/SignalR.Common/src/Protocol/InvocationBindingFailureMessage.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/InvocationBindingFailureMessage.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/InvocationBindingFailureMessage.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/PingMessage.cs b/src/SignalR/common/SignalR.Common/src/Protocol/PingMessage.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/PingMessage.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/PingMessage.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamItemMessage.cs b/src/SignalR/common/SignalR.Common/src/Protocol/StreamItemMessage.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamItemMessage.cs
rename to src/SignalR/common/SignalR.Common/src/Protocol/StreamItemMessage.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/BinaryMessageFormatterTests.cs b/src/SignalR/common/SignalR.Common/test/Internal/Formatters/BinaryMessageFormatterTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/BinaryMessageFormatterTests.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Formatters/BinaryMessageFormatterTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/BinaryMessageParserTests.cs b/src/SignalR/common/SignalR.Common/test/Internal/Formatters/BinaryMessageParserTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/BinaryMessageParserTests.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Formatters/BinaryMessageParserTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/TextMessageFormatterTests.cs b/src/SignalR/common/SignalR.Common/test/Internal/Formatters/TextMessageFormatterTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/TextMessageFormatterTests.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Formatters/TextMessageFormatterTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/TextMessageParserTests.cs b/src/SignalR/common/SignalR.Common/test/Internal/Formatters/TextMessageParserTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/TextMessageParserTests.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Formatters/TextMessageParserTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/CompositeTestBinder.cs b/src/SignalR/common/SignalR.Common/test/Internal/Protocol/CompositeTestBinder.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/CompositeTestBinder.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Protocol/CompositeTestBinder.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/CustomObject.cs b/src/SignalR/common/SignalR.Common/test/Internal/Protocol/CustomObject.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/CustomObject.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Protocol/CustomObject.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/HandshakeProtocolTests.cs b/src/SignalR/common/SignalR.Common/test/Internal/Protocol/HandshakeProtocolTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/HandshakeProtocolTests.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Protocol/HandshakeProtocolTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/HubMessageHelpers.cs b/src/SignalR/common/SignalR.Common/test/Internal/Protocol/HubMessageHelpers.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/HubMessageHelpers.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Protocol/HubMessageHelpers.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/JsonHubProtocolTests.cs b/src/SignalR/common/SignalR.Common/test/Internal/Protocol/JsonHubProtocolTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/JsonHubProtocolTests.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Protocol/JsonHubProtocolTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MemoryBufferWriterTests.cs b/src/SignalR/common/SignalR.Common/test/Internal/Protocol/MemoryBufferWriterTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MemoryBufferWriterTests.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Protocol/MemoryBufferWriterTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MessagePackHubProtocolTests.cs b/src/SignalR/common/SignalR.Common/test/Internal/Protocol/MessagePackHubProtocolTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MessagePackHubProtocolTests.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Protocol/MessagePackHubProtocolTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/TestBinder.cs b/src/SignalR/common/SignalR.Common/test/Internal/Protocol/TestBinder.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/TestBinder.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Protocol/TestBinder.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/TestHubMessageEqualityComparer.cs b/src/SignalR/common/SignalR.Common/test/Internal/Protocol/TestHubMessageEqualityComparer.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/TestHubMessageEqualityComparer.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Protocol/TestHubMessageEqualityComparer.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/Utf8BufferTextReaderTests.cs b/src/SignalR/common/SignalR.Common/test/Internal/Protocol/Utf8BufferTextReaderTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/Utf8BufferTextReaderTests.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Protocol/Utf8BufferTextReaderTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/Utf8BufferTextWriterTests.cs b/src/SignalR/common/SignalR.Common/test/Internal/Protocol/Utf8BufferTextWriterTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/Utf8BufferTextWriterTests.cs
rename to src/SignalR/common/SignalR.Common/test/Internal/Protocol/Utf8BufferTextWriterTests.cs
diff --git a/src/SignalR/common/SignalR.Common/test/Microsoft.AspNetCore.SignalR.Common.Tests.csproj b/src/SignalR/common/SignalR.Common/test/Microsoft.AspNetCore.SignalR.Common.Tests.csproj
new file mode 100644
index 000000000000..5283a729ed19
--- /dev/null
+++ b/src/SignalR/common/SignalR.Common/test/Microsoft.AspNetCore.SignalR.Common.Tests.csproj
@@ -0,0 +1,20 @@
+
+
+
+ netcoreapp2.1;net461
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ChannelExtensions.cs b/src/SignalR/common/testassets/Tests.Utils/ChannelExtensions.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ChannelExtensions.cs
rename to src/SignalR/common/testassets/Tests.Utils/ChannelExtensions.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/DelegateConnectionFactory.cs b/src/SignalR/common/testassets/Tests.Utils/DelegateConnectionFactory.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/DelegateConnectionFactory.cs
rename to src/SignalR/common/testassets/Tests.Utils/DelegateConnectionFactory.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/DummyHubProtocol.cs b/src/SignalR/common/testassets/Tests.Utils/DummyHubProtocol.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/DummyHubProtocol.cs
rename to src/SignalR/common/testassets/Tests.Utils/DummyHubProtocol.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubConnectionBuilderTestExtensions.cs b/src/SignalR/common/testassets/Tests.Utils/HubConnectionBuilderTestExtensions.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubConnectionBuilderTestExtensions.cs
rename to src/SignalR/common/testassets/Tests.Utils/HubConnectionBuilderTestExtensions.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubConnectionContextUtils.cs b/src/SignalR/common/testassets/Tests.Utils/HubConnectionContextUtils.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubConnectionContextUtils.cs
rename to src/SignalR/common/testassets/Tests.Utils/HubConnectionContextUtils.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubProtocolHelpers.cs b/src/SignalR/common/testassets/Tests.Utils/HubProtocolHelpers.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubProtocolHelpers.cs
rename to src/SignalR/common/testassets/Tests.Utils/HubProtocolHelpers.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/LogRecord.cs b/src/SignalR/common/testassets/Tests.Utils/LogRecord.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/LogRecord.cs
rename to src/SignalR/common/testassets/Tests.Utils/LogRecord.cs
diff --git a/src/SignalR/common/testassets/Tests.Utils/Microsoft.AspNetCore.SignalR.Tests.Utils.csproj b/src/SignalR/common/testassets/Tests.Utils/Microsoft.AspNetCore.SignalR.Tests.Utils.csproj
new file mode 100644
index 000000000000..199ca7b807b1
--- /dev/null
+++ b/src/SignalR/common/testassets/Tests.Utils/Microsoft.AspNetCore.SignalR.Tests.Utils.csproj
@@ -0,0 +1,25 @@
+
+
+
+ netcoreapp2.1;net461
+ Microsoft.AspNetCore.SignalR.Tests
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/PipeCompletionExtensions.cs b/src/SignalR/common/testassets/Tests.Utils/PipeCompletionExtensions.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/PipeCompletionExtensions.cs
rename to src/SignalR/common/testassets/Tests.Utils/PipeCompletionExtensions.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/PipeReaderExtensions.cs b/src/SignalR/common/testassets/Tests.Utils/PipeReaderExtensions.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/PipeReaderExtensions.cs
rename to src/SignalR/common/testassets/Tests.Utils/PipeReaderExtensions.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ServerFixture.cs b/src/SignalR/common/testassets/Tests.Utils/ServerFixture.cs
similarity index 99%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ServerFixture.cs
rename to src/SignalR/common/testassets/Tests.Utils/ServerFixture.cs
index 952a29ef8332..2c6875b77f19 100644
--- a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ServerFixture.cs
+++ b/src/SignalR/common/testassets/Tests.Utils/ServerFixture.cs
@@ -55,7 +55,7 @@ public ServerFixture() : this(loggerFactory: null)
{
}
- public ServerFixture(ILoggerFactory loggerFactory)
+ internal ServerFixture(ILoggerFactory loggerFactory)
{
_logSinkProvider = new LogSinkProvider();
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ServerLogScope.cs b/src/SignalR/common/testassets/Tests.Utils/ServerLogScope.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ServerLogScope.cs
rename to src/SignalR/common/testassets/Tests.Utils/ServerLogScope.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/SyncPoint.cs b/src/SignalR/common/testassets/Tests.Utils/SyncPoint.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/SyncPoint.cs
rename to src/SignalR/common/testassets/Tests.Utils/SyncPoint.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TaskExtensions.cs b/src/SignalR/common/testassets/Tests.Utils/TaskExtensions.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TaskExtensions.cs
rename to src/SignalR/common/testassets/Tests.Utils/TaskExtensions.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestClient.cs b/src/SignalR/common/testassets/Tests.Utils/TestClient.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestClient.cs
rename to src/SignalR/common/testassets/Tests.Utils/TestClient.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestConnectionMultiplexer.cs b/src/SignalR/common/testassets/Tests.Utils/TestConnectionMultiplexer.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestConnectionMultiplexer.cs
rename to src/SignalR/common/testassets/Tests.Utils/TestConnectionMultiplexer.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestHelpers.cs b/src/SignalR/common/testassets/Tests.Utils/TestHelpers.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestHelpers.cs
rename to src/SignalR/common/testassets/Tests.Utils/TestHelpers.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/VerifiableLoggedTest.cs b/src/SignalR/common/testassets/Tests.Utils/VerifiableLoggedTest.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/VerifiableLoggedTest.cs
rename to src/SignalR/common/testassets/Tests.Utils/VerifiableLoggedTest.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/VerifiableServerLoggedTest.cs b/src/SignalR/common/testassets/Tests.Utils/VerifiableServerLoggedTest.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/VerifiableServerLoggedTest.cs
rename to src/SignalR/common/testassets/Tests.Utils/VerifiableServerLoggedTest.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/VerifyNoErrorsScope.cs b/src/SignalR/common/testassets/Tests.Utils/VerifyNoErrorsScope.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/VerifyNoErrorsScope.cs
rename to src/SignalR/common/testassets/Tests.Utils/VerifyNoErrorsScope.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/WebSocketsSupportedConditionAttribute.cs b/src/SignalR/common/testassets/Tests.Utils/WebSocketsSupportedConditionAttribute.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/WebSocketsSupportedConditionAttribute.cs
rename to src/SignalR/common/testassets/Tests.Utils/WebSocketsSupportedConditionAttribute.cs
diff --git a/src/SignalR/docs/GettingStarted.md b/src/SignalR/docs/GettingStarted.md
index dd0a0111a754..f0111dc869ba 100644
--- a/src/SignalR/docs/GettingStarted.md
+++ b/src/SignalR/docs/GettingStarted.md
@@ -6,16 +6,16 @@ In order to successfully build and test *SignalR* you'll need to ensure that you
* NPM *(typically bundled with NodeJS)*
## How To Build
-Full instructions for how to build repositories within the [aspnet](https://github.com/aspnet) family of repositories can be found [in the Home repository](https://github.com/aspnet/Home/wiki/Building-from-source).
+Full instructions for how to build this repository are in [/docs/BuildFromSource.md](/docs/BuildFromSource.md).
-The short-hand version of that is to simply run the `build.cmd` or `build.sh` script that's in the root of the *SignalR* repository. The build script will automatically install the necessary .NET SDK version.
+The short-hand version of that is to simply run the `build.cmd` or `build.sh` script that's in the root of the *SignalR* folder. The build script will automatically install the necessary .NET SDK version.
If, after running `build.cmd` or `build.sh`, you did not get a successful build, please refer to the [Troubleshooting](#troubleshooting) section below. If your problem isn't covered, please check that you've met all of the prerequisites. If you still can't get the solution to build successfully, please open an issue so that we might assist and please consider updating this documentation to help others in the future.
## Troubleshooting
Below are some tips for troubleshooting common issues.
-### Project Load Failures in Visual Studio
+### Project Load Failures in Visual Studio
In order to property load several of the projects in the solution, it is necessary that `%USERPROFILE%\.dotnet\x64` be in your `PATH` variable. If you experience issues loading projects in Visual Studio, please ensure that your `PATH` is configured correctly.
### NPM Errors
diff --git a/src/SignalR/specs/HubProtocol.md b/src/SignalR/docs/specs/HubProtocol.md
similarity index 100%
rename from src/SignalR/specs/HubProtocol.md
rename to src/SignalR/docs/specs/HubProtocol.md
diff --git a/src/SignalR/specs/TransportProtocols.md b/src/SignalR/docs/specs/TransportProtocols.md
similarity index 100%
rename from src/SignalR/specs/TransportProtocols.md
rename to src/SignalR/docs/specs/TransportProtocols.md
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/AssemblyInfo.cs b/src/SignalR/perf/Microbenchmarks/AssemblyInfo.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/AssemblyInfo.cs
rename to src/SignalR/perf/Microbenchmarks/AssemblyInfo.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/BroadcastBenchmark.cs b/src/SignalR/perf/Microbenchmarks/BroadcastBenchmark.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/BroadcastBenchmark.cs
rename to src/SignalR/perf/Microbenchmarks/BroadcastBenchmark.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubActivatorBenchmark.cs b/src/SignalR/perf/Microbenchmarks/DefaultHubActivatorBenchmark.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubActivatorBenchmark.cs
rename to src/SignalR/perf/Microbenchmarks/DefaultHubActivatorBenchmark.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubDispatcherBenchmark.cs b/src/SignalR/perf/Microbenchmarks/DefaultHubDispatcherBenchmark.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubDispatcherBenchmark.cs
rename to src/SignalR/perf/Microbenchmarks/DefaultHubDispatcherBenchmark.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubLifetimeManagerBenchmark.cs b/src/SignalR/perf/Microbenchmarks/DefaultHubLifetimeManagerBenchmark.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubLifetimeManagerBenchmark.cs
rename to src/SignalR/perf/Microbenchmarks/DefaultHubLifetimeManagerBenchmark.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionContextBenchmark.cs b/src/SignalR/perf/Microbenchmarks/HubConnectionContextBenchmark.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionContextBenchmark.cs
rename to src/SignalR/perf/Microbenchmarks/HubConnectionContextBenchmark.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionSendBenchmark.cs b/src/SignalR/perf/Microbenchmarks/HubConnectionSendBenchmark.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionSendBenchmark.cs
rename to src/SignalR/perf/Microbenchmarks/HubConnectionSendBenchmark.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionStartBenchmark.cs b/src/SignalR/perf/Microbenchmarks/HubConnectionStartBenchmark.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionStartBenchmark.cs
rename to src/SignalR/perf/Microbenchmarks/HubConnectionStartBenchmark.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubProtocolBenchmark.cs b/src/SignalR/perf/Microbenchmarks/HubProtocolBenchmark.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubProtocolBenchmark.cs
rename to src/SignalR/perf/Microbenchmarks/HubProtocolBenchmark.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/MessageParserBenchmark.cs b/src/SignalR/perf/Microbenchmarks/MessageParserBenchmark.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/MessageParserBenchmark.cs
rename to src/SignalR/perf/Microbenchmarks/MessageParserBenchmark.cs
diff --git a/src/SignalR/perf/Microbenchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj b/src/SignalR/perf/Microbenchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj
new file mode 100644
index 000000000000..e73b6e3c3798
--- /dev/null
+++ b/src/SignalR/perf/Microbenchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj
@@ -0,0 +1,34 @@
+
+
+
+ Exe
+ netcoreapp2.1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/NegotiateProtocolBenchmark.cs b/src/SignalR/perf/Microbenchmarks/NegotiateProtocolBenchmark.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/NegotiateProtocolBenchmark.cs
rename to src/SignalR/perf/Microbenchmarks/NegotiateProtocolBenchmark.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/RedisHubLifetimeManagerBenchmark.cs b/src/SignalR/perf/Microbenchmarks/RedisHubLifetimeManagerBenchmark.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/RedisHubLifetimeManagerBenchmark.cs
rename to src/SignalR/perf/Microbenchmarks/RedisHubLifetimeManagerBenchmark.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/RedisProtocolBenchmark.cs b/src/SignalR/perf/Microbenchmarks/RedisProtocolBenchmark.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/RedisProtocolBenchmark.cs
rename to src/SignalR/perf/Microbenchmarks/RedisProtocolBenchmark.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/ServerSentEventsBenchmark.cs b/src/SignalR/perf/Microbenchmarks/ServerSentEventsBenchmark.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/ServerSentEventsBenchmark.cs
rename to src/SignalR/perf/Microbenchmarks/ServerSentEventsBenchmark.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestConnectionContext.cs b/src/SignalR/perf/Microbenchmarks/Shared/TestConnectionContext.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestConnectionContext.cs
rename to src/SignalR/perf/Microbenchmarks/Shared/TestConnectionContext.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestDuplexPipe.cs b/src/SignalR/perf/Microbenchmarks/Shared/TestDuplexPipe.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestDuplexPipe.cs
rename to src/SignalR/perf/Microbenchmarks/Shared/TestDuplexPipe.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestPipeReader.cs b/src/SignalR/perf/Microbenchmarks/Shared/TestPipeReader.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestPipeReader.cs
rename to src/SignalR/perf/Microbenchmarks/Shared/TestPipeReader.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestPipeWriter.cs b/src/SignalR/perf/Microbenchmarks/Shared/TestPipeWriter.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestPipeWriter.cs
rename to src/SignalR/perf/Microbenchmarks/Shared/TestPipeWriter.cs
diff --git a/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/TestBinder.cs b/src/SignalR/perf/Microbenchmarks/TestBinder.cs
similarity index 100%
rename from src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/TestBinder.cs
rename to src/SignalR/perf/Microbenchmarks/TestBinder.cs
diff --git a/src/SignalR/benchmarkapps/BenchmarkServer/BenchmarkServer.csproj b/src/SignalR/perf/benchmarkapps/BenchmarkServer/BenchmarkServer.csproj
similarity index 61%
rename from src/SignalR/benchmarkapps/BenchmarkServer/BenchmarkServer.csproj
rename to src/SignalR/perf/benchmarkapps/BenchmarkServer/BenchmarkServer.csproj
index a8d8e5606530..54297e1b73e8 100644
--- a/src/SignalR/benchmarkapps/BenchmarkServer/BenchmarkServer.csproj
+++ b/src/SignalR/perf/benchmarkapps/BenchmarkServer/BenchmarkServer.csproj
@@ -12,12 +12,11 @@
-
-
-
-
-
-
+
+
+
+
+
diff --git a/src/SignalR/benchmarkapps/BenchmarkServer/Hubs/EchoHub.cs b/src/SignalR/perf/benchmarkapps/BenchmarkServer/Hubs/EchoHub.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/BenchmarkServer/Hubs/EchoHub.cs
rename to src/SignalR/perf/benchmarkapps/BenchmarkServer/Hubs/EchoHub.cs
diff --git a/src/SignalR/benchmarkapps/BenchmarkServer/Program.cs b/src/SignalR/perf/benchmarkapps/BenchmarkServer/Program.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/BenchmarkServer/Program.cs
rename to src/SignalR/perf/benchmarkapps/BenchmarkServer/Program.cs
diff --git a/src/SignalR/benchmarkapps/BenchmarkServer/README.md b/src/SignalR/perf/benchmarkapps/BenchmarkServer/README.md
similarity index 100%
rename from src/SignalR/benchmarkapps/BenchmarkServer/README.md
rename to src/SignalR/perf/benchmarkapps/BenchmarkServer/README.md
diff --git a/src/SignalR/benchmarkapps/BenchmarkServer/Startup.cs b/src/SignalR/perf/benchmarkapps/BenchmarkServer/Startup.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/BenchmarkServer/Startup.cs
rename to src/SignalR/perf/benchmarkapps/BenchmarkServer/Startup.cs
diff --git a/src/SignalR/benchmarkapps/BenchmarkServer/signalr.json b/src/SignalR/perf/benchmarkapps/BenchmarkServer/signalr.json
similarity index 100%
rename from src/SignalR/benchmarkapps/BenchmarkServer/signalr.json
rename to src/SignalR/perf/benchmarkapps/BenchmarkServer/signalr.json
diff --git a/src/SignalR/benchmarkapps/Crankier/Agent.cs b/src/SignalR/perf/benchmarkapps/Crankier/Agent.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/Agent.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/Agent.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/AgentHeartbeatInformation.cs b/src/SignalR/perf/benchmarkapps/Crankier/AgentHeartbeatInformation.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/AgentHeartbeatInformation.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/AgentHeartbeatInformation.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/AgentReceiver.cs b/src/SignalR/perf/benchmarkapps/Crankier/AgentReceiver.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/AgentReceiver.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/AgentReceiver.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/AgentSender.cs b/src/SignalR/perf/benchmarkapps/Crankier/AgentSender.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/AgentSender.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/AgentSender.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/AgentWorker.cs b/src/SignalR/perf/benchmarkapps/Crankier/AgentWorker.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/AgentWorker.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/AgentWorker.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/Client.cs b/src/SignalR/perf/benchmarkapps/Crankier/Client.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/Client.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/Client.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/Commands/AgentCommand.cs b/src/SignalR/perf/benchmarkapps/Crankier/Commands/AgentCommand.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/Commands/AgentCommand.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/Commands/AgentCommand.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/Commands/CommandLineUtilities.cs b/src/SignalR/perf/benchmarkapps/Crankier/Commands/CommandLineUtilities.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/Commands/CommandLineUtilities.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/Commands/CommandLineUtilities.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/Commands/Defaults.cs b/src/SignalR/perf/benchmarkapps/Crankier/Commands/Defaults.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/Commands/Defaults.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/Commands/Defaults.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/Commands/LocalCommand.cs b/src/SignalR/perf/benchmarkapps/Crankier/Commands/LocalCommand.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/Commands/LocalCommand.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/Commands/LocalCommand.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/Commands/WorkerCommand.cs b/src/SignalR/perf/benchmarkapps/Crankier/Commands/WorkerCommand.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/Commands/WorkerCommand.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/Commands/WorkerCommand.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/ConnectionState.cs b/src/SignalR/perf/benchmarkapps/Crankier/ConnectionState.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/ConnectionState.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/ConnectionState.cs
diff --git a/src/SignalR/perf/benchmarkapps/Crankier/Crankier.csproj b/src/SignalR/perf/benchmarkapps/Crankier/Crankier.csproj
new file mode 100644
index 000000000000..4be1767782c7
--- /dev/null
+++ b/src/SignalR/perf/benchmarkapps/Crankier/Crankier.csproj
@@ -0,0 +1,15 @@
+
+
+
+ Exe
+ netcoreapp2.1
+ Microsoft.AspNetCore.SignalR.CranksRevenge
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/benchmarkapps/Crankier/IAgent.cs b/src/SignalR/perf/benchmarkapps/Crankier/IAgent.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/IAgent.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/IAgent.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/IRunner.cs b/src/SignalR/perf/benchmarkapps/Crankier/IRunner.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/IRunner.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/IRunner.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/IWorker.cs b/src/SignalR/perf/benchmarkapps/Crankier/IWorker.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/IWorker.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/IWorker.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/Message.cs b/src/SignalR/perf/benchmarkapps/Crankier/Message.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/Message.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/Message.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/Program.cs b/src/SignalR/perf/benchmarkapps/Crankier/Program.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/Program.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/Program.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/Runner.cs b/src/SignalR/perf/benchmarkapps/Crankier/Runner.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/Runner.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/Runner.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/StatusInformation.cs b/src/SignalR/perf/benchmarkapps/Crankier/StatusInformation.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/StatusInformation.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/StatusInformation.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/Worker.cs b/src/SignalR/perf/benchmarkapps/Crankier/Worker.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/Worker.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/Worker.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/WorkerHeartbeatInformation.cs b/src/SignalR/perf/benchmarkapps/Crankier/WorkerHeartbeatInformation.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/WorkerHeartbeatInformation.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/WorkerHeartbeatInformation.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/WorkerReceiver.cs b/src/SignalR/perf/benchmarkapps/Crankier/WorkerReceiver.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/WorkerReceiver.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/WorkerReceiver.cs
diff --git a/src/SignalR/benchmarkapps/Crankier/WorkerSender.cs b/src/SignalR/perf/benchmarkapps/Crankier/WorkerSender.cs
similarity index 100%
rename from src/SignalR/benchmarkapps/Crankier/WorkerSender.cs
rename to src/SignalR/perf/benchmarkapps/Crankier/WorkerSender.cs
diff --git a/src/SignalR/samples/ClientSample/ClientSample.csproj b/src/SignalR/samples/ClientSample/ClientSample.csproj
index 966067f59b5c..1b51c73f1ba1 100644
--- a/src/SignalR/samples/ClientSample/ClientSample.csproj
+++ b/src/SignalR/samples/ClientSample/ClientSample.csproj
@@ -2,23 +2,18 @@
netcoreapp2.1;net461
-
- false
Exe
-
+
-
-
-
-
-
-
-
+
+
+
+
diff --git a/src/SignalR/samples/JwtClientSample/JwtClientSample.csproj b/src/SignalR/samples/JwtClientSample/JwtClientSample.csproj
index 97376a8162cf..69899be12f16 100644
--- a/src/SignalR/samples/JwtClientSample/JwtClientSample.csproj
+++ b/src/SignalR/samples/JwtClientSample/JwtClientSample.csproj
@@ -1,14 +1,12 @@
-
+
netcoreapp2.1
-
- false
Exe
-
+
diff --git a/src/SignalR/samples/JwtSample/JwtSample.csproj b/src/SignalR/samples/JwtSample/JwtSample.csproj
index 735ea0cd249b..f952ad0339a4 100644
--- a/src/SignalR/samples/JwtSample/JwtSample.csproj
+++ b/src/SignalR/samples/JwtSample/JwtSample.csproj
@@ -1,4 +1,4 @@
-
+
netcoreapp2.1
@@ -9,18 +9,15 @@
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/samples/SignalRSamples/SignalRSamples.csproj b/src/SignalR/samples/SignalRSamples/SignalRSamples.csproj
index 7ad313946a40..42611df8b73b 100644
--- a/src/SignalR/samples/SignalRSamples/SignalRSamples.csproj
+++ b/src/SignalR/samples/SignalRSamples/SignalRSamples.csproj
@@ -2,27 +2,24 @@
netcoreapp2.1;net461
-
- false
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/samples/SocialWeather/SocialWeather.csproj b/src/SignalR/samples/SocialWeather/SocialWeather.csproj
index 1b6413a83c39..2ebc807ddfe3 100644
--- a/src/SignalR/samples/SocialWeather/SocialWeather.csproj
+++ b/src/SignalR/samples/SocialWeather/SocialWeather.csproj
@@ -2,23 +2,18 @@
netcoreapp2.1;net461
-
- false
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/ClientProxyExtensions.cs b/src/SignalR/server/Core/src/ClientProxyExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/ClientProxyExtensions.cs
rename to src/SignalR/server/Core/src/ClientProxyExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DefaultHubLifetimeManager.cs b/src/SignalR/server/Core/src/DefaultHubLifetimeManager.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DefaultHubLifetimeManager.cs
rename to src/SignalR/server/Core/src/DefaultHubLifetimeManager.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DefaultUserIdProvider.cs b/src/SignalR/server/Core/src/DefaultUserIdProvider.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DefaultUserIdProvider.cs
rename to src/SignalR/server/Core/src/DefaultUserIdProvider.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DynamicHub.cs b/src/SignalR/server/Core/src/DynamicHub.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DynamicHub.cs
rename to src/SignalR/server/Core/src/DynamicHub.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DynamicHubClients.cs b/src/SignalR/server/Core/src/DynamicHubClients.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DynamicHubClients.cs
rename to src/SignalR/server/Core/src/DynamicHubClients.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Hub.cs b/src/SignalR/server/Core/src/Hub.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Hub.cs
rename to src/SignalR/server/Core/src/Hub.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubCallerContext.cs b/src/SignalR/server/Core/src/HubCallerContext.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubCallerContext.cs
rename to src/SignalR/server/Core/src/HubCallerContext.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubClientsExtensions.cs b/src/SignalR/server/Core/src/HubClientsExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubClientsExtensions.cs
rename to src/SignalR/server/Core/src/HubClientsExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionContext.cs b/src/SignalR/server/Core/src/HubConnectionContext.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionContext.cs
rename to src/SignalR/server/Core/src/HubConnectionContext.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionHandler.cs b/src/SignalR/server/Core/src/HubConnectionHandler.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionHandler.cs
rename to src/SignalR/server/Core/src/HubConnectionHandler.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionStore.cs b/src/SignalR/server/Core/src/HubConnectionStore.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionStore.cs
rename to src/SignalR/server/Core/src/HubConnectionStore.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubLifetimeManager.cs b/src/SignalR/server/Core/src/HubLifetimeManager.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubLifetimeManager.cs
rename to src/SignalR/server/Core/src/HubLifetimeManager.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubMethodNameAttribute.cs b/src/SignalR/server/Core/src/HubMethodNameAttribute.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubMethodNameAttribute.cs
rename to src/SignalR/server/Core/src/HubMethodNameAttribute.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubOptions.cs b/src/SignalR/server/Core/src/HubOptions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubOptions.cs
rename to src/SignalR/server/Core/src/HubOptions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubOptions`T.cs b/src/SignalR/server/Core/src/HubOptions`T.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubOptions`T.cs
rename to src/SignalR/server/Core/src/HubOptions`T.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Hub`T.cs b/src/SignalR/server/Core/src/Hub`T.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Hub`T.cs
rename to src/SignalR/server/Core/src/Hub`T.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IClientProxy.cs b/src/SignalR/server/Core/src/IClientProxy.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IClientProxy.cs
rename to src/SignalR/server/Core/src/IClientProxy.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IGroupManager.cs b/src/SignalR/server/Core/src/IGroupManager.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IGroupManager.cs
rename to src/SignalR/server/Core/src/IGroupManager.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubActivator.cs b/src/SignalR/server/Core/src/IHubActivator.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubActivator.cs
rename to src/SignalR/server/Core/src/IHubActivator.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubCallerClients.cs b/src/SignalR/server/Core/src/IHubCallerClients.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubCallerClients.cs
rename to src/SignalR/server/Core/src/IHubCallerClients.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubCallerClients`T.cs b/src/SignalR/server/Core/src/IHubCallerClients`T.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubCallerClients`T.cs
rename to src/SignalR/server/Core/src/IHubCallerClients`T.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubClients.cs b/src/SignalR/server/Core/src/IHubClients.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubClients.cs
rename to src/SignalR/server/Core/src/IHubClients.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubClients`T.cs b/src/SignalR/server/Core/src/IHubClients`T.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubClients`T.cs
rename to src/SignalR/server/Core/src/IHubClients`T.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubContext.cs b/src/SignalR/server/Core/src/IHubContext.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubContext.cs
rename to src/SignalR/server/Core/src/IHubContext.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubContext`T.cs b/src/SignalR/server/Core/src/IHubContext`T.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubContext`T.cs
rename to src/SignalR/server/Core/src/IHubContext`T.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubProtocolResolver.cs b/src/SignalR/server/Core/src/IHubProtocolResolver.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubProtocolResolver.cs
rename to src/SignalR/server/Core/src/IHubProtocolResolver.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/ISignalRServerBuilder.cs b/src/SignalR/server/Core/src/ISignalRServerBuilder.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/ISignalRServerBuilder.cs
rename to src/SignalR/server/Core/src/ISignalRServerBuilder.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IUserIdProvider.cs b/src/SignalR/server/Core/src/IUserIdProvider.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IUserIdProvider.cs
rename to src/SignalR/server/Core/src/IUserIdProvider.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/AsyncEnumeratorAdapters.cs b/src/SignalR/server/Core/src/Internal/AsyncEnumeratorAdapters.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/AsyncEnumeratorAdapters.cs
rename to src/SignalR/server/Core/src/Internal/AsyncEnumeratorAdapters.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubActivator.cs b/src/SignalR/server/Core/src/Internal/DefaultHubActivator.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubActivator.cs
rename to src/SignalR/server/Core/src/Internal/DefaultHubActivator.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubCallerContext.cs b/src/SignalR/server/Core/src/Internal/DefaultHubCallerContext.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubCallerContext.cs
rename to src/SignalR/server/Core/src/Internal/DefaultHubCallerContext.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubDispatcher.Log.cs b/src/SignalR/server/Core/src/Internal/DefaultHubDispatcher.Log.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubDispatcher.Log.cs
rename to src/SignalR/server/Core/src/Internal/DefaultHubDispatcher.Log.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubDispatcher.cs b/src/SignalR/server/Core/src/Internal/DefaultHubDispatcher.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubDispatcher.cs
rename to src/SignalR/server/Core/src/Internal/DefaultHubDispatcher.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubProtocolResolver.cs b/src/SignalR/server/Core/src/Internal/DefaultHubProtocolResolver.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubProtocolResolver.cs
rename to src/SignalR/server/Core/src/Internal/DefaultHubProtocolResolver.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DynamicClientProxy.cs b/src/SignalR/server/Core/src/Internal/DynamicClientProxy.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DynamicClientProxy.cs
rename to src/SignalR/server/Core/src/Internal/DynamicClientProxy.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/ErrorMessageHelper.cs b/src/SignalR/server/Core/src/Internal/ErrorMessageHelper.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/ErrorMessageHelper.cs
rename to src/SignalR/server/Core/src/Internal/ErrorMessageHelper.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/GroupManager.cs b/src/SignalR/server/Core/src/Internal/GroupManager.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/GroupManager.cs
rename to src/SignalR/server/Core/src/Internal/GroupManager.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubCallerClients.cs b/src/SignalR/server/Core/src/Internal/HubCallerClients.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubCallerClients.cs
rename to src/SignalR/server/Core/src/Internal/HubCallerClients.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubClients.cs b/src/SignalR/server/Core/src/Internal/HubClients.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubClients.cs
rename to src/SignalR/server/Core/src/Internal/HubClients.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubClients`T.cs b/src/SignalR/server/Core/src/Internal/HubClients`T.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubClients`T.cs
rename to src/SignalR/server/Core/src/Internal/HubClients`T.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubContext.cs b/src/SignalR/server/Core/src/Internal/HubContext.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubContext.cs
rename to src/SignalR/server/Core/src/Internal/HubContext.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubContext`T.cs b/src/SignalR/server/Core/src/Internal/HubContext`T.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubContext`T.cs
rename to src/SignalR/server/Core/src/Internal/HubContext`T.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubDispatcher.cs b/src/SignalR/server/Core/src/Internal/HubDispatcher.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubDispatcher.cs
rename to src/SignalR/server/Core/src/Internal/HubDispatcher.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubGroupList.cs b/src/SignalR/server/Core/src/Internal/HubGroupList.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubGroupList.cs
rename to src/SignalR/server/Core/src/Internal/HubGroupList.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubMethodDescriptor.cs b/src/SignalR/server/Core/src/Internal/HubMethodDescriptor.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubMethodDescriptor.cs
rename to src/SignalR/server/Core/src/Internal/HubMethodDescriptor.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubOptionsSetup.cs b/src/SignalR/server/Core/src/Internal/HubOptionsSetup.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubOptionsSetup.cs
rename to src/SignalR/server/Core/src/Internal/HubOptionsSetup.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubOptionsSetup`T.cs b/src/SignalR/server/Core/src/Internal/HubOptionsSetup`T.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubOptionsSetup`T.cs
rename to src/SignalR/server/Core/src/Internal/HubOptionsSetup`T.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubReflectionHelper.cs b/src/SignalR/server/Core/src/Internal/HubReflectionHelper.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubReflectionHelper.cs
rename to src/SignalR/server/Core/src/Internal/HubReflectionHelper.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/Proxies.cs b/src/SignalR/server/Core/src/Internal/Proxies.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/Proxies.cs
rename to src/SignalR/server/Core/src/Internal/Proxies.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/SignalRBuilder.cs b/src/SignalR/server/Core/src/Internal/SignalRBuilder.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/SignalRBuilder.cs
rename to src/SignalR/server/Core/src/Internal/SignalRBuilder.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/SignalRCoreMarkerService.cs b/src/SignalR/server/Core/src/Internal/SignalRCoreMarkerService.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/SignalRCoreMarkerService.cs
rename to src/SignalR/server/Core/src/Internal/SignalRCoreMarkerService.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypeBaseEnumerationExtensions.cs b/src/SignalR/server/Core/src/Internal/TypeBaseEnumerationExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypeBaseEnumerationExtensions.cs
rename to src/SignalR/server/Core/src/Internal/TypeBaseEnumerationExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypedClientBuilder.cs b/src/SignalR/server/Core/src/Internal/TypedClientBuilder.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypedClientBuilder.cs
rename to src/SignalR/server/Core/src/Internal/TypedClientBuilder.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypedHubClients.cs b/src/SignalR/server/Core/src/Internal/TypedHubClients.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypedHubClients.cs
rename to src/SignalR/server/Core/src/Internal/TypedHubClients.cs
diff --git a/src/SignalR/server/Core/src/Microsoft.AspNetCore.SignalR.Core.csproj b/src/SignalR/server/Core/src/Microsoft.AspNetCore.SignalR.Core.csproj
new file mode 100644
index 000000000000..f329f579046e
--- /dev/null
+++ b/src/SignalR/server/Core/src/Microsoft.AspNetCore.SignalR.Core.csproj
@@ -0,0 +1,24 @@
+
+
+
+ Real-time communication framework for ASP.NET Core.
+ netstandard2.0
+ Microsoft.AspNetCore.SignalR
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Properties/AssemblyInfo.cs b/src/SignalR/server/Core/src/Properties/AssemblyInfo.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Properties/AssemblyInfo.cs
rename to src/SignalR/server/Core/src/Properties/AssemblyInfo.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SerializedHubMessage.cs b/src/SignalR/server/Core/src/SerializedHubMessage.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SerializedHubMessage.cs
rename to src/SignalR/server/Core/src/SerializedHubMessage.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SerializedMessage.cs b/src/SignalR/server/Core/src/SerializedMessage.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SerializedMessage.cs
rename to src/SignalR/server/Core/src/SerializedMessage.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SignalRConnectionBuilderExtensions.cs b/src/SignalR/server/Core/src/SignalRConnectionBuilderExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SignalRConnectionBuilderExtensions.cs
rename to src/SignalR/server/Core/src/SignalRConnectionBuilderExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SignalRDependencyInjectionExtensions.cs b/src/SignalR/server/Core/src/SignalRDependencyInjectionExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SignalRDependencyInjectionExtensions.cs
rename to src/SignalR/server/Core/src/SignalRDependencyInjectionExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/AckHandler.cs b/src/SignalR/server/Redis/src/Internal/AckHandler.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/AckHandler.cs
rename to src/SignalR/server/Redis/src/Internal/AckHandler.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/GroupAction.cs b/src/SignalR/server/Redis/src/Internal/GroupAction.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/GroupAction.cs
rename to src/SignalR/server/Redis/src/Internal/GroupAction.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/MessagePackUtil.cs b/src/SignalR/server/Redis/src/Internal/MessagePackUtil.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/MessagePackUtil.cs
rename to src/SignalR/server/Redis/src/Internal/MessagePackUtil.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/RedisChannels.cs b/src/SignalR/server/Redis/src/Internal/RedisChannels.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/RedisChannels.cs
rename to src/SignalR/server/Redis/src/Internal/RedisChannels.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/RedisGroupCommand.cs b/src/SignalR/server/Redis/src/Internal/RedisGroupCommand.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/RedisGroupCommand.cs
rename to src/SignalR/server/Redis/src/Internal/RedisGroupCommand.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/RedisInvocation.cs b/src/SignalR/server/Redis/src/Internal/RedisInvocation.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/RedisInvocation.cs
rename to src/SignalR/server/Redis/src/Internal/RedisInvocation.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/RedisLog.cs b/src/SignalR/server/Redis/src/Internal/RedisLog.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/RedisLog.cs
rename to src/SignalR/server/Redis/src/Internal/RedisLog.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/RedisProtocol.cs b/src/SignalR/server/Redis/src/Internal/RedisProtocol.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/RedisProtocol.cs
rename to src/SignalR/server/Redis/src/Internal/RedisProtocol.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/RedisSubscriptionManager.cs b/src/SignalR/server/Redis/src/Internal/RedisSubscriptionManager.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Internal/RedisSubscriptionManager.cs
rename to src/SignalR/server/Redis/src/Internal/RedisSubscriptionManager.cs
diff --git a/src/SignalR/server/Redis/src/Microsoft.AspNetCore.SignalR.Redis.csproj b/src/SignalR/server/Redis/src/Microsoft.AspNetCore.SignalR.Redis.csproj
new file mode 100644
index 000000000000..c14fa3605cb6
--- /dev/null
+++ b/src/SignalR/server/Redis/src/Microsoft.AspNetCore.SignalR.Redis.csproj
@@ -0,0 +1,20 @@
+
+
+
+ Redis for ASP.NET Core SignalR.
+ netstandard2.0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/RedisDependencyInjectionExtensions.cs b/src/SignalR/server/Redis/src/RedisDependencyInjectionExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/RedisDependencyInjectionExtensions.cs
rename to src/SignalR/server/Redis/src/RedisDependencyInjectionExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/RedisHubLifetimeManager.cs b/src/SignalR/server/Redis/src/RedisHubLifetimeManager.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/RedisHubLifetimeManager.cs
rename to src/SignalR/server/Redis/src/RedisHubLifetimeManager.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/RedisOptions.cs b/src/SignalR/server/Redis/src/RedisOptions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/RedisOptions.cs
rename to src/SignalR/server/Redis/src/RedisOptions.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/Docker.cs b/src/SignalR/server/Redis/test/Docker.cs
similarity index 97%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/Docker.cs
rename to src/SignalR/server/Redis/test/Docker.cs
index fcc7ba066d45..a5f915c21b38 100644
--- a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/Docker.cs
+++ b/src/SignalR/server/Redis/test/Docker.cs
@@ -29,8 +29,8 @@ public Docker(string path)
private static Docker Create()
{
- // Currently Windows Server 2016 doesn't support linux containers which redis is.
- if (string.Equals("True", Environment.GetEnvironmentVariable("APPVEYOR"), StringComparison.OrdinalIgnoreCase))
+ // Currently Windows Server 2016 doesn't support linux containers which redis is on Azure Pipelines builds.
+ if (string.Equals("True", Environment.GetEnvironmentVariable("TF_BUILD"), StringComparison.OrdinalIgnoreCase))
{
return null;
}
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/EchoHub.cs b/src/SignalR/server/Redis/test/EchoHub.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/EchoHub.cs
rename to src/SignalR/server/Redis/test/EchoHub.cs
diff --git a/src/SignalR/server/Redis/test/Microsoft.AspNetCore.SignalR.Redis.Tests.csproj b/src/SignalR/server/Redis/test/Microsoft.AspNetCore.SignalR.Redis.Tests.csproj
new file mode 100644
index 000000000000..5b849f6d8050
--- /dev/null
+++ b/src/SignalR/server/Redis/test/Microsoft.AspNetCore.SignalR.Redis.Tests.csproj
@@ -0,0 +1,20 @@
+
+
+
+ netcoreapp2.1;net461
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/RedisDependencyInjectionExtensionsTests.cs b/src/SignalR/server/Redis/test/RedisDependencyInjectionExtensionsTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/RedisDependencyInjectionExtensionsTests.cs
rename to src/SignalR/server/Redis/test/RedisDependencyInjectionExtensionsTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/RedisEndToEnd.cs b/src/SignalR/server/Redis/test/RedisEndToEnd.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/RedisEndToEnd.cs
rename to src/SignalR/server/Redis/test/RedisEndToEnd.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/RedisHubLifetimeManagerTests.cs b/src/SignalR/server/Redis/test/RedisHubLifetimeManagerTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/RedisHubLifetimeManagerTests.cs
rename to src/SignalR/server/Redis/test/RedisHubLifetimeManagerTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/RedisProtocolTests.cs b/src/SignalR/server/Redis/test/RedisProtocolTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/RedisProtocolTests.cs
rename to src/SignalR/server/Redis/test/RedisProtocolTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/RedisServerFixture.cs b/src/SignalR/server/Redis/test/RedisServerFixture.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/RedisServerFixture.cs
rename to src/SignalR/server/Redis/test/RedisServerFixture.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/SkipIfDockerNotPresentAttribute.cs b/src/SignalR/server/Redis/test/SkipIfDockerNotPresentAttribute.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/SkipIfDockerNotPresentAttribute.cs
rename to src/SignalR/server/Redis/test/SkipIfDockerNotPresentAttribute.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/Startup.cs b/src/SignalR/server/Redis/test/Startup.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/Startup.cs
rename to src/SignalR/server/Redis/test/Startup.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR/GetHttpContextExtensions.cs b/src/SignalR/server/SignalR/src/GetHttpContextExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR/GetHttpContextExtensions.cs
rename to src/SignalR/server/SignalR/src/GetHttpContextExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR/HubRouteBuilder.cs b/src/SignalR/server/SignalR/src/HubRouteBuilder.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR/HubRouteBuilder.cs
rename to src/SignalR/server/SignalR/src/HubRouteBuilder.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR/Microsoft.AspNetCore.SignalR.csproj b/src/SignalR/server/SignalR/src/Microsoft.AspNetCore.SignalR.csproj
similarity index 54%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR/Microsoft.AspNetCore.SignalR.csproj
rename to src/SignalR/server/SignalR/src/Microsoft.AspNetCore.SignalR.csproj
index 885b476430b9..8ead9e77f748 100644
--- a/src/SignalR/src/Microsoft.AspNetCore.SignalR/Microsoft.AspNetCore.SignalR.csproj
+++ b/src/SignalR/server/SignalR/src/Microsoft.AspNetCore.SignalR.csproj
@@ -5,8 +5,8 @@
-
-
+
+
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR/SignalRAppBuilderExtensions.cs b/src/SignalR/server/SignalR/src/SignalRAppBuilderExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR/SignalRAppBuilderExtensions.cs
rename to src/SignalR/server/SignalR/src/SignalRAppBuilderExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR/SignalRDependencyInjectionExtensions.cs b/src/SignalR/server/SignalR/src/SignalRDependencyInjectionExtensions.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR/SignalRDependencyInjectionExtensions.cs
rename to src/SignalR/server/SignalR/src/SignalRDependencyInjectionExtensions.cs
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR/SignalRMarkerService.cs b/src/SignalR/server/SignalR/src/SignalRMarkerService.cs
similarity index 100%
rename from src/SignalR/src/Microsoft.AspNetCore.SignalR/SignalRMarkerService.cs
rename to src/SignalR/server/SignalR/src/SignalRMarkerService.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/AddSignalRTests.cs b/src/SignalR/server/SignalR/test/AddSignalRTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/AddSignalRTests.cs
rename to src/SignalR/server/SignalR/test/AddSignalRTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/AuthConnectionHandler.cs b/src/SignalR/server/SignalR/test/AuthConnectionHandler.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/AuthConnectionHandler.cs
rename to src/SignalR/server/SignalR/test/AuthConnectionHandler.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/CancellationDisposable.cs b/src/SignalR/server/SignalR/test/CancellationDisposable.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/CancellationDisposable.cs
rename to src/SignalR/server/SignalR/test/CancellationDisposable.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/ClientProxyTests.cs b/src/SignalR/server/SignalR/test/ClientProxyTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/ClientProxyTests.cs
rename to src/SignalR/server/SignalR/test/ClientProxyTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/DefaultHubActivatorTests.cs b/src/SignalR/server/SignalR/test/DefaultHubActivatorTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/DefaultHubActivatorTests.cs
rename to src/SignalR/server/SignalR/test/DefaultHubActivatorTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/DefaultHubLifetimeManagerTests.cs b/src/SignalR/server/SignalR/test/DefaultHubLifetimeManagerTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/DefaultHubLifetimeManagerTests.cs
rename to src/SignalR/server/SignalR/test/DefaultHubLifetimeManagerTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/DefaultTransportFactoryTests.cs b/src/SignalR/server/SignalR/test/DefaultTransportFactoryTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/DefaultTransportFactoryTests.cs
rename to src/SignalR/server/SignalR/test/DefaultTransportFactoryTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/EchoConnectionHandler.cs b/src/SignalR/server/SignalR/test/EchoConnectionHandler.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/EchoConnectionHandler.cs
rename to src/SignalR/server/SignalR/test/EchoConnectionHandler.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/EndToEndTests.cs b/src/SignalR/server/SignalR/test/EndToEndTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/EndToEndTests.cs
rename to src/SignalR/server/SignalR/test/EndToEndTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HttpHeaderConnectionHandler.cs b/src/SignalR/server/SignalR/test/HttpHeaderConnectionHandler.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HttpHeaderConnectionHandler.cs
rename to src/SignalR/server/SignalR/test/HttpHeaderConnectionHandler.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTestUtils/Hubs.cs b/src/SignalR/server/SignalR/test/HubConnectionHandlerTestUtils/Hubs.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTestUtils/Hubs.cs
rename to src/SignalR/server/SignalR/test/HubConnectionHandlerTestUtils/Hubs.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTestUtils/Utils.cs b/src/SignalR/server/SignalR/test/HubConnectionHandlerTestUtils/Utils.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTestUtils/Utils.cs
rename to src/SignalR/server/SignalR/test/HubConnectionHandlerTestUtils/Utils.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTests.cs b/src/SignalR/server/SignalR/test/HubConnectionHandlerTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTests.cs
rename to src/SignalR/server/SignalR/test/HubConnectionHandlerTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubReflectionHelperTests.cs b/src/SignalR/server/SignalR/test/HubReflectionHelperTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubReflectionHelperTests.cs
rename to src/SignalR/server/SignalR/test/HubReflectionHelperTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Internal/DefaultHubProtocolResolverTests.cs b/src/SignalR/server/SignalR/test/Internal/DefaultHubProtocolResolverTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Internal/DefaultHubProtocolResolverTests.cs
rename to src/SignalR/server/SignalR/test/Internal/DefaultHubProtocolResolverTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Internal/TypedClientBuilderTests.cs b/src/SignalR/server/SignalR/test/Internal/TypedClientBuilderTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Internal/TypedClientBuilderTests.cs
rename to src/SignalR/server/SignalR/test/Internal/TypedClientBuilderTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/MapSignalRTests.cs b/src/SignalR/server/SignalR/test/MapSignalRTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/MapSignalRTests.cs
rename to src/SignalR/server/SignalR/test/MapSignalRTests.cs
diff --git a/src/SignalR/server/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.csproj b/src/SignalR/server/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.csproj
new file mode 100644
index 000000000000..b003033eb43e
--- /dev/null
+++ b/src/SignalR/server/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.csproj
@@ -0,0 +1,37 @@
+
+
+
+ netcoreapp2.1;net461
+
+
+ true
+ win7-x86
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/SerializedHubMessageTests.cs b/src/SignalR/server/SignalR/test/SerializedHubMessageTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/SerializedHubMessageTests.cs
rename to src/SignalR/server/SignalR/test/SerializedHubMessageTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Startup.cs b/src/SignalR/server/SignalR/test/Startup.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Startup.cs
rename to src/SignalR/server/SignalR/test/Startup.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/UncreatableHub.cs b/src/SignalR/server/SignalR/test/UncreatableHub.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/UncreatableHub.cs
rename to src/SignalR/server/SignalR/test/UncreatableHub.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/WebSocketsTransportTests.cs b/src/SignalR/server/SignalR/test/WebSocketsTransportTests.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/WebSocketsTransportTests.cs
rename to src/SignalR/server/SignalR/test/WebSocketsTransportTests.cs
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/WriteThenCloseConnectionHandler.cs b/src/SignalR/server/SignalR/test/WriteThenCloseConnectionHandler.cs
similarity index 100%
rename from src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/WriteThenCloseConnectionHandler.cs
rename to src/SignalR/server/SignalR/test/WriteThenCloseConnectionHandler.cs
diff --git a/src/SignalR/src/Directory.Build.props b/src/SignalR/src/Directory.Build.props
deleted file mode 100644
index 54ffcd996f97..000000000000
--- a/src/SignalR/src/Directory.Build.props
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
-
- $(NoWarn);CS1591
- true
- aspnetcore;signalr
- false
-
-
-
-
-
-
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Microsoft.AspNetCore.Http.Connections.Client.csproj b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Microsoft.AspNetCore.Http.Connections.Client.csproj
deleted file mode 100644
index 4c8534efe82a..000000000000
--- a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Microsoft.AspNetCore.Http.Connections.Client.csproj
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
-
- Client for ASP.NET Core Connection Handlers
- netstandard2.0;netcoreapp2.1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/Microsoft.AspNetCore.Http.Connections.Common.csproj b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/Microsoft.AspNetCore.Http.Connections.Common.csproj
deleted file mode 100644
index d398daf38c51..000000000000
--- a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/Microsoft.AspNetCore.Http.Connections.Common.csproj
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
- Common primitives for ASP.NET Connection Handlers and clients
- netstandard2.0
- Microsoft.AspNetCore.Http.Connections
- true
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Microsoft.AspNetCore.Http.Connections.csproj b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Microsoft.AspNetCore.Http.Connections.csproj
deleted file mode 100644
index 4c572c8aba08..000000000000
--- a/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Microsoft.AspNetCore.Http.Connections.csproj
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
- Components for providing real-time bi-directional communication across the Web.
- netstandard2.0;netcoreapp2.1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/Microsoft.AspNetCore.SignalR.Client.Core.csproj b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/Microsoft.AspNetCore.SignalR.Client.Core.csproj
deleted file mode 100644
index 1d91bf64cc68..000000000000
--- a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/Microsoft.AspNetCore.SignalR.Client.Core.csproj
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
- Client for ASP.NET Core SignalR
- netstandard2.0
- Microsoft.AspNetCore.SignalR.Client
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/Microsoft.AspNetCore.SignalR.Client.csproj b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/Microsoft.AspNetCore.SignalR.Client.csproj
deleted file mode 100644
index ed9c13e79236..000000000000
--- a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/Microsoft.AspNetCore.SignalR.Client.csproj
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
- Client for ASP.NET Core SignalR
- netstandard2.0
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Microsoft.AspNetCore.SignalR.Common.csproj b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Microsoft.AspNetCore.SignalR.Common.csproj
deleted file mode 100644
index 08fec138f727..000000000000
--- a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Microsoft.AspNetCore.SignalR.Common.csproj
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
- Common serialiation primitives for SignalR Clients Servers
- netstandard2.0;netcoreapp2.1
- Microsoft.AspNetCore.SignalR
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Microsoft.AspNetCore.SignalR.Core.csproj b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Microsoft.AspNetCore.SignalR.Core.csproj
deleted file mode 100644
index 728a93a055c3..000000000000
--- a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Microsoft.AspNetCore.SignalR.Core.csproj
+++ /dev/null
@@ -1,27 +0,0 @@
-
-
-
- Real-time communication framework for ASP.NET Core.
- netstandard2.0
- Microsoft.AspNetCore.SignalR
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/Microsoft.AspNetCore.SignalR.Protocols.Json.csproj b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/Microsoft.AspNetCore.SignalR.Protocols.Json.csproj
deleted file mode 100644
index 47f37af697e4..000000000000
--- a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/Microsoft.AspNetCore.SignalR.Protocols.Json.csproj
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
- Implements the SignalR Hub Protocol over JSON.
- netstandard2.0
- Microsoft.AspNetCore.SignalR
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/Microsoft.AspNetCore.SignalR.Protocols.MessagePack.csproj b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/Microsoft.AspNetCore.SignalR.Protocols.MessagePack.csproj
deleted file mode 100644
index f92a2c9aad4d..000000000000
--- a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/Microsoft.AspNetCore.SignalR.Protocols.MessagePack.csproj
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
-
- Implements the SignalR Hub Protocol over MsgPack.
- netstandard2.0
- Microsoft.AspNetCore.SignalR
- true
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Microsoft.AspNetCore.SignalR.Redis.csproj b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Microsoft.AspNetCore.SignalR.Redis.csproj
deleted file mode 100644
index 8862770b75db..000000000000
--- a/src/SignalR/src/Microsoft.AspNetCore.SignalR.Redis/Microsoft.AspNetCore.SignalR.Redis.csproj
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
- Redis for ASP.NET Core SignalR.
- netstandard2.0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/startvs.cmd b/src/SignalR/startvs.cmd
new file mode 100644
index 000000000000..f5faa83216fd
--- /dev/null
+++ b/src/SignalR/startvs.cmd
@@ -0,0 +1,3 @@
+@ECHO OFF
+
+%~dp0..\..\startvs.cmd %~dp0SignalR.sln
diff --git a/src/SignalR/test/Directory.Build.props b/src/SignalR/test/Directory.Build.props
deleted file mode 100644
index ae9c6b532287..000000000000
--- a/src/SignalR/test/Directory.Build.props
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
- win7-x86
-
-
-
-
-
-
-
-
-
-
-
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
deleted file mode 100644
index 7c2e5db5a1b4..000000000000
--- a/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/Microsoft.AspNetCore.Http.Connections.Tests.csproj
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
- netcoreapp2.1;net461
- win7-x86
-
-
-
-
-
- PreserveNewest
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Microsoft.AspNetCore.SignalR.Client.FunctionalTests.csproj b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Microsoft.AspNetCore.SignalR.Client.FunctionalTests.csproj
deleted file mode 100644
index 961decb92fab..000000000000
--- a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Microsoft.AspNetCore.SignalR.Client.FunctionalTests.csproj
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
- netcoreapp2.1;net461
-
-
-
-
-
-
-
-
- PreserveNewest
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/Microsoft.AspNetCore.SignalR.Client.Tests.csproj b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/Microsoft.AspNetCore.SignalR.Client.Tests.csproj
deleted file mode 100644
index 8b1f0db510c1..000000000000
--- a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/Microsoft.AspNetCore.SignalR.Client.Tests.csproj
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
- netcoreapp2.1;net461
-
-
-
-
-
-
-
-
-
-
- PreserveNewest
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Microsoft.AspNetCore.SignalR.Common.Tests.csproj b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Microsoft.AspNetCore.SignalR.Common.Tests.csproj
deleted file mode 100644
index 5de838714e0b..000000000000
--- a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Microsoft.AspNetCore.SignalR.Common.Tests.csproj
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
- netcoreapp2.1;net461
-
-
-
-
-
-
-
-
-
- PreserveNewest
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/Microsoft.AspNetCore.SignalR.Redis.Tests.csproj b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/Microsoft.AspNetCore.SignalR.Redis.Tests.csproj
deleted file mode 100644
index 5e1fcadea7fd..000000000000
--- a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Redis.Tests/Microsoft.AspNetCore.SignalR.Redis.Tests.csproj
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
- netcoreapp2.1;net461
-
-
-
-
- PreserveNewest
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/Microsoft.AspNetCore.SignalR.Tests.Utils.csproj b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/Microsoft.AspNetCore.SignalR.Tests.Utils.csproj
deleted file mode 100644
index b57b02f6efe6..000000000000
--- a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/Microsoft.AspNetCore.SignalR.Tests.Utils.csproj
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
- netcoreapp2.1;net461
- Microsoft.AspNetCore.SignalR.Tests
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Microsoft.AspNetCore.SignalR.Tests.csproj b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Microsoft.AspNetCore.SignalR.Tests.csproj
deleted file mode 100644
index b4fbcf3c196e..000000000000
--- a/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Microsoft.AspNetCore.SignalR.Tests.csproj
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
-
- netcoreapp2.1;net461
-
-
- true
- win7-x86
-
-
-
-
-
-
-
-
- PreserveNewest
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/SignalR/version.props b/src/SignalR/version.props
deleted file mode 100644
index de104caa6cf6..000000000000
--- a/src/SignalR/version.props
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
- 1.0.4
- rtm
- $(VersionPrefix)
- $(VersionPrefix)-$(VersionSuffix)-final
- t000
- a-
- $(FeatureBranchVersionPrefix)$(VersionSuffix)-$([System.Text.RegularExpressions.Regex]::Replace('$(FeatureBranchVersionSuffix)', '[^\w-]', '-'))
- $(VersionSuffix)-$(BuildNumber)
-
-
diff --git a/src/SignalR/test/xunit.runner.json b/src/SignalR/xunit.runner.json
similarity index 100%
rename from src/SignalR/test/xunit.runner.json
rename to src/SignalR/xunit.runner.json