Uh oh!
There was an error while loading. Please reload this page.
Refactor readers to reduce surface area - #1975
Conversation
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Co-authored-by: Vincent Biret <vibiret@microsoft.com>
Co-authored-by: Vincent Biret <vibiret@microsoft.com>
Co-authored-by: Vincent Biret <vibiret@microsoft.com>
Co-authored-by: Vincent Biret <vibiret@microsoft.com>
Co-authored-by: Vincent Biret <vibiret@microsoft.com>
| { | ||
| throw new InvalidOperationException($"Could not download the file at {url}", ex); | ||
| // YAML or other non-JSON format; copy remaining input to a new stream. | ||
| preparedStream = new MemoryStream(); |
Check warning
Code scanning / CodeQL
Missing Dispose call on local IDisposable
| { | ||
| throw new InvalidOperationException($"Could not open the file at {url}", ex); | ||
| // Buffer stream for non-JSON formats (e.g., YAML) since they require synchronous reading | ||
| preparedStream = new MemoryStream(); |
Check warning
Code scanning / CodeQL
Missing Dispose call on local IDisposable
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Copilot reviewed 15 out of 30 changed files in this pull request and generated 2 comments.
Files not reviewed (15)
- test/Microsoft.OpenApi.Readers.Tests/V3Tests/OpenApiDocumentTests.cs: Evaluated as low risk
- src/Microsoft.OpenApi.Hidi/OpenApiService.cs: Evaluated as low risk
- src/Microsoft.OpenApi/Interfaces/IOpenApiReader.cs: Evaluated as low risk
- src/Microsoft.OpenApi/Models/OpenApiDocument.cs: Evaluated as low risk
- test/Microsoft.OpenApi.Readers.Tests/V3Tests/OpenApiDiscriminatorTests.cs: Evaluated as low risk
- test/Microsoft.OpenApi.Readers.Tests/V3Tests/OpenApiEncodingTests.cs: Evaluated as low risk
- src/Microsoft.OpenApi.Readers/OpenApiYamlReader.cs: Evaluated as low risk
- test/Microsoft.OpenApi.Readers.Tests/V3Tests/OpenApiCallbackTests.cs: Evaluated as low risk
- test/Microsoft.OpenApi.Readers.Tests/V3Tests/OpenApiExampleTests.cs: Evaluated as low risk
- test/Microsoft.OpenApi.Readers.Tests/V31Tests/OpenApiSchemaTests.cs: Evaluated as low risk
- test/Microsoft.OpenApi.Readers.Tests/V31Tests/OpenApiDocumentTests.cs: Evaluated as low risk
- test/Microsoft.OpenApi.Readers.Tests/V2Tests/OpenApiDocumentTests.cs: Evaluated as low risk
- test/Microsoft.OpenApi.Hidi.Tests/Services/OpenApiFilterServiceTests.cs: Evaluated as low risk
- test/Microsoft.OpenApi.Readers.Tests/OpenApiReaderTests/OpenApiDiagnosticTests.cs: Evaluated as low risk
- test/Microsoft.OpenApi.Readers.Tests/OpenApiReaderTests/UnsupportedSpecVersionTests.cs: Evaluated as low risk
Comments suppressed due to low confidence (3)
src/Microsoft.OpenApi/Reader/OpenApiModelFactory.cs:332
- The method
PrepareStreamForReadingAsyncmight read the entire stream into memory, which could be inefficient for very large streams. Consider adding a check to handle large streams more efficiently.
private static async Task<(Stream, string)> PrepareStreamForReadingAsync(Stream input, string format, CancellationToken token = default)
src/Microsoft.OpenApi/Reader/OpenApiJsonReader.cs:79
- The method ReadAsync(JsonNode, OpenApiReaderSettings, string, CancellationToken) has been removed. Replace it with Read(JsonNode, OpenApiReaderSettings, string).
return await ReadAsync(jsonNode, settings, cancellationToken: cancellationToken);
src/Microsoft.OpenApi/Reader/OpenApiJsonReader.cs:145
- Ensure that the external references loading functionality is still covered elsewhere in the codebase, as the LoadExternalRefsAsync method has been removed.
return Read(jsonNode, settings);
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
|
Vincent Biret (baywet)
left a comment
There was a problem hiding this comment.
Thank you for making the changes!
Vincent Biret (baywet)
left a comment
There was a problem hiding this comment.
(clicked the wrong button 🤦)


Fixes#1954
fixes#1951
Fixes#1964
Fixes#1917
fixes#1918
closes#1958
closes#1929