Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
111 commits
Select commit Hold shift + click to select a range
e6535f7
added validation & renabled OpenApiPaths validators
Apr 28, 2020
7fcef5b
Merge branch 'vnext' into feature/add-path-signature-unique-validation
darrelmiller Jul 3, 2020
6bf85c5
Update src/Microsoft.OpenApi/Properties/SRResource.resx
darrelmiller Jul 29, 2020
6c0b9fa
Merge branch 'vnext' into feature/add-path-signature-unique-validation
darrelmiller Jul 29, 2020
3ce6830
Merge branch 'vnext' into feature/add-path-signature-unique-validation
Feb 1, 2021
57706d1
cleanup exception handling
SimonCropp Oct 3, 2023
6f63c62
Update src/Microsoft.OpenApi/Utils.cs
SimonCropp Oct 3, 2023
7bc9089
Merge remote-tracking branch 'upstream/vnext' into cleanup-exception-…
SimonCropp Oct 3, 2023
a2d7c35
Merge remote-tracking branch 'upstream/vnext' into cleanup-exception-…
SimonCropp Oct 5, 2023
5c05d56
Update CallerArgumentExpressionAttribute.cs
SimonCropp Oct 5, 2023
2a7c755
use wildcard for test resources
SimonCropp Oct 5, 2023
697cc05
simplify UtilityFiles with wildcards
SimonCropp Oct 5, 2023
0353793
Update Microsoft.OpenApi.Hidi.Tests.csproj
SimonCropp Oct 5, 2023
9068e56
.
SimonCropp Oct 5, 2023
e444267
remove some redundant qualifiers
SimonCropp Oct 5, 2023
51f8923
use some target typed new
SimonCropp Oct 5, 2023
3fbc257
Merge pull request #1399 from SimonCropp/use-some-target-typed-new
baywet Oct 5, 2023
d76388f
Merge remote-tracking branch 'upstream/vnext' into remove-some-redund…
SimonCropp Oct 5, 2023
cca0dd9
.
SimonCropp Oct 5, 2023
7af0f5f
Merge pull request #1396 from SimonCropp/use-wildcard-for-test-resources
baywet Oct 5, 2023
bb0f507
Merge remote-tracking branch 'upstream/vnext' into cleanup-exception-…
SimonCropp Oct 5, 2023
22c7a3d
Merge pull request #1398 from SimonCropp/remove-some-redundant-qualif…
baywet Oct 5, 2023
d2c7aa7
fix null ref in CreateSimpleList
SimonCropp Oct 5, 2023
a951511
fix null ref in CreateList
SimonCropp Oct 5, 2023
eb97519
Merge pull request #1388 from SimonCropp/cleanup-exception-handling
baywet Oct 5, 2023
5dd7f22
Merge pull request #1401 from SimonCropp/fix-null-ref-in-CreateSimple…
baywet Oct 5, 2023
d1b5fca
Merge pull request #1402 from SimonCropp/fix-null-ref-in-CreateList
baywet Oct 5, 2023
a2784a2
Bump Verify.Xunit from 21.3.0 to 22.1.0
dependabot[bot] Oct 5, 2023
94c811e
Merge pull request #1403 from microsoft/dependabot/nuget/Verify.Xunit…
baywet Oct 5, 2023
c578c4d
csharp_style_inlined_variable_declaration as error
SimonCropp Oct 6, 2023
ec241cc
fix some dodgy indents
SimonCropp Oct 6, 2023
122d841
fix Fileds typo
SimonCropp Oct 6, 2023
c59fd1b
fix comment typos
SimonCropp Oct 6, 2023
539d149
.
SimonCropp Oct 6, 2023
bc0cebb
remove duplicate dictionary lookups in ValidationRuleSet.Add
SimonCropp Oct 6, 2023
88bb6b9
Update ValidationRuleSet.cs
SimonCropp Oct 6, 2023
5d3073a
dont abstract type for private fields
SimonCropp Oct 6, 2023
30bcea6
remove redundant where
SimonCropp Oct 6, 2023
efc7394
use some range indexors
SimonCropp Oct 6, 2023
d3833c4
Merge pull request #1411 from SimonCropp/use-some-range-indexors
baywet Oct 6, 2023
4dfe0e7
Merge pull request #1405 from SimonCropp/fix-Fileds-typo
baywet Oct 6, 2023
ad401de
Merge pull request #1410 from SimonCropp/remove-redundant-where
baywet Oct 6, 2023
62999e8
Merge pull request #1409 from SimonCropp/dont-abstract-type-for-priva…
baywet Oct 6, 2023
a02a39e
Merge pull request #1407 from SimonCropp/fix-comment-typos
baywet Oct 6, 2023
ab98c2c
Merge pull request #1406 from SimonCropp/fix-some-dodgy-indents
baywet Oct 6, 2023
a184a8f
Merge pull request #1404 from SimonCropp/csharp_style_inlined_variabl…
baywet Oct 6, 2023
543da26
Merge pull request #1408 from SimonCropp/remove-duplicate-dictionary-…
baywet Oct 6, 2023
8aaa6b6
Bump Verify.Xunit from 22.1.0 to 22.1.1
dependabot[bot] Oct 6, 2023
2690da5
Merge pull request #1413 from microsoft/dependabot/nuget/Verify.Xunit…
baywet Oct 7, 2023
21325aa
Update test/Microsoft.OpenApi.Hidi.Tests/Microsoft.OpenApi.Hidi.Tests…
SimonCropp Oct 8, 2023
d5257a5
remove some duplicate dictionary lookups
SimonCropp Oct 8, 2023
bfcb6ae
discard un-used parameters
SimonCropp Oct 8, 2023
1292e9e
use some pattern matching
SimonCropp Oct 8, 2023
e397649
use some var
SimonCropp Oct 8, 2023
6ae128c
use some expression lambdas
SimonCropp Oct 8, 2023
9350562
remove redundant type specs
SimonCropp Oct 8, 2023
1228e75
use some expression gets
SimonCropp Oct 8, 2023
06bccb9
only null check on public apis
SimonCropp Oct 8, 2023
9937565
remove redundant CheckArguments
SimonCropp Oct 8, 2023
fe74c3d
Use lookup collections
larsbj1988 Oct 9, 2023
2cf6873
Bump Verify.Xunit from 22.1.1 to 22.1.2
dependabot[bot] Oct 9, 2023
b704695
Merge pull request #1424 from microsoft/dependabot/nuget/Verify.Xunit…
baywet Oct 10, 2023
8c17b0c
Merge pull request #1414 from SimonCropp/remove-some-duplicate-dictio…
baywet Oct 10, 2023
e6bec55
Merge pull request #1417 from SimonCropp/use-some-var
baywet Oct 10, 2023
7415500
Merge pull request #1415 from SimonCropp/discard-un-used-parameters
baywet Oct 10, 2023
7ca9730
Merge pull request #1421 from SimonCropp/only-null-check-on-public-apis
baywet Oct 10, 2023
de79734
Merge pull request #1419 from SimonCropp/remove-redundant-type-specs
baywet Oct 10, 2023
15d06f7
Merge pull request #1420 from SimonCropp/use-some-expression-gets
baywet Oct 10, 2023
40621e0
Bump Verify.Xunit from 22.1.2 to 22.1.3
dependabot[bot] Oct 10, 2023
976c9f5
Merge pull request #1425 from microsoft/dependabot/nuget/Verify.Xunit…
andrueastman Oct 11, 2023
1c4721a
Added secondary dictionary with string key for yaml control characters
larsbj1988 Oct 11, 2023
5ac9559
Merge remote-tracking branch 'upstream/vnext' into use-some-pattern-m…
SimonCropp Oct 11, 2023
3408bfc
Update OpenApiRemoteReferenceCollector.cs
SimonCropp Oct 11, 2023
0d8f18d
Merge remote-tracking branch 'upstream/vnext' into use-some-expressio…
SimonCropp Oct 11, 2023
c5bc8d9
.
SimonCropp Oct 11, 2023
1d1116b
Merge pull request #1418 from SimonCropp/use-some-expression-lambdas
baywet Oct 11, 2023
b98cbfe
Merge pull request #1423 from larsbj1988/feature/hashsets
baywet Oct 11, 2023
8599f87
Bump xunit from 2.5.1 to 2.5.2
dependabot[bot] Oct 13, 2023
9c00805
Merge pull request #1429 from microsoft/dependabot/nuget/xunit-2.5.2
baywet Oct 14, 2023
08273f6
Bump xunit.runner.visualstudio from 2.5.1 to 2.5.3
dependabot[bot] Oct 14, 2023
4b761df
Merge pull request #1428 from microsoft/dependabot/nuget/xunit.runner…
baywet Oct 14, 2023
b744048
Bump Verify.Xunit from 22.1.3 to 22.1.4
dependabot[bot] Oct 16, 2023
90714de
Merge pull request #1431 from microsoft/dependabot/nuget/Verify.Xunit…
baywet Oct 16, 2023
5ef48ad
Bump xunit from 2.5.2 to 2.5.3
dependabot[bot] Oct 17, 2023
4130c00
Merge pull request #1435 from microsoft/dependabot/nuget/xunit-2.5.3
baywet Oct 17, 2023
c2ec5e1
Write out link extensions
MaggieKimani1 Oct 24, 2023
41dce19
Add test to validate
MaggieKimani1 Oct 24, 2023
7f71a4f
Address code smells
MaggieKimani1 Oct 24, 2023
e2ff502
Merge pull request #1439 from microsoft/mk/fix-link-extension-seriali…
MaggieKimani1 Oct 24, 2023
d183ad5
Add logic to walk OpenApiSchema.Not property
MaggieKimani1 Oct 24, 2023
7629765
Add test to verify
MaggieKimani1 Oct 24, 2023
67ce8f4
Make static fields readonly
MaggieKimani1 Oct 24, 2023
dcc1e83
Merge pull request #1440 from microsoft/mk/visit-openapischema-not
MaggieKimani1 Oct 24, 2023
428b9e4
Merge branch 'vnext' into remove-redundant-CheckArguments
baywet Oct 24, 2023
f5309ce
Merge pull request #1422 from SimonCropp/remove-redundant-CheckArguments
baywet Oct 24, 2023
a4ffde3
Merge pull request #1416 from SimonCropp/use-some-pattern-matching
baywet Oct 24, 2023
a0bf1fd
- fixes filter for files copy
baywet Oct 24, 2023
e74cae9
Merge branch 'vnext' into feature/add-path-signature-unique-validation
baywet Oct 24, 2023
8c8c22f
Merge pull request #1397 from SimonCropp/simplify-UtilityFiles-with-w…
baywet Oct 24, 2023
9429da4
- cleans up duplicated method
baywet Oct 24, 2023
6bda890
- makes regex static for performance
baywet Oct 24, 2023
da035fa
- fixes string comparison
baywet Oct 24, 2023
5140baf
- fixes unit tests
baywet Oct 24, 2023
7568e30
Merge pull request #474 from fabich/feature/add-path-signature-unique…
baywet Oct 24, 2023
daf7186
Bump Microsoft.OpenApi.OData from 1.5.0-preview5 to 1.5.0-preview6
dependabot[bot] Oct 24, 2023
0e3b7ed
Merge pull request #1441 from microsoft/dependabot/nuget/Microsoft.Op…
baywet Oct 24, 2023
71c4eea
Bump Microsoft.OpenApi.OData from 1.5.0-preview6 to 1.5.0-preview7
dependabot[bot] Oct 26, 2023
0fd9639
Merge pull request #1442 from microsoft/dependabot/nuget/Microsoft.Op…
baywet Oct 26, 2023
639aa7e
- fixes a bug where the conversion would ommit the schema type
baywet Oct 27, 2023
98c3168
Bump up lib. versions (#1443)
irvinesunday Oct 27, 2023
51890ee
Merge pull request #1444 from microsoft/bugfix/object-type-schema
baywet Oct 27, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ csharp_prefer_braces = true:silent
csharp_style_deconstructed_variable_declaration = true:suggestion
csharp_prefer_simple_default_expression = true:suggestion
csharp_style_pattern_local_over_anonymous_function = true:suggestion
csharp_style_inlined_variable_declaration = true:suggestion
csharp_style_inlined_variable_declaration = true:error
###############################
# C# Formatting Rules #
###############################
Expand Down
2 changes: 1 addition & 1 deletion src/Microsoft.OpenApi.Hidi/Extensions/StringExtensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public static IList<string> SplitByChar(this string target, char separator)
{
return new List<string>();
}
return target.Split(new char[] { separator }, StringSplitOptions.RemoveEmptyEntries).ToList();
return target.Split(new[] { separator }, StringSplitOptions.RemoveEmptyEntries).ToList();
}
}
}
8 changes: 4 additions & 4 deletions src/Microsoft.OpenApi.Hidi/Formatters/PowerShellFormatter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ private static string SingularizeAndDeduplicateOperationId(IList<string> operati
var lastSegmentIndex = segmentsCount - 1;
var singularizedSegments = new List<string>();

for (int x = 0; x < segmentsCount; x++)
for (var x = 0; x < segmentsCount; x++)
{
var segment = operationIdSegments[x].Singularize(inputIsKnownToBePlural: false);

Expand Down Expand Up @@ -163,10 +163,10 @@ private static IList<OpenApiParameter> ResolveFunctionParameters(IList<OpenApiPa
// Replace content with a schema object of type array
// for structured or collection-valued function parameters
parameter.Content = null;
parameter.Schema = new OpenApiSchema
parameter.Schema = new()
{
Type = "array",
Items = new OpenApiSchema
Items = new()
{
Type = "string"
}
Expand All @@ -179,7 +179,7 @@ private void AddAdditionalPropertiesToSchema(OpenApiSchema schema)
{
if (schema != null && !_schemaLoop.Contains(schema) && "object".Equals(schema.Type, StringComparison.OrdinalIgnoreCase))
{
schema.AdditionalProperties = new OpenApiSchema { Type = "object" };
schema.AdditionalProperties = new() { Type = "object" };

/* Because 'additionalProperties' are now being walked,
* we need a way to keep track of visited schemas to avoid
Expand Down
4 changes: 2 additions & 2 deletions src/Microsoft.OpenApi.Hidi/Handlers/PluginCommandHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ public int Invoke(InvocationContext context)
}
public async Task<int> InvokeAsync(InvocationContext context)
{
HidiOptions hidiOptions = new HidiOptions(context.ParseResult, CommandOptions);
CancellationToken cancellationToken = (CancellationToken)context.BindingContext.GetRequiredService(typeof(CancellationToken));
var hidiOptions = new HidiOptions(context.ParseResult, CommandOptions);
var cancellationToken = (CancellationToken)context.BindingContext.GetRequiredService(typeof(CancellationToken));

using var loggerFactory = Logger.ConfigureLogger(hidiOptions.LogLevel);
var logger = loggerFactory.CreateLogger<PluginCommandHandler>();
Expand Down
4 changes: 2 additions & 2 deletions src/Microsoft.OpenApi.Hidi/Handlers/ShowCommandHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ public int Invoke(InvocationContext context)
}
public async Task<int> InvokeAsync(InvocationContext context)
{
HidiOptions hidiOptions = new HidiOptions(context.ParseResult, CommandOptions);
CancellationToken cancellationToken = (CancellationToken)context.BindingContext.GetRequiredService(typeof(CancellationToken));
var hidiOptions = new HidiOptions(context.ParseResult, CommandOptions);
var cancellationToken = (CancellationToken)context.BindingContext.GetRequiredService(typeof(CancellationToken));

using var loggerFactory = Logger.ConfigureLogger(hidiOptions.LogLevel);
var logger = loggerFactory.CreateLogger<ShowCommandHandler>();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ public int Invoke(InvocationContext context)
}
public async Task<int> InvokeAsync(InvocationContext context)
{
HidiOptions hidiOptions = new HidiOptions(context.ParseResult, CommandOptions);
CancellationToken cancellationToken = (CancellationToken)context.BindingContext.GetRequiredService(typeof(CancellationToken));
var hidiOptions = new HidiOptions(context.ParseResult, CommandOptions);
var cancellationToken = (CancellationToken)context.BindingContext.GetRequiredService(typeof(CancellationToken));

using var loggerFactory = Logger.ConfigureLogger(hidiOptions.LogLevel);
var logger = loggerFactory.CreateLogger<TransformCommandHandler>();
Expand Down
4 changes: 2 additions & 2 deletions src/Microsoft.OpenApi.Hidi/Handlers/ValidateCommandHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ public int Invoke(InvocationContext context)
}
public async Task<int> InvokeAsync(InvocationContext context)
{
HidiOptions hidiOptions = new HidiOptions(context.ParseResult, CommandOptions);
CancellationToken cancellationToken = (CancellationToken)context.BindingContext.GetRequiredService(typeof(CancellationToken));
var hidiOptions = new HidiOptions(context.ParseResult, CommandOptions);
var cancellationToken = (CancellationToken)context.BindingContext.GetRequiredService(typeof(CancellationToken));
using var loggerFactory = Logger.ConfigureLogger(hidiOptions.LogLevel);
var logger = loggerFactory.CreateLogger<ValidateCommandHandler>();
try
Expand Down
5 changes: 1 addition & 4 deletions src/Microsoft.OpenApi.Hidi/Logger.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,7 @@ public static ILoggerFactory ConfigureLogger(LogLevel logLevel)
return LoggerFactory.Create((builder) =>
{
builder
.AddSimpleConsole(c =>
{
c.IncludeScopes = true;
})
.AddSimpleConsole(c => c.IncludeScopes = true)
#if DEBUG
.AddDebug()
#endif
Expand Down
4 changes: 2 additions & 2 deletions src/Microsoft.OpenApi.Hidi/Microsoft.OpenApi.Hidi.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
<Nullable>enable</Nullable>
<ToolCommandName>hidi</ToolCommandName>
<PackageOutputPath>./../../artifacts</PackageOutputPath>
<Version>1.3.1</Version>
<Version>1.3.2</Version>
<Description>OpenAPI.NET CLI tool for slicing OpenAPI documents</Description>
<SignAssembly>true</SignAssembly>
<!-- https://github.com/dotnet/sourcelink/blob/main/docs/README.md#embeduntrackedsources -->
Expand All @@ -35,7 +35,7 @@
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="7.0.0" />
<PackageReference Include="System.CommandLine" Version="2.0.0-beta4.22272.1" />
<PackageReference Include="Microsoft.OData.Edm" Version="7.18.0" />
<PackageReference Include="Microsoft.OpenApi.OData" Version="1.5.0-preview5" />
<PackageReference Include="Microsoft.OpenApi.OData" Version="1.5.0-preview7" />
<PackageReference Include="Microsoft.OpenApi.ApiManifest" Version="0.5.0-preview" />
<PackageReference Include="System.CommandLine.Hosting" Version="0.4.0-alpha.22272.1" />
</ItemGroup>
Expand Down
34 changes: 17 additions & 17 deletions src/Microsoft.OpenApi.Hidi/OpenApiService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ public static async Task TransformOpenApiDocument(HidiOptions options, ILogger l
if (options.Output == null)
{
var inputExtension = GetInputPathExtension(options.OpenApi, options.Csdl);
options.Output = new FileInfo($"./output{inputExtension}");
options.Output = new($"./output{inputExtension}");
};

if (options.CleanOutput && options.Output.Exists)
Expand All @@ -66,8 +66,8 @@ public static async Task TransformOpenApiDocument(HidiOptions options, ILogger l
}

// Default to yaml and OpenApiVersion 3 during csdl to OpenApi conversion
OpenApiFormat openApiFormat = options.OpenApiFormat ?? (!string.IsNullOrEmpty(options.OpenApi) ? GetOpenApiFormat(options.OpenApi, logger) : OpenApiFormat.Yaml);
OpenApiSpecVersion openApiVersion = options.Version != null ? TryParseOpenApiSpecVersion(options.Version) : OpenApiSpecVersion.OpenApi3_0;
var openApiFormat = options.OpenApiFormat ?? (!string.IsNullOrEmpty(options.OpenApi) ? GetOpenApiFormat(options.OpenApi, logger) : OpenApiFormat.Yaml);
var openApiVersion = options.Version != null ? TryParseOpenApiSpecVersion(options.Version) : OpenApiSpecVersion.OpenApi3_0;

// If ApiManifest is provided, set the referenced OpenAPI document
var apiDependency = await FindApiDependency(options.FilterOptions.FilterByApiManifest, logger, cancellationToken).ConfigureAwait(false);
Expand All @@ -85,7 +85,7 @@ public static async Task TransformOpenApiDocument(HidiOptions options, ILogger l
}

// Load OpenAPI document
OpenApiDocument document = await GetOpenApi(options, logger, options.MetadataVersion, cancellationToken).ConfigureAwait(false);
var document = await GetOpenApi(options, logger, options.MetadataVersion, cancellationToken).ConfigureAwait(false);

if (options.FilterOptions != null)
{
Expand Down Expand Up @@ -194,7 +194,7 @@ private static void WriteOpenApi(HidiOptions options, OpenApiFormat openApiForma

IOpenApiWriter writer = openApiFormat switch
{
OpenApiFormat.Json => options.TerseOutput ? new OpenApiJsonWriter(textWriter, settings, options.TerseOutput) : new OpenApiJsonWriter(textWriter, settings, false),
OpenApiFormat.Json => options.TerseOutput ? new(textWriter, settings, options.TerseOutput) : new OpenApiJsonWriter(textWriter, settings, false),
OpenApiFormat.Yaml => new OpenApiYamlWriter(textWriter, settings),
_ => throw new ArgumentException("Unknown format"),
};
Expand Down Expand Up @@ -227,7 +227,7 @@ private static async Task<OpenApiDocument> GetOpenApi(HidiOptions options, ILogg
Stream? filteredStream = null;
if (!string.IsNullOrEmpty(options.CsdlFilter))
{
XslCompiledTransform transform = GetFilterTransform();
var transform = GetFilterTransform();
filteredStream = ApplyFilterToCsdl(stream, options.CsdlFilter, transform);
filteredStream.Position = 0;
await stream.DisposeAsync().ConfigureAwait(false);
Expand Down Expand Up @@ -299,7 +299,7 @@ private static Dictionary<string, List<string>> GetRequestUrlsFromManifest(ApiDe
private static XslCompiledTransform GetFilterTransform()
{
XslCompiledTransform transform = new();
Assembly assembly = typeof(OpenApiService).GetTypeInfo().Assembly;
var assembly = typeof(OpenApiService).GetTypeInfo().Assembly;
using var xslt = assembly.GetManifestResourceStream("Microsoft.OpenApi.Hidi.CsdlFilter.xslt") ?? throw new InvalidOperationException("Could not find the Microsoft.OpenApi.Hidi.CsdlFilter.xslt file in the assembly. Check build configuration.");
using var streamReader = new StreamReader(xslt);
using var textReader = new XmlTextReader(streamReader);
Expand All @@ -310,7 +310,7 @@ private static XslCompiledTransform GetFilterTransform()
private static Stream ApplyFilterToCsdl(Stream csdlStream, string entitySetOrSingleton, XslCompiledTransform transform)
{
using StreamReader inputReader = new(csdlStream, leaveOpen: true);
using XmlReader inputXmlReader = XmlReader.Create(inputReader);
using var inputXmlReader = XmlReader.Create(inputReader);
MemoryStream filteredStream = new();
using StreamWriter writer = new(filteredStream, leaveOpen: true);
XsltArgumentList args = new();
Expand Down Expand Up @@ -363,16 +363,16 @@ public static async Task ValidateOpenApiDocument(
private static async Task<ReadResult> ParseOpenApi(string openApiFile, bool inlineExternal, ILogger logger, Stream stream, CancellationToken cancellationToken = default)
{
ReadResult result;
Stopwatch stopwatch = Stopwatch.StartNew();
var stopwatch = Stopwatch.StartNew();
using (logger.BeginScope("Parsing OpenAPI: {OpenApiFile}", openApiFile))
{
stopwatch.Start();

result = await new OpenApiStreamReader(new OpenApiReaderSettings
{
result = await new OpenApiStreamReader(new()
{
LoadExternalRefs = inlineExternal,
BaseUrl = openApiFile.StartsWith("http", StringComparison.OrdinalIgnoreCase) ?
new Uri(openApiFile) :
new(openApiFile) :
new Uri("file://" + new FileInfo(openApiFile).DirectoryName + Path.DirectorySeparatorChar)
}
).ReadAsync(stream, cancellationToken).ConfigureAwait(false);
Expand All @@ -398,7 +398,7 @@ public static async Task<OpenApiDocument> ConvertCsdlToOpenApi(Stream csdl, stri
var edmModel = CsdlReader.Parse(XElement.Parse(csdlText).CreateReader());
settings ??= SettingsUtilities.GetConfiguration();

OpenApiDocument document = edmModel.ConvertToOpenApi(SettingsUtilities.GetOpenApiConvertSettings(settings, metadataVersion));
var document = edmModel.ConvertToOpenApi(SettingsUtilities.GetOpenApiConvertSettings(settings, metadataVersion));
document = FixReferences(document);

return document;
Expand Down Expand Up @@ -459,7 +459,7 @@ private static Dictionary<string, List<string>> EnumerateJsonDocument(JsonElemen
}
else
{
paths.Add(path, new List<string> {method});
paths.Add(path, new() {method});
}
}
else
Expand Down Expand Up @@ -725,7 +725,7 @@ internal static async Task PluginManifest(HidiOptions options, ILogger logger, C
}

// Load OpenAPI document
OpenApiDocument document = await GetOpenApi(options, logger, options.MetadataVersion, cancellationToken).ConfigureAwait(false);
var document = await GetOpenApi(options, logger, options.MetadataVersion, cancellationToken).ConfigureAwait(false);

cancellationToken.ThrowIfCancellationRequested();

Expand All @@ -741,7 +741,7 @@ internal static async Task PluginManifest(HidiOptions options, ILogger logger, C
outputFolder.Create();
}
// Write OpenAPI to Output folder
options.Output = new FileInfo(Path.Combine(options.OutputFolder, "openapi.json"));
options.Output = new(Path.Combine(options.OutputFolder, "openapi.json"));
options.TerseOutput = true;
WriteOpenApi(options, OpenApiFormat.Json, OpenApiSpecVersion.OpenApi3_0, document, logger);

Expand All @@ -762,7 +762,7 @@ internal static async Task PluginManifest(HidiOptions options, ILogger logger, C
// Write OpenAIPluginManifest to Output folder
var manifestFile = new FileInfo(Path.Combine(options.OutputFolder, "ai-plugin.json"));
using var file = new FileStream(manifestFile.FullName, FileMode.Create);
using var jsonWriter = new Utf8JsonWriter(file, new JsonWriterOptions { Indented = true });
using var jsonWriter = new Utf8JsonWriter(file, new() { Indented = true });
manifest.Write(jsonWriter);
await jsonWriter.FlushAsync(cancellationToken).ConfigureAwait(false);
}
Expand Down
4 changes: 2 additions & 2 deletions src/Microsoft.OpenApi.Hidi/OpenApiSpecVersionHelper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ public static OpenApiSpecVersion TryParseOpenApiSpecVersion(string value)
}
var res = value.Split('.', StringSplitOptions.RemoveEmptyEntries).FirstOrDefault();

if (int.TryParse(res, out int result))
if (int.TryParse(res, out var result))
{
if (result >= 2 && result < 3)
if (result is >= 2 and < 3)
{
return OpenApiSpecVersion.OpenApi2_0;
}
Expand Down
2 changes: 1 addition & 1 deletion src/Microsoft.OpenApi.Hidi/Options/HidiOptions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ private void ParseHidiOptions(ParseResult parseResult, CommandOptions options)
LogLevel = parseResult.GetValueForOption(options.LogLevelOption);
InlineLocal = parseResult.GetValueForOption(options.InlineLocalOption);
InlineExternal = parseResult.GetValueForOption(options.InlineExternalOption);
FilterOptions = new FilterOptions
FilterOptions = new()
{
FilterByOperationIds = parseResult.GetValueForOption(options.FilterByOperationIdsOption),
FilterByTags = parseResult.GetValueForOption(options.FilterByTagsOption),
Expand Down
2 changes: 1 addition & 1 deletion src/Microsoft.OpenApi.Readers/Interface/IStreamLoader.cs
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ public interface IStreamLoader
/// Use Uri to locate data and convert into an input object.
/// </summary>
/// <param name="uri">Identifier of some source of an OpenAPI Description</param>
/// <returns>A data objext that can be processed by a reader to generate an <see cref="OpenApiDocument"/></returns>
/// <returns>A data object that can be processed by a reader to generate an <see cref="OpenApiDocument"/></returns>
Task<Stream> LoadAsync(Uri uri);

/// <summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<TargetFramework>netstandard2.0</TargetFramework>
<LangVersion>latest</LangVersion>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Version>1.6.9</Version>
<Version>1.6.10</Version>
<Description>OpenAPI.NET Readers for JSON and YAML documents</Description>
<SignAssembly>true</SignAssembly>
<!-- https://github.com/dotnet/sourcelink/blob/main/docs/README.md#embeduntrackedsources -->
Expand Down
4 changes: 2 additions & 2 deletions src/Microsoft.OpenApi.Readers/OpenApiDiagnostic.cs
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,12 @@ public void AppendDiagnostic(OpenApiDiagnostic diagnosticToAdd, string fileNameT
foreach (var err in diagnosticToAdd.Errors)
{
var errMsgWithFileName = fileNameIsSupplied ? $"[File: {fileNameToAdd}] {err.Message}" : err.Message;
Errors.Add(new OpenApiError(err.Pointer, errMsgWithFileName));
Errors.Add(new(err.Pointer, errMsgWithFileName));
}
foreach (var warn in diagnosticToAdd.Warnings)
{
var warnMsgWithFileName = fileNameIsSupplied ? $"[File: {fileNameToAdd}] {warn.Message}" : warn.Message;
Warnings.Add(new OpenApiError(warn.Pointer, warnMsgWithFileName));
Warnings.Add(new(warn.Pointer, warnMsgWithFileName));
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/Microsoft.OpenApi.Readers/OpenApiReaderSettings.cs
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ public class OpenApiReaderSettings
/// <summary>
/// Dictionary of parsers for converting extensions into strongly typed classes
/// </summary>
public Dictionary<string, Func<IOpenApiAny, OpenApiSpecVersion, IOpenApiExtension>> ExtensionParsers { get; set; } = new Dictionary<string, Func<IOpenApiAny, OpenApiSpecVersion, IOpenApiExtension>>();
public Dictionary<string, Func<IOpenApiAny, OpenApiSpecVersion, IOpenApiExtension>> ExtensionParsers { get; set; } = new();

/// <summary>
/// Rules to use for validating OpenAPI specification. If none are provided a default set of rules are applied.
Expand Down
2 changes: 1 addition & 1 deletion src/Microsoft.OpenApi.Readers/OpenApiStreamReader.cs
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ public async Task<ReadResult> ReadAsync(Stream input, CancellationToken cancella
{
// Buffer stream so that OpenApiTextReaderReader can process it synchronously
// YamlDocument doesn't support async reading.
bufferedStream = new MemoryStream();
bufferedStream = new();
await input.CopyToAsync(bufferedStream, 81920, cancellationToken);
bufferedStream.Position = 0;
}
Expand Down
Loading