[release/9.0] Drop Microsoft.AspNetCore.Grpc.Swagger - #67954
Conversation
Co-authored-by: Youssef1313 <31348972+Youssef1313@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Removes the deprecated Microsoft.AspNetCore.Grpc.Swagger package from the release/9.0 branch, including its source, tests, and all repo/build references, leaving gRPC JSON transcoding and built-in OpenAPI as the supported path.
Changes:
- Deleted the
Microsoft.AspNetCore.Grpc.Swaggerproject and its PublicAPI files. - Deleted the
Microsoft.AspNetCore.Grpc.Swagger.Testsproject (tests, protos, and helper infrastructure). - Removed remaining references in build metadata and cleaned the JsonTranscoding Sandbox test asset to no longer configure Swagger.
Reviewed changes
Copilot reviewed 42 out of 42 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| src/Grpc/JsonTranscoding/test/testassets/Sandbox/Startup.cs | Removes Swagger/OpenAPI middleware and service registration from the sandbox app. |
| src/Grpc/JsonTranscoding/test/testassets/Sandbox/Sandbox.csproj | Drops the Microsoft.AspNetCore.Grpc.Swagger reference from the sandbox test asset. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/XmlComments/XmlDocumentationIntegrationTests.cs | Deletes Swagger package tests (XML comments integration coverage). |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/XmlComments/XmlCommentsDocumentFilterTests.cs | Deletes Swagger package tests (document filter behavior). |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Services/XmlDocServiceWithComments.cs | Deletes test service used by Swagger package tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Services/XmlDocService.cs | Deletes test service used by Swagger package tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Services/ResponseBodyService.cs | Deletes test service used by Swagger package tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Services/ParametersService.cs | Deletes test service used by Swagger package tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Services/GreeterService.cs | Deletes test service used by Swagger package tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Services/BodyService.cs | Deletes test service used by Swagger package tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/SchemaGeneratorIntegrationTests.cs | Deletes Swagger package tests (schema generation coverage). |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Proto/xmldoc.proto | Deletes protos used exclusively by Swagger package tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Proto/responsebody.proto | Deletes protos used exclusively by Swagger package tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Proto/parameters.proto | Deletes protos used exclusively by Swagger package tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Proto/messages.proto | Deletes protos used exclusively by Swagger package tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Proto/greeter.proto | Deletes protos used exclusively by Swagger package tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Proto/counter.proto | Deletes protos used exclusively by Swagger package tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Proto/body.proto | Deletes protos used exclusively by Swagger package tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Microsoft.AspNetCore.Grpc.Swagger.Tests.csproj | Deletes the Swagger test project definition. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Infrastructure/TestWebHostEnvironment.cs | Deletes test infrastructure used only by the removed test project. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Infrastructure/OpenApiTestHelpers.cs | Deletes test helpers used only by the removed test project. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/GrpcSwaggerServiceExtensionsTests.cs | Deletes tests validating AddGrpcSwagger behavior. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/google/api/http.proto | Deletes vendored Google API protos used only by removed tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/google/api/annotations.proto | Deletes vendored Google API protos used only by removed tests. |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Binding/ResponseBodyTests.cs | Deletes Swagger package binding tests (response_body). |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Binding/ParametersTests.cs | Deletes Swagger package binding tests (query/path/body parameter mapping). |
| src/Grpc/JsonTranscoding/test/Microsoft.AspNetCore.Grpc.Swagger.Tests/Binding/BodyTests.cs | Deletes Swagger package binding tests (body mapping). |
| src/Grpc/JsonTranscoding/src/Microsoft.AspNetCore.Grpc.Swagger/PublicAPI.Unshipped.txt | Removes PublicAPI tracking for the deleted package. |
| src/Grpc/JsonTranscoding/src/Microsoft.AspNetCore.Grpc.Swagger/PublicAPI.Shipped.txt | Removes shipped API list for the deleted package. |
| src/Grpc/JsonTranscoding/src/Microsoft.AspNetCore.Grpc.Swagger/Microsoft.AspNetCore.Grpc.Swagger.csproj | Deletes the Microsoft.AspNetCore.Grpc.Swagger project definition. |
| src/Grpc/JsonTranscoding/src/Microsoft.AspNetCore.Grpc.Swagger/Internal/XmlComments/GrpcXmlCommentsOperationFilter.cs | Deletes Swagger-specific XML comments operation filter implementation. |
| src/Grpc/JsonTranscoding/src/Microsoft.AspNetCore.Grpc.Swagger/Internal/XmlComments/GrpcXmlCommentsDocumentFilter.cs | Deletes Swagger-specific XML comments document filter implementation. |
| src/Grpc/JsonTranscoding/src/Microsoft.AspNetCore.Grpc.Swagger/Internal/MessageDescriptorHelpers.cs | Deletes Swagger-specific descriptor helper used for schema generation. |
| src/Grpc/JsonTranscoding/src/Microsoft.AspNetCore.Grpc.Swagger/Internal/GrpcModelMetadata.cs | Deletes Swagger-specific model metadata implementation. |
| src/Grpc/JsonTranscoding/src/Microsoft.AspNetCore.Grpc.Swagger/Internal/GrpcJsonTranscodingDescriptionProvider.cs | Deletes Swagger-specific ApiExplorer description provider. |
| src/Grpc/JsonTranscoding/src/Microsoft.AspNetCore.Grpc.Swagger/Internal/GrpcDataContractResolver.cs | Deletes Swagger-specific data contract resolver integration. |
| src/Grpc/JsonTranscoding/src/Microsoft.AspNetCore.Grpc.Swagger/GrpcSwaggerServiceExtensions.cs | Deletes AddGrpcSwagger extension method entrypoint. |
| src/Grpc/JsonTranscoding/src/Microsoft.AspNetCore.Grpc.Swagger/GrpcSwaggerGenOptionsExtensions.cs | Deletes IncludeGrpcXmlComments extensions for Swashbuckle integration. |
| src/Grpc/Grpc.slnf | Removes the Swagger project and test project from the gRPC solution filter. |
| eng/ShippingAssemblies.props | Removes Microsoft.AspNetCore.Grpc.Swagger from the shipping assemblies list. |
| eng/RequiresDelayedBuildProjects.props | Removes the Swagger project and tests from delayed-build project list. |
| eng/ProjectReferences.props | Removes the Swagger project reference provider entry. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@copilot Does AspNetCore.sln need to be updated to address the removal of the projects? Commit to this PR with the needed changes, if any. |
Co-authored-by: Youssef1313 <31348972+Youssef1313@users.noreply.github.com>
Yes, |
Drop Microsoft.AspNetCore.Grpc.Swagger
This is a backport of #67919 which removes the experimental Microsoft.AspNetCore.Grpc.Swagger.
Description
See #67134
This package has been experimental with relatively low usage.
https://www.nuget.org/packages/Microsoft.AspNetCore.Grpc.Swagger -> Current version (released 23 days ago) 36K downloads.
In contrast, https://www.nuget.org/packages/Swashbuckle.AspNetCore.Swagger has 7.6M downloads for current version (released only a month ago), and https://www.nuget.org/packages/Microsoft.AspNetCore.OpenApi has 2M downloads for current version (released 23 days ago).
The package adds maintenance cost that's not worth it.
Customer Impact
No new experimental versions of this package will be published.
Regression?
N/A
Risk
Low - intentional package deprecation.
Verification
N/A