Skip to content

Commit 9695506

Browse files
authored
generate base on 1.34 (#1654)
* Implement code changes to enhance functionality and improve performance * chore: update version to 18.0 in version.json * fix: correct initialization of opblackList in PluralHelper * chore: update SDK version to 18.0 in README.md * Fixdocfx (#82) * fix: update file references and clean up validation comments in models * chore: add symlink to CONTRIBUTING.md for easier access * fix: update documentation to include full type names for WebSocket and Predicate * fix: include CONTRIBUTING.md in docfx.json build content * refactor: update IKubernetes interface and template for consistency * feat: add Microsoft.CodeAnalysis.CSharp package and improve source normalization in generator context * chore: update package versions in Directory.Packages.props for compatibility and improvements * chore: update Microsoft.VisualStudio.SlnGen and Nerdbank.GitVersioning package versions for compatibility * Implement code changes to enhance functionality and improve performance * chore: update version to 18.0 in version.json * fix: correct initialization of opblackList in PluralHelper * chore: update SDK version to 18.0 in README.md * refactor: update IKubernetes interface and template for consistency * feat: add Microsoft.CodeAnalysis.CSharp package and improve source normalization in generator context * chore: update package versions in Directory.Packages.props for compatibility and improvements * chore: update Microsoft.VisualStudio.SlnGen and Nerdbank.GitVersioning package versions for compatibility * chore: downgrade xunit.runner.visualstudio and Xunit.StaFact package versions for compatibility * chore: update package versions in Directory.Packages.props for compatibility and improvements * style: format code for consistency and readability * feat: update certificate loading logic for .NET 9 compatibility * fix: update certificate loading method for .NET 9 compatibility
1 parent 11a9641 commit 9695506

File tree

16 files changed

+7997
-5171
lines changed

16 files changed

+7997
-5171
lines changed

Directory.Packages.props

Lines changed: 26 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -3,51 +3,52 @@
33
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
44
</PropertyGroup>
55
<ItemGroup>
6-
<PackageVersion Include="BouncyCastle.Cryptography" Version="2.5.1" />
7-
<PackageVersion Include="FluentAssertions" Version="8.2.0" />
6+
<PackageVersion Include="BouncyCastle.Cryptography" Version="2.6.2" />
7+
<PackageVersion Include="FluentAssertions" Version="8.6.0" />
88
<PackageVersion Include="Fractions" Version="7.3.0" />
99
<PackageVersion Include="JsonPatch.Net" Version="3.3.0" />
10-
<PackageVersion Include="MartinCostello.Logging.XUnit" Version="0.5.1" />
11-
<PackageVersion Include="Microsoft.Bcl.AsyncInterfaces" Version="9.0.4" />
12-
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="9.0.4" />
13-
<PackageVersion Include="Microsoft.Extensions.Logging" Version="9.0.4" />
14-
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.13.0" />
15-
<PackageVersion Include="Microsoft.TestPlatform.ObjectModel" Version="17.13.0" />
10+
<PackageVersion Include="MartinCostello.Logging.XUnit" Version="0.6.0" />
11+
<PackageVersion Include="Microsoft.Bcl.AsyncInterfaces" Version="9.0.8" />
12+
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="9.0.8" />
13+
<PackageVersion Include="Microsoft.Extensions.Logging" Version="9.0.8" />
14+
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.14.1" />
15+
<PackageVersion Include="Microsoft.TestPlatform.ObjectModel" Version="17.14.1" />
1616
<PackageVersion Include="Moq" Version="4.20.72" />
1717
<PackageVersion Include="Nito.AsyncEx" Version="5.1.2" />
1818
<PackageVersion Include="Nito.AsyncEx.Coordination" Version="5.1.2" />
19-
<PackageVersion Include="OpenTelemetry.Exporter.Console" Version="1.11.2" />
20-
<PackageVersion Include="OpenTelemetry.Instrumentation.Http" Version="1.11.1" />
19+
<PackageVersion Include="OpenTelemetry.Exporter.Console" Version="1.12.0" />
20+
<PackageVersion Include="OpenTelemetry.Instrumentation.Http" Version="1.12.0" />
2121
<PackageVersion Include="Portable.BouncyCastle" Version="1.9.0" />
2222
<PackageVersion Include="SharpZipLib" Version="1.4.2" />
23-
<PackageVersion Include="Swashbuckle.AspNetCore" Version="8.1.1" />
24-
<PackageVersion Include="System.Diagnostics.DiagnosticSource" Version="9.0.4" />
25-
<PackageVersion Include="System.IO.Abstractions.TestingHelpers" Version="22.0.14" />
26-
<PackageVersion Include="System.Reactive" Version="6.0.1" />
27-
<PackageVersion Include="System.Text.Json" Version="9.0.4" />
23+
<PackageVersion Include="Swashbuckle.AspNetCore" Version="9.0.4" />
24+
<PackageVersion Include="System.Diagnostics.DiagnosticSource" Version="9.0.8" />
25+
<PackageVersion Include="System.IO.Abstractions.TestingHelpers" Version="22.0.15" />
26+
<PackageVersion Include="System.Reactive" Version="6.0.2" />
27+
<PackageVersion Include="System.Text.Json" Version="9.0.8" />
2828
<PackageVersion Include="Vecc.YamlDotNet.Analyzers.StaticGenerator" Version="16.3.0" />
29-
<PackageVersion Include="Wiremock.Net" Version="1.7.4" />
29+
<PackageVersion Include="Wiremock.Net" Version="1.12.0" />
3030
<PackageVersion Include="xunit" Version="2.9.3" />
3131
<PackageVersion Include="xunit.runner.visualstudio" Version="3.0.2" />
3232
<PackageVersion Include="Xunit.StaFact" Version="1.2.69" />
3333
<PackageVersion Include="YamlDotNet" Version="16.3.0" />
3434
</ItemGroup>
3535
<ItemGroup>
36-
<PackageVersion Include="Autofac" Version="8.2.1" />
36+
<PackageVersion Include="Autofac" Version="8.4.0" />
3737
<PackageVersion Include="CaseExtensions" Version="1.1.0" />
38-
<PackageVersion Include="Microsoft.CodeAnalysis.Common" Version="4.13.0" />
39-
<PackageVersion Include="Namotion.Reflection" Version="3.3.0" />
38+
<PackageVersion Include="Microsoft.CodeAnalysis.Common" Version="4.14.0" />
39+
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="4.14.0" />
40+
<PackageVersion Include="Namotion.Reflection" Version="3.4.2" />
4041
<PackageVersion Include="Newtonsoft.Json" Version="13.0.3" />
41-
<PackageVersion Include="NJsonSchema" Version="11.2.0" />
42-
<PackageVersion Include="NJsonSchema.Annotations" Version="11.2.0" />
43-
<PackageVersion Include="NSwag.Core" Version="14.3.0" />
42+
<PackageVersion Include="NJsonSchema" Version="11.4.0" />
43+
<PackageVersion Include="NJsonSchema.Annotations" Version="11.4.0" />
44+
<PackageVersion Include="NSwag.Core" Version="14.5.0" />
4445
<PackageVersion Include="Scriban" Version="6.2.1" />
4546
</ItemGroup>
4647
<ItemGroup>
4748
<GlobalPackageReference Include="Microsoft.CodeAnalysis.NetAnalyzers" Version="9.0.0" />
4849
<GlobalPackageReference Include="Microsoft.SourceLink.GitHub" Version="8.0.0" />
49-
<GlobalPackageReference Include="Microsoft.VisualStudio.SlnGen" Version="12.0.3" />
50-
<GlobalPackageReference Include="Nerdbank.GitVersioning" Version="3.7.112" />
50+
<GlobalPackageReference Include="Microsoft.VisualStudio.SlnGen" Version="12.0.23" />
51+
<GlobalPackageReference Include="Nerdbank.GitVersioning" Version="3.7.115" />
5152
<GlobalPackageReference Include="StyleCop.Analyzers" Version="1.1.118" />
5253
</ItemGroup>
53-
</Project>
54+
</Project>

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,7 @@ ${GEN_DIR}/openapi/csharp.sh ${REPO_DIR}/src/KubernetesClient ${REPO_DIR}/csharp
154154

155155
| SDK Version | Kubernetes Version | .NET Targeting |
156156
|-------------|--------------------|-----------------------------------------------------|
157+
| 18.0 | 1.34 | net8.0;net9.0;net48*;netstandard2.0* |
157158
| 17.0 | 1.33 | net8.0;net9.0;net48*;netstandard2.0* |
158159
| 16.0 | 1.32 | net8.0;net9.0;net48*;netstandard2.0* |
159160
| 15.0 | 1.31 | net6.0;net8.0;net48*;netstandard2.0* |

csharp.settings

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
export KUBERNETES_BRANCH=v1.33.0
1+
export KUBERNETES_BRANCH=v1.34.0
22
export CLIENT_VERSION=0.0.1
33
export PACKAGE_NAME=k8s

examples/clientset/Program.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ private static async Task Main(string[] args)
2020
System.Console.WriteLine(item.Metadata.Name);
2121
}
2222

23-
var pod = await clientSet.CoreV1.Pod.GetAsync("test","default").ConfigureAwait(false);
23+
var pod = await clientSet.CoreV1.Pod.GetAsync("test", "default").ConfigureAwait(false);
2424
System.Console.WriteLine(pod?.Metadata?.Name);
2525
}
2626
}

