From 375f263f41badb99200ab5991af299b062d17365 Mon Sep 17 00:00:00 2001 From: Vincent Biret Date: Fri, 20 May 2022 10:19:23 -0400 Subject: [PATCH 1/4] - normalizes inlining parameters to kebab case --- src/Microsoft.OpenApi.Hidi/Program.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Microsoft.OpenApi.Hidi/Program.cs b/src/Microsoft.OpenApi.Hidi/Program.cs index 80a4c2e14..e9d44c41d 100644 --- a/src/Microsoft.OpenApi.Hidi/Program.cs +++ b/src/Microsoft.OpenApi.Hidi/Program.cs @@ -54,10 +54,10 @@ static async Task Main(string[] args) var filterByCollectionOption = new Option("--filter-by-collection", "Filters OpenApiDocument by Postman collection provided. Provide path to collection file."); filterByCollectionOption.AddAlias("-c"); - var inlineLocalOption = new Option("--inlineLocal", "Inline local $ref instances"); + var inlineLocalOption = new Option("--inline-local", "Inline local $ref instances"); inlineLocalOption.AddAlias("-il"); - var inlineExternalOption = new Option("--inlineExternal", "Inline external $ref instances"); + var inlineExternalOption = new Option("--inline-external", "Inline external $ref instances"); inlineExternalOption.AddAlias("-ie"); var validateCommand = new Command("validate") From d98b895eeedc8baec3e313991ee599fd73e351fb Mon Sep 17 00:00:00 2001 From: Vincent Biret Date: Fri, 20 May 2022 10:22:14 -0400 Subject: [PATCH 2/4] - aligns on two dashes for more than one character shorthands --- src/Microsoft.OpenApi.Hidi/Program.cs | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/Microsoft.OpenApi.Hidi/Program.cs b/src/Microsoft.OpenApi.Hidi/Program.cs index e9d44c41d..97fa776cc 100644 --- a/src/Microsoft.OpenApi.Hidi/Program.cs +++ b/src/Microsoft.OpenApi.Hidi/Program.cs @@ -22,16 +22,16 @@ static async Task Main(string[] args) descriptionOption.AddAlias("-d"); var csdlOption = new Option("--csdl", "Input CSDL file path or URL"); - csdlOption.AddAlias("-cs"); + csdlOption.AddAlias("--cs"); var csdlFilterOption = new Option("--csdl-filter", "Comma delimited list of EntitySets or Singletons to filter CSDL on. e.g. tasks,accounts"); - csdlFilterOption.AddAlias("-csf"); + csdlFilterOption.AddAlias("--csf"); var outputOption = new Option("--output", () => new FileInfo("./output"), "The output directory path for the generated file.") { Arity = ArgumentArity.ZeroOrOne }; outputOption.AddAlias("-o"); var cleanOutputOption = new Option("--clean-output", "Overwrite an existing file"); - cleanOutputOption.AddAlias("-co"); + cleanOutputOption.AddAlias("--co"); var versionOption = new Option("--version", "OpenAPI specification version"); versionOption.AddAlias("-v"); @@ -40,25 +40,25 @@ static async Task Main(string[] args) formatOption.AddAlias("-f"); var terseOutputOption = new Option("--terse-output", "Produce terse json output"); - terseOutputOption.AddAlias("-to"); + terseOutputOption.AddAlias("--to"); var logLevelOption = new Option("--loglevel", () => LogLevel.Information, "The log level to use when logging messages to the main output."); - logLevelOption.AddAlias("-ll"); + logLevelOption.AddAlias("--ll"); var filterByOperationIdsOption = new Option("--filter-by-operationids", "Filters OpenApiDocument by comma delimited list of OperationId(s) provided"); - filterByOperationIdsOption.AddAlias("-op"); + filterByOperationIdsOption.AddAlias("--op"); var filterByTagsOption = new Option("--filter-by-tags", "Filters OpenApiDocument by comma delimited list of Tag(s) provided. Also accepts a single regex."); - filterByTagsOption.AddAlias("-t"); + filterByTagsOption.AddAlias("--t"); var filterByCollectionOption = new Option("--filter-by-collection", "Filters OpenApiDocument by Postman collection provided. Provide path to collection file."); filterByCollectionOption.AddAlias("-c"); var inlineLocalOption = new Option("--inline-local", "Inline local $ref instances"); - inlineLocalOption.AddAlias("-il"); + inlineLocalOption.AddAlias("--il"); var inlineExternalOption = new Option("--inline-external", "Inline external $ref instances"); - inlineExternalOption.AddAlias("-ie"); + inlineExternalOption.AddAlias("--ie"); var validateCommand = new Command("validate") { From 6294631bc7b4241cd105deb2c6b4bd01882ad912 Mon Sep 17 00:00:00 2001 From: Vincent Biret Date: Fri, 20 May 2022 10:23:33 -0400 Subject: [PATCH 3/4] - aligns log level on kebab casing convention --- src/Microsoft.OpenApi.Hidi/Program.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Microsoft.OpenApi.Hidi/Program.cs b/src/Microsoft.OpenApi.Hidi/Program.cs index 97fa776cc..c8ba8fdcd 100644 --- a/src/Microsoft.OpenApi.Hidi/Program.cs +++ b/src/Microsoft.OpenApi.Hidi/Program.cs @@ -42,7 +42,7 @@ static async Task Main(string[] args) var terseOutputOption = new Option("--terse-output", "Produce terse json output"); terseOutputOption.AddAlias("--to"); - var logLevelOption = new Option("--loglevel", () => LogLevel.Information, "The log level to use when logging messages to the main output."); + var logLevelOption = new Option("--log-level", () => LogLevel.Information, "The log level to use when logging messages to the main output."); logLevelOption.AddAlias("--ll"); var filterByOperationIdsOption = new Option("--filter-by-operationids", "Filters OpenApiDocument by comma delimited list of OperationId(s) provided"); From e54e0c35ab967122891da0303466dc3c7903c454 Mon Sep 17 00:00:00 2001 From: Vincent Biret Date: Fri, 27 May 2022 10:03:40 -0400 Subject: [PATCH 4/4] - fixes an issue where log entries would be missing Signed-off-by: Vincent Biret --- src/Microsoft.OpenApi.Hidi/OpenApiService.cs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/Microsoft.OpenApi.Hidi/OpenApiService.cs b/src/Microsoft.OpenApi.Hidi/OpenApiService.cs index 0adfca1e7..8e1838d95 100644 --- a/src/Microsoft.OpenApi.Hidi/OpenApiService.cs +++ b/src/Microsoft.OpenApi.Hidi/OpenApiService.cs @@ -54,7 +54,8 @@ public static async Task TransformOpenApiDocument( CancellationToken cancellationToken ) { - var logger = ConfigureLoggerInstance(loglevel); + using var loggerFactory = ConfigureLoggerInstance(loglevel); + var logger = loggerFactory.CreateLogger(); try { @@ -258,7 +259,8 @@ public static async Task ValidateOpenApiDocument( LogLevel loglevel, CancellationToken cancellationToken) { - var logger = ConfigureLoggerInstance(loglevel); + using var loggerFactory = ConfigureLoggerInstance(loglevel); + var logger = loggerFactory.CreateLogger(); try { @@ -573,14 +575,14 @@ private static OpenApiFormat GetOpenApiFormat(string input, ILogger logger) return !input.StartsWith("http") && Path.GetExtension(input) == ".json" ? OpenApiFormat.Json : OpenApiFormat.Yaml; } - private static ILogger ConfigureLoggerInstance(LogLevel loglevel) + private static ILoggerFactory ConfigureLoggerInstance(LogLevel loglevel) { // Configure logger options #if DEBUG loglevel = loglevel > LogLevel.Debug ? LogLevel.Debug : loglevel; #endif - var logger = LoggerFactory.Create((builder) => { + return LoggerFactory.Create((builder) => { builder .AddSimpleConsole(c => { c.IncludeScopes = true; @@ -589,9 +591,7 @@ private static ILogger ConfigureLoggerInstance(LogLevel loglevel) .AddDebug() #endif .SetMinimumLevel(loglevel); - }).CreateLogger(); - - return logger; + }); } } }