diff --git a/.gitattributes b/.gitattributes deleted file mode 100644 index cc84a50010fab1bf9fee4ff0abffdef77d805e05..0000000000000000000000000000000000000000 --- a/.gitattributes +++ /dev/null @@ -1,58 +0,0 @@ -*.doc diff=astextplain -*.DOC diff=astextplain -*.docx diff=astextplain -*.DOCX diff=astextplain -*.dot diff=astextplain -*.DOT diff=astextplain -*.pdf diff=astextplain -*.PDF diff=astextplain -*.rtf diff=astextplain -*.RTF diff=astextplain - -*.jpg binary -*.png binary -*.gif binary - -*.cs text=auto diff=csharp -*.vb text=auto -*.resx text=auto -*.c text=auto -*.cpp text=auto -*.cxx text=auto -*.h text=auto -*.hxx text=auto -*.py text=auto -*.rb text=auto -*.java text=auto -*.html text=auto -*.htm text=auto -*.css text=auto -*.scss text=auto -*.sass text=auto -*.less text=auto -*.js text=auto -*.lisp text=auto -*.clj text=auto -*.sql text=auto -*.php text=auto -*.lua text=auto -*.m text=auto -*.asm text=auto -*.erl text=auto -*.fs text=auto -*.fsx text=auto -*.hs text=auto - -*.csproj text=auto -*.vbproj text=auto -*.fsproj text=auto -*.dbproj text=auto -*.sln text=auto eol=crlf - -*.sh eol=lf - -# Workaround for npm changing line endings from CRLF to LF on Windows. Should be fixed in npm 5.8.0. -# https://github.com/npm/npm/issues/17161#issuecomment-337696678 -# https://github.com/npm/npm/releases/tag/v5.8.0-next.0 -package.json text eol=lf -package-lock.json text eol=lf diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index 09e555e864e0f86c0020403b7c31c477ce694d8f..0000000000000000000000000000000000000000 --- a/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,19 +0,0 @@ -### If you believe you have an issue that affects the security of the platform please do NOT create an issue and instead email your issue details to secure@microsoft.com. Your report may be eligible for our [bug bounty](https://technet.microsoft.com/en-us/mt764065.aspx). - -### Please consider the following before filing an issue - -* If you are using NuGet Packages that start with `Microsoft.AspNet.SignalR`, use the issue tracker at https://github.com/SignalR/SignalR to report the issue. This -repository is for packages that start with `Microsoft.AspNetCore.SignalR` (and NPM packages that start with `@aspnet/signalr`) - -### Please include as much of the following as you can in your bug report - -* Versions of Server-Side NuGet Packages: -* Versions of Client-Side NuGet/NPM Packages: -* Are you using the C# client or the JavaScript client: -* The Server you are using (Kestrel/HttpSysServer/IIS/IIS Express/Azure Web App/etc.): -* The Operating System on the Server (Windows/Linux/macOS): -* The Operating System on the Client (Windows/Linux/macOS): -* The Browser on the client, if using the JavaScript client (IE/Chrome/Edge/Firefox/etc.): -* Please use the Diagnostics Guide at https://github.com/aspnet/SignalR/wiki/Diagnostics-Guide to collect server-side and client-side logs and network traces if possible. Please **do not** put the traces and logs in the Issue text as they are quite large. The Diagnostics Guide describes how to attach them to the issue. - -When in doubt, feel free to file the issue, we're happy to help answer questions. We also suggest using the `asp.net-core-signalr` tag on StackOverflow to ask questions. diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 537cb2cac5213d8b5b81a5cbf2a3b18dd70e8cfe..0000000000000000000000000000000000000000 --- a/.travis.yml +++ /dev/null @@ -1,29 +0,0 @@ -language: csharp -sudo: required -dist: trusty -services: -- docker -env: - global: - - SIGNALR_TESTS_VERBOSE: 1 - - TRAVIS_NODE_VERSION: 8.9.3 -mono: none -os: -- linux -- osx -osx_image: xcode8.2 -addons: - chrome: stable - apt: - packages: - - libunwind8 -branches: - only: - - master - - /^release\/.*$/ - - /^(.*\/)?ci-.*$/ -before_install: -- nvm install $TRAVIS_NODE_VERSION -- if test "$TRAVIS_OS_NAME" == "linux"; then docker pull redis; fi -script: -- ./build.sh --ci diff --git a/.vscode/launch.json b/.vscode/launch.json deleted file mode 100644 index cc0f2cbe68f679a18bce245a9b1f3bf25c5ea09e..0000000000000000000000000000000000000000 --- a/.vscode/launch.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "version": "0.2.0", - "configurations": [ - { - "type": "java", - "name": "Java - Debug (Launch)", - "request": "launch", - "cwd": "${workspaceFolder}/clients/java/", - "console": "externalTerminal", - "stopOnEntry": false, - "mainClass": "com.microsoft.signalr.sample.Chat", - "args": "" - }, - { - "type": "node", - "request": "attach", - "name": "Node - Attach by Process ID", - "processId": "${command:PickProcess}" - }, - { - "type": "node", - "request": "launch", - "name": "Jest - All", - "program": "${workspaceFolder}/clients/ts/common/node_modules/jest/bin/jest", - "cwd": "${workspaceFolder}/clients/ts", - "args": ["--runInBand"], - "console": "integratedTerminal", - "internalConsoleOptions": "neverOpen" - }, - { - "type": "node", - "request": "launch", - "name": "Jest - Current File", - "program": "${workspaceFolder}/clients/ts/common/node_modules/jest/bin/jest", - "cwd": "${workspaceFolder}/clients/ts", - "args": ["${relativeFile}"], - "console": "integratedTerminal", - "internalConsoleOptions": "neverOpen" - } - ] -} \ No newline at end of file diff --git a/.vsts-pipelines/builds/ci-internal.yml b/.vsts-pipelines/builds/ci-internal.yml deleted file mode 100644 index 4d6b5c7444694002a786b364b3f707c508366363..0000000000000000000000000000000000000000 --- a/.vsts-pipelines/builds/ci-internal.yml +++ /dev/null @@ -1,19 +0,0 @@ -trigger: -- master -- release/* - -resources: - repositories: - - repository: buildtools - type: git - name: aspnet-BuildTools - ref: refs/heads/master - -jobs: -- template: .azure/templates/project-ci.yml@buildtools - parameters: - beforeBuild: - - task: NodeTool@0 - displayName: Use Node 8.x - inputs: - versionSpec: 8.x diff --git a/.vsts-pipelines/builds/ci-public.yml b/.vsts-pipelines/builds/ci-public.yml deleted file mode 100644 index 5662cbc57b773d31b0a48de87dc24bc0c59c7e13..0000000000000000000000000000000000000000 --- a/.vsts-pipelines/builds/ci-public.yml +++ /dev/null @@ -1,21 +0,0 @@ -trigger: -- master -- release/* - -# See https://github.com/aspnet/BuildTools -resources: - repositories: - - repository: buildtools - type: github - endpoint: DotNet-Bot GitHub Connection - name: aspnet/BuildTools - ref: refs/heads/master - -jobs: -- template: .azure/templates/project-ci.yml@buildtools - parameters: - beforeBuild: - - task: NodeTool@0 - displayName: Use Node 8.x - inputs: - versionSpec: 8.x diff --git a/.vsts-pipelines/builds/slow-tests-internal.yml b/.vsts-pipelines/builds/slow-tests-internal.yml deleted file mode 100644 index dbb62aacfbebfd82c9e3dc4ea10a62a6f480b970..0000000000000000000000000000000000000000 --- a/.vsts-pipelines/builds/slow-tests-internal.yml +++ /dev/null @@ -1,46 +0,0 @@ -trigger: -- master -- release/* - -phases: - - phase: "Build" - queue: - name: Hosted VS2017 - steps: - - task: NodeTool@0 - displayName: Use Node >=9.11.1 - inputs: - versionSpec: '>=9.11.1' - checkLatest: true - - - task: BatchScript@1 - displayName: Build - inputs: - filename: './build.cmd' - arguments: '/p:SkipTests=true' - modifyEnvironment: false - - - task: PowerShell@1 - displayName: Publish Samples - inputs: - scriptName: './build/publish-apps.ps1' - arguments: '-RootDirectory $(Build.SourcesDirectory) -CommitHash $(Build.SourceVersion) -BranchName $(Build.SourceBranch) -BuildNumber $(Build.BuildNumber)' - - - task: AzureRmWebAppDeployment@3 - displayName: Deploy FunctionalTests - inputs: - azureSubscription: SignalR Functional Testing Azure Connection - WebAppName: '$(Parameters.FunctionalTestAppName)' - Package: '$(Build.SourcesDirectory)/artifacts/apps/FunctionalTests' - TakeAppOfflineFlag: true - continueOnError: true - - - task: AzureRmWebAppDeployment@3 - displayName: Deploy SignalRSamples - inputs: - azureSubscription: SignalR Functional Testing Azure Connection - WebAppName: '$(Parameters.SamplesAppName)' - Package: '$(Build.SourcesDirectory)/artifacts/apps/SignalRSamples' - TakeAppOfflineFlag: true - continueOnError: true - diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md deleted file mode 100644 index eac4268e4c97dc979c89a79ed8705c9998506413..0000000000000000000000000000000000000000 --- a/CONTRIBUTING.md +++ /dev/null @@ -1,4 +0,0 @@ -Contributing -====== - -Information on contributing to this repo is in the [Contributing Guide](https://github.com/aspnet/Home/blob/master/CONTRIBUTING.md) in the Home repo. diff --git a/LICENSE.txt b/LICENSE.txt deleted file mode 100644 index b3b180cd51e903437bdd4a37c1c8f054b2a3a131..0000000000000000000000000000000000000000 --- a/LICENSE.txt +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright (c) .NET Foundation and Contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/NuGet.config b/NuGet.config deleted file mode 100644 index 1280d2db385cd4c9bee70522bc5277f60fb3c5e2..0000000000000000000000000000000000000000 --- a/NuGet.config +++ /dev/null @@ -1,7 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<configuration> - <packageSources> - <clear /> - <!-- Restore sources should be defined in build/sources.props --> - </packageSources> -</configuration> diff --git a/build.cmd b/build.cmd deleted file mode 100644 index c0050bda125e73f3745de70a4021262eaa048c7b..0000000000000000000000000000000000000000 --- a/build.cmd +++ /dev/null @@ -1,2 +0,0 @@ -@ECHO OFF -PowerShell -NoProfile -NoLogo -ExecutionPolicy unrestricted -Command "[System.Threading.Thread]::CurrentThread.CurrentCulture = ''; [System.Threading.Thread]::CurrentThread.CurrentUICulture = '';& '%~dp0run.ps1' default-build %*; exit $LASTEXITCODE" diff --git a/build.sh b/build.sh deleted file mode 100755 index 98a4b227658413eca2adb0d1d2d68178a80155cf..0000000000000000000000000000000000000000 --- a/build.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail -DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" - -# Call "sync" between "chmod" and execution to prevent "text file busy" error in Docker (aufs) -chmod +x "$DIR/run.sh"; sync -"$DIR/run.sh" default-build "$@" diff --git a/clients/cpp/test/gtest/googletest b/clients/cpp/test/gtest/googletest deleted file mode 160000 index 4e4df226fc197c0dda6e37f5c8c3845ca1e73a49..0000000000000000000000000000000000000000 --- a/clients/cpp/test/gtest/googletest +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 4e4df226fc197c0dda6e37f5c8c3845ca1e73a49 diff --git a/korebuild-lock.txt b/korebuild-lock.txt deleted file mode 100644 index 3400cb92d8b7c024a62da952e21e07fef66cd082..0000000000000000000000000000000000000000 --- a/korebuild-lock.txt +++ /dev/null @@ -1,2 +0,0 @@ -version:3.0.0-build-20181114.5 -commithash:880e9a204d4ee4a18dfd83c9fb05a192a28bca60 diff --git a/korebuild.json b/korebuild.json deleted file mode 100644 index ce2e15a0550b32378ec5e497417056e8fbf0d661..0000000000000000000000000000000000000000 --- a/korebuild.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "$schema": "https://raw.githubusercontent.com/aspnet/BuildTools/master/tools/korebuild.schema.json", - "channel": "master", - "toolsets": { - "nodejs": { - "required": true, - "minVersion": "8.0" - } - } -} diff --git a/run.cmd b/run.cmd deleted file mode 100644 index d52d5c7e689e8108ed0f0b83a22b61375fde8fef..0000000000000000000000000000000000000000 --- a/run.cmd +++ /dev/null @@ -1,2 +0,0 @@ -@ECHO OFF -PowerShell -NoProfile -NoLogo -ExecutionPolicy unrestricted -Command "[System.Threading.Thread]::CurrentThread.CurrentCulture = ''; [System.Threading.Thread]::CurrentThread.CurrentUICulture = '';& '%~dp0run.ps1' %*; exit $LASTEXITCODE" diff --git a/run.ps1 b/run.ps1 deleted file mode 100644 index 34604c7175877351351d0a60c3f60c90673c8cdf..0000000000000000000000000000000000000000 --- a/run.ps1 +++ /dev/null @@ -1,209 +0,0 @@ -#!/usr/bin/env powershell -#requires -version 4 - -<# -.SYNOPSIS -Executes KoreBuild commands. - -.DESCRIPTION -Downloads korebuild if required. Then executes the KoreBuild command. To see available commands, execute with `-Command help`. - -.PARAMETER Command -The KoreBuild command to run. - -.PARAMETER Path -The folder to build. Defaults to the folder containing this script. - -.PARAMETER Channel -The channel of KoreBuild to download. Overrides the value from the config file. - -.PARAMETER DotNetHome -The directory where .NET Core tools will be stored. - -.PARAMETER ToolsSource -The base url where build tools can be downloaded. Overrides the value from the config file. - -.PARAMETER Update -Updates KoreBuild to the latest version even if a lock file is present. - -.PARAMETER Reinstall -Re-installs KoreBuild - -.PARAMETER ConfigFile -The path to the configuration file that stores values. Defaults to korebuild.json. - -.PARAMETER ToolsSourceSuffix -The Suffix to append to the end of the ToolsSource. Useful for query strings in blob stores. - -.PARAMETER CI -Sets up CI specific settings and variables. - -.PARAMETER Arguments -Arguments to be passed to the command - -.NOTES -This function will create a file $PSScriptRoot/korebuild-lock.txt. This lock file can be committed to source, but does not have to be. -When the lockfile is not present, KoreBuild will create one using latest available version from $Channel. - -The $ConfigFile is expected to be an JSON file. It is optional, and the configuration values in it are optional as well. Any options set -in the file are overridden by command line parameters. - -.EXAMPLE -Example config file: -```json -{ - "$schema": "https://raw.githubusercontent.com/aspnet/BuildTools/master/tools/korebuild.schema.json", - "channel": "master", - "toolsSource": "https://aspnetcore.blob.core.windows.net/buildtools" -} -``` -#> -[CmdletBinding(PositionalBinding = $false)] -param( - [Parameter(Mandatory = $true, Position = 0)] - [string]$Command, - [string]$Path = $PSScriptRoot, - [Alias('c')] - [string]$Channel, - [Alias('d')] - [string]$DotNetHome, - [Alias('s')] - [string]$ToolsSource, - [Alias('u')] - [switch]$Update, - [switch]$Reinstall, - [string]$ToolsSourceSuffix, - [string]$ConfigFile = $null, - [switch]$CI, - [Parameter(ValueFromRemainingArguments = $true)] - [string[]]$Arguments -) - -Set-StrictMode -Version 2 -$ErrorActionPreference = 'Stop' - -# -# Functions -# - -function Get-KoreBuild { - - $lockFile = Join-Path $Path 'korebuild-lock.txt' - - if (!(Test-Path $lockFile) -or $Update) { - Get-RemoteFile "$ToolsSource/korebuild/channels/$Channel/latest.txt" $lockFile $ToolsSourceSuffix - } - - $version = Get-Content $lockFile | Where-Object { $_ -like 'version:*' } | Select-Object -first 1 - if (!$version) { - Write-Error "Failed to parse version from $lockFile. Expected a line that begins with 'version:'" - } - $version = $version.TrimStart('version:').Trim() - $korebuildPath = Join-Paths $DotNetHome ('buildtools', 'korebuild', $version) - - if ($Reinstall -and (Test-Path $korebuildPath)) { - Remove-Item -Force -Recurse $korebuildPath - } - - if (!(Test-Path $korebuildPath)) { - Write-Host -ForegroundColor Magenta "Downloading KoreBuild $version" - New-Item -ItemType Directory -Path $korebuildPath | Out-Null - $remotePath = "$ToolsSource/korebuild/artifacts/$version/korebuild.$version.zip" - - try { - $tmpfile = Join-Path ([IO.Path]::GetTempPath()) "KoreBuild-$([guid]::NewGuid()).zip" - Get-RemoteFile $remotePath $tmpfile $ToolsSourceSuffix - if (Get-Command -Name 'Microsoft.PowerShell.Archive\Expand-Archive' -ErrorAction Ignore) { - # Use built-in commands where possible as they are cross-plat compatible - Microsoft.PowerShell.Archive\Expand-Archive -Path $tmpfile -DestinationPath $korebuildPath - } - else { - # Fallback to old approach for old installations of PowerShell - Add-Type -AssemblyName System.IO.Compression.FileSystem - [System.IO.Compression.ZipFile]::ExtractToDirectory($tmpfile, $korebuildPath) - } - } - catch { - Remove-Item -Recurse -Force $korebuildPath -ErrorAction Ignore - throw - } - finally { - Remove-Item $tmpfile -ErrorAction Ignore - } - } - - return $korebuildPath -} - -function Join-Paths([string]$path, [string[]]$childPaths) { - $childPaths | ForEach-Object { $path = Join-Path $path $_ } - return $path -} - -function Get-RemoteFile([string]$RemotePath, [string]$LocalPath, [string]$RemoteSuffix) { - if ($RemotePath -notlike 'http*') { - Copy-Item $RemotePath $LocalPath - return - } - - $retries = 10 - while ($retries -gt 0) { - $retries -= 1 - try { - Invoke-WebRequest -UseBasicParsing -Uri $($RemotePath + $RemoteSuffix) -OutFile $LocalPath - return - } - catch { - Write-Verbose "Request failed. $retries retries remaining" - } - } - - Write-Error "Download failed: '$RemotePath'." -} - -# -# Main -# - -# Load configuration or set defaults - -$Path = Resolve-Path $Path -if (!$ConfigFile) { $ConfigFile = Join-Path $Path 'korebuild.json' } - -if (Test-Path $ConfigFile) { - try { - $config = Get-Content -Raw -Encoding UTF8 -Path $ConfigFile | ConvertFrom-Json - if ($config) { - if (!($Channel) -and (Get-Member -Name 'channel' -InputObject $config)) { [string] $Channel = $config.channel } - if (!($ToolsSource) -and (Get-Member -Name 'toolsSource' -InputObject $config)) { [string] $ToolsSource = $config.toolsSource} - } - } - catch { - Write-Host -ForegroundColor Red $Error[0] - Write-Error "$ConfigFile contains invalid JSON." - exit 1 - } -} - -if (!$DotNetHome) { - $DotNetHome = if ($env:DOTNET_HOME) { $env:DOTNET_HOME } ` - elseif ($env:USERPROFILE) { Join-Path $env:USERPROFILE '.dotnet'} ` - elseif ($env:HOME) {Join-Path $env:HOME '.dotnet'}` - else { Join-Path $PSScriptRoot '.dotnet'} -} - -if (!$Channel) { $Channel = 'master' } -if (!$ToolsSource) { $ToolsSource = 'https://aspnetcore.blob.core.windows.net/buildtools' } - -# Execute - -$korebuildPath = Get-KoreBuild -Import-Module -Force -Scope Local (Join-Path $korebuildPath 'KoreBuild.psd1') - -try { - Set-KoreBuildSettings -ToolsSource $ToolsSource -DotNetHome $DotNetHome -RepoPath $Path -ConfigFile $ConfigFile -CI:$CI - Invoke-KoreBuildCommand $Command @Arguments -} -finally { - Remove-Module 'KoreBuild' -ErrorAction Ignore -} diff --git a/run.sh b/run.sh deleted file mode 100755 index 4c1fed5646ca811ed28e7bd5f47ec62da9a1fe9f..0000000000000000000000000000000000000000 --- a/run.sh +++ /dev/null @@ -1,256 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail - -# -# variables -# - -RESET="\033[0m" -RED="\033[0;31m" -YELLOW="\033[0;33m" -MAGENTA="\033[0;95m" -DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" -[ -z "${DOTNET_HOME:-}" ] && DOTNET_HOME="$HOME/.dotnet" -verbose=false -update=false -reinstall=false -repo_path="$DIR" -channel='' -tools_source='' -tools_source_suffix='' -ci=false - -# -# Functions -# -__usage() { - echo "Usage: $(basename "${BASH_SOURCE[0]}") command [options] [[--] <Arguments>...]" - echo "" - echo "Arguments:" - echo " command The command to be run." - echo " <Arguments>... Arguments passed to the command. Variable number of arguments allowed." - echo "" - echo "Options:" - echo " --verbose Show verbose output." - echo " -c|--channel <CHANNEL> The channel of KoreBuild to download. Overrides the value from the config file.." - echo " --config-file <FILE> The path to the configuration file that stores values. Defaults to korebuild.json." - echo " -d|--dotnet-home <DIR> The directory where .NET Core tools will be stored. Defaults to '\$DOTNET_HOME' or '\$HOME/.dotnet." - echo " --path <PATH> The directory to build. Defaults to the directory containing the script." - echo " -s|--tools-source|-ToolsSource <URL> The base url where build tools can be downloaded. Overrides the value from the config file." - echo " --tools-source-suffix|-ToolsSourceSuffix <SUFFIX> The suffix to append to tools-source. Useful for query strings." - echo " -u|--update Update to the latest KoreBuild even if the lock file is present." - echo " --reinstall Reinstall KoreBuild." - echo " --ci Apply CI specific settings and environment variables." - echo "" - echo "Description:" - echo " This function will create a file \$DIR/korebuild-lock.txt. This lock file can be committed to source, but does not have to be." - echo " When the lockfile is not present, KoreBuild will create one using latest available version from \$channel." - - if [[ "${1:-}" != '--no-exit' ]]; then - exit 2 - fi -} - -get_korebuild() { - local version - local lock_file="$repo_path/korebuild-lock.txt" - if [ ! -f "$lock_file" ] || [ "$update" = true ]; then - __get_remote_file "$tools_source/korebuild/channels/$channel/latest.txt" "$lock_file" "$tools_source_suffix" - fi - version="$(grep 'version:*' -m 1 "$lock_file")" - if [[ "$version" == '' ]]; then - __error "Failed to parse version from $lock_file. Expected a line that begins with 'version:'" - return 1 - fi - version="$(echo "${version#version:}" | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')" - local korebuild_path="$DOTNET_HOME/buildtools/korebuild/$version" - - if [ "$reinstall" = true ] && [ -d "$korebuild_path" ]; then - rm -rf "$korebuild_path" - fi - - { - if [ ! -d "$korebuild_path" ]; then - mkdir -p "$korebuild_path" - local remote_path="$tools_source/korebuild/artifacts/$version/korebuild.$version.zip" - tmpfile="$(mktemp)" - echo -e "${MAGENTA}Downloading KoreBuild ${version}${RESET}" - if __get_remote_file "$remote_path" "$tmpfile" "$tools_source_suffix"; then - unzip -q -d "$korebuild_path" "$tmpfile" - fi - rm "$tmpfile" || true - fi - - source "$korebuild_path/KoreBuild.sh" - } || { - if [ -d "$korebuild_path" ]; then - echo "Cleaning up after failed installation" - rm -rf "$korebuild_path" || true - fi - return 1 - } -} - -__error() { - echo -e "${RED}error: $*${RESET}" 1>&2 -} - -__warn() { - echo -e "${YELLOW}warning: $*${RESET}" -} - -__machine_has() { - hash "$1" > /dev/null 2>&1 - return $? -} - -__get_remote_file() { - local remote_path=$1 - local local_path=$2 - local remote_path_suffix=$3 - - if [[ "$remote_path" != 'http'* ]]; then - cp "$remote_path" "$local_path" - return 0 - fi - - local failed=false - if __machine_has wget; then - wget --tries 10 --quiet -O "$local_path" "${remote_path}${remote_path_suffix}" || failed=true - else - failed=true - fi - - if [ "$failed" = true ] && __machine_has curl; then - failed=false - curl --retry 10 -sSL -f --create-dirs -o "$local_path" "${remote_path}${remote_path_suffix}" || failed=true - fi - - if [ "$failed" = true ]; then - __error "Download failed: $remote_path" 1>&2 - return 1 - fi -} - -# -# main -# - -command="${1:-}" -shift - -while [[ $# -gt 0 ]]; do - case $1 in - -\?|-h|--help) - __usage --no-exit - exit 0 - ;; - -c|--channel|-Channel) - shift - channel="${1:-}" - [ -z "$channel" ] && __usage - ;; - --config-file|-ConfigFile) - shift - config_file="${1:-}" - [ -z "$config_file" ] && __usage - if [ ! -f "$config_file" ]; then - __error "Invalid value for --config-file. $config_file does not exist." - exit 1 - fi - ;; - -d|--dotnet-home|-DotNetHome) - shift - DOTNET_HOME="${1:-}" - [ -z "$DOTNET_HOME" ] && __usage - ;; - --path|-Path) - shift - repo_path="${1:-}" - [ -z "$repo_path" ] && __usage - ;; - -s|--tools-source|-ToolsSource) - shift - tools_source="${1:-}" - [ -z "$tools_source" ] && __usage - ;; - --tools-source-suffix|-ToolsSourceSuffix) - shift - tools_source_suffix="${1:-}" - [ -z "$tools_source_suffix" ] && __usage - ;; - -u|--update|-Update) - update=true - ;; - --reinstall|-[Rr]einstall) - reinstall=true - ;; - --ci|-[Cc][Ii]) - ci=true - ;; - --verbose|-Verbose) - verbose=true - ;; - --) - shift - break - ;; - *) - break - ;; - esac - shift -done - -if ! __machine_has unzip; then - __error 'Missing required command: unzip' - exit 1 -fi - -if ! __machine_has curl && ! __machine_has wget; then - __error 'Missing required command. Either wget or curl is required.' - exit 1 -fi - -[ -z "${config_file:-}" ] && config_file="$repo_path/korebuild.json" -if [ -f "$config_file" ]; then - if __machine_has jq ; then - if jq '.' "$config_file" >/dev/null ; then - config_channel="$(jq -r 'select(.channel!=null) | .channel' "$config_file")" - config_tools_source="$(jq -r 'select(.toolsSource!=null) | .toolsSource' "$config_file")" - else - __error "$config_file contains invalid JSON." - exit 1 - fi - elif __machine_has python ; then - if python -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'))" >/dev/null ; then - config_channel="$(python -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'));print(obj['channel'] if 'channel' in obj else '')")" - config_tools_source="$(python -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'));print(obj['toolsSource'] if 'toolsSource' in obj else '')")" - else - __error "$config_file contains invalid JSON." - exit 1 - fi - elif __machine_has python3 ; then - if python3 -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'))" >/dev/null ; then - config_channel="$(python3 -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'));print(obj['channel'] if 'channel' in obj else '')")" - config_tools_source="$(python3 -c "import json,codecs;obj=json.load(codecs.open('$config_file', 'r', 'utf-8-sig'));print(obj['toolsSource'] if 'toolsSource' in obj else '')")" - else - __error "$config_file contains invalid JSON." - exit 1 - fi - else - __error 'Missing required command: jq or python. Could not parse the JSON file.' - exit 1 - fi - - [ ! -z "${config_channel:-}" ] && channel="$config_channel" - [ ! -z "${config_tools_source:-}" ] && tools_source="$config_tools_source" -fi - -[ -z "$channel" ] && channel='master' -[ -z "$tools_source" ] && tools_source='https://aspnetcore.blob.core.windows.net/buildtools' - -get_korebuild -set_korebuildsettings "$tools_source" "$DOTNET_HOME" "$repo_path" "$config_file" "$ci" -invoke_korebuild_command "$command" "$@" diff --git a/.gitignore b/src/SignalR/.gitignore similarity index 100% rename from .gitignore rename to src/SignalR/.gitignore diff --git a/.gitmodules b/src/SignalR/.gitmodules similarity index 100% rename from .gitmodules rename to src/SignalR/.gitmodules diff --git a/Directory.Build.props b/src/SignalR/Directory.Build.props similarity index 100% rename from Directory.Build.props rename to src/SignalR/Directory.Build.props diff --git a/Directory.Build.targets b/src/SignalR/Directory.Build.targets similarity index 100% rename from Directory.Build.targets rename to src/SignalR/Directory.Build.targets diff --git a/NuGetPackageVerifier.json b/src/SignalR/NuGetPackageVerifier.json similarity index 100% rename from NuGetPackageVerifier.json rename to src/SignalR/NuGetPackageVerifier.json diff --git a/README.md b/src/SignalR/README.md similarity index 100% rename from README.md rename to src/SignalR/README.md diff --git a/SignalR.sln b/src/SignalR/SignalR.sln similarity index 100% rename from SignalR.sln rename to src/SignalR/SignalR.sln diff --git a/THIRD-PARTY-NOTICES b/src/SignalR/THIRD-PARTY-NOTICES similarity index 100% rename from THIRD-PARTY-NOTICES rename to src/SignalR/THIRD-PARTY-NOTICES diff --git a/benchmarkapps/BenchmarkServer/BenchmarkServer.csproj b/src/SignalR/benchmarkapps/BenchmarkServer/BenchmarkServer.csproj similarity index 100% rename from benchmarkapps/BenchmarkServer/BenchmarkServer.csproj rename to src/SignalR/benchmarkapps/BenchmarkServer/BenchmarkServer.csproj diff --git a/benchmarkapps/BenchmarkServer/Hubs/EchoHub.cs b/src/SignalR/benchmarkapps/BenchmarkServer/Hubs/EchoHub.cs similarity index 100% rename from benchmarkapps/BenchmarkServer/Hubs/EchoHub.cs rename to src/SignalR/benchmarkapps/BenchmarkServer/Hubs/EchoHub.cs diff --git a/benchmarkapps/BenchmarkServer/Program.cs b/src/SignalR/benchmarkapps/BenchmarkServer/Program.cs similarity index 100% rename from benchmarkapps/BenchmarkServer/Program.cs rename to src/SignalR/benchmarkapps/BenchmarkServer/Program.cs diff --git a/benchmarkapps/BenchmarkServer/README.md b/src/SignalR/benchmarkapps/BenchmarkServer/README.md similarity index 100% rename from benchmarkapps/BenchmarkServer/README.md rename to src/SignalR/benchmarkapps/BenchmarkServer/README.md diff --git a/benchmarkapps/BenchmarkServer/Startup.cs b/src/SignalR/benchmarkapps/BenchmarkServer/Startup.cs similarity index 100% rename from benchmarkapps/BenchmarkServer/Startup.cs rename to src/SignalR/benchmarkapps/BenchmarkServer/Startup.cs diff --git a/benchmarkapps/BenchmarkServer/signalr.json b/src/SignalR/benchmarkapps/BenchmarkServer/signalr.json similarity index 100% rename from benchmarkapps/BenchmarkServer/signalr.json rename to src/SignalR/benchmarkapps/BenchmarkServer/signalr.json diff --git a/benchmarkapps/Crankier/Agent.cs b/src/SignalR/benchmarkapps/Crankier/Agent.cs similarity index 100% rename from benchmarkapps/Crankier/Agent.cs rename to src/SignalR/benchmarkapps/Crankier/Agent.cs diff --git a/benchmarkapps/Crankier/AgentHeartbeatInformation.cs b/src/SignalR/benchmarkapps/Crankier/AgentHeartbeatInformation.cs similarity index 100% rename from benchmarkapps/Crankier/AgentHeartbeatInformation.cs rename to src/SignalR/benchmarkapps/Crankier/AgentHeartbeatInformation.cs diff --git a/benchmarkapps/Crankier/AgentReceiver.cs b/src/SignalR/benchmarkapps/Crankier/AgentReceiver.cs similarity index 100% rename from benchmarkapps/Crankier/AgentReceiver.cs rename to src/SignalR/benchmarkapps/Crankier/AgentReceiver.cs diff --git a/benchmarkapps/Crankier/AgentSender.cs b/src/SignalR/benchmarkapps/Crankier/AgentSender.cs similarity index 100% rename from benchmarkapps/Crankier/AgentSender.cs rename to src/SignalR/benchmarkapps/Crankier/AgentSender.cs diff --git a/benchmarkapps/Crankier/AgentWorker.cs b/src/SignalR/benchmarkapps/Crankier/AgentWorker.cs similarity index 100% rename from benchmarkapps/Crankier/AgentWorker.cs rename to src/SignalR/benchmarkapps/Crankier/AgentWorker.cs diff --git a/benchmarkapps/Crankier/Client.cs b/src/SignalR/benchmarkapps/Crankier/Client.cs similarity index 100% rename from benchmarkapps/Crankier/Client.cs rename to src/SignalR/benchmarkapps/Crankier/Client.cs diff --git a/benchmarkapps/Crankier/Commands/AgentCommand.cs b/src/SignalR/benchmarkapps/Crankier/Commands/AgentCommand.cs similarity index 100% rename from benchmarkapps/Crankier/Commands/AgentCommand.cs rename to src/SignalR/benchmarkapps/Crankier/Commands/AgentCommand.cs diff --git a/benchmarkapps/Crankier/Commands/CommandLineUtilities.cs b/src/SignalR/benchmarkapps/Crankier/Commands/CommandLineUtilities.cs similarity index 100% rename from benchmarkapps/Crankier/Commands/CommandLineUtilities.cs rename to src/SignalR/benchmarkapps/Crankier/Commands/CommandLineUtilities.cs diff --git a/benchmarkapps/Crankier/Commands/Defaults.cs b/src/SignalR/benchmarkapps/Crankier/Commands/Defaults.cs similarity index 100% rename from benchmarkapps/Crankier/Commands/Defaults.cs rename to src/SignalR/benchmarkapps/Crankier/Commands/Defaults.cs diff --git a/benchmarkapps/Crankier/Commands/LocalCommand.cs b/src/SignalR/benchmarkapps/Crankier/Commands/LocalCommand.cs similarity index 100% rename from benchmarkapps/Crankier/Commands/LocalCommand.cs rename to src/SignalR/benchmarkapps/Crankier/Commands/LocalCommand.cs diff --git a/benchmarkapps/Crankier/Commands/WorkerCommand.cs b/src/SignalR/benchmarkapps/Crankier/Commands/WorkerCommand.cs similarity index 100% rename from benchmarkapps/Crankier/Commands/WorkerCommand.cs rename to src/SignalR/benchmarkapps/Crankier/Commands/WorkerCommand.cs diff --git a/benchmarkapps/Crankier/ConnectionState.cs b/src/SignalR/benchmarkapps/Crankier/ConnectionState.cs similarity index 100% rename from benchmarkapps/Crankier/ConnectionState.cs rename to src/SignalR/benchmarkapps/Crankier/ConnectionState.cs diff --git a/benchmarkapps/Crankier/Crankier.csproj b/src/SignalR/benchmarkapps/Crankier/Crankier.csproj similarity index 100% rename from benchmarkapps/Crankier/Crankier.csproj rename to src/SignalR/benchmarkapps/Crankier/Crankier.csproj diff --git a/benchmarkapps/Crankier/IAgent.cs b/src/SignalR/benchmarkapps/Crankier/IAgent.cs similarity index 100% rename from benchmarkapps/Crankier/IAgent.cs rename to src/SignalR/benchmarkapps/Crankier/IAgent.cs diff --git a/benchmarkapps/Crankier/IRunner.cs b/src/SignalR/benchmarkapps/Crankier/IRunner.cs similarity index 100% rename from benchmarkapps/Crankier/IRunner.cs rename to src/SignalR/benchmarkapps/Crankier/IRunner.cs diff --git a/benchmarkapps/Crankier/IWorker.cs b/src/SignalR/benchmarkapps/Crankier/IWorker.cs similarity index 100% rename from benchmarkapps/Crankier/IWorker.cs rename to src/SignalR/benchmarkapps/Crankier/IWorker.cs diff --git a/benchmarkapps/Crankier/Message.cs b/src/SignalR/benchmarkapps/Crankier/Message.cs similarity index 100% rename from benchmarkapps/Crankier/Message.cs rename to src/SignalR/benchmarkapps/Crankier/Message.cs diff --git a/benchmarkapps/Crankier/Program.cs b/src/SignalR/benchmarkapps/Crankier/Program.cs similarity index 100% rename from benchmarkapps/Crankier/Program.cs rename to src/SignalR/benchmarkapps/Crankier/Program.cs diff --git a/benchmarkapps/Crankier/Runner.cs b/src/SignalR/benchmarkapps/Crankier/Runner.cs similarity index 100% rename from benchmarkapps/Crankier/Runner.cs rename to src/SignalR/benchmarkapps/Crankier/Runner.cs diff --git a/benchmarkapps/Crankier/StatusInformation.cs b/src/SignalR/benchmarkapps/Crankier/StatusInformation.cs similarity index 100% rename from benchmarkapps/Crankier/StatusInformation.cs rename to src/SignalR/benchmarkapps/Crankier/StatusInformation.cs diff --git a/benchmarkapps/Crankier/Worker.cs b/src/SignalR/benchmarkapps/Crankier/Worker.cs similarity index 100% rename from benchmarkapps/Crankier/Worker.cs rename to src/SignalR/benchmarkapps/Crankier/Worker.cs diff --git a/benchmarkapps/Crankier/WorkerHeartbeatInformation.cs b/src/SignalR/benchmarkapps/Crankier/WorkerHeartbeatInformation.cs similarity index 100% rename from benchmarkapps/Crankier/WorkerHeartbeatInformation.cs rename to src/SignalR/benchmarkapps/Crankier/WorkerHeartbeatInformation.cs diff --git a/benchmarkapps/Crankier/WorkerReceiver.cs b/src/SignalR/benchmarkapps/Crankier/WorkerReceiver.cs similarity index 100% rename from benchmarkapps/Crankier/WorkerReceiver.cs rename to src/SignalR/benchmarkapps/Crankier/WorkerReceiver.cs diff --git a/benchmarkapps/Crankier/WorkerSender.cs b/src/SignalR/benchmarkapps/Crankier/WorkerSender.cs similarity index 100% rename from benchmarkapps/Crankier/WorkerSender.cs rename to src/SignalR/benchmarkapps/Crankier/WorkerSender.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/AssemblyInfo.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/AssemblyInfo.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/AssemblyInfo.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/AssemblyInfo.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/BroadcastBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/BroadcastBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/BroadcastBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/BroadcastBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubActivatorBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubActivatorBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubActivatorBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubActivatorBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubDispatcherBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubDispatcherBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubDispatcherBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubDispatcherBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubLifetimeManagerBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubLifetimeManagerBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubLifetimeManagerBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/DefaultHubLifetimeManagerBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HandshakeProtocolBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HandshakeProtocolBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HandshakeProtocolBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HandshakeProtocolBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionContextBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionContextBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionContextBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionContextBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionReceiveBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionReceiveBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionReceiveBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionReceiveBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionSendBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionSendBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionSendBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionSendBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionStartBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionStartBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionStartBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubConnectionStartBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubProtocolBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubProtocolBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubProtocolBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/HubProtocolBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/MessageParserBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/MessageParserBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/MessageParserBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/MessageParserBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks.csproj diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/NegotiateProtocolBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/NegotiateProtocolBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/NegotiateProtocolBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/NegotiateProtocolBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/RedisHubLifetimeManagerBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/RedisHubLifetimeManagerBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/RedisHubLifetimeManagerBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/RedisHubLifetimeManagerBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/RedisProtocolBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/RedisProtocolBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/RedisProtocolBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/RedisProtocolBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/ServerSentEventsBenchmark.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/ServerSentEventsBenchmark.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/ServerSentEventsBenchmark.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/ServerSentEventsBenchmark.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestConnectionContext.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestConnectionContext.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestConnectionContext.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestConnectionContext.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestDuplexPipe.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestDuplexPipe.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestDuplexPipe.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestDuplexPipe.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestPipeReader.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestPipeReader.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestPipeReader.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestPipeReader.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestPipeWriter.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestPipeWriter.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestPipeWriter.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/Shared/TestPipeWriter.cs diff --git a/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/TestBinder.cs b/src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/TestBinder.cs similarity index 100% rename from benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/TestBinder.cs rename to src/SignalR/benchmarks/Microsoft.AspNetCore.SignalR.Microbenchmarks/TestBinder.cs diff --git a/build/Key.snk b/src/SignalR/build/Key.snk similarity index 100% rename from build/Key.snk rename to src/SignalR/build/Key.snk diff --git a/build/dependencies.props b/src/SignalR/build/dependencies.props similarity index 100% rename from build/dependencies.props rename to src/SignalR/build/dependencies.props diff --git a/build/publish-apps.ps1 b/src/SignalR/build/publish-apps.ps1 similarity index 100% rename from build/publish-apps.ps1 rename to src/SignalR/build/publish-apps.ps1 diff --git a/build/repo.props b/src/SignalR/build/repo.props similarity index 100% rename from build/repo.props rename to src/SignalR/build/repo.props diff --git a/build/repo.targets b/src/SignalR/build/repo.targets similarity index 100% rename from build/repo.targets rename to src/SignalR/build/repo.targets diff --git a/build/sources.props b/src/SignalR/build/sources.props similarity index 100% rename from build/sources.props rename to src/SignalR/build/sources.props diff --git a/clients/cpp/.nuget/NuGet.Config b/src/SignalR/clients/cpp/.nuget/NuGet.Config similarity index 100% rename from clients/cpp/.nuget/NuGet.Config rename to src/SignalR/clients/cpp/.nuget/NuGet.Config diff --git a/clients/cpp/.nuget/NuGet.exe b/src/SignalR/clients/cpp/.nuget/NuGet.exe similarity index 100% rename from clients/cpp/.nuget/NuGet.exe rename to src/SignalR/clients/cpp/.nuget/NuGet.exe diff --git a/clients/cpp/.nuget/NuGet.targets b/src/SignalR/clients/cpp/.nuget/NuGet.targets similarity index 100% rename from clients/cpp/.nuget/NuGet.targets rename to src/SignalR/clients/cpp/.nuget/NuGet.targets diff --git a/clients/cpp/Build/Common.Build.Settings b/src/SignalR/clients/cpp/Build/Common.Build.Settings similarity index 100% rename from clients/cpp/Build/Common.Build.Settings rename to src/SignalR/clients/cpp/Build/Common.Build.Settings diff --git a/clients/cpp/Build/Common.tasks b/src/SignalR/clients/cpp/Build/Common.tasks similarity index 100% rename from clients/cpp/Build/Common.tasks rename to src/SignalR/clients/cpp/Build/Common.tasks diff --git a/clients/cpp/Build/Config.Definitions.Props b/src/SignalR/clients/cpp/Build/Config.Definitions.Props similarity index 100% rename from clients/cpp/Build/Config.Definitions.Props rename to src/SignalR/clients/cpp/Build/Config.Definitions.Props diff --git a/clients/cpp/Build/SignalRClient.Build.Settings b/src/SignalR/clients/cpp/Build/SignalRClient.Build.Settings similarity index 100% rename from clients/cpp/Build/SignalRClient.Build.Settings rename to src/SignalR/clients/cpp/Build/SignalRClient.Build.Settings diff --git a/clients/cpp/Build/Version.props b/src/SignalR/clients/cpp/Build/Version.props similarity index 100% rename from clients/cpp/Build/Version.props rename to src/SignalR/clients/cpp/Build/Version.props diff --git a/clients/cpp/Build/build.msbuild b/src/SignalR/clients/cpp/Build/build.msbuild similarity index 100% rename from clients/cpp/Build/build.msbuild rename to src/SignalR/clients/cpp/Build/build.msbuild diff --git a/clients/cpp/CMakeLists.txt b/src/SignalR/clients/cpp/CMakeLists.txt similarity index 100% rename from clients/cpp/CMakeLists.txt rename to src/SignalR/clients/cpp/CMakeLists.txt diff --git a/clients/cpp/CONTRIBUTING.md b/src/SignalR/clients/cpp/CONTRIBUTING.md similarity index 100% rename from clients/cpp/CONTRIBUTING.md rename to src/SignalR/clients/cpp/CONTRIBUTING.md diff --git a/clients/cpp/NuGet.config b/src/SignalR/clients/cpp/NuGet.config similarity index 100% rename from clients/cpp/NuGet.config rename to src/SignalR/clients/cpp/NuGet.config diff --git a/clients/cpp/NuGet/Microsoft.AspNet.SignalR.Client.Cpp.UWP.targets.template b/src/SignalR/clients/cpp/NuGet/Microsoft.AspNet.SignalR.Client.Cpp.UWP.targets.template similarity index 100% rename from clients/cpp/NuGet/Microsoft.AspNet.SignalR.Client.Cpp.UWP.targets.template rename to src/SignalR/clients/cpp/NuGet/Microsoft.AspNet.SignalR.Client.Cpp.UWP.targets.template diff --git a/clients/cpp/NuGet/Microsoft.AspNet.SignalR.Client.Cpp.WinDesktop.targets.template b/src/SignalR/clients/cpp/NuGet/Microsoft.AspNet.SignalR.Client.Cpp.WinDesktop.targets.template similarity index 100% rename from clients/cpp/NuGet/Microsoft.AspNet.SignalR.Client.Cpp.WinDesktop.targets.template rename to src/SignalR/clients/cpp/NuGet/Microsoft.AspNet.SignalR.Client.Cpp.WinDesktop.targets.template diff --git a/clients/cpp/NuGet/signalrclientcpp.nuspec.template b/src/SignalR/clients/cpp/NuGet/signalrclientcpp.nuspec.template similarity index 100% rename from clients/cpp/NuGet/signalrclientcpp.nuspec.template rename to src/SignalR/clients/cpp/NuGet/signalrclientcpp.nuspec.template diff --git a/clients/cpp/README.md b/src/SignalR/clients/cpp/README.md similarity index 100% rename from clients/cpp/README.md rename to src/SignalR/clients/cpp/README.md diff --git a/clients/cpp/build.cmd b/src/SignalR/clients/cpp/build.cmd similarity index 100% rename from clients/cpp/build.cmd rename to src/SignalR/clients/cpp/build.cmd diff --git a/clients/cpp/include/signalrclient/_exports.h b/src/SignalR/clients/cpp/include/signalrclient/_exports.h similarity index 100% rename from clients/cpp/include/signalrclient/_exports.h rename to src/SignalR/clients/cpp/include/signalrclient/_exports.h diff --git a/clients/cpp/include/signalrclient/connection.h b/src/SignalR/clients/cpp/include/signalrclient/connection.h similarity index 100% rename from clients/cpp/include/signalrclient/connection.h rename to src/SignalR/clients/cpp/include/signalrclient/connection.h diff --git a/clients/cpp/include/signalrclient/connection_state.h b/src/SignalR/clients/cpp/include/signalrclient/connection_state.h similarity index 100% rename from clients/cpp/include/signalrclient/connection_state.h rename to src/SignalR/clients/cpp/include/signalrclient/connection_state.h diff --git a/clients/cpp/include/signalrclient/hub_connection.h b/src/SignalR/clients/cpp/include/signalrclient/hub_connection.h similarity index 100% rename from clients/cpp/include/signalrclient/hub_connection.h rename to src/SignalR/clients/cpp/include/signalrclient/hub_connection.h diff --git a/clients/cpp/include/signalrclient/hub_exception.h b/src/SignalR/clients/cpp/include/signalrclient/hub_exception.h similarity index 100% rename from clients/cpp/include/signalrclient/hub_exception.h rename to src/SignalR/clients/cpp/include/signalrclient/hub_exception.h diff --git a/clients/cpp/include/signalrclient/log_writer.h b/src/SignalR/clients/cpp/include/signalrclient/log_writer.h similarity index 100% rename from clients/cpp/include/signalrclient/log_writer.h rename to src/SignalR/clients/cpp/include/signalrclient/log_writer.h diff --git a/clients/cpp/include/signalrclient/signalr_client_config.h b/src/SignalR/clients/cpp/include/signalrclient/signalr_client_config.h similarity index 100% rename from clients/cpp/include/signalrclient/signalr_client_config.h rename to src/SignalR/clients/cpp/include/signalrclient/signalr_client_config.h diff --git a/clients/cpp/include/signalrclient/signalr_exception.h b/src/SignalR/clients/cpp/include/signalrclient/signalr_exception.h similarity index 100% rename from clients/cpp/include/signalrclient/signalr_exception.h rename to src/SignalR/clients/cpp/include/signalrclient/signalr_exception.h diff --git a/clients/cpp/include/signalrclient/trace_level.h b/src/SignalR/clients/cpp/include/signalrclient/trace_level.h similarity index 100% rename from clients/cpp/include/signalrclient/trace_level.h rename to src/SignalR/clients/cpp/include/signalrclient/trace_level.h diff --git a/clients/cpp/include/signalrclient/transport_type.h b/src/SignalR/clients/cpp/include/signalrclient/transport_type.h similarity index 100% rename from clients/cpp/include/signalrclient/transport_type.h rename to src/SignalR/clients/cpp/include/signalrclient/transport_type.h diff --git a/clients/cpp/include/signalrclient/web_exception.h b/src/SignalR/clients/cpp/include/signalrclient/web_exception.h similarity index 100% rename from clients/cpp/include/signalrclient/web_exception.h rename to src/SignalR/clients/cpp/include/signalrclient/web_exception.h diff --git a/clients/cpp/samples.sln b/src/SignalR/clients/cpp/samples.sln similarity index 100% rename from clients/cpp/samples.sln rename to src/SignalR/clients/cpp/samples.sln diff --git a/clients/cpp/samples/HubConnectionSample/HubConnectionSample.cpp b/src/SignalR/clients/cpp/samples/HubConnectionSample/HubConnectionSample.cpp similarity index 100% rename from clients/cpp/samples/HubConnectionSample/HubConnectionSample.cpp rename to src/SignalR/clients/cpp/samples/HubConnectionSample/HubConnectionSample.cpp diff --git a/clients/cpp/samples/HubConnectionSample/HubConnectionSample.vcxproj b/src/SignalR/clients/cpp/samples/HubConnectionSample/HubConnectionSample.vcxproj similarity index 100% rename from clients/cpp/samples/HubConnectionSample/HubConnectionSample.vcxproj rename to src/SignalR/clients/cpp/samples/HubConnectionSample/HubConnectionSample.vcxproj diff --git a/clients/cpp/samples/HubConnectionSample/HubConnectionSample.vcxproj.filters b/src/SignalR/clients/cpp/samples/HubConnectionSample/HubConnectionSample.vcxproj.filters similarity index 100% rename from clients/cpp/samples/HubConnectionSample/HubConnectionSample.vcxproj.filters rename to src/SignalR/clients/cpp/samples/HubConnectionSample/HubConnectionSample.vcxproj.filters diff --git a/clients/cpp/samples/HubConnectionSample/packages.config b/src/SignalR/clients/cpp/samples/HubConnectionSample/packages.config similarity index 100% rename from clients/cpp/samples/HubConnectionSample/packages.config rename to src/SignalR/clients/cpp/samples/HubConnectionSample/packages.config diff --git a/clients/cpp/samples/HubConnectionSample/stdafx.cpp b/src/SignalR/clients/cpp/samples/HubConnectionSample/stdafx.cpp similarity index 100% rename from clients/cpp/samples/HubConnectionSample/stdafx.cpp rename to src/SignalR/clients/cpp/samples/HubConnectionSample/stdafx.cpp diff --git a/clients/cpp/samples/HubConnectionSample/stdafx.h b/src/SignalR/clients/cpp/samples/HubConnectionSample/stdafx.h similarity index 100% rename from clients/cpp/samples/HubConnectionSample/stdafx.h rename to src/SignalR/clients/cpp/samples/HubConnectionSample/stdafx.h diff --git a/clients/cpp/samples/PersistentConnectionSample/PersistentConnectionSample.cpp b/src/SignalR/clients/cpp/samples/PersistentConnectionSample/PersistentConnectionSample.cpp similarity index 100% rename from clients/cpp/samples/PersistentConnectionSample/PersistentConnectionSample.cpp rename to src/SignalR/clients/cpp/samples/PersistentConnectionSample/PersistentConnectionSample.cpp diff --git a/clients/cpp/samples/PersistentConnectionSample/PersistentConnectionSample.vcxproj b/src/SignalR/clients/cpp/samples/PersistentConnectionSample/PersistentConnectionSample.vcxproj similarity index 100% rename from clients/cpp/samples/PersistentConnectionSample/PersistentConnectionSample.vcxproj rename to src/SignalR/clients/cpp/samples/PersistentConnectionSample/PersistentConnectionSample.vcxproj diff --git a/clients/cpp/samples/PersistentConnectionSample/PersistentConnectionSample.vcxproj.filters b/src/SignalR/clients/cpp/samples/PersistentConnectionSample/PersistentConnectionSample.vcxproj.filters similarity index 100% rename from clients/cpp/samples/PersistentConnectionSample/PersistentConnectionSample.vcxproj.filters rename to src/SignalR/clients/cpp/samples/PersistentConnectionSample/PersistentConnectionSample.vcxproj.filters diff --git a/clients/cpp/samples/PersistentConnectionSample/packages.config b/src/SignalR/clients/cpp/samples/PersistentConnectionSample/packages.config similarity index 100% rename from clients/cpp/samples/PersistentConnectionSample/packages.config rename to src/SignalR/clients/cpp/samples/PersistentConnectionSample/packages.config diff --git a/clients/cpp/samples/PersistentConnectionSample/stdafx.cpp b/src/SignalR/clients/cpp/samples/PersistentConnectionSample/stdafx.cpp similarity index 100% rename from clients/cpp/samples/PersistentConnectionSample/stdafx.cpp rename to src/SignalR/clients/cpp/samples/PersistentConnectionSample/stdafx.cpp diff --git a/clients/cpp/samples/PersistentConnectionSample/stdafx.h b/src/SignalR/clients/cpp/samples/PersistentConnectionSample/stdafx.h similarity index 100% rename from clients/cpp/samples/PersistentConnectionSample/stdafx.h rename to src/SignalR/clients/cpp/samples/PersistentConnectionSample/stdafx.h diff --git a/clients/cpp/samples/SignalRServer/ChatHub.cs b/src/SignalR/clients/cpp/samples/SignalRServer/ChatHub.cs similarity index 100% rename from clients/cpp/samples/SignalRServer/ChatHub.cs rename to src/SignalR/clients/cpp/samples/SignalRServer/ChatHub.cs diff --git a/clients/cpp/samples/SignalRServer/EchoConnection.cs b/src/SignalR/clients/cpp/samples/SignalRServer/EchoConnection.cs similarity index 100% rename from clients/cpp/samples/SignalRServer/EchoConnection.cs rename to src/SignalR/clients/cpp/samples/SignalRServer/EchoConnection.cs diff --git a/clients/cpp/samples/SignalRServer/Properties/AssemblyInfo.cs b/src/SignalR/clients/cpp/samples/SignalRServer/Properties/AssemblyInfo.cs similarity index 100% rename from clients/cpp/samples/SignalRServer/Properties/AssemblyInfo.cs rename to src/SignalR/clients/cpp/samples/SignalRServer/Properties/AssemblyInfo.cs diff --git a/clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.intellisense.js b/src/SignalR/clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.intellisense.js similarity index 100% rename from clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.intellisense.js rename to src/SignalR/clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.intellisense.js diff --git a/clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.js b/src/SignalR/clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.js similarity index 100% rename from clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.js rename to src/SignalR/clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.js diff --git a/clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.min.js b/src/SignalR/clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.min.js similarity index 100% rename from clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.min.js rename to src/SignalR/clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.min.js diff --git a/clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.min.map b/src/SignalR/clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.min.map similarity index 100% rename from clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.min.map rename to src/SignalR/clients/cpp/samples/SignalRServer/Scripts/jquery-1.10.2.min.map diff --git a/clients/cpp/samples/SignalRServer/Scripts/jquery.signalR-2.2.0.js b/src/SignalR/clients/cpp/samples/SignalRServer/Scripts/jquery.signalR-2.2.0.js similarity index 100% rename from clients/cpp/samples/SignalRServer/Scripts/jquery.signalR-2.2.0.js rename to src/SignalR/clients/cpp/samples/SignalRServer/Scripts/jquery.signalR-2.2.0.js diff --git a/clients/cpp/samples/SignalRServer/Scripts/jquery.signalR-2.2.0.min.js b/src/SignalR/clients/cpp/samples/SignalRServer/Scripts/jquery.signalR-2.2.0.min.js similarity index 100% rename from clients/cpp/samples/SignalRServer/Scripts/jquery.signalR-2.2.0.min.js rename to src/SignalR/clients/cpp/samples/SignalRServer/Scripts/jquery.signalR-2.2.0.min.js diff --git a/clients/cpp/samples/SignalRServer/SignalRServer.csproj b/src/SignalR/clients/cpp/samples/SignalRServer/SignalRServer.csproj similarity index 100% rename from clients/cpp/samples/SignalRServer/SignalRServer.csproj rename to src/SignalR/clients/cpp/samples/SignalRServer/SignalRServer.csproj diff --git a/clients/cpp/samples/SignalRServer/Startup.cs b/src/SignalR/clients/cpp/samples/SignalRServer/Startup.cs similarity index 100% rename from clients/cpp/samples/SignalRServer/Startup.cs rename to src/SignalR/clients/cpp/samples/SignalRServer/Startup.cs diff --git a/clients/cpp/samples/SignalRServer/Web.Debug.config b/src/SignalR/clients/cpp/samples/SignalRServer/Web.Debug.config similarity index 100% rename from clients/cpp/samples/SignalRServer/Web.Debug.config rename to src/SignalR/clients/cpp/samples/SignalRServer/Web.Debug.config diff --git a/clients/cpp/samples/SignalRServer/Web.Release.config b/src/SignalR/clients/cpp/samples/SignalRServer/Web.Release.config similarity index 100% rename from clients/cpp/samples/SignalRServer/Web.Release.config rename to src/SignalR/clients/cpp/samples/SignalRServer/Web.Release.config diff --git a/clients/cpp/samples/SignalRServer/Web.config b/src/SignalR/clients/cpp/samples/SignalRServer/Web.config similarity index 100% rename from clients/cpp/samples/SignalRServer/Web.config rename to src/SignalR/clients/cpp/samples/SignalRServer/Web.config diff --git a/clients/cpp/samples/SignalRServer/index.html b/src/SignalR/clients/cpp/samples/SignalRServer/index.html similarity index 100% rename from clients/cpp/samples/SignalRServer/index.html rename to src/SignalR/clients/cpp/samples/SignalRServer/index.html diff --git a/clients/cpp/samples/SignalRServer/packages.config b/src/SignalR/clients/cpp/samples/SignalRServer/packages.config similarity index 100% rename from clients/cpp/samples/SignalRServer/packages.config rename to src/SignalR/clients/cpp/samples/SignalRServer/packages.config diff --git a/clients/cpp/signalrclient.sln b/src/SignalR/clients/cpp/signalrclient.sln similarity index 100% rename from clients/cpp/signalrclient.sln rename to src/SignalR/clients/cpp/signalrclient.sln diff --git a/clients/cpp/src/signalrclient/Build/VS/packages.config b/src/SignalR/clients/cpp/src/signalrclient/Build/VS/packages.config similarity index 100% rename from clients/cpp/src/signalrclient/Build/VS/packages.config rename to src/SignalR/clients/cpp/src/signalrclient/Build/VS/packages.config diff --git a/clients/cpp/src/signalrclient/Build/VS/signalrclient.vcxproj b/src/SignalR/clients/cpp/src/signalrclient/Build/VS/signalrclient.vcxproj similarity index 100% rename from clients/cpp/src/signalrclient/Build/VS/signalrclient.vcxproj rename to src/SignalR/clients/cpp/src/signalrclient/Build/VS/signalrclient.vcxproj diff --git a/clients/cpp/src/signalrclient/Build/VS/signalrclient.vcxproj.filters b/src/SignalR/clients/cpp/src/signalrclient/Build/VS/signalrclient.vcxproj.filters similarity index 100% rename from clients/cpp/src/signalrclient/Build/VS/signalrclient.vcxproj.filters rename to src/SignalR/clients/cpp/src/signalrclient/Build/VS/signalrclient.vcxproj.filters diff --git a/clients/cpp/src/signalrclient/CMakeLists.txt b/src/SignalR/clients/cpp/src/signalrclient/CMakeLists.txt similarity index 100% rename from clients/cpp/src/signalrclient/CMakeLists.txt rename to src/SignalR/clients/cpp/src/signalrclient/CMakeLists.txt diff --git a/clients/cpp/src/signalrclient/callback_manager.cpp b/src/SignalR/clients/cpp/src/signalrclient/callback_manager.cpp similarity index 100% rename from clients/cpp/src/signalrclient/callback_manager.cpp rename to src/SignalR/clients/cpp/src/signalrclient/callback_manager.cpp diff --git a/clients/cpp/src/signalrclient/callback_manager.h b/src/SignalR/clients/cpp/src/signalrclient/callback_manager.h similarity index 100% rename from clients/cpp/src/signalrclient/callback_manager.h rename to src/SignalR/clients/cpp/src/signalrclient/callback_manager.h diff --git a/clients/cpp/src/signalrclient/case_insensitive_comparison_utils.h b/src/SignalR/clients/cpp/src/signalrclient/case_insensitive_comparison_utils.h similarity index 100% rename from clients/cpp/src/signalrclient/case_insensitive_comparison_utils.h rename to src/SignalR/clients/cpp/src/signalrclient/case_insensitive_comparison_utils.h diff --git a/clients/cpp/src/signalrclient/connection.cpp b/src/SignalR/clients/cpp/src/signalrclient/connection.cpp similarity index 100% rename from clients/cpp/src/signalrclient/connection.cpp rename to src/SignalR/clients/cpp/src/signalrclient/connection.cpp diff --git a/clients/cpp/src/signalrclient/connection_impl.cpp b/src/SignalR/clients/cpp/src/signalrclient/connection_impl.cpp similarity index 100% rename from clients/cpp/src/signalrclient/connection_impl.cpp rename to src/SignalR/clients/cpp/src/signalrclient/connection_impl.cpp diff --git a/clients/cpp/src/signalrclient/connection_impl.h b/src/SignalR/clients/cpp/src/signalrclient/connection_impl.h similarity index 100% rename from clients/cpp/src/signalrclient/connection_impl.h rename to src/SignalR/clients/cpp/src/signalrclient/connection_impl.h diff --git a/clients/cpp/src/signalrclient/constants.h b/src/SignalR/clients/cpp/src/signalrclient/constants.h similarity index 100% rename from clients/cpp/src/signalrclient/constants.h rename to src/SignalR/clients/cpp/src/signalrclient/constants.h diff --git a/clients/cpp/src/signalrclient/default_websocket_client.cpp b/src/SignalR/clients/cpp/src/signalrclient/default_websocket_client.cpp similarity index 100% rename from clients/cpp/src/signalrclient/default_websocket_client.cpp rename to src/SignalR/clients/cpp/src/signalrclient/default_websocket_client.cpp diff --git a/clients/cpp/src/signalrclient/default_websocket_client.h b/src/SignalR/clients/cpp/src/signalrclient/default_websocket_client.h similarity index 100% rename from clients/cpp/src/signalrclient/default_websocket_client.h rename to src/SignalR/clients/cpp/src/signalrclient/default_websocket_client.h diff --git a/clients/cpp/src/signalrclient/event.h b/src/SignalR/clients/cpp/src/signalrclient/event.h similarity index 100% rename from clients/cpp/src/signalrclient/event.h rename to src/SignalR/clients/cpp/src/signalrclient/event.h diff --git a/clients/cpp/src/signalrclient/http_sender.cpp b/src/SignalR/clients/cpp/src/signalrclient/http_sender.cpp similarity index 100% rename from clients/cpp/src/signalrclient/http_sender.cpp rename to src/SignalR/clients/cpp/src/signalrclient/http_sender.cpp diff --git a/clients/cpp/src/signalrclient/http_sender.h b/src/SignalR/clients/cpp/src/signalrclient/http_sender.h similarity index 100% rename from clients/cpp/src/signalrclient/http_sender.h rename to src/SignalR/clients/cpp/src/signalrclient/http_sender.h diff --git a/clients/cpp/src/signalrclient/hub_connection.cpp b/src/SignalR/clients/cpp/src/signalrclient/hub_connection.cpp similarity index 100% rename from clients/cpp/src/signalrclient/hub_connection.cpp rename to src/SignalR/clients/cpp/src/signalrclient/hub_connection.cpp diff --git a/clients/cpp/src/signalrclient/hub_connection_impl.cpp b/src/SignalR/clients/cpp/src/signalrclient/hub_connection_impl.cpp similarity index 100% rename from clients/cpp/src/signalrclient/hub_connection_impl.cpp rename to src/SignalR/clients/cpp/src/signalrclient/hub_connection_impl.cpp diff --git a/clients/cpp/src/signalrclient/hub_connection_impl.h b/src/SignalR/clients/cpp/src/signalrclient/hub_connection_impl.h similarity index 100% rename from clients/cpp/src/signalrclient/hub_connection_impl.h rename to src/SignalR/clients/cpp/src/signalrclient/hub_connection_impl.h diff --git a/clients/cpp/src/signalrclient/logger.cpp b/src/SignalR/clients/cpp/src/signalrclient/logger.cpp similarity index 100% rename from clients/cpp/src/signalrclient/logger.cpp rename to src/SignalR/clients/cpp/src/signalrclient/logger.cpp diff --git a/clients/cpp/src/signalrclient/logger.h b/src/SignalR/clients/cpp/src/signalrclient/logger.h similarity index 100% rename from clients/cpp/src/signalrclient/logger.h rename to src/SignalR/clients/cpp/src/signalrclient/logger.h diff --git a/clients/cpp/src/signalrclient/make_unique.h b/src/SignalR/clients/cpp/src/signalrclient/make_unique.h similarity index 100% rename from clients/cpp/src/signalrclient/make_unique.h rename to src/SignalR/clients/cpp/src/signalrclient/make_unique.h diff --git a/clients/cpp/src/signalrclient/negotiation_response.cpp b/src/SignalR/clients/cpp/src/signalrclient/negotiation_response.cpp similarity index 100% rename from clients/cpp/src/signalrclient/negotiation_response.cpp rename to src/SignalR/clients/cpp/src/signalrclient/negotiation_response.cpp diff --git a/clients/cpp/src/signalrclient/negotiation_response.h b/src/SignalR/clients/cpp/src/signalrclient/negotiation_response.h similarity index 100% rename from clients/cpp/src/signalrclient/negotiation_response.h rename to src/SignalR/clients/cpp/src/signalrclient/negotiation_response.h diff --git a/clients/cpp/src/signalrclient/request_sender.cpp b/src/SignalR/clients/cpp/src/signalrclient/request_sender.cpp similarity index 100% rename from clients/cpp/src/signalrclient/request_sender.cpp rename to src/SignalR/clients/cpp/src/signalrclient/request_sender.cpp diff --git a/clients/cpp/src/signalrclient/request_sender.h b/src/SignalR/clients/cpp/src/signalrclient/request_sender.h similarity index 100% rename from clients/cpp/src/signalrclient/request_sender.h rename to src/SignalR/clients/cpp/src/signalrclient/request_sender.h diff --git a/clients/cpp/src/signalrclient/signalr_client_config.cpp b/src/SignalR/clients/cpp/src/signalrclient/signalr_client_config.cpp similarity index 100% rename from clients/cpp/src/signalrclient/signalr_client_config.cpp rename to src/SignalR/clients/cpp/src/signalrclient/signalr_client_config.cpp diff --git a/clients/cpp/src/signalrclient/stdafx.cpp b/src/SignalR/clients/cpp/src/signalrclient/stdafx.cpp similarity index 100% rename from clients/cpp/src/signalrclient/stdafx.cpp rename to src/SignalR/clients/cpp/src/signalrclient/stdafx.cpp diff --git a/clients/cpp/src/signalrclient/stdafx.h b/src/SignalR/clients/cpp/src/signalrclient/stdafx.h similarity index 100% rename from clients/cpp/src/signalrclient/stdafx.h rename to src/SignalR/clients/cpp/src/signalrclient/stdafx.h diff --git a/clients/cpp/src/signalrclient/trace_log_writer.cpp b/src/SignalR/clients/cpp/src/signalrclient/trace_log_writer.cpp similarity index 100% rename from clients/cpp/src/signalrclient/trace_log_writer.cpp rename to src/SignalR/clients/cpp/src/signalrclient/trace_log_writer.cpp diff --git a/clients/cpp/src/signalrclient/trace_log_writer.h b/src/SignalR/clients/cpp/src/signalrclient/trace_log_writer.h similarity index 100% rename from clients/cpp/src/signalrclient/trace_log_writer.h rename to src/SignalR/clients/cpp/src/signalrclient/trace_log_writer.h diff --git a/clients/cpp/src/signalrclient/transport.cpp b/src/SignalR/clients/cpp/src/signalrclient/transport.cpp similarity index 100% rename from clients/cpp/src/signalrclient/transport.cpp rename to src/SignalR/clients/cpp/src/signalrclient/transport.cpp diff --git a/clients/cpp/src/signalrclient/transport.h b/src/SignalR/clients/cpp/src/signalrclient/transport.h similarity index 100% rename from clients/cpp/src/signalrclient/transport.h rename to src/SignalR/clients/cpp/src/signalrclient/transport.h diff --git a/clients/cpp/src/signalrclient/transport_factory.cpp b/src/SignalR/clients/cpp/src/signalrclient/transport_factory.cpp similarity index 100% rename from clients/cpp/src/signalrclient/transport_factory.cpp rename to src/SignalR/clients/cpp/src/signalrclient/transport_factory.cpp diff --git a/clients/cpp/src/signalrclient/transport_factory.h b/src/SignalR/clients/cpp/src/signalrclient/transport_factory.h similarity index 100% rename from clients/cpp/src/signalrclient/transport_factory.h rename to src/SignalR/clients/cpp/src/signalrclient/transport_factory.h diff --git a/clients/cpp/src/signalrclient/url_builder.cpp b/src/SignalR/clients/cpp/src/signalrclient/url_builder.cpp similarity index 100% rename from clients/cpp/src/signalrclient/url_builder.cpp rename to src/SignalR/clients/cpp/src/signalrclient/url_builder.cpp diff --git a/clients/cpp/src/signalrclient/url_builder.h b/src/SignalR/clients/cpp/src/signalrclient/url_builder.h similarity index 100% rename from clients/cpp/src/signalrclient/url_builder.h rename to src/SignalR/clients/cpp/src/signalrclient/url_builder.h diff --git a/clients/cpp/src/signalrclient/web_request.cpp b/src/SignalR/clients/cpp/src/signalrclient/web_request.cpp similarity index 100% rename from clients/cpp/src/signalrclient/web_request.cpp rename to src/SignalR/clients/cpp/src/signalrclient/web_request.cpp diff --git a/clients/cpp/src/signalrclient/web_request.h b/src/SignalR/clients/cpp/src/signalrclient/web_request.h similarity index 100% rename from clients/cpp/src/signalrclient/web_request.h rename to src/SignalR/clients/cpp/src/signalrclient/web_request.h diff --git a/clients/cpp/src/signalrclient/web_request_factory.cpp b/src/SignalR/clients/cpp/src/signalrclient/web_request_factory.cpp similarity index 100% rename from clients/cpp/src/signalrclient/web_request_factory.cpp rename to src/SignalR/clients/cpp/src/signalrclient/web_request_factory.cpp diff --git a/clients/cpp/src/signalrclient/web_request_factory.h b/src/SignalR/clients/cpp/src/signalrclient/web_request_factory.h similarity index 100% rename from clients/cpp/src/signalrclient/web_request_factory.h rename to src/SignalR/clients/cpp/src/signalrclient/web_request_factory.h diff --git a/clients/cpp/src/signalrclient/web_response.h b/src/SignalR/clients/cpp/src/signalrclient/web_response.h similarity index 100% rename from clients/cpp/src/signalrclient/web_response.h rename to src/SignalR/clients/cpp/src/signalrclient/web_response.h diff --git a/clients/cpp/src/signalrclient/websocket_client.h b/src/SignalR/clients/cpp/src/signalrclient/websocket_client.h similarity index 100% rename from clients/cpp/src/signalrclient/websocket_client.h rename to src/SignalR/clients/cpp/src/signalrclient/websocket_client.h diff --git a/clients/cpp/src/signalrclient/websocket_transport.cpp b/src/SignalR/clients/cpp/src/signalrclient/websocket_transport.cpp similarity index 100% rename from clients/cpp/src/signalrclient/websocket_transport.cpp rename to src/SignalR/clients/cpp/src/signalrclient/websocket_transport.cpp diff --git a/clients/cpp/src/signalrclient/websocket_transport.h b/src/SignalR/clients/cpp/src/signalrclient/websocket_transport.h similarity index 100% rename from clients/cpp/src/signalrclient/websocket_transport.h rename to src/SignalR/clients/cpp/src/signalrclient/websocket_transport.h diff --git a/clients/cpp/src/signalrclientdll/Build/VS/packages.config b/src/SignalR/clients/cpp/src/signalrclientdll/Build/VS/packages.config similarity index 100% rename from clients/cpp/src/signalrclientdll/Build/VS/packages.config rename to src/SignalR/clients/cpp/src/signalrclientdll/Build/VS/packages.config diff --git a/clients/cpp/src/signalrclientdll/Build/VS/signalrclientdll.vcxproj b/src/SignalR/clients/cpp/src/signalrclientdll/Build/VS/signalrclientdll.vcxproj similarity index 100% rename from clients/cpp/src/signalrclientdll/Build/VS/signalrclientdll.vcxproj rename to src/SignalR/clients/cpp/src/signalrclientdll/Build/VS/signalrclientdll.vcxproj diff --git a/clients/cpp/src/signalrclientdll/Build/VS/signalrclientdll.vcxproj.filters b/src/SignalR/clients/cpp/src/signalrclientdll/Build/VS/signalrclientdll.vcxproj.filters similarity index 100% rename from clients/cpp/src/signalrclientdll/Build/VS/signalrclientdll.vcxproj.filters rename to src/SignalR/clients/cpp/src/signalrclientdll/Build/VS/signalrclientdll.vcxproj.filters diff --git a/clients/cpp/src/signalrclientdll/Resource.rc b/src/SignalR/clients/cpp/src/signalrclientdll/Resource.rc similarity index 100% rename from clients/cpp/src/signalrclientdll/Resource.rc rename to src/SignalR/clients/cpp/src/signalrclientdll/Resource.rc diff --git a/clients/cpp/src/signalrclientdll/dllmain.cpp b/src/SignalR/clients/cpp/src/signalrclientdll/dllmain.cpp similarity index 100% rename from clients/cpp/src/signalrclientdll/dllmain.cpp rename to src/SignalR/clients/cpp/src/signalrclientdll/dllmain.cpp diff --git a/clients/cpp/src/signalrclientdll/resource.h b/src/SignalR/clients/cpp/src/signalrclientdll/resource.h similarity index 100% rename from clients/cpp/src/signalrclientdll/resource.h rename to src/SignalR/clients/cpp/src/signalrclientdll/resource.h diff --git a/clients/cpp/src/signalrclientdll/version.h b/src/SignalR/clients/cpp/src/signalrclientdll/version.h similarity index 100% rename from clients/cpp/src/signalrclientdll/version.h rename to src/SignalR/clients/cpp/src/signalrclientdll/version.h diff --git a/clients/cpp/test/CMakeLists.txt b/src/SignalR/clients/cpp/test/CMakeLists.txt similarity index 100% rename from clients/cpp/test/CMakeLists.txt rename to src/SignalR/clients/cpp/test/CMakeLists.txt diff --git a/clients/cpp/test/gtest/gtest.vcxproj b/src/SignalR/clients/cpp/test/gtest/gtest.vcxproj similarity index 100% rename from clients/cpp/test/gtest/gtest.vcxproj rename to src/SignalR/clients/cpp/test/gtest/gtest.vcxproj diff --git a/clients/cpp/test/gtest/gtest.vcxproj.filters b/src/SignalR/clients/cpp/test/gtest/gtest.vcxproj.filters similarity index 100% rename from clients/cpp/test/gtest/gtest.vcxproj.filters rename to src/SignalR/clients/cpp/test/gtest/gtest.vcxproj.filters diff --git a/clients/cpp/test/signalrclient-e2e-tests/Build/VS/packages.config b/src/SignalR/clients/cpp/test/signalrclient-e2e-tests/Build/VS/packages.config similarity index 100% rename from clients/cpp/test/signalrclient-e2e-tests/Build/VS/packages.config rename to src/SignalR/clients/cpp/test/signalrclient-e2e-tests/Build/VS/packages.config diff --git a/clients/cpp/test/signalrclient-e2e-tests/Build/VS/signalrclient-e2e-tests.vcxproj b/src/SignalR/clients/cpp/test/signalrclient-e2e-tests/Build/VS/signalrclient-e2e-tests.vcxproj similarity index 100% rename from clients/cpp/test/signalrclient-e2e-tests/Build/VS/signalrclient-e2e-tests.vcxproj rename to src/SignalR/clients/cpp/test/signalrclient-e2e-tests/Build/VS/signalrclient-e2e-tests.vcxproj diff --git a/clients/cpp/test/signalrclient-e2e-tests/Build/VS/signalrclient-e2e-tests.vcxproj.filters b/src/SignalR/clients/cpp/test/signalrclient-e2e-tests/Build/VS/signalrclient-e2e-tests.vcxproj.filters similarity index 100% rename from clients/cpp/test/signalrclient-e2e-tests/Build/VS/signalrclient-e2e-tests.vcxproj.filters rename to src/SignalR/clients/cpp/test/signalrclient-e2e-tests/Build/VS/signalrclient-e2e-tests.vcxproj.filters diff --git a/clients/cpp/test/signalrclient-e2e-tests/connection_tests.cpp b/src/SignalR/clients/cpp/test/signalrclient-e2e-tests/connection_tests.cpp similarity index 100% rename from clients/cpp/test/signalrclient-e2e-tests/connection_tests.cpp rename to src/SignalR/clients/cpp/test/signalrclient-e2e-tests/connection_tests.cpp diff --git a/clients/cpp/test/signalrclient-e2e-tests/hub_connection_tests.cpp b/src/SignalR/clients/cpp/test/signalrclient-e2e-tests/hub_connection_tests.cpp similarity index 100% rename from clients/cpp/test/signalrclient-e2e-tests/hub_connection_tests.cpp rename to src/SignalR/clients/cpp/test/signalrclient-e2e-tests/hub_connection_tests.cpp diff --git a/clients/cpp/test/signalrclient-e2e-tests/signalrclient-e2e-tests.cpp b/src/SignalR/clients/cpp/test/signalrclient-e2e-tests/signalrclient-e2e-tests.cpp similarity index 100% rename from clients/cpp/test/signalrclient-e2e-tests/signalrclient-e2e-tests.cpp rename to src/SignalR/clients/cpp/test/signalrclient-e2e-tests/signalrclient-e2e-tests.cpp diff --git a/clients/cpp/test/signalrclient-e2e-tests/stdafx.cpp b/src/SignalR/clients/cpp/test/signalrclient-e2e-tests/stdafx.cpp similarity index 100% rename from clients/cpp/test/signalrclient-e2e-tests/stdafx.cpp rename to src/SignalR/clients/cpp/test/signalrclient-e2e-tests/stdafx.cpp diff --git a/clients/cpp/test/signalrclient-e2e-tests/stdafx.h b/src/SignalR/clients/cpp/test/signalrclient-e2e-tests/stdafx.h similarity index 100% rename from clients/cpp/test/signalrclient-e2e-tests/stdafx.h rename to src/SignalR/clients/cpp/test/signalrclient-e2e-tests/stdafx.h diff --git a/clients/cpp/test/signalrclient-e2e-tests/test_utils.cpp b/src/SignalR/clients/cpp/test/signalrclient-e2e-tests/test_utils.cpp similarity index 100% rename from clients/cpp/test/signalrclient-e2e-tests/test_utils.cpp rename to src/SignalR/clients/cpp/test/signalrclient-e2e-tests/test_utils.cpp diff --git a/clients/cpp/test/signalrclient-e2e-tests/test_utils.h b/src/SignalR/clients/cpp/test/signalrclient-e2e-tests/test_utils.h similarity index 100% rename from clients/cpp/test/signalrclient-e2e-tests/test_utils.h rename to src/SignalR/clients/cpp/test/signalrclient-e2e-tests/test_utils.h diff --git a/clients/cpp/test/signalrclient-testhost/App.config b/src/SignalR/clients/cpp/test/signalrclient-testhost/App.config similarity index 100% rename from clients/cpp/test/signalrclient-testhost/App.config rename to src/SignalR/clients/cpp/test/signalrclient-testhost/App.config diff --git a/clients/cpp/test/signalrclient-testhost/Connections/HubConnection.cs b/src/SignalR/clients/cpp/test/signalrclient-testhost/Connections/HubConnection.cs similarity index 100% rename from clients/cpp/test/signalrclient-testhost/Connections/HubConnection.cs rename to src/SignalR/clients/cpp/test/signalrclient-testhost/Connections/HubConnection.cs diff --git a/clients/cpp/test/signalrclient-testhost/Connections/RawConnection.cs b/src/SignalR/clients/cpp/test/signalrclient-testhost/Connections/RawConnection.cs similarity index 100% rename from clients/cpp/test/signalrclient-testhost/Connections/RawConnection.cs rename to src/SignalR/clients/cpp/test/signalrclient-testhost/Connections/RawConnection.cs diff --git a/clients/cpp/test/signalrclient-testhost/Program.cs b/src/SignalR/clients/cpp/test/signalrclient-testhost/Program.cs similarity index 100% rename from clients/cpp/test/signalrclient-testhost/Program.cs rename to src/SignalR/clients/cpp/test/signalrclient-testhost/Program.cs diff --git a/clients/cpp/test/signalrclient-testhost/Properties/AssemblyInfo.cs b/src/SignalR/clients/cpp/test/signalrclient-testhost/Properties/AssemblyInfo.cs similarity index 100% rename from clients/cpp/test/signalrclient-testhost/Properties/AssemblyInfo.cs rename to src/SignalR/clients/cpp/test/signalrclient-testhost/Properties/AssemblyInfo.cs diff --git a/clients/cpp/test/signalrclient-testhost/Startup.cs b/src/SignalR/clients/cpp/test/signalrclient-testhost/Startup.cs similarity index 100% rename from clients/cpp/test/signalrclient-testhost/Startup.cs rename to src/SignalR/clients/cpp/test/signalrclient-testhost/Startup.cs diff --git a/clients/cpp/test/signalrclient-testhost/packages.config b/src/SignalR/clients/cpp/test/signalrclient-testhost/packages.config similarity index 100% rename from clients/cpp/test/signalrclient-testhost/packages.config rename to src/SignalR/clients/cpp/test/signalrclient-testhost/packages.config diff --git a/clients/cpp/test/signalrclient-testhost/signalrclient-testhost.csproj b/src/SignalR/clients/cpp/test/signalrclient-testhost/signalrclient-testhost.csproj similarity index 100% rename from clients/cpp/test/signalrclient-testhost/signalrclient-testhost.csproj rename to src/SignalR/clients/cpp/test/signalrclient-testhost/signalrclient-testhost.csproj diff --git a/clients/cpp/test/signalrclienttests/Build/VS/packages.config b/src/SignalR/clients/cpp/test/signalrclienttests/Build/VS/packages.config similarity index 100% rename from clients/cpp/test/signalrclienttests/Build/VS/packages.config rename to src/SignalR/clients/cpp/test/signalrclienttests/Build/VS/packages.config diff --git a/clients/cpp/test/signalrclienttests/Build/VS/signalrclienttests.vcxproj b/src/SignalR/clients/cpp/test/signalrclienttests/Build/VS/signalrclienttests.vcxproj similarity index 100% rename from clients/cpp/test/signalrclienttests/Build/VS/signalrclienttests.vcxproj rename to src/SignalR/clients/cpp/test/signalrclienttests/Build/VS/signalrclienttests.vcxproj diff --git a/clients/cpp/test/signalrclienttests/Build/VS/signalrclienttests.vcxproj.filters b/src/SignalR/clients/cpp/test/signalrclienttests/Build/VS/signalrclienttests.vcxproj.filters similarity index 100% rename from clients/cpp/test/signalrclienttests/Build/VS/signalrclienttests.vcxproj.filters rename to src/SignalR/clients/cpp/test/signalrclienttests/Build/VS/signalrclienttests.vcxproj.filters diff --git a/clients/cpp/test/signalrclienttests/CMakeLists.txt b/src/SignalR/clients/cpp/test/signalrclienttests/CMakeLists.txt similarity index 100% rename from clients/cpp/test/signalrclienttests/CMakeLists.txt rename to src/SignalR/clients/cpp/test/signalrclienttests/CMakeLists.txt diff --git a/clients/cpp/test/signalrclienttests/callback_manager_tests.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/callback_manager_tests.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/callback_manager_tests.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/callback_manager_tests.cpp diff --git a/clients/cpp/test/signalrclienttests/case_insensitive_comparison_utils_tests.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/case_insensitive_comparison_utils_tests.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/case_insensitive_comparison_utils_tests.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/case_insensitive_comparison_utils_tests.cpp diff --git a/clients/cpp/test/signalrclienttests/connection_impl_tests.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/connection_impl_tests.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/connection_impl_tests.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/connection_impl_tests.cpp diff --git a/clients/cpp/test/signalrclienttests/http_sender_tests.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/http_sender_tests.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/http_sender_tests.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/http_sender_tests.cpp diff --git a/clients/cpp/test/signalrclienttests/hub_connection_impl_tests.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/hub_connection_impl_tests.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/hub_connection_impl_tests.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/hub_connection_impl_tests.cpp diff --git a/clients/cpp/test/signalrclienttests/hub_exception_tests.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/hub_exception_tests.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/hub_exception_tests.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/hub_exception_tests.cpp diff --git a/clients/cpp/test/signalrclienttests/internal_hub_proxy_tests.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/internal_hub_proxy_tests.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/internal_hub_proxy_tests.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/internal_hub_proxy_tests.cpp diff --git a/clients/cpp/test/signalrclienttests/logger_tests.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/logger_tests.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/logger_tests.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/logger_tests.cpp diff --git a/clients/cpp/test/signalrclienttests/memory_log_writer.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/memory_log_writer.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/memory_log_writer.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/memory_log_writer.cpp diff --git a/clients/cpp/test/signalrclienttests/memory_log_writer.h b/src/SignalR/clients/cpp/test/signalrclienttests/memory_log_writer.h similarity index 100% rename from clients/cpp/test/signalrclienttests/memory_log_writer.h rename to src/SignalR/clients/cpp/test/signalrclienttests/memory_log_writer.h diff --git a/clients/cpp/test/signalrclienttests/request_sender_tests.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/request_sender_tests.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/request_sender_tests.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/request_sender_tests.cpp diff --git a/clients/cpp/test/signalrclienttests/signalrclienttests.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/signalrclienttests.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/signalrclienttests.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/signalrclienttests.cpp diff --git a/clients/cpp/test/signalrclienttests/stdafx.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/stdafx.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/stdafx.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/stdafx.cpp diff --git a/clients/cpp/test/signalrclienttests/stdafx.h b/src/SignalR/clients/cpp/test/signalrclienttests/stdafx.h similarity index 100% rename from clients/cpp/test/signalrclienttests/stdafx.h rename to src/SignalR/clients/cpp/test/signalrclienttests/stdafx.h diff --git a/clients/cpp/test/signalrclienttests/targetver.h b/src/SignalR/clients/cpp/test/signalrclienttests/targetver.h similarity index 100% rename from clients/cpp/test/signalrclienttests/targetver.h rename to src/SignalR/clients/cpp/test/signalrclienttests/targetver.h diff --git a/clients/cpp/test/signalrclienttests/test_transport_factory.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/test_transport_factory.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/test_transport_factory.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/test_transport_factory.cpp diff --git a/clients/cpp/test/signalrclienttests/test_transport_factory.h b/src/SignalR/clients/cpp/test/signalrclienttests/test_transport_factory.h similarity index 100% rename from clients/cpp/test/signalrclienttests/test_transport_factory.h rename to src/SignalR/clients/cpp/test/signalrclienttests/test_transport_factory.h diff --git a/clients/cpp/test/signalrclienttests/test_utils.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/test_utils.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/test_utils.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/test_utils.cpp diff --git a/clients/cpp/test/signalrclienttests/test_utils.h b/src/SignalR/clients/cpp/test/signalrclienttests/test_utils.h similarity index 100% rename from clients/cpp/test/signalrclienttests/test_utils.h rename to src/SignalR/clients/cpp/test/signalrclienttests/test_utils.h diff --git a/clients/cpp/test/signalrclienttests/test_web_request_factory.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/test_web_request_factory.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/test_web_request_factory.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/test_web_request_factory.cpp diff --git a/clients/cpp/test/signalrclienttests/test_web_request_factory.h b/src/SignalR/clients/cpp/test/signalrclienttests/test_web_request_factory.h similarity index 100% rename from clients/cpp/test/signalrclienttests/test_web_request_factory.h rename to src/SignalR/clients/cpp/test/signalrclienttests/test_web_request_factory.h diff --git a/clients/cpp/test/signalrclienttests/test_websocket_client.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/test_websocket_client.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/test_websocket_client.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/test_websocket_client.cpp diff --git a/clients/cpp/test/signalrclienttests/test_websocket_client.h b/src/SignalR/clients/cpp/test/signalrclienttests/test_websocket_client.h similarity index 100% rename from clients/cpp/test/signalrclienttests/test_websocket_client.h rename to src/SignalR/clients/cpp/test/signalrclienttests/test_websocket_client.h diff --git a/clients/cpp/test/signalrclienttests/url_builder_tests.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/url_builder_tests.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/url_builder_tests.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/url_builder_tests.cpp diff --git a/clients/cpp/test/signalrclienttests/web_request_stub.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/web_request_stub.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/web_request_stub.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/web_request_stub.cpp diff --git a/clients/cpp/test/signalrclienttests/web_request_stub.h b/src/SignalR/clients/cpp/test/signalrclienttests/web_request_stub.h similarity index 100% rename from clients/cpp/test/signalrclienttests/web_request_stub.h rename to src/SignalR/clients/cpp/test/signalrclienttests/web_request_stub.h diff --git a/clients/cpp/test/signalrclienttests/web_request_tests.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/web_request_tests.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/web_request_tests.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/web_request_tests.cpp diff --git a/clients/cpp/test/signalrclienttests/websocket_transport_tests.cpp b/src/SignalR/clients/cpp/test/signalrclienttests/websocket_transport_tests.cpp similarity index 100% rename from clients/cpp/test/signalrclienttests/websocket_transport_tests.cpp rename to src/SignalR/clients/cpp/test/signalrclienttests/websocket_transport_tests.cpp diff --git a/clients/java/signalr/.gitignore b/src/SignalR/clients/java/signalr/.gitignore similarity index 100% rename from clients/java/signalr/.gitignore rename to src/SignalR/clients/java/signalr/.gitignore diff --git a/clients/java/signalr/build.gradle b/src/SignalR/clients/java/signalr/build.gradle similarity index 100% rename from clients/java/signalr/build.gradle rename to src/SignalR/clients/java/signalr/build.gradle diff --git a/clients/java/signalr/gradle/wrapper/gradle-wrapper.jar b/src/SignalR/clients/java/signalr/gradle/wrapper/gradle-wrapper.jar similarity index 100% rename from clients/java/signalr/gradle/wrapper/gradle-wrapper.jar rename to src/SignalR/clients/java/signalr/gradle/wrapper/gradle-wrapper.jar diff --git a/clients/java/signalr/gradle/wrapper/gradle-wrapper.properties b/src/SignalR/clients/java/signalr/gradle/wrapper/gradle-wrapper.properties similarity index 100% rename from clients/java/signalr/gradle/wrapper/gradle-wrapper.properties rename to src/SignalR/clients/java/signalr/gradle/wrapper/gradle-wrapper.properties diff --git a/clients/java/signalr/gradlew b/src/SignalR/clients/java/signalr/gradlew old mode 100755 new mode 100644 similarity index 100% rename from clients/java/signalr/gradlew rename to src/SignalR/clients/java/signalr/gradlew diff --git a/clients/java/signalr/gradlew.bat b/src/SignalR/clients/java/signalr/gradlew.bat similarity index 100% rename from clients/java/signalr/gradlew.bat rename to src/SignalR/clients/java/signalr/gradlew.bat diff --git a/clients/java/signalr/settings.gradle b/src/SignalR/clients/java/signalr/settings.gradle similarity index 100% rename from clients/java/signalr/settings.gradle rename to src/SignalR/clients/java/signalr/settings.gradle diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/Action.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/Action.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/Action1.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action1.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/Action1.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action1.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/Action2.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action2.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/Action2.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action2.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/Action3.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action3.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/Action3.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action3.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/Action4.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action4.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/Action4.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action4.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/Action5.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action5.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/Action5.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action5.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/Action6.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action6.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/Action6.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action6.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/Action7.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action7.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/Action7.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action7.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/Action8.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action8.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/Action8.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Action8.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/ActionBase.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/ActionBase.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/ActionBase.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/ActionBase.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/CallbackMap.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/CallbackMap.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/CallbackMap.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/CallbackMap.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/CancelInvocationMessage.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/CancelInvocationMessage.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/CancelInvocationMessage.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/CancelInvocationMessage.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/CloseMessage.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/CloseMessage.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/CloseMessage.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/CloseMessage.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/CompletionMessage.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/CompletionMessage.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/CompletionMessage.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/CompletionMessage.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/DefaultHttpClient.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/DefaultHttpClient.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/DefaultHttpClient.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/DefaultHttpClient.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/HandshakeProtocol.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HandshakeProtocol.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/HandshakeProtocol.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HandshakeProtocol.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/HandshakeRequestMessage.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HandshakeRequestMessage.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/HandshakeRequestMessage.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HandshakeRequestMessage.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/HandshakeResponseMessage.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HandshakeResponseMessage.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/HandshakeResponseMessage.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HandshakeResponseMessage.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/HttpClient.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HttpClient.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/HttpClient.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HttpClient.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/HttpHubConnectionBuilder.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HttpHubConnectionBuilder.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/HttpHubConnectionBuilder.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HttpHubConnectionBuilder.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/HubConnection.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HubConnection.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/HubConnection.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HubConnection.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/HubConnectionBuilder.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HubConnectionBuilder.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/HubConnectionBuilder.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HubConnectionBuilder.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/HubConnectionState.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HubConnectionState.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/HubConnectionState.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HubConnectionState.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/HubException.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HubException.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/HubException.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HubException.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/HubMessage.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HubMessage.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/HubMessage.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HubMessage.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/HubMessageType.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HubMessageType.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/HubMessageType.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HubMessageType.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/HubProtocol.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HubProtocol.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/HubProtocol.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/HubProtocol.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationBinder.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationBinder.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationBinder.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationBinder.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationBindingFailureMessage.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationBindingFailureMessage.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationBindingFailureMessage.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationBindingFailureMessage.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationHandler.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationHandler.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationHandler.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationHandler.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationMessage.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationMessage.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationMessage.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationMessage.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationRequest.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationRequest.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationRequest.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/InvocationRequest.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/JsonHubProtocol.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/JsonHubProtocol.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/JsonHubProtocol.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/JsonHubProtocol.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/Negotiate.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Negotiate.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/Negotiate.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Negotiate.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/NegotiateResponse.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/NegotiateResponse.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/NegotiateResponse.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/NegotiateResponse.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/OkHttpWebSocketWrapper.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/OkHttpWebSocketWrapper.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/OkHttpWebSocketWrapper.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/OkHttpWebSocketWrapper.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/OnClosedCallback.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/OnClosedCallback.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/OnClosedCallback.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/OnClosedCallback.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/OnReceiveCallBack.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/OnReceiveCallBack.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/OnReceiveCallBack.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/OnReceiveCallBack.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/PingMessage.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/PingMessage.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/PingMessage.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/PingMessage.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/StreamInvocationMessage.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/StreamInvocationMessage.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/StreamInvocationMessage.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/StreamInvocationMessage.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/StreamItem.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/StreamItem.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/StreamItem.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/StreamItem.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/Subscription.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Subscription.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/Subscription.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Subscription.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/TransferFormat.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/TransferFormat.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/TransferFormat.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/TransferFormat.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/Transport.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Transport.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/Transport.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/Transport.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/TransportOnClosedCallback.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/TransportOnClosedCallback.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/TransportOnClosedCallback.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/TransportOnClosedCallback.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/WebSocketTransport.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/WebSocketTransport.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/WebSocketTransport.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/WebSocketTransport.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/WebSocketWrapper.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/WebSocketWrapper.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/WebSocketWrapper.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/WebSocketWrapper.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/WebsocketWrapperOnClosed.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/WebsocketWrapperOnClosed.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/WebsocketWrapperOnClosed.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/WebsocketWrapperOnClosed.java diff --git a/clients/java/signalr/src/main/java/com/microsoft/signalr/package-info.java b/src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/package-info.java similarity index 100% rename from clients/java/signalr/src/main/java/com/microsoft/signalr/package-info.java rename to src/SignalR/clients/java/signalr/src/main/java/com/microsoft/signalr/package-info.java diff --git a/clients/java/signalr/src/test/java/com/microsoft/signalr/HandshakeProtocolTest.java b/src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/HandshakeProtocolTest.java similarity index 100% rename from clients/java/signalr/src/test/java/com/microsoft/signalr/HandshakeProtocolTest.java rename to src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/HandshakeProtocolTest.java diff --git a/clients/java/signalr/src/test/java/com/microsoft/signalr/HubConnectionBuilderTest.java b/src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/HubConnectionBuilderTest.java similarity index 100% rename from clients/java/signalr/src/test/java/com/microsoft/signalr/HubConnectionBuilderTest.java rename to src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/HubConnectionBuilderTest.java diff --git a/clients/java/signalr/src/test/java/com/microsoft/signalr/HubConnectionTest.java b/src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/HubConnectionTest.java similarity index 100% rename from clients/java/signalr/src/test/java/com/microsoft/signalr/HubConnectionTest.java rename to src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/HubConnectionTest.java diff --git a/clients/java/signalr/src/test/java/com/microsoft/signalr/HubExceptionTest.java b/src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/HubExceptionTest.java similarity index 100% rename from clients/java/signalr/src/test/java/com/microsoft/signalr/HubExceptionTest.java rename to src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/HubExceptionTest.java diff --git a/clients/java/signalr/src/test/java/com/microsoft/signalr/JsonHubProtocolTest.java b/src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/JsonHubProtocolTest.java similarity index 100% rename from clients/java/signalr/src/test/java/com/microsoft/signalr/JsonHubProtocolTest.java rename to src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/JsonHubProtocolTest.java diff --git a/clients/java/signalr/src/test/java/com/microsoft/signalr/MockTransport.java b/src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/MockTransport.java similarity index 100% rename from clients/java/signalr/src/test/java/com/microsoft/signalr/MockTransport.java rename to src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/MockTransport.java diff --git a/clients/java/signalr/src/test/java/com/microsoft/signalr/NegotiateResponseTest.java b/src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/NegotiateResponseTest.java similarity index 100% rename from clients/java/signalr/src/test/java/com/microsoft/signalr/NegotiateResponseTest.java rename to src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/NegotiateResponseTest.java diff --git a/clients/java/signalr/src/test/java/com/microsoft/signalr/ResolveNegotiateUrlTest.java b/src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/ResolveNegotiateUrlTest.java similarity index 100% rename from clients/java/signalr/src/test/java/com/microsoft/signalr/ResolveNegotiateUrlTest.java rename to src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/ResolveNegotiateUrlTest.java diff --git a/clients/java/signalr/src/test/java/com/microsoft/signalr/TestHttpClient.java b/src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/TestHttpClient.java similarity index 100% rename from clients/java/signalr/src/test/java/com/microsoft/signalr/TestHttpClient.java rename to src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/TestHttpClient.java diff --git a/clients/java/signalr/src/test/java/com/microsoft/signalr/TestUtils.java b/src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/TestUtils.java similarity index 100% rename from clients/java/signalr/src/test/java/com/microsoft/signalr/TestUtils.java rename to src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/TestUtils.java diff --git a/clients/java/signalr/src/test/java/com/microsoft/signalr/WebSocketTransportTest.java b/src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/WebSocketTransportTest.java similarity index 100% rename from clients/java/signalr/src/test/java/com/microsoft/signalr/WebSocketTransportTest.java rename to src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/WebSocketTransportTest.java diff --git a/clients/java/signalr/src/test/java/com/microsoft/signalr/WebSocketTransportUrlFormatTest.java b/src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/WebSocketTransportUrlFormatTest.java similarity index 100% rename from clients/java/signalr/src/test/java/com/microsoft/signalr/WebSocketTransportUrlFormatTest.java rename to src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/WebSocketTransportUrlFormatTest.java diff --git a/clients/java/signalr/src/test/java/com/microsoft/signalr/sample/Chat.java b/src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/sample/Chat.java similarity index 100% rename from clients/java/signalr/src/test/java/com/microsoft/signalr/sample/Chat.java rename to src/SignalR/clients/java/signalr/src/test/java/com/microsoft/signalr/sample/Chat.java diff --git a/clients/ts/FunctionalTests/.gitignore b/src/SignalR/clients/ts/FunctionalTests/.gitignore similarity index 100% rename from clients/ts/FunctionalTests/.gitignore rename to src/SignalR/clients/ts/FunctionalTests/.gitignore diff --git a/clients/ts/FunctionalTests/AuthorizedHub.cs b/src/SignalR/clients/ts/FunctionalTests/AuthorizedHub.cs similarity index 100% rename from clients/ts/FunctionalTests/AuthorizedHub.cs rename to src/SignalR/clients/ts/FunctionalTests/AuthorizedHub.cs diff --git a/clients/ts/FunctionalTests/ComplexObject.cs b/src/SignalR/clients/ts/FunctionalTests/ComplexObject.cs similarity index 100% rename from clients/ts/FunctionalTests/ComplexObject.cs rename to src/SignalR/clients/ts/FunctionalTests/ComplexObject.cs diff --git a/clients/ts/FunctionalTests/EchoConnectionHandler.cs b/src/SignalR/clients/ts/FunctionalTests/EchoConnectionHandler.cs similarity index 100% rename from clients/ts/FunctionalTests/EchoConnectionHandler.cs rename to src/SignalR/clients/ts/FunctionalTests/EchoConnectionHandler.cs diff --git a/clients/ts/FunctionalTests/FunctionalTests.csproj b/src/SignalR/clients/ts/FunctionalTests/FunctionalTests.csproj similarity index 100% rename from clients/ts/FunctionalTests/FunctionalTests.csproj rename to src/SignalR/clients/ts/FunctionalTests/FunctionalTests.csproj diff --git a/clients/ts/FunctionalTests/Program.cs b/src/SignalR/clients/ts/FunctionalTests/Program.cs similarity index 100% rename from clients/ts/FunctionalTests/Program.cs rename to src/SignalR/clients/ts/FunctionalTests/Program.cs diff --git a/clients/ts/FunctionalTests/Startup.cs b/src/SignalR/clients/ts/FunctionalTests/Startup.cs similarity index 100% rename from clients/ts/FunctionalTests/Startup.cs rename to src/SignalR/clients/ts/FunctionalTests/Startup.cs diff --git a/clients/ts/FunctionalTests/TestHub.cs b/src/SignalR/clients/ts/FunctionalTests/TestHub.cs similarity index 100% rename from clients/ts/FunctionalTests/TestHub.cs rename to src/SignalR/clients/ts/FunctionalTests/TestHub.cs diff --git a/clients/ts/FunctionalTests/UncreatableHub.cs b/src/SignalR/clients/ts/FunctionalTests/UncreatableHub.cs similarity index 100% rename from clients/ts/FunctionalTests/UncreatableHub.cs rename to src/SignalR/clients/ts/FunctionalTests/UncreatableHub.cs diff --git a/clients/ts/FunctionalTests/func.jest.config.js b/src/SignalR/clients/ts/FunctionalTests/func.jest.config.js similarity index 100% rename from clients/ts/FunctionalTests/func.jest.config.js rename to src/SignalR/clients/ts/FunctionalTests/func.jest.config.js diff --git a/clients/ts/FunctionalTests/package-lock.json b/src/SignalR/clients/ts/FunctionalTests/package-lock.json similarity index 100% rename from clients/ts/FunctionalTests/package-lock.json rename to src/SignalR/clients/ts/FunctionalTests/package-lock.json diff --git a/clients/ts/FunctionalTests/package.json b/src/SignalR/clients/ts/FunctionalTests/package.json similarity index 100% rename from clients/ts/FunctionalTests/package.json rename to src/SignalR/clients/ts/FunctionalTests/package.json diff --git a/clients/ts/FunctionalTests/scripts/karma.base.conf.js b/src/SignalR/clients/ts/FunctionalTests/scripts/karma.base.conf.js similarity index 100% rename from clients/ts/FunctionalTests/scripts/karma.base.conf.js rename to src/SignalR/clients/ts/FunctionalTests/scripts/karma.base.conf.js diff --git a/clients/ts/FunctionalTests/scripts/karma.local.conf.js b/src/SignalR/clients/ts/FunctionalTests/scripts/karma.local.conf.js similarity index 100% rename from clients/ts/FunctionalTests/scripts/karma.local.conf.js rename to src/SignalR/clients/ts/FunctionalTests/scripts/karma.local.conf.js diff --git a/clients/ts/FunctionalTests/scripts/karma.sauce.conf.js b/src/SignalR/clients/ts/FunctionalTests/scripts/karma.sauce.conf.js similarity index 100% rename from clients/ts/FunctionalTests/scripts/karma.sauce.conf.js rename to src/SignalR/clients/ts/FunctionalTests/scripts/karma.sauce.conf.js diff --git a/clients/ts/FunctionalTests/scripts/run-tests.ts b/src/SignalR/clients/ts/FunctionalTests/scripts/run-tests.ts similarity index 100% rename from clients/ts/FunctionalTests/scripts/run-tests.ts rename to src/SignalR/clients/ts/FunctionalTests/scripts/run-tests.ts diff --git a/clients/ts/FunctionalTests/scripts/tsconfig.json b/src/SignalR/clients/ts/FunctionalTests/scripts/tsconfig.json similarity index 100% rename from clients/ts/FunctionalTests/scripts/tsconfig.json rename to src/SignalR/clients/ts/FunctionalTests/scripts/tsconfig.json diff --git a/clients/ts/FunctionalTests/testCert.pfx b/src/SignalR/clients/ts/FunctionalTests/testCert.pfx similarity index 100% rename from clients/ts/FunctionalTests/testCert.pfx rename to src/SignalR/clients/ts/FunctionalTests/testCert.pfx diff --git a/clients/ts/FunctionalTests/testCertECC.pfx b/src/SignalR/clients/ts/FunctionalTests/testCertECC.pfx similarity index 100% rename from clients/ts/FunctionalTests/testCertECC.pfx rename to src/SignalR/clients/ts/FunctionalTests/testCertECC.pfx diff --git a/clients/ts/FunctionalTests/ts/Common.ts b/src/SignalR/clients/ts/FunctionalTests/ts/Common.ts similarity index 100% rename from clients/ts/FunctionalTests/ts/Common.ts rename to src/SignalR/clients/ts/FunctionalTests/ts/Common.ts diff --git a/clients/ts/FunctionalTests/ts/ConnectionTests.ts b/src/SignalR/clients/ts/FunctionalTests/ts/ConnectionTests.ts similarity index 100% rename from clients/ts/FunctionalTests/ts/ConnectionTests.ts rename to src/SignalR/clients/ts/FunctionalTests/ts/ConnectionTests.ts diff --git a/clients/ts/FunctionalTests/ts/HubConnectionTests.ts b/src/SignalR/clients/ts/FunctionalTests/ts/HubConnectionTests.ts similarity index 100% rename from clients/ts/FunctionalTests/ts/HubConnectionTests.ts rename to src/SignalR/clients/ts/FunctionalTests/ts/HubConnectionTests.ts diff --git a/clients/ts/FunctionalTests/ts/LogBannerReporter.ts b/src/SignalR/clients/ts/FunctionalTests/ts/LogBannerReporter.ts similarity index 100% rename from clients/ts/FunctionalTests/ts/LogBannerReporter.ts rename to src/SignalR/clients/ts/FunctionalTests/ts/LogBannerReporter.ts diff --git a/clients/ts/FunctionalTests/ts/TestLogger.ts b/src/SignalR/clients/ts/FunctionalTests/ts/TestLogger.ts similarity index 100% rename from clients/ts/FunctionalTests/ts/TestLogger.ts rename to src/SignalR/clients/ts/FunctionalTests/ts/TestLogger.ts diff --git a/clients/ts/FunctionalTests/ts/Utils.ts b/src/SignalR/clients/ts/FunctionalTests/ts/Utils.ts similarity index 100% rename from clients/ts/FunctionalTests/ts/Utils.ts rename to src/SignalR/clients/ts/FunctionalTests/ts/Utils.ts diff --git a/clients/ts/FunctionalTests/ts/WebSocketTests.ts b/src/SignalR/clients/ts/FunctionalTests/ts/WebSocketTests.ts similarity index 100% rename from clients/ts/FunctionalTests/ts/WebSocketTests.ts rename to src/SignalR/clients/ts/FunctionalTests/ts/WebSocketTests.ts diff --git a/clients/ts/FunctionalTests/ts/index.ts b/src/SignalR/clients/ts/FunctionalTests/ts/index.ts similarity index 100% rename from clients/ts/FunctionalTests/ts/index.ts rename to src/SignalR/clients/ts/FunctionalTests/ts/index.ts diff --git a/clients/ts/FunctionalTests/tsconfig.json b/src/SignalR/clients/ts/FunctionalTests/tsconfig.json similarity index 100% rename from clients/ts/FunctionalTests/tsconfig.json rename to src/SignalR/clients/ts/FunctionalTests/tsconfig.json diff --git a/clients/ts/FunctionalTests/web.config b/src/SignalR/clients/ts/FunctionalTests/web.config similarity index 100% rename from clients/ts/FunctionalTests/web.config rename to src/SignalR/clients/ts/FunctionalTests/web.config diff --git a/clients/ts/FunctionalTests/webpack.config.js b/src/SignalR/clients/ts/FunctionalTests/webpack.config.js similarity index 100% rename from clients/ts/FunctionalTests/webpack.config.js rename to src/SignalR/clients/ts/FunctionalTests/webpack.config.js diff --git a/clients/ts/FunctionalTests/wwwroot/default.html b/src/SignalR/clients/ts/FunctionalTests/wwwroot/default.html similarity index 100% rename from clients/ts/FunctionalTests/wwwroot/default.html rename to src/SignalR/clients/ts/FunctionalTests/wwwroot/default.html diff --git a/clients/ts/build/embed-version.js b/src/SignalR/clients/ts/build/embed-version.js similarity index 100% rename from clients/ts/build/embed-version.js rename to src/SignalR/clients/ts/build/embed-version.js diff --git a/clients/ts/common/package-lock.json b/src/SignalR/clients/ts/common/package-lock.json similarity index 100% rename from clients/ts/common/package-lock.json rename to src/SignalR/clients/ts/common/package-lock.json diff --git a/clients/ts/common/package.json b/src/SignalR/clients/ts/common/package.json similarity index 100% rename from clients/ts/common/package.json rename to src/SignalR/clients/ts/common/package.json diff --git a/clients/ts/jest.config.js b/src/SignalR/clients/ts/jest.config.js similarity index 100% rename from clients/ts/jest.config.js rename to src/SignalR/clients/ts/jest.config.js diff --git a/clients/ts/package-lock.json b/src/SignalR/clients/ts/package-lock.json similarity index 100% rename from clients/ts/package-lock.json rename to src/SignalR/clients/ts/package-lock.json diff --git a/clients/ts/package.json b/src/SignalR/clients/ts/package.json similarity index 100% rename from clients/ts/package.json rename to src/SignalR/clients/ts/package.json diff --git a/clients/ts/signalr-protocol-msgpack/README.md b/src/SignalR/clients/ts/signalr-protocol-msgpack/README.md similarity index 100% rename from clients/ts/signalr-protocol-msgpack/README.md rename to src/SignalR/clients/ts/signalr-protocol-msgpack/README.md diff --git a/clients/ts/signalr-protocol-msgpack/package-lock.json b/src/SignalR/clients/ts/signalr-protocol-msgpack/package-lock.json similarity index 100% rename from clients/ts/signalr-protocol-msgpack/package-lock.json rename to src/SignalR/clients/ts/signalr-protocol-msgpack/package-lock.json diff --git a/clients/ts/signalr-protocol-msgpack/package.json b/src/SignalR/clients/ts/signalr-protocol-msgpack/package.json similarity index 100% rename from clients/ts/signalr-protocol-msgpack/package.json rename to src/SignalR/clients/ts/signalr-protocol-msgpack/package.json diff --git a/clients/ts/signalr-protocol-msgpack/rollup.config.js b/src/SignalR/clients/ts/signalr-protocol-msgpack/rollup.config.js similarity index 100% rename from clients/ts/signalr-protocol-msgpack/rollup.config.js rename to src/SignalR/clients/ts/signalr-protocol-msgpack/rollup.config.js diff --git a/clients/ts/signalr-protocol-msgpack/src/BinaryMessageFormat.ts b/src/SignalR/clients/ts/signalr-protocol-msgpack/src/BinaryMessageFormat.ts similarity index 100% rename from clients/ts/signalr-protocol-msgpack/src/BinaryMessageFormat.ts rename to src/SignalR/clients/ts/signalr-protocol-msgpack/src/BinaryMessageFormat.ts diff --git a/clients/ts/signalr-protocol-msgpack/src/MessagePackHubProtocol.ts b/src/SignalR/clients/ts/signalr-protocol-msgpack/src/MessagePackHubProtocol.ts similarity index 100% rename from clients/ts/signalr-protocol-msgpack/src/MessagePackHubProtocol.ts rename to src/SignalR/clients/ts/signalr-protocol-msgpack/src/MessagePackHubProtocol.ts diff --git a/clients/ts/signalr-protocol-msgpack/src/Utils.ts b/src/SignalR/clients/ts/signalr-protocol-msgpack/src/Utils.ts similarity index 100% rename from clients/ts/signalr-protocol-msgpack/src/Utils.ts rename to src/SignalR/clients/ts/signalr-protocol-msgpack/src/Utils.ts diff --git a/clients/ts/signalr-protocol-msgpack/src/browser-index.ts b/src/SignalR/clients/ts/signalr-protocol-msgpack/src/browser-index.ts similarity index 100% rename from clients/ts/signalr-protocol-msgpack/src/browser-index.ts rename to src/SignalR/clients/ts/signalr-protocol-msgpack/src/browser-index.ts diff --git a/clients/ts/signalr-protocol-msgpack/src/index.ts b/src/SignalR/clients/ts/signalr-protocol-msgpack/src/index.ts similarity index 100% rename from clients/ts/signalr-protocol-msgpack/src/index.ts rename to src/SignalR/clients/ts/signalr-protocol-msgpack/src/index.ts diff --git a/clients/ts/signalr-protocol-msgpack/src/third-party-notices.txt b/src/SignalR/clients/ts/signalr-protocol-msgpack/src/third-party-notices.txt similarity index 100% rename from clients/ts/signalr-protocol-msgpack/src/third-party-notices.txt rename to src/SignalR/clients/ts/signalr-protocol-msgpack/src/third-party-notices.txt diff --git a/clients/ts/signalr-protocol-msgpack/tests/BinaryMessageFormatter.test.ts b/src/SignalR/clients/ts/signalr-protocol-msgpack/tests/BinaryMessageFormatter.test.ts similarity index 100% rename from clients/ts/signalr-protocol-msgpack/tests/BinaryMessageFormatter.test.ts rename to src/SignalR/clients/ts/signalr-protocol-msgpack/tests/BinaryMessageFormatter.test.ts diff --git a/clients/ts/signalr-protocol-msgpack/tests/MessagePackHubProtocol.test.ts b/src/SignalR/clients/ts/signalr-protocol-msgpack/tests/MessagePackHubProtocol.test.ts similarity index 100% rename from clients/ts/signalr-protocol-msgpack/tests/MessagePackHubProtocol.test.ts rename to src/SignalR/clients/ts/signalr-protocol-msgpack/tests/MessagePackHubProtocol.test.ts diff --git a/clients/ts/signalr-protocol-msgpack/tests/tsconfig.json b/src/SignalR/clients/ts/signalr-protocol-msgpack/tests/tsconfig.json similarity index 100% rename from clients/ts/signalr-protocol-msgpack/tests/tsconfig.json rename to src/SignalR/clients/ts/signalr-protocol-msgpack/tests/tsconfig.json diff --git a/clients/ts/signalr-protocol-msgpack/tsconfig.json b/src/SignalR/clients/ts/signalr-protocol-msgpack/tsconfig.json similarity index 100% rename from clients/ts/signalr-protocol-msgpack/tsconfig.json rename to src/SignalR/clients/ts/signalr-protocol-msgpack/tsconfig.json diff --git a/clients/ts/signalr-protocol-msgpack/webpack.config.js b/src/SignalR/clients/ts/signalr-protocol-msgpack/webpack.config.js similarity index 100% rename from clients/ts/signalr-protocol-msgpack/webpack.config.js rename to src/SignalR/clients/ts/signalr-protocol-msgpack/webpack.config.js diff --git a/clients/ts/signalr/README.md b/src/SignalR/clients/ts/signalr/README.md similarity index 100% rename from clients/ts/signalr/README.md rename to src/SignalR/clients/ts/signalr/README.md diff --git a/clients/ts/signalr/build/process-dts.js b/src/SignalR/clients/ts/signalr/build/process-dts.js similarity index 100% rename from clients/ts/signalr/build/process-dts.js rename to src/SignalR/clients/ts/signalr/build/process-dts.js diff --git a/clients/ts/signalr/package-lock.json b/src/SignalR/clients/ts/signalr/package-lock.json similarity index 100% rename from clients/ts/signalr/package-lock.json rename to src/SignalR/clients/ts/signalr/package-lock.json diff --git a/clients/ts/signalr/package.json b/src/SignalR/clients/ts/signalr/package.json similarity index 100% rename from clients/ts/signalr/package.json rename to src/SignalR/clients/ts/signalr/package.json diff --git a/clients/ts/signalr/rollup.config.js b/src/SignalR/clients/ts/signalr/rollup.config.js similarity index 100% rename from clients/ts/signalr/rollup.config.js rename to src/SignalR/clients/ts/signalr/rollup.config.js diff --git a/clients/ts/signalr/src/AbortController.ts b/src/SignalR/clients/ts/signalr/src/AbortController.ts similarity index 100% rename from clients/ts/signalr/src/AbortController.ts rename to src/SignalR/clients/ts/signalr/src/AbortController.ts diff --git a/clients/ts/signalr/src/DefaultHttpClient.ts b/src/SignalR/clients/ts/signalr/src/DefaultHttpClient.ts similarity index 100% rename from clients/ts/signalr/src/DefaultHttpClient.ts rename to src/SignalR/clients/ts/signalr/src/DefaultHttpClient.ts diff --git a/clients/ts/signalr/src/Errors.ts b/src/SignalR/clients/ts/signalr/src/Errors.ts similarity index 100% rename from clients/ts/signalr/src/Errors.ts rename to src/SignalR/clients/ts/signalr/src/Errors.ts diff --git a/clients/ts/signalr/src/HandshakeProtocol.ts b/src/SignalR/clients/ts/signalr/src/HandshakeProtocol.ts similarity index 100% rename from clients/ts/signalr/src/HandshakeProtocol.ts rename to src/SignalR/clients/ts/signalr/src/HandshakeProtocol.ts diff --git a/clients/ts/signalr/src/HttpClient.ts b/src/SignalR/clients/ts/signalr/src/HttpClient.ts similarity index 100% rename from clients/ts/signalr/src/HttpClient.ts rename to src/SignalR/clients/ts/signalr/src/HttpClient.ts diff --git a/clients/ts/signalr/src/HttpConnection.ts b/src/SignalR/clients/ts/signalr/src/HttpConnection.ts similarity index 100% rename from clients/ts/signalr/src/HttpConnection.ts rename to src/SignalR/clients/ts/signalr/src/HttpConnection.ts diff --git a/clients/ts/signalr/src/HubConnection.ts b/src/SignalR/clients/ts/signalr/src/HubConnection.ts similarity index 100% rename from clients/ts/signalr/src/HubConnection.ts rename to src/SignalR/clients/ts/signalr/src/HubConnection.ts diff --git a/clients/ts/signalr/src/HubConnectionBuilder.ts b/src/SignalR/clients/ts/signalr/src/HubConnectionBuilder.ts similarity index 100% rename from clients/ts/signalr/src/HubConnectionBuilder.ts rename to src/SignalR/clients/ts/signalr/src/HubConnectionBuilder.ts diff --git a/clients/ts/signalr/src/IConnection.ts b/src/SignalR/clients/ts/signalr/src/IConnection.ts similarity index 100% rename from clients/ts/signalr/src/IConnection.ts rename to src/SignalR/clients/ts/signalr/src/IConnection.ts diff --git a/clients/ts/signalr/src/IHttpConnectionOptions.ts b/src/SignalR/clients/ts/signalr/src/IHttpConnectionOptions.ts similarity index 100% rename from clients/ts/signalr/src/IHttpConnectionOptions.ts rename to src/SignalR/clients/ts/signalr/src/IHttpConnectionOptions.ts diff --git a/clients/ts/signalr/src/IHubProtocol.ts b/src/SignalR/clients/ts/signalr/src/IHubProtocol.ts similarity index 100% rename from clients/ts/signalr/src/IHubProtocol.ts rename to src/SignalR/clients/ts/signalr/src/IHubProtocol.ts diff --git a/clients/ts/signalr/src/ILogger.ts b/src/SignalR/clients/ts/signalr/src/ILogger.ts similarity index 100% rename from clients/ts/signalr/src/ILogger.ts rename to src/SignalR/clients/ts/signalr/src/ILogger.ts diff --git a/clients/ts/signalr/src/ITransport.ts b/src/SignalR/clients/ts/signalr/src/ITransport.ts similarity index 100% rename from clients/ts/signalr/src/ITransport.ts rename to src/SignalR/clients/ts/signalr/src/ITransport.ts diff --git a/clients/ts/signalr/src/JsonHubProtocol.ts b/src/SignalR/clients/ts/signalr/src/JsonHubProtocol.ts similarity index 100% rename from clients/ts/signalr/src/JsonHubProtocol.ts rename to src/SignalR/clients/ts/signalr/src/JsonHubProtocol.ts diff --git a/clients/ts/signalr/src/Loggers.ts b/src/SignalR/clients/ts/signalr/src/Loggers.ts similarity index 100% rename from clients/ts/signalr/src/Loggers.ts rename to src/SignalR/clients/ts/signalr/src/Loggers.ts diff --git a/clients/ts/signalr/src/LongPollingTransport.ts b/src/SignalR/clients/ts/signalr/src/LongPollingTransport.ts similarity index 100% rename from clients/ts/signalr/src/LongPollingTransport.ts rename to src/SignalR/clients/ts/signalr/src/LongPollingTransport.ts diff --git a/clients/ts/signalr/src/NodeHttpClient.ts b/src/SignalR/clients/ts/signalr/src/NodeHttpClient.ts similarity index 100% rename from clients/ts/signalr/src/NodeHttpClient.ts rename to src/SignalR/clients/ts/signalr/src/NodeHttpClient.ts diff --git a/clients/ts/signalr/src/Polyfills.ts b/src/SignalR/clients/ts/signalr/src/Polyfills.ts similarity index 100% rename from clients/ts/signalr/src/Polyfills.ts rename to src/SignalR/clients/ts/signalr/src/Polyfills.ts diff --git a/clients/ts/signalr/src/ServerSentEventsTransport.ts b/src/SignalR/clients/ts/signalr/src/ServerSentEventsTransport.ts similarity index 100% rename from clients/ts/signalr/src/ServerSentEventsTransport.ts rename to src/SignalR/clients/ts/signalr/src/ServerSentEventsTransport.ts diff --git a/clients/ts/signalr/src/Stream.ts b/src/SignalR/clients/ts/signalr/src/Stream.ts similarity index 100% rename from clients/ts/signalr/src/Stream.ts rename to src/SignalR/clients/ts/signalr/src/Stream.ts diff --git a/clients/ts/signalr/src/TextMessageFormat.ts b/src/SignalR/clients/ts/signalr/src/TextMessageFormat.ts similarity index 100% rename from clients/ts/signalr/src/TextMessageFormat.ts rename to src/SignalR/clients/ts/signalr/src/TextMessageFormat.ts diff --git a/clients/ts/signalr/src/Utils.ts b/src/SignalR/clients/ts/signalr/src/Utils.ts similarity index 100% rename from clients/ts/signalr/src/Utils.ts rename to src/SignalR/clients/ts/signalr/src/Utils.ts diff --git a/clients/ts/signalr/src/WebSocketTransport.ts b/src/SignalR/clients/ts/signalr/src/WebSocketTransport.ts similarity index 100% rename from clients/ts/signalr/src/WebSocketTransport.ts rename to src/SignalR/clients/ts/signalr/src/WebSocketTransport.ts diff --git a/clients/ts/signalr/src/XhrHttpClient.ts b/src/SignalR/clients/ts/signalr/src/XhrHttpClient.ts similarity index 100% rename from clients/ts/signalr/src/XhrHttpClient.ts rename to src/SignalR/clients/ts/signalr/src/XhrHttpClient.ts diff --git a/clients/ts/signalr/src/browser-index.ts b/src/SignalR/clients/ts/signalr/src/browser-index.ts similarity index 100% rename from clients/ts/signalr/src/browser-index.ts rename to src/SignalR/clients/ts/signalr/src/browser-index.ts diff --git a/clients/ts/signalr/src/index.ts b/src/SignalR/clients/ts/signalr/src/index.ts similarity index 100% rename from clients/ts/signalr/src/index.ts rename to src/SignalR/clients/ts/signalr/src/index.ts diff --git a/clients/ts/signalr/src/third-party-notices.txt b/src/SignalR/clients/ts/signalr/src/third-party-notices.txt similarity index 100% rename from clients/ts/signalr/src/third-party-notices.txt rename to src/SignalR/clients/ts/signalr/src/third-party-notices.txt diff --git a/clients/ts/signalr/tests/AbortSignal.test.ts b/src/SignalR/clients/ts/signalr/tests/AbortSignal.test.ts similarity index 100% rename from clients/ts/signalr/tests/AbortSignal.test.ts rename to src/SignalR/clients/ts/signalr/tests/AbortSignal.test.ts diff --git a/clients/ts/signalr/tests/Common.ts b/src/SignalR/clients/ts/signalr/tests/Common.ts similarity index 100% rename from clients/ts/signalr/tests/Common.ts rename to src/SignalR/clients/ts/signalr/tests/Common.ts diff --git a/clients/ts/signalr/tests/HttpClient.test.ts b/src/SignalR/clients/ts/signalr/tests/HttpClient.test.ts similarity index 100% rename from clients/ts/signalr/tests/HttpClient.test.ts rename to src/SignalR/clients/ts/signalr/tests/HttpClient.test.ts diff --git a/clients/ts/signalr/tests/HttpConnection.test.ts b/src/SignalR/clients/ts/signalr/tests/HttpConnection.test.ts similarity index 100% rename from clients/ts/signalr/tests/HttpConnection.test.ts rename to src/SignalR/clients/ts/signalr/tests/HttpConnection.test.ts diff --git a/clients/ts/signalr/tests/HubConnection.test.ts b/src/SignalR/clients/ts/signalr/tests/HubConnection.test.ts similarity index 100% rename from clients/ts/signalr/tests/HubConnection.test.ts rename to src/SignalR/clients/ts/signalr/tests/HubConnection.test.ts diff --git a/clients/ts/signalr/tests/HubConnectionBuilder.test.ts b/src/SignalR/clients/ts/signalr/tests/HubConnectionBuilder.test.ts similarity index 100% rename from clients/ts/signalr/tests/HubConnectionBuilder.test.ts rename to src/SignalR/clients/ts/signalr/tests/HubConnectionBuilder.test.ts diff --git a/clients/ts/signalr/tests/JsonHubProtocol.test.ts b/src/SignalR/clients/ts/signalr/tests/JsonHubProtocol.test.ts similarity index 100% rename from clients/ts/signalr/tests/JsonHubProtocol.test.ts rename to src/SignalR/clients/ts/signalr/tests/JsonHubProtocol.test.ts diff --git a/clients/ts/signalr/tests/LongPollingTransport.test.ts b/src/SignalR/clients/ts/signalr/tests/LongPollingTransport.test.ts similarity index 100% rename from clients/ts/signalr/tests/LongPollingTransport.test.ts rename to src/SignalR/clients/ts/signalr/tests/LongPollingTransport.test.ts diff --git a/clients/ts/signalr/tests/ServerSentEventsTransport.test.ts b/src/SignalR/clients/ts/signalr/tests/ServerSentEventsTransport.test.ts similarity index 100% rename from clients/ts/signalr/tests/ServerSentEventsTransport.test.ts rename to src/SignalR/clients/ts/signalr/tests/ServerSentEventsTransport.test.ts diff --git a/clients/ts/signalr/tests/TestEventSource.ts b/src/SignalR/clients/ts/signalr/tests/TestEventSource.ts similarity index 100% rename from clients/ts/signalr/tests/TestEventSource.ts rename to src/SignalR/clients/ts/signalr/tests/TestEventSource.ts diff --git a/clients/ts/signalr/tests/TestHttpClient.ts b/src/SignalR/clients/ts/signalr/tests/TestHttpClient.ts similarity index 100% rename from clients/ts/signalr/tests/TestHttpClient.ts rename to src/SignalR/clients/ts/signalr/tests/TestHttpClient.ts diff --git a/clients/ts/signalr/tests/TestWebSocket.ts b/src/SignalR/clients/ts/signalr/tests/TestWebSocket.ts similarity index 100% rename from clients/ts/signalr/tests/TestWebSocket.ts rename to src/SignalR/clients/ts/signalr/tests/TestWebSocket.ts diff --git a/clients/ts/signalr/tests/TextMessageFormat.test.ts b/src/SignalR/clients/ts/signalr/tests/TextMessageFormat.test.ts similarity index 100% rename from clients/ts/signalr/tests/TextMessageFormat.test.ts rename to src/SignalR/clients/ts/signalr/tests/TextMessageFormat.test.ts diff --git a/clients/ts/signalr/tests/Utils.ts b/src/SignalR/clients/ts/signalr/tests/Utils.ts similarity index 100% rename from clients/ts/signalr/tests/Utils.ts rename to src/SignalR/clients/ts/signalr/tests/Utils.ts diff --git a/clients/ts/signalr/tests/WebSocketTransport.test.ts b/src/SignalR/clients/ts/signalr/tests/WebSocketTransport.test.ts similarity index 100% rename from clients/ts/signalr/tests/WebSocketTransport.test.ts rename to src/SignalR/clients/ts/signalr/tests/WebSocketTransport.test.ts diff --git a/clients/ts/signalr/tests/tsconfig.json b/src/SignalR/clients/ts/signalr/tests/tsconfig.json similarity index 100% rename from clients/ts/signalr/tests/tsconfig.json rename to src/SignalR/clients/ts/signalr/tests/tsconfig.json diff --git a/clients/ts/signalr/tsconfig.json b/src/SignalR/clients/ts/signalr/tsconfig.json similarity index 100% rename from clients/ts/signalr/tsconfig.json rename to src/SignalR/clients/ts/signalr/tsconfig.json diff --git a/clients/ts/signalr/webpack.config.js b/src/SignalR/clients/ts/signalr/webpack.config.js similarity index 100% rename from clients/ts/signalr/webpack.config.js rename to src/SignalR/clients/ts/signalr/webpack.config.js diff --git a/clients/ts/tsconfig.base.json b/src/SignalR/clients/ts/tsconfig.base.json similarity index 100% rename from clients/ts/tsconfig.base.json rename to src/SignalR/clients/ts/tsconfig.base.json diff --git a/clients/ts/tsconfig.jest.json b/src/SignalR/clients/ts/tsconfig.jest.json similarity index 100% rename from clients/ts/tsconfig.jest.json rename to src/SignalR/clients/ts/tsconfig.jest.json diff --git a/clients/ts/tslint.json b/src/SignalR/clients/ts/tslint.json similarity index 100% rename from clients/ts/tslint.json rename to src/SignalR/clients/ts/tslint.json diff --git a/clients/ts/webpack.config.base.js b/src/SignalR/clients/ts/webpack.config.base.js similarity index 100% rename from clients/ts/webpack.config.base.js rename to src/SignalR/clients/ts/webpack.config.base.js diff --git a/docs/GettingStarted.md b/src/SignalR/docs/GettingStarted.md similarity index 100% rename from docs/GettingStarted.md rename to src/SignalR/docs/GettingStarted.md diff --git a/docs/JSFunctionalTests.md b/src/SignalR/docs/JSFunctionalTests.md similarity index 100% rename from docs/JSFunctionalTests.md rename to src/SignalR/docs/JSFunctionalTests.md diff --git a/docs/JSUnitTests.md b/src/SignalR/docs/JSUnitTests.md similarity index 100% rename from docs/JSUnitTests.md rename to src/SignalR/docs/JSUnitTests.md diff --git a/samples/ClientSample/ClientSample.csproj b/src/SignalR/samples/ClientSample/ClientSample.csproj similarity index 100% rename from samples/ClientSample/ClientSample.csproj rename to src/SignalR/samples/ClientSample/ClientSample.csproj diff --git a/samples/ClientSample/HubSample.cs b/src/SignalR/samples/ClientSample/HubSample.cs similarity index 100% rename from samples/ClientSample/HubSample.cs rename to src/SignalR/samples/ClientSample/HubSample.cs diff --git a/samples/ClientSample/LoggingMessageHandler.cs b/src/SignalR/samples/ClientSample/LoggingMessageHandler.cs similarity index 100% rename from samples/ClientSample/LoggingMessageHandler.cs rename to src/SignalR/samples/ClientSample/LoggingMessageHandler.cs diff --git a/samples/ClientSample/Program.cs b/src/SignalR/samples/ClientSample/Program.cs similarity index 100% rename from samples/ClientSample/Program.cs rename to src/SignalR/samples/ClientSample/Program.cs diff --git a/samples/ClientSample/RawSample.cs b/src/SignalR/samples/ClientSample/RawSample.cs similarity index 100% rename from samples/ClientSample/RawSample.cs rename to src/SignalR/samples/ClientSample/RawSample.cs diff --git a/samples/ClientSample/StreamingSample.cs b/src/SignalR/samples/ClientSample/StreamingSample.cs similarity index 100% rename from samples/ClientSample/StreamingSample.cs rename to src/SignalR/samples/ClientSample/StreamingSample.cs diff --git a/samples/ClientSample/Tcp/BufferExtensions.cs b/src/SignalR/samples/ClientSample/Tcp/BufferExtensions.cs similarity index 100% rename from samples/ClientSample/Tcp/BufferExtensions.cs rename to src/SignalR/samples/ClientSample/Tcp/BufferExtensions.cs diff --git a/samples/ClientSample/Tcp/SocketAwaitable.cs b/src/SignalR/samples/ClientSample/Tcp/SocketAwaitable.cs similarity index 100% rename from samples/ClientSample/Tcp/SocketAwaitable.cs rename to src/SignalR/samples/ClientSample/Tcp/SocketAwaitable.cs diff --git a/samples/ClientSample/Tcp/SocketReceiver.cs b/src/SignalR/samples/ClientSample/Tcp/SocketReceiver.cs similarity index 100% rename from samples/ClientSample/Tcp/SocketReceiver.cs rename to src/SignalR/samples/ClientSample/Tcp/SocketReceiver.cs diff --git a/samples/ClientSample/Tcp/SocketSender.cs b/src/SignalR/samples/ClientSample/Tcp/SocketSender.cs similarity index 100% rename from samples/ClientSample/Tcp/SocketSender.cs rename to src/SignalR/samples/ClientSample/Tcp/SocketSender.cs diff --git a/samples/ClientSample/Tcp/TcpConnection.cs b/src/SignalR/samples/ClientSample/Tcp/TcpConnection.cs similarity index 100% rename from samples/ClientSample/Tcp/TcpConnection.cs rename to src/SignalR/samples/ClientSample/Tcp/TcpConnection.cs diff --git a/samples/ClientSample/Tcp/TcpHubConnectionBuilderExtensions.cs b/src/SignalR/samples/ClientSample/Tcp/TcpHubConnectionBuilderExtensions.cs similarity index 100% rename from samples/ClientSample/Tcp/TcpHubConnectionBuilderExtensions.cs rename to src/SignalR/samples/ClientSample/Tcp/TcpHubConnectionBuilderExtensions.cs diff --git a/samples/ClientSample/UploadSample.cs b/src/SignalR/samples/ClientSample/UploadSample.cs similarity index 100% rename from samples/ClientSample/UploadSample.cs rename to src/SignalR/samples/ClientSample/UploadSample.cs diff --git a/samples/JwtClientSample/JwtClientSample.csproj b/src/SignalR/samples/JwtClientSample/JwtClientSample.csproj similarity index 100% rename from samples/JwtClientSample/JwtClientSample.csproj rename to src/SignalR/samples/JwtClientSample/JwtClientSample.csproj diff --git a/samples/JwtClientSample/Program.cs b/src/SignalR/samples/JwtClientSample/Program.cs similarity index 100% rename from samples/JwtClientSample/Program.cs rename to src/SignalR/samples/JwtClientSample/Program.cs diff --git a/samples/JwtSample/.gitignore b/src/SignalR/samples/JwtSample/.gitignore similarity index 100% rename from samples/JwtSample/.gitignore rename to src/SignalR/samples/JwtSample/.gitignore diff --git a/samples/JwtSample/Broadcaster.cs b/src/SignalR/samples/JwtSample/Broadcaster.cs similarity index 100% rename from samples/JwtSample/Broadcaster.cs rename to src/SignalR/samples/JwtSample/Broadcaster.cs diff --git a/samples/JwtSample/JwtSample.csproj b/src/SignalR/samples/JwtSample/JwtSample.csproj similarity index 100% rename from samples/JwtSample/JwtSample.csproj rename to src/SignalR/samples/JwtSample/JwtSample.csproj diff --git a/samples/JwtSample/Program.cs b/src/SignalR/samples/JwtSample/Program.cs similarity index 100% rename from samples/JwtSample/Program.cs rename to src/SignalR/samples/JwtSample/Program.cs diff --git a/samples/JwtSample/Properties/launchSettings.json b/src/SignalR/samples/JwtSample/Properties/launchSettings.json similarity index 100% rename from samples/JwtSample/Properties/launchSettings.json rename to src/SignalR/samples/JwtSample/Properties/launchSettings.json diff --git a/samples/JwtSample/Startup.cs b/src/SignalR/samples/JwtSample/Startup.cs similarity index 100% rename from samples/JwtSample/Startup.cs rename to src/SignalR/samples/JwtSample/Startup.cs diff --git a/samples/JwtSample/wwwroot/index.html b/src/SignalR/samples/JwtSample/wwwroot/index.html similarity index 100% rename from samples/JwtSample/wwwroot/index.html rename to src/SignalR/samples/JwtSample/wwwroot/index.html diff --git a/samples/SignalRSamples/.gitignore b/src/SignalR/samples/SignalRSamples/.gitignore similarity index 100% rename from samples/SignalRSamples/.gitignore rename to src/SignalR/samples/SignalRSamples/.gitignore diff --git a/samples/SignalRSamples/ConnectionHandlers/MessagesConnectionHandler.cs b/src/SignalR/samples/SignalRSamples/ConnectionHandlers/MessagesConnectionHandler.cs similarity index 100% rename from samples/SignalRSamples/ConnectionHandlers/MessagesConnectionHandler.cs rename to src/SignalR/samples/SignalRSamples/ConnectionHandlers/MessagesConnectionHandler.cs diff --git a/samples/SignalRSamples/ConnectionList.cs b/src/SignalR/samples/SignalRSamples/ConnectionList.cs similarity index 100% rename from samples/SignalRSamples/ConnectionList.cs rename to src/SignalR/samples/SignalRSamples/ConnectionList.cs diff --git a/samples/SignalRSamples/Hubs/Chat.cs b/src/SignalR/samples/SignalRSamples/Hubs/Chat.cs similarity index 100% rename from samples/SignalRSamples/Hubs/Chat.cs rename to src/SignalR/samples/SignalRSamples/Hubs/Chat.cs diff --git a/samples/SignalRSamples/Hubs/DynamicChat.cs b/src/SignalR/samples/SignalRSamples/Hubs/DynamicChat.cs similarity index 100% rename from samples/SignalRSamples/Hubs/DynamicChat.cs rename to src/SignalR/samples/SignalRSamples/Hubs/DynamicChat.cs diff --git a/samples/SignalRSamples/Hubs/HubTChat.cs b/src/SignalR/samples/SignalRSamples/Hubs/HubTChat.cs similarity index 100% rename from samples/SignalRSamples/Hubs/HubTChat.cs rename to src/SignalR/samples/SignalRSamples/Hubs/HubTChat.cs diff --git a/samples/SignalRSamples/Hubs/Streaming.cs b/src/SignalR/samples/SignalRSamples/Hubs/Streaming.cs similarity index 100% rename from samples/SignalRSamples/Hubs/Streaming.cs rename to src/SignalR/samples/SignalRSamples/Hubs/Streaming.cs diff --git a/samples/SignalRSamples/Hubs/UploadHub.cs b/src/SignalR/samples/SignalRSamples/Hubs/UploadHub.cs similarity index 100% rename from samples/SignalRSamples/Hubs/UploadHub.cs rename to src/SignalR/samples/SignalRSamples/Hubs/UploadHub.cs diff --git a/samples/SignalRSamples/ObservableExtensions.cs b/src/SignalR/samples/SignalRSamples/ObservableExtensions.cs similarity index 100% rename from samples/SignalRSamples/ObservableExtensions.cs rename to src/SignalR/samples/SignalRSamples/ObservableExtensions.cs diff --git a/samples/SignalRSamples/Program.cs b/src/SignalR/samples/SignalRSamples/Program.cs similarity index 100% rename from samples/SignalRSamples/Program.cs rename to src/SignalR/samples/SignalRSamples/Program.cs diff --git a/samples/SignalRSamples/SignalRSamples.csproj b/src/SignalR/samples/SignalRSamples/SignalRSamples.csproj similarity index 100% rename from samples/SignalRSamples/SignalRSamples.csproj rename to src/SignalR/samples/SignalRSamples/SignalRSamples.csproj diff --git a/samples/SignalRSamples/Startup.cs b/src/SignalR/samples/SignalRSamples/Startup.cs similarity index 100% rename from samples/SignalRSamples/Startup.cs rename to src/SignalR/samples/SignalRSamples/Startup.cs diff --git a/samples/SignalRSamples/web.config b/src/SignalR/samples/SignalRSamples/web.config similarity index 100% rename from samples/SignalRSamples/web.config rename to src/SignalR/samples/SignalRSamples/web.config diff --git a/samples/SignalRSamples/wwwroot/hubs.html b/src/SignalR/samples/SignalRSamples/wwwroot/hubs.html similarity index 100% rename from samples/SignalRSamples/wwwroot/hubs.html rename to src/SignalR/samples/SignalRSamples/wwwroot/hubs.html diff --git a/samples/SignalRSamples/wwwroot/index.html b/src/SignalR/samples/SignalRSamples/wwwroot/index.html similarity index 100% rename from samples/SignalRSamples/wwwroot/index.html rename to src/SignalR/samples/SignalRSamples/wwwroot/index.html diff --git a/samples/SignalRSamples/wwwroot/sockets.html b/src/SignalR/samples/SignalRSamples/wwwroot/sockets.html similarity index 100% rename from samples/SignalRSamples/wwwroot/sockets.html rename to src/SignalR/samples/SignalRSamples/wwwroot/sockets.html diff --git a/samples/SignalRSamples/wwwroot/streaming.html b/src/SignalR/samples/SignalRSamples/wwwroot/streaming.html similarity index 100% rename from samples/SignalRSamples/wwwroot/streaming.html rename to src/SignalR/samples/SignalRSamples/wwwroot/streaming.html diff --git a/samples/SignalRSamples/wwwroot/utils.js b/src/SignalR/samples/SignalRSamples/wwwroot/utils.js similarity index 100% rename from samples/SignalRSamples/wwwroot/utils.js rename to src/SignalR/samples/SignalRSamples/wwwroot/utils.js diff --git a/samples/SignalRSamples/wwwroot/ws.html b/src/SignalR/samples/SignalRSamples/wwwroot/ws.html similarity index 100% rename from samples/SignalRSamples/wwwroot/ws.html rename to src/SignalR/samples/SignalRSamples/wwwroot/ws.html diff --git a/samples/SocialWeather/ConnectionList.cs b/src/SignalR/samples/SocialWeather/ConnectionList.cs similarity index 100% rename from samples/SocialWeather/ConnectionList.cs rename to src/SignalR/samples/SocialWeather/ConnectionList.cs diff --git a/samples/SocialWeather/FormatterResolver.cs b/src/SignalR/samples/SocialWeather/FormatterResolver.cs similarity index 100% rename from samples/SocialWeather/FormatterResolver.cs rename to src/SignalR/samples/SocialWeather/FormatterResolver.cs diff --git a/samples/SocialWeather/IStreamFormatter.cs b/src/SignalR/samples/SocialWeather/IStreamFormatter.cs similarity index 100% rename from samples/SocialWeather/IStreamFormatter.cs rename to src/SignalR/samples/SocialWeather/IStreamFormatter.cs diff --git a/samples/SocialWeather/Json/JSonStreamFormatter.cs b/src/SignalR/samples/SocialWeather/Json/JSonStreamFormatter.cs similarity index 100% rename from samples/SocialWeather/Json/JSonStreamFormatter.cs rename to src/SignalR/samples/SocialWeather/Json/JSonStreamFormatter.cs diff --git a/samples/SocialWeather/PersistentConnectionLifeTimeManager.cs b/src/SignalR/samples/SocialWeather/PersistentConnectionLifeTimeManager.cs similarity index 100% rename from samples/SocialWeather/PersistentConnectionLifeTimeManager.cs rename to src/SignalR/samples/SocialWeather/PersistentConnectionLifeTimeManager.cs diff --git a/samples/SocialWeather/Pipe/PipeWeatherStreamFormatter.cs b/src/SignalR/samples/SocialWeather/Pipe/PipeWeatherStreamFormatter.cs similarity index 100% rename from samples/SocialWeather/Pipe/PipeWeatherStreamFormatter.cs rename to src/SignalR/samples/SocialWeather/Pipe/PipeWeatherStreamFormatter.cs diff --git a/samples/SocialWeather/Program.cs b/src/SignalR/samples/SocialWeather/Program.cs similarity index 100% rename from samples/SocialWeather/Program.cs rename to src/SignalR/samples/SocialWeather/Program.cs diff --git a/samples/SocialWeather/Protobuf/ProtobufWeatherStreamFormatter.cs b/src/SignalR/samples/SocialWeather/Protobuf/ProtobufWeatherStreamFormatter.cs similarity index 100% rename from samples/SocialWeather/Protobuf/ProtobufWeatherStreamFormatter.cs rename to src/SignalR/samples/SocialWeather/Protobuf/ProtobufWeatherStreamFormatter.cs diff --git a/samples/SocialWeather/Protobuf/WeatherReport.cs b/src/SignalR/samples/SocialWeather/Protobuf/WeatherReport.cs similarity index 100% rename from samples/SocialWeather/Protobuf/WeatherReport.cs rename to src/SignalR/samples/SocialWeather/Protobuf/WeatherReport.cs diff --git a/samples/SocialWeather/Protobuf/WeatherReport.proto b/src/SignalR/samples/SocialWeather/Protobuf/WeatherReport.proto similarity index 100% rename from samples/SocialWeather/Protobuf/WeatherReport.proto rename to src/SignalR/samples/SocialWeather/Protobuf/WeatherReport.proto diff --git a/samples/SocialWeather/SocialWeather.csproj b/src/SignalR/samples/SocialWeather/SocialWeather.csproj similarity index 100% rename from samples/SocialWeather/SocialWeather.csproj rename to src/SignalR/samples/SocialWeather/SocialWeather.csproj diff --git a/samples/SocialWeather/SocialWeatherConnectionHandler.cs b/src/SignalR/samples/SocialWeather/SocialWeatherConnectionHandler.cs similarity index 100% rename from samples/SocialWeather/SocialWeatherConnectionHandler.cs rename to src/SignalR/samples/SocialWeather/SocialWeatherConnectionHandler.cs diff --git a/samples/SocialWeather/Startup.cs b/src/SignalR/samples/SocialWeather/Startup.cs similarity index 100% rename from samples/SocialWeather/Startup.cs rename to src/SignalR/samples/SocialWeather/Startup.cs diff --git a/samples/SocialWeather/WeatherReport.cs b/src/SignalR/samples/SocialWeather/WeatherReport.cs similarity index 100% rename from samples/SocialWeather/WeatherReport.cs rename to src/SignalR/samples/SocialWeather/WeatherReport.cs diff --git a/samples/SocialWeather/web.config b/src/SignalR/samples/SocialWeather/web.config similarity index 100% rename from samples/SocialWeather/web.config rename to src/SignalR/samples/SocialWeather/web.config diff --git a/samples/SocialWeather/wwwroot/index.html b/src/SignalR/samples/SocialWeather/wwwroot/index.html similarity index 100% rename from samples/SocialWeather/wwwroot/index.html rename to src/SignalR/samples/SocialWeather/wwwroot/index.html diff --git a/samples/WebSocketSample/Program.cs b/src/SignalR/samples/WebSocketSample/Program.cs similarity index 100% rename from samples/WebSocketSample/Program.cs rename to src/SignalR/samples/WebSocketSample/Program.cs diff --git a/samples/WebSocketSample/WebSocketSample.csproj b/src/SignalR/samples/WebSocketSample/WebSocketSample.csproj similarity index 100% rename from samples/WebSocketSample/WebSocketSample.csproj rename to src/SignalR/samples/WebSocketSample/WebSocketSample.csproj diff --git a/specs/HubProtocol.md b/src/SignalR/specs/HubProtocol.md similarity index 100% rename from specs/HubProtocol.md rename to src/SignalR/specs/HubProtocol.md diff --git a/specs/TransportProtocols.md b/src/SignalR/specs/TransportProtocols.md similarity index 100% rename from specs/TransportProtocols.md rename to src/SignalR/specs/TransportProtocols.md diff --git a/src/Common/AwaitableThreadPool.cs b/src/SignalR/src/Common/AwaitableThreadPool.cs similarity index 100% rename from src/Common/AwaitableThreadPool.cs rename to src/SignalR/src/Common/AwaitableThreadPool.cs diff --git a/src/Common/BinaryMessageFormatter.cs b/src/SignalR/src/Common/BinaryMessageFormatter.cs similarity index 100% rename from src/Common/BinaryMessageFormatter.cs rename to src/SignalR/src/Common/BinaryMessageFormatter.cs diff --git a/src/Common/BinaryMessageParser.cs b/src/SignalR/src/Common/BinaryMessageParser.cs similarity index 100% rename from src/Common/BinaryMessageParser.cs rename to src/SignalR/src/Common/BinaryMessageParser.cs diff --git a/src/Common/DuplexPipe.cs b/src/SignalR/src/Common/DuplexPipe.cs similarity index 100% rename from src/Common/DuplexPipe.cs rename to src/SignalR/src/Common/DuplexPipe.cs diff --git a/src/Common/ForceAsyncAwaiter.cs b/src/SignalR/src/Common/ForceAsyncAwaiter.cs similarity index 100% rename from src/Common/ForceAsyncAwaiter.cs rename to src/SignalR/src/Common/ForceAsyncAwaiter.cs diff --git a/src/Common/JsonUtils.cs b/src/SignalR/src/Common/JsonUtils.cs similarity index 100% rename from src/Common/JsonUtils.cs rename to src/SignalR/src/Common/JsonUtils.cs diff --git a/src/Common/MemoryBufferWriter.cs b/src/SignalR/src/Common/MemoryBufferWriter.cs similarity index 100% rename from src/Common/MemoryBufferWriter.cs rename to src/SignalR/src/Common/MemoryBufferWriter.cs diff --git a/src/Common/PipeWriterStream.cs b/src/SignalR/src/Common/PipeWriterStream.cs similarity index 100% rename from src/Common/PipeWriterStream.cs rename to src/SignalR/src/Common/PipeWriterStream.cs diff --git a/src/Common/ReflectionHelper.cs b/src/SignalR/src/Common/ReflectionHelper.cs similarity index 100% rename from src/Common/ReflectionHelper.cs rename to src/SignalR/src/Common/ReflectionHelper.cs diff --git a/src/Common/StreamExtensions.cs b/src/SignalR/src/Common/StreamExtensions.cs similarity index 100% rename from src/Common/StreamExtensions.cs rename to src/SignalR/src/Common/StreamExtensions.cs diff --git a/src/Common/TextMessageFormatter.cs b/src/SignalR/src/Common/TextMessageFormatter.cs similarity index 100% rename from src/Common/TextMessageFormatter.cs rename to src/SignalR/src/Common/TextMessageFormatter.cs diff --git a/src/Common/TextMessageParser.cs b/src/SignalR/src/Common/TextMessageParser.cs similarity index 100% rename from src/Common/TextMessageParser.cs rename to src/SignalR/src/Common/TextMessageParser.cs diff --git a/src/Common/TimerAwaitable.cs b/src/SignalR/src/Common/TimerAwaitable.cs similarity index 100% rename from src/Common/TimerAwaitable.cs rename to src/SignalR/src/Common/TimerAwaitable.cs diff --git a/src/Common/Utf8BufferTextReader.cs b/src/SignalR/src/Common/Utf8BufferTextReader.cs similarity index 100% rename from src/Common/Utf8BufferTextReader.cs rename to src/SignalR/src/Common/Utf8BufferTextReader.cs diff --git a/src/Common/Utf8BufferTextWriter.cs b/src/SignalR/src/Common/Utf8BufferTextWriter.cs similarity index 100% rename from src/Common/Utf8BufferTextWriter.cs rename to src/SignalR/src/Common/Utf8BufferTextWriter.cs diff --git a/src/Common/WebSocketExtensions.cs b/src/SignalR/src/Common/WebSocketExtensions.cs similarity index 100% rename from src/Common/WebSocketExtensions.cs rename to src/SignalR/src/Common/WebSocketExtensions.cs diff --git a/src/Directory.Build.props b/src/SignalR/src/Directory.Build.props similarity index 100% rename from src/Directory.Build.props rename to src/SignalR/src/Directory.Build.props diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.Log.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.Log.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.Log.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.Log.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnection.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnectionOptions.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnectionOptions.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnectionOptions.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/HttpConnectionOptions.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/AccessTokenHttpMessageHandler.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/AccessTokenHttpMessageHandler.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/AccessTokenHttpMessageHandler.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/AccessTokenHttpMessageHandler.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ClientPipeOptions.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ClientPipeOptions.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ClientPipeOptions.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ClientPipeOptions.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ConnectionLogScope.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ConnectionLogScope.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ConnectionLogScope.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ConnectionLogScope.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/Constants.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/Constants.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/Constants.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/Constants.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/DefaultTransportFactory.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/DefaultTransportFactory.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/DefaultTransportFactory.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/DefaultTransportFactory.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ITransport.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ITransport.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ITransport.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ITransport.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ITransportFactory.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ITransportFactory.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ITransportFactory.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ITransportFactory.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LoggingHttpMessageHandler.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LoggingHttpMessageHandler.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LoggingHttpMessageHandler.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LoggingHttpMessageHandler.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LongPollingTransport.Log.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LongPollingTransport.Log.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LongPollingTransport.Log.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LongPollingTransport.Log.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LongPollingTransport.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LongPollingTransport.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LongPollingTransport.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/LongPollingTransport.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/PipeReaderFactory.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/PipeReaderFactory.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/PipeReaderFactory.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/PipeReaderFactory.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/SendUtils.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/SendUtils.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/SendUtils.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/SendUtils.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsMessageParser.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsMessageParser.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsMessageParser.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsMessageParser.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsTransport.Log.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsTransport.Log.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsTransport.Log.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsTransport.Log.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsTransport.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsTransport.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsTransport.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/ServerSentEventsTransport.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/TaskExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/TaskExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/TaskExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/TaskExtensions.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/Utils.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/Utils.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/Utils.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/Utils.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.Log.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.Log.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.Log.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.Log.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Internal/WebSocketsTransport.cs diff --git a/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 similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Microsoft.AspNetCore.Http.Connections.Client.csproj rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Microsoft.AspNetCore.Http.Connections.Client.csproj diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/Properties/AssemblyInfo.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Properties/AssemblyInfo.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/Properties/AssemblyInfo.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/Properties/AssemblyInfo.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Client/baseline.netcore.json b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Client/baseline.netcore.json rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Client/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.Http.Connections.Common/AvailableTransport.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/AvailableTransport.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Common/AvailableTransport.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/AvailableTransport.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Common/HttpTransportType.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/HttpTransportType.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Common/HttpTransportType.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/HttpTransportType.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Common/HttpTransports.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/HttpTransports.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Common/HttpTransports.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/HttpTransports.cs diff --git a/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 similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Common/Microsoft.AspNetCore.Http.Connections.Common.csproj rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/Microsoft.AspNetCore.Http.Connections.Common.csproj diff --git a/src/Microsoft.AspNetCore.Http.Connections.Common/NegotiateProtocol.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/NegotiateProtocol.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Common/NegotiateProtocol.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/NegotiateProtocol.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Common/NegotiationResponse.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/NegotiationResponse.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Common/NegotiationResponse.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/NegotiationResponse.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections.Common/baseline.netcore.json b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections.Common/baseline.netcore.json rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections.Common/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.Http.Connections/ConnectionsAppBuilderExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/ConnectionsAppBuilderExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/ConnectionsAppBuilderExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/ConnectionsAppBuilderExtensions.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/ConnectionsDependencyInjectionExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/ConnectionsDependencyInjectionExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/ConnectionsDependencyInjectionExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/ConnectionsDependencyInjectionExtensions.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/ConnectionsRouteBuilder.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/ConnectionsRouteBuilder.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/ConnectionsRouteBuilder.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/ConnectionsRouteBuilder.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Features/IHttpContextFeature.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Features/IHttpContextFeature.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Features/IHttpContextFeature.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Features/IHttpContextFeature.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Features/IHttpTransportFeature.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Features/IHttpTransportFeature.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Features/IHttpTransportFeature.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Features/IHttpTransportFeature.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/HttpConnectionContextExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/HttpConnectionContextExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/HttpConnectionContextExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/HttpConnectionContextExtensions.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/HttpConnectionDispatcherOptions.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/HttpConnectionDispatcherOptions.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/HttpConnectionDispatcherOptions.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/HttpConnectionDispatcherOptions.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/AuthorizeHelper.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/AuthorizeHelper.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/AuthorizeHelper.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/AuthorizeHelper.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/ConnectionLogScope.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/ConnectionLogScope.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/ConnectionLogScope.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/ConnectionLogScope.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionContext.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionContext.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionContext.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionContext.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionDispatcher.Log.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionDispatcher.Log.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionDispatcher.Log.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionDispatcher.Log.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionDispatcher.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionDispatcher.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionDispatcher.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionDispatcher.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionManager.Log.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionManager.Log.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionManager.Log.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionManager.Log.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionManager.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionManager.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionManager.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionManager.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionStatus.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionStatus.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionStatus.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionStatus.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionsEventSource.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionsEventSource.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionsEventSource.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/HttpConnectionsEventSource.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/IHttpTransport.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/IHttpTransport.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/IHttpTransport.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/IHttpTransport.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/LongPollingTransport.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/LongPollingTransport.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/LongPollingTransport.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/LongPollingTransport.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/ServerSentEventsMessageFormatter.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/ServerSentEventsMessageFormatter.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/ServerSentEventsMessageFormatter.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/ServerSentEventsMessageFormatter.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/ServerSentEventsTransport.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/ServerSentEventsTransport.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/ServerSentEventsTransport.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/ServerSentEventsTransport.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.Log.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.Log.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.Log.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.Log.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Internal/Transports/WebSocketsTransport.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/LongPollingOptions.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/LongPollingOptions.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/LongPollingOptions.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/LongPollingOptions.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/Microsoft.AspNetCore.Http.Connections.csproj b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Microsoft.AspNetCore.Http.Connections.csproj similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Microsoft.AspNetCore.Http.Connections.csproj rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Microsoft.AspNetCore.Http.Connections.csproj diff --git a/src/Microsoft.AspNetCore.Http.Connections/Properties/AssemblyInfo.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Properties/AssemblyInfo.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/Properties/AssemblyInfo.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/Properties/AssemblyInfo.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/WebSocketOptions.cs b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/WebSocketOptions.cs similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/WebSocketOptions.cs rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/WebSocketOptions.cs diff --git a/src/Microsoft.AspNetCore.Http.Connections/baseline.netcore.json b/src/SignalR/src/Microsoft.AspNetCore.Http.Connections/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.Http.Connections/baseline.netcore.json rename to src/SignalR/src/Microsoft.AspNetCore.Http.Connections/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnection.Log.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnection.Log.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnection.Log.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnection.Log.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnection.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnection.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnection.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnection.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionBuilder.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionBuilder.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionBuilder.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionBuilder.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionBuilderExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionBuilderExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionBuilderExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionBuilderExtensions.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.InvokeAsync.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.InvokeAsync.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.InvokeAsync.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.InvokeAsync.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.InvokeAsyncGeneric.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.InvokeAsyncGeneric.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.InvokeAsyncGeneric.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.InvokeAsyncGeneric.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.SendAsync.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.SendAsync.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.SendAsync.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.SendAsync.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.StreamAsChannelAsync.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.StreamAsChannelAsync.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.StreamAsChannelAsync.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.StreamAsChannelAsync.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionExtensions.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionState.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionState.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionState.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/HubConnectionState.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/IConnectionFactory.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/IConnectionFactory.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/IConnectionFactory.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/IConnectionFactory.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/IHubConnectionBuilder.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/IHubConnectionBuilder.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/IHubConnectionBuilder.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/IHubConnectionBuilder.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/Internal/ConnectionLogScope.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/Internal/ConnectionLogScope.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/Internal/ConnectionLogScope.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/Internal/ConnectionLogScope.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/Internal/InvocationRequest.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/Internal/InvocationRequest.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/Internal/InvocationRequest.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/Internal/InvocationRequest.cs diff --git a/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 similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/Microsoft.AspNetCore.SignalR.Client.Core.csproj rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/Microsoft.AspNetCore.SignalR.Client.Core.csproj diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/Properties/AssemblyInfo.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/Properties/AssemblyInfo.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/Properties/AssemblyInfo.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/Properties/AssemblyInfo.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client.Core/baseline.netcore.json b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client.Core/baseline.netcore.json rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client.Core/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.SignalR.Client/HttpConnectionFactory.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/HttpConnectionFactory.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client/HttpConnectionFactory.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/HttpConnectionFactory.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client/HubConnectionBuilderHttpExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/HubConnectionBuilderHttpExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client/HubConnectionBuilderHttpExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/HubConnectionBuilderHttpExtensions.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Client/Microsoft.AspNetCore.SignalR.Client.csproj b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/Microsoft.AspNetCore.SignalR.Client.csproj similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client/Microsoft.AspNetCore.SignalR.Client.csproj rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/Microsoft.AspNetCore.SignalR.Client.csproj diff --git a/src/Microsoft.AspNetCore.SignalR.Client/baseline.netcore.json b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Client/baseline.netcore.json rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Client/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.SignalR.Common/HubException.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/HubException.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/HubException.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/HubException.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/IInvocationBinder.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/IInvocationBinder.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/IInvocationBinder.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/IInvocationBinder.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/ISignalRBuilder.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/ISignalRBuilder.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/ISignalRBuilder.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/ISignalRBuilder.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Microsoft.AspNetCore.SignalR.Common.csproj b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Microsoft.AspNetCore.SignalR.Common.csproj similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Microsoft.AspNetCore.SignalR.Common.csproj rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Microsoft.AspNetCore.SignalR.Common.csproj diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Properties/AssemblyInfo.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Properties/AssemblyInfo.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Properties/AssemblyInfo.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Properties/AssemblyInfo.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CancelInvocationMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CancelInvocationMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/CancelInvocationMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CancelInvocationMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CloseMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CloseMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/CloseMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CloseMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CompletionMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CompletionMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/CompletionMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/CompletionMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeProtocol.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeProtocol.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeProtocol.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeProtocol.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeRequestMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeRequestMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeRequestMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeRequestMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeResponseMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeResponseMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeResponseMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HandshakeResponseMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubInvocationMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubInvocationMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubInvocationMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubInvocationMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubMethodInvocationMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubMethodInvocationMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubMethodInvocationMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubMethodInvocationMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubProtocolConstants.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubProtocolConstants.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubProtocolConstants.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubProtocolConstants.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubProtocolExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubProtocolExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubProtocolExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/HubProtocolExtensions.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/IHubProtocol.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/IHubProtocol.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/IHubProtocol.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/IHubProtocol.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/InvocationBindingFailureMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/InvocationBindingFailureMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/InvocationBindingFailureMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/InvocationBindingFailureMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/PingMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/PingMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/PingMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/PingMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamBindingFailureMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamBindingFailureMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamBindingFailureMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamBindingFailureMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamCompleteMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamCompleteMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamCompleteMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamCompleteMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamDataMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamDataMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamDataMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamDataMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamItemMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamItemMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamItemMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamItemMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamPlaceholder.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamPlaceholder.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamPlaceholder.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/Protocol/StreamPlaceholder.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Common/baseline.netcore.json b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/baseline.netcore.json rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.SignalR.Common/breakingchanges.netcore.json b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/breakingchanges.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Common/breakingchanges.netcore.json rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Common/breakingchanges.netcore.json diff --git a/src/Microsoft.AspNetCore.SignalR.Core/ClientProxyExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/ClientProxyExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/ClientProxyExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/ClientProxyExtensions.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/DefaultHubLifetimeManager.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DefaultHubLifetimeManager.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/DefaultHubLifetimeManager.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DefaultHubLifetimeManager.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/DefaultUserIdProvider.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DefaultUserIdProvider.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/DefaultUserIdProvider.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DefaultUserIdProvider.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/DynamicHub.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DynamicHub.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/DynamicHub.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DynamicHub.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/DynamicHubClients.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DynamicHubClients.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/DynamicHubClients.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/DynamicHubClients.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Hub.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Hub.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Hub.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Hub.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/HubCallerContext.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubCallerContext.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/HubCallerContext.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubCallerContext.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/HubClientsExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubClientsExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/HubClientsExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubClientsExtensions.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionContext.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionContext.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/HubConnectionContext.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionContext.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionHandler.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionHandler.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/HubConnectionHandler.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionHandler.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionStore.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionStore.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/HubConnectionStore.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubConnectionStore.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/HubLifetimeManager.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubLifetimeManager.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/HubLifetimeManager.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubLifetimeManager.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/HubMethodNameAttribute.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubMethodNameAttribute.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/HubMethodNameAttribute.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubMethodNameAttribute.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/HubOptions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubOptions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/HubOptions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubOptions.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/HubOptions`T.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubOptions`T.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/HubOptions`T.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/HubOptions`T.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Hub`T.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Hub`T.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Hub`T.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Hub`T.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/IClientProxy.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IClientProxy.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/IClientProxy.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IClientProxy.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/IGroupManager.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IGroupManager.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/IGroupManager.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IGroupManager.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/IHubActivator.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubActivator.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/IHubActivator.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubActivator.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/IHubCallerClients.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubCallerClients.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/IHubCallerClients.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubCallerClients.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/IHubCallerClients`T.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubCallerClients`T.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/IHubCallerClients`T.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubCallerClients`T.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/IHubClients.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubClients.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/IHubClients.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubClients.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/IHubClients`T.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubClients`T.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/IHubClients`T.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubClients`T.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/IHubContext.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubContext.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/IHubContext.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubContext.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/IHubContext`T.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubContext`T.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/IHubContext`T.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubContext`T.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/IHubProtocolResolver.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubProtocolResolver.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/IHubProtocolResolver.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IHubProtocolResolver.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/ISignalRServerBuilder.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/ISignalRServerBuilder.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/ISignalRServerBuilder.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/ISignalRServerBuilder.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/IUserIdProvider.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IUserIdProvider.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/IUserIdProvider.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/IUserIdProvider.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/AsyncEnumeratorAdapters.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/AsyncEnumeratorAdapters.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/AsyncEnumeratorAdapters.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/AsyncEnumeratorAdapters.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubActivator.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubActivator.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubActivator.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubActivator.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubCallerContext.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubCallerContext.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubCallerContext.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubCallerContext.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubDispatcher.Log.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubDispatcher.Log.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubDispatcher.Log.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubDispatcher.Log.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubDispatcher.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubDispatcher.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubDispatcher.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubDispatcher.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubProtocolResolver.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubProtocolResolver.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubProtocolResolver.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DefaultHubProtocolResolver.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/DynamicClientProxy.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DynamicClientProxy.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/DynamicClientProxy.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/DynamicClientProxy.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/ErrorMessageHelper.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/ErrorMessageHelper.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/ErrorMessageHelper.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/ErrorMessageHelper.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/GroupManager.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/GroupManager.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/GroupManager.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/GroupManager.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubCallerClients.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubCallerClients.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/HubCallerClients.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubCallerClients.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubClients.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubClients.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/HubClients.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubClients.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubClients`T.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubClients`T.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/HubClients`T.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubClients`T.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubConnectionBinder.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubConnectionBinder.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/HubConnectionBinder.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubConnectionBinder.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubContext.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubContext.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/HubContext.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubContext.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubContext`T.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubContext`T.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/HubContext`T.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubContext`T.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubDispatcher.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubDispatcher.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/HubDispatcher.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubDispatcher.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubGroupList.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubGroupList.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/HubGroupList.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubGroupList.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubMethodDescriptor.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubMethodDescriptor.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/HubMethodDescriptor.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubMethodDescriptor.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubOptionsSetup.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubOptionsSetup.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/HubOptionsSetup.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubOptionsSetup.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubOptionsSetup`T.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubOptionsSetup`T.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/HubOptionsSetup`T.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubOptionsSetup`T.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubReflectionHelper.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubReflectionHelper.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/HubReflectionHelper.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/HubReflectionHelper.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/Proxies.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/Proxies.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/Proxies.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/Proxies.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/SignalRBuilder.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/SignalRBuilder.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/SignalRBuilder.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/SignalRBuilder.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/SignalRCoreMarkerService.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/SignalRCoreMarkerService.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/SignalRCoreMarkerService.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/SignalRCoreMarkerService.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/TaskCache.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/TaskCache.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/TaskCache.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/TaskCache.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypeBaseEnumerationExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypeBaseEnumerationExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/TypeBaseEnumerationExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypeBaseEnumerationExtensions.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypedClientBuilder.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypedClientBuilder.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/TypedClientBuilder.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypedClientBuilder.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypedHubClients.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypedHubClients.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Internal/TypedHubClients.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Internal/TypedHubClients.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Microsoft.AspNetCore.SignalR.Core.csproj b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Microsoft.AspNetCore.SignalR.Core.csproj similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Microsoft.AspNetCore.SignalR.Core.csproj rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Microsoft.AspNetCore.SignalR.Core.csproj diff --git a/src/Microsoft.AspNetCore.SignalR.Core/Properties/AssemblyInfo.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Properties/AssemblyInfo.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/Properties/AssemblyInfo.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/Properties/AssemblyInfo.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/SerializedHubMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SerializedHubMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/SerializedHubMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SerializedHubMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/SerializedMessage.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SerializedMessage.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/SerializedMessage.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SerializedMessage.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/SignalRConnectionBuilderExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SignalRConnectionBuilderExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/SignalRConnectionBuilderExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SignalRConnectionBuilderExtensions.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/SignalRDependencyInjectionExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SignalRDependencyInjectionExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/SignalRDependencyInjectionExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/SignalRDependencyInjectionExtensions.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/StreamTracker.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/StreamTracker.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/StreamTracker.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/StreamTracker.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Core/baseline.netcore.json b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Core/baseline.netcore.json rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Core/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.SignalR.Protocols.Json/JsonHubProtocolOptions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/JsonHubProtocolOptions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Protocols.Json/JsonHubProtocolOptions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/JsonHubProtocolOptions.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Protocols.Json/JsonProtocolDependencyInjectionExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/JsonProtocolDependencyInjectionExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Protocols.Json/JsonProtocolDependencyInjectionExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/JsonProtocolDependencyInjectionExtensions.cs diff --git a/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 similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Protocols.Json/Microsoft.AspNetCore.SignalR.Protocols.Json.csproj rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/Microsoft.AspNetCore.SignalR.Protocols.Json.csproj diff --git a/src/Microsoft.AspNetCore.SignalR.Protocols.Json/Protocol/JsonHubProtocol.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/Protocol/JsonHubProtocol.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Protocols.Json/Protocol/JsonHubProtocol.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/Protocol/JsonHubProtocol.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Protocols.Json/baseline.netcore.json b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Protocols.Json/baseline.netcore.json rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.Json/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/MessagePackHubProtocolOptions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/MessagePackHubProtocolOptions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/MessagePackHubProtocolOptions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/MessagePackHubProtocolOptions.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/MessagePackProtocolDependencyInjectionExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/MessagePackProtocolDependencyInjectionExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/MessagePackProtocolDependencyInjectionExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/MessagePackProtocolDependencyInjectionExtensions.cs diff --git a/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 similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/Microsoft.AspNetCore.SignalR.Protocols.MessagePack.csproj rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/Microsoft.AspNetCore.SignalR.Protocols.MessagePack.csproj diff --git a/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/Protocol/MessagePackHubProtocol.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/Protocol/MessagePackHubProtocol.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/Protocol/MessagePackHubProtocol.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/Protocol/MessagePackHubProtocol.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/baseline.netcore.json b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/baseline.netcore.json rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Protocols.MessagePack/baseline.netcore.json diff --git a/src/Microsoft.AspNetCore.SignalR.Specification.Tests/HubLifetimeManagerTestBase.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Specification.Tests/HubLifetimeManagerTestBase.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Specification.Tests/HubLifetimeManagerTestBase.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Specification.Tests/HubLifetimeManagerTestBase.cs diff --git a/src/Microsoft.AspNetCore.SignalR.Specification.Tests/Microsoft.AspNetCore.SignalR.Specification.Tests.csproj b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Specification.Tests/Microsoft.AspNetCore.SignalR.Specification.Tests.csproj similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Specification.Tests/Microsoft.AspNetCore.SignalR.Specification.Tests.csproj rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Specification.Tests/Microsoft.AspNetCore.SignalR.Specification.Tests.csproj diff --git a/src/Microsoft.AspNetCore.SignalR.Specification.Tests/ScaleoutHubLifetimeManagerTests.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.Specification.Tests/ScaleoutHubLifetimeManagerTests.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.Specification.Tests/ScaleoutHubLifetimeManagerTests.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.Specification.Tests/ScaleoutHubLifetimeManagerTests.cs diff --git a/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/AckHandler.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/AckHandler.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/AckHandler.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/AckHandler.cs diff --git a/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/GroupAction.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/GroupAction.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/GroupAction.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/GroupAction.cs diff --git a/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/MessagePackUtil.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/MessagePackUtil.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/MessagePackUtil.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/MessagePackUtil.cs diff --git a/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisChannels.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisChannels.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisChannels.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisChannels.cs diff --git a/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisGroupCommand.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisGroupCommand.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisGroupCommand.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisGroupCommand.cs diff --git a/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisInvocation.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisInvocation.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisInvocation.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisInvocation.cs diff --git a/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisLog.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisLog.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisLog.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisLog.cs diff --git a/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisProtocol.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisProtocol.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisProtocol.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisProtocol.cs diff --git a/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisSubscriptionManager.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisSubscriptionManager.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisSubscriptionManager.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Internal/RedisSubscriptionManager.cs diff --git a/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Microsoft.AspNetCore.SignalR.StackExchangeRedis.csproj b/src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Microsoft.AspNetCore.SignalR.StackExchangeRedis.csproj similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Microsoft.AspNetCore.SignalR.StackExchangeRedis.csproj rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/Microsoft.AspNetCore.SignalR.StackExchangeRedis.csproj diff --git a/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/RedisDependencyInjectionExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/RedisDependencyInjectionExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/RedisDependencyInjectionExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/RedisDependencyInjectionExtensions.cs diff --git a/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/RedisHubLifetimeManager.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/RedisHubLifetimeManager.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/RedisHubLifetimeManager.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/RedisHubLifetimeManager.cs diff --git a/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/RedisOptions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/RedisOptions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/RedisOptions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR.StackExchangeRedis/RedisOptions.cs diff --git a/src/Microsoft.AspNetCore.SignalR/GetHttpContextExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR/GetHttpContextExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR/GetHttpContextExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR/GetHttpContextExtensions.cs diff --git a/src/Microsoft.AspNetCore.SignalR/HubRouteBuilder.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR/HubRouteBuilder.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR/HubRouteBuilder.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR/HubRouteBuilder.cs diff --git a/src/Microsoft.AspNetCore.SignalR/Microsoft.AspNetCore.SignalR.csproj b/src/SignalR/src/Microsoft.AspNetCore.SignalR/Microsoft.AspNetCore.SignalR.csproj similarity index 100% rename from src/Microsoft.AspNetCore.SignalR/Microsoft.AspNetCore.SignalR.csproj rename to src/SignalR/src/Microsoft.AspNetCore.SignalR/Microsoft.AspNetCore.SignalR.csproj diff --git a/src/Microsoft.AspNetCore.SignalR/SignalRAppBuilderExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR/SignalRAppBuilderExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR/SignalRAppBuilderExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR/SignalRAppBuilderExtensions.cs diff --git a/src/Microsoft.AspNetCore.SignalR/SignalRDependencyInjectionExtensions.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR/SignalRDependencyInjectionExtensions.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR/SignalRDependencyInjectionExtensions.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR/SignalRDependencyInjectionExtensions.cs diff --git a/src/Microsoft.AspNetCore.SignalR/SignalRMarkerService.cs b/src/SignalR/src/Microsoft.AspNetCore.SignalR/SignalRMarkerService.cs similarity index 100% rename from src/Microsoft.AspNetCore.SignalR/SignalRMarkerService.cs rename to src/SignalR/src/Microsoft.AspNetCore.SignalR/SignalRMarkerService.cs diff --git a/src/Microsoft.AspNetCore.SignalR/baseline.netcore.json b/src/SignalR/src/Microsoft.AspNetCore.SignalR/baseline.netcore.json similarity index 100% rename from src/Microsoft.AspNetCore.SignalR/baseline.netcore.json rename to src/SignalR/src/Microsoft.AspNetCore.SignalR/baseline.netcore.json diff --git a/test/Directory.Build.props b/src/SignalR/test/Directory.Build.props similarity index 100% rename from test/Directory.Build.props rename to src/SignalR/test/Directory.Build.props diff --git a/test/Microsoft.AspNetCore.Http.Connections.Tests/ApplicationLifetime.cs b/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/ApplicationLifetime.cs similarity index 100% rename from test/Microsoft.AspNetCore.Http.Connections.Tests/ApplicationLifetime.cs rename to src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/ApplicationLifetime.cs diff --git a/test/Microsoft.AspNetCore.Http.Connections.Tests/HttpConnectionDispatcherTests.cs b/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/HttpConnectionDispatcherTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Http.Connections.Tests/HttpConnectionDispatcherTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/HttpConnectionDispatcherTests.cs diff --git a/test/Microsoft.AspNetCore.Http.Connections.Tests/HttpConnectionManagerTests.cs b/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/HttpConnectionManagerTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Http.Connections.Tests/HttpConnectionManagerTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/HttpConnectionManagerTests.cs diff --git a/test/Microsoft.AspNetCore.Http.Connections.Tests/LongPollingTests.cs b/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/LongPollingTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Http.Connections.Tests/LongPollingTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/LongPollingTests.cs diff --git a/test/Microsoft.AspNetCore.Http.Connections.Tests/MapConnectionHandlerTests.cs b/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/MapConnectionHandlerTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Http.Connections.Tests/MapConnectionHandlerTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/MapConnectionHandlerTests.cs diff --git a/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 similarity index 100% rename from test/Microsoft.AspNetCore.Http.Connections.Tests/Microsoft.AspNetCore.Http.Connections.Tests.csproj rename to src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/Microsoft.AspNetCore.Http.Connections.Tests.csproj diff --git a/test/Microsoft.AspNetCore.Http.Connections.Tests/NegotiateProtocolTests.cs b/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/NegotiateProtocolTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Http.Connections.Tests/NegotiateProtocolTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/NegotiateProtocolTests.cs diff --git a/test/Microsoft.AspNetCore.Http.Connections.Tests/ServerSentEventsMessageFormatterTests.cs b/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/ServerSentEventsMessageFormatterTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Http.Connections.Tests/ServerSentEventsMessageFormatterTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/ServerSentEventsMessageFormatterTests.cs diff --git a/test/Microsoft.AspNetCore.Http.Connections.Tests/ServerSentEventsTests.cs b/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/ServerSentEventsTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Http.Connections.Tests/ServerSentEventsTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/ServerSentEventsTests.cs diff --git a/test/Microsoft.AspNetCore.Http.Connections.Tests/TestWebSocketConnectionFeature.cs b/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/TestWebSocketConnectionFeature.cs similarity index 100% rename from test/Microsoft.AspNetCore.Http.Connections.Tests/TestWebSocketConnectionFeature.cs rename to src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/TestWebSocketConnectionFeature.cs diff --git a/test/Microsoft.AspNetCore.Http.Connections.Tests/WebSocketsTests.cs b/src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/WebSocketsTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.Http.Connections.Tests/WebSocketsTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.Http.Connections.Tests/WebSocketsTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HeaderUserIdProvider.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HeaderUserIdProvider.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HeaderUserIdProvider.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HeaderUserIdProvider.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HubConnectionTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HubConnectionTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HubConnectionTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HubConnectionTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HubProtocolVersionTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HubProtocolVersionTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HubProtocolVersionTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/HubProtocolVersionTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Hubs.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Hubs.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Hubs.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Hubs.cs diff --git a/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 similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Microsoft.AspNetCore.SignalR.Client.FunctionalTests.csproj rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Microsoft.AspNetCore.SignalR.Client.FunctionalTests.csproj diff --git a/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Startup.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Startup.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Startup.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/Startup.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/VersionJsonHubProtocol.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/VersionJsonHubProtocol.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/VersionJsonHubProtocol.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/VersionJsonHubProtocol.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/VersionStartup.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/VersionStartup.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/VersionStartup.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.FunctionalTests/VersionStartup.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionFactoryTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionFactoryTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionFactoryTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionFactoryTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.ConnectionLifecycle.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.ConnectionLifecycle.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.ConnectionLifecycle.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.ConnectionLifecycle.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Helpers.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Helpers.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Helpers.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Helpers.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Negotiate.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Negotiate.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Negotiate.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Negotiate.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Transport.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Transport.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Transport.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.Transport.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HttpConnectionTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionBuilderExtensionsTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionBuilderExtensionsTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionBuilderExtensionsTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionBuilderExtensionsTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionBuilderTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionBuilderTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionBuilderTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionBuilderTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.ConnectionLifecycle.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.ConnectionLifecycle.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.ConnectionLifecycle.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.ConnectionLifecycle.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Extensions.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Extensions.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Extensions.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Extensions.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Helpers.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Helpers.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Helpers.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Helpers.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Protocol.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Protocol.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Protocol.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.Protocol.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/HubConnectionTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/LongPollingTransportTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/LongPollingTransportTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/LongPollingTransportTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/LongPollingTransportTests.cs diff --git a/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 similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/Microsoft.AspNetCore.SignalR.Client.Tests.csproj rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/Microsoft.AspNetCore.SignalR.Client.Tests.csproj diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/ResponseUtils.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/ResponseUtils.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/ResponseUtils.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/ResponseUtils.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/ServerSentEventsParserTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/ServerSentEventsParserTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/ServerSentEventsParserTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/ServerSentEventsParserTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/ServerSentEventsTransportTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/ServerSentEventsTransportTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/ServerSentEventsTransportTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/ServerSentEventsTransportTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestConnection.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestConnection.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/TestConnection.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestConnection.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestHttpMessageHandler.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestHttpMessageHandler.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/TestHttpMessageHandler.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestHttpMessageHandler.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestTransport.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestTransport.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/TestTransport.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestTransport.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestTransportFactory.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestTransportFactory.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Client.Tests/TestTransportFactory.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Client.Tests/TestTransportFactory.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/BinaryMessageFormatterTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/BinaryMessageFormatterTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/BinaryMessageFormatterTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/BinaryMessageFormatterTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/BinaryMessageParserTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/BinaryMessageParserTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/BinaryMessageParserTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/BinaryMessageParserTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/TextMessageFormatterTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/TextMessageFormatterTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/TextMessageFormatterTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/TextMessageFormatterTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/TextMessageParserTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/TextMessageParserTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/TextMessageParserTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Formatters/TextMessageParserTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/CompositeTestBinder.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/CompositeTestBinder.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/CompositeTestBinder.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/CompositeTestBinder.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/CustomObject.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/CustomObject.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/CustomObject.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/CustomObject.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/HandshakeProtocolTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/HandshakeProtocolTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/HandshakeProtocolTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/HandshakeProtocolTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/HubMessageHelpers.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/HubMessageHelpers.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/HubMessageHelpers.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/HubMessageHelpers.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/JsonHubProtocolTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/JsonHubProtocolTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/JsonHubProtocolTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/JsonHubProtocolTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MemoryBufferWriterTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MemoryBufferWriterTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MemoryBufferWriterTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MemoryBufferWriterTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MessagePackHubProtocolTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MessagePackHubProtocolTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MessagePackHubProtocolTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/MessagePackHubProtocolTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/TestBinder.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/TestBinder.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/TestBinder.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/TestBinder.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/TestHubMessageEqualityComparer.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/TestHubMessageEqualityComparer.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/TestHubMessageEqualityComparer.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/TestHubMessageEqualityComparer.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/Utf8BufferTextReaderTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/Utf8BufferTextReaderTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/Utf8BufferTextReaderTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/Utf8BufferTextReaderTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/Utf8BufferTextWriterTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/Utf8BufferTextWriterTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/Utf8BufferTextWriterTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Internal/Protocol/Utf8BufferTextWriterTests.cs diff --git a/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 similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Common.Tests/Microsoft.AspNetCore.SignalR.Common.Tests.csproj rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Common.Tests/Microsoft.AspNetCore.SignalR.Common.Tests.csproj diff --git a/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/Docker.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/Docker.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/Docker.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/Docker.cs diff --git a/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/EchoHub.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/EchoHub.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/EchoHub.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/EchoHub.cs diff --git a/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests.csproj b/src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests.csproj similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests.csproj rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests.csproj diff --git a/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisDependencyInjectionExtensionsTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisDependencyInjectionExtensionsTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisDependencyInjectionExtensionsTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisDependencyInjectionExtensionsTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisEndToEnd.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisEndToEnd.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisEndToEnd.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisEndToEnd.cs diff --git a/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisHubLifetimeManagerTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisHubLifetimeManagerTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisHubLifetimeManagerTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisHubLifetimeManagerTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisProtocolTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisProtocolTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisProtocolTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisProtocolTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisServerFixture.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisServerFixture.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisServerFixture.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/RedisServerFixture.cs diff --git a/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/SkipIfDockerNotPresentAttribute.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/SkipIfDockerNotPresentAttribute.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/SkipIfDockerNotPresentAttribute.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/SkipIfDockerNotPresentAttribute.cs diff --git a/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/Startup.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/Startup.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/Startup.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/Startup.cs diff --git a/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/TestConnectionMultiplexer.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/TestConnectionMultiplexer.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/TestConnectionMultiplexer.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.StackExchangeRedis.Tests/TestConnectionMultiplexer.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/CancellationTokenExtensions.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/CancellationTokenExtensions.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/CancellationTokenExtensions.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/CancellationTokenExtensions.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ChannelExtensions.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ChannelExtensions.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/ChannelExtensions.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ChannelExtensions.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/DelegateConnectionFactory.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/DelegateConnectionFactory.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/DelegateConnectionFactory.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/DelegateConnectionFactory.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/DummyHubProtocol.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/DummyHubProtocol.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/DummyHubProtocol.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/DummyHubProtocol.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ExceptionMessageExtensions.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ExceptionMessageExtensions.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/ExceptionMessageExtensions.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ExceptionMessageExtensions.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/FunctionalTestBase.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/FunctionalTestBase.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/FunctionalTestBase.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/FunctionalTestBase.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubConnectionBuilderTestExtensions.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubConnectionBuilderTestExtensions.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubConnectionBuilderTestExtensions.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubConnectionBuilderTestExtensions.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubConnectionContextUtils.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubConnectionContextUtils.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubConnectionContextUtils.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubConnectionContextUtils.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubProtocolHelpers.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubProtocolHelpers.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubProtocolHelpers.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/HubProtocolHelpers.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/InProcessTestServer.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/InProcessTestServer.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/InProcessTestServer.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/InProcessTestServer.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/LogRecord.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/LogRecord.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/LogRecord.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/LogRecord.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/LogSinkProvider.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/LogSinkProvider.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/LogSinkProvider.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/LogSinkProvider.cs diff --git a/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 similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/Microsoft.AspNetCore.SignalR.Tests.Utils.csproj rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/Microsoft.AspNetCore.SignalR.Tests.Utils.csproj diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/PipeCompletionExtensions.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/PipeCompletionExtensions.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/PipeCompletionExtensions.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/PipeCompletionExtensions.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/PipeReaderExtensions.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/PipeReaderExtensions.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/PipeReaderExtensions.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/PipeReaderExtensions.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ServerLogScope.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ServerLogScope.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/ServerLogScope.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/ServerLogScope.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/SyncPoint.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/SyncPoint.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/SyncPoint.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/SyncPoint.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TaskExtensions.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TaskExtensions.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/TaskExtensions.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TaskExtensions.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestClient.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestClient.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestClient.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestClient.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestHelpers.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestHelpers.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestHelpers.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/TestHelpers.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/VerifiableLoggedTest.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/VerifiableLoggedTest.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/VerifiableLoggedTest.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/VerifiableLoggedTest.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/VerifyNoErrorsScope.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/VerifyNoErrorsScope.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/VerifyNoErrorsScope.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/VerifyNoErrorsScope.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/WebSocketsSupportedConditionAttribute.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/WebSocketsSupportedConditionAttribute.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/WebSocketsSupportedConditionAttribute.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/WebSocketsSupportedConditionAttribute.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests.Utils/WrappingLoggerFactory.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/WrappingLoggerFactory.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests.Utils/WrappingLoggerFactory.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests.Utils/WrappingLoggerFactory.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/AddSignalRTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/AddSignalRTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/AddSignalRTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/AddSignalRTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/AuthConnectionHandler.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/AuthConnectionHandler.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/AuthConnectionHandler.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/AuthConnectionHandler.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/CancellationDisposable.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/CancellationDisposable.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/CancellationDisposable.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/CancellationDisposable.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/ClientProxyTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/ClientProxyTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/ClientProxyTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/ClientProxyTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/DefaultHubActivatorTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/DefaultHubActivatorTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/DefaultHubActivatorTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/DefaultHubActivatorTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/DefaultHubLifetimeManagerTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/DefaultHubLifetimeManagerTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/DefaultHubLifetimeManagerTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/DefaultHubLifetimeManagerTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/DefaultTransportFactoryTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/DefaultTransportFactoryTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/DefaultTransportFactoryTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/DefaultTransportFactoryTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/EchoConnectionHandler.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/EchoConnectionHandler.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/EchoConnectionHandler.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/EchoConnectionHandler.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/EndToEndTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/EndToEndTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/EndToEndTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/EndToEndTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/HttpHeaderConnectionHandler.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HttpHeaderConnectionHandler.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/HttpHeaderConnectionHandler.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HttpHeaderConnectionHandler.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTestUtils/Hubs.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTestUtils/Hubs.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTestUtils/Hubs.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTestUtils/Hubs.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTestUtils/Utils.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTestUtils/Utils.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTestUtils/Utils.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTestUtils/Utils.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubConnectionHandlerTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/HubReflectionHelperTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubReflectionHelperTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/HubReflectionHelperTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/HubReflectionHelperTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/Internal/DefaultHubProtocolResolverTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Internal/DefaultHubProtocolResolverTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/Internal/DefaultHubProtocolResolverTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Internal/DefaultHubProtocolResolverTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/Internal/TypedClientBuilderTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Internal/TypedClientBuilderTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/Internal/TypedClientBuilderTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Internal/TypedClientBuilderTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/MapSignalRTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/MapSignalRTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/MapSignalRTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/MapSignalRTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/Microsoft.AspNetCore.SignalR.Tests.csproj b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Microsoft.AspNetCore.SignalR.Tests.csproj similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/Microsoft.AspNetCore.SignalR.Tests.csproj rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Microsoft.AspNetCore.SignalR.Tests.csproj diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/SerializedHubMessageTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/SerializedHubMessageTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/SerializedHubMessageTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/SerializedHubMessageTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/Startup.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Startup.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/Startup.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/Startup.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/UncreatableHub.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/UncreatableHub.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/UncreatableHub.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/UncreatableHub.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/WebSocketsTransportTests.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/WebSocketsTransportTests.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/WebSocketsTransportTests.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/WebSocketsTransportTests.cs diff --git a/test/Microsoft.AspNetCore.SignalR.Tests/WriteThenCloseConnectionHandler.cs b/src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/WriteThenCloseConnectionHandler.cs similarity index 100% rename from test/Microsoft.AspNetCore.SignalR.Tests/WriteThenCloseConnectionHandler.cs rename to src/SignalR/test/Microsoft.AspNetCore.SignalR.Tests/WriteThenCloseConnectionHandler.cs diff --git a/test/xunit.runner.json b/src/SignalR/test/xunit.runner.json similarity index 100% rename from test/xunit.runner.json rename to src/SignalR/test/xunit.runner.json diff --git a/version.props b/src/SignalR/version.props similarity index 100% rename from version.props rename to src/SignalR/version.props