src/KubernetesClient/IKubernetes.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
namespace k8s;
22

3-
public partial interface IKubernetes : IBasicKubernetes, IDisposable
3+
public partial interface IKubernetes : IDisposable
44
{
55
/// <summary>
66
/// The base URI of the service.

src/LibKubernetesGenerator/ApiGenerator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ public void Generate(OpenApiDocument swagger, IncrementalGeneratorPostInitializa
7171
sc = scriptObjectFactory.CreateScriptObject();
7272
sc.SetValue("groups", groups, true);
7373

74-
context.RenderToContext($"IBasicKubernetes.cs.template", sc, $"IBasicKubernetes.g.cs");
74+
context.RenderToContext($"IKubernetes.cs.template", sc, $"IKubernetes.g.cs");
7575
context.RenderToContext($"AbstractKubernetes.cs.template", sc, $"AbstractKubernetes.g.cs");
7676
}
7777
}

src/LibKubernetesGenerator/GeneratorExecutionContextExt.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using Microsoft.CodeAnalysis;
22
using Microsoft.CodeAnalysis.Text;
3+
using Microsoft.CodeAnalysis.CSharp;
34
using Scriban;
45
using Scriban.Runtime;
56
using System.Text;
@@ -19,7 +20,10 @@ public static void RenderToContext(this IncrementalGeneratorPostInitializationCo
1920
{
2021
var template = Template.Parse(EmbedResource.GetResource(templatefile));
2122
var generated = template.Render(tc);
22-
context.AddSource(generatedfile, SourceText.From(generated, Encoding.UTF8));
23+
24+
var syntaxTree = CSharpSyntaxTree.ParseText(generated);
25+
var normalized = syntaxTree.GetRoot().NormalizeWhitespace().ToFullString();
26+
context.AddSource(generatedfile, SourceText.From(normalized, Encoding.UTF8));
2327
}
2428
}
2529
}

