From a2d855406b837c17f4119bfc9767e32182969194 Mon Sep 17 00:00:00 2001 From: Nate McMaster Date: Tue, 13 Nov 2018 15:30:21 -0800 Subject: [PATCH] Reorganize source code in preparation to move into aspnet/AspNetCore Prior to reorganization, this source code was found in https://github.com/aspnet/DotNetTools/tree/eba014d534ef34ea88ce6c3879b92743b825a7fe --- .appveyor.yml | 17 -- .editorconfig | 24 -- .gitattributes | 52 ---- .gitignore | 37 --- .travis.yml | 27 -- .vsts-pipelines/builds/ci-internal.yml | 13 - .vsts-pipelines/builds/ci-public.yml | 15 - CONTRIBUTING.md | 4 - Directory.Build.props | 25 -- Directory.Build.targets | 6 - DotNetTools.sln | 162 ----------- LICENSE.txt | 14 - NuGet.config | 11 - README.md | 39 --- build.cmd | 2 - build.sh | 8 - build/Key.snk | Bin 596 -> 0 bytes build/VSIX.props | 9 - build/VSIX.targets | 120 -------- build/dependencies.props | 29 -- build/repo.props | 15 - build/repo.targets | 10 - build/sources.props | 18 -- .../NuGetPackageVerifier.json | 204 +++++++------- korebuild-lock.txt | 2 - korebuild.json | 16 -- run.cmd | 2 - run.ps1 | 210 -------------- run.sh | 259 ------------------ samples/dotnet-watch/Directory.Build.props | 2 - samples/dotnet-watch/Directory.Build.targets | 2 - .../LaunchAnyCommand/LaunchAnyCommand.csproj | 13 - .../dotnet-watch/LaunchAnyCommand/README.md | 17 -- .../LaunchAnyCommand/package.json | 8 - .../LaunchAnyCommand/say-hello.js | 1 - samples/dotnet-watch/README.md | 5 - .../WatchJavascriptFiles/Program.cs | 28 -- .../WatchJavascriptFiles/README.md | 16 -- .../WatchJavascriptFiles.csproj | 16 -- .../WatchJavascriptFiles/wwwroot/app.js | 1 - .../WatchMultipleProjects/README.md | 18 -- .../WatchMultipleProjects/Test/Test.csproj | 13 - .../WatchMultipleProjects/Test/UnitTest1.cs | 17 -- .../WatchMultipleProjects/Web/Program.cs | 28 -- .../WatchMultipleProjects/Web/Web.csproj | 15 - .../WatchMultipleProjects/watch.csproj | 17 -- src/Directory.Build.props | 7 - src/Directory.Build.targets | 7 - src/Tools/Directory.Build.targets | 7 + .../src}/CertificateGenerator.cs | 0 ...NetCore.DeveloperCertificates.XPlat.csproj | 2 +- src/Tools/README.md | 32 +++ src/{ => Tools}/dotnet-dev-certs/README.md | 0 .../dotnet-dev-certs/src}/Program.cs | 0 .../src/dotnet-dev-certs.csproj | 32 +++ src/{ => Tools}/dotnet-sql-cache/README.md | 0 .../dotnet-sql-cache/src}/Program.cs | 0 .../dotnet-sql-cache/src}/SqlQueries.cs | 0 .../src/dotnet-sql-cache.csproj | 30 ++ src/{ => Tools}/dotnet-user-secrets/README.md | 0 .../src}/CommandLineOptions.cs | 0 .../src}/Internal/ClearCommand.cs | 0 .../src}/Internal/CommandContext.cs | 0 .../src}/Internal/ICommand.cs | 0 .../src}/Internal/ListCommand.cs | 0 .../src}/Internal/MsBuildProjectFinder.cs | 0 .../src}/Internal/ProjectIdResolver.cs | 0 .../ReadableJsonConfigurationSource.cs | 0 .../src}/Internal/RemoveCommand.cs | 0 .../src}/Internal/SecretsStore.cs | 0 .../src}/Internal/SetCommand.cs | 0 .../dotnet-user-secrets/src}/Program.cs | 0 .../src}/Properties/AssemblyInfo.cs | 0 .../src}/Properties/Resources.Designer.cs | 0 .../dotnet-user-secrets/src}/Resources.resx | 0 .../src}/assets/SecretManager.targets | 0 .../src/dotnet-user-secrets.csproj | 42 +++ .../test}/MsBuildProjectFinderTest.cs | 0 .../test}/SecretManagerTests.cs | 0 .../test}/SetCommandTest.cs | 0 .../test}/TemporaryFileProvider.cs | 0 .../test}/UserSecretsTestFixture.cs | 0 .../test/dotnet-user-secrets.Tests.csproj | 21 ++ src/{ => Tools}/dotnet-watch/README.md | 0 .../dotnet-watch/src}/CommandLineOptions.cs | 0 .../dotnet-watch/src}/DotNetWatcher.cs | 0 .../dotnet-watch/src}/IFileSet.cs | 0 .../dotnet-watch/src}/IFileSetFactory.cs | 0 .../dotnet-watch/src}/Internal/FileSet.cs | 0 .../src}/Internal/FileSetWatcher.cs | 0 .../dotnet-watch/src}/Internal/FileWatcher.cs | 0 .../Internal/FileWatcher/DotnetFileWatcher.cs | 0 .../FileWatcher/FileWatcherFactory.cs | 0 .../FileWatcher/IFileSystemWatcher.cs | 0 .../FileWatcher/PollingFileWatcher.cs | 0 .../src}/Internal/MsBuildFileSetFactory.cs | 0 .../src}/Internal/MsBuildProjectFinder.cs | 0 .../src}/Internal/OutputCapture.cs | 0 .../dotnet-watch/src}/Internal/OutputSink.cs | 0 .../src}/Internal/ProcessRunner.cs | 0 .../src}/PrefixConsoleReporter.cs | 0 .../dotnet-watch/src}/ProcessSpec.cs | 0 .../dotnet-watch/src}/Program.cs | 0 .../src}/Properties/AssemblyInfo.cs | 0 .../src}/Properties/Resources.Designer.cs | 0 .../dotnet-watch/src}/Resources.resx | 0 .../src}/assets/DotNetWatch.targets | 0 .../dotnet-watch/src}/dotnet-watch.csproj | 0 .../dotnet-watch/test}/AppWithDepsTests.cs | 0 .../Tools/dotnet-watch/test}/AssertEx.cs | 0 .../dotnet-watch/test}/AwaitableProcess.cs | 0 .../test}/CommandLineOptionsTests.cs | 0 .../test}/ConsoleReporterTests.cs | 0 .../dotnet-watch/test}/DotNetWatcherTests.cs | 0 .../dotnet-watch/test}/FileWatcherTests.cs | 0 .../dotnet-watch/test}/GlobbingAppTests.cs | 0 .../test}/MsBuildFileSetFactoryTest.cs | 0 .../dotnet-watch/test}/NoDepsAppTests.cs | 0 .../Tools/dotnet-watch/test}/ProgramTests.cs | 0 .../test}/Scenario/ProjectToolScenario.cs | 0 .../test}/Scenario/WatchableApp.cs | 0 .../AppWithDeps/AppWithDeps.csproj | 0 .../test}/TestProjects/AppWithDeps/Program.cs | 0 .../TestProjects/Dependency/Dependency.csproj | 0 .../test}/TestProjects/Dependency/Foo.cs | 0 .../GlobbingApp/GlobbingApp.csproj | 0 .../test}/TestProjects/GlobbingApp/Program.cs | 0 .../TestProjects/GlobbingApp/exclude/Baz.cs | 0 .../TestProjects/GlobbingApp/include/Foo.cs | 0 .../KitchenSink/KitchenSink.csproj | 0 .../test}/TestProjects/KitchenSink/Program.cs | 0 .../TestProjects/NoDepsApp/NoDepsApp.csproj | 0 .../test}/TestProjects/NoDepsApp/Program.cs | 0 .../test}/Utilities/TemporaryCSharpProject.cs | 0 .../test}/Utilities/TemporaryDirectory.cs | 0 .../test}/Utilities/TestProjectGraph.cs | 0 .../test/dotnet-watch.Tests.csproj | 13 +- .../Tools/shared/src}/CliContext.cs | 0 .../src}/CommandLineApplicationExtensions.cs | 0 .../Tools/shared/src}/ConsoleReporter.cs | 0 .../Tools/shared/src}/DebugHelper.cs | 0 {shared => src/Tools/shared/src}/Ensure.cs | 0 {shared => src/Tools/shared/src}/IConsole.cs | 0 {shared => src/Tools/shared/src}/IReporter.cs | 0 .../Tools/shared/src}/NullReporter.cs | 0 .../Tools/shared/src}/PhysicalConsole.cs | 0 .../Tools/shared/test}/TestConsole.cs | 0 .../Tools/shared/test}/TestReporter.cs | 0 src/dotnet-dev-certs/dotnet-dev-certs.csproj | 32 --- src/dotnet-sql-cache/dotnet-sql-cache.csproj | 35 --- .../dotnet-user-secrets.csproj | 42 --- test/Directory.Build.props | 11 - .../dotnet-user-secrets.Tests.csproj | 21 -- .../dotnet-watch.Tests.csproj | 16 -- .../Key.snk | Bin 596 -> 0 bytes ...lStudio.SecretManager.TestExtension.csproj | 149 ---------- .../NotifyPropertyChanged.cs | 18 -- .../ProjectViewModel.cs | 20 -- .../Properties/AssemblyInfo.cs | 33 --- .../RelayCommand.cs | 44 --- .../Resources/SecretManagerTestCommand.png | Bin 1172 -> 0 bytes .../Resources/SecretManagerTestPackage.ico | Bin 428446 -> 0 bytes .../SecretManagerTestCommand.cs | 100 ------- .../SecretManagerTestControl.xaml | 87 ------ .../SecretManagerTestControl.xaml.cs | 37 --- .../SecretManagerTestPackage.cs | 27 -- .../SecretManagerTestPackage.vsct | 83 ------ .../SecretManagerTestWindow.cs | 31 --- .../SecretManagerViewModel.cs | 214 --------------- .../VSPackage.resx | 140 ---------- .../app.config | 27 -- .../source.extension.vsixmanifest | 21 -- ...icrosoft.VisualStudio.SecretManager.csproj | 117 -------- .../ProjectLocalSecretsManager.cs | 148 ---------- .../Properties/AssemblyInfo.cs | 16 -- .../Resources.Designer.cs | 140 ---------- .../Resources.resx | 146 ---------- .../SecretManagerFactory.cs | 37 --- .../SecretStore.cs | 169 ------------ .../Sources/ConfigurationPath.cs | 79 ------ .../Sources/JsonConfigurationFileParser.cs | 120 -------- .../Sources/PathHelper.cs | 57 ---- .../source.extension.vsixmanifest | 22 -- version.props | 15 - 184 files changed, 273 insertions(+), 3741 deletions(-) delete mode 100644 .appveyor.yml delete mode 100644 .editorconfig delete mode 100644 .gitattributes delete mode 100644 .gitignore delete mode 100644 .travis.yml delete mode 100644 .vsts-pipelines/builds/ci-internal.yml delete mode 100644 .vsts-pipelines/builds/ci-public.yml delete mode 100644 CONTRIBUTING.md delete mode 100644 Directory.Build.props delete mode 100644 Directory.Build.targets delete mode 100644 DotNetTools.sln delete mode 100644 LICENSE.txt delete mode 100644 NuGet.config delete mode 100644 README.md delete mode 100644 build.cmd delete mode 100755 build.sh delete mode 100644 build/Key.snk delete mode 100644 build/VSIX.props delete mode 100644 build/VSIX.targets delete mode 100644 build/dependencies.props delete mode 100644 build/repo.props delete mode 100644 build/repo.targets delete mode 100644 build/sources.props rename NuGetPackageVerifier.json => eng/NuGetPackageVerifier.json (98%) delete mode 100644 korebuild-lock.txt delete mode 100644 korebuild.json delete mode 100644 run.cmd delete mode 100644 run.ps1 delete mode 100755 run.sh delete mode 100644 samples/dotnet-watch/Directory.Build.props delete mode 100644 samples/dotnet-watch/Directory.Build.targets delete mode 100644 samples/dotnet-watch/LaunchAnyCommand/LaunchAnyCommand.csproj delete mode 100644 samples/dotnet-watch/LaunchAnyCommand/README.md delete mode 100644 samples/dotnet-watch/LaunchAnyCommand/package.json delete mode 100644 samples/dotnet-watch/LaunchAnyCommand/say-hello.js delete mode 100644 samples/dotnet-watch/README.md delete mode 100755 samples/dotnet-watch/WatchJavascriptFiles/Program.cs delete mode 100644 samples/dotnet-watch/WatchJavascriptFiles/README.md delete mode 100755 samples/dotnet-watch/WatchJavascriptFiles/WatchJavascriptFiles.csproj delete mode 100644 samples/dotnet-watch/WatchJavascriptFiles/wwwroot/app.js delete mode 100644 samples/dotnet-watch/WatchMultipleProjects/README.md delete mode 100755 samples/dotnet-watch/WatchMultipleProjects/Test/Test.csproj delete mode 100755 samples/dotnet-watch/WatchMultipleProjects/Test/UnitTest1.cs delete mode 100755 samples/dotnet-watch/WatchMultipleProjects/Web/Program.cs delete mode 100755 samples/dotnet-watch/WatchMultipleProjects/Web/Web.csproj delete mode 100644 samples/dotnet-watch/WatchMultipleProjects/watch.csproj delete mode 100644 src/Directory.Build.props delete mode 100644 src/Directory.Build.targets create mode 100644 src/Tools/Directory.Build.targets rename src/{Microsoft.AspNetCore.DeveloperCertificates.XPlat => Tools/FirstRunCertGenerator/src}/CertificateGenerator.cs (100%) rename src/{Microsoft.AspNetCore.DeveloperCertificates.XPlat => Tools/FirstRunCertGenerator/src}/Microsoft.AspNetCore.DeveloperCertificates.XPlat.csproj (65%) create mode 100644 src/Tools/README.md rename src/{ => Tools}/dotnet-dev-certs/README.md (100%) rename src/{dotnet-dev-certs => Tools/dotnet-dev-certs/src}/Program.cs (100%) create mode 100644 src/Tools/dotnet-dev-certs/src/dotnet-dev-certs.csproj rename src/{ => Tools}/dotnet-sql-cache/README.md (100%) rename src/{dotnet-sql-cache => Tools/dotnet-sql-cache/src}/Program.cs (100%) rename src/{dotnet-sql-cache => Tools/dotnet-sql-cache/src}/SqlQueries.cs (100%) create mode 100644 src/Tools/dotnet-sql-cache/src/dotnet-sql-cache.csproj rename src/{ => Tools}/dotnet-user-secrets/README.md (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/CommandLineOptions.cs (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/Internal/ClearCommand.cs (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/Internal/CommandContext.cs (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/Internal/ICommand.cs (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/Internal/ListCommand.cs (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/Internal/MsBuildProjectFinder.cs (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/Internal/ProjectIdResolver.cs (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/Internal/ReadableJsonConfigurationSource.cs (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/Internal/RemoveCommand.cs (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/Internal/SecretsStore.cs (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/Internal/SetCommand.cs (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/Program.cs (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/Properties/AssemblyInfo.cs (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/Properties/Resources.Designer.cs (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/Resources.resx (100%) rename src/{dotnet-user-secrets => Tools/dotnet-user-secrets/src}/assets/SecretManager.targets (100%) create mode 100644 src/Tools/dotnet-user-secrets/src/dotnet-user-secrets.csproj rename {test/dotnet-user-secrets.Tests => src/Tools/dotnet-user-secrets/test}/MsBuildProjectFinderTest.cs (100%) rename {test/dotnet-user-secrets.Tests => src/Tools/dotnet-user-secrets/test}/SecretManagerTests.cs (100%) rename {test/dotnet-user-secrets.Tests => src/Tools/dotnet-user-secrets/test}/SetCommandTest.cs (100%) rename {test/dotnet-user-secrets.Tests => src/Tools/dotnet-user-secrets/test}/TemporaryFileProvider.cs (100%) rename {test/dotnet-user-secrets.Tests => src/Tools/dotnet-user-secrets/test}/UserSecretsTestFixture.cs (100%) create mode 100644 src/Tools/dotnet-user-secrets/test/dotnet-user-secrets.Tests.csproj rename src/{ => Tools}/dotnet-watch/README.md (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/CommandLineOptions.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/DotNetWatcher.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/IFileSet.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/IFileSetFactory.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Internal/FileSet.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Internal/FileSetWatcher.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Internal/FileWatcher.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Internal/FileWatcher/DotnetFileWatcher.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Internal/FileWatcher/FileWatcherFactory.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Internal/FileWatcher/IFileSystemWatcher.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Internal/FileWatcher/PollingFileWatcher.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Internal/MsBuildFileSetFactory.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Internal/MsBuildProjectFinder.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Internal/OutputCapture.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Internal/OutputSink.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Internal/ProcessRunner.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/PrefixConsoleReporter.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/ProcessSpec.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Program.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Properties/AssemblyInfo.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Properties/Resources.Designer.cs (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/Resources.resx (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/assets/DotNetWatch.targets (100%) rename src/{dotnet-watch => Tools/dotnet-watch/src}/dotnet-watch.csproj (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/AppWithDepsTests.cs (100%) rename {test/dotnet-watch.Tests => src/Tools/dotnet-watch/test}/AssertEx.cs (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/AwaitableProcess.cs (100%) rename {test/dotnet-watch.Tests => src/Tools/dotnet-watch/test}/CommandLineOptionsTests.cs (100%) rename {test/dotnet-watch.Tests => src/Tools/dotnet-watch/test}/ConsoleReporterTests.cs (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/DotNetWatcherTests.cs (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/FileWatcherTests.cs (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/GlobbingAppTests.cs (100%) rename {test/dotnet-watch.Tests => src/Tools/dotnet-watch/test}/MsBuildFileSetFactoryTest.cs (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/NoDepsAppTests.cs (100%) rename {test/dotnet-watch.Tests => src/Tools/dotnet-watch/test}/ProgramTests.cs (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/Scenario/ProjectToolScenario.cs (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/Scenario/WatchableApp.cs (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/TestProjects/AppWithDeps/AppWithDeps.csproj (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/TestProjects/AppWithDeps/Program.cs (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/TestProjects/Dependency/Dependency.csproj (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/TestProjects/Dependency/Foo.cs (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/TestProjects/GlobbingApp/GlobbingApp.csproj (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/TestProjects/GlobbingApp/Program.cs (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/TestProjects/GlobbingApp/exclude/Baz.cs (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/TestProjects/GlobbingApp/include/Foo.cs (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/TestProjects/KitchenSink/KitchenSink.csproj (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/TestProjects/KitchenSink/Program.cs (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/TestProjects/NoDepsApp/NoDepsApp.csproj (100%) rename {test/dotnet-watch.FunctionalTests => src/Tools/dotnet-watch/test}/TestProjects/NoDepsApp/Program.cs (100%) rename {test/dotnet-watch.Tests => src/Tools/dotnet-watch/test}/Utilities/TemporaryCSharpProject.cs (100%) rename {test/dotnet-watch.Tests => src/Tools/dotnet-watch/test}/Utilities/TemporaryDirectory.cs (100%) rename {test/dotnet-watch.Tests => src/Tools/dotnet-watch/test}/Utilities/TestProjectGraph.cs (100%) rename test/dotnet-watch.FunctionalTests/dotnet-watch.FunctionalTests.csproj => src/Tools/dotnet-watch/test/dotnet-watch.Tests.csproj (64%) rename {shared => src/Tools/shared/src}/CliContext.cs (100%) rename {shared => src/Tools/shared/src}/CommandLineApplicationExtensions.cs (100%) rename {shared => src/Tools/shared/src}/ConsoleReporter.cs (100%) rename {shared => src/Tools/shared/src}/DebugHelper.cs (100%) rename {shared => src/Tools/shared/src}/Ensure.cs (100%) rename {shared => src/Tools/shared/src}/IConsole.cs (100%) rename {shared => src/Tools/shared/src}/IReporter.cs (100%) rename {shared => src/Tools/shared/src}/NullReporter.cs (100%) rename {shared => src/Tools/shared/src}/PhysicalConsole.cs (100%) rename {test/Shared => src/Tools/shared/test}/TestConsole.cs (100%) rename {test/Shared => src/Tools/shared/test}/TestReporter.cs (100%) delete mode 100644 src/dotnet-dev-certs/dotnet-dev-certs.csproj delete mode 100644 src/dotnet-sql-cache/dotnet-sql-cache.csproj delete mode 100644 src/dotnet-user-secrets/dotnet-user-secrets.csproj delete mode 100644 test/Directory.Build.props delete mode 100644 test/dotnet-user-secrets.Tests/dotnet-user-secrets.Tests.csproj delete mode 100644 test/dotnet-watch.Tests/dotnet-watch.Tests.csproj delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/Key.snk delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/Microsoft.VisualStudio.SecretManager.TestExtension.csproj delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/NotifyPropertyChanged.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/ProjectViewModel.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/Properties/AssemblyInfo.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/RelayCommand.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/Resources/SecretManagerTestCommand.png delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/Resources/SecretManagerTestPackage.ico delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestCommand.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestControl.xaml delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestControl.xaml.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestPackage.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestPackage.vsct delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestWindow.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerViewModel.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/VSPackage.resx delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/app.config delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager.TestExtension/source.extension.vsixmanifest delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager/Microsoft.VisualStudio.SecretManager.csproj delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager/ProjectLocalSecretsManager.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager/Properties/AssemblyInfo.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager/Resources.Designer.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager/Resources.resx delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager/SecretManagerFactory.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager/SecretStore.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager/Sources/ConfigurationPath.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager/Sources/JsonConfigurationFileParser.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager/Sources/PathHelper.cs delete mode 100644 tooling/Microsoft.VisualStudio.SecretManager/source.extension.vsixmanifest delete mode 100644 version.props diff --git a/.appveyor.yml b/.appveyor.yml deleted file mode 100644 index 4eea96ab69..0000000000 --- a/.appveyor.yml +++ /dev/null @@ -1,17 +0,0 @@ -init: -- git config --global core.autocrlf true -branches: - only: - - dev - - /^release\/.*$/ - - /^(.*\/)?ci-.*$/ -build_script: -- ps: .\run.ps1 default-build -clone_depth: 1 -environment: - global: - DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true - DOTNET_CLI_TELEMETRY_OPTOUT: 1 -test: 'off' -deploy: 'off' -os: Visual Studio 2017 diff --git a/.editorconfig b/.editorconfig deleted file mode 100644 index e2566a262e..0000000000 --- a/.editorconfig +++ /dev/null @@ -1,24 +0,0 @@ -# EditorConfig is awesome:http://EditorConfig.org - -# top-most EditorConfig file -root = true - -[*] -indent_style = space -charset = utf-8 -trim_trailing_whitespace = true -insert_final_newline = true - -[*.cs] -indent_size = 4 -dotnet_sort_system_directives_first = true:warning - -# Xml files -[*.{csproj,config,props,targets,ruleset,config,resx,xml}] -indent_size = 2 - -[*.{json, yml}] -indent_size = 2 - -[*.{ps1,sh}] -indent_size = 4 \ No newline at end of file diff --git a/.gitattributes b/.gitattributes deleted file mode 100644 index c2f0f84273..0000000000 --- a/.gitattributes +++ /dev/null @@ -1,52 +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 \ No newline at end of file diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 01ed76be4f..0000000000 --- a/.gitignore +++ /dev/null @@ -1,37 +0,0 @@ -[Oo]bj/ -[Bb]in/ -TestResults/ -.nuget/ -_ReSharper.*/ -packages/ -artifacts/ -PublishProfiles/ -*.user -*.suo -*.cache -*.docstates -_ReSharper.* -nuget.exe -*net45.csproj -*net451.csproj -*k10.csproj -*.psess -*.vsp -*.pidb -*.userprefs -*DS_Store -*.ncrunchsolution -*.*sdf -*.ipch -*.sln.ide -project.lock.json -.testPublish/ -.build/ -/.vs/ -.vscode/ -*.nuget.props -*.nuget.targets -.idea/ -.dotnet/ -global.json -*.binlog diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 64bdbb4441..0000000000 --- a/.travis.yml +++ /dev/null @@ -1,27 +0,0 @@ -language: csharp -sudo: false -dist: trusty -env: - global: - - DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true - - DOTNET_CLI_TELEMETRY_OPTOUT: 1 -mono: none -os: -- linux -- osx -osx_image: xcode8.2 -addons: - apt: - packages: - - libunwind8 -branches: - only: - - dev - - /^release\/.*$/ - - /^(.*\/)?ci-.*$/ -before_install: -- if test "$TRAVIS_OS_NAME" == "osx"; then brew update; brew install openssl; ln -s - /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib /usr/local/lib/; ln -s /usr/local/opt/openssl/lib/libssl.1.0.0.dylib - /usr/local/lib/; fi -script: -- ./build.sh diff --git a/.vsts-pipelines/builds/ci-internal.yml b/.vsts-pipelines/builds/ci-internal.yml deleted file mode 100644 index 3693598d93..0000000000 --- a/.vsts-pipelines/builds/ci-internal.yml +++ /dev/null @@ -1,13 +0,0 @@ -trigger: -- master -- release/* - -resources: - repositories: - - repository: buildtools - type: git - name: aspnet-BuildTools - ref: refs/heads/release/2.1 - -phases: -- template: .vsts-pipelines/templates/project-ci.yml@buildtools diff --git a/.vsts-pipelines/builds/ci-public.yml b/.vsts-pipelines/builds/ci-public.yml deleted file mode 100644 index c459e62eb6..0000000000 --- a/.vsts-pipelines/builds/ci-public.yml +++ /dev/null @@ -1,15 +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/release/2.1 - -phases: -- template: .vsts-pipelines/templates/project-ci.yml@buildtools diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md deleted file mode 100644 index 64ff041d5c..0000000000 --- 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/dev/CONTRIBUTING.md) in the Home repo. diff --git a/Directory.Build.props b/Directory.Build.props deleted file mode 100644 index 8c12d37b2d..0000000000 --- a/Directory.Build.props +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - Microsoft .NET - https://github.com/aspnet/DotNetTools - git - $(MSBuildThisFileDirectory) - $(MSBuildThisFileDirectory)build\Key.snk - true - true - - - false - $(MSBuildThisFileDirectory)obj\$(MSBuildProjectName)\ - $(MSBuildThisFileDirectory)bin\$(MSBuildProjectName)\ - - - diff --git a/Directory.Build.targets b/Directory.Build.targets deleted file mode 100644 index eb03b2565f..0000000000 --- a/Directory.Build.targets +++ /dev/null @@ -1,6 +0,0 @@ - - - $(MicrosoftNETCoreApp21PackageVersion) - $(NETStandardLibrary20PackageVersion) - - diff --git a/DotNetTools.sln b/DotNetTools.sln deleted file mode 100644 index 82fefe40d0..0000000000 --- a/DotNetTools.sln +++ /dev/null @@ -1,162 +0,0 @@ -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 15 -VisualStudioVersion = 15.0.27120.0 -MinimumVisualStudioVersion = 15.0.26730.03 -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{66517987-2A5A-4330-B130-207039378FD4}" - ProjectSection(SolutionItems) = preProject - src\Directory.Build.props = src\Directory.Build.props - EndProjectSection -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "dotnet-watch", "src\dotnet-watch\dotnet-watch.csproj", "{8A8CEABC-AC47-43FF-A5DF-69224F7E1F46}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{8321E0D1-9A47-4D2F-AED8-3AE636D44E35}" - ProjectSection(SolutionItems) = preProject - .appveyor.yml = .appveyor.yml - .editorconfig = .editorconfig - .gitattributes = .gitattributes - .gitignore = .gitignore - .travis.yml = .travis.yml - build.cmd = build.cmd - build.ps1 = build.ps1 - build.sh = build.sh - CONTRIBUTING.md = CONTRIBUTING.md - build\dependencies.props = build\dependencies.props - Directory.Build.props = Directory.Build.props - Directory.Build.targets = Directory.Build.targets - LICENSE.txt = LICENSE.txt - NuGet.config = NuGet.config - NuGetPackageVerifier.json = NuGetPackageVerifier.json - README.md = README.md - build\sources.props = build\sources.props - version.props = version.props - EndProjectSection -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "test", "test", "{F5B382BC-258F-46E1-AC3D-10E5CCD55134}" - ProjectSection(SolutionItems) = preProject - test\Directory.Build.props = test\Directory.Build.props - EndProjectSection -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "dotnet-watch.FunctionalTests", "test\dotnet-watch.FunctionalTests\dotnet-watch.FunctionalTests.csproj", "{16BADE2F-1184-4518-8A70-B68A19D0805B}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "dotnet-user-secrets", "src\dotnet-user-secrets\dotnet-user-secrets.csproj", "{8730E848-CA0F-4E0A-9A2F-BC22AD0B2C4E}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "dotnet-user-secrets.Tests", "test\dotnet-user-secrets.Tests\dotnet-user-secrets.Tests.csproj", "{7B331122-83B1-4F08-A119-DC846959844C}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "dotnet-watch.Tests", "test\dotnet-watch.Tests\dotnet-watch.Tests.csproj", "{8A2E6961-6B12-4A8E-8215-3E7301D52EAC}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "dotnet-sql-cache", "src\dotnet-sql-cache\dotnet-sql-cache.csproj", "{53F3B53D-303A-4DAA-9C38-4F55195FA5B9}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "dotnet-dev-certs", "src\dotnet-dev-certs\dotnet-dev-certs.csproj", "{4FED5119-EE5C-4753-88A4-D61BDEB4D6C8}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.VisualStudio.SecretManager", "tooling\Microsoft.VisualStudio.SecretManager\Microsoft.VisualStudio.SecretManager.csproj", "{5E117F2E-7152-447F-BF47-59F759EEF3A7}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tooling", "tooling", "{62826851-7D74-4F1E-B7D1-12553B789CD8}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.VisualStudio.SecretManager.TestExtension", "tooling\Microsoft.VisualStudio.SecretManager.TestExtension\Microsoft.VisualStudio.SecretManager.TestExtension.csproj", "{965F8820-F809-4081-9090-1AEC903F291B}" -EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.DeveloperCertificates.XPlat", "src\Microsoft.AspNetCore.DeveloperCertificates.XPlat\Microsoft.AspNetCore.DeveloperCertificates.XPlat.csproj", "{96E71881-1465-44F5-B4B7-DF9B370FFD02}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - DebugNoVSIX|Any CPU = DebugNoVSIX|Any CPU - Release|Any CPU = Release|Any CPU - ReleaseNoVSIX|Any CPU = ReleaseNoVSIX|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {8A8CEABC-AC47-43FF-A5DF-69224F7E1F46}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8A8CEABC-AC47-43FF-A5DF-69224F7E1F46}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8A8CEABC-AC47-43FF-A5DF-69224F7E1F46}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU - {8A8CEABC-AC47-43FF-A5DF-69224F7E1F46}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU - {8A8CEABC-AC47-43FF-A5DF-69224F7E1F46}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8A8CEABC-AC47-43FF-A5DF-69224F7E1F46}.Release|Any CPU.Build.0 = Release|Any CPU - {8A8CEABC-AC47-43FF-A5DF-69224F7E1F46}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU - {8A8CEABC-AC47-43FF-A5DF-69224F7E1F46}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU - {16BADE2F-1184-4518-8A70-B68A19D0805B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {16BADE2F-1184-4518-8A70-B68A19D0805B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {16BADE2F-1184-4518-8A70-B68A19D0805B}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU - {16BADE2F-1184-4518-8A70-B68A19D0805B}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU - {16BADE2F-1184-4518-8A70-B68A19D0805B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {16BADE2F-1184-4518-8A70-B68A19D0805B}.Release|Any CPU.Build.0 = Release|Any CPU - {16BADE2F-1184-4518-8A70-B68A19D0805B}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU - {16BADE2F-1184-4518-8A70-B68A19D0805B}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU - {8730E848-CA0F-4E0A-9A2F-BC22AD0B2C4E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8730E848-CA0F-4E0A-9A2F-BC22AD0B2C4E}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8730E848-CA0F-4E0A-9A2F-BC22AD0B2C4E}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU - {8730E848-CA0F-4E0A-9A2F-BC22AD0B2C4E}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU - {8730E848-CA0F-4E0A-9A2F-BC22AD0B2C4E}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8730E848-CA0F-4E0A-9A2F-BC22AD0B2C4E}.Release|Any CPU.Build.0 = Release|Any CPU - {8730E848-CA0F-4E0A-9A2F-BC22AD0B2C4E}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU - {8730E848-CA0F-4E0A-9A2F-BC22AD0B2C4E}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU - {7B331122-83B1-4F08-A119-DC846959844C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {7B331122-83B1-4F08-A119-DC846959844C}.Debug|Any CPU.Build.0 = Debug|Any CPU - {7B331122-83B1-4F08-A119-DC846959844C}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU - {7B331122-83B1-4F08-A119-DC846959844C}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU - {7B331122-83B1-4F08-A119-DC846959844C}.Release|Any CPU.ActiveCfg = Release|Any CPU - {7B331122-83B1-4F08-A119-DC846959844C}.Release|Any CPU.Build.0 = Release|Any CPU - {7B331122-83B1-4F08-A119-DC846959844C}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU - {7B331122-83B1-4F08-A119-DC846959844C}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU - {8A2E6961-6B12-4A8E-8215-3E7301D52EAC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8A2E6961-6B12-4A8E-8215-3E7301D52EAC}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8A2E6961-6B12-4A8E-8215-3E7301D52EAC}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU - {8A2E6961-6B12-4A8E-8215-3E7301D52EAC}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU - {8A2E6961-6B12-4A8E-8215-3E7301D52EAC}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8A2E6961-6B12-4A8E-8215-3E7301D52EAC}.Release|Any CPU.Build.0 = Release|Any CPU - {8A2E6961-6B12-4A8E-8215-3E7301D52EAC}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU - {8A2E6961-6B12-4A8E-8215-3E7301D52EAC}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU - {53F3B53D-303A-4DAA-9C38-4F55195FA5B9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {53F3B53D-303A-4DAA-9C38-4F55195FA5B9}.Debug|Any CPU.Build.0 = Debug|Any CPU - {53F3B53D-303A-4DAA-9C38-4F55195FA5B9}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU - {53F3B53D-303A-4DAA-9C38-4F55195FA5B9}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU - {53F3B53D-303A-4DAA-9C38-4F55195FA5B9}.Release|Any CPU.ActiveCfg = Release|Any CPU - {53F3B53D-303A-4DAA-9C38-4F55195FA5B9}.Release|Any CPU.Build.0 = Release|Any CPU - {53F3B53D-303A-4DAA-9C38-4F55195FA5B9}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU - {53F3B53D-303A-4DAA-9C38-4F55195FA5B9}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU - {4FED5119-EE5C-4753-88A4-D61BDEB4D6C8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {4FED5119-EE5C-4753-88A4-D61BDEB4D6C8}.Debug|Any CPU.Build.0 = Debug|Any CPU - {4FED5119-EE5C-4753-88A4-D61BDEB4D6C8}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU - {4FED5119-EE5C-4753-88A4-D61BDEB4D6C8}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU - {4FED5119-EE5C-4753-88A4-D61BDEB4D6C8}.Release|Any CPU.ActiveCfg = Release|Any CPU - {4FED5119-EE5C-4753-88A4-D61BDEB4D6C8}.Release|Any CPU.Build.0 = Release|Any CPU - {4FED5119-EE5C-4753-88A4-D61BDEB4D6C8}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU - {4FED5119-EE5C-4753-88A4-D61BDEB4D6C8}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU - {5E117F2E-7152-447F-BF47-59F759EEF3A7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {5E117F2E-7152-447F-BF47-59F759EEF3A7}.Debug|Any CPU.Build.0 = Debug|Any CPU - {5E117F2E-7152-447F-BF47-59F759EEF3A7}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU - {5E117F2E-7152-447F-BF47-59F759EEF3A7}.Release|Any CPU.ActiveCfg = Release|Any CPU - {5E117F2E-7152-447F-BF47-59F759EEF3A7}.Release|Any CPU.Build.0 = Release|Any CPU - {5E117F2E-7152-447F-BF47-59F759EEF3A7}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU - {965F8820-F809-4081-9090-1AEC903F291B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {965F8820-F809-4081-9090-1AEC903F291B}.Debug|Any CPU.Build.0 = Debug|Any CPU - {965F8820-F809-4081-9090-1AEC903F291B}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU - {965F8820-F809-4081-9090-1AEC903F291B}.Release|Any CPU.ActiveCfg = Release|Any CPU - {965F8820-F809-4081-9090-1AEC903F291B}.Release|Any CPU.Build.0 = Release|Any CPU - {965F8820-F809-4081-9090-1AEC903F291B}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU - {96E71881-1465-44F5-B4B7-DF9B370FFD02}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {96E71881-1465-44F5-B4B7-DF9B370FFD02}.Debug|Any CPU.Build.0 = Debug|Any CPU - {96E71881-1465-44F5-B4B7-DF9B370FFD02}.DebugNoVSIX|Any CPU.ActiveCfg = Debug|Any CPU - {96E71881-1465-44F5-B4B7-DF9B370FFD02}.DebugNoVSIX|Any CPU.Build.0 = Debug|Any CPU - {96E71881-1465-44F5-B4B7-DF9B370FFD02}.Release|Any CPU.ActiveCfg = Release|Any CPU - {96E71881-1465-44F5-B4B7-DF9B370FFD02}.Release|Any CPU.Build.0 = Release|Any CPU - {96E71881-1465-44F5-B4B7-DF9B370FFD02}.ReleaseNoVSIX|Any CPU.ActiveCfg = Release|Any CPU - {96E71881-1465-44F5-B4B7-DF9B370FFD02}.ReleaseNoVSIX|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(NestedProjects) = preSolution - {8A8CEABC-AC47-43FF-A5DF-69224F7E1F46} = {66517987-2A5A-4330-B130-207039378FD4} - {16BADE2F-1184-4518-8A70-B68A19D0805B} = {F5B382BC-258F-46E1-AC3D-10E5CCD55134} - {8730E848-CA0F-4E0A-9A2F-BC22AD0B2C4E} = {66517987-2A5A-4330-B130-207039378FD4} - {7B331122-83B1-4F08-A119-DC846959844C} = {F5B382BC-258F-46E1-AC3D-10E5CCD55134} - {8A2E6961-6B12-4A8E-8215-3E7301D52EAC} = {F5B382BC-258F-46E1-AC3D-10E5CCD55134} - {53F3B53D-303A-4DAA-9C38-4F55195FA5B9} = {66517987-2A5A-4330-B130-207039378FD4} - {4FED5119-EE5C-4753-88A4-D61BDEB4D6C8} = {66517987-2A5A-4330-B130-207039378FD4} - {5E117F2E-7152-447F-BF47-59F759EEF3A7} = {62826851-7D74-4F1E-B7D1-12553B789CD8} - {965F8820-F809-4081-9090-1AEC903F291B} = {62826851-7D74-4F1E-B7D1-12553B789CD8} - {96E71881-1465-44F5-B4B7-DF9B370FFD02} = {66517987-2A5A-4330-B130-207039378FD4} - EndGlobalSection - GlobalSection(ExtensibilityGlobals) = postSolution - SolutionGuid = {57C07F14-2EAC-44FF-A277-B9221B4B2BF7} - EndGlobalSection -EndGlobal diff --git a/LICENSE.txt b/LICENSE.txt deleted file mode 100644 index 7b2956ecee..0000000000 --- a/LICENSE.txt +++ /dev/null @@ -1,14 +0,0 @@ -Copyright (c) .NET Foundation and Contributors - -All rights reserved. - -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 8c30f1c84e..0000000000 --- a/NuGet.config +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - diff --git a/README.md b/README.md deleted file mode 100644 index 0eb8eb3be8..0000000000 --- a/README.md +++ /dev/null @@ -1,39 +0,0 @@ -DotNetTools -=========== - -[![Travis build status](https://img.shields.io/travis/aspnet/DotNetTools.svg?label=travis-ci&branch=dev&style=flat-square)](https://travis-ci.org/aspnet/DotNetTools/branches) -[![AppVeyor build status](https://img.shields.io/appveyor/ci/aspnetci/DotNetTools/dev.svg?label=appveyor&style=flat-square)](https://ci.appveyor.com/project/aspnetci/DotNetTools/branch/dev) - -This project is part of ASP.NET Core. You can find samples, documentation and getting started instructions for ASP.NET Core at . - -## Projects - -The repository contains command-line tools for ASP.NET Core that are bundled* in the .NET Core CLI. Follow the links below for more details on each tool. - - - [dotnet-watch](src/dotnet-watch/README.md) - - [dotnet-user-secrets](src/dotnet-user-secrets/README.md) - - [dotnet-sql-cache](src/dotnet-sql-cache/README.md) - - [dotnet-dev-certs](src/dotnet-dev-certs/README.md) - -*\*This applies to .NET Core CLI 2.1.300-preview2 and up. For earlier versions of the CLI, these tools must be installed separately.* - -*For 2.0 CLI and earlier, see for details.* - -*For 2.1.300-preview1 CLI, see for details.* - -## Usage - -The command line tools can be invoked as a subcommand of `dotnet`. - -```sh -dotnet watch -dotnet user-secrets -dotnet sql-cache -dotnet dev-certs -``` - -Add `--help` to see more details. For example, - -``` -dotnet watch --help -``` diff --git a/build.cmd b/build.cmd deleted file mode 100644 index c0050bda12..0000000000 --- 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 98a4b22765..0000000000 --- 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/build/Key.snk b/build/Key.snk deleted file mode 100644 index e10e4889c125d3120cd9e81582243d70f7cbb806..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 596 zcmV-a0;~N80ssI2Bme+XQ$aES1ONa50098=Iw=HCsnz~#iVhm& zj%TU(_THUee?3yHBjk$37ysB?i5#7WD$={H zV4B!OxRPrb|8)HPg~A}8P>^=#y<)56#=E&NzcjOtPK~<4n6GHt=K$ro*T(lhby_@U zEk(hLzk1H)0yXj{A_5>fk-TgNoP|q6(tP2xo8zt8i%212CWM#AeCd?`hS|4~L({h~Moo(~vy&3Z z1uI}`fd^*>o=rwbAGymj6RM^pZm(*Kfhs+Y1#`-2JPWZMK8@;ZWCk2+9bX4YP);~fj-BU*R zQPvWv$89!{Rl9wM+zR>_TSkn^voYxA?2G iKnV#iZ6Ah`K>b=@=IjYJXrxL124zR(38)nxe+&q_$QXwJ diff --git a/build/VSIX.props b/build/VSIX.props deleted file mode 100644 index 9640955a99..0000000000 --- a/build/VSIX.props +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - diff --git a/build/VSIX.targets b/build/VSIX.targets deleted file mode 100644 index ccafe5bf76..0000000000 --- a/build/VSIX.targets +++ /dev/null @@ -1,120 +0,0 @@ - - - true - $(RestoreDependsOn);RestoreVSIX - $(PackageDependsOn);PackageVSIX - $(GetArtifactInfoDependsOn);GetVSIXArtifactInfo - Microsoft.VisualStudio.SecretManager - $(RepositoryRoot)tooling\$(VSIXName)\$(VSIXName).csproj - $(BuildDir)$(VSIXName).vsix - $(BuildDir)$(VSIXName).json - $(BuildDir)$(VSIXName).pdb - shipoob - - - - - - - - VsixPackage - $(PackageVersion) - $(VSIXArtifactCategory) - $(VSIXName) - - - - VsixPackageManifestFile - $(VSIXArtifactCategory) - $(VSIXName).vsix - $(VSIXName) - - - - SymbolsFile - $(VSIXArtifactCategory) - $(VSIXName).vsix - full - - - - - - - - - - - - - - $(LogOutputDir)vsix-restore.rsp - - - - - - - - - - - - - - - - - - - - - - $(LogOutputDir)vsix.log - $(LogOutputDir)vsix-build.rsp - - - - - - - - - - - - - - - diff --git a/build/dependencies.props b/build/dependencies.props deleted file mode 100644 index 2ffa03acd5..0000000000 --- a/build/dependencies.props +++ /dev/null @@ -1,29 +0,0 @@ - - - $(MSBuildAllProjects);$(MSBuildThisFileFullPath) - - - - - 2.1.3-rtm-15833 - 2.1.1 - 2.1.0 - 2.1.1 - 2.1.1 - 2.1.1 - 2.1.2 - 15.9.0 - 2.0.3 - 4.5.1 - 4.5.0 - 9.0.1 - 2.4.0 - 2.4.0 - - - - - - - - diff --git a/build/repo.props b/build/repo.props deleted file mode 100644 index 571c6712c0..0000000000 --- a/build/repo.props +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - Internal.AspNetCore.Universe.Lineup - 2.1.0-* - https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json - - - diff --git a/build/repo.targets b/build/repo.targets deleted file mode 100644 index 1183428580..0000000000 --- a/build/repo.targets +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - Configuration=$(Configuration)NoVSIX - - - diff --git a/build/sources.props b/build/sources.props deleted file mode 100644 index cada42ba91..0000000000 --- a/build/sources.props +++ /dev/null @@ -1,18 +0,0 @@ - - - - - $(DotNetRestoreSources) - - $(RestoreSources); - https://dotnet.myget.org/F/dotnet-core/api/v3/index.json; - https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json; - https://dotnet.myget.org/F/aspnetcore-tools/api/v3/index.json; - https://vside.myget.org/F/vssdk/api/v3/index.json; - - - $(RestoreSources); - https://api.nuget.org/v3/index.json; - - - diff --git a/NuGetPackageVerifier.json b/eng/NuGetPackageVerifier.json similarity index 98% rename from NuGetPackageVerifier.json rename to eng/NuGetPackageVerifier.json index 3e59aeb910..4ce6d1a168 100644 --- a/NuGetPackageVerifier.json +++ b/eng/NuGetPackageVerifier.json @@ -1,102 +1,102 @@ -{ - "adx": { - "rules": [ - "AdxVerificationCompositeRule" - ], - "packages": { - "dotnet-watch": { - "packageTypes": [ - "DotnetTool" - ] - }, - "dotnet-sql-cache": { - "packageTypes": [ - "DotnetTool" - ], - "Exclusions": { - "NEUTRAL_RESOURCES_LANGUAGE": { - "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg." - }, - "WRONG_PUBLICKEYTOKEN": { - "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/runtimes/unix/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg." - }, - "ASSEMBLY_INFORMATIONAL_VERSION_MISMATCH": { - "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/runtimes/unix/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg." - }, - "ASSEMBLY_FILE_VERSION_MISMATCH": { - "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/runtimes/unix/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg." - }, - "ASSEMBLY_VERSION_MISMATCH": { - "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/runtimes/unix/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg." - } - } - }, - "dotnet-user-secrets": { - "packageTypes": [ - "DotnetTool" - ], - "Exclusions": { - "NEUTRAL_RESOURCES_LANGUAGE": { - "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg." - }, - "SERVICING_ATTRIBUTE": { - "tools/netcoreapp2.1/any/Newtonsoft.Json.dll": "Assembly is built by another project but bundled in our nupkg." - }, - "WRONG_PUBLICKEYTOKEN": { - "tools/netcoreapp2.1/any/Newtonsoft.Json.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg." - }, - "ASSEMBLY_INFORMATIONAL_VERSION_MISMATCH": { - "tools/netcoreapp2.1/any/Newtonsoft.Json.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg." - }, - "ASSEMBLY_FILE_VERSION_MISMATCH": { - "tools/netcoreapp2.1/any/Newtonsoft.Json.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg." - }, - "ASSEMBLY_VERSION_MISMATCH": { - "tools/netcoreapp2.1/any/Newtonsoft.Json.dll": "Assembly is built by another project but bundled in our nupkg.", - "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg." - } - } - }, - "dotnet-dev-certs": { - "packageTypes": [ - "DotnetTool" - ] - }, - "Microsoft.AspNetCore.DeveloperCertificates.XPlat": { - "Exclusions": { - "DOC_MISSING": { - "lib/netcoreapp2.1/Microsoft.AspNetCore.DeveloperCertificates.XPlat.dll": "Docs not required to shipoob package" - } - } - } - } - }, - "Default": { - "rules": [ - "DefaultCompositeRule" - ] - } -} +{ + "adx": { + "rules": [ + "AdxVerificationCompositeRule" + ], + "packages": { + "dotnet-watch": { + "packageTypes": [ + "DotnetTool" + ] + }, + "dotnet-sql-cache": { + "packageTypes": [ + "DotnetTool" + ], + "Exclusions": { + "NEUTRAL_RESOURCES_LANGUAGE": { + "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg." + }, + "WRONG_PUBLICKEYTOKEN": { + "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/runtimes/unix/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg." + }, + "ASSEMBLY_INFORMATIONAL_VERSION_MISMATCH": { + "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/runtimes/unix/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg." + }, + "ASSEMBLY_FILE_VERSION_MISMATCH": { + "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/runtimes/unix/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg." + }, + "ASSEMBLY_VERSION_MISMATCH": { + "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/runtimes/unix/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.1/System.Data.SqlClient.dll": "Assembly is built by another project but bundled in our nupkg." + } + } + }, + "dotnet-user-secrets": { + "packageTypes": [ + "DotnetTool" + ], + "Exclusions": { + "NEUTRAL_RESOURCES_LANGUAGE": { + "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg." + }, + "SERVICING_ATTRIBUTE": { + "tools/netcoreapp2.1/any/Newtonsoft.Json.dll": "Assembly is built by another project but bundled in our nupkg." + }, + "WRONG_PUBLICKEYTOKEN": { + "tools/netcoreapp2.1/any/Newtonsoft.Json.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg." + }, + "ASSEMBLY_INFORMATIONAL_VERSION_MISMATCH": { + "tools/netcoreapp2.1/any/Newtonsoft.Json.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg." + }, + "ASSEMBLY_FILE_VERSION_MISMATCH": { + "tools/netcoreapp2.1/any/Newtonsoft.Json.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg." + }, + "ASSEMBLY_VERSION_MISMATCH": { + "tools/netcoreapp2.1/any/Newtonsoft.Json.dll": "Assembly is built by another project but bundled in our nupkg.", + "tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll": "Assembly is built by another project but bundled in our nupkg." + } + } + }, + "dotnet-dev-certs": { + "packageTypes": [ + "DotnetTool" + ] + }, + "Microsoft.AspNetCore.DeveloperCertificates.XPlat": { + "Exclusions": { + "DOC_MISSING": { + "lib/netcoreapp2.1/Microsoft.AspNetCore.DeveloperCertificates.XPlat.dll": "Docs not required to shipoob package" + } + } + } + } + }, + "Default": { + "rules": [ + "DefaultCompositeRule" + ] + } +} diff --git a/korebuild-lock.txt b/korebuild-lock.txt deleted file mode 100644 index 04cce2fca7..0000000000 --- a/korebuild-lock.txt +++ /dev/null @@ -1,2 +0,0 @@ -version:2.1.3-rtm-15833 -commithash:42bee65743476deedda53948fa3e84a0ac4c0360 diff --git a/korebuild.json b/korebuild.json deleted file mode 100644 index 196a3ca537..0000000000 --- a/korebuild.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "$schema": "https://raw.githubusercontent.com/aspnet/BuildTools/release/2.1/tools/korebuild.schema.json", - "channel": "release/2.1", - "toolsets": { - "visualstudio": { - "required": [ - "windows" - ], - "includePrerelease": true, - "minVersion": "15.0.26730.03", - "requiredWorkloads": [ - "Microsoft.VisualStudio.Component.VSSDK" - ] - } - } -} diff --git a/run.cmd b/run.cmd deleted file mode 100644 index d52d5c7e68..0000000000 --- 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 2f892843e0..0000000000 --- a/run.ps1 +++ /dev/null @@ -1,210 +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 ($CI) { Join-Path $PSScriptRoot '.dotnet' } ` - 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 129b0b9576..0000000000 --- a/run.sh +++ /dev/null @@ -1,259 +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 )" -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] [[--] ...]" - echo "" - echo "Arguments:" - echo " command The command to be run." - echo " ... Arguments passed to the command. Variable number of arguments allowed." - echo "" - echo "Options:" - echo " --verbose Show verbose output." - echo " -c|--channel The channel of KoreBuild to download. Overrides the value from the config file.." - echo " --config-file The path to the configuration file that stores values. Defaults to korebuild.json." - echo " -d|--dotnet-home The directory where .NET Core tools will be stored. Defaults to '\$DOTNET_HOME' or '\$HOME/.dotnet." - echo " --path The directory to build. Defaults to the directory containing the script." - echo " -s|--tools-source|-ToolsSource The base url where build tools can be downloaded. Overrides the value from the config file." - echo " --tools-source-suffix|-ToolsSourceSuffix 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 - if [[ -z "${DOTNET_HOME:-}" ]]; then - DOTNET_HOME="$DIR/.dotnet" - fi - ;; - --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 "${DOTNET_HOME:-}" ] && DOTNET_HOME="$HOME/.dotnet" -[ -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/samples/dotnet-watch/Directory.Build.props b/samples/dotnet-watch/Directory.Build.props deleted file mode 100644 index 76c9003a6b..0000000000 --- a/samples/dotnet-watch/Directory.Build.props +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/samples/dotnet-watch/Directory.Build.targets b/samples/dotnet-watch/Directory.Build.targets deleted file mode 100644 index 76c9003a6b..0000000000 --- a/samples/dotnet-watch/Directory.Build.targets +++ /dev/null @@ -1,2 +0,0 @@ - - diff --git a/samples/dotnet-watch/LaunchAnyCommand/LaunchAnyCommand.csproj b/samples/dotnet-watch/LaunchAnyCommand/LaunchAnyCommand.csproj deleted file mode 100644 index 1dc6efedd6..0000000000 --- a/samples/dotnet-watch/LaunchAnyCommand/LaunchAnyCommand.csproj +++ /dev/null @@ -1,13 +0,0 @@ - - - netcoreapp2.1 - - - - - - - - - - diff --git a/samples/dotnet-watch/LaunchAnyCommand/README.md b/samples/dotnet-watch/LaunchAnyCommand/README.md deleted file mode 100644 index fa52f4073e..0000000000 --- a/samples/dotnet-watch/LaunchAnyCommand/README.md +++ /dev/null @@ -1,17 +0,0 @@ -Launch any command with dotnet-watch -==================================== - -## Prerequisites - -1. Install .NET Core command line. -2. Install NodeJS. - -## Usage - -Open a terminal to the directory containing this project. - -``` -dotnet watch msbuild /t:RunMyNpmCommand -``` - -Changing the .csproj file, or the say-hello.js file will cause dotnet-watch to re-run the 'RunMyNpmCommand' target in MyApp.csproj. diff --git a/samples/dotnet-watch/LaunchAnyCommand/package.json b/samples/dotnet-watch/LaunchAnyCommand/package.json deleted file mode 100644 index 61e25fb082..0000000000 --- a/samples/dotnet-watch/LaunchAnyCommand/package.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "name": "any-command", - "version": "0.0.0", - "private": true, - "scripts": { - "custom": "node say-hello.js" - } -} diff --git a/samples/dotnet-watch/LaunchAnyCommand/say-hello.js b/samples/dotnet-watch/LaunchAnyCommand/say-hello.js deleted file mode 100644 index c35728f5a1..0000000000 --- a/samples/dotnet-watch/LaunchAnyCommand/say-hello.js +++ /dev/null @@ -1 +0,0 @@ -console.log("Hello from Javascript"); diff --git a/samples/dotnet-watch/README.md b/samples/dotnet-watch/README.md deleted file mode 100644 index 5988ab77ba..0000000000 --- a/samples/dotnet-watch/README.md +++ /dev/null @@ -1,5 +0,0 @@ -dotnet-watch samples -==================== - -The samples in this folder show some ways to customize dotnet-watch. For full details on -available settings and configuration, see the [README for the dotnet-watch](../../src/dotnet-watch/README.md) project. diff --git a/samples/dotnet-watch/WatchJavascriptFiles/Program.cs b/samples/dotnet-watch/WatchJavascriptFiles/Program.cs deleted file mode 100755 index f71a9e073d..0000000000 --- a/samples/dotnet-watch/WatchJavascriptFiles/Program.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System.IO; -using Microsoft.AspNetCore.Builder; -using Microsoft.AspNetCore.Hosting; -using Microsoft.AspNetCore.Http; - -namespace WatchJavascriptFiles -{ - public class Program - { - public static void Main(string[] args) - { - var host = new WebHostBuilder() - .UseKestrel() - .UseContentRoot(Directory.GetCurrentDirectory()) - .Configure(app => - app.Run(async (context) => - { - await context.Response.WriteAsync("Hello World!"); - })) - .Build(); - - host.Run(); - } - } -} diff --git a/samples/dotnet-watch/WatchJavascriptFiles/README.md b/samples/dotnet-watch/WatchJavascriptFiles/README.md deleted file mode 100644 index 3b0a148cd0..0000000000 --- a/samples/dotnet-watch/WatchJavascriptFiles/README.md +++ /dev/null @@ -1,16 +0,0 @@ -Watch JavaScript files with dotnet-watch -======================================== - -## Prerequisites - -Install .NET Core command line. - -## Usage - -Open a terminal to the directory containing this project. - -``` -dotnet watch run -``` - -Changing the .csproj file, or \*.js file in wwwroot, or any \*.cs file will cause dotnet-watch to restart the website. diff --git a/samples/dotnet-watch/WatchJavascriptFiles/WatchJavascriptFiles.csproj b/samples/dotnet-watch/WatchJavascriptFiles/WatchJavascriptFiles.csproj deleted file mode 100755 index 008b0322e6..0000000000 --- a/samples/dotnet-watch/WatchJavascriptFiles/WatchJavascriptFiles.csproj +++ /dev/null @@ -1,16 +0,0 @@ - - - - netcoreapp2.1 - - - - - - - - - - - - diff --git a/samples/dotnet-watch/WatchJavascriptFiles/wwwroot/app.js b/samples/dotnet-watch/WatchJavascriptFiles/wwwroot/app.js deleted file mode 100644 index a94cbdc370..0000000000 --- a/samples/dotnet-watch/WatchJavascriptFiles/wwwroot/app.js +++ /dev/null @@ -1 +0,0 @@ -document.title = "My awesome website"; diff --git a/samples/dotnet-watch/WatchMultipleProjects/README.md b/samples/dotnet-watch/WatchMultipleProjects/README.md deleted file mode 100644 index 46d7a7904c..0000000000 --- a/samples/dotnet-watch/WatchMultipleProjects/README.md +++ /dev/null @@ -1,18 +0,0 @@ -Watch multiple projects with dotnet-watch -========================================= - -## Prerequisites - -Install .NET Core command line. - -## Usage - -Open a terminal to the directory containing this project. - -``` -dotnet watch msbuild /t:TestAndRun -``` - -The "TestAndRun" target in watch.proj will execute "dotnet test" on Test.csproj and then launch the website by calling "dotnet run" on Web.csproj. - -Changing any \*.cs file in Test/ or Web/, any \*.csproj file, or watch.proj, will cause dotnet-watch to relaunch the "TestAndRun" target from watch.proj. diff --git a/samples/dotnet-watch/WatchMultipleProjects/Test/Test.csproj b/samples/dotnet-watch/WatchMultipleProjects/Test/Test.csproj deleted file mode 100755 index 0ffd10766a..0000000000 --- a/samples/dotnet-watch/WatchMultipleProjects/Test/Test.csproj +++ /dev/null @@ -1,13 +0,0 @@ - - - - netcoreapp2.1 - - - - - - - - - diff --git a/samples/dotnet-watch/WatchMultipleProjects/Test/UnitTest1.cs b/samples/dotnet-watch/WatchMultipleProjects/Test/UnitTest1.cs deleted file mode 100755 index 0da9a7f234..0000000000 --- a/samples/dotnet-watch/WatchMultipleProjects/Test/UnitTest1.cs +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System; -using Xunit; - -namespace Test -{ - public class UnitTest1 - { - [Fact] - public void Test1() - { - Assert.True(true); - } - } -} diff --git a/samples/dotnet-watch/WatchMultipleProjects/Web/Program.cs b/samples/dotnet-watch/WatchMultipleProjects/Web/Program.cs deleted file mode 100755 index 6a02b1f332..0000000000 --- a/samples/dotnet-watch/WatchMultipleProjects/Web/Program.cs +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System.IO; -using Microsoft.AspNetCore.Builder; -using Microsoft.AspNetCore.Hosting; -using Microsoft.AspNetCore.Http; - -namespace Web -{ - public class Program - { - public static void Main(string[] args) - { - var host = new WebHostBuilder() - .UseKestrel() - .UseContentRoot(Directory.GetCurrentDirectory()) - .Configure(app => - app.Run(async (context) => - { - await context.Response.WriteAsync("Hello World!"); - })) - .Build(); - - host.Run(); - } - } -} diff --git a/samples/dotnet-watch/WatchMultipleProjects/Web/Web.csproj b/samples/dotnet-watch/WatchMultipleProjects/Web/Web.csproj deleted file mode 100755 index ec2a93ed3a..0000000000 --- a/samples/dotnet-watch/WatchMultipleProjects/Web/Web.csproj +++ /dev/null @@ -1,15 +0,0 @@ - - - - netcoreapp2.1 - - - - - - - - - - - diff --git a/samples/dotnet-watch/WatchMultipleProjects/watch.csproj b/samples/dotnet-watch/WatchMultipleProjects/watch.csproj deleted file mode 100644 index d890295d39..0000000000 --- a/samples/dotnet-watch/WatchMultipleProjects/watch.csproj +++ /dev/null @@ -1,17 +0,0 @@ - - - netcoreapp2.1 - false - - - - - - - - - - - - - diff --git a/src/Directory.Build.props b/src/Directory.Build.props deleted file mode 100644 index 4b89a431e7..0000000000 --- a/src/Directory.Build.props +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets deleted file mode 100644 index c7b5f24861..0000000000 --- a/src/Directory.Build.targets +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/src/Tools/Directory.Build.targets b/src/Tools/Directory.Build.targets new file mode 100644 index 0000000000..3d2647b41b --- /dev/null +++ b/src/Tools/Directory.Build.targets @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/Microsoft.AspNetCore.DeveloperCertificates.XPlat/CertificateGenerator.cs b/src/Tools/FirstRunCertGenerator/src/CertificateGenerator.cs similarity index 100% rename from src/Microsoft.AspNetCore.DeveloperCertificates.XPlat/CertificateGenerator.cs rename to src/Tools/FirstRunCertGenerator/src/CertificateGenerator.cs diff --git a/src/Microsoft.AspNetCore.DeveloperCertificates.XPlat/Microsoft.AspNetCore.DeveloperCertificates.XPlat.csproj b/src/Tools/FirstRunCertGenerator/src/Microsoft.AspNetCore.DeveloperCertificates.XPlat.csproj similarity index 65% rename from src/Microsoft.AspNetCore.DeveloperCertificates.XPlat/Microsoft.AspNetCore.DeveloperCertificates.XPlat.csproj rename to src/Tools/FirstRunCertGenerator/src/Microsoft.AspNetCore.DeveloperCertificates.XPlat.csproj index 81c90a297c..ce61b3ab62 100644 --- a/src/Microsoft.AspNetCore.DeveloperCertificates.XPlat/Microsoft.AspNetCore.DeveloperCertificates.XPlat.csproj +++ b/src/Tools/FirstRunCertGenerator/src/Microsoft.AspNetCore.DeveloperCertificates.XPlat.csproj @@ -8,7 +8,7 @@ - + diff --git a/src/Tools/README.md b/src/Tools/README.md new file mode 100644 index 0000000000..e13c6ec6e3 --- /dev/null +++ b/src/Tools/README.md @@ -0,0 +1,32 @@ +DotNetTools +=========== + +## Projects + +The folder contains command-line tools for ASP.NET Core that are bundled* in the .NET Core CLI. Follow the links below for more details on each tool. + + - [dotnet-watch](dotnet-watch/README.md) + - [dotnet-user-secrets](dotnet-user-secrets/README.md) + - [dotnet-sql-cache](dotnet-sql-cache/README.md) + - [dotnet-dev-certs](dotnet-dev-certs/README.md) + +*\*This applies to .NET Core CLI 2.1.300-preview2 and up. For earlier versions of the CLI, these tools must be installed separately.* + +*For 2.0 CLI and earlier, see for details.* + +## Usage + +The command line tools can be invoked as a subcommand of `dotnet`. + +```sh +dotnet watch +dotnet user-secrets +dotnet sql-cache +dotnet dev-certs +``` + +Add `--help` to see more details. For example, + +``` +dotnet watch --help +``` diff --git a/src/dotnet-dev-certs/README.md b/src/Tools/dotnet-dev-certs/README.md similarity index 100% rename from src/dotnet-dev-certs/README.md rename to src/Tools/dotnet-dev-certs/README.md diff --git a/src/dotnet-dev-certs/Program.cs b/src/Tools/dotnet-dev-certs/src/Program.cs similarity index 100% rename from src/dotnet-dev-certs/Program.cs rename to src/Tools/dotnet-dev-certs/src/Program.cs diff --git a/src/Tools/dotnet-dev-certs/src/dotnet-dev-certs.csproj b/src/Tools/dotnet-dev-certs/src/dotnet-dev-certs.csproj new file mode 100644 index 0000000000..1f0f906e50 --- /dev/null +++ b/src/Tools/dotnet-dev-certs/src/dotnet-dev-certs.csproj @@ -0,0 +1,32 @@ + + + + netcoreapp2.1 + exe + Command line tool to generate certificates used in ASP.NET Core during development. + Microsoft.AspNetCore.DeveloperCertificates.Tools + dotnet;developercertificates + true + + win-x64;win-x86 + + + + + + + + + + + + + + + + + + + + + diff --git a/src/dotnet-sql-cache/README.md b/src/Tools/dotnet-sql-cache/README.md similarity index 100% rename from src/dotnet-sql-cache/README.md rename to src/Tools/dotnet-sql-cache/README.md diff --git a/src/dotnet-sql-cache/Program.cs b/src/Tools/dotnet-sql-cache/src/Program.cs similarity index 100% rename from src/dotnet-sql-cache/Program.cs rename to src/Tools/dotnet-sql-cache/src/Program.cs diff --git a/src/dotnet-sql-cache/SqlQueries.cs b/src/Tools/dotnet-sql-cache/src/SqlQueries.cs similarity index 100% rename from src/dotnet-sql-cache/SqlQueries.cs rename to src/Tools/dotnet-sql-cache/src/SqlQueries.cs diff --git a/src/Tools/dotnet-sql-cache/src/dotnet-sql-cache.csproj b/src/Tools/dotnet-sql-cache/src/dotnet-sql-cache.csproj new file mode 100644 index 0000000000..3856c4877c --- /dev/null +++ b/src/Tools/dotnet-sql-cache/src/dotnet-sql-cache.csproj @@ -0,0 +1,30 @@ + + + + netcoreapp2.1 + exe + Command line tool to create tables and indexes in a Microsoft SQL Server database for distributed caching. + cache;distributedcache;sqlserver + true + + win-x64;win-x86 + + + + + + + + + + + + + + + + + + + + diff --git a/src/dotnet-user-secrets/README.md b/src/Tools/dotnet-user-secrets/README.md similarity index 100% rename from src/dotnet-user-secrets/README.md rename to src/Tools/dotnet-user-secrets/README.md diff --git a/src/dotnet-user-secrets/CommandLineOptions.cs b/src/Tools/dotnet-user-secrets/src/CommandLineOptions.cs similarity index 100% rename from src/dotnet-user-secrets/CommandLineOptions.cs rename to src/Tools/dotnet-user-secrets/src/CommandLineOptions.cs diff --git a/src/dotnet-user-secrets/Internal/ClearCommand.cs b/src/Tools/dotnet-user-secrets/src/Internal/ClearCommand.cs similarity index 100% rename from src/dotnet-user-secrets/Internal/ClearCommand.cs rename to src/Tools/dotnet-user-secrets/src/Internal/ClearCommand.cs diff --git a/src/dotnet-user-secrets/Internal/CommandContext.cs b/src/Tools/dotnet-user-secrets/src/Internal/CommandContext.cs similarity index 100% rename from src/dotnet-user-secrets/Internal/CommandContext.cs rename to src/Tools/dotnet-user-secrets/src/Internal/CommandContext.cs diff --git a/src/dotnet-user-secrets/Internal/ICommand.cs b/src/Tools/dotnet-user-secrets/src/Internal/ICommand.cs similarity index 100% rename from src/dotnet-user-secrets/Internal/ICommand.cs rename to src/Tools/dotnet-user-secrets/src/Internal/ICommand.cs diff --git a/src/dotnet-user-secrets/Internal/ListCommand.cs b/src/Tools/dotnet-user-secrets/src/Internal/ListCommand.cs similarity index 100% rename from src/dotnet-user-secrets/Internal/ListCommand.cs rename to src/Tools/dotnet-user-secrets/src/Internal/ListCommand.cs diff --git a/src/dotnet-user-secrets/Internal/MsBuildProjectFinder.cs b/src/Tools/dotnet-user-secrets/src/Internal/MsBuildProjectFinder.cs similarity index 100% rename from src/dotnet-user-secrets/Internal/MsBuildProjectFinder.cs rename to src/Tools/dotnet-user-secrets/src/Internal/MsBuildProjectFinder.cs diff --git a/src/dotnet-user-secrets/Internal/ProjectIdResolver.cs b/src/Tools/dotnet-user-secrets/src/Internal/ProjectIdResolver.cs similarity index 100% rename from src/dotnet-user-secrets/Internal/ProjectIdResolver.cs rename to src/Tools/dotnet-user-secrets/src/Internal/ProjectIdResolver.cs diff --git a/src/dotnet-user-secrets/Internal/ReadableJsonConfigurationSource.cs b/src/Tools/dotnet-user-secrets/src/Internal/ReadableJsonConfigurationSource.cs similarity index 100% rename from src/dotnet-user-secrets/Internal/ReadableJsonConfigurationSource.cs rename to src/Tools/dotnet-user-secrets/src/Internal/ReadableJsonConfigurationSource.cs diff --git a/src/dotnet-user-secrets/Internal/RemoveCommand.cs b/src/Tools/dotnet-user-secrets/src/Internal/RemoveCommand.cs similarity index 100% rename from src/dotnet-user-secrets/Internal/RemoveCommand.cs rename to src/Tools/dotnet-user-secrets/src/Internal/RemoveCommand.cs diff --git a/src/dotnet-user-secrets/Internal/SecretsStore.cs b/src/Tools/dotnet-user-secrets/src/Internal/SecretsStore.cs similarity index 100% rename from src/dotnet-user-secrets/Internal/SecretsStore.cs rename to src/Tools/dotnet-user-secrets/src/Internal/SecretsStore.cs diff --git a/src/dotnet-user-secrets/Internal/SetCommand.cs b/src/Tools/dotnet-user-secrets/src/Internal/SetCommand.cs similarity index 100% rename from src/dotnet-user-secrets/Internal/SetCommand.cs rename to src/Tools/dotnet-user-secrets/src/Internal/SetCommand.cs diff --git a/src/dotnet-user-secrets/Program.cs b/src/Tools/dotnet-user-secrets/src/Program.cs similarity index 100% rename from src/dotnet-user-secrets/Program.cs rename to src/Tools/dotnet-user-secrets/src/Program.cs diff --git a/src/dotnet-user-secrets/Properties/AssemblyInfo.cs b/src/Tools/dotnet-user-secrets/src/Properties/AssemblyInfo.cs similarity index 100% rename from src/dotnet-user-secrets/Properties/AssemblyInfo.cs rename to src/Tools/dotnet-user-secrets/src/Properties/AssemblyInfo.cs diff --git a/src/dotnet-user-secrets/Properties/Resources.Designer.cs b/src/Tools/dotnet-user-secrets/src/Properties/Resources.Designer.cs similarity index 100% rename from src/dotnet-user-secrets/Properties/Resources.Designer.cs rename to src/Tools/dotnet-user-secrets/src/Properties/Resources.Designer.cs diff --git a/src/dotnet-user-secrets/Resources.resx b/src/Tools/dotnet-user-secrets/src/Resources.resx similarity index 100% rename from src/dotnet-user-secrets/Resources.resx rename to src/Tools/dotnet-user-secrets/src/Resources.resx diff --git a/src/dotnet-user-secrets/assets/SecretManager.targets b/src/Tools/dotnet-user-secrets/src/assets/SecretManager.targets similarity index 100% rename from src/dotnet-user-secrets/assets/SecretManager.targets rename to src/Tools/dotnet-user-secrets/src/assets/SecretManager.targets diff --git a/src/Tools/dotnet-user-secrets/src/dotnet-user-secrets.csproj b/src/Tools/dotnet-user-secrets/src/dotnet-user-secrets.csproj new file mode 100644 index 0000000000..a66a31dd7e --- /dev/null +++ b/src/Tools/dotnet-user-secrets/src/dotnet-user-secrets.csproj @@ -0,0 +1,42 @@ + + + + netcoreapp2.1 + exe + Command line tool to manage user secrets for Microsoft.Extensions.Configuration. + false + Microsoft.Extensions.SecretManager.Tools + configuration;secrets;usersecrets + true + + win-x64;win-x86 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/dotnet-user-secrets.Tests/MsBuildProjectFinderTest.cs b/src/Tools/dotnet-user-secrets/test/MsBuildProjectFinderTest.cs similarity index 100% rename from test/dotnet-user-secrets.Tests/MsBuildProjectFinderTest.cs rename to src/Tools/dotnet-user-secrets/test/MsBuildProjectFinderTest.cs diff --git a/test/dotnet-user-secrets.Tests/SecretManagerTests.cs b/src/Tools/dotnet-user-secrets/test/SecretManagerTests.cs similarity index 100% rename from test/dotnet-user-secrets.Tests/SecretManagerTests.cs rename to src/Tools/dotnet-user-secrets/test/SecretManagerTests.cs diff --git a/test/dotnet-user-secrets.Tests/SetCommandTest.cs b/src/Tools/dotnet-user-secrets/test/SetCommandTest.cs similarity index 100% rename from test/dotnet-user-secrets.Tests/SetCommandTest.cs rename to src/Tools/dotnet-user-secrets/test/SetCommandTest.cs diff --git a/test/dotnet-user-secrets.Tests/TemporaryFileProvider.cs b/src/Tools/dotnet-user-secrets/test/TemporaryFileProvider.cs similarity index 100% rename from test/dotnet-user-secrets.Tests/TemporaryFileProvider.cs rename to src/Tools/dotnet-user-secrets/test/TemporaryFileProvider.cs diff --git a/test/dotnet-user-secrets.Tests/UserSecretsTestFixture.cs b/src/Tools/dotnet-user-secrets/test/UserSecretsTestFixture.cs similarity index 100% rename from test/dotnet-user-secrets.Tests/UserSecretsTestFixture.cs rename to src/Tools/dotnet-user-secrets/test/UserSecretsTestFixture.cs diff --git a/src/Tools/dotnet-user-secrets/test/dotnet-user-secrets.Tests.csproj b/src/Tools/dotnet-user-secrets/test/dotnet-user-secrets.Tests.csproj new file mode 100644 index 0000000000..0254a866e8 --- /dev/null +++ b/src/Tools/dotnet-user-secrets/test/dotnet-user-secrets.Tests.csproj @@ -0,0 +1,21 @@ + + + + netcoreapp2.1 + Microsoft.Extensions.SecretManager.Tools.Tests + + + + + + + + + + + + + + + + diff --git a/src/dotnet-watch/README.md b/src/Tools/dotnet-watch/README.md similarity index 100% rename from src/dotnet-watch/README.md rename to src/Tools/dotnet-watch/README.md diff --git a/src/dotnet-watch/CommandLineOptions.cs b/src/Tools/dotnet-watch/src/CommandLineOptions.cs similarity index 100% rename from src/dotnet-watch/CommandLineOptions.cs rename to src/Tools/dotnet-watch/src/CommandLineOptions.cs diff --git a/src/dotnet-watch/DotNetWatcher.cs b/src/Tools/dotnet-watch/src/DotNetWatcher.cs similarity index 100% rename from src/dotnet-watch/DotNetWatcher.cs rename to src/Tools/dotnet-watch/src/DotNetWatcher.cs diff --git a/src/dotnet-watch/IFileSet.cs b/src/Tools/dotnet-watch/src/IFileSet.cs similarity index 100% rename from src/dotnet-watch/IFileSet.cs rename to src/Tools/dotnet-watch/src/IFileSet.cs diff --git a/src/dotnet-watch/IFileSetFactory.cs b/src/Tools/dotnet-watch/src/IFileSetFactory.cs similarity index 100% rename from src/dotnet-watch/IFileSetFactory.cs rename to src/Tools/dotnet-watch/src/IFileSetFactory.cs diff --git a/src/dotnet-watch/Internal/FileSet.cs b/src/Tools/dotnet-watch/src/Internal/FileSet.cs similarity index 100% rename from src/dotnet-watch/Internal/FileSet.cs rename to src/Tools/dotnet-watch/src/Internal/FileSet.cs diff --git a/src/dotnet-watch/Internal/FileSetWatcher.cs b/src/Tools/dotnet-watch/src/Internal/FileSetWatcher.cs similarity index 100% rename from src/dotnet-watch/Internal/FileSetWatcher.cs rename to src/Tools/dotnet-watch/src/Internal/FileSetWatcher.cs diff --git a/src/dotnet-watch/Internal/FileWatcher.cs b/src/Tools/dotnet-watch/src/Internal/FileWatcher.cs similarity index 100% rename from src/dotnet-watch/Internal/FileWatcher.cs rename to src/Tools/dotnet-watch/src/Internal/FileWatcher.cs diff --git a/src/dotnet-watch/Internal/FileWatcher/DotnetFileWatcher.cs b/src/Tools/dotnet-watch/src/Internal/FileWatcher/DotnetFileWatcher.cs similarity index 100% rename from src/dotnet-watch/Internal/FileWatcher/DotnetFileWatcher.cs rename to src/Tools/dotnet-watch/src/Internal/FileWatcher/DotnetFileWatcher.cs diff --git a/src/dotnet-watch/Internal/FileWatcher/FileWatcherFactory.cs b/src/Tools/dotnet-watch/src/Internal/FileWatcher/FileWatcherFactory.cs similarity index 100% rename from src/dotnet-watch/Internal/FileWatcher/FileWatcherFactory.cs rename to src/Tools/dotnet-watch/src/Internal/FileWatcher/FileWatcherFactory.cs diff --git a/src/dotnet-watch/Internal/FileWatcher/IFileSystemWatcher.cs b/src/Tools/dotnet-watch/src/Internal/FileWatcher/IFileSystemWatcher.cs similarity index 100% rename from src/dotnet-watch/Internal/FileWatcher/IFileSystemWatcher.cs rename to src/Tools/dotnet-watch/src/Internal/FileWatcher/IFileSystemWatcher.cs diff --git a/src/dotnet-watch/Internal/FileWatcher/PollingFileWatcher.cs b/src/Tools/dotnet-watch/src/Internal/FileWatcher/PollingFileWatcher.cs similarity index 100% rename from src/dotnet-watch/Internal/FileWatcher/PollingFileWatcher.cs rename to src/Tools/dotnet-watch/src/Internal/FileWatcher/PollingFileWatcher.cs diff --git a/src/dotnet-watch/Internal/MsBuildFileSetFactory.cs b/src/Tools/dotnet-watch/src/Internal/MsBuildFileSetFactory.cs similarity index 100% rename from src/dotnet-watch/Internal/MsBuildFileSetFactory.cs rename to src/Tools/dotnet-watch/src/Internal/MsBuildFileSetFactory.cs diff --git a/src/dotnet-watch/Internal/MsBuildProjectFinder.cs b/src/Tools/dotnet-watch/src/Internal/MsBuildProjectFinder.cs similarity index 100% rename from src/dotnet-watch/Internal/MsBuildProjectFinder.cs rename to src/Tools/dotnet-watch/src/Internal/MsBuildProjectFinder.cs diff --git a/src/dotnet-watch/Internal/OutputCapture.cs b/src/Tools/dotnet-watch/src/Internal/OutputCapture.cs similarity index 100% rename from src/dotnet-watch/Internal/OutputCapture.cs rename to src/Tools/dotnet-watch/src/Internal/OutputCapture.cs diff --git a/src/dotnet-watch/Internal/OutputSink.cs b/src/Tools/dotnet-watch/src/Internal/OutputSink.cs similarity index 100% rename from src/dotnet-watch/Internal/OutputSink.cs rename to src/Tools/dotnet-watch/src/Internal/OutputSink.cs diff --git a/src/dotnet-watch/Internal/ProcessRunner.cs b/src/Tools/dotnet-watch/src/Internal/ProcessRunner.cs similarity index 100% rename from src/dotnet-watch/Internal/ProcessRunner.cs rename to src/Tools/dotnet-watch/src/Internal/ProcessRunner.cs diff --git a/src/dotnet-watch/PrefixConsoleReporter.cs b/src/Tools/dotnet-watch/src/PrefixConsoleReporter.cs similarity index 100% rename from src/dotnet-watch/PrefixConsoleReporter.cs rename to src/Tools/dotnet-watch/src/PrefixConsoleReporter.cs diff --git a/src/dotnet-watch/ProcessSpec.cs b/src/Tools/dotnet-watch/src/ProcessSpec.cs similarity index 100% rename from src/dotnet-watch/ProcessSpec.cs rename to src/Tools/dotnet-watch/src/ProcessSpec.cs diff --git a/src/dotnet-watch/Program.cs b/src/Tools/dotnet-watch/src/Program.cs similarity index 100% rename from src/dotnet-watch/Program.cs rename to src/Tools/dotnet-watch/src/Program.cs diff --git a/src/dotnet-watch/Properties/AssemblyInfo.cs b/src/Tools/dotnet-watch/src/Properties/AssemblyInfo.cs similarity index 100% rename from src/dotnet-watch/Properties/AssemblyInfo.cs rename to src/Tools/dotnet-watch/src/Properties/AssemblyInfo.cs diff --git a/src/dotnet-watch/Properties/Resources.Designer.cs b/src/Tools/dotnet-watch/src/Properties/Resources.Designer.cs similarity index 100% rename from src/dotnet-watch/Properties/Resources.Designer.cs rename to src/Tools/dotnet-watch/src/Properties/Resources.Designer.cs diff --git a/src/dotnet-watch/Resources.resx b/src/Tools/dotnet-watch/src/Resources.resx similarity index 100% rename from src/dotnet-watch/Resources.resx rename to src/Tools/dotnet-watch/src/Resources.resx diff --git a/src/dotnet-watch/assets/DotNetWatch.targets b/src/Tools/dotnet-watch/src/assets/DotNetWatch.targets similarity index 100% rename from src/dotnet-watch/assets/DotNetWatch.targets rename to src/Tools/dotnet-watch/src/assets/DotNetWatch.targets diff --git a/src/dotnet-watch/dotnet-watch.csproj b/src/Tools/dotnet-watch/src/dotnet-watch.csproj similarity index 100% rename from src/dotnet-watch/dotnet-watch.csproj rename to src/Tools/dotnet-watch/src/dotnet-watch.csproj diff --git a/test/dotnet-watch.FunctionalTests/AppWithDepsTests.cs b/src/Tools/dotnet-watch/test/AppWithDepsTests.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/AppWithDepsTests.cs rename to src/Tools/dotnet-watch/test/AppWithDepsTests.cs diff --git a/test/dotnet-watch.Tests/AssertEx.cs b/src/Tools/dotnet-watch/test/AssertEx.cs similarity index 100% rename from test/dotnet-watch.Tests/AssertEx.cs rename to src/Tools/dotnet-watch/test/AssertEx.cs diff --git a/test/dotnet-watch.FunctionalTests/AwaitableProcess.cs b/src/Tools/dotnet-watch/test/AwaitableProcess.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/AwaitableProcess.cs rename to src/Tools/dotnet-watch/test/AwaitableProcess.cs diff --git a/test/dotnet-watch.Tests/CommandLineOptionsTests.cs b/src/Tools/dotnet-watch/test/CommandLineOptionsTests.cs similarity index 100% rename from test/dotnet-watch.Tests/CommandLineOptionsTests.cs rename to src/Tools/dotnet-watch/test/CommandLineOptionsTests.cs diff --git a/test/dotnet-watch.Tests/ConsoleReporterTests.cs b/src/Tools/dotnet-watch/test/ConsoleReporterTests.cs similarity index 100% rename from test/dotnet-watch.Tests/ConsoleReporterTests.cs rename to src/Tools/dotnet-watch/test/ConsoleReporterTests.cs diff --git a/test/dotnet-watch.FunctionalTests/DotNetWatcherTests.cs b/src/Tools/dotnet-watch/test/DotNetWatcherTests.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/DotNetWatcherTests.cs rename to src/Tools/dotnet-watch/test/DotNetWatcherTests.cs diff --git a/test/dotnet-watch.FunctionalTests/FileWatcherTests.cs b/src/Tools/dotnet-watch/test/FileWatcherTests.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/FileWatcherTests.cs rename to src/Tools/dotnet-watch/test/FileWatcherTests.cs diff --git a/test/dotnet-watch.FunctionalTests/GlobbingAppTests.cs b/src/Tools/dotnet-watch/test/GlobbingAppTests.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/GlobbingAppTests.cs rename to src/Tools/dotnet-watch/test/GlobbingAppTests.cs diff --git a/test/dotnet-watch.Tests/MsBuildFileSetFactoryTest.cs b/src/Tools/dotnet-watch/test/MsBuildFileSetFactoryTest.cs similarity index 100% rename from test/dotnet-watch.Tests/MsBuildFileSetFactoryTest.cs rename to src/Tools/dotnet-watch/test/MsBuildFileSetFactoryTest.cs diff --git a/test/dotnet-watch.FunctionalTests/NoDepsAppTests.cs b/src/Tools/dotnet-watch/test/NoDepsAppTests.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/NoDepsAppTests.cs rename to src/Tools/dotnet-watch/test/NoDepsAppTests.cs diff --git a/test/dotnet-watch.Tests/ProgramTests.cs b/src/Tools/dotnet-watch/test/ProgramTests.cs similarity index 100% rename from test/dotnet-watch.Tests/ProgramTests.cs rename to src/Tools/dotnet-watch/test/ProgramTests.cs diff --git a/test/dotnet-watch.FunctionalTests/Scenario/ProjectToolScenario.cs b/src/Tools/dotnet-watch/test/Scenario/ProjectToolScenario.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/Scenario/ProjectToolScenario.cs rename to src/Tools/dotnet-watch/test/Scenario/ProjectToolScenario.cs diff --git a/test/dotnet-watch.FunctionalTests/Scenario/WatchableApp.cs b/src/Tools/dotnet-watch/test/Scenario/WatchableApp.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/Scenario/WatchableApp.cs rename to src/Tools/dotnet-watch/test/Scenario/WatchableApp.cs diff --git a/test/dotnet-watch.FunctionalTests/TestProjects/AppWithDeps/AppWithDeps.csproj b/src/Tools/dotnet-watch/test/TestProjects/AppWithDeps/AppWithDeps.csproj similarity index 100% rename from test/dotnet-watch.FunctionalTests/TestProjects/AppWithDeps/AppWithDeps.csproj rename to src/Tools/dotnet-watch/test/TestProjects/AppWithDeps/AppWithDeps.csproj diff --git a/test/dotnet-watch.FunctionalTests/TestProjects/AppWithDeps/Program.cs b/src/Tools/dotnet-watch/test/TestProjects/AppWithDeps/Program.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/TestProjects/AppWithDeps/Program.cs rename to src/Tools/dotnet-watch/test/TestProjects/AppWithDeps/Program.cs diff --git a/test/dotnet-watch.FunctionalTests/TestProjects/Dependency/Dependency.csproj b/src/Tools/dotnet-watch/test/TestProjects/Dependency/Dependency.csproj similarity index 100% rename from test/dotnet-watch.FunctionalTests/TestProjects/Dependency/Dependency.csproj rename to src/Tools/dotnet-watch/test/TestProjects/Dependency/Dependency.csproj diff --git a/test/dotnet-watch.FunctionalTests/TestProjects/Dependency/Foo.cs b/src/Tools/dotnet-watch/test/TestProjects/Dependency/Foo.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/TestProjects/Dependency/Foo.cs rename to src/Tools/dotnet-watch/test/TestProjects/Dependency/Foo.cs diff --git a/test/dotnet-watch.FunctionalTests/TestProjects/GlobbingApp/GlobbingApp.csproj b/src/Tools/dotnet-watch/test/TestProjects/GlobbingApp/GlobbingApp.csproj similarity index 100% rename from test/dotnet-watch.FunctionalTests/TestProjects/GlobbingApp/GlobbingApp.csproj rename to src/Tools/dotnet-watch/test/TestProjects/GlobbingApp/GlobbingApp.csproj diff --git a/test/dotnet-watch.FunctionalTests/TestProjects/GlobbingApp/Program.cs b/src/Tools/dotnet-watch/test/TestProjects/GlobbingApp/Program.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/TestProjects/GlobbingApp/Program.cs rename to src/Tools/dotnet-watch/test/TestProjects/GlobbingApp/Program.cs diff --git a/test/dotnet-watch.FunctionalTests/TestProjects/GlobbingApp/exclude/Baz.cs b/src/Tools/dotnet-watch/test/TestProjects/GlobbingApp/exclude/Baz.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/TestProjects/GlobbingApp/exclude/Baz.cs rename to src/Tools/dotnet-watch/test/TestProjects/GlobbingApp/exclude/Baz.cs diff --git a/test/dotnet-watch.FunctionalTests/TestProjects/GlobbingApp/include/Foo.cs b/src/Tools/dotnet-watch/test/TestProjects/GlobbingApp/include/Foo.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/TestProjects/GlobbingApp/include/Foo.cs rename to src/Tools/dotnet-watch/test/TestProjects/GlobbingApp/include/Foo.cs diff --git a/test/dotnet-watch.FunctionalTests/TestProjects/KitchenSink/KitchenSink.csproj b/src/Tools/dotnet-watch/test/TestProjects/KitchenSink/KitchenSink.csproj similarity index 100% rename from test/dotnet-watch.FunctionalTests/TestProjects/KitchenSink/KitchenSink.csproj rename to src/Tools/dotnet-watch/test/TestProjects/KitchenSink/KitchenSink.csproj diff --git a/test/dotnet-watch.FunctionalTests/TestProjects/KitchenSink/Program.cs b/src/Tools/dotnet-watch/test/TestProjects/KitchenSink/Program.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/TestProjects/KitchenSink/Program.cs rename to src/Tools/dotnet-watch/test/TestProjects/KitchenSink/Program.cs diff --git a/test/dotnet-watch.FunctionalTests/TestProjects/NoDepsApp/NoDepsApp.csproj b/src/Tools/dotnet-watch/test/TestProjects/NoDepsApp/NoDepsApp.csproj similarity index 100% rename from test/dotnet-watch.FunctionalTests/TestProjects/NoDepsApp/NoDepsApp.csproj rename to src/Tools/dotnet-watch/test/TestProjects/NoDepsApp/NoDepsApp.csproj diff --git a/test/dotnet-watch.FunctionalTests/TestProjects/NoDepsApp/Program.cs b/src/Tools/dotnet-watch/test/TestProjects/NoDepsApp/Program.cs similarity index 100% rename from test/dotnet-watch.FunctionalTests/TestProjects/NoDepsApp/Program.cs rename to src/Tools/dotnet-watch/test/TestProjects/NoDepsApp/Program.cs diff --git a/test/dotnet-watch.Tests/Utilities/TemporaryCSharpProject.cs b/src/Tools/dotnet-watch/test/Utilities/TemporaryCSharpProject.cs similarity index 100% rename from test/dotnet-watch.Tests/Utilities/TemporaryCSharpProject.cs rename to src/Tools/dotnet-watch/test/Utilities/TemporaryCSharpProject.cs diff --git a/test/dotnet-watch.Tests/Utilities/TemporaryDirectory.cs b/src/Tools/dotnet-watch/test/Utilities/TemporaryDirectory.cs similarity index 100% rename from test/dotnet-watch.Tests/Utilities/TemporaryDirectory.cs rename to src/Tools/dotnet-watch/test/Utilities/TemporaryDirectory.cs diff --git a/test/dotnet-watch.Tests/Utilities/TestProjectGraph.cs b/src/Tools/dotnet-watch/test/Utilities/TestProjectGraph.cs similarity index 100% rename from test/dotnet-watch.Tests/Utilities/TestProjectGraph.cs rename to src/Tools/dotnet-watch/test/Utilities/TestProjectGraph.cs diff --git a/test/dotnet-watch.FunctionalTests/dotnet-watch.FunctionalTests.csproj b/src/Tools/dotnet-watch/test/dotnet-watch.Tests.csproj similarity index 64% rename from test/dotnet-watch.FunctionalTests/dotnet-watch.FunctionalTests.csproj rename to src/Tools/dotnet-watch/test/dotnet-watch.Tests.csproj index d7c0a3fdac..ce23611f24 100644 --- a/test/dotnet-watch.FunctionalTests/dotnet-watch.FunctionalTests.csproj +++ b/src/Tools/dotnet-watch/test/dotnet-watch.Tests.csproj @@ -2,23 +2,22 @@ netcoreapp2.1 + Microsoft.DotNet.Watcher.Tools.Tests $(DefaultItemExcludes);TestProjects\**\* - Microsoft.DotNet.Watcher.Tools.FunctionalTests - + - - + - - + + @@ -37,7 +36,7 @@ - diff --git a/shared/CliContext.cs b/src/Tools/shared/src/CliContext.cs similarity index 100% rename from shared/CliContext.cs rename to src/Tools/shared/src/CliContext.cs diff --git a/shared/CommandLineApplicationExtensions.cs b/src/Tools/shared/src/CommandLineApplicationExtensions.cs similarity index 100% rename from shared/CommandLineApplicationExtensions.cs rename to src/Tools/shared/src/CommandLineApplicationExtensions.cs diff --git a/shared/ConsoleReporter.cs b/src/Tools/shared/src/ConsoleReporter.cs similarity index 100% rename from shared/ConsoleReporter.cs rename to src/Tools/shared/src/ConsoleReporter.cs diff --git a/shared/DebugHelper.cs b/src/Tools/shared/src/DebugHelper.cs similarity index 100% rename from shared/DebugHelper.cs rename to src/Tools/shared/src/DebugHelper.cs diff --git a/shared/Ensure.cs b/src/Tools/shared/src/Ensure.cs similarity index 100% rename from shared/Ensure.cs rename to src/Tools/shared/src/Ensure.cs diff --git a/shared/IConsole.cs b/src/Tools/shared/src/IConsole.cs similarity index 100% rename from shared/IConsole.cs rename to src/Tools/shared/src/IConsole.cs diff --git a/shared/IReporter.cs b/src/Tools/shared/src/IReporter.cs similarity index 100% rename from shared/IReporter.cs rename to src/Tools/shared/src/IReporter.cs diff --git a/shared/NullReporter.cs b/src/Tools/shared/src/NullReporter.cs similarity index 100% rename from shared/NullReporter.cs rename to src/Tools/shared/src/NullReporter.cs diff --git a/shared/PhysicalConsole.cs b/src/Tools/shared/src/PhysicalConsole.cs similarity index 100% rename from shared/PhysicalConsole.cs rename to src/Tools/shared/src/PhysicalConsole.cs diff --git a/test/Shared/TestConsole.cs b/src/Tools/shared/test/TestConsole.cs similarity index 100% rename from test/Shared/TestConsole.cs rename to src/Tools/shared/test/TestConsole.cs diff --git a/test/Shared/TestReporter.cs b/src/Tools/shared/test/TestReporter.cs similarity index 100% rename from test/Shared/TestReporter.cs rename to src/Tools/shared/test/TestReporter.cs diff --git a/src/dotnet-dev-certs/dotnet-dev-certs.csproj b/src/dotnet-dev-certs/dotnet-dev-certs.csproj deleted file mode 100644 index 59dc5b5eab..0000000000 --- a/src/dotnet-dev-certs/dotnet-dev-certs.csproj +++ /dev/null @@ -1,32 +0,0 @@ - - - - netcoreapp2.1 - exe - Command line tool to generate certificates used in ASP.NET Core during development. - Microsoft.AspNetCore.DeveloperCertificates.Tools - dotnet;developercertificates - true - - win-x64;win-x86 - - - - - - - - - - - - - - - - - - - - - diff --git a/src/dotnet-sql-cache/dotnet-sql-cache.csproj b/src/dotnet-sql-cache/dotnet-sql-cache.csproj deleted file mode 100644 index 15c3229544..0000000000 --- a/src/dotnet-sql-cache/dotnet-sql-cache.csproj +++ /dev/null @@ -1,35 +0,0 @@ - - - - netcoreapp2.1 - exe - Command line tool to create tables and indexes in a Microsoft SQL Server database for distributed caching. - cache;distributedcache;sqlserver - true - - win-x64;win-x86 - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/dotnet-user-secrets/dotnet-user-secrets.csproj b/src/dotnet-user-secrets/dotnet-user-secrets.csproj deleted file mode 100644 index 99258ea0f6..0000000000 --- a/src/dotnet-user-secrets/dotnet-user-secrets.csproj +++ /dev/null @@ -1,42 +0,0 @@ - - - - netcoreapp2.1 - exe - Command line tool to manage user secrets for Microsoft.Extensions.Configuration. - false - Microsoft.Extensions.SecretManager.Tools - configuration;secrets;usersecrets - true - - win-x64;win-x86 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/Directory.Build.props b/test/Directory.Build.props deleted file mode 100644 index c79812719a..0000000000 --- a/test/Directory.Build.props +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/test/dotnet-user-secrets.Tests/dotnet-user-secrets.Tests.csproj b/test/dotnet-user-secrets.Tests/dotnet-user-secrets.Tests.csproj deleted file mode 100644 index fd8be34db7..0000000000 --- a/test/dotnet-user-secrets.Tests/dotnet-user-secrets.Tests.csproj +++ /dev/null @@ -1,21 +0,0 @@ - - - - netcoreapp2.1 - Microsoft.Extensions.SecretManager.Tools.Tests - - - - - - - - - - - - - - - - diff --git a/test/dotnet-watch.Tests/dotnet-watch.Tests.csproj b/test/dotnet-watch.Tests/dotnet-watch.Tests.csproj deleted file mode 100644 index ce5349ad3e..0000000000 --- a/test/dotnet-watch.Tests/dotnet-watch.Tests.csproj +++ /dev/null @@ -1,16 +0,0 @@ - - - - netcoreapp2.1 - Microsoft.DotNet.Watcher.Tools.Tests - - - - - - - - - - - diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/Key.snk b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/Key.snk deleted file mode 100644 index 2181a1627bf841f91b220de8258de4591629d169..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 596 zcmV-a0;~N80ssI2Bme+XQ$aES1ONa50098eLAD9Hsv)-@LYruqYXoq*$CbcyqhF9_ zJNINE4KwxCc=zqW)Jwkn`UV}^Y(IMBUm{xgCv_L2E)Wkc$U2dxKX7}>;DDK-YyBR0 zv=7PjBU$b1ek&UiLnaZH0)Abxi^KRk>d3t73-A?lyM6?EoG?NRqitAMj2X3Z%u&|E zrwKH+r+S(9p=O{cvKd2`xM2&?bvfd7`75k&O%+r%^Y9Y((vA%FwT9CHDc1YIm z?bKQ;eA=^ehw|6kYCr#+^U@%^KVmW;jWR>>>52Qp(#(u)JQMZntn)LxTf^YaEopg% zSwCw!kXHvf`Yi5*iHA|n^xZiW`Vs!)erHg)_=wmuq`=R*E1(2vKuV7Aqfi;Z_JV}) zocdzFRoQ|X~Wz-;7of>%3oHo1{Tr@ar%xdF&hy6Cdrd z#Vr5nWd2vx^_sX>r<(q0{qfHrRw{Oq(R~1V%Y)_)X+3Kn8cf$)`f?|$rnz~wob0mw z!!?6FA|Ksdn;(hg$rFCTIa5M7;@1K!FJEr&5h+UyX% i)<83a5xbDB8Z - - - 15.0 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - False - False - False - True - True - ..\..\build\Key.snk - True - - - - - - - Debug - AnyCPU - 2.0 - {82b43b9b-a64c-4715-b499-d71e9ca2bd60};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} - {965F8820-F809-4081-9090-1AEC903F291B} - Library - Properties - Microsoft.VisualStudio.SecretManager.TestExtension - Microsoft.VisualStudio.SecretManager.TestExtension - v4.6.1 - true - true - true - true - true - false - Program - $(DevEnvDir)devenv.exe - /rootsuffix Exp - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - - - - - - - SecretManagerTestControl.xaml - - - - - - - Designer - - - - - - - - - Designer - MSBuild:Compile - - - - - - - - False - - - - - - - - - - - - - - - - - - - 7.10.6071 - - - - - - 11.0.61030 - - - 12.0.30110 - - - 15.0.26606 - - - 8.0.50727 - - - 9.0.30729 - - - - 4.4.0 - - - - - - - Menus.ctmenu - - - - - true - VSPackage - - - - - - diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/NotifyPropertyChanged.cs b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/NotifyPropertyChanged.cs deleted file mode 100644 index 720593d469..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/NotifyPropertyChanged.cs +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System.ComponentModel; -using System.Runtime.CompilerServices; - -namespace Microsoft.VisualStudio.SecretManager.TestExtension -{ - public abstract class NotifyPropertyChanged : INotifyPropertyChanged - { - public event PropertyChangedEventHandler PropertyChanged; - - protected void OnPropertyChanged([CallerMemberName] string propertyName = null) - { - PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); - } - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/ProjectViewModel.cs b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/ProjectViewModel.cs deleted file mode 100644 index f667db5267..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/ProjectViewModel.cs +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System.IO; -using Microsoft.VisualStudio.ProjectSystem; - -namespace Microsoft.VisualStudio.SecretManager.TestExtension -{ - public class ProjectViewModel : NotifyPropertyChanged - { - public ProjectViewModel(UnconfiguredProject project) - { - Project = project; - } - - internal UnconfiguredProject Project { get; } - - public string ProjectName => Path.GetFileNameWithoutExtension(Project.FullPath); - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/Properties/AssemblyInfo.cs b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/Properties/AssemblyInfo.cs deleted file mode 100644 index 9999a9ba7e..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,33 +0,0 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// General Information about an assembly is controlled through the following -// set of attributes. Change these attribute values to modify the information -// associated with an assembly. -[assembly: AssemblyTitle("Microsoft.VisualStudio.SecretManager.TestExtension")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("Microsoft.VisualStudio.SecretManager.TestExtension")] -[assembly: AssemblyCopyright("")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from -// COM, set the ComVisible attribute to true on that type. -[assembly: ComVisible(false)] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/RelayCommand.cs b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/RelayCommand.cs deleted file mode 100644 index e12b2bd622..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/RelayCommand.cs +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System; -using System.Windows.Input; - -namespace Microsoft.VisualStudio.SecretManager.TestExtension -{ - public class RelayCommand : ICommand - { - readonly Action _execute = null; - readonly Predicate _canExecute = null; - - public RelayCommand(Action execute) - : this(execute, null) - { - } - - public RelayCommand(Action execute, Predicate canExecute) - { - if (execute == null) - throw new ArgumentNullException("execute"); - - _execute = execute; - _canExecute = canExecute; - } - - public bool CanExecute(object parameter) - { - return _canExecute == null ? true : _canExecute((T)parameter); - } - - public event EventHandler CanExecuteChanged - { - add { CommandManager.RequerySuggested += value; } - remove { CommandManager.RequerySuggested -= value; } - } - - public void Execute(object parameter) - { - _execute((T)parameter); - } - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/Resources/SecretManagerTestCommand.png b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/Resources/SecretManagerTestCommand.png deleted file mode 100644 index b22d975cbf00eda60e37587614e0677d0bfb525d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1172 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

