From 3acece83c64947b6b0a36f95a40cd35a049307f6 Mon Sep 17 00:00:00 2001 From: Marcus Kimpenhaus Date: Mon, 17 Nov 2025 09:25:26 +0100 Subject: [PATCH 1/5] chore: suppress warnings and add preview feature annotations in tests and examples to avoid linter and analyzer errors --- .../Webhooks/TestConversionWebhook.cs | 3 +++ .../Entities/JsonPatchExtensions.Test.cs | 2 ++ test/KubeOps.KubernetesClient.Test/KubernetesClient.Test.cs | 2 ++ 3 files changed, 7 insertions(+) diff --git a/examples/ConversionWebhookOperator/Webhooks/TestConversionWebhook.cs b/examples/ConversionWebhookOperator/Webhooks/TestConversionWebhook.cs index 00f0d5be..4e1586fd 100644 --- a/examples/ConversionWebhookOperator/Webhooks/TestConversionWebhook.cs +++ b/examples/ConversionWebhookOperator/Webhooks/TestConversionWebhook.cs @@ -2,6 +2,8 @@ // The .NET Foundation licenses this file to you under the Apache 2.0 License. // See the LICENSE file in the project root for more information. +using System.Runtime.Versioning; + using ConversionWebhookOperator.Entities; using KubeOps.Operator.Web.Webhooks.Conversion; @@ -9,6 +11,7 @@ namespace ConversionWebhookOperator.Webhooks; [ConversionWebhook(typeof(V3TestEntity))] +[RequiresPreviewFeatures] public class TestConversionWebhook : ConversionWebhook { protected override IEnumerable> Converters => new IEntityConverter[] diff --git a/test/KubeOps.Abstractions.Test/Entities/JsonPatchExtensions.Test.cs b/test/KubeOps.Abstractions.Test/Entities/JsonPatchExtensions.Test.cs index 37e7c69c..adf06628 100644 --- a/test/KubeOps.Abstractions.Test/Entities/JsonPatchExtensions.Test.cs +++ b/test/KubeOps.Abstractions.Test/Entities/JsonPatchExtensions.Test.cs @@ -11,6 +11,8 @@ namespace KubeOps.Abstractions.Test.Entities; +#pragma warning disable CA2252 // Opt in to preview features before using them + public class JsonPatchExtensionsTest { [Fact] diff --git a/test/KubeOps.KubernetesClient.Test/KubernetesClient.Test.cs b/test/KubeOps.KubernetesClient.Test/KubernetesClient.Test.cs index 6f5b81ec..da613e6c 100644 --- a/test/KubeOps.KubernetesClient.Test/KubernetesClient.Test.cs +++ b/test/KubeOps.KubernetesClient.Test/KubernetesClient.Test.cs @@ -8,6 +8,8 @@ namespace KubeOps.KubernetesClient.Test; +#pragma warning disable CA2252 // Opt in to preview features before using them + public sealed class KubernetesClientTest : IntegrationTestBase, IDisposable { private readonly IKubernetesClient _client = From 2690636024861bb7dce4871748d4e5a1cd1c5222 Mon Sep 17 00:00:00 2001 From: Marcus Kimpenhaus Date: Mon, 17 Nov 2025 09:29:05 +0100 Subject: [PATCH 2/5] chore: suppress CA2252 warning in KubernetesClientAsync test class --- .../KubeOps.KubernetesClient.Test/KubernetesClientAsync.Test.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/KubeOps.KubernetesClient.Test/KubernetesClientAsync.Test.cs b/test/KubeOps.KubernetesClient.Test/KubernetesClientAsync.Test.cs index bc74000b..28e81dad 100644 --- a/test/KubeOps.KubernetesClient.Test/KubernetesClientAsync.Test.cs +++ b/test/KubeOps.KubernetesClient.Test/KubernetesClientAsync.Test.cs @@ -8,6 +8,8 @@ namespace KubeOps.KubernetesClient.Test; +#pragma warning disable CA2252 // Opt in to preview features before using them + public sealed class KubernetesClientAsyncTest : IntegrationTestBase, IDisposable { private readonly IKubernetesClient _client = From 3fa2157e8ca20da72ca5fe57307479ec916be91f Mon Sep 17 00:00:00 2001 From: Marcus Kimpenhaus Date: Mon, 17 Nov 2025 09:35:05 +0100 Subject: [PATCH 3/5] chore: restore correct annotation order and suppress CA2252 warning in tests --- .../Webhooks/TestConversionWebhook.cs | 2 +- .../Builder/OperatorBuilderExtensions.Test.cs | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/examples/ConversionWebhookOperator/Webhooks/TestConversionWebhook.cs b/examples/ConversionWebhookOperator/Webhooks/TestConversionWebhook.cs index 4e1586fd..51d24312 100644 --- a/examples/ConversionWebhookOperator/Webhooks/TestConversionWebhook.cs +++ b/examples/ConversionWebhookOperator/Webhooks/TestConversionWebhook.cs @@ -10,8 +10,8 @@ namespace ConversionWebhookOperator.Webhooks; -[ConversionWebhook(typeof(V3TestEntity))] [RequiresPreviewFeatures] +[ConversionWebhook(typeof(V3TestEntity))] public class TestConversionWebhook : ConversionWebhook { protected override IEnumerable> Converters => new IEntityConverter[] diff --git a/test/KubeOps.Operator.Web.Test/Builder/OperatorBuilderExtensions.Test.cs b/test/KubeOps.Operator.Web.Test/Builder/OperatorBuilderExtensions.Test.cs index 7fb7c165..fedc2534 100644 --- a/test/KubeOps.Operator.Web.Test/Builder/OperatorBuilderExtensions.Test.cs +++ b/test/KubeOps.Operator.Web.Test/Builder/OperatorBuilderExtensions.Test.cs @@ -2,8 +2,6 @@ // The .NET Foundation licenses this file to you under the Apache 2.0 License. // See the LICENSE file in the project root for more information. -using System.Runtime.Versioning; - using FluentAssertions; using KubeOps.Abstractions.Builder; @@ -18,7 +16,9 @@ using Microsoft.Extensions.Hosting; namespace KubeOps.Operator.Web.Test.Builder; -[RequiresPreviewFeatures] + +#pragma warning disable CA2252 // Opt in to preview features before using them + public class OperatorBuilderExtensionsTest : IDisposable { private readonly IOperatorBuilder _builder = new OperatorBuilder(new ServiceCollection(), new()); From 06afc3a78f99a835e7ef481ddefe721c408b84a9 Mon Sep 17 00:00:00 2001 From: Marcus Kimpenhaus Date: Mon, 17 Nov 2025 11:05:06 +0100 Subject: [PATCH 4/5] chore(deps): add .NET 10.0 support and update relevant package versions --- src/KubeOps.Abstractions/KubeOps.Abstractions.csproj | 2 +- src/KubeOps.Operator.Web/KubeOps.Operator.Web.csproj | 4 ++-- src/KubeOps.Operator/KubeOps.Operator.csproj | 10 +++++----- src/KubeOps.Transpiler/KubeOps.Transpiler.csproj | 2 +- .../KubeOps.Operator.Web.Test.csproj | 12 +++++++++--- 5 files changed, 18 insertions(+), 12 deletions(-) diff --git a/src/KubeOps.Abstractions/KubeOps.Abstractions.csproj b/src/KubeOps.Abstractions/KubeOps.Abstractions.csproj index 14c815cf..7b27202b 100644 --- a/src/KubeOps.Abstractions/KubeOps.Abstractions.csproj +++ b/src/KubeOps.Abstractions/KubeOps.Abstractions.csproj @@ -16,7 +16,7 @@ - + diff --git a/src/KubeOps.Operator.Web/KubeOps.Operator.Web.csproj b/src/KubeOps.Operator.Web/KubeOps.Operator.Web.csproj index 20c02e22..b5ff6c8b 100644 --- a/src/KubeOps.Operator.Web/KubeOps.Operator.Web.csproj +++ b/src/KubeOps.Operator.Web/KubeOps.Operator.Web.csproj @@ -1,7 +1,7 @@  - net8.0;net9.0 + net8.0;net9.0;net10.0 @@ -29,4 +29,4 @@ - + \ No newline at end of file diff --git a/src/KubeOps.Operator/KubeOps.Operator.csproj b/src/KubeOps.Operator/KubeOps.Operator.csproj index a0453df3..76f6767e 100644 --- a/src/KubeOps.Operator/KubeOps.Operator.csproj +++ b/src/KubeOps.Operator/KubeOps.Operator.csproj @@ -1,7 +1,7 @@ - net8.0;net9.0 + net8.0;net9.0;net10.0 @@ -16,7 +16,7 @@ - + @@ -30,11 +30,11 @@ build/ - + <_Parameter1>$(MSBuildProjectName).Web.Test - - + + \ No newline at end of file diff --git a/src/KubeOps.Transpiler/KubeOps.Transpiler.csproj b/src/KubeOps.Transpiler/KubeOps.Transpiler.csproj index 9e6fcfea..fca7108c 100644 --- a/src/KubeOps.Transpiler/KubeOps.Transpiler.csproj +++ b/src/KubeOps.Transpiler/KubeOps.Transpiler.csproj @@ -15,7 +15,7 @@ - + diff --git a/test/KubeOps.Operator.Web.Test/KubeOps.Operator.Web.Test.csproj b/test/KubeOps.Operator.Web.Test/KubeOps.Operator.Web.Test.csproj index 1ee10222..a2e302ff 100644 --- a/test/KubeOps.Operator.Web.Test/KubeOps.Operator.Web.Test.csproj +++ b/test/KubeOps.Operator.Web.Test/KubeOps.Operator.Web.Test.csproj @@ -1,7 +1,6 @@ - @@ -9,6 +8,13 @@ + + + + + + + @@ -16,8 +22,8 @@ - + CS0618 - + \ No newline at end of file From 9176cb2252ee6cd77f023dcc673dfb6976effa4e Mon Sep 17 00:00:00 2001 From: Marcus Kimpenhaus Date: Wed, 19 Nov 2025 07:46:01 +0100 Subject: [PATCH 5/5] chore(deps): bump target framework from .NET 9.0 to .NET 10.0 in test project --- test/Directory.Build.props | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/Directory.Build.props b/test/Directory.Build.props index 2111df73..6d6027f2 100644 --- a/test/Directory.Build.props +++ b/test/Directory.Build.props @@ -1,6 +1,6 @@ - net9.0 + net10.0 enable enable false @@ -27,4 +27,4 @@ - + \ No newline at end of file