src/LibKubernetesGenerator/LibKubernetesGenerator.target

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313

1414
<ItemGroup>
1515
<PackageReference Include="Microsoft.CodeAnalysis.Common" PrivateAssets="all" />
16+
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" PrivateAssets="all" />
1617
</ItemGroup>
1718

1819
<ItemGroup>

src/LibKubernetesGenerator/PluralHelper.cs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,12 @@ internal class PluralHelper : IScriptObjectHelper
1111
{
1212
private readonly Dictionary<string, string> _classNameToPluralMap;
1313
private readonly ClassNameHelper classNameHelper;
14-
private readonly HashSet<string> opblackList = new HashSet<string>()
15-
{
14+
private readonly HashSet<string> opblackList =
15+
[
1616
"listClusterCustomObject",
1717
"listNamespacedCustomObject",
18-
};
18+
"listCustomObjectForAllNamespaces",
19+
];
1920

2021
public PluralHelper(ClassNameHelper classNameHelper, OpenApiDocument swagger)
2122
{

src/LibKubernetesGenerator/templates/IBasicKubernetes.cs.template renamed to src/LibKubernetesGenerator/templates/IKubernetes.cs.template

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ namespace k8s;
88

99
/// <summary>
1010
/// </summary>
11-
public partial interface IBasicKubernetes
11+
public partial interface IKubernetes
1212
{
1313
{{for group in groups}}
1414
I{{group}}Operations {{group}} { get; }

0 commit comments

Comments
 (0)