N3mPu2mM3; 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 - /// Command ID. - /// - public const int CommandId = 0x0100; - - ///

- /// Command menu group (command set GUID). - /// - public static readonly Guid CommandSet = new Guid("e415a3f4-f2a8-4834-b7f7-f89844b2505c"); - - /// - /// VS Package that provides this command, not null. - /// - private readonly Package package; - - /// - /// Initializes a new instance of the class. - /// Adds our command handlers for menu (commands must exist in the command table file) - /// - /// Owner package, not null. - private SecretManagerTestCommand(Package package) - { - if (package == null) - { - throw new ArgumentNullException("package"); - } - - this.package = package; - - OleMenuCommandService commandService = this.ServiceProvider.GetService(typeof(IMenuCommandService)) as OleMenuCommandService; - if (commandService != null) - { - var menuCommandID = new CommandID(CommandSet, CommandId); - var menuItem = new MenuCommand(this.ShowToolWindow, menuCommandID); - commandService.AddCommand(menuItem); - } - } - - /// - /// Gets the instance of the command. - /// - public static SecretManagerTestCommand Instance - { - get; - private set; - } - - /// - /// Gets the service provider from the owner package. - /// - private IServiceProvider ServiceProvider - { - get - { - return this.package; - } - } - - /// - /// Initializes the singleton instance of the command. - /// - /// Owner package, not null. - public static void Initialize(Package package) - { - Instance = new SecretManagerTestCommand(package); - } - - /// - /// Shows the tool window when the menu item is clicked. - /// - /// The event sender. - /// The event args. - private void ShowToolWindow(object sender, EventArgs e) - { - // Get the instance number 0 of this tool window. This window is single instance so this instance - // is actually the only one. - // The last flag is set to true so that if the tool window does not exists it will be created. - ToolWindowPane window = this.package.FindToolWindow(typeof(SecretManagerTestWindow), 0, true); - if ((null == window) || (null == window.Frame)) - { - throw new NotSupportedException("Cannot create tool window"); - } - - IVsWindowFrame windowFrame = (IVsWindowFrame)window.Frame; - Microsoft.VisualStudio.ErrorHandler.ThrowOnFailure(windowFrame.Show()); - } - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestControl.xaml b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestControl.xaml deleted file mode 100644 index 201144b7e1..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestControl.xaml +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - - - - - - - - - - diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestControl.xaml.cs b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestControl.xaml.cs deleted file mode 100644 index b39c208ddf..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestControl.xaml.cs +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -namespace Microsoft.VisualStudio.SecretManager.TestExtension -{ - using System.Diagnostics.CodeAnalysis; - using System.Windows; - using System.Windows.Controls; - - /// - /// Interaction logic for SecretManagerTestControl. - /// - public partial class SecretManagerTestControl : UserControl - { - /// - /// Initializes a new instance of the class. - /// - public SecretManagerTestControl() - { - this.InitializeComponent(); - } - - /// - /// Handles click on the button by displaying a message box. - /// - /// The event sender. - /// The event args. - [SuppressMessage("Microsoft.Globalization", "CA1300:SpecifyMessageBoxOptions", Justification = "Sample code")] - [SuppressMessage("StyleCop.CSharp.NamingRules", "SA1300:ElementMustBeginWithUpperCaseLetter", Justification = "Default event handler naming pattern")] - private void button1_Click(object sender, RoutedEventArgs e) - { - MessageBox.Show( - string.Format(System.Globalization.CultureInfo.CurrentUICulture, "Invoked '{0}'", this.ToString()), - "SecretManagerTest"); - } - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestPackage.cs b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestPackage.cs deleted file mode 100644 index ada842d9cb..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestPackage.cs +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System; -using System.Diagnostics.CodeAnalysis; -using System.Runtime.InteropServices; -using Microsoft.VisualStudio.Shell; - -namespace Microsoft.VisualStudio.SecretManager.TestExtension -{ - [PackageRegistration(UseManagedResourcesOnly = true)] - [InstalledProductRegistration("#110", "#112", "1.0", IconResourceID = 400)] // Info on this package for Help/About - [ProvideMenuResource("Menus.ctmenu", 1)] - [ProvideToolWindow(typeof(SecretManagerTestWindow))] - [Guid(SecretManagerTestPackage.PackageGuidString)] - [SuppressMessage("StyleCop.CSharp.DocumentationRules", "SA1650:ElementDocumentationMustBeSpelledCorrectly", Justification = "pkgdef, VS and vsixmanifest are valid VS terms")] - public sealed class SecretManagerTestPackage : Package - { - public const string PackageGuidString = "7b771e3e-f599-4fde-95a9-e35019e705f7"; - - protected override void Initialize() - { - SecretManagerTestCommand.Initialize(this); - base.Initialize(); - } - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestPackage.vsct b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestPackage.vsct deleted file mode 100644 index 554ae60164..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestPackage.vsct +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestWindow.cs b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestWindow.cs deleted file mode 100644 index 240a8fb935..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerTestWindow.cs +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System; -using System.Runtime.InteropServices; -using Microsoft.VisualStudio.ComponentModelHost; -using Microsoft.VisualStudio.ProjectSystem; -using Microsoft.VisualStudio.Shell; - -namespace Microsoft.VisualStudio.SecretManager.TestExtension -{ - [Guid("6afffd63-17b6-4ef2-b515-fee22d767631")] - public class SecretManagerTestWindow : ToolWindowPane - { - public SecretManagerTestWindow() - : base(null) - { - this.Caption = "SecretManager Test Window"; - this.Content = new SecretManagerTestControl(); - } - - protected override void Initialize() - { - base.Initialize(); - - var component = (IComponentModel)GetService(typeof(SComponentModel)); - var projectService = component.GetService().GetProjectService(); - ((SecretManagerTestControl)Content).DataContext = new SecretManagerViewModel(projectService); - } - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerViewModel.cs b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerViewModel.cs deleted file mode 100644 index 3a4d5cbf61..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/SecretManagerViewModel.cs +++ /dev/null @@ -1,214 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using System.Linq; -using System.Runtime.InteropServices; -using System.Threading.Tasks; -using System.Windows; -using Microsoft.VisualStudio.ProjectSystem; -using Microsoft.VisualStudio.Shell; -using Microsoft.VisualStudio.Shell.Interop; -using Microsoft.VisualStudio.Threading; -using IOleServiceProvider = Microsoft.VisualStudio.OLE.Interop.IServiceProvider; -using Task = System.Threading.Tasks.Task; - -namespace Microsoft.VisualStudio.SecretManager.TestExtension -{ - public class SecretManagerViewModel : NotifyPropertyChanged - { - private readonly IProjectService _projectService; - private readonly Random _rand; - private string _error; - private bool _isLoaded; - private ProjectViewModel _selectedProject; - - public SecretManagerViewModel(IProjectService projectService) - { - _projectService = projectService; - - RefreshCommand = new RelayCommand(Refresh, RefreshIsEnabled); - AddCommand = new RelayCommand(Add, IsProjectLoaded); - SaveCommand = new RelayCommand(Save, IsProjectLoaded); - Refresh(null); - _rand = new Random(); - } - - public RelayCommand RefreshCommand { get; } - - public RelayCommand AddCommand { get; } - public RelayCommand SaveCommand { get; } - - public ObservableCollection Projects { get; } = new ObservableCollection(); - - public ProjectViewModel SelectedProject - { - get => _selectedProject; - set - { - if (value == _selectedProject) - { - return; - } - - _selectedProject = value; - OnSelectedProjectChanged(); - OnPropertyChanged(); - } - } - - public bool IsLoaded - { - get => _isLoaded; - set - { - if (value == _isLoaded) - { - return; - } - - _isLoaded = value; - OnPropertyChanged(); - } - } - - public string Error - { - get => _error; - set - { - if (value == _error) - { - return; - } - - _error = value; - OnPropertyChanged(); - OnPropertyChanged(nameof(ErrorVisibility)); - } - } - - public Visibility ErrorVisibility => Error == null ? Visibility.Collapsed : Visibility.Visible; - - public ObservableCollection> Secrets { get; } = new ObservableCollection>(); - - private bool RefreshIsEnabled(object obj) => IsLoaded || SelectedProject == null; - - private void Refresh(object obj) - { - Projects.Clear(); - - foreach (var project in _projectService.LoadedUnconfiguredProjects) - { - Projects.Add(new ProjectViewModel(project)); - } - } - - private bool IsProjectLoaded(object obj) => IsLoaded && SelectedProject != null; - - private void Add(object obj) - { - Secrets.Add(new KeyValuePair("NewKey" + _rand.Next(10_000), "My new totally random and secret test value")); - } - - private async void Save(object obj) - { - Exception exception; - - try - { - IOleServiceProvider oleServices; - var project = (IVsProject)_selectedProject.Project.Services.HostObject; - Marshal.ThrowExceptionForHR(project.GetItemContext((uint)VSConstants.VSITEMID.Root, out oleServices)); - var services = new ServiceProvider(oleServices); - - var projectSecrets = (IVsProjectSecrets)services.GetService(typeof(SVsProjectLocalSecrets)); - await TaskScheduler.Default; - - if (projectSecrets == null) - { - exception = null; - } - else - { - foreach (var secret in Secrets) - { - await projectSecrets.SetSecretAsync(secret.Key, secret.Value).ConfigureAwait(false); - } - - exception = null; - } - } - catch (Exception ex) - { - exception = ex; - } - - if (exception != null) - { - Error = exception.ToString(); - } - } - - private async void OnSelectedProjectChanged() - { - Secrets.Clear(); - IsLoaded = false; - - if (_selectedProject == null) - { - return; - } - - KeyValuePair[] results; - Exception exception; - - try - { - IOleServiceProvider oleServices; - var project = (IVsProject)_selectedProject.Project.Services.HostObject; - Marshal.ThrowExceptionForHR(project.GetItemContext((uint)VSConstants.VSITEMID.Root, out oleServices)); - var services = new ServiceProvider(oleServices); - - var projectSecrets = (IVsProjectSecrets)services.GetService(typeof(SVsProjectLocalSecrets)); - await TaskScheduler.Default; - - if (projectSecrets == null) - { - results = null; - exception = null; - } - else - { - var secrets = await projectSecrets.GetSecretsAsync().ConfigureAwait(false); - - results = secrets.ToArray(); - exception = null; - } - } - catch (Exception ex) - { - results = null; - exception = ex; - } - - await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); - - if (exception != null) - { - Error = exception.ToString(); - } - else if (results != null) - { - for (var i = 0; i < results.Length; i++) - { - Secrets.Add(results[i]); - } - } - - IsLoaded = true; - } - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/VSPackage.resx b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/VSPackage.resx deleted file mode 100644 index ca1c752309..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/VSPackage.resx +++ /dev/null @@ -1,140 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - SecretManagerTest Extension - - - SecretManagerTest Visual Studio Extension Detailed Info - - - Resources\SecretManagerTestPackage.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - \ No newline at end of file diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/app.config b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/app.config deleted file mode 100644 index 4bac29887b..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/app.config +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/source.extension.vsixmanifest b/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/source.extension.vsixmanifest deleted file mode 100644 index 3b8e971651..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager.TestExtension/source.extension.vsixmanifest +++ /dev/null @@ -1,21 +0,0 @@ - - - - - Microsoft.VisualStudio.SecretManager.TestExtension - A test extension for Microsoft.VisualStudio.TestExtension - - - - - - - - - - - - - - - diff --git a/tooling/Microsoft.VisualStudio.SecretManager/Microsoft.VisualStudio.SecretManager.csproj b/tooling/Microsoft.VisualStudio.SecretManager/Microsoft.VisualStudio.SecretManager.csproj deleted file mode 100644 index b178075251..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager/Microsoft.VisualStudio.SecretManager.csproj +++ /dev/null @@ -1,117 +0,0 @@ - - - - 15.0 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - CommonExtensions - Microsoft\ASP.NET Core\UserSecrets - true - - False - False - False - True - True - ..\..\build\Key.snk - True - - - - - - - Debug - AnyCPU - 2.0 - {82b43b9b-a64c-4715-b499-d71e9ca2bd60};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} - {5E117F2E-7152-447F-BF47-59F759EEF3A7} - Library - Properties - Microsoft.VisualStudio.SecretManager - Microsoft.VisualStudio.SecretManager - v4.6.1 - true - true - false - true - true - true - Program - $(DevEnvDir)devenv.exe - /rootsuffix Exp - - - true - full - false - bin\Debug\ - TRACE;DEBUG;EXTENSION_DEVELOPER_MODE - prompt - 4 - latest - - - true - full - true - bin\Release\ - TRACE - prompt - 4 - latest - - - - - - - - - - - - - - Designer - - - - - - - - - - - - - - - - - - - - - - - - - - - Designer - - - - - - - - - - diff --git a/tooling/Microsoft.VisualStudio.SecretManager/ProjectLocalSecretsManager.cs b/tooling/Microsoft.VisualStudio.SecretManager/ProjectLocalSecretsManager.cs deleted file mode 100644 index e516a85ffb..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager/ProjectLocalSecretsManager.cs +++ /dev/null @@ -1,148 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.VisualStudio.ProjectSystem.Properties; -using Microsoft.VisualStudio.Threading; -using Task = System.Threading.Tasks.Task; - -namespace Microsoft.VisualStudio.SecretManager -{ - /// - /// Provides an thread-safe access the secrets.json file based on the UserSecretsId property in a configured project. - /// - internal class ProjectLocalSecretsManager : Shell.IVsProjectSecrets, Shell.SVsProjectLocalSecrets - { - private const string UserSecretsPropertyName = "UserSecretsId"; - - private readonly AsyncSemaphore _semaphore; - private readonly IProjectPropertiesProvider _propertiesProvider; - private readonly Lazy _services; - - public ProjectLocalSecretsManager(IProjectPropertiesProvider propertiesProvider, Lazy serviceProvider) - { - _propertiesProvider = propertiesProvider ?? throw new ArgumentNullException(nameof(propertiesProvider)); - _services = serviceProvider ?? throw new ArgumentNullException(nameof(serviceProvider)); - _semaphore = new AsyncSemaphore(1); - } - - public string SanitizeName(string name) => name; - - public IReadOnlyCollection GetInvalidCharactersFrom(string name) => Array.Empty(); - - public async Task AddSecretAsync(string name, string value, CancellationToken cancellationToken = default) - { - EnsureKeyNameIsValid(name); - await TaskScheduler.Default; - - using (await _semaphore.EnterAsync(cancellationToken)) - using (var store = await GetOrCreateStoreAsync(cancellationToken)) - { - if (store.ContainsKey(name)) - { - throw new ArgumentException(Resources.Error_SecretAlreadyExists, nameof(name)); - } - - store.Set(name, value); - await store.SaveAsync(cancellationToken); - } - } - - public async Task SetSecretAsync(string name, string value, CancellationToken cancellationToken = default) - { - EnsureKeyNameIsValid(name); - await TaskScheduler.Default; - - using (await _semaphore.EnterAsync(cancellationToken)) - using (var store = await GetOrCreateStoreAsync(cancellationToken)) - { - store.Set(name, value); - await store.SaveAsync(cancellationToken); - } - } - - public async Task GetSecretAsync(string name, CancellationToken cancellationToken = default) - { - EnsureKeyNameIsValid(name); - await TaskScheduler.Default; - - using (await _semaphore.EnterAsync(cancellationToken)) - using (var store = await GetOrCreateStoreAsync(cancellationToken)) - { - return store.Get(name); - } - } - - public async Task> GetSecretNamesAsync(CancellationToken cancellationToken = default) - { - await TaskScheduler.Default; - - using (await _semaphore.EnterAsync(cancellationToken)) - using (var store = await GetOrCreateStoreAsync(cancellationToken)) - { - return store.ReadOnlyKeys; - } - } - - - public async Task> GetSecretsAsync(CancellationToken cancellationToken = default) - { - await TaskScheduler.Default; - - using (await _semaphore.EnterAsync(cancellationToken)) - using (var store = await GetOrCreateStoreAsync(cancellationToken)) - { - return store.Values; - } - } - - public async Task RemoveSecretAsync(string name, CancellationToken cancellationToken = default) - { - EnsureKeyNameIsValid(name); - await TaskScheduler.Default; - - using (await _semaphore.EnterAsync(cancellationToken)) - using (var store = await GetOrCreateStoreAsync(cancellationToken)) - { - if (store.Remove(name)) - { - await store.SaveAsync(cancellationToken); - return true; - } - - return false; - } - } - - private void EnsureKeyNameIsValid(string name) - { - if (name == null) - { - throw new ArgumentNullException(nameof(name)); - } - - if (name.Length == 0) - { - throw new ArgumentException(nameof(name)); - } - } - - private async Task GetOrCreateStoreAsync(CancellationToken cancellationToken) - { - var userSecretsId = await _propertiesProvider.GetCommonProperties().GetEvaluatedPropertyValueAsync(UserSecretsPropertyName); - - if (string.IsNullOrEmpty(userSecretsId)) - { - userSecretsId = Guid.NewGuid().ToString(); - await _propertiesProvider.GetCommonProperties().SetPropertyValueAsync(UserSecretsPropertyName, userSecretsId); - } - - var store = new SecretStore(userSecretsId); - await store.LoadAsync(cancellationToken); - return store; - } - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager/Properties/AssemblyInfo.cs b/tooling/Microsoft.VisualStudio.SecretManager/Properties/AssemblyInfo.cs deleted file mode 100644 index 56a9841165..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager/Properties/AssemblyInfo.cs +++ /dev/null @@ -1,16 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System.Reflection; -using Microsoft.VisualStudio.Shell; - -// required for VS to generate the pkgdef -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: ProvideCodeBase(CodeBase = @"$PackageFolder$\Microsoft.VisualStudio.SecretManager.dll")] -[assembly: ProvideBindingRedirection( - AssemblyName = "Microsoft.VisualStudio.SecretManager", - GenerateCodeBase = true, - PublicKeyToken = "adb9793829ddae60", - OldVersionLowerBound = "0.0.0.0", - OldVersionUpperBound = "1.0.0.0", - NewVersion = "1.0.0.0")] diff --git a/tooling/Microsoft.VisualStudio.SecretManager/Resources.Designer.cs b/tooling/Microsoft.VisualStudio.SecretManager/Resources.Designer.cs deleted file mode 100644 index bd79af4b8c..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager/Resources.Designer.cs +++ /dev/null @@ -1,140 +0,0 @@ -// -namespace Microsoft.VisualStudio.SecretManager -{ - using System.Globalization; - using System.Reflection; - using System.Resources; - - internal static class Resources - { - private static readonly ResourceManager _resourceManager - = new ResourceManager("Microsoft.VisualStudio.SecretManager.Resources", typeof(Resources).GetTypeInfo().Assembly); - - /// - /// A secret with this name already exists. - /// - internal static string Error_SecretAlreadyExists - { - get => GetString("Error_SecretAlreadyExists"); - } - - /// - /// Value cannot be null or an empty string. - /// - internal static string Common_StringNullOrEmpty - { - get => GetString("Common_StringNullOrEmpty"); - } - - /// - /// Value cannot be null or an empty string. - /// - internal static string FormatCommon_StringNullOrEmpty() - => GetString("Common_StringNullOrEmpty"); - - /// - /// Invalid character '{0}' found in the user secrets ID at index '{1}'. - /// - internal static string Error_Invalid_Character_In_UserSecrets_Id - { - get => GetString("Error_Invalid_Character_In_UserSecrets_Id"); - } - - /// - /// Invalid character '{0}' found in the user secrets ID at index '{1}'. - /// - internal static string FormatError_Invalid_Character_In_UserSecrets_Id(object p0, object p1) - => string.Format(CultureInfo.CurrentCulture, GetString("Error_Invalid_Character_In_UserSecrets_Id"), p0, p1); - - /// - /// Could not find 'UserSecretsIdAttribute' on assembly '{0}'. - /// Check that the project for '{0}' has set the 'UserSecretsId' build property. - /// If the 'UserSecretsId' property is already set then add a reference to the Microsoft.Extensions.Configuration.UserSecrets package. - /// - internal static string Error_Missing_UserSecretsIdAttribute - { - get => GetString("Error_Missing_UserSecretsIdAttribute"); - } - - /// - /// Could not find 'UserSecretsIdAttribute' on assembly '{0}'. - /// Check that the project for '{0}' has set the 'UserSecretsId' build property. - /// If the 'UserSecretsId' property is already set then add a reference to the Microsoft.Extensions.Configuration.UserSecrets package. - /// - internal static string FormatError_Missing_UserSecretsIdAttribute(object p0) - => string.Format(CultureInfo.CurrentCulture, GetString("Error_Missing_UserSecretsIdAttribute"), p0); - - /// - /// File path must be a non-empty string. - /// - internal static string Error_InvalidFilePath - { - get => GetString("Error_InvalidFilePath"); - } - - /// - /// File path must be a non-empty string. - /// - internal static string FormatError_InvalidFilePath() - => GetString("Error_InvalidFilePath"); - - /// - /// Could not parse the JSON file. Error on line number '{0}': '{1}'. - /// - internal static string Error_JSONParseError - { - get => GetString("Error_JSONParseError"); - } - - /// - /// Could not parse the JSON file. Error on line number '{0}': '{1}'. - /// - internal static string FormatError_JSONParseError(object p0, object p1) - => string.Format(CultureInfo.CurrentCulture, GetString("Error_JSONParseError"), p0, p1); - - /// - /// A duplicate key '{0}' was found. - /// - internal static string Error_KeyIsDuplicated - { - get => GetString("Error_KeyIsDuplicated"); - } - - /// - /// A duplicate key '{0}' was found. - /// - internal static string FormatError_KeyIsDuplicated(object p0) - => string.Format(CultureInfo.CurrentCulture, GetString("Error_KeyIsDuplicated"), p0); - - /// - /// Unsupported JSON token '{0}' was found. Path '{1}', line {2} position {3}. - /// - internal static string Error_UnsupportedJSONToken - { - get => GetString("Error_UnsupportedJSONToken"); - } - - /// - /// Unsupported JSON token '{0}' was found. Path '{1}', line {2} position {3}. - /// - internal static string FormatError_UnsupportedJSONToken(object p0, object p1, object p2, object p3) - => string.Format(CultureInfo.CurrentCulture, GetString("Error_UnsupportedJSONToken"), p0, p1, p2, p3); - - private static string GetString(string name, params string[] formatterNames) - { - var value = _resourceManager.GetString(name); - - System.Diagnostics.Debug.Assert(value != null); - - if (formatterNames != null) - { - for (var i = 0; i < formatterNames.Length; i++) - { - value = value.Replace("{" + formatterNames[i] + "}", "{" + i + "}"); - } - } - - return value; - } - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager/Resources.resx b/tooling/Microsoft.VisualStudio.SecretManager/Resources.resx deleted file mode 100644 index 1057cd7926..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager/Resources.resx +++ /dev/null @@ -1,146 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - File path must be a non-empty string. - - - Could not parse the JSON file. Error on line number '{0}': '{1}'. - - - A duplicate key '{0}' was found. - - - Unsupported JSON token '{0}' was found. Path '{1}', line {2} position {3}. - - - Value cannot be null or an empty string. - - - Invalid character '{0}' found in the user secrets ID at index '{1}'. - - - Could not find 'UserSecretsIdAttribute' on assembly '{0}'. -Check that the project for '{0}' has set the 'UserSecretsId' build property. -If the 'UserSecretsId' property is already set then add a reference to the Microsoft.Extensions.Configuration.UserSecrets package. - - - A secret with this name already exists. - - \ No newline at end of file diff --git a/tooling/Microsoft.VisualStudio.SecretManager/SecretManagerFactory.cs b/tooling/Microsoft.VisualStudio.SecretManager/SecretManagerFactory.cs deleted file mode 100644 index b37212e23b..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager/SecretManagerFactory.cs +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System; -using System.ComponentModel.Composition; -using Microsoft.VisualStudio.ProjectSystem; -using Microsoft.VisualStudio.Shell; - -namespace Microsoft.VisualStudio.SecretManager -{ - internal class SecretManagerFactory - { - // This is capability is set in Microsoft.Extensions.Configuration.UserSecrets - private const string CapabilityName = "LocalUserSecrets"; - - private readonly Lazy _secretManager; - private readonly UnconfiguredProject _project; - - [ImportingConstructor] - public SecretManagerFactory(UnconfiguredProject project, SVsServiceProvider vsServiceProvider) - { - _project = project; - - var serviceProvider = new Lazy(() => vsServiceProvider); - - _secretManager = new Lazy(() => - { - var propertiesProvider = _project.Services.ActiveConfiguredProjectProvider.ActiveConfiguredProject.Services.ProjectPropertiesProvider; - return new ProjectLocalSecretsManager(propertiesProvider, serviceProvider); - }); - } - - [ExportVsProfferedProjectService(typeof(SVsProjectLocalSecrets))] - [AppliesTo(CapabilityName)] - public SVsProjectLocalSecrets ProjectLocalSecretsManager => _secretManager.Value; - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager/SecretStore.cs b/tooling/Microsoft.VisualStudio.SecretManager/SecretStore.cs deleted file mode 100644 index ee10d5069c..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager/SecretStore.cs +++ /dev/null @@ -1,169 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System; -using System.Collections.Generic; -using System.IO; -using System.Text; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.Extensions.Configuration.Json; -using Microsoft.Extensions.Configuration.UserSecrets; -using Microsoft.VisualStudio.Threading; -using Newtonsoft.Json.Linq; -using Task = System.Threading.Tasks.Task; - -namespace Microsoft.VisualStudio.SecretManager -{ - /// - /// Provides read and write access to the secrets.json file for local user secrets. - /// This is not thread-safe. - /// This object is meant to have a short lifetime. - /// When calling , this will overwrite the secrets.json file. It does not check for concurrency issues if another process has edited this file. - /// - internal class SecretStore : IDisposable - { - private Dictionary _secrets; - private string _fileDir; - private string _filePath; - private bool _isDirty; - private volatile bool _disposed; - - public SecretStore(string userSecretsId) - { - _filePath = PathHelper.GetSecretsPathFromSecretsId(userSecretsId); - _fileDir = Path.GetDirectoryName(_filePath); - } - - public IReadOnlyCollection ReadOnlyKeys - { - get - { - EnsureNotDisposed(); - return _secrets.Keys; - } - } - - public IReadOnlyDictionary Values - { - get - { - EnsureNotDisposed(); - - return _secrets; - } - } - - public bool ContainsKey(string key) - { - EnsureNotDisposed(); - - return _secrets.ContainsKey(key); - } - - public string Get(string name) - { - EnsureNotDisposed(); - - return _secrets[name]; - } - - public void Set(string key, string value) - { - EnsureNotDisposed(); - - _isDirty = true; - _secrets[key] = value; - } - - public bool Remove(string key) - { - EnsureNotDisposed(); - _isDirty = true; - return _secrets.Remove(key); - } - - public async Task LoadAsync(CancellationToken cancellationToken) - { - cancellationToken.ThrowIfCancellationRequested(); - await TaskScheduler.Default; - - EnsureNotDisposed(); - - string text = null; - - if (File.Exists(_filePath)) - { - text = File.ReadAllText(_filePath); - } - - _secrets = DeserializeJson(text); - } - - public async Task SaveAsync(CancellationToken cancellationToken) - { - cancellationToken.ThrowIfCancellationRequested(); - await TaskScheduler.Default; - - EnsureNotDisposed(); - - if (!_isDirty) - { - return; - } - - Directory.CreateDirectory(_fileDir); - File.WriteAllText(_filePath, Stringify(_secrets), Encoding.UTF8); - - _isDirty = false; - } - - private void EnsureNotDisposed() - { - if (_disposed) - { - throw new ObjectDisposedException(nameof(SecretStore)); - } - } - - private static string Stringify(Dictionary secrets) - { - var contents = new JObject(); - if (secrets != null) - { - foreach (var secret in secrets) - { - contents[secret.Key] = secret.Value; - } - } - - return contents.ToString(); - } - - private static Dictionary DeserializeJson(string text) - { - if (string.IsNullOrEmpty(text)) - { - return new Dictionary(StringComparer.OrdinalIgnoreCase); - } - - using (var stream = new MemoryStream()) - { - var bytes = Encoding.UTF8.GetBytes(text); - stream.Write(bytes, 0, bytes.Length); - stream.Position = 0; - - // might throw FormatException if JSON is malformed. - var data = JsonConfigurationFileParser.Parse(stream); - - return new Dictionary(data, StringComparer.OrdinalIgnoreCase); - } - } - - public void Dispose() - { - if (_disposed) return; - _disposed = true; - } - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager/Sources/ConfigurationPath.cs b/tooling/Microsoft.VisualStudio.SecretManager/Sources/ConfigurationPath.cs deleted file mode 100644 index d4f277e0d1..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager/Sources/ConfigurationPath.cs +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System; -using System.Collections.Generic; - -namespace Microsoft.Extensions.Configuration -{ - /// - /// Utility methods and constants for manipulating Configuration paths - /// - internal static class ConfigurationPath - { - /// - /// The delimiter ":" used to separate individual keys in a path. - /// - public static readonly string KeyDelimiter = ":"; - - /// - /// Combines path segments into one path. - /// - /// The path segments to combine. - /// The combined path. - public static string Combine(params string[] pathSegments) - { - if (pathSegments == null) - { - throw new ArgumentNullException(nameof(pathSegments)); - } - return string.Join(KeyDelimiter, pathSegments); - } - - /// - /// Combines path segments into one path. - /// - /// The path segments to combine. - /// The combined path. - public static string Combine(IEnumerable pathSegments) - { - if (pathSegments == null) - { - throw new ArgumentNullException(nameof(pathSegments)); - } - return string.Join(KeyDelimiter, pathSegments); - } - - /// - /// Extracts the last path segment from the path. - /// - /// The path. - /// The last path segment of the path. - public static string GetSectionKey(string path) - { - if (string.IsNullOrEmpty(path)) - { - return path; - } - - var lastDelimiterIndex = path.LastIndexOf(KeyDelimiter, StringComparison.OrdinalIgnoreCase); - return lastDelimiterIndex == -1 ? path : path.Substring(lastDelimiterIndex + 1); - } - - /// - /// Extracts the path corresponding to the parent node for a given path. - /// - /// The path. - /// The original path minus the last individual segment found in it. Null if the original path corresponds to a top level node. - public static string GetParentPath(string path) - { - if (string.IsNullOrEmpty(path)) - { - return null; - } - - var lastDelimiterIndex = path.LastIndexOf(KeyDelimiter, StringComparison.OrdinalIgnoreCase); - return lastDelimiterIndex == -1 ? null : path.Substring(0, lastDelimiterIndex); - } - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager/Sources/JsonConfigurationFileParser.cs b/tooling/Microsoft.VisualStudio.SecretManager/Sources/JsonConfigurationFileParser.cs deleted file mode 100644 index 1cc65407c5..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager/Sources/JsonConfigurationFileParser.cs +++ /dev/null @@ -1,120 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using Microsoft.VisualStudio.SecretManager; -using Newtonsoft.Json; -using Newtonsoft.Json.Linq; - -namespace Microsoft.Extensions.Configuration.Json -{ - internal class JsonConfigurationFileParser - { - private JsonConfigurationFileParser() { } - - private readonly IDictionary _data = new SortedDictionary(StringComparer.OrdinalIgnoreCase); - private readonly Stack _context = new Stack(); - private string _currentPath; - - private JsonTextReader _reader; - - public static IDictionary Parse(Stream input) - => new JsonConfigurationFileParser().ParseStream(input); - - private IDictionary ParseStream(Stream input) - { - _data.Clear(); - _reader = new JsonTextReader(new StreamReader(input)); - _reader.DateParseHandling = DateParseHandling.None; - - var jsonConfig = JObject.Load(_reader); - - VisitJObject(jsonConfig); - - return _data; - } - - private void VisitJObject(JObject jObject) - { - foreach (var property in jObject.Properties()) - { - EnterContext(property.Name); - VisitProperty(property); - ExitContext(); - } - } - - private void VisitProperty(JProperty property) - { - VisitToken(property.Value); - } - - private void VisitToken(JToken token) - { - switch (token.Type) - { - case JTokenType.Object: - VisitJObject(token.Value()); - break; - - case JTokenType.Array: - VisitArray(token.Value()); - break; - - case JTokenType.Integer: - case JTokenType.Float: - case JTokenType.String: - case JTokenType.Boolean: - case JTokenType.Bytes: - case JTokenType.Raw: - case JTokenType.Null: - VisitPrimitive(token.Value()); - break; - - default: - throw new FormatException(Resources.FormatError_UnsupportedJSONToken( - _reader.TokenType, - _reader.Path, - _reader.LineNumber, - _reader.LinePosition)); - } - } - - private void VisitArray(JArray array) - { - for (int index = 0; index < array.Count; index++) - { - EnterContext(index.ToString()); - VisitToken(array[index]); - ExitContext(); - } - } - - private void VisitPrimitive(JValue data) - { - var key = _currentPath; - - if (_data.ContainsKey(key)) - { - throw new FormatException(Resources.FormatError_KeyIsDuplicated(key)); - } - _data[key] = data.ToString(CultureInfo.InvariantCulture); - } - - private void EnterContext(string context) - { - _context.Push(context); - _currentPath = ConfigurationPath.Combine(_context.Reverse()); - } - - private void ExitContext() - { - _context.Pop(); - _currentPath = ConfigurationPath.Combine(_context.Reverse()); - } - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager/Sources/PathHelper.cs b/tooling/Microsoft.VisualStudio.SecretManager/Sources/PathHelper.cs deleted file mode 100644 index ae135cb5c4..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager/Sources/PathHelper.cs +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System; -using System.IO; -using Microsoft.VisualStudio.SecretManager; - -namespace Microsoft.Extensions.Configuration.UserSecrets -{ - /// - /// Provides paths for user secrets configuration files. - /// - internal class PathHelper - { - internal const string SecretsFileName = "secrets.json"; - - /// - /// - /// Returns the path to the JSON file that stores user secrets. - /// - /// - /// This uses the current user profile to locate the secrets file on disk in a location outside of source control. - /// - /// - /// The user secret ID. - /// The full path to the secret file. - public static string GetSecretsPathFromSecretsId(string userSecretsId) - { - if (string.IsNullOrEmpty(userSecretsId)) - { - throw new ArgumentException(Resources.Common_StringNullOrEmpty, nameof(userSecretsId)); - } - - var badCharIndex = userSecretsId.IndexOfAny(Path.GetInvalidFileNameChars()); - if (badCharIndex != -1) - { - throw new InvalidOperationException( - string.Format( - Resources.Error_Invalid_Character_In_UserSecrets_Id, - userSecretsId[badCharIndex], - badCharIndex)); - } - - var root = Environment.GetEnvironmentVariable("APPDATA") ?? // On Windows it goes to %APPDATA%\Microsoft\UserSecrets\ - Environment.GetEnvironmentVariable("HOME"); // On Mac/Linux it goes to ~/.microsoft/usersecrets/ - - if (!string.IsNullOrEmpty(Environment.GetEnvironmentVariable("APPDATA"))) - { - return Path.Combine(root, "Microsoft", "UserSecrets", userSecretsId, SecretsFileName); - } - else - { - return Path.Combine(root, ".microsoft", "usersecrets", userSecretsId, SecretsFileName); - } - } - } -} diff --git a/tooling/Microsoft.VisualStudio.SecretManager/source.extension.vsixmanifest b/tooling/Microsoft.VisualStudio.SecretManager/source.extension.vsixmanifest deleted file mode 100644 index 37bb50c5da..0000000000 --- a/tooling/Microsoft.VisualStudio.SecretManager/source.extension.vsixmanifest +++ /dev/null @@ -1,22 +0,0 @@ - - - - - ASP.NET Core User Secrets Extension - Microsoft.VisualStudio.SecretManager - Enables IVsProjectSecrets for ASP.NET Core projects that use Microsoft.Extensions.Configuration.UserSecrets. - - - - - - - - - - - - - - - diff --git a/version.props b/version.props deleted file mode 100644 index 4078cfc422..0000000000 --- a/version.props +++ /dev/null @@ -1,15 +0,0 @@ - - - 2.1.1 - 15.6 - rtm - $(VersionPrefix) - $(VersionPrefix)-$(VersionSuffix)-final - $(VsixVersion).$(BuildNumber) - $(VsixVersion).999999 - t000 - a- - $(FeatureBranchVersionPrefix)$(VersionSuffix)-$([System.Text.RegularExpressions.Regex]::Replace('$(FeatureBranchVersionSuffix)', '[^\w-]', '-')) - $(VersionSuffix)-$(BuildNumber) - -