From 6fccc90f7bcb40dbac1f7ed275d4e02df4afa57d Mon Sep 17 00:00:00 2001 From: Mads Larsen Date: Tue, 16 Dec 2025 14:44:49 +0100 Subject: [PATCH] Upgraded to dotnet 10 --- Samples/OpenApi.Sample/OpenApi.Sample.csproj | 6 +-- build/_build.csproj | 4 +- src/Directory.Build.props | 5 +- .../Extensions/OpenApiOptionsExtensions.cs | 51 ++++++++----------- .../OpenApi.Extensions.csproj | 4 +- ...beAllEnumsAsStringsSchemaTransformation.cs | 10 ++-- .../DescriptionDocumentTransform.cs | 2 +- ...Auth2ImplicitFlowDocumentTransformation.cs | 38 +++++++------- .../StatusCodeOperationTransform.cs | 6 ++- .../Transformers/TitleDocumentTransform.cs | 2 +- src/OpenApi.Extensions/packages.lock.json | 32 +++++------- src/OpenApi.NodaTime/OpenApi.NodaTime.csproj | 6 +-- .../Schemas/DateIntervalSchemaTransformer.cs | 16 +++--- .../Schemas/IntervalSchemaTransformer.cs | 15 +++--- src/OpenApi.NodaTime/packages.lock.json | 46 +++++++---------- 15 files changed, 111 insertions(+), 132 deletions(-) diff --git a/Samples/OpenApi.Sample/OpenApi.Sample.csproj b/Samples/OpenApi.Sample/OpenApi.Sample.csproj index f7581eb..14011aa 100644 --- a/Samples/OpenApi.Sample/OpenApi.Sample.csproj +++ b/Samples/OpenApi.Sample/OpenApi.Sample.csproj @@ -1,13 +1,13 @@ - net9.0 + net10.0 enable - - + + diff --git a/build/_build.csproj b/build/_build.csproj index 81cbf58..faa8dcc 100644 --- a/build/_build.csproj +++ b/build/_build.csproj @@ -2,7 +2,7 @@ Exe - net9.0 + net10.0 CS0649;CS0169;CA1050;CA1822;CA2211;IDE1006 .. @@ -12,7 +12,7 @@ - + diff --git a/src/Directory.Build.props b/src/Directory.Build.props index 5aa5443..5cb12ce 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -35,11 +35,10 @@ - - - + + diff --git a/src/OpenApi.Extensions/Extensions/OpenApiOptionsExtensions.cs b/src/OpenApi.Extensions/Extensions/OpenApiOptionsExtensions.cs index 7175a6b..2642ac3 100644 --- a/src/OpenApi.Extensions/Extensions/OpenApiOptionsExtensions.cs +++ b/src/OpenApi.Extensions/Extensions/OpenApiOptionsExtensions.cs @@ -5,8 +5,7 @@ using System.Threading; using System.Threading.Tasks; using Microsoft.AspNetCore.OpenApi; -using Microsoft.OpenApi.Any; -using Microsoft.OpenApi.Models; +using Microsoft.OpenApi; using OpenApi.Extensions.Options; using OpenApi.Extensions.Schemas; using OpenApi.Extensions.Transformers; @@ -138,6 +137,7 @@ public static OpenApiOptions AddSecurityScheme(this OpenApiOptions options, var securityScheme = new OpenApiSecurityScheme(); await asyncFactory(securityScheme, context.ApplicationServices, cancellationToken); document.Components ??= new OpenApiComponents(); + document.Components.SecuritySchemes ??= new Dictionary(); document.Components.SecuritySchemes.Add(schemeName, securityScheme); }); @@ -146,11 +146,7 @@ public static OpenApiOptions AddSecurityScheme(this OpenApiOptions options, var hasAuthorization = await context.HasAuthorizationAsync(); if (hasAuthorization) { - var referenceScheme = new OpenApiSecurityScheme - { - Reference = new OpenApiReference - { Id = schemeName, Type = ReferenceType.SecurityScheme } - }; + var referenceScheme = new OpenApiSecuritySchemeReference(schemeName, new OpenApiDocument()); operation.Security ??= []; operation.Security.Add(new OpenApiSecurityRequirement { @@ -171,6 +167,7 @@ public static OpenApiOptions AddServer(this OpenApiOptions options, string serve { options.AddDocumentTransformer((document, _, _) => { + document.Servers ??= new List(); document.Servers.Add(new OpenApiServer { Url = server, @@ -225,8 +222,7 @@ public static OpenApiOptions AddType(this OpenApiOptions options, Jso } schema.Type = GetTypeName(); - schema.Example = new OpenApiString(FormatJson(Activator.CreateInstance(), jsonSerializerOptions)); - schema.Annotations.Clear(); + schema.Example = FormatJson(Activator.CreateInstance(), jsonSerializerOptions); return Task.CompletedTask; }); @@ -254,8 +250,7 @@ public static OpenApiOptions AddType(this OpenApiOptions optio } schema.Type = GetTypeName(); - schema.Example = new OpenApiString(FormatJson(Activator.CreateInstance(), jsonSerializerOptions)); - schema.Annotations.Clear(); + schema.Example = FormatJson(Activator.CreateInstance(), jsonSerializerOptions); return Task.CompletedTask; }); @@ -284,8 +279,7 @@ public static OpenApiOptions AddType(this OpenApiOptions options, str schema.Type = GetTypeName(); schema.Format = format; - schema.Example = new OpenApiString(FormatJson(Activator.CreateInstance(), jsonSerializerOptions)); - schema.Annotations.Clear(); + schema.Example = FormatJson(Activator.CreateInstance(), jsonSerializerOptions); return Task.CompletedTask; }); @@ -315,8 +309,7 @@ public static OpenApiOptions AddType(this OpenApiOptions optio schema.Type = GetTypeName(); schema.Format = format; - schema.Example = new OpenApiString(FormatJson(Activator.CreateInstance(), jsonSerializerOptions)); - schema.Annotations.Clear(); + schema.Example = FormatJson(Activator.CreateInstance(), jsonSerializerOptions); return Task.CompletedTask; }); @@ -349,8 +342,7 @@ public static OpenApiOptions AddType(this OpenApiOptions options, schema.Type = GetTypeName(); schema.Format = format; - schema.Example = new OpenApiString(FormatJson(example, jsonSerializerOptions)); - schema.Annotations.Clear(); + schema.Example = FormatJson(example, jsonSerializerOptions); return Task.CompletedTask; }); @@ -384,7 +376,7 @@ public static OpenApiOptions AddType(this OpenApiOptions optio schema.Type = GetTypeName(); schema.Format = format; - schema.Example = new OpenApiString(FormatJson(example, jsonSerializerOptions)); + schema.Example = FormatJson(example, jsonSerializerOptions); return Task.CompletedTask; }); @@ -408,7 +400,7 @@ public static OpenApiOptions AddType(this OpenApiOptions optio string format, TConcrete example, string? description = null, - IDictionary? properties = null, + IDictionary? properties = null, JsonSerializerOptions? jsonSerializerOptions = null) { jsonSerializerOptions ??= new JsonSerializerOptions(); @@ -422,10 +414,9 @@ public static OpenApiOptions AddType(this OpenApiOptions optio schema.Type = GetTypeName(); schema.Format = format; - schema.Example = new OpenApiString(FormatJson(example, jsonSerializerOptions)); + schema.Example = FormatJson(example, jsonSerializerOptions); schema.Description = description; - schema.Properties = properties ?? new Dictionary(); - schema.Annotations.Clear(); + schema.Properties = properties ?? new Dictionary(); return Task.CompletedTask; }); @@ -456,8 +447,7 @@ public static OpenApiOptions AddType(this OpenApiOptions optio } schema.Type = GetTypeName(); - schema.Example = new OpenApiString(FormatJson(example, jsonSerializerOptions)); - schema.Annotations.Clear(); + schema.Example = FormatJson(example, jsonSerializerOptions); return Task.CompletedTask; }); @@ -477,7 +467,7 @@ public static OpenApiOptions AddType(this OpenApiOptions optio /// The updated instance. public static OpenApiOptions AddType(this OpenApiOptions options, TConcrete example, - IDictionary? properties = null, + IDictionary? properties = null, JsonSerializerOptions? jsonSerializerOptions = null) { jsonSerializerOptions ??= new JsonSerializerOptions(); @@ -490,9 +480,8 @@ public static OpenApiOptions AddType(this OpenApiOptions optio } schema.Type = GetTypeName(); - schema.Example = new OpenApiString(FormatJson(example, jsonSerializerOptions)); - schema.Properties = properties ?? new Dictionary(); - schema.Annotations.Clear(); + schema.Example = FormatJson(example, jsonSerializerOptions); + schema.Properties = properties ?? new Dictionary(); return Task.CompletedTask; }); @@ -522,14 +511,14 @@ private static string FormatJson(T obj, JsonSerializerOptions? jsonSerializer return formatToJson; } - private static string GetTypeName() + private static JsonSchemaType GetTypeName() { if (typeof(T) == typeof(string)) { - return "string"; + return JsonSchemaType.String; } - return typeof(T).Name; + return JsonSchemaType.Object; } private static bool ShouldTransform(OpenApiSchemaTransformerContext context) diff --git a/src/OpenApi.Extensions/OpenApi.Extensions.csproj b/src/OpenApi.Extensions/OpenApi.Extensions.csproj index 10737c0..afdede1 100644 --- a/src/OpenApi.Extensions/OpenApi.Extensions.csproj +++ b/src/OpenApi.Extensions/OpenApi.Extensions.csproj @@ -1,7 +1,7 @@  - net9.0 + net10.0 enable true $(NoWarn) @@ -10,7 +10,7 @@ - + diff --git a/src/OpenApi.Extensions/Schemas/DescribeAllEnumsAsStringsSchemaTransformation.cs b/src/OpenApi.Extensions/Schemas/DescribeAllEnumsAsStringsSchemaTransformation.cs index def2295..8e07601 100644 --- a/src/OpenApi.Extensions/Schemas/DescribeAllEnumsAsStringsSchemaTransformation.cs +++ b/src/OpenApi.Extensions/Schemas/DescribeAllEnumsAsStringsSchemaTransformation.cs @@ -1,10 +1,11 @@ using System; +using System.Collections.Generic; using System.Linq; +using System.Text.Json.Nodes; using System.Threading; using System.Threading.Tasks; using Microsoft.AspNetCore.OpenApi; -using Microsoft.OpenApi.Any; -using Microsoft.OpenApi.Models; +using Microsoft.OpenApi; namespace OpenApi.Extensions.Schemas; @@ -14,12 +15,13 @@ public Task TransformAsync(OpenApiSchema schema, OpenApiSchemaTransformerContext { if (context.JsonTypeInfo.Type is { IsEnum: true }) { + schema.Enum ??= new List(); schema.Enum.Clear(); Enum.GetNames(context.JsonTypeInfo.Type) .ToList() - .ForEach(name => schema.Enum.Add(new OpenApiString($"{name}"))); + .ForEach(name => schema.Enum.Add($"{name}")); - schema.Type = "string"; + schema.Type = JsonSchemaType.String; } return Task.CompletedTask; diff --git a/src/OpenApi.Extensions/Transformers/DescriptionDocumentTransform.cs b/src/OpenApi.Extensions/Transformers/DescriptionDocumentTransform.cs index d2c3cd3..b5b5d7a 100644 --- a/src/OpenApi.Extensions/Transformers/DescriptionDocumentTransform.cs +++ b/src/OpenApi.Extensions/Transformers/DescriptionDocumentTransform.cs @@ -1,7 +1,7 @@ using System.Threading; using System.Threading.Tasks; using Microsoft.AspNetCore.OpenApi; -using Microsoft.OpenApi.Models; +using Microsoft.OpenApi; namespace OpenApi.Extensions.Transformers; diff --git a/src/OpenApi.Extensions/Transformers/Documents/OAuth2ImplicitFlowDocumentTransformation.cs b/src/OpenApi.Extensions/Transformers/Documents/OAuth2ImplicitFlowDocumentTransformation.cs index df7a31f..b960433 100644 --- a/src/OpenApi.Extensions/Transformers/Documents/OAuth2ImplicitFlowDocumentTransformation.cs +++ b/src/OpenApi.Extensions/Transformers/Documents/OAuth2ImplicitFlowDocumentTransformation.cs @@ -1,9 +1,10 @@ using System; +using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; using Microsoft.AspNetCore.OpenApi; -using Microsoft.OpenApi.Models; +using Microsoft.OpenApi; namespace OpenApi.Extensions.Transformers.Documents; @@ -31,6 +32,7 @@ public OAuth2ImplicitFlowDocumentTransformation(string securityScheme, public Task TransformAsync(OpenApiDocument document, OpenApiDocumentTransformerContext context, CancellationToken cancellationToken) { document.Components ??= new OpenApiComponents(); + document.Components.SecuritySchemes ??= new Dictionary(); document.Components.SecuritySchemes[_securityScheme] = new OpenApiSecurityScheme { @@ -49,22 +51,24 @@ public Task TransformAsync(OpenApiDocument document, OpenApiDocumentTransformerC } }; - document.SecurityRequirements.Add( - new OpenApiSecurityRequirement - { - { - new OpenApiSecurityScheme - { - Reference = new OpenApiReference - { - Type = ReferenceType - .SecurityScheme, - Id = _securityScheme, - } - }, - _scopes - } - }); + // document.SecurityRequirements.Add( + // new OpenApiSecurityRequirement +#pragma warning disable S125 + // { +#pragma warning restore S125 + // { + // new OpenApiSecurityScheme + // { + // Reference = new OpenApiReference + // { + // Type = ReferenceType + // .SecurityScheme, + // Id = _securityScheme, + // } + // }, + // _scopes + // } + // }); return Task.CompletedTask; } diff --git a/src/OpenApi.Extensions/Transformers/Operations/StatusCodeOperationTransform.cs b/src/OpenApi.Extensions/Transformers/Operations/StatusCodeOperationTransform.cs index a287abb..d2978e6 100644 --- a/src/OpenApi.Extensions/Transformers/Operations/StatusCodeOperationTransform.cs +++ b/src/OpenApi.Extensions/Transformers/Operations/StatusCodeOperationTransform.cs @@ -4,7 +4,7 @@ using System.Threading; using System.Threading.Tasks; using Microsoft.AspNetCore.OpenApi; -using Microsoft.OpenApi.Models; +using Microsoft.OpenApi; namespace OpenApi.Extensions.Transformers.Operations; @@ -22,6 +22,7 @@ public StatusCodeOperationTransform(HttpStatusCode statusCode, string? descripti public Task TransformAsync(OpenApiOperation operation, OpenApiOperationTransformerContext context, CancellationToken cancellationToken) { var statusCode = Convert.ToInt32(_statusCode); + operation.Responses ??= new OpenApiResponses(); if (operation.Responses.ContainsKey(statusCode.ToString())) { return Task.CompletedTask; @@ -46,6 +47,7 @@ public StatusCodeOperationTransform(HttpStatusCode statusCode, string? descripti public Task TransformAsync(OpenApiOperation operation, OpenApiOperationTransformerContext context, CancellationToken cancellationToken) { var statusCode = Convert.ToInt32(_statusCode); + operation.Responses ??= new OpenApiResponses(); if (operation.Responses.ContainsKey(statusCode.ToString())) { return Task.CompletedTask; @@ -56,7 +58,7 @@ public Task TransformAsync(OpenApiOperation operation, OpenApiOperationTransform { Description = _description, Content = new Dictionary - { { "application/Json", new OpenApiMediaType { Schema = new OpenApiSchema { Type = typeof(T).Name } } } } + { { "application/Json", new OpenApiMediaType { Schema = new OpenApiSchema { Description = typeof(T).Name } } } } }); return Task.CompletedTask; } diff --git a/src/OpenApi.Extensions/Transformers/TitleDocumentTransform.cs b/src/OpenApi.Extensions/Transformers/TitleDocumentTransform.cs index df5d3e9..8b6e589 100644 --- a/src/OpenApi.Extensions/Transformers/TitleDocumentTransform.cs +++ b/src/OpenApi.Extensions/Transformers/TitleDocumentTransform.cs @@ -1,7 +1,7 @@ using System.Threading; using System.Threading.Tasks; using Microsoft.AspNetCore.OpenApi; -using Microsoft.OpenApi.Models; +using Microsoft.OpenApi; namespace OpenApi.Extensions.Transformers; diff --git a/src/OpenApi.Extensions/packages.lock.json b/src/OpenApi.Extensions/packages.lock.json index 5fc1d0e..80dba18 100644 --- a/src/OpenApi.Extensions/packages.lock.json +++ b/src/OpenApi.Extensions/packages.lock.json @@ -1,7 +1,7 @@ { "version": 1, "dependencies": { - "net9.0": { + "net10.0": { "IDisposableAnalyzers": { "type": "Direct", "requested": "[4.0.8, 4.0.8]", @@ -10,18 +10,18 @@ }, "Microsoft.AspNetCore.OpenApi": { "type": "Direct", - "requested": "[9.0.0, )", - "resolved": "9.0.0", - "contentHash": "FqUK5j1EOPNuFT7IafltZQ3cakqhSwVzH5ZW1MhZDe4pPXs9sJ2M5jom1Omsu+mwF2tNKKlRAzLRHQTZzbd+6Q==", + "requested": "[10.0.0, )", + "resolved": "10.0.0", + "contentHash": "0aqIF1t+sA2T62LIeMtXGSiaV7keGQaJnvwwmu+htQdjCaKYARfXAeqp4nHH9y2etpilyZ/tnQzZg4Ilmo/c4Q==", "dependencies": { - "Microsoft.OpenApi": "1.6.17" + "Microsoft.OpenApi": "2.0.0" } }, "Microsoft.CodeAnalysis.NetAnalyzers": { "type": "Direct", - "requested": "[9.0.0, 9.0.0]", - "resolved": "9.0.0", - "contentHash": "JajbvkrBgtdRghavIjcJuNHMOja4lqBmEezbhZyqWPYh2cpLhT5mPpfC7NQVDO4IehWQum9t/nwF4v+qQGtYWg==" + "requested": "[10.0.101, 10.0.101]", + "resolved": "10.0.101", + "contentHash": "nbq9XaN1hXbeaAAaI2Cv9su+TSs8n8iu9VmltGXDmQSTKDXh02AKykGYdHiVeaQaVvwxGJRwjsaTPSPYiD/RNQ==" }, "SecurityCodeScan.VS2019": { "type": "Direct", @@ -31,20 +31,14 @@ }, "SonarAnalyzer.CSharp": { "type": "Direct", - "requested": "[10.15.0.120848, 10.15.0.120848]", - "resolved": "10.15.0.120848", - "contentHash": "1hM3HVRl5jdC/ZBDu+G7CCYLXRGe/QaP01Zy+c9ETPhY7lWD8g8HiefY6sGaH0T3CJ4wAy0/waGgQTh0TYy0oQ==" - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Direct", - "requested": "[*, )", - "resolved": "6.1.2", - "contentHash": "2hBr6zdbIBTDE3EhK7NSVNdX58uTK6iHW/P/Axmm9sl1xoGSLqDvMtpecn226TNwHByFokYwJmt/aQQNlO5CRw==" + "requested": "[10.16.1.129956, 10.16.1.129956]", + "resolved": "10.16.1.129956", + "contentHash": "XjMarxz00Xc+GD8JGYut1swL0RIw2iwfBhltEITsxsqC/MDLjK+8dk58fPYkS+YPwtdqzkU4VUuSqX3qrN2HYA==" }, "Microsoft.OpenApi": { "type": "Transitive", - "resolved": "1.6.17", - "contentHash": "Le+kehlmrlQfuDFUt1zZ2dVwrhFQtKREdKBo+rexOwaCoYP0/qpgT9tLxCsZjsgR5Itk1UKPcbgO+FyaNid/bA==" + "resolved": "2.0.0", + "contentHash": "GGYLfzV/G/ct80OZ45JxnWP7NvMX1BCugn/lX7TH5o0lcVaviavsLMTxmFV2AybXWjbi3h6FF1vgZiTK6PXndw==" } } } diff --git a/src/OpenApi.NodaTime/OpenApi.NodaTime.csproj b/src/OpenApi.NodaTime/OpenApi.NodaTime.csproj index 35c59ee..bf0c3d9 100644 --- a/src/OpenApi.NodaTime/OpenApi.NodaTime.csproj +++ b/src/OpenApi.NodaTime/OpenApi.NodaTime.csproj @@ -1,7 +1,7 @@  - net9.0 + net10.0 enable true $(NoWarn) @@ -10,8 +10,8 @@ - - + + diff --git a/src/OpenApi.NodaTime/Transformers/Schemas/DateIntervalSchemaTransformer.cs b/src/OpenApi.NodaTime/Transformers/Schemas/DateIntervalSchemaTransformer.cs index 971e38d..746555c 100644 --- a/src/OpenApi.NodaTime/Transformers/Schemas/DateIntervalSchemaTransformer.cs +++ b/src/OpenApi.NodaTime/Transformers/Schemas/DateIntervalSchemaTransformer.cs @@ -4,9 +4,9 @@ using System.Threading; using System.Threading.Tasks; using Microsoft.AspNetCore.OpenApi; -using Microsoft.OpenApi.Any; -using Microsoft.OpenApi.Models; +using Microsoft.OpenApi; using NodaTime; +using OpenApiSchema = Microsoft.OpenApi.OpenApiSchema; namespace OpenApi.NodaTime.Transformers.Schemas; @@ -33,26 +33,26 @@ public Task TransformAsync(OpenApiSchema schema, OpenApiSchemaTransformerContext var zoned = _instant.InZone(_dateTimeZone); var dateInterval = new DateInterval(zoned.Date, zoned.Date.PlusDays(1)); - schema.Type = "object"; + schema.Type = JsonSchemaType.Object; schema.Format = "A date interval between two LocalDate values, expressed with start and end."; - schema.Properties = new Dictionary + schema.Properties = new Dictionary { { nameof(DateInterval.Start), new OpenApiSchema { - Type = "string", + Type = JsonSchemaType.String, Format = "date", - Example = new OpenApiString(FormatJson(dateInterval.Start)) + Example = FormatJson(dateInterval.Start) } }, { nameof(DateInterval.End), new OpenApiSchema { - Type = "string", + Type = JsonSchemaType.String, Format = "date", - Example = new OpenApiString(FormatJson(dateInterval.End)) + Example = FormatJson(dateInterval.End) } } }; diff --git a/src/OpenApi.NodaTime/Transformers/Schemas/IntervalSchemaTransformer.cs b/src/OpenApi.NodaTime/Transformers/Schemas/IntervalSchemaTransformer.cs index 0f47084..f9be274 100644 --- a/src/OpenApi.NodaTime/Transformers/Schemas/IntervalSchemaTransformer.cs +++ b/src/OpenApi.NodaTime/Transformers/Schemas/IntervalSchemaTransformer.cs @@ -4,8 +4,7 @@ using System.Threading; using System.Threading.Tasks; using Microsoft.AspNetCore.OpenApi; -using Microsoft.OpenApi.Any; -using Microsoft.OpenApi.Models; +using Microsoft.OpenApi; using NodaTime; namespace OpenApi.NodaTime.Transformers.Schemas; @@ -35,26 +34,26 @@ public Task TransformAsync(OpenApiSchema schema, OpenApiSchemaTransformerContext .PlusTicks(TimeSpan.TicksPerSecond) .PlusTicks(TimeSpan.TicksPerMillisecond)); - schema.Type = "object"; + schema.Type = JsonSchemaType.Object; schema.Description = "Represents a time interval between two Instant values, expressed with start and end."; - schema.Properties = new Dictionary + schema.Properties = new Dictionary { { nameof(Interval.Start), new OpenApiSchema { - Type = "string", + Type = JsonSchemaType.String, Format = "date-time", - Example = new OpenApiString(FormatJson(interval.Start)) + Example = FormatJson(interval.Start) } }, { nameof(Interval.End), new OpenApiSchema { - Type = "string", + Type = JsonSchemaType.String, Format = "date-time", - Example = new OpenApiString(FormatJson(interval.End)) + Example = FormatJson(interval.End) } } }; diff --git a/src/OpenApi.NodaTime/packages.lock.json b/src/OpenApi.NodaTime/packages.lock.json index 06d6beb..24391b5 100644 --- a/src/OpenApi.NodaTime/packages.lock.json +++ b/src/OpenApi.NodaTime/packages.lock.json @@ -1,7 +1,7 @@ { "version": 1, "dependencies": { - "net9.0": { + "net10.0": { "IDisposableAnalyzers": { "type": "Direct", "requested": "[4.0.8, 4.0.8]", @@ -10,24 +10,24 @@ }, "Microsoft.AspNetCore.OpenApi": { "type": "Direct", - "requested": "[9.0.0, )", - "resolved": "9.0.0", - "contentHash": "FqUK5j1EOPNuFT7IafltZQ3cakqhSwVzH5ZW1MhZDe4pPXs9sJ2M5jom1Omsu+mwF2tNKKlRAzLRHQTZzbd+6Q==", + "requested": "[10.0.0, )", + "resolved": "10.0.0", + "contentHash": "0aqIF1t+sA2T62LIeMtXGSiaV7keGQaJnvwwmu+htQdjCaKYARfXAeqp4nHH9y2etpilyZ/tnQzZg4Ilmo/c4Q==", "dependencies": { - "Microsoft.OpenApi": "1.6.17" + "Microsoft.OpenApi": "2.0.0" } }, "Microsoft.CodeAnalysis.NetAnalyzers": { "type": "Direct", - "requested": "[9.0.0, 9.0.0]", - "resolved": "9.0.0", - "contentHash": "JajbvkrBgtdRghavIjcJuNHMOja4lqBmEezbhZyqWPYh2cpLhT5mPpfC7NQVDO4IehWQum9t/nwF4v+qQGtYWg==" + "requested": "[10.0.101, 10.0.101]", + "resolved": "10.0.101", + "contentHash": "nbq9XaN1hXbeaAAaI2Cv9su+TSs8n8iu9VmltGXDmQSTKDXh02AKykGYdHiVeaQaVvwxGJRwjsaTPSPYiD/RNQ==" }, "NodaTime.Serialization.SystemTextJson": { "type": "Direct", - "requested": "[1.2.0, )", - "resolved": "1.2.0", - "contentHash": "HNMQdHw6xCrNaHEEvJlBek+uUNI4uySEQhU3t8FibZT9ASMz40y5qkLIwhrHsnXhxUzOPP4tmAGy8PfBwc3zMg==", + "requested": "[1.3.0, )", + "resolved": "1.3.0", + "contentHash": "Zf9sdKrfcId0rvZLOB7Yncy/cfCv20TdQ84IKE6CkcWW33u1wsRvmYUbfaP5MYUm+9vp9Yoi3G2vN1/9nZ/JCA==", "dependencies": { "NodaTime": "[3.0.0, 4.0.0)" } @@ -40,34 +40,24 @@ }, "SonarAnalyzer.CSharp": { "type": "Direct", - "requested": "[10.15.0.120848, 10.15.0.120848]", - "resolved": "10.15.0.120848", - "contentHash": "1hM3HVRl5jdC/ZBDu+G7CCYLXRGe/QaP01Zy+c9ETPhY7lWD8g8HiefY6sGaH0T3CJ4wAy0/waGgQTh0TYy0oQ==" - }, - "System.Runtime.CompilerServices.Unsafe": { - "type": "Direct", - "requested": "[*, )", - "resolved": "6.1.2", - "contentHash": "2hBr6zdbIBTDE3EhK7NSVNdX58uTK6iHW/P/Axmm9sl1xoGSLqDvMtpecn226TNwHByFokYwJmt/aQQNlO5CRw==" + "requested": "[10.16.1.129956, 10.16.1.129956]", + "resolved": "10.16.1.129956", + "contentHash": "XjMarxz00Xc+GD8JGYut1swL0RIw2iwfBhltEITsxsqC/MDLjK+8dk58fPYkS+YPwtdqzkU4VUuSqX3qrN2HYA==" }, "Microsoft.OpenApi": { "type": "Transitive", - "resolved": "1.6.17", - "contentHash": "Le+kehlmrlQfuDFUt1zZ2dVwrhFQtKREdKBo+rexOwaCoYP0/qpgT9tLxCsZjsgR5Itk1UKPcbgO+FyaNid/bA==" + "resolved": "2.0.0", + "contentHash": "GGYLfzV/G/ct80OZ45JxnWP7NvMX1BCugn/lX7TH5o0lcVaviavsLMTxmFV2AybXWjbi3h6FF1vgZiTK6PXndw==" }, "NodaTime": { "type": "Transitive", "resolved": "3.0.0", - "contentHash": "ZauY6Ihs+abkPCpgIafCj92sl+cDqFbvwrJj9Ga0dteWIYg+A5FeoteBzgzez/cyBeukl2kbDTt4qtpTbHvqOw==", - "dependencies": { - "System.Runtime.CompilerServices.Unsafe": "4.7.1" - } + "contentHash": "ZauY6Ihs+abkPCpgIafCj92sl+cDqFbvwrJj9Ga0dteWIYg+A5FeoteBzgzez/cyBeukl2kbDTt4qtpTbHvqOw==" }, "MMonrad.OpenApi.Extensions": { "type": "Project", "dependencies": { - "Microsoft.AspNetCore.OpenApi": "[9.0.0, )", - "System.Runtime.CompilerServices.Unsafe": "[*, )" + "Microsoft.AspNetCore.OpenApi": "[10.0.0, )" } } }