From d39856a7cb9ba9e02c3105eb06c8e51687e6634a Mon Sep 17 00:00:00 2001 From: Skylar Date: Thu, 9 Feb 2023 16:46:25 -0800 Subject: [PATCH 1/3] Add the command line parser and parse the tool arguments --- ...CoreApp,Version=v7.0.AssemblyAttributes.cs | 4 - .../net7.0/VSConfigFinder.AssemblyInfo.cs | 23 ------ .../VSConfigFinder.AssemblyInfoInputs.cache | 1 - ....GeneratedMSBuildEditorConfig.editorconfig | 11 --- .../net7.0/VSConfigFinder.GlobalUsings.g.cs | 8 -- .../Debug/net7.0/VSConfigFinder.assets.cache | Bin 152 -> 0 bytes ...onfigFinder.csproj.AssemblyReference.cache | Bin 93295 -> 0 bytes .../VSConfigFinder.csproj.nuget.dgspec.json | 64 ---------------- .../obj/VSConfigFinder.csproj.nuget.g.props | 15 ---- .../obj/VSConfigFinder.csproj.nuget.g.targets | 2 - VSConfigFinder/obj/project.assets.json | 69 ------------------ VSConfigFinder/obj/project.nuget.cache | 8 -- 12 files changed, 205 deletions(-) delete mode 100644 VSConfigFinder/obj/Debug/net7.0/.NETCoreApp,Version=v7.0.AssemblyAttributes.cs delete mode 100644 VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.AssemblyInfo.cs delete mode 100644 VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.AssemblyInfoInputs.cache delete mode 100644 VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.GeneratedMSBuildEditorConfig.editorconfig delete mode 100644 VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.GlobalUsings.g.cs delete mode 100644 VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.assets.cache delete mode 100644 VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.csproj.AssemblyReference.cache delete mode 100644 VSConfigFinder/obj/VSConfigFinder.csproj.nuget.dgspec.json delete mode 100644 VSConfigFinder/obj/VSConfigFinder.csproj.nuget.g.props delete mode 100644 VSConfigFinder/obj/VSConfigFinder.csproj.nuget.g.targets delete mode 100644 VSConfigFinder/obj/project.assets.json delete mode 100644 VSConfigFinder/obj/project.nuget.cache diff --git a/VSConfigFinder/obj/Debug/net7.0/.NETCoreApp,Version=v7.0.AssemblyAttributes.cs b/VSConfigFinder/obj/Debug/net7.0/.NETCoreApp,Version=v7.0.AssemblyAttributes.cs deleted file mode 100644 index 4257f4b..0000000 --- a/VSConfigFinder/obj/Debug/net7.0/.NETCoreApp,Version=v7.0.AssemblyAttributes.cs +++ /dev/null @@ -1,4 +0,0 @@ -// -using System; -using System.Reflection; -[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v7.0", FrameworkDisplayName = ".NET 7.0")] diff --git a/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.AssemblyInfo.cs b/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.AssemblyInfo.cs deleted file mode 100644 index f904102..0000000 --- a/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.AssemblyInfo.cs +++ /dev/null @@ -1,23 +0,0 @@ -//------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -//------------------------------------------------------------------------------ - -using System; -using System.Reflection; - -[assembly: System.Reflection.AssemblyCompanyAttribute("VSConfigFinder")] -[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] -[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] -[assembly: System.Reflection.AssemblyProductAttribute("VSConfigFinder")] -[assembly: System.Reflection.AssemblyTitleAttribute("VSConfigFinder")] -[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] - -// Generated by the MSBuild WriteCodeFragment class. - diff --git a/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.AssemblyInfoInputs.cache b/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.AssemblyInfoInputs.cache deleted file mode 100644 index 09a93b5..0000000 --- a/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.AssemblyInfoInputs.cache +++ /dev/null @@ -1 +0,0 @@ -5fa6f30b4c2e6dfaac7f8aed3404b6f4fc933398 diff --git a/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.GeneratedMSBuildEditorConfig.editorconfig b/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.GeneratedMSBuildEditorConfig.editorconfig deleted file mode 100644 index ecd4c62..0000000 --- a/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.GeneratedMSBuildEditorConfig.editorconfig +++ /dev/null @@ -1,11 +0,0 @@ -is_global = true -build_property.TargetFramework = net7.0 -build_property.TargetPlatformMinVersion = -build_property.UsingMicrosoftNETSdkWeb = -build_property.ProjectTypeGuids = -build_property.InvariantGlobalization = -build_property.PlatformNeutralAssembly = -build_property.EnforceExtendedAnalyzerRules = -build_property._SupportedPlatformList = Linux,macOS,Windows -build_property.RootNamespace = VSConfigFinder -build_property.ProjectDir = C:\Users\sknam\source\repos\VSConfigFinder\VSConfigFinder\ diff --git a/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.GlobalUsings.g.cs b/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.GlobalUsings.g.cs deleted file mode 100644 index 8578f3d..0000000 --- a/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.GlobalUsings.g.cs +++ /dev/null @@ -1,8 +0,0 @@ -// -global using global::System; -global using global::System.Collections.Generic; -global using global::System.IO; -global using global::System.Linq; -global using global::System.Net.Http; -global using global::System.Threading; -global using global::System.Threading.Tasks; diff --git a/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.assets.cache b/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.assets.cache deleted file mode 100644 index 846303a66894a4dba61d1048c780c3fe24ec6eb3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 152 zcmWIWc6a1qU|>)_RoZ9Y9dq#W8D{f6i%p{5w7a)+h%Dtlf3aleip{wXrvTLu3mAb4 n<(;i!LW@(2ierki^AdAo^zus6Q%hnB5|gtN(^HFM2$=-{SBxGl diff --git a/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.csproj.AssemblyReference.cache b/VSConfigFinder/obj/Debug/net7.0/VSConfigFinder.csproj.AssemblyReference.cache deleted file mode 100644 index 7948f0ef3cc9a7a24620c96c847cf255cc920b15..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 93295 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 diff --git a/VSConfigFinder/obj/VSConfigFinder.csproj.nuget.dgspec.json b/VSConfigFinder/obj/VSConfigFinder.csproj.nuget.dgspec.json deleted file mode 100644 index 7538446..0000000 --- a/VSConfigFinder/obj/VSConfigFinder.csproj.nuget.dgspec.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "format": 1, - "restore": { - "C:\\Users\\sknam\\source\\repos\\VSConfigFinder\\VSConfigFinder\\VSConfigFinder.csproj": {} - }, - "projects": { - "C:\\Users\\sknam\\source\\repos\\VSConfigFinder\\VSConfigFinder\\VSConfigFinder.csproj": { - "version": "1.0.0", - "restore": { - "projectUniqueName": "C:\\Users\\sknam\\source\\repos\\VSConfigFinder\\VSConfigFinder\\VSConfigFinder.csproj", - "projectName": "VSConfigFinder", - "projectPath": "C:\\Users\\sknam\\source\\repos\\VSConfigFinder\\VSConfigFinder\\VSConfigFinder.csproj", - "packagesPath": "C:\\Users\\sknam\\.nuget\\packages\\", - "outputPath": "C:\\Users\\sknam\\source\\repos\\VSConfigFinder\\VSConfigFinder\\obj\\", - "projectStyle": "PackageReference", - "configFilePaths": [ - "C:\\Users\\sknam\\AppData\\Roaming\\NuGet\\NuGet.Config", - "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" - ], - "originalTargetFrameworks": [ - "net7.0" - ], - "sources": { - "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, - "C:\\Program Files\\dotnet\\library-packs": {}, - "https://api.nuget.org/v3/index.json": {} - }, - "frameworks": { - "net7.0": { - "targetAlias": "net7.0", - "projectReferences": {} - } - }, - "warningProperties": { - "warnAsError": [ - "NU1605" - ] - } - }, - "frameworks": { - "net7.0": { - "targetAlias": "net7.0", - "imports": [ - "net461", - "net462", - "net47", - "net471", - "net472", - "net48", - "net481" - ], - "assetTargetFallback": true, - "warn": true, - "frameworkReferences": { - "Microsoft.NETCore.App": { - "privateAssets": "all" - } - }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\7.0.200\\RuntimeIdentifierGraph.json" - } - } - } - } -} \ No newline at end of file diff --git a/VSConfigFinder/obj/VSConfigFinder.csproj.nuget.g.props b/VSConfigFinder/obj/VSConfigFinder.csproj.nuget.g.props deleted file mode 100644 index d45991f..0000000 --- a/VSConfigFinder/obj/VSConfigFinder.csproj.nuget.g.props +++ /dev/null @@ -1,15 +0,0 @@ - - - - True - NuGet - $(MSBuildThisFileDirectory)project.assets.json - $(UserProfile)\.nuget\packages\ - C:\Users\sknam\.nuget\packages\ - PackageReference - 6.6.0 - - - - - \ No newline at end of file diff --git a/VSConfigFinder/obj/VSConfigFinder.csproj.nuget.g.targets b/VSConfigFinder/obj/VSConfigFinder.csproj.nuget.g.targets deleted file mode 100644 index 3dc06ef..0000000 --- a/VSConfigFinder/obj/VSConfigFinder.csproj.nuget.g.targets +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/VSConfigFinder/obj/project.assets.json b/VSConfigFinder/obj/project.assets.json deleted file mode 100644 index 5a8d9f0..0000000 --- a/VSConfigFinder/obj/project.assets.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "version": 3, - "targets": { - "net7.0": {} - }, - "libraries": {}, - "projectFileDependencyGroups": { - "net7.0": [] - }, - "packageFolders": { - "C:\\Users\\sknam\\.nuget\\packages\\": {} - }, - "project": { - "version": "1.0.0", - "restore": { - "projectUniqueName": "C:\\Users\\sknam\\source\\repos\\VSConfigFinder\\VSConfigFinder\\VSConfigFinder.csproj", - "projectName": "VSConfigFinder", - "projectPath": "C:\\Users\\sknam\\source\\repos\\VSConfigFinder\\VSConfigFinder\\VSConfigFinder.csproj", - "packagesPath": "C:\\Users\\sknam\\.nuget\\packages\\", - "outputPath": "C:\\Users\\sknam\\source\\repos\\VSConfigFinder\\VSConfigFinder\\obj\\", - "projectStyle": "PackageReference", - "configFilePaths": [ - "C:\\Users\\sknam\\AppData\\Roaming\\NuGet\\NuGet.Config", - "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" - ], - "originalTargetFrameworks": [ - "net7.0" - ], - "sources": { - "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, - "C:\\Program Files\\dotnet\\library-packs": {}, - "https://api.nuget.org/v3/index.json": {} - }, - "frameworks": { - "net7.0": { - "targetAlias": "net7.0", - "projectReferences": {} - } - }, - "warningProperties": { - "warnAsError": [ - "NU1605" - ] - } - }, - "frameworks": { - "net7.0": { - "targetAlias": "net7.0", - "imports": [ - "net461", - "net462", - "net47", - "net471", - "net472", - "net48", - "net481" - ], - "assetTargetFallback": true, - "warn": true, - "frameworkReferences": { - "Microsoft.NETCore.App": { - "privateAssets": "all" - } - }, - "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\7.0.200\\RuntimeIdentifierGraph.json" - } - } - } -} \ No newline at end of file diff --git a/VSConfigFinder/obj/project.nuget.cache b/VSConfigFinder/obj/project.nuget.cache deleted file mode 100644 index 4b0ae6b..0000000 --- a/VSConfigFinder/obj/project.nuget.cache +++ /dev/null @@ -1,8 +0,0 @@ -{ - "version": 2, - "dgSpecHash": "IuG/JbkfIdX3UdU8/RRFju/1IEtoOkMRc3iqZHX6UlUjVP19cv63jfOZZkDdwd58G1Zl0AO+GQQjBZWKyQIZbg==", - "success": true, - "projectFilePath": "C:\\Users\\sknam\\source\\repos\\VSConfigFinder\\VSConfigFinder\\VSConfigFinder.csproj", - "expectedPackageFiles": [], - "logs": [] -} \ No newline at end of file From 99802f303d8efe285f59f0a007baa1cf34192382 Mon Sep 17 00:00:00 2001 From: Skylar Date: Thu, 9 Feb 2023 16:49:31 -0800 Subject: [PATCH 2/3] Add the command line parser and parse the tool arguments --- VSConfigFinder/.editorconfig | 2 +- VSConfigFinder/CommandLineOptions.cs | 25 +++++++++--------- VSConfigFinder/ICommandLineOptions.cs | 16 +++++++++--- VSConfigFinder/Program.cs | 37 +++++++++++++++++++++++---- VSConfigFinder/VSConfigFinder.csproj | 4 +++ 5 files changed, 63 insertions(+), 21 deletions(-) diff --git a/VSConfigFinder/.editorconfig b/VSConfigFinder/.editorconfig index 86457d4..5ae843a 100644 --- a/VSConfigFinder/.editorconfig +++ b/VSConfigFinder/.editorconfig @@ -15,7 +15,7 @@ dotnet_style_object_initializer = true:suggestion dotnet_style_collection_initializer = true:suggestion dotnet_style_prefer_simplified_boolean_expressions = true:suggestion dotnet_style_prefer_conditional_expression_over_assignment = true:silent -csharp_using_directive_placement = outside_namespace:silent +csharp_using_directive_placement = inside_namespace:silent csharp_prefer_simple_using_statement = true:suggestion csharp_prefer_braces = true:silent csharp_style_namespace_declarations = block_scoped:silent diff --git a/VSConfigFinder/CommandLineOptions.cs b/VSConfigFinder/CommandLineOptions.cs index a8e34af..ce7f636 100644 --- a/VSConfigFinder/CommandLineOptions.cs +++ b/VSConfigFinder/CommandLineOptions.cs @@ -1,18 +1,19 @@ namespace VSConfigFinder { - internal class CommandLineOptions : ICommandLineOptions - { - public CommandLineOptions(string filePath, string output) - { - Utilities.ValidateIsNotNullOrEmpty(filePath, nameof(filePath)); - Utilities.ValidateOutputParameter(output, nameof(output)); - - FilePath = filePath; - Output = output; - } + using CommandLine; - public string FilePath { get; set; } + /// + public class CommandLineOptions : ICommandLineOptions + { + /// + [Option("folderpath", Required = true, HelpText = "Set the source folder path to use as the root. The search will start from the root towards the bottom.")] + public string FolderPath { get; set; } - public string Output { get; set; } + /// + [Option("createfile", Required = false, HelpText = "Set the folder path to output the consolidated .vsconfig.\n" + + "If the argument (--createfile) is not passed at all, the program will output the cli arguments that can be fed into the Visual Studio Installer setup arguments. (e.g. --add --add Microsoft.VisualStudio.Component.Roslyn.Compiler --add Microsoft.Net.Component.4.8.SDK\n" + + "If the argument is passed without a following folder path, the program will create and output the final .vsconfig into the current directory.\n" + + "If the argument is passed with a following folder path, the program will create and output the final .vsconfig into the specified folder path that is followed by --createFile.")] + public string? CreateFile { get; set; } } } diff --git a/VSConfigFinder/ICommandLineOptions.cs b/VSConfigFinder/ICommandLineOptions.cs index 26a38ba..0455ee3 100644 --- a/VSConfigFinder/ICommandLineOptions.cs +++ b/VSConfigFinder/ICommandLineOptions.cs @@ -1,9 +1,19 @@ namespace VSConfigFinder { - internal interface ICommandLineOptions + /// + /// The interface for the command line options. + /// + public interface ICommandLineOptions { - string FilePath { get; set; } + /// + /// Gets or sets the folder path to be used as the root (starting point) of the search. + /// + string FolderPath { get; set; } - string Output { get; set; } + /// + /// Gets or sets the folder path to output the consolidated .vsconfig instead of the command line arguments. + /// If a folder path is not provided after the argument, the output folder will default to the current directory. + /// + string? CreateFile { get; set; } } } diff --git a/VSConfigFinder/Program.cs b/VSConfigFinder/Program.cs index 2c9f74b..fa8c052 100644 --- a/VSConfigFinder/Program.cs +++ b/VSConfigFinder/Program.cs @@ -1,11 +1,38 @@ -internal class Program +namespace VSConfigFinder { - private static void Main(string[] args) + using CommandLine; + + /// + /// class for the .vsconfig finder tool. + /// + public class Program { - // Take in the command line arguments + /// + /// Main entry point of the tool. + /// + /// The program arguments + public static void Main(string[] args) + { + var parser = new Parser(with => + { + with.CaseSensitive = false; + }); + + // Take in the command line arguments + parser.ParseArguments(args) + .WithParsed(Run) + .WithNotParsed(HandleParseError); + } - // Create a runner + private static void Run(CommandLineOptions options) + { + Console.WriteLine("Hello! I succeeded!"); + Console.WriteLine($"--createFile: {options.CreateFile}"); + } - // Run and output + private static void HandleParseError(IEnumerable errors) + { + Console.WriteLine("Oops, failed"); + } } } \ No newline at end of file diff --git a/VSConfigFinder/VSConfigFinder.csproj b/VSConfigFinder/VSConfigFinder.csproj index c8b892f..b4e6524 100644 --- a/VSConfigFinder/VSConfigFinder.csproj +++ b/VSConfigFinder/VSConfigFinder.csproj @@ -15,4 +15,8 @@ + + + + From 79bbadaa0ef00c9dc55aad0232b81dc7a95a4689 Mon Sep 17 00:00:00 2001 From: Skylar Date: Fri, 10 Feb 2023 10:36:29 -0800 Subject: [PATCH 3/3] Address comments --- VSConfigFinder/CommandLineOptions.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VSConfigFinder/CommandLineOptions.cs b/VSConfigFinder/CommandLineOptions.cs index ce7f636..3f759bd 100644 --- a/VSConfigFinder/CommandLineOptions.cs +++ b/VSConfigFinder/CommandLineOptions.cs @@ -11,7 +11,7 @@ public class CommandLineOptions : ICommandLineOptions /// [Option("createfile", Required = false, HelpText = "Set the folder path to output the consolidated .vsconfig.\n" + - "If the argument (--createfile) is not passed at all, the program will output the cli arguments that can be fed into the Visual Studio Installer setup arguments. (e.g. --add --add Microsoft.VisualStudio.Component.Roslyn.Compiler --add Microsoft.Net.Component.4.8.SDK\n" + + "If the argument (--createfile) is not passed at all, the program will output the cli arguments that can be fed into the Visual Studio Installer setup arguments. (e.g. --add Microsoft.VisualStudio.Component.Roslyn.Compiler Microsoft.Net.Component.4.8.SDK)\n" + "If the argument is passed without a following folder path, the program will create and output the final .vsconfig into the current directory.\n" + "If the argument is passed with a following folder path, the program will create and output the final .vsconfig into the specified folder path that is followed by --createFile.")] public string? CreateFile { get; set; }