Skip to content

Refactor OpenApiWeaver source generator to use IndentedStringBuilder for improved code formatting#45

Merged
shibayan merged 1 commit into
masterfrom
optimize-indent
Apr 15, 2026
Merged

Refactor OpenApiWeaver source generator to use IndentedStringBuilder for improved code formatting#45
shibayan merged 1 commit into
masterfrom
optimize-indent

Conversation

@shibayan

Copy link
Copy Markdown
Owner
  • Updated methods in ClientEmitter.RequestBodies.cs to replace StringBuilder with IndentedStringBuilder for better indentation handling.
  • Refactored EmitRequestBodyContentAssignment, EmitFormUrlEncodedContentAssignment, and EmitMultipartFormDataContentAssignment methods.
  • Enhanced EmitSchema and EmitEnumSchema methods in ClientEmitter.Schemas.cs to utilize IndentedStringBuilder.
  • Modified EmitSupportTypes, EmitExceptionTypes, and EmitHelperClass methods in ClientEmitter.cs for consistent formatting.
  • Updated project dependencies in OpenApiWeaver.Tests.csproj to use Microsoft.OpenApi version 3.5.2.

…for improved code formatting

- Updated methods in ClientEmitter.RequestBodies.cs to replace StringBuilder with IndentedStringBuilder for better indentation handling.
- Refactored EmitRequestBodyContentAssignment, EmitFormUrlEncodedContentAssignment, and EmitMultipartFormDataContentAssignment methods.
- Enhanced EmitSchema and EmitEnumSchema methods in ClientEmitter.Schemas.cs to utilize IndentedStringBuilder.
- Modified EmitSupportTypes, EmitExceptionTypes, and EmitHelperClass methods in ClientEmitter.cs for consistent formatting.
- Updated project dependencies in OpenApiWeaver.Tests.csproj to use Microsoft.OpenApi version 3.5.2.
@shibayan shibayan requested a review from Copilot April 15, 2026 05:52
@shibayan shibayan self-assigned this Apr 15, 2026
@shibayan shibayan added the enhancement New feature or request label Apr 15, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Refactors the OpenApiWeaver client source generator to centralize indentation/formatting via a new IndentedStringBuilder, and bumps Microsoft.OpenApi dependencies.

Changes:

  • Introduces IndentedStringBuilder and refactors emitter codepaths (schemas, operations, request bodies, helpers) to use it for consistent indentation.
  • Updates Microsoft.OpenApi / Microsoft.OpenApi.YamlReader package references to 3.5.2.
  • Updates documentation prerequisites to .NET SDK 10.0+.

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
tests/OpenApiWeaver.Tests/OpenApiWeaver.Tests.csproj Bumps Microsoft.OpenApi dependencies for tests.
src/OpenApiWeaver/OpenApiWeaverSourceGenerator.ClientEmitter.cs Refactors core client/support type emission to use IndentedStringBuilder.
src/OpenApiWeaver/OpenApiWeaverSourceGenerator.ClientEmitter.Schemas.cs Refactors schema/enum emission to use IndentedStringBuilder.
src/OpenApiWeaver/OpenApiWeaverSourceGenerator.ClientEmitter.RequestBodies.cs Refactors request-body emission to use IndentedStringBuilder and helper emitters.
src/OpenApiWeaver/OpenApiWeaverSourceGenerator.ClientEmitter.Operations.cs Refactors operation emission to use IndentedStringBuilder.
src/OpenApiWeaver/OpenApiWeaverSourceGenerator.ClientEmitter.Naming.cs Adds EmitDocComment overload for IndentedStringBuilder; updates security scheme init emission.
src/OpenApiWeaver/OpenApiWeaverSourceGenerator.ClientEmitter.IndentedStringBuilder.cs Adds the new indentation-aware writer utility.
src/OpenApiWeaver/OpenApiWeaver.csproj Bumps Microsoft.OpenApi dependencies for the generator package.
docs/ja/getting-started.md Updates prerequisites version.
docs/en/getting-started.md Updates prerequisites version.
README.md Updates prerequisites version.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/OpenApiWeaver/OpenApiWeaverSourceGenerator.ClientEmitter.cs
Comment thread src/OpenApiWeaver/OpenApiWeaverSourceGenerator.ClientEmitter.cs
@shibayan shibayan merged commit 902f7b0 into master Apr 15, 2026
8 checks passed
@shibayan shibayan deleted the optimize-indent branch April 15, 2026 06